This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: Assembler messages [PATCH]
On Fri, 2004-06-11 at 10:46, Richard Earnshaw wrote:
> On Fri, 2004-06-11 at 02:01, Shaun Jackman wrote:
> > I changed the error message so that it is correct for the case that
> > I am seeing. I do not know if this is correct for every case.
> >
> > Please cc me in your reply. Cheers!
> > Shaun
> >
> >
> > 2004-06-10 Shaun Jackman <sjackman@debian.org>
> >
> > * gas/config/tc-arm.c (tc_gen_reloc): Provide a descriptive error
> > message when a PC relative relocation is out of range.
> >
> > --- tc-arm.c- 2004-05-17 12:36:08.000000000 -0700
> > +++ tc-arm.c 2004-06-10 17:09:42.000000000 -0700
> > @@ -12830,7 +12830,8 @@
> > }
> >
> > as_bad_where (fixp->fx_file, fixp->fx_line,
> > - _("internal_relocation (type: OFFSET_IMM) not fixed up"));
> > + _("symbol `%s' is out of range (4096 bytes from the program counter)"),
> > + S_GET_NAME (fixp->fx_addsy));
> > return NULL;
>
> No, that isn't right.
>
> Consider this case:
>
> .text
> l:
> ldr r0, x
>
> X isn't defined at all, so it's not correct to say it's out of range.
And this one. In this case the PC isn't used at all:
.text
l:
ldr r0, [r0, #x]