Commit 1b21b62ab4b68da17b18f630e33ff7e1d5e3d3a2

Authored by bellard
1 parent a1516e92

ARM fixes


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@317 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 4 additions and 7 deletions
cpu-exec.c
@@ -225,7 +225,9 @@ int cpu_exec(CPUState *env1) @@ -225,7 +225,9 @@ int cpu_exec(CPUState *env1)
225 cpu_x86_dump_state(env, logfile, X86_DUMP_CCOP); 225 cpu_x86_dump_state(env, logfile, X86_DUMP_CCOP);
226 env->eflags &= ~(DF_MASK | CC_O | CC_S | CC_Z | CC_A | CC_P | CC_C); 226 env->eflags &= ~(DF_MASK | CC_O | CC_S | CC_Z | CC_A | CC_P | CC_C);
227 #elif defined(TARGET_ARM) 227 #elif defined(TARGET_ARM)
  228 + env->cpsr = compute_cpsr();
228 cpu_arm_dump_state(env, logfile, 0); 229 cpu_arm_dump_state(env, logfile, 0);
  230 + env->cpsr &= ~0xf0000000;
229 #else 231 #else
230 #error unsupported target CPU 232 #error unsupported target CPU
231 #endif 233 #endif
@@ -306,7 +308,7 @@ int cpu_exec(CPUState *env1) @@ -306,7 +308,7 @@ int cpu_exec(CPUState *env1)
306 T0 = tmp_T0; 308 T0 = tmp_T0;
307 #endif 309 #endif
308 /* see if we can patch the calling TB. XXX: remove TF test */ 310 /* see if we can patch the calling TB. XXX: remove TF test */
309 - if (T0 != 0 311 + if (T0 != 0
310 #if defined(TARGET_I386) 312 #if defined(TARGET_I386)
311 && !(env->eflags & TF_MASK) 313 && !(env->eflags & TF_MASK)
312 #endif 314 #endif
@@ -372,12 +374,7 @@ int cpu_exec(CPUState *env1) @@ -372,12 +374,7 @@ int cpu_exec(CPUState *env1)
372 EDI = saved_EDI; 374 EDI = saved_EDI;
373 #endif 375 #endif
374 #elif defined(TARGET_ARM) 376 #elif defined(TARGET_ARM)
375 - {  
376 - int ZF;  
377 - ZF = (env->NZF == 0);  
378 - env->cpsr = env->cpsr | (env->NZF & 0x80000000) | (ZF << 30) |  
379 - (env->CF << 29) | ((env->VF & 0x80000000) >> 3);  
380 - } 377 + env->cpsr = compute_cpsr();
381 #else 378 #else
382 #error unsupported target CPU 379 #error unsupported target CPU
383 #endif 380 #endif