瀏覽代碼

Get rid of user_mode_only

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6305 c046a42c-6fe2-441c-8c8c-71466251a162
aurel32 16 年之前
父節點
當前提交
72d239ed26
共有 7 個文件被更改,包括 4 次插入12 次删除
  1. 0 1
      bsd-user/main.c
  2. 0 2
      cpu-defs.h
  3. 4 2
      cpu-exec.c
  4. 0 1
      darwin-user/main.c
  5. 0 1
      linux-user/main.c
  6. 0 1
      target-sparc/helper.c
  7. 0 4
      tests/qruncom.c

+ 0 - 1
bsd-user/main.c

@@ -558,7 +558,6 @@ int main(int argc, char **argv)
     init_task_state(ts);
     ts->info = info;
     env->opaque = ts;
-    env->user_mode_only = 1;
 
 #if defined(TARGET_SPARC)
     {

+ 0 - 2
cpu-defs.h

@@ -201,8 +201,6 @@ typedef struct CPUWatchpoint {
     jmp_buf jmp_env;                                                    \
     int exception_index;                                                \
                                                                         \
-    int user_mode_only;                                                 \
-                                                                        \
     void *next_cpu; /* next CPU sharing TB cache */                     \
     int cpu_index; /* CPU index (informative) */                        \
     int running; /* Nonzero if cpu is currently running(usermode).  */  \

+ 4 - 2
cpu-exec.c

@@ -263,7 +263,8 @@ int cpu_exec(CPUState *env1)
                     if (ret == EXCP_DEBUG)
                         cpu_handle_debug_exception(env);
                     break;
-                } else if (env->user_mode_only) {
+                } else {
+#if defined(CONFIG_USER_ONLY)
                     /* if user mode only, we simulate a fake exception
                        which will be handled outside the cpu execution
                        loop */
@@ -277,7 +278,7 @@ int cpu_exec(CPUState *env1)
 #endif
                     ret = env->exception_index;
                     break;
-                } else {
+#else
 #if defined(TARGET_I386)
                     /* simulate a real cpu exception. On i386, it can
                        trigger new exceptions, but we do not handle
@@ -304,6 +305,7 @@ int cpu_exec(CPUState *env1)
                     do_interrupt(env);
 #elif defined(TARGET_M68K)
                     do_interrupt(0);
+#endif
 #endif
                 }
                 env->exception_index = -1;

+ 0 - 1
darwin-user/main.c

@@ -896,7 +896,6 @@ int main(int argc, char **argv)
     memset(ts, 0, sizeof(TaskState));
     env->opaque = ts;
     ts->used = 1;
-    env->user_mode_only = 1;
 
 #if defined(TARGET_I386)
     cpu_x86_set_cpl(env, 3);

+ 0 - 1
linux-user/main.c

@@ -2421,7 +2421,6 @@ int main(int argc, char **argv, char **envp)
     init_task_state(ts);
     ts->info = info;
     env->opaque = ts;
-    env->user_mode_only = 1;
 
 #if defined(TARGET_I386)
     cpu_x86_set_cpl(env, 3);

+ 0 - 1
target-sparc/helper.c

@@ -644,7 +644,6 @@ void cpu_reset(CPUSPARCState *env)
     env->wim = 1;
     env->regwptr = env->regbase + (env->cwp * 16);
 #if defined(CONFIG_USER_ONLY)
-    env->user_mode_only = 1;
 #ifdef TARGET_SPARC64
     env->cleanwin = env->nwindows - 2;
     env->cansave = env->nwindows - 2;

+ 0 - 4
tests/qruncom.c

@@ -199,10 +199,6 @@ int main(int argc, char **argv)
 
     env = cpu_init("qemu32");
 
-    /* set user mode state (XXX: should be done automatically by
-       cpu_init ?) */
-    env->user_mode_only = 1;
-
     cpu_x86_set_cpl(env, 3);
 
     env->cr[0] = CR0_PG_MASK | CR0_WP_MASK | CR0_PE_MASK;