> >     case ELF_STUB_GOT:
> > -           stub->insns[0] = 0x537b0000;    /* ldd 0(%dp),%dp       */
> > +           stub->insns[0] = 0x537b0000;    /* ldd 0(%dp),%dp       */
> >             stub->insns[1] = 0x53610020;    /* ldd 10(%dp),%r1      */
> >             stub->insns[2] = 0xe820d000;    /* bve (%r1)            */
> >             stub->insns[3] = 0x537b0030;    /* ldd 18(%dp),%dp      */
> >  
> > -           stub->insns[0] |= reassemble_14(get_got(me, value, addend) & 
> > 0x3fff);
> > +           d = get_got(me, value, addend);
> > +           if (d <= 15)
> > +                   stub->insns[0] |= reassemble_14(d);
> 
> reassemble_14 is wrong for ldd format 3.  Need format 5 and im5 insertion.

The format 5 version of ldd 0(%dp),%dp is 0x0f6010db.

Dave
-- 
J. David Anglin                                  dave.ang...@nrc-cnrc.gc.ca
National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to