MIPS gas relaxation still doesn't work

Jim Wilson wilson@redhat.com
Wed Oct 16 09:28:00 GMT 2002


> The tough problems I've noticed so far is the small limit
>on the number of constraints, which is only ten

This should be fixed as of gcc-3.1, since you can have named operands now.
Taking an example from the gcc docs:
        asm ("cmoveq %1,%2,%[result]"
             : [result] "=r"(result)
             : "r" (test), "r"(new), "[result]"(old));

> and the unability to pass
>a machine address, as the "R" constraint, which is expected to provide the
>function, doesn't work here and the "m" and "o" ones may require a macro
>expansion. 

I'm not sure exactly what problem you are trying to report here, but I think
it is likely true that we will need new constraint codes.  Previously we didn't
need special constraint codes for asms because everyone relied on the assembler
macros for loads.  Now that we want to get people to stop using assembler
macros, we may need to add special constraint codes so that people can write
the asms that they need.

Jim



More information about the Binutils mailing list