diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2006-10-22 00:18:54 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2006-10-22 00:18:54 +0000 |
commit | e6e5906b6e0a81718066ca43aef57515026c6624 (patch) | |
tree | 79996f66ed5a2e4f37783a114cb45f6913204486 /linux-user/syscall.c | |
parent | 223b8a40d13550ebc08216bd96d1f615597e0554 (diff) |
ColdFire target.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2196 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user/syscall.c')
-rw-r--r-- | linux-user/syscall.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 60ed9a6078..e5e4139fd3 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -69,7 +69,8 @@ //#define DEBUG -#if defined(TARGET_I386) || defined(TARGET_ARM) || defined(TARGET_SPARC) +#if defined(TARGET_I386) || defined(TARGET_ARM) || defined(TARGET_SPARC) \ + || defined(TARGET_M68K) /* 16 bit uid wrappers emulation */ #define USE_UID16 #endif @@ -1645,6 +1646,12 @@ int do_fork(CPUState *env, unsigned int flags, unsigned long newsp) new_env->regwptr[0] = 0; /* XXXXX */ printf ("HELPME: %s:%d\n", __FILE__, __LINE__); +#elif defined(TARGET_M68K) + if (!newsp) + newsp = env->aregs[7]; + new_env->aregs[7] = newsp; + new_env->dregs[0] = 0; + /* ??? is this sufficient? */ #elif defined(TARGET_MIPS) printf ("HELPME: %s:%d\n", __FILE__, __LINE__); #elif defined(TARGET_PPC) @@ -2604,7 +2611,7 @@ long do_syscall(void *cpu_env, int num, long arg1, long arg2, long arg3, case TARGET_NR_readdir: goto unimplemented; case TARGET_NR_mmap: -#if defined(TARGET_I386) || defined(TARGET_ARM) +#if defined(TARGET_I386) || defined(TARGET_ARM) || defined(TARGET_M68K) { target_ulong *v; target_ulong v1, v2, v3, v4, v5, v6; |