BOOTSTRAP FAILURE: segementation fault in genattrtab under hpux

law@redhat.com law@redhat.com
Wed Nov 15 15:14:00 GMT 2000


  In message < 200011152309.SAA24092@hiauly1.hia.nrc.ca >you write:
  > > 
  > > 
  > >   In message < 200011152210.RAA23951@hiauly1.hia.nrc.ca >you write:
  > >   > > 0xb8af8 <layout_type+64>:       extrw,u r22,7,8,r3
  > >   > > 0xb8afc <layout_type+68>:       ldo 4c8(r9),r20
  > >   > > 0xb8b00 <layout_type+72>:       ldb  r20(sr0,r3),rp
  > >   > > 0xb8b04 <layout_type+76>:       extrw,s rp,31,8,r19
  > >   > > 0xb8b08 <layout_type+80>:       cmpb,<> r25,r19,0xb9968 <layout_typ
  > e+3760
  > >   > >
  > >   > > 
  > >   > > (gdb) stepi
  > >   > > 0xb8b00 1235      if (TYPE_SIZE (type))
  > >   > > (gdb) info reg r22 r3 r9 r20
  > >   > > r22 7000000
  > >   > > r3 7b03abb0
  > >   > > r9 400050d8
  > >   > > r20 400055a0
  > >   > > (gdb) stepi
  > >   > 
  > >   > The problem is the base and index registers in the ldb instruction
  > >   > have been interchanged by rename registers.  These are not interchang
  > eable
  > >   > on the pa because the space register for the instruction is loaded fr
  > om
  > >   > the base register.  Richard and Jeff, any thoughts on how to fix this
  > >   > one?
  > > Hmmm, presumably the insn was recognized because reload was completed and
  > > we didn't expect anyone to be mucking around with this stuff again, but
  > > regrename mucked things?
  > 
  > I think the reversal occurs because r3 is being used as an index register.
  > There is stuff in the machine definition like this:
I seriously doubt it since hard_frame_pointer_rtx shouldn't have %r3 as
its value unless %r3 really is the frame pointer.  ie, if the frame pointer
is eliminated %r3 should not be the value of hard_frame_pointer_rtx.
jeff



More information about the Gcc-bugs mailing list