This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[ARM] register label conflict with blx instruction
- From: Christian Bruel <christian dot bruel at st dot com>
- To: <binutils at sourceware dot org>, Ramana Radhakrishnan <ramana dot radhakrishnan at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Date: Wed, 5 Nov 2014 11:23:33 +0100
- Subject: [ARM] register label conflict with blx instruction
- Authentication-results: sourceware.org; auth=none
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