/[qemu]/qemu/target-i386/helper.c
ViewVC logotype

Diff of /qemu/target-i386/helper.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.34 by bellard, Mon Jan 3 23:50:08 2005 UTC revision 1.35 by bellard, Tue Jan 4 01:06:58 2005 UTC
# Line 934  static void do_interrupt64(int intno, in Line 934  static void do_interrupt64(int intno, in
934      env->eflags &= ~(TF_MASK | VM_MASK | RF_MASK | NT_MASK);      env->eflags &= ~(TF_MASK | VM_MASK | RF_MASK | NT_MASK);
935  }  }
936    
937  void helper_syscall(void)  void helper_syscall(int next_eip_addend)
938  {  {
939      int selector;      int selector;
940    
# Line 943  void helper_syscall(void) Line 943  void helper_syscall(void)
943      }      }
944      selector = (env->star >> 32) & 0xffff;      selector = (env->star >> 32) & 0xffff;
945      if (env->hflags & HF_LMA_MASK) {      if (env->hflags & HF_LMA_MASK) {
946          ECX = env->eip;          ECX = env->eip + next_eip_addend;
947          env->regs[11] = compute_eflags();          env->regs[11] = compute_eflags();
948    
949          cpu_x86_set_cpl(env, 0);          cpu_x86_set_cpl(env, 0);
# Line 963  void helper_syscall(void) Line 963  void helper_syscall(void)
963          else          else
964              env->eip = env->cstar;              env->eip = env->cstar;
965      } else {      } else {
966          ECX = (uint32_t)env->eip;          ECX = (uint32_t)(env->eip + next_eip_addend);
967                    
968          cpu_x86_set_cpl(env, 0);          cpu_x86_set_cpl(env, 0);
969          cpu_x86_load_seg_cache(env, R_CS, selector & 0xfffc,          cpu_x86_load_seg_cache(env, R_CS, selector & 0xfffc,
# Line 1119  void do_interrupt(int intno, int is_int, Line 1119  void do_interrupt(int intno, int is_int,
1119                  fprintf(logfile, " EAX=" TARGET_FMT_lx, EAX);                  fprintf(logfile, " EAX=" TARGET_FMT_lx, EAX);
1120              }              }
1121              fprintf(logfile, "\n");              fprintf(logfile, "\n");
             cpu_dump_state(env, logfile, fprintf, X86_DUMP_CCOP);  
1122  #if 0  #if 0
1123                cpu_dump_state(env, logfile, fprintf, X86_DUMP_CCOP);
1124              {              {
1125                  int i;                  int i;
1126                  uint8_t *ptr;                  uint8_t *ptr;

Legend:
Removed from v.1.34  
changed lines
  Added in v.1.35

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26