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

Fraser Cormack via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 03:01:29 PDT 2022


frasercrmck added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:2258
+        !N->getOperand(0).isUndef())
+      IsTU = true;
   }
----------------
If it's `TAIL_UNDISTURBED` and the merge operand //isn't// undef, shouldn't we be bailing?


================
Comment at: llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp:2284
+  unsigned Opc = IsTU ? I->UnmaskedTuPseudo : I->UnmaskedPseudo;
+  unsigned Id = IsTU ? 0 : 1;
   SmallVector<SDValue, 8> Ops;
----------------
`Id` isn't a good name: sounds to me like "identifier"


================
Comment at: llvm/lib/Target/RISCV/RISCVISelLowering.cpp:4773
     SDValue TrueMask = DAG.getNode(RISCVISD::VMSET_VL, DL, MaskVT, VL);
+    unsigned PolicyImm = Op.getOperand(0).isUndef() ? RISCVII::TAIL_AGNOSTIC
+                                                    : RISCVII::TAIL_UNDISTURBED;
----------------
Feels like this change should go into D120449?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D121881



More information about the llvm-commits mailing list