[ARM] register label conflict with blx instruction

Christian Bruel christian.bruel@st.com
Wed Nov 5 10:23:00 GMT 2014
Hello,

I'm wondering what would be the best way to deal with labels conflicting 
with a register name in ARM gas.

e.g with

     .thumb
     .thumb_func
     .type    r0, %function
r0:
   ...

     .arm
     .type    f, %function
f:
     blx    r0

the assembler will see r0 as a reg and of course produce wrong code.

Prefixing labels in the assembler fixes the issue. But this is compiler 
generated code (from the attribute target work), Changing 
USER_LABEL_PREFIX would modify all visible symbols which is not 
desirable. I only wish to generate this for static function to bypass a 
current limitation with the assembler.

Any idea about an arm assembly syntax to avoid naming conflict between 
regs and symbols for instruction that support boths ?

Thanks,

Christian





More information about the Binutils mailing list