[LLVMdev] Problems with 64-bit register operands of inline asm on ARM

Måns Rullgård mans at mansr.com
Wed Mar 27 16:57:39 PDT 2013


Jim Grosbach <grosbach at apple.com> writes:

> On Mar 27, 2013, at 2:38 PM, Weiming Zhao <weimingz at codeaurora.org> wrote:
>
>> Hi Måns
>> 
>> Oh, so you mean GAS will implicitly add a reg even if only one reg is
>> specified in assembly. Right?
>
> Both registers are required in the syntax. GAS is more lenient, but is
> in error. We don't need to follow their bad example here.

GAS is not *wrong*, strictly speaking.  It is not forbidden for an
assembler to accept syntax beyond that described in the ARM ARM.  In
fact, this is even encouraged in some places.

Since this syntax is non-standard, you are correct that there is no
_need_ to follow this.  However, if the aim is for clang/llvm to compile
existing source code unmodified, this does become a requirement, like it
or not.

-- 
Måns Rullgård
mans at mansr.com




More information about the llvm-commits mailing list