]> git.proxmox.com Git - qemu.git/commit
Rework PowerPC exceptions model to make it more versatile:
authorj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 29 Sep 2007 13:06:16 +0000 (13:06 +0000)
committerj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 29 Sep 2007 13:06:16 +0000 (13:06 +0000)
commite1833e1f96456fd8fc17463246fe0b2050e68efb
tree5d50859e3cb0a1c2628811d7255f112a9f87cdca
parentf93732914e0b06539170e84f046f01ebe99980f3
Rework PowerPC exceptions model to make it more versatile:
* don't use exception vectors as the exception number.
  Use vectors numbers as defined in the PowerPC embedded specification instead
  and extend this model to cover all emulated PowerPC variants exceptions.
* add some missing exceptions definitions, from PowerPC 2.04 specification
  and actual PowerPC implementations.
* add code provision for hypervisor exceptions handling.
* define exception vectors and prefix in CPUPPCState to emulate BookE exception
  vectors without any hacks.
* define per CPU model valid exception vectors.
* handle all known exceptions in user-mode only emulations.
* fix hardware interrupts priorities in most cases.
* change RET_EXCP macros name into GEN_EXCP as they don't return.
* do not stop translation on most instructions that are not defined as
  context-synchronizing in PowerPC specification.
* fix PowerPC 64 jump targets and link register update when in 32 bits mode.
* Fix PowerPC 464 and 464F definitions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3261 c046a42c-6fe2-441c-8c8c-71466251a162
darwin-user/main.c
linux-user/main.c
target-ppc/cpu.h
target-ppc/helper.c
target-ppc/op_helper.c
target-ppc/op_mem.h
target-ppc/translate.c
target-ppc/translate_init.c