This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [PATCH] Indicate dependency on personality routines for ARMEHABI
On Wed, 2005-02-09 at 17:09, Julian Brown wrote:
> Ian Lance Taylor wrote:
> > Julian Brown <julian@codesourcery.com> writes:
> >
> >
> >> /* These relocs are only used within the ARM assembler. They are not
> >> (at present) written to any object files. */
> >>+ BFD_RELOC_ARM_NONE,
> >
> >
> > Why not just use BFD_RELOC_NONE here?
> >
> > In general you should only create a target specific BFD_RELOC enum
> > constant for relocations which only arise on a particular target. For
> > example, note that there is no BFD_ARM_RELOC_32.
>
> Perhaps it should be, and I tried it with that initially. The reason it
> isn't is because elsewhere in tc-arm.c:md_apply_fix3 BFD_RELOC_NONE
> seems to be used as an error indicator:-
>
> case BFD_RELOC_NONE:
> default:
> as_bad_where (fixP->fx_file, fixP->fx_line,
> _("bad relocation fixup type (%d)"), fixP->fx_r_type);
>
> ...which was being triggered when that relocation type was requested
> with fix_new(), I think. Is there another way around that?
Hmm, that's an abuse of RELOC_NONE. It would probably be best to change
them to BFD_RELOC_UNUSED, then you could use BFD_RELOC_NONE for it's
proper purpose.
R.