llvm-6502/lib/CodeGen/SelectionDAG
Nadav Rotem 0c8607ba6a Revert 172708.
The optimization handles esoteric cases but adds a lot of complexity both to the X86 backend and to other backends.
This optimization disables an important canonicalization of chains of SEXT nodes and makes SEXT and ZEXT asymmetrical.
Disabling the canonicalization of consecutive SEXT nodes into a single node disables other DAG optimizations that assume
that there is only one SEXT node. The AVX mask optimizations is one example. Additionally this optimization does not update the cost model.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172968 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-20 08:35:56 +00:00
..
CMakeLists.txt llvm/lib: [CMake] Add explicit dependency to intrinsics_gen. 2012-06-24 13:32:01 +00:00
DAGCombiner.cpp Revert 172708. 2013-01-20 08:35:56 +00:00
FastISel.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
FunctionLoweringInfo.cpp Stack Alignment: throw error if we can't satisfy the minimal alignment 2013-01-10 01:10:10 +00:00
InstrEmitter.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstrEmitter.h Use MachineInstrBuilder in InstrEmitter. 2012-12-20 18:08:09 +00:00
LegalizeDAG.cpp Refactor to expose RTLIB calls to targets. 2013-01-09 13:18:15 +00:00
LegalizeFloatTypes.cpp Refactor to expose RTLIB calls to targets. 2013-01-09 13:18:15 +00:00
LegalizeIntegerTypes.cpp Refactor to expose RTLIB calls to targets. 2013-01-09 13:18:15 +00:00
LegalizeTypes.cpp Refactor to expose RTLIB calls to targets. 2013-01-09 13:18:15 +00:00
LegalizeTypes.h Refactor to expose RTLIB calls to targets. 2013-01-09 13:18:15 +00:00
LegalizeTypesGeneric.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LegalizeVectorOps.cpp When lowering an inreg sext first shift left, then right arithmetically. 2013-01-12 19:06:44 +00:00
LegalizeVectorTypes.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
LLVMBuild.txt LLVMBuild: Remove trailing newline, which irked me. 2011-12-12 19:48:00 +00:00
Makefile
ResourcePriorityQueue.cpp Change TargetLowering::getRegClassFor to take an MVT, instead of EVT. 2012-12-13 06:34:11 +00:00
ScheduleDAGFast.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
ScheduleDAGRRList.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
ScheduleDAGSDNodes.cpp Change TargetLowering::getRepRegClassFor to take an MVT, instead of 2012-12-13 18:45:35 +00:00
ScheduleDAGSDNodes.h Change TargetLowering::getRepRegClassFor to take an MVT, instead of 2012-12-13 18:45:35 +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 Sort includes for all of the .h files under the 'lib' tree. These were 2012-12-04 07:12:27 +00:00
SDNodeOrdering.h Mark unimplemented copy constructors and copy assignment operators as LLVM_DELETED_FUNCTION. 2012-09-18 02:01:41 +00:00
SelectionDAG.cpp Revert 172708. 2013-01-20 08:35:56 +00:00
SelectionDAGBuilder.cpp Remove unused parameter. Also use the AttributeSet query methods instead of the Attribute query methods. 2013-01-18 21:50:24 +00:00
SelectionDAGBuilder.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SelectionDAGDumper.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
SelectionDAGISel.cpp Move TargetTransformInfo to live under the Analysis library. This no 2013-01-07 03:08:10 +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 Use AttributeSet accessor methods instead of Attribute accessor methods. 2013-01-18 21:53:16 +00:00
TargetSelectionDAGInfo.cpp Move TargetData to DataLayout. 2012-10-08 16:38:25 +00:00