llvm-6502/lib/Target/ARM64
Renato Golin 22f779d1fd Implememting named register intrinsics
This patch implements the infrastructure to use named register constructs in
programs that need access to specific registers (bare metal, kernels, etc).

So far, only the stack pointer is supported as a technology preview, but as it
is, the intrinsic can already support all non-allocatable registers from any
architecture.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208104 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-06 16:51:25 +00:00
..
AsmParser AArch64/ARM64: make NEON vector list parsing a bit more robust 2014-05-06 12:50:51 +00:00
Disassembler AArch64/ARM64: implement diagnosis of unpredictable loads & stores 2014-05-06 14:15:14 +00:00
InstPrinter ARM64: refactor NEON post-indexed loads & stores (MC). 2014-05-02 14:54:21 +00:00
MCTargetDesc AArch64/ARM64: implement remaining TLS relocations (purely MC). 2014-04-30 16:13:26 +00:00
TargetInfo [ARM64] Add a big endian version of the ARM64 target machine, and update all users. 2014-04-23 10:26:40 +00:00
Utils [ARM64] Conditionalize CPU specific system registers on subtarget features 2014-05-01 10:25:36 +00:00
ARM64.h [ARM64] Move ARM64BaseInfo.{cpp,h} into a Utils/ subdirectory, a la AArch64. These files are required in the decoder, disassembler and parser, and a layering violation was imminent. 2014-04-09 14:42:27 +00:00
ARM64.td Fix typo. 2014-05-05 21:50:57 +00:00
ARM64AddressTypePromotion.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64AdvSIMDScalarPass.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64AsmPrinter.cpp AArch64/ARM64: support indexed loads/stores on vector types. 2014-05-02 14:54:15 +00:00
ARM64BranchRelaxation.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64CallingConv.h Make consistent use of MCPhysReg instead of uint16_t throughout the tree. 2014-04-04 05:16:06 +00:00
ARM64CallingConvention.td [ARM64] Handle fp128 for parameter passing on stack 2014-04-25 12:07:03 +00:00
ARM64CleanupLocalDynamicTLSPass.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64CollectLOH.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64ConditionalCompares.cpp AArch64/ARM64: expunge CPSR from the sources 2014-04-30 13:14:14 +00:00
ARM64DeadRegisterDefinitionsPass.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64ExpandPseudoInsts.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64FastISel.cpp [ARM64] Correctly select ANDWri in FastISel. 2014-05-03 17:27:06 +00:00
ARM64FrameLowering.cpp [Modules] Fix potential ODR violations by sinking the DEBUG_TYPE 2014-04-22 02:41:26 +00:00
ARM64FrameLowering.h [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64InstrAtomics.td ARM64: switch to IR-based atomic operations. 2014-04-17 20:00:33 +00:00
ARM64InstrFormats.td AArch64/ARM64: add more specific diagnostic for invalid vector lanes 2014-05-06 12:50:44 +00:00
ARM64InstrInfo.cpp AArch64/ARM64: expunge CPSR from the sources 2014-04-30 13:14:14 +00:00
ARM64InstrInfo.h AArch64/ARM64: expunge CPSR from the sources 2014-04-30 13:14:14 +00:00
ARM64InstrInfo.td AArch64/ARM64: add patterns for post-indexed ST1 ops. 2014-05-02 14:54:27 +00:00
ARM64ISelDAGToDAG.cpp AArch64/ARM64: support indexed loads/stores on vector types. 2014-05-02 14:54:15 +00:00
ARM64ISelLowering.cpp Implememting named register intrinsics 2014-05-06 16:51:25 +00:00
ARM64ISelLowering.h Implememting named register intrinsics 2014-05-06 16:51:25 +00:00
ARM64LoadStoreOptimizer.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64MachineFunctionInfo.h Detemplatize LOHDirective. 2014-03-29 19:21:20 +00:00
ARM64MCInstLower.cpp [ARM64] Move ARM64BaseInfo.{cpp,h} into a Utils/ subdirectory, a la AArch64. These files are required in the decoder, disassembler and parser, and a layering violation was imminent. 2014-04-09 14:42:27 +00:00
ARM64MCInstLower.h
ARM64PerfectShuffle.h
ARM64PromoteConstant.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64RegisterInfo.cpp AArch64/ARM64: expunge CPSR from the sources 2014-04-30 13:14:14 +00:00
ARM64RegisterInfo.h [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64RegisterInfo.td AArch64/ARM64: expunge CPSR from the sources 2014-04-30 13:14:14 +00:00
ARM64SchedA53.td [ARM64] Ports the Cortex-A53 Machine Model description from AArch64. 2014-04-18 21:22:04 +00:00
ARM64SchedCyclone.td [ARM64] Ports the Cortex-A53 Machine Model description from AArch64. 2014-04-18 21:22:04 +00:00
ARM64Schedule.td
ARM64SelectionDAGInfo.cpp [C++] Use 'nullptr'. Target edition. 2014-04-25 05:30:21 +00:00
ARM64SelectionDAGInfo.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64StorePairSuppress.cpp [C++] Use 'nullptr'. Target edition. 2014-04-25 05:30:21 +00:00
ARM64Subtarget.cpp [ARM64] Prefer generation of bzero on Darwin only 2014-05-01 13:11:59 +00:00
ARM64Subtarget.h [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64TargetMachine.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. ARM64 edition 2014-04-29 07:58:25 +00:00
ARM64TargetMachine.h [ARM64] Add a big endian version of the ARM64 target machine, and update all users. 2014-04-23 10:26:40 +00:00
ARM64TargetObjectFile.cpp
ARM64TargetObjectFile.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64TargetTransformInfo.cpp [C++] Use 'nullptr'. Target edition. 2014-04-25 05:30:21 +00:00
CMakeLists.txt [ARM64] Move ARM64BaseInfo.{cpp,h} into a Utils/ subdirectory, a la AArch64. These files are required in the decoder, disassembler and parser, and a layering violation was imminent. 2014-04-09 14:42:27 +00:00
LLVMBuild.txt ARM64/*/LLVMBuild.txt: Prune redundant deps. 2014-04-10 12:46:13 +00:00
Makefile [ARM64] Move ARM64BaseInfo.{cpp,h} into a Utils/ subdirectory, a la AArch64. These files are required in the decoder, disassembler and parser, and a layering violation was imminent. 2014-04-09 14:42:27 +00:00