diff options
author | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-09-26 23:54:22 +0000 |
---|---|---|
committer | j_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-09-26 23:54:22 +0000 |
commit | a750fc0b9184a520d00d9e949160a0c6d3232ecd (patch) | |
tree | 681734fa2531d1cb27efc89d2f4d7397f1f8eaee /linux-user/main.c | |
parent | 08fa4bab833f834e1511853dd2331fa3d6d5d469 (diff) |
Great rework and cleanups to ease PowerPC implementations definitions.
* cleanup cpu.h, removing definitions used only in translate.c/translate_init.c
* add new flags to define instructions sets more precisely
* various changes in MMU models definitions
* add definitions for PowerPC 440/460 support (insns and SPRs).
* add definitions for PowerPC 401/403 and 620 input pins model
* Fix definitions for most PowerPC 401, 403, 405, 440, 601, 602, 603 and 7x0
* Preliminary support for PowerPC 74xx (aka G4) without altivec.
* Code provision for other PowerPC support (7x5, 970, ...).
* New SPR and PVR defined, from PowerPC 2.04 specification and other sources
* Misc code bugs, error messages and styles fixes.
* Update status files for PowerPC cores support.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3244 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'linux-user/main.c')
-rw-r--r-- | linux-user/main.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/linux-user/main.c b/linux-user/main.c index 18e0be1812..b70c070c3f 100644 --- a/linux-user/main.c +++ b/linux-user/main.c @@ -712,6 +712,17 @@ uint32_t cpu_ppc601_load_rtcl (CPUState *env) return cpu_ppc_load_tbl(env) & 0x3FFFFF80; } +/* XXX: to be fixed */ +int ppc_dcr_read (ppc_dcr_t *dcr_env, int dcrn, target_ulong *valp) +{ + return -1; +} + +int ppc_dcr_write (ppc_dcr_t *dcr_env, int dcrn, target_ulong val) +{ + return -1; +} + void cpu_loop(CPUPPCState *env) { target_siginfo_t info; @@ -761,7 +772,7 @@ void cpu_loop(CPUPPCState *env) case EXCP_MACHINE_CHECK: fprintf(stderr, "Machine check exeption... Stop emulation\n"); if (loglevel) - fprintf(logfile, "RESET asked... Stop emulation\n"); + fprintf(logfile, "Machine check exception. Stop emulation\n"); info.si_signo = TARGET_SIGBUS; info.si_errno = 0; info.si_code = TARGET_BUS_OBJERR; @@ -914,7 +925,7 @@ void cpu_loop(CPUPPCState *env) info.si_code = TARGET_ILL_ILLOPC; break; case EXCP_INVAL_LSWX: - info.si_code = TARGET_ILL_ILLOPN; + info.si_code = TARGET_ILL_ILLOPN; break; case EXCP_INVAL_SPR: info.si_code = TARGET_ILL_PRVREG; @@ -1003,7 +1014,7 @@ void cpu_loop(CPUPPCState *env) if (loglevel) fprintf(logfile, "Tried to go into supervisor mode !\n"); abort(); - } + } break; case EXCP_BRANCH: /* We stopped because of a jump... */ |