[PATCH] MIPS: microMIPS ASE support
Fu, Chao-Ying
fu@mips.com
Tue Feb 22 20:19:00 GMT 2011
>
> > > > + /* For microMIPS PC relative relocations, we cannot
> > convert it to
> > > > + against a section. If we do, it will mess up the
> > fixp->fx_offset. */
> > > > if (fixp->fx_r_type == BFD_RELOC_VTABLE_INHERIT
> > > > - || fixp->fx_r_type == BFD_RELOC_VTABLE_ENTRY)
> > > > + || fixp->fx_r_type == BFD_RELOC_VTABLE_ENTRY
> > > > + || fixp->fx_r_type == BFD_RELOC_MICROMIPS_7_PCREL_S1
> > > > + || fixp->fx_r_type == BFD_RELOC_MICROMIPS_10_PCREL_S1
> > > > + || fixp->fx_r_type == BFD_RELOC_MICROMIPS_16_PCREL_S1)
> > >
> > > "to be against a section". That's not a helpful comment though.
> > > _How_ will it mess up fixp->fx_offset? Give the reader a clue why
> > > the problem applies to BFD_RELOC_MICROMIPS_16_PCREL_S1 but not
> > > to something like BFD_RELOC_16_PCREL_S2.
GAS resolves all MIPS pc-relative relocation types inside assembling, so there are no issues for
BFD_RELOC_16_PCREL_S2. For microMIPS, GAS leaves them to the linker, so we hit new issues for
microMIPS pc-relative relocation types. Thanks!
Regards,
Chao-ying
More information about the Binutils
mailing list