llvm-6502/lib/Target/ARM64
Lang Hames 89218827c8 [ARM64] Teach the ARM64DeadRegisterDefinition pass to respect implicit-defs.
When rematerializing through truncates, the coalescer may produce instructions
with dead defs, but live implicit-defs of subregs:
E.g.
  %X1<def,dead> = MOVi64imm 2, %W1<imp-def>; %X1:GPR64, %W1:GPR32

These instructions are live, and their definitions should not be rewritten.

Fixes <rdar://problem/16492408>



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205565 91177308-0d34-0410-b5e6-96231b3b80d8
2014-04-03 20:51:08 +00:00
..
AsmParser Fixing warnings in the MSVC build. No functional changes intended. 2014-04-01 12:22:20 +00:00
Disassembler Fixing warnings in the MSVC build. No functional changes intended. 2014-04-01 12:22:20 +00:00
InstPrinter ARM64: format register strings without creating a local Twine. 2014-03-29 15:35:57 +00:00
MCTargetDesc Fixing an MSVC warning about widening the result of a 32-bit shift implicitly. No functional change intended. 2014-04-01 12:24:25 +00:00
TargetInfo
ARM64.h
ARM64.td
ARM64AddressTypePromotion.cpp Make some range based loop types more explicit. 2014-04-02 19:28:08 +00:00
ARM64AdvSIMDScalarPass.cpp
ARM64AsmPrinter.cpp Detemplatize LOHDirective. 2014-03-29 19:21:20 +00:00
ARM64BranchRelaxation.cpp [C++11,ARM64] Range based for loops in branch relaxation. 2014-04-02 18:00:39 +00:00
ARM64CallingConv.h
ARM64CallingConvention.td
ARM64CleanupLocalDynamicTLSPass.cpp Make a few more range-based loops use explicit types. 2014-04-02 20:21:22 +00:00
ARM64CollectLOH.cpp Make some range based loop types more explicit. 2014-04-02 19:28:08 +00:00
ARM64ConditionalCompares.cpp ARM64: Remove unused helper function, make others static. 2014-03-29 18:00:49 +00:00
ARM64DeadRegisterDefinitionsPass.cpp [ARM64] Teach the ARM64DeadRegisterDefinition pass to respect implicit-defs. 2014-04-03 20:51:08 +00:00
ARM64ExpandPseudoInsts.cpp [C++11,ARM64] Range based for loops in pseudo expansion. 2014-04-02 18:00:46 +00:00
ARM64FastISel.cpp Fixing warnings in the MSVC build. No functional changes intended. 2014-04-01 12:22:20 +00:00
ARM64FrameLowering.cpp [C++11,ARM64] Range based for loops in frame lowering. 2014-04-02 18:00:49 +00:00
ARM64FrameLowering.h
ARM64InstrAtomics.td
ARM64InstrFormats.td ARM64: always use i64 for the RHS of shift operations 2014-04-03 09:26:16 +00:00
ARM64InstrInfo.cpp
ARM64InstrInfo.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64InstrInfo.td ARM64: always use i64 for the RHS of shift operations 2014-04-03 09:26:16 +00:00
ARM64ISelDAGToDAG.cpp ARM64: convert fp16 narrowing ISel to pseudo-instruction 2014-04-02 14:38:54 +00:00
ARM64ISelLowering.cpp ARM64: always use i64 for the RHS of shift operations 2014-04-03 09:26:16 +00:00
ARM64ISelLowering.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64LoadStoreOptimizer.cpp [C++11,ARM64] Range based for loops in load/store pair optimizer. 2014-04-02 18:00:53 +00:00
ARM64MachineFunctionInfo.h Detemplatize LOHDirective. 2014-03-29 19:21:20 +00:00
ARM64MCInstLower.cpp
ARM64MCInstLower.h
ARM64PerfectShuffle.h
ARM64PromoteConstant.cpp [C++11,ARM64] Range based for loops in constant promotion. 2014-04-02 18:00:56 +00:00
ARM64RegisterInfo.cpp Simplify resolveFrameIndex() signature. 2014-04-02 19:28:18 +00:00
ARM64RegisterInfo.h Simplify resolveFrameIndex() signature. 2014-04-02 19:28:18 +00:00
ARM64RegisterInfo.td
ARM64SchedCyclone.td
ARM64Schedule.td
ARM64SelectionDAGInfo.cpp
ARM64SelectionDAGInfo.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64StorePairSuppress.cpp [C++11,ARM64] Range based for and explicit 'override' in STP cleanup. 2014-04-02 18:00:59 +00:00
ARM64Subtarget.cpp ARM64: use GOT for weak symbols & PIC. 2014-04-02 14:39:11 +00:00
ARM64Subtarget.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64TargetMachine.cpp
ARM64TargetMachine.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64TargetObjectFile.cpp
ARM64TargetObjectFile.h ARM64: override all the things. 2014-03-30 07:25:18 +00:00
ARM64TargetTransformInfo.cpp
CMakeLists.txt
LLVMBuild.txt
Makefile