Skip to content

Conversation

@4vtomat
Copy link
Member

@4vtomat 4vtomat commented Oct 13, 2025

We need to set register to noreg before shrinking interval

We need to set register to noreg before shrinking interval
@llvmbot
Copy link
Member

llvmbot commented Oct 13, 2025

@llvm/pr-subscribers-backend-risc-v

Author: Brandon Wu (4vtomat)

Changes

We need to set register to noreg before shrinking interval


Full diff: https://github.com/llvm/llvm-project/pull/163215.diff

1 Files Affected:

  • (modified) llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp (+4-4)
diff --git a/llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp b/llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
index 278cf6dc1d786..02162834a9844 100644
--- a/llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
+++ b/llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
@@ -1945,9 +1945,12 @@ bool RISCVInsertVSETVLI::insertVSETMTK(MachineBasicBlock &MBB,
                      .addImm(Log2_32(CurrInfo.getTWiden()) + 1);
 
     Changed = true;
+    Register Reg = Op.getReg();
+    Op.setReg(RISCV::NoRegister);
+    Op.setIsKill(false);
     if (LIS) {
       LIS->InsertMachineInstrInMaps(*TmpMI);
-      LiveInterval &LI = LIS->getInterval(Op.getReg());
+      LiveInterval &LI = LIS->getInterval(Reg);
 
       // Erase the AVL operand from the instruction.
       LIS->shrinkToUses(&LI);
@@ -1955,9 +1958,6 @@ bool RISCVInsertVSETVLI::insertVSETMTK(MachineBasicBlock &MBB,
       // SmallVector<LiveInterval *> SplitLIs;
       // LIS->splitSeparateComponents(LI, SplitLIs);
     }
-
-    Op.setReg(RISCV::NoRegister);
-    Op.setIsKill(false);
   }
   return Changed;
 }

Copy link
Collaborator

@topperc topperc left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@4vtomat 4vtomat enabled auto-merge (squash) October 13, 2025 16:46
@4vtomat 4vtomat merged commit c67c5b4 into llvm:main Oct 13, 2025
9 of 10 checks passed
@4vtomat 4vtomat deleted the fix_xsfmm_vsetvli branch October 14, 2025 00:43
akadutta pushed a commit to akadutta/llvm-project that referenced this pull request Oct 14, 2025
…63215)

We need to set register to noreg before shrinking interval
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants