Hello,
Attached is a work-in-progress patch to restore support for running
QEMU on Mac OS X PowerPC (32-bit). It adjusts the stack offsets
according to the following ABI document:
http://developer.apple.com/documentation/DeveloperTools/Conceptual/LowLevelABI/Articles/32bitPowerPC.html
If these numbers were confirmed to be correct, we should introduce
suitable #defines to avoid some of the #ifdefs currently in the patch.
With this patch applied, I get the following immediate error when
running qemu-system-sparc:
qemu: fatal: Trap 0x07 while interrupts disabled, Error state
pc: 00004120 npc: 00004124
General Registers:
%g0: 00000000 %g1: 7120010c %g2: 00000000 %g3: 71200100
%g4: 00000000 %g5: 00000000 %g6: 00000000 %g7: 00000000
Current Register Window:
%o0: 00000000 %o1: 00000000 %o2: 00000000 %o3: 00000000
%o4: 00000000 %o5: 00000000 %o6: 00000000 %o7: 00000000
%l0: 00000000 %l1: 00000000 %l2: 00000000 %l3: 00000000
%l4: 00000000 %l5: 00000000 %l6: 00000000 %l7: 00000000
%i0: 00000000 %i1: 00000000 %i2: 00000000 %i3: 00000000
%i4: 00000000 %i5: 00000000 %i6: 00000000 %i7: 00000000
Floating Point Registers:
%f00: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f04: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f08: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f12: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f16: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f20: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f24: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
%f28: 000000000.000000 000000000.000000 000000000.000000
000000000.000000
psr: 0x044000c0 -> Z--- SP- wim: 0x00000001
fsr: 0x00080000
../qemu-debian-sparc.command: line 3: 1259 Abort trap /
Users/andreas/Q/latest/bin/qemu-system-sparc -hda /Users/andreas/
Documents/QEMU/DebianSparc.qvm/Harddisk_1.qcow2 -m 256
Probably I'm missing something obvious... Any hints or requests how
to improve the patch appreciated.
Andreas