aboutsummaryrefslogtreecommitdiff
path: root/target-sh4/cpu.h
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-30 17:22:15 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-30 17:22:15 +0000
commit6e68e076e72f42d43cc3b5435751d796c2410a3f (patch)
tree75146f8907674df3e5d8bbb8a579940d9b73b677 /target-sh4/cpu.h
parenta4a99d71b29ef6e506feeabc119e8ddf8490b07b (diff)
Move clone() register setup to target specific code. Handle fork-like clone.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4623 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-sh4/cpu.h')
-rw-r--r--target-sh4/cpu.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/target-sh4/cpu.h b/target-sh4/cpu.h
index c03cdb188c..9294b94e3f 100644
--- a/target-sh4/cpu.h
+++ b/target-sh4/cpu.h
@@ -143,6 +143,15 @@ static inline int cpu_mmu_index (CPUState *env)
return (env->sr & SR_MD) == 0 ? 1 : 0;
}
+#if defined(CONFIG_USER_ONLY)
+static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
+{
+ if (!newsp)
+ env->gregs[15] = newsp;
+ env->gregs[0] = 0;
+}
+#endif
+
#include "cpu-all.h"
/* Memory access type */