-
- Downloads
[DAGCombiner] match inverted/swapped patterns for vselect of mask of signbit
This was noted as a follow-up to D113212 / D113426: 4fc1fc40 7e30404c 11522cfc https://alive2.llvm.org/ce/z/e4o96b The canonicalization rules for these IR patterns are complicated, and we were not matching the expected forms in 2 out of the 3 cases. We can make codegen more robust by matching the swapped forms (and that will also work if these patterns are created late).
Showing
- llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp 15 additions, 12 deletionsllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
- llvm/test/CodeGen/AArch64/cmp-select-sign.ll 2 additions, 4 deletionsllvm/test/CodeGen/AArch64/cmp-select-sign.ll
- llvm/test/CodeGen/AArch64/vselect-constants.ll 6 additions, 9 deletionsllvm/test/CodeGen/AArch64/vselect-constants.ll
- llvm/test/CodeGen/X86/vselect-zero.ll 75 additions, 137 deletionsllvm/test/CodeGen/X86/vselect-zero.ll
Loading
Please register or sign in to comment