llvm-6502/lib/CodeGen/SelectionDAG
Ahmed Bougacha 19e2fce680 [CodeGen] Don't attempt a tail-call with a non-forwarded explicit sret.
Tailcalls are only OK with forwarded sret pointers. With explicit sret,
one approximation is to check that the pointer isn't an Instruction, as
in that case it might point into some local memory (alloca). That's not
OK with tailcalls.

Explicit sret counterpart to r233409.
Differential Revison: http://reviews.llvm.org/D8510


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@233410 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-27 20:35:49 +00:00
..
CMakeLists.txt
DAGCombiner.cpp revert inadvertent change 2015-03-26 17:19:24 +00:00
FastISel.cpp Re-sort includes with sort-includes.py and insert raw_ostream.h where it's used. 2015-03-23 19:32:43 +00:00
FunctionLoweringInfo.cpp Re-sort includes with sort-includes.py and insert raw_ostream.h where it's used. 2015-03-23 19:32:43 +00:00
InstrEmitter.cpp
InstrEmitter.h
LegalizeDAG.cpp [CodeGen] Replace the reused stores' chain for extractelt expansion. 2015-03-09 22:51:05 +00:00
LegalizeFloatTypes.cpp
LegalizeIntegerTypes.cpp
LegalizeTypes.cpp
LegalizeTypes.h
LegalizeTypesGeneric.cpp
LegalizeVectorOps.cpp
LegalizeVectorTypes.cpp [SDAG] Don't widen VSETCC during type legalization for split operands 2015-03-23 08:22:43 +00:00
LLVMBuild.txt
Makefile
ResourcePriorityQueue.cpp
ScheduleDAGFast.cpp
ScheduleDAGRRList.cpp Fix a bug in SelectionDAG scheduling backtracking code: PR22304. 2015-03-27 03:44:13 +00:00
ScheduleDAGSDNodes.cpp
ScheduleDAGSDNodes.h
ScheduleDAGVLIW.cpp
SDNodeDbgValue.h
SelectionDAG.cpp [DAGCombiner] Add support for TRUNCATE + FP_EXTEND vector constant folding 2015-03-25 22:30:31 +00:00
SelectionDAGBuilder.cpp [CodeGen] Don't attempt a tail-call with a non-forwarded explicit sret. 2015-03-27 20:35:49 +00:00
SelectionDAGBuilder.h Rewrite SelectionDAGBuilder::Clusterify to run in linear time. NFC. 2015-03-20 00:41:03 +00:00
SelectionDAGDumper.cpp
SelectionDAGISel.cpp Remove superfluous .str() and replace std::string concatenation with Twine. 2015-03-27 17:51:30 +00:00
SelectionDAGPrinter.cpp
StatepointLowering.cpp Require a GC strategy be specified for functions which use gc.statepoint 2015-03-27 05:09:33 +00:00
StatepointLowering.h
TargetLowering.cpp [CodeGen] Report error rather than crash when unable to makeLibCall. 2015-03-26 22:46:58 +00:00
TargetSelectionDAGInfo.cpp