egcs-CVS19981010, SunOS4 bootstrap fails, gcse.c:4460: ICE ...

Jeffrey A Law law@cygnus.com
Sun Oct 11 18:12:00 GMT 1998


  In message < 199810120019.UAA28145@caip.rutgers.edu >you write:
  >  > From: Jeffrey A Law <law@cygnus.com>
  >  > 
  >  > Interesting.  This is the stuff rth & I have been working on fixing.  Ug
  > h.
  > 
  > 	Yes, I have been watching it progress and get better over the
  > last couple of days. :-) Have you posted an explanation of the long
  > term goal in doing these changes?  (I might have missed it.)  If you
  > can give a me URL on one of the lists I'd love to read about it.
Pretty simple goal -- avoid generating incorrect code :-)

The core issue is gcse/pre wants to insert an insn at the end of a basic block.
But if that basic block ends with a call that might either throw or do a 
nonlocal goto, then there's no good place to insert the new insn.

Consider if it's a memory reference -- it can't be safely moved past the call.
The abort you're triggering is there to help us identify any more of these
cases that we happen to run into.

Or consider SMALL_REGISTER_CLASSES ports -- we have to do the insertion
*before* all the arguments are loaded.  Arggh!  At least this specific issue
is scheduled for termination via Bernd's patches.

jeff



More information about the Gcc-bugs mailing list