Revert 172708.
authorNadav Rotem <nrotem@apple.com>
Sun, 20 Jan 2013 08:35:56 +0000 (08:35 +0000)
committerNadav Rotem <nrotem@apple.com>
Sun, 20 Jan 2013 08:35:56 +0000 (08:35 +0000)
commit0c8607ba6a21578996a7532b9390afba13bd2087
tree71f7605e9ff90372ea8159b6f7be62b3d1a03fe2
parentec98d2ce5ec51148e442c024b77a7483c81eee6c
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
lib/CodeGen/SelectionDAG/DAGCombiner.cpp
lib/CodeGen/SelectionDAG/SelectionDAG.cpp
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/avx-sext.ll
test/CodeGen/X86/avx2-conversions.ll