Commit 5fc94ac4 by Richard Henderson Committed by Richard Henderson

re PR target/17406 (ICE dwarf2out_frame_debug_expr, at dwarf2out.c:1692)

        PR target/17406
        * config/i386/i386.c (ix86_expand_prologue): Add REG_FRAME_RELATED_EXPR
        note for allocate_stack_worker insn.

From-SVN: r92662
parent 445cf5eb
2004-12-27 Richard Henderson <rth@redhat.com>
PR target/17406
* config/i386/i386.c (ix86_expand_prologue): Add REG_FRAME_RELATED_EXPR
note for allocate_stack_worker insn.
2004-12-27 Jason Merrill <jason@redhat.com> 2004-12-27 Jason Merrill <jason@redhat.com>
* doc/tm.texi (TARGET_RELAXED_ORDERING): Document. * doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
......
...@@ -4331,6 +4331,7 @@ ix86_expand_prologue (void) ...@@ -4331,6 +4331,7 @@ ix86_expand_prologue (void)
/* Only valid for Win32. */ /* Only valid for Win32. */
rtx eax = gen_rtx_REG (SImode, 0); rtx eax = gen_rtx_REG (SImode, 0);
bool eax_live = ix86_eax_live_at_start_p (); bool eax_live = ix86_eax_live_at_start_p ();
rtx t;
if (TARGET_64BIT) if (TARGET_64BIT)
abort (); abort ();
...@@ -4341,15 +4342,17 @@ ix86_expand_prologue (void) ...@@ -4341,15 +4342,17 @@ ix86_expand_prologue (void)
allocate -= 4; allocate -= 4;
} }
insn = emit_move_insn (eax, GEN_INT (allocate)); emit_move_insn (eax, GEN_INT (allocate));
RTX_FRAME_RELATED_P (insn) = 1;
insn = emit_insn (gen_allocate_stack_worker (eax)); insn = emit_insn (gen_allocate_stack_worker (eax));
RTX_FRAME_RELATED_P (insn) = 1; RTX_FRAME_RELATED_P (insn) = 1;
t = gen_rtx_PLUS (Pmode, stack_pointer_rtx, GEN_INT (-allocate));
t = gen_rtx_SET (VOIDmode, stack_pointer_rtx, t);
REG_NOTES (insn) = gen_rtx_EXPR_LIST (REG_FRAME_RELATED_EXPR,
t, REG_NOTES (insn));
if (eax_live) if (eax_live)
{ {
rtx t;
if (frame_pointer_needed) if (frame_pointer_needed)
t = plus_constant (hard_frame_pointer_rtx, t = plus_constant (hard_frame_pointer_rtx,
allocate allocate
......
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