llvm/lib/Target/AArch64
Geoff Berry bc8f43bf8a [AArch64] Clean up callee-save CFI emission. NFC.
Summary:
Avoid special case for FP, LR CFI emission and just allow general
AArch64FrameLowering::emitCalleeSavedFrameMoves() to handle them.  Also,
stop recalculating the stack offsets in emitCalleeSavedFrameMoves()
since we can just reuse the previously calculated offset stored in the
MachineFrameInfo.

Depends on D17000

Reviewers: t.p.northover, rengolin, mcrosier, jmolloy

Subscribers: aemerson, rengolin, mcrosier, llvm-commits

Differential Revision: http://reviews.llvm.org/D17004

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@261885 91177308-0d34-0410-b5e6-96231b3b80d8
2016-02-25 16:36:08 +00:00
..
AsmParser Move MCTargetAsmParser.h to llvm/MC/MCParser where it belongs. 2016-01-27 10:01:28 +00:00
Disassembler Remove autoconf support 2016-01-26 21:29:08 +00:00
InstPrinter Remove autoconf support 2016-01-26 21:29:08 +00:00
MCTargetDesc AArch64: rename compact unwind forms back to UNWIND_ARM64_*. NFC. 2016-02-23 21:49:05 +00:00
TargetInfo Remove autoconf support 2016-01-26 21:29:08 +00:00
Utils Remove autoconf support 2016-01-26 21:29:08 +00:00
AArch64.h [AArch64] Add pass to remove redundant copy after RA 2016-02-16 20:02:39 +00:00
AArch64.td AArch64: remove CRC feature from Cyclone. 2016-02-24 18:10:17 +00:00
AArch64A53Fix835769.cpp AArch64: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:02:15 +00:00
AArch64A57FPLoadBalancing.cpp Delete trailing whitespace; NFC 2016-01-06 03:41:30 +00:00
AArch64AddressTypePromotion.cpp [AArch64] Make the naming of the Address Type Promotion pass consistent. 2015-08-05 15:32:23 +00:00
AArch64AdvSIMDScalarPass.cpp AArch64: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:02:15 +00:00
AArch64AsmPrinter.cpp Clean up redundant copies of Triple objects. NFC 2015-06-16 15:44:21 +00:00
AArch64BranchRelaxation.cpp AArch64: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:02:15 +00:00
AArch64CallingConvention.h Replace uint16_t with the MCPhysReg typedef in many places. A lot of physical register arrays already use this typedef. 2015-12-05 07:13:35 +00:00
AArch64CallingConvention.td CXX_FAST_TLS calling convention: performance improvement for AArch64. 2015-12-16 21:04:19 +00:00
AArch64CallLowering.cpp [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64CallLowering.h [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64CleanupLocalDynamicTLSPass.cpp Revert "CodeGen: MachineInstr::getIterator() => getInstrIterator(), NFC" 2016-02-22 20:49:58 +00:00
AArch64CollectLOH.cpp [AArch64][CollectLOH] Remove an invalid assertion and add a test case exposing it. 2015-08-31 19:02:00 +00:00
AArch64ConditionalCompares.cpp Reapply "CodeGen: Use references in MachineTraceMetrics::Trace, NFC" 2016-02-22 03:33:28 +00:00
AArch64ConditionOptimizer.cpp Fix AArch64ConditionOptimizer 2016-01-15 00:06:58 +00:00
AArch64DeadRegisterDefinitionsPass.cpp [AArch64] Register AArch64DeadRegisterDefinition pass with LLVM pass manager. 2015-08-05 17:35:34 +00:00
AArch64ExpandPseudoInsts.cpp [AArch64] Register (existing) AArch64ExpandPseudo pass with LLVM pass manager. 2015-08-05 14:22:53 +00:00
AArch64FastISel.cpp [NFC] Replace several manual GEP loops with gep_type_iterator. 2016-01-20 00:26:52 +00:00
AArch64FrameLowering.cpp [AArch64] Clean up callee-save CFI emission. NFC. 2016-02-25 16:36:08 +00:00
AArch64FrameLowering.h [AArch64] Clean up callee-save CFI emission. NFC. 2016-02-25 16:36:08 +00:00
AArch64InstrAtomics.td
AArch64InstrFormats.td [AArch64] Fix FP16 vector instructions that should only accept low registers 2015-12-09 14:32:11 +00:00
AArch64InstrInfo.cpp CodeGen: TII: Take MachineInstr& in predicate API, NFC 2016-02-23 02:46:52 +00:00
AArch64InstrInfo.h [AArch64 MachineCombine] Enhance/Add support for general reassociation to reduce the critical path 2016-01-07 04:01:02 +00:00
AArch64InstrInfo.td [AArch64] Generate csinv instruction more often 2016-02-23 19:34:13 +00:00
AArch64ISelDAGToDAG.cpp GlobalValue: use getValueType() instead of getType()->getPointerElementType(). 2016-01-16 20:30:46 +00:00
AArch64ISelLowering.cpp [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64ISelLowering.h [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64LoadStoreOptimizer.cpp [AArch64] Add support for Qualcomm Kryo CPU. 2016-02-12 15:51:51 +00:00
AArch64MachineFunctionInfo.h [AArch64] Simplify callee-save register save/restore. NFC. 2016-02-01 16:29:19 +00:00
AArch64MCInstLower.cpp Convert some AArch64 code to foreach loops. NFC. 2015-08-03 19:04:32 +00:00
AArch64MCInstLower.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
AArch64PBQPRegAlloc.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
AArch64PBQPRegAlloc.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
AArch64PerfectShuffle.h
AArch64PromoteConstant.cpp AArch64: Remove implicit ilist iterator conversions, NFC 2015-10-13 20:02:15 +00:00
AArch64RedundantCopyElimination.cpp Revert "CodeGen: MachineInstr::getIterator() => getInstrIterator(), NFC" 2016-02-22 20:49:58 +00:00
AArch64RegisterInfo.cpp CXX_FAST_TLS calling convention: performance improvement for AArch64. 2015-12-16 21:04:19 +00:00
AArch64RegisterInfo.h CXX_FAST_TLS calling convention: performance improvement for AArch64. 2015-12-16 21:04:19 +00:00
AArch64RegisterInfo.td [AArch64] Add ARMv8.2-A FP16 vector instructions 2015-12-08 12:16:10 +00:00
AArch64SchedA53.td
AArch64SchedA57.td [AArch64] Changes some SchedAlias to WriteRes for Cortex-A57. 2015-04-10 13:19:27 +00:00
AArch64SchedA57WriteRes.td
AArch64SchedCyclone.td [AArch64] Fix comment typo in Cyclone scheduling defs. NFC. 2016-02-23 14:05:13 +00:00
AArch64SchedKryo.td [AArch64] Add support for Qualcomm Kryo CPU. 2016-02-12 15:51:51 +00:00
AArch64SchedKryoDetails.td [AArch64] Add support for Qualcomm Kryo CPU. 2016-02-12 15:51:51 +00:00
AArch64SchedM1.td [AArch64] Add the scheduling model for Exynos-M1 2016-02-06 00:01:41 +00:00
AArch64Schedule.td
AArch64SelectionDAGInfo.cpp Remove getDataLayout() from TargetSelectionDAGInfo (had no users) 2015-07-09 02:10:08 +00:00
AArch64SelectionDAGInfo.h Rename TargetSelectionDAGInfo into SelectionDAGTargetInfo and move it to CodeGen/ 2016-01-27 16:32:26 +00:00
AArch64StorePairSuppress.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
AArch64Subtarget.cpp [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64Subtarget.h [GlobalISel] Re-apply r260922-260923 with MSVC-friendly code. 2016-02-16 19:26:02 +00:00
AArch64TargetMachine.cpp [AArch64] Add pass to remove redundant copy after RA 2016-02-16 20:02:39 +00:00
AArch64TargetMachine.h Replace string GNU Triples with llvm::Triple in TargetMachine. NFC. 2015-06-11 19:41:26 +00:00
AArch64TargetObjectFile.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
AArch64TargetObjectFile.h [AsmPrinter][TLOF] 32-bit MachO support for replacing GOT equivalents 2015-03-06 13:49:05 +00:00
AArch64TargetTransformInfo.cpp [AArch64] Reduce vector insert/extract cost for Kryo 2016-02-18 18:35:45 +00:00
AArch64TargetTransformInfo.h constify the Function parameter to the TTI creation callback and 2015-09-16 23:38:13 +00:00
CMakeLists.txt [AArch64] Add pass to remove redundant copy after RA 2016-02-16 20:02:39 +00:00
LLVMBuild.txt [AArch64] Plug the beginning of the GlobalISel pipeline. 2016-02-11 19:35:06 +00:00