This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
RE: [PATCH] MIPS: microMIPS ASE support
- From: "Fu, Chao-Ying" <fu at mips dot com>
- To: "Maciej W. Rozycki" <macro at codesourcery dot com>, Richard Sandiford <rdsandiford at googlemail dot com>
- Cc: "binutils at sourceware dot org" <binutils at sourceware dot org>, "Fuhler, Rich" <rich at mips dot com>, "Lau, David" <davidlau at mips dot com>, "Mills, Kevin" <kevinm at mips dot com>, "Garbacea, Ilie" <ilie at mips dot com>, Catherine Moore <clm at codesourcery dot com>, Nathan Sidwell <nathan at codesourcery dot com>, Joseph Myers <joseph at codesourcery dot com>, Nathan Froyd <froydnj at codesourcery dot com>
- Date: Tue, 22 Feb 2011 20:19:26 +0000
- Subject: RE: [PATCH] MIPS: microMIPS ASE support
- References: <alpine.DEB.1.10.1005181806590.4023@tp.orcam.me.uk> <87y6fa9u3t.fsf@firetop.home> <alpine.DEB.1.10.1007112325020.2824@tp.orcam.me.uk> <876302kqvu.fsf@firetop.home> <alpine.DEB.1.10.1012061924490.5345@tp.orcam.me.uk> <8739pb1qs5.fsf@firetop.home> <alpine.DEB.1.10.1102111905400.20460@tp.orcam.me.uk>
>
> > > > + /* 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