[llvm] [RISCV] Improve cleanup phase of RISCV Insert VSETVLI pass (PR #67144)

Simeon K via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 29 02:04:49 PDT 2023


================
@@ -1475,36 +1438,74 @@ void RISCVInsertVSETVLI::doLocalPostpass(MachineBasicBlock &MBB) {
 
     if (!isVectorConfigInstr(MI)) {
       doUnion(Used, getDemanded(MI, MRI));
+      // We can't handle the case when the source AVL
+      // register of *NextMI is defined after MI
+      if (NextMI && NextMI->getOperand(1).isReg() && MI.getOperand(0).isReg() &&
----------------
simeonkr wrote:

To address this, I've tried to make the check as general as possible: https://github.com/llvm/llvm-project/pull/67144/commits/22d8abb63a7ef94b34109add4b20949fd682fbf2.

https://github.com/llvm/llvm-project/pull/67144


More information about the llvm-commits mailing list