This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug debug/17406] [4.0 regression] ICE dwarf2out_frame_debug_expr, at dwarf2out.c:1692


------- Additional Comments From dannysmith at users dot sourceforge dot net  2004-10-07 00:44 -------
The bug appears to be yet another related to the stack probe that is used on 
windows target when allocating more than a page at a time

Removing the RTX_FRAME_RELATED_P tag from the movl <allocate> %eax insn in
ix86_expand_prologue  fixes this bug (refer comments on FRAME_RELATED_P in 
dwarf2out.c)

I have only tested this on a quick rebuild of a month-old CVS. It doesn't seem 
to resurrect any of the old _alloca bugs that the intro of RTX_FRAME_RELATED_P
was meant to fixed.  I'll test properly when I've paid my phone bill and can 
afford to update CVS. Aaron, could you test?

Index: i386.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.c,v
retrieving revision 1.720
diff -c -3 -p -r1.720 i386.c
*** i386.c	4 Sep 2004 07:55:07 -0000	1.720
--- i386.c	7 Oct 2004 00:30:28 -0000
*************** ix86_expand_prologue (void)
*** 4280,4287 ****
  	  allocate -= 4;
  	}
  
!       insn = emit_move_insn (eax, GEN_INT (allocate));
!       RTX_FRAME_RELATED_P (insn) = 1;
  
        insn = emit_insn (gen_allocate_stack_worker (eax));
        RTX_FRAME_RELATED_P (insn) = 1;
--- 4280,4286 ----
  	  allocate -= 4;
  	}
  
!       emit_move_insn (eax, GEN_INT (allocate));
  
        insn = emit_insn (gen_allocate_stack_worker (eax));
        RTX_FRAME_RELATED_P (insn) = 1;

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17406


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]