[X86] Move combineIncDecVector logic from Select to PreprocessISelDAG.
authorCraig Topper <craig.topper@gmail.com>
Sat, 15 Feb 2020 17:59:10 +0000 (09:59 -0800)
committerCraig Topper <craig.topper@gmail.com>
Sat, 15 Feb 2020 17:59:12 +0000 (09:59 -0800)
commit3f7649799bedfaa97ced81c95414af23174f811e
tree0d385c8d7e72a5daa74746e72d24a3884a1bd662
parentf8045b250d80ccdb2ae5f46d3aa02137fe475907
[X86] Move combineIncDecVector logic from Select to PreprocessISelDAG.

This allows it to work properly with masked inc/dec for avx512. Those
would have a vselect as the root node so didn't get a chance to call
combineIncDecVector.

This also simplifies the logic because we don't have to manage
the topological ordering.
llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
llvm/test/CodeGen/X86/avx512-arith.ll