Fix x86oid OSX signal handling emulation assembly fragments.
authorAlastair Bridgewater <nyef@virtdev-1.lisphacker.com>
Mon, 24 Oct 2011 18:30:32 +0000 (14:30 -0400)
committerAlastair Bridgewater <nyef@virtdev-1.lisphacker.com>
Mon, 24 Oct 2011 18:30:32 +0000 (14:30 -0400)
commitc3af3cf3704ce01c71de96cc36c2798014fc9960
treea5a0e96b1b712cf1825770c0698b46df931016ab
parentf60e9933a652a3b6ff5d3176f85a41833c1bc338
Fix x86oid OSX signal handling emulation assembly fragments.

  * Both x86 and x86-64 signal_emulation_wrapper include a small
assembly fragment to simulate "sigreturn" by means of an invalid
instruction trap.  This fragment has to load two different pointers
into specific registers before the trap, but historically just told
the compiler to load them into registers and then moved them into
the correct registers, leading to the possibility of clobbering one
of the values.  Fixed, by informing the compiler to place them into
the correct registers to begin with.
NEWS
src/runtime/x86-64-darwin-os.c
src/runtime/x86-darwin-os.c