llvm-6502/lib/Target/Mips
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
..
Makefile remove attribution from lib Makefiles. 2007-12-29 20:09:26 +00:00
Mips.h Use PassManagerBase instead of FunctionPassManager for functions 2008-03-11 22:29:46 +00:00
Mips.td Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsAsmPrinter.cpp Unneeded include's. 2008-06-19 01:21:02 +00:00
MipsCallingConv.td Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsDelaySlotFiller.cpp rename TargetInstrDescriptor -> TargetInstrDesc. 2008-01-07 07:27:27 +00:00
MipsInstrFormats.td Added FP instruction formats. 2008-06-08 01:39:36 +00:00
MipsInstrInfo.cpp It's not always safe to fold movsd into xorpd, etc. Check the alignment of the load address first to make sure it's 16 byte aligned. 2008-02-08 21:20:40 +00:00
MipsInstrInfo.h Change target-specific classes to use more precise static types. 2008-05-14 01:58:56 +00:00
MipsInstrInfo.td Added custom isel for MUL, SDIVREM, UDIVREM, SMUL_LOHI and UMUL_LOHI nodes 2008-06-06 06:37:31 +00:00
MipsISelDAGToDAG.cpp Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
MipsISelLowering.cpp Revert the SelectionDAG optimization that makes 2008-06-30 10:19:09 +00:00
MipsISelLowering.h Wrap MVT::ValueType in a struct to get type safety 2008-06-06 12:08:01 +00:00
MipsMachineFunction.h Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsRegisterInfo.cpp Some Mips minor fixes 2008-06-04 01:45:25 +00:00
MipsRegisterInfo.h Move reMaterialize() from TargetRegisterInfo to TargetInstrInfo. 2008-03-31 20:40:39 +00:00
MipsRegisterInfo.td Added support for FP Registers 2008-06-07 21:32:41 +00:00
MipsSchedule.td Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsSubtarget.cpp Some Mips minor fixes 2008-06-04 01:45:25 +00:00
MipsSubtarget.h Some Mips minor fixes 2008-06-04 01:45:25 +00:00
MipsTargetAsmInfo.cpp Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsTargetAsmInfo.h Remove attribution from file headers, per discussion on llvmdev. 2007-12-29 20:36:04 +00:00
MipsTargetMachine.cpp Some Mips minor fixes 2008-06-04 01:45:25 +00:00
MipsTargetMachine.h Some Mips minor fixes 2008-06-04 01:45:25 +00:00