llvm-6502/include/llvm/CodeGen
Duncan Sands f9516208e5 Revert the SelectionDAG optimization that makes
it impossible to create a MERGE_VALUES node with
only one result: sometimes it is useful to be able
to create a node with only one result out of one of
the results of a node with more than one result, for
example because the new node will eventually be used
to replace a one-result node using ReplaceAllUsesWith,
cf X86TargetLowering::ExpandFP_TO_SINT.  On the other
hand, most users of MERGE_VALUES don't need this and
for them the optimization was valuable.  So add a new
utility method getMergeValues for creating MERGE_VALUES
nodes which by default performs the optimization.
Change almost everywhere to use getMergeValues (and
tidy some stuff up at the same time).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52893 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-30 10:19:09 +00:00
..
AsmPrinter.h Change packed struct layout so that field sizes 2008-06-04 08:21:45 +00:00
BreakCriticalMachineEdge.h
CallingConvLower.h Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
Collector.h
CollectorMetadata.h
Collectors.h
DAGISelHeader.h Sometimes (rarely) nodes held in LegalizeTypes 2008-06-11 11:42:12 +00:00
DwarfWriter.h
ELFRelocation.h
FileWriters.h
IntrinsicLowering.h
LinkAllCodegenComponents.h
LiveInterval.h Instead of adding an isSS field to LiveInterval to denote stack slot. Use top bit of 'reg' instead. If the top bit is set, than the LiveInterval represents a stack slot live interval. 2008-06-23 21:03:19 +00:00
LiveIntervalAnalysis.h Remember which MachineOperand we were processing, so we don't have to scan the list to find it again later. 2008-06-25 23:39:39 +00:00
LiveStackAnalysis.h Add a stack slot coloring pass. Not yet enabled. 2008-06-04 09:18:41 +00:00
LiveVariables.h
MachineBasicBlock.h For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h" 2008-05-29 17:41:17 +00:00
MachineCodeEmitter.h Prune and tidy #includes. 2008-05-29 19:52:31 +00:00
MachineConstantPool.h
MachineDebugInfoDesc.h Reverting broken patch r52803. 2008-06-27 01:27:56 +00:00
MachineDominators.h
MachineFrameInfo.h Add a stack slot coloring pass. Not yet enabled. 2008-06-04 09:18:41 +00:00
MachineFunction.h
MachineFunctionPass.h
MachineInstr.h Prune and tidy #includes. 2008-05-29 19:52:31 +00:00
MachineInstrBuilder.h
MachineJumpTableInfo.h
MachineLocation.h
MachineLoopInfo.h
MachineMemOperand.h
MachineModuleInfo.h More cruft from revert... 2008-06-27 01:37:37 +00:00
MachineOperand.h Prune and tidy #includes. 2008-05-29 19:52:31 +00:00
MachinePassRegistry.h
MachineRegisterInfo.h Minor spiller tweak to unfavor reload into load/store instructions. 2008-06-19 01:16:17 +00:00
MachineRelocation.h Revert 51775. 2008-05-30 22:47:19 +00:00
MachORelocation.h
Passes.h Add a stack slot coloring pass. Not yet enabled. 2008-06-04 09:18:41 +00:00
PseudoSourceValue.h
RegAllocRegistry.h
RegisterCoalescer.h
RegisterScavenging.h
RuntimeLibcalls.h Add support for expanding PPC 128 bit floats. 2008-06-25 20:24:48 +00:00
SchedGraphCommon.h For PR1338: rename include/llvm/ADT/ilist and friends to end with ".h" 2008-05-29 17:41:17 +00:00
ScheduleDAG.h Comment fixes, and make Schedule() pure virtual. 2008-06-24 00:02:44 +00:00
SchedulerRegistry.h
SelectionDAG.h Revert the SelectionDAG optimization that makes 2008-06-30 10:19:09 +00:00
SelectionDAGISel.h add a new -enable-value-prop flag for llcbeta, that enables propagation 2008-06-17 06:09:18 +00:00
SelectionDAGNodes.h Remove warnings about shadowed and unused variables. 2008-06-26 18:11:45 +00:00
ValueTypes.h Allow these transforms for types like i256 while 2008-06-16 08:14:38 +00:00
ValueTypes.td