llvm-6502/include/llvm/CodeGen
Reid Kleckner 34b7fde802 Make musttail more robust for vector types on x86
Previously I tried to plug musttail into the existing vararg lowering
code. That turned out to be a mistake, because non-vararg calls use
significantly different register lowering, even on x86. For example, AVX
vectors are usually passed in registers to normal functions and memory
to vararg functions.  Now musttail uses a completely separate lowering.

Hopefully this can be used as the basis for non-x86 perfect forwarding.

Reviewers: majnemer

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@224745 91177308-0d34-0410-b5e6-96231b3b80d8
2014-12-22 23:58:37 +00:00
..
PBQP
Analysis.h Allow the use of functions as typeinfo in landingpad clauses 2014-11-14 00:35:50 +00:00
AsmPrinter.h [mips] Set GCC-compatible MIPS asssembler options before inline asm blocks. 2014-12-17 10:56:16 +00:00
CalcSpillWeights.h [PBQP] Tweak spill costs and coalescing benefits 2014-11-04 20:51:24 +00:00
CallingConvLower.h Make musttail more robust for vector types on x86 2014-12-22 23:58:37 +00:00
CommandFlags.h Add a new string member to the TargetOptions struct for the name 2014-12-18 02:20:58 +00:00
DAGCombine.h
DFAPacketizer.h
EdgeBundles.h
FastISel.h
ForwardControlFlowIntegrity.h Remove redundant virtual on overriden functions. 2014-11-14 19:06:36 +00:00
FunctionLoweringInfo.h CodeGen: do not attempt to invalidate virtual registers for zero-sized phis. 2014-12-19 20:50:07 +00:00
GCMetadata.h GCStrategy should not own GCFunctionInfo 2014-12-11 01:47:23 +00:00
GCMetadataPrinter.h GCStrategy should not own GCFunctionInfo 2014-12-11 01:47:23 +00:00
GCs.h
GCStrategy.h Comment and minor code cleanup for GCStrategy (NFC) 2014-12-12 00:49:03 +00:00
IntrinsicLowering.h
ISDOpcodes.h Masked Load / Store Intrinsics - the CodeGen part. 2014-12-04 09:40:44 +00:00
JumpInstrTables.h Add Forward Control-Flow Integrity. 2014-11-11 21:08:02 +00:00
LatencyPriorityQueue.h
LexicalScopes.h IR: Split Metadata from Value 2014-12-09 18:38:53 +00:00
LinkAllAsmWriterComponents.h
LinkAllCodegenComponents.h
LiveInterval.h LiveIntervalAnalysis: Cleanup computeDeadValues 2014-12-18 19:58:52 +00:00
LiveIntervalAnalysis.h LiveIntervalAnalysis: Cleanup computeDeadValues 2014-12-18 19:58:52 +00:00
LiveIntervalUnion.h LiveIntervalUnion: Allow specification of liverange when unifying/extracting. 2014-12-10 01:12:59 +00:00
LivePhysRegs.h
LiveRangeEdit.h
LiveRegMatrix.h
LiveStackAnalysis.h
LiveVariables.h
MachineBasicBlock.h CodeGen: assert an instruction is being inserted with the correct iterator. 2014-11-14 00:34:59 +00:00
MachineBlockFrequencyInfo.h
MachineBranchProbabilityInfo.h
MachineCombinerPattern.h
MachineConstantPool.h
MachineDominanceFrontier.h
MachineDominators.h Update SetVector to rely on the underlying set's insert to return a pair<iterator, bool> 2014-11-19 07:49:26 +00:00
MachineFrameInfo.h
MachineFunction.h
MachineFunctionAnalysis.h
MachineFunctionPass.h
MachineInstr.h IR: Split Metadata from Value 2014-12-09 18:38:53 +00:00
MachineInstrBuilder.h
MachineInstrBundle.h
MachineJumpTableInfo.h
MachineLoopInfo.h
MachineMemOperand.h
MachineModuleInfo.h IR: Split Metadata from Value 2014-12-09 18:38:53 +00:00
MachineModuleInfoImpls.h
MachineOperand.h
MachinePassRegistry.h
MachinePostDominators.h
MachineRegionInfo.h
MachineRegisterInfo.h Add a flag to enable/disable subregister liveness. 2014-12-10 01:12:30 +00:00
MachineScheduler.h
MachineSSAUpdater.h
MachineTraceMetrics.h
MachineValueType.h
MachORelocation.h
Passes.h [CodeGen] Add print and verify pass after each MachineFunctionPass by default 2014-12-11 21:26:47 +00:00
PBQPRAConstraint.h Remove redundant virtual on overriden functions. 2014-11-14 19:06:36 +00:00
PseudoSourceValue.h
RegAllocPBQP.h
RegAllocRegistry.h
RegisterClassInfo.h
RegisterPressure.h
RegisterScavenging.h
ResourcePriorityQueue.h
RuntimeLibcalls.h
ScheduleDAG.h
ScheduleDAGInstrs.h
ScheduleDFS.h
ScheduleHazardRecognizer.h
SchedulerRegistry.h
ScoreboardHazardRecognizer.h
SelectionDAG.h Masked Load / Store Intrinsics - the CodeGen part. 2014-12-04 09:40:44 +00:00
SelectionDAGISel.h
SelectionDAGNodes.h Silence more static analyzer warnings. 2014-12-15 18:48:43 +00:00
SlotIndexes.h
StackMapLivenessAnalysis.h
StackMaps.h [Statepoints 2/4] Statepoint infrastructure for garbage collection: MI & x86-64 Backend 2014-12-01 22:52:56 +00:00
StackProtector.h
TargetLoweringObjectFileImpl.h
TargetSchedule.h
ValueTypes.h
ValueTypes.td
VirtRegMap.h