https://bugs.llvm.org/show_bug.cgi?id=36862

            Bug ID: 36862
           Summary: Aarch64: support rN register names
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: -New Bugs
          Assignee: unassignedclangb...@nondot.org
          Reporter: manojgu...@google.com
                CC: lloz...@chromium.org, llvm-bugs@lists.llvm.org,
                    ndesaulni...@google.com, srhi...@google.com

Verbatim copied from
https://bugs.chromium.org/p/chromium/issues/detail?id=824526

The upstream kernel commit f2d3b2e8759a ("arm/arm64: smccc: Implement SMCCC
v1.1 inline primitive") 

(https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=f2d3b2e8759a5833df6f022e42df2d581e6d843c)
uses the names "r0", "r1", ... for the general purpose registers that are
usually known as "x0", "x1", ...

Use of the rN register names for arm64 is supported by gcc, but not by clang,
in consequence upstream kernels and v4.14 (LTS/CrOS) currently don't build with
clang for arm64.

Kernel maintainers don't seem to be inclined to use the xN names, probably also
because the code in question is shared between arm64 and arm32, and arm32
registers are named rN.

"I'd say this is really a bug in Clang. Architecturally, the register in
AArch64 state is still named "r0"; "x0"/"w0" are assembler operands which
additionally encode the size of the corresponding *access* to r0."

https://lkml.org/lkml/2018/3/1/186

Maintainers might accept a fix, but expect LLVM to work on supporting rN
register names for arm64 in future releases:

"It would be preferable to see evidence of the llvm community committing to fix
this before we consider merging a bodge into Linux for it."

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to