[PATCH] D149267: [AArch64][SVE] Add basic predicated add/sub patterns
Paul Walker via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 5 03:49:48 PDT 2023
paulwalker-arm added inline comments.
================
Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:402-405
def AArch64add_m1 : PatFrags<(ops node:$pred, node:$op1, node:$op2),
[(int_aarch64_sve_add node:$pred, node:$op1, node:$op2),
+ (vselect node:$pred, (add node:$op1, node:$op2), node:$op1),
(add node:$op1, (vselect node:$pred, node:$op2, (SVEDup0)))]>;
----------------
If you shuffle your patches can this use `VSelectCommPredOrPassthruPatFrags`?
================
Comment at: llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td:409
+ (vselect node:$pred, (sub node:$op1, node:$op2), node:$op1),
(sub node:$op1, (vselect node:$pred, node:$op2, (SVEDup0)))]>;
def AArch64mla_m1 : PatFrags<(ops node:$pred, node:$op1, node:$op2, node:$op3),
----------------
As you're previous patch canonicalises to the new pattern, can this old pattern be removed?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D149267/new/
https://reviews.llvm.org/D149267
More information about the llvm-commits
mailing list