aboutsummaryrefslogtreecommitdiff
path: root/target-cris/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-cris/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-cris/cpu.h')
-rw-r--r--target-cris/cpu.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/target-cris/cpu.h b/target-cris/cpu.h
index 14b09d8cb6..ea86bf9024 100644
--- a/target-cris/cpu.h
+++ b/target-cris/cpu.h
@@ -218,6 +218,15 @@ static inline int cpu_mmu_index (CPUState *env)
return !!(env->pregs[PR_CCS] & U_FLAG);
}
+#if defined(CONFIG_USER_ONLY)
+static inline void cpu_clone_regs(CPUState *env, target_ulong newsp)
+{
+ if (!newsp)
+ env->regs[14] = newsp;
+ env->regs[10] = 0;
+}
+#endif
+
/* Support function regs. */
#define SFR_RW_GC_CFG 0][0
#define SFR_RW_MM_CFG env->pregs[PR_SRS]][0