1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 12:33:33 +02:00
llvm-mirror/lib/Target/Hexagon
Josh Magee 86d29cffa7 [stackprotector] Use analysis from the StackProtector pass for stack layout in PEI a nd LocalStackSlot passes.
This changes the MachineFrameInfo API to use the new SSPLayoutKind information
produced by the StackProtector pass (instead of a boolean flag) and updates a
few pass dependencies (to preserve the SSP analysis).

The stack layout follows the same approach used prior to this change - i.e.,
only LargeArray stack objects will be placed near the canary and everything
else will be laid out normally.  After this change, structures containing large
arrays will also be placed near the canary - a case previously missed by the
old implementation.

Out of tree targets will need to update their usage of
MachineFrameInfo::CreateStackObject to remove the MayNeedSP argument. 

The next patch will implement the rules for sspstrong and sspreq.  The end goal
is to support ssp-strong stack layout rules.

WIP.

Differential Revision: http://llvm-reviews.chandlerc.com/D2158

llvm-svn: 197653
2013-12-19 03:17:11 +00:00
..
InstPrinter [CMake] Let add_public_tablegen_target responsible to provide dependency to CommonTableGen. 2013-11-28 17:04:04 +00:00
MCTargetDesc Refactor the setting of PrivateGlobalPrefix. 2013-12-02 23:39:26 +00:00
TargetInfo Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
CMakeLists.txt [CMake] Let add_public_tablegen_target() provide intrinsics_gen, too. 2013-11-28 17:04:31 +00:00
Hexagon.h
Hexagon.td Change the default of AsmWriterClassName and isMCAsmWriter. 2013-12-02 04:55:42 +00:00
HexagonAsmPrinter.cpp Remove dead code. 2013-12-02 15:36:37 +00:00
HexagonAsmPrinter.h Remove leftovers from a non-MC asm printer. 2013-12-02 05:42:16 +00:00
HexagonCallingConv.td
HexagonCallingConvLower.cpp
HexagonCallingConvLower.h
HexagonCFGOptimizer.cpp
HexagonCopyToCombine.cpp
HexagonExpandPredSpillCode.cpp
HexagonFixupHwLoops.cpp
HexagonFrameLowering.cpp
HexagonFrameLowering.h
HexagonHardwareLoops.cpp Replace some unnecessary vector copies with references. 2013-09-15 22:04:42 +00:00
HexagonInstrFormats.td Even more spelling fixes for "instruction". 2013-09-28 13:42:22 +00:00
HexagonInstrFormatsV4.td
HexagonInstrInfo.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
HexagonInstrInfo.h [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
HexagonInstrInfo.td
HexagonInstrInfoV3.td
HexagonInstrInfoV4.td Correct word hyphenations 2013-12-05 05:44:44 +00:00
HexagonInstrInfoV5.td
HexagonIntrinsics.td
HexagonIntrinsicsDerived.td
HexagonIntrinsicsV3.td
HexagonIntrinsicsV4.td
HexagonIntrinsicsV5.td
HexagonISelDAGToDAG.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
HexagonISelLowering.cpp Hexagon: Remove global state. 2013-10-27 11:16:09 +00:00
HexagonISelLowering.h SelectionDAG: Teach the legalizer to split SETCC if VSELECT needs splitting too. 2013-11-13 01:57:54 +00:00
HexagonMachineFunctionInfo.cpp [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
HexagonMachineFunctionInfo.h [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
HexagonMachineScheduler.cpp
HexagonMachineScheduler.h
HexagonMCInstLower.cpp Add a helper getSymbol to AsmPrinter. 2013-10-29 17:07:16 +00:00
HexagonNewValueJump.cpp
HexagonOperands.td
HexagonPeephole.cpp Even more spelling fixes for "instruction". 2013-09-28 13:42:22 +00:00
HexagonRegisterInfo.cpp Remove getEHExceptionRegister and getEHHandlerRegister. 2013-10-07 13:39:22 +00:00
HexagonRegisterInfo.h Remove getEHExceptionRegister and getEHHandlerRegister. 2013-10-07 13:39:22 +00:00
HexagonRegisterInfo.td
HexagonRemoveSZExtArgs.cpp [stackprotector] Use analysis from the StackProtector pass for stack layout in PEI a nd LocalStackSlot passes. 2013-12-19 03:17:11 +00:00
HexagonSchedule.td
HexagonScheduleV4.td
HexagonSelectCCInfo.td
HexagonSelectionDAGInfo.cpp
HexagonSelectionDAGInfo.h
HexagonSplitConst32AndConst64.cpp
HexagonSplitTFRCondSets.cpp
HexagonSubtarget.cpp [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
HexagonSubtarget.h [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
HexagonTargetMachine.cpp One last cleanup of LLVM's DataLayout strings. 2013-12-16 19:31:14 +00:00
HexagonTargetMachine.h
HexagonTargetObjectFile.cpp
HexagonTargetObjectFile.h
HexagonVarargsCallingConvention.h Correct word hyphenations 2013-12-05 05:44:44 +00:00
HexagonVLIWPacketizer.cpp Correct word hyphenations 2013-12-05 05:44:44 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile