]> granicus.if.org Git - clang/commit
[AArch64]: Add support for parsing rN registers.
authorManoj Gupta <manojgupta@google.com>
Thu, 29 Mar 2018 21:11:15 +0000 (21:11 +0000)
committerManoj Gupta <manojgupta@google.com>
Thu, 29 Mar 2018 21:11:15 +0000 (21:11 +0000)
commit8c8aea3ce916068052d4e4029f6878d8d7dd53da
tree3d0e37f6112d7fa488546144edbe2a6c4a91f448
parentac7d18322f21794a4cc5db3e53b2b7a8783f96f2
[AArch64]: Add support for parsing rN registers.

Summary:
Allow rN registers to be simply parsed as correspoing xN registers.
The "register ... asm("rN")" is an command to the
compiler's register allocator, not an operand to any individual assembly
instruction. GCC documents this syntax as "...the name of the register
that should be used."

This is needed to support the changes in Linux kernel (see
https://lkml.org/lkml/2018/3/1/268 )

Note: This will add support only for the limited use case of
register ... asm("rN"). Any other uses that make rN leak into assembly
are not supported.

Reviewers: kristof.beyls, rengolin, peter.smith, t.p.northover

Reviewed By: peter.smith

Subscribers: javed.absar, eraman, cfe-commits, srhines

Differential Revision: https://reviews.llvm.org/D44815

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@328829 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Basic/Targets/AArch64.cpp
test/CodeGen/aarch64-inline-asm.c