Commit 8d0b6068 by Dave Korn Committed by H.J. Lu

re PR target/38952 (EH does not work.)

2009-01-31  Dave Korn  <dave.korn.cygwin@gmail.com>

	PR target/38952
	* config/i386/i386.c (ix86_builtin_setjmp_frame_value): New.
	(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Override default to point
	at it.

From-SVN: r143823
parent b39dea08
2009-01-31 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/38952
* config/i386/i386.c (ix86_builtin_setjmp_frame_value): New.
(TARGET_BUILTIN_SETJMP_FRAME_VALUE): Override default to point
at it.
2009-01-31 Richard Guenther <rguenther@suse.de>
PR tree-optimization/38937
......
......@@ -7497,6 +7497,17 @@ ix86_initial_elimination_offset (int from, int to)
}
}
/* In a dynamically-aligned function, we can't know the offset from
stack pointer to frame pointer, so we must ensure that setjmp
eliminates fp against the hard fp (%ebp) rather than trying to
index from %esp up to the top of the frame across a gap that is
of unknown (at compile-time) size. */
static rtx
ix86_builtin_setjmp_frame_value (void)
{
return stack_realign_fp ? hard_frame_pointer_rtx : virtual_stack_vars_rtx;
}
/* Fill structure ix86_frame about frame of currently computed function. */
static void
......@@ -29542,6 +29553,9 @@ ix86_enum_va_list (int idx, const char **pname, tree *ptree)
#undef TARGET_MACHINE_DEPENDENT_REORG
#define TARGET_MACHINE_DEPENDENT_REORG ix86_reorg
#undef TARGET_BUILTIN_SETJMP_FRAME_VALUE
#define TARGET_BUILTIN_SETJMP_FRAME_VALUE ix86_builtin_setjmp_frame_value
#undef TARGET_BUILD_BUILTIN_VA_LIST
#define TARGET_BUILD_BUILTIN_VA_LIST ix86_build_builtin_va_list
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment