[IA64] fix stack alignment for ia32 signal handlers
authorMarkus F.X.J. Oberhumer <markus@oberhumer.com>
Mon, 23 Apr 2007 10:00:05 +0000 (12:00 +0200)
committerTony Luck <tony.luck@intel.com>
Tue, 8 May 2007 18:22:59 +0000 (11:22 -0700)
commit66761522a7bca951c1214498b80260533957e3ad
tree7813ff92c8e661b9990fb2049426f76d522e6bf5
parent0e17b560985afb5190e859d5d4609237a91bb732
[IA64] fix stack alignment for ia32 signal handlers

This fixes the setup of the alignment of the signal frame, so that all
signal handlers are run with a properly aligned stack frame.

The current code "over-aligns" the stack pointer so that the stack frame
is effectively always mis-aligned by 4 bytes.  But what we really want
is that on function entry ((sp + 4) & 15) == 0, which matches what would
happen if the stack were aligned before a "call" instruction.

i386 and x86_64 are already fixed by d347f372273c2b3d86a66e2e1c94c790c208e166

Signed-off-by: Markus F.X.J. Oberhumer <markus@oberhumer.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/ia32/ia32_signal.c