[PATCH] D154620: [RISCV] Cleanup dead complexity in RISCVMaskedPseudo after TA/TU merge refactoring [nfc]
Craig Topper via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 7 16:19:42 PDT 2023
craig.topper added a comment.
> "(which is actually needed to represent tail undefined vs tail agnostic)".
Comparisons have extra rule for tail agnostic, they're allowed to evaluate the comparison for the tail.
In addition, except for mask load instructions, any element in the tail of a mask result can also be written with the value the mask-producing operation would have calculated with vl=VLMAX. Furthermore, for mask-logical instructions and vmsbf.m, vmsif.m, vmsof.m mask-manipulation instructions, any element in the tail of the result can be written with the value the mask-producing operation would have calculated with vl=VLEN, SEW=8, and LMUL=8 (i.e., all bits of the mask register can be overwritten).
Is that enough to be considered "undefined" or could a user set the tail of the mask to all ones, and set the comparison operands past VL to evaluate to true? So they would always get a 1 for the tail.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D154620/new/
https://reviews.llvm.org/D154620
More information about the llvm-commits
mailing list