[PATCH] [LLVM - ARM/AArch64] Add ACLE special register intrinsics (10.1)

Luke Cheeseman luke.cheeseman at arm.com
Tue May 12 02:49:40 PDT 2015


This patch implements LLVM support for the ACLE special register intrinsics in section 10.1, __arm_{w,r}sr{,p,64}.

This patch is intended to lower the read/write_register instrinsics, used to implement the special register intrinsics in the clang patch for special register intrinsics (see http://reviews.llvm.org/D9697), to ARM specific instructions MRC,MCR,MSR etc. to allow reading an writing of coprocessor registers in AArch32 and AArch64. This is done by inspecting the register string passed to the intrinsic and then lowering to the appropriate instruction.

http://reviews.llvm.org/D9699

Files:
  lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
  lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
  lib/Target/AArch64/AArch64ISelLowering.cpp
  lib/Target/ARM/ARMISelDAGToDAG.cpp
  lib/Target/ARM/ARMISelLowering.cpp
  lib/Target/ARM/ARMInstrInfo.td
  lib/Target/ARM/ARMInstrThumb2.td
  test/CodeGen/AArch64/arm64-named-reg-alloc.ll
  test/CodeGen/AArch64/arm64-named-reg-notareg.ll
  test/CodeGen/ARM/named-reg-alloc.ll
  test/CodeGen/ARM/named-reg-notareg.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D9699.25565.patch
Type: text/x-patch
Size: 30783 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150512/6e2c365d/attachment.bin>


More information about the llvm-commits mailing list