Eliminate an AND by redefining an anyext|sext|zext.
(and (extract_subvector (anyext|sext|zext v) _) iN_mask) => (extract_subvector (zeroext_iN v))
Paths
| Differential D130782
[DAGCombiner] Extend visitAND to include EXTRACT_SUBVECTOR ClosedPublic Authored by david-arm on Jul 29 2022, 8:58 AM.
Details Summary Eliminate an AND by redefining an anyext|sext|zext. (and (extract_subvector (anyext|sext|zext v) _) iN_mask) => (extract_subvector (zeroext_iN v))
Diff Detail
Event TimelineThis revision is now accepted and ready to land.Jul 29 2022, 9:53 AM This revision was landed with ongoing or failed builds.Aug 1 2022, 2:32 AM Closed by commit rG41119a0f520d: [DAGCombiner] Extend visitAND to include EXTRACT_SUBVECTOR (authored by david-arm). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 448970 llvm/include/llvm/CodeGen/ISDOpcodes.h
llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
llvm/test/CodeGen/AArch64/extract-subvec-combine.ll
llvm/test/CodeGen/AArch64/vector-fcvt.ll
|
With the enhanced combine the original variable names are not strictly correct.