[llvm] [RISCV] Remove untested code from SelectAddrRegRegScale. (PR #146185)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 27 18:40:40 PDT 2025


https://github.com/topperc created https://github.com/llvm/llvm-project/pull/146185

This code handled load/store address that are a SHL instruction. That seems very unlikely to occur unless you're accessing an array that starts at address 0. I'm not even sure if you can represent that in llvm IR.

>From d37d20a8c34f39691e0698fd1eb2dec4d4d40759 Mon Sep 17 00:00:00 2001
From: Craig Topper <craig.topper at sifive.com>
Date: Fri, 27 Jun 2025 18:36:55 -0700
Subject: [PATCH] [RISCV] Remove untested code from SelectAddrRegRegScale.

This code handled load/store address that are a SHL instruction.
That seems very unlikely to occur unless you're accessing an array
that starts at address 0. I'm not even sure if you can represent
that in llvm IR.
---
 llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp b/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
index 4539efd591c8b..29eac6317080f 100644
--- a/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
+++ b/llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
@@ -2824,10 +2824,6 @@ bool RISCVDAGToDAGISel::SelectAddrRegRegScale(SDValue Addr,
       Base = Addr.getOperand(0);
       return true;
     }
-  } else if (UnwrapShl(Addr, Index, Scale)) {
-    EVT VT = Addr.getValueType();
-    Base = CurDAG->getRegister(RISCV::X0, VT);
-    return true;
   }
 
   return false;



More information about the llvm-commits mailing list