[PATCH] D118810: [RISCV] Select unmasked RVV pseudos in a DAG post-process

Fraser Cormack via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 3 07:48:36 PST 2022


frasercrmck marked an inline comment as done.
frasercrmck added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:2196
+
+  if (RISCVII::hasVecPolicyOp(MaskedMCID.TSFlags)) {
+    // The last operand of the pseudo is the policy op, but we're expecting a
----------------
craig.topper wrote:
> If the policy Op exists and isn't TAIL_AGNOSTIC, this transform isn't valid is it?
> 
> Using an all ones mask with TAIL_UNDISTURBED is a valid way to get tail undisturbed behavior until we have tail undisturbed unmasked instructions.
Yes you're right, thanks, I wasn't careful enough about that. Though I suppose TAIL_UNDISTURBED with an IMPLICIT_DEF merge operand would still be valid to transform? Regardless, we don't have test coverage for that so I've not added logic to deal with that.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D118810/new/

https://reviews.llvm.org/D118810



More information about the llvm-commits mailing list