summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--target-alpha/cpu.h2
-rw-r--r--target-arm/cpu.h2
-rw-r--r--target-cris/cpu.h2
-rw-r--r--target-i386/cpu.h2
-rw-r--r--target-m68k/cpu.h2
-rw-r--r--target-mips/cpu.h2
-rw-r--r--target-ppc/cpu.h2
-rw-r--r--target-sh4/cpu.h2
-rw-r--r--target-sparc/cpu.h2
9 files changed, 9 insertions, 9 deletions
diff --git a/target-alpha/cpu.h b/target-alpha/cpu.h
index 0c1b580f97..e9b2b07571 100644
--- a/target-alpha/cpu.h
+++ b/target-alpha/cpu.h
@@ -314,7 +314,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->ir[30] = newsp;
     /* FIXME: Zero syscall return value.  */
 }
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index 1c51d2df40..5005bf6dd3 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -411,7 +411,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->regs[13] = newsp;
     env->regs[0] = 0;
 }
diff --git a/target-cris/cpu.h b/target-cris/cpu.h
index ea86bf9024..a4f016f125 100644
--- a/target-cris/cpu.h
+++ b/target-cris/cpu.h
@@ -221,7 +221,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->regs[14] = newsp;
     env->regs[10] = 0;
 }
diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index 7d4551e765..56cdd97506 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -737,7 +737,7 @@ extern CCTable cc_table[];
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->regs[R_ESP] = newsp;
     env->regs[R_EAX] = 0;
 }
diff --git a/target-m68k/cpu.h b/target-m68k/cpu.h
index 76914525f6..cfeafc003e 100644
--- a/target-m68k/cpu.h
+++ b/target-m68k/cpu.h
@@ -229,7 +229,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->aregs[7] = newsp;
     env->dregs[0] = 0;
 }
diff --git a/target-mips/cpu.h b/target-mips/cpu.h
index f9fcafbb1f..964a560fa3 100644
--- a/target-mips/cpu.h
+++ b/target-mips/cpu.h
@@ -503,7 +503,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->gpr[env->current_tc][29] = newsp;
     env->gpr[env->current_tc][7] = 0;
     env->gpr[env->current_tc][2] = 0;
diff --git a/target-ppc/cpu.h b/target-ppc/cpu.h
index 06dc083909..d08bbba995 100644
--- a/target-ppc/cpu.h
+++ b/target-ppc/cpu.h
@@ -826,7 +826,7 @@ static inline int cpu_mmu_index (CPUState *env)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
     int i;
-    if (!newsp)
+    if (newsp)
         env->gpr[1] = newsp;
     for (i = 7; i < 32; i++)
         env->gpr[i] = 0;
diff --git a/target-sh4/cpu.h b/target-sh4/cpu.h
index 9294b94e3f..c349bc8862 100644
--- a/target-sh4/cpu.h
+++ b/target-sh4/cpu.h
@@ -146,7 +146,7 @@ static inline int cpu_mmu_index (CPUState *env)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->gregs[15] = newsp;
     env->gregs[0] = 0;
 }
diff --git a/target-sparc/cpu.h b/target-sparc/cpu.h
index 54807fb021..ad9aeb8671 100644
--- a/target-sparc/cpu.h
+++ b/target-sparc/cpu.h
@@ -406,7 +406,7 @@ static inline int cpu_fpu_enabled(CPUState *env1)
 #if defined(CONFIG_USER_ONLY)
 static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
 {
-    if (!newsp)
+    if (newsp)
         env->regwptr[22] = newsp;
     env->regwptr[0] = 0;
     /* FIXME: Do we also need to clear CF?  */