llvm/lib/CodeGen/SelectionDAG
Juergen Ributzka d4f5a61567 [Stackmap] Materialize the jump address within the patchpoint noop slide.
This patch moves the jump address materialization inside the noop slide. This
enables patching of the materialization itself or its complete removal. This
patch also adds the ability to define scratch registers that can be used safely
by the code called from the patchpoint intrinsic. At least one scratch register
is required, because that one is used for the materialization of the jump
address. This patch depends on D2009.

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

Reviewed by Andy

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194306 91177308-0d34-0410-b5e6-96231b3b80d8
2013-11-09 01:51:33 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
DAGCombiner.cpp Revert "SelectionDAG: Teach the legalizer to split SETCC if VSELECT needs splitting too." 2013-10-30 06:36:19 +00:00
FastISel.cpp Fix indenting. 2013-10-14 20:15:04 +00:00
FunctionLoweringInfo.cpp Debug Info: clean up usage of Verify. 2013-06-28 05:43:10 +00:00
InstrEmitter.cpp [Stackmap] Materialize the jump address within the patchpoint noop slide. 2013-11-09 01:51:33 +00:00
InstrEmitter.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
LegalizeDAG.cpp Fix CodeGen for unaligned loads with address spaces 2013-10-30 23:30:05 +00:00
LegalizeFloatTypes.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeIntegerTypes.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeTypes.cpp Update makeLibCall to return both the call and the chain associated with the libcall instead of just the call. This allows us to specify libcalls that return void. 2013-08-13 17:54:56 +00:00
LegalizeTypes.h Legalize: Improve legalization of long vector extends. 2013-10-31 00:20:48 +00:00
LegalizeTypesGeneric.cpp Revert "SelectionDAG: Teach the legalizer to split SETCC if VSELECT needs splitting too." 2013-10-30 06:36:19 +00:00
LegalizeVectorOps.cpp Keep TBAA info when rewriting SelectionDAG loads and stores 2013-10-28 11:17:59 +00:00
LegalizeVectorTypes.cpp Legalize: Improve legalization of long vector extends. 2013-10-31 00:20:48 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile
ResourcePriorityQueue.cpp Rename variables for consistency. 2013-09-11 00:41:02 +00:00
ScheduleDAGFast.cpp Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector size. 2013-07-14 04:42:23 +00:00
ScheduleDAGRRList.cpp Fix spelling intruction -> instruction. 2013-09-28 11:46:15 +00:00
ScheduleDAGSDNodes.cpp [PATCH] Fix PR17168 (DAG scheduler inserts DBG_VALUE before PHI with fast-isel) 2013-10-18 14:20:11 +00:00
ScheduleDAGSDNodes.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
ScheduleDAGVLIW.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SDNodeDbgValue.h Revert "Give internal classes hidden visibility." 2013-09-11 18:05:11 +00:00
SelectionDAG.cpp Fix "existant" typos 2013-10-29 02:35:28 +00:00
SelectionDAGBuilder.cpp [Stackmap] Materialize the jump address within the patchpoint noop slide. 2013-11-09 01:51:33 +00:00
SelectionDAGBuilder.h [Stackmap] Add AnyReg calling convention support for patchpoint intrinsic. 2013-11-08 23:28:16 +00:00
SelectionDAGDumper.cpp Add ISD::FROUND for libm round() 2013-08-07 22:49:12 +00:00
SelectionDAGISel.cpp Fix some assert messages to say the correct opcode name. Looks like one assert got copy and pasted to many places. 2013-10-06 22:38:19 +00:00
SelectionDAGPrinter.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
TargetLowering.cpp Lower stackmap intrinsics directly to their target opcode in the DAG builder. 2013-10-31 17:18:24 +00:00
TargetSelectionDAGInfo.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00