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)
commit9450fcfff145cd20dc2bddad938d19dce1cc74eb
tree67722a61fcff86be92dfd741d8aa70cd14983fc6
parent87a736ca9fa0007d5590b111011b0b40bd2042dd
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.

llvm-svn: 172968
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/test/CodeGen/X86/avx-sext.ll
llvm/test/CodeGen/X86/avx2-conversions.ll