This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [patch] MIPS gas problems with gcc's explicit relocs
Paul Koning wrote:
[snip]
> Thiemo> That's not the way gcc up to 3.3 works for mips. So far, it
> Thiemo> was possible to write
>
> Thiemo> asm("ld\t%0,%1(%2)" : "=r" (foo) : "m" (bar), "r" (baz));
>
> Thiemo> and get something like
>
> Thiemo> #APP ld $2,bar($2) #NO_APP
>
> That certainly is not what I expect from the documentation. If you
> need "bar" as a displacement, then it clearly is not a memory location
> -- which is what "m" means.
I need "bar" as a symbol reference. The "m" constraint used to provide
this. ATM, there is no constraint available which actually provides the
address of a symbol.
If the new behaviour of "m" is correct and remains that way, we need a
working "p", and there's quite an amount of code to change.
Thiemo