egcs-2.93.10 19990228 solaris2.5 bootstrap fails stage2 in new1.cc

Jeffrey A Law law@hurl.cygnus.com
Sun Feb 28 23:30:00 GMT 1999


  In message < 199902281826.NAA10248@caip.rutgers.edu >you write:
  > 	When I built this mornings CVS checkout (egcs-2.93.10 19990228) on
  > sparc-sun-solaris2.5 I get a crash in stage2:
I believe this is a bug in one of the sparc patterns.

Go into frame 2 and print the failing insn.  That insn (it's an unspec of
some kind) does not specify a length or type attribute.  So the compiler tries
to use the default length/type computation.

The default length/computation tries to access operand #2, which does not
exist on the insn in question.

It ought to be straightforward for someone to fix that wants to learn a 
tiny bit about the md files.

jeff

  > 	Here is the info from gdb.  Parameter `op' is zero, so it looks
  > like its dereferencing a NULL ptr. 
  > 
  >  > Program received signal SIGSEGV, Segmentation fault.
  >  > register_operand (op=0x0, mode=VOIDmode) at recog.c:1027
  >  > 1027      if (GET_MODE (op) != mode && mode != VOIDmode)
  >  > (gdb) where
  >  > #0  register_operand (op=0x0, mode=VOIDmode) at recog.c:1027
  >  > #1  0x19ec7c in arith_operand (op=0x0, mode=VOIDmode)
  >  >     at ./config/sparc/sparc.c:804
  >  > #2  0x18d428 in insn_default_length (insn=0x2ae624) at insn-attrtab.c:93
  >  > #3  0x16768c in shorten_branches (first=0x2fcd00) at final.c:1314
  >  > #4  0x37250 in rest_of_compilation (decl=0x2d3770) at toplev.c:4211
  >  > #5  0x1cf490 in finish_function (lineno=88, flags=0, nested=0) at decl.c
  > :14001
  >  > #6  0x202f88 in yyparse () at parse.y:640
  >  > #7  0x34bec in compile_file (name=0xeffffc75 "new1.ii") at toplev.c:2981
  >  > #8  0x38c54 in main (argc=10, argv=0xeffffafc) at toplev.c:5303
  > --
  > Kaveh R. Ghazi			Engagement Manager / Project Services
  > ghazi@caip.rutgers.edu		Qwest Internet Solutions



More information about the Gcc-bugs mailing list