[llvm] 7c1b00b - [AMDGPU] Fix type of SIlds / AMDGPUISD::LDS node (#210340)

via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 17 07:29:15 PDT 2026


Author: Jay Foad
Date: 2026-07-17T14:29:10Z
New Revision: 7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad

URL: https://github.com/llvm/llvm-project/commit/7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad
DIFF: https://github.com/llvm/llvm-project/commit/7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad.diff

LOG: [AMDGPU] Fix type of SIlds / AMDGPUISD::LDS node (#210340)

iPTR means i64 here, but this node operates on 32-bit LDS addresses.

Added: 
    

Modified: 
    llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
    llvm/lib/Target/AMDGPU/SIInstrInfo.td

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
index 5b8ee5fbcf9dc..814cc811331b1 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
@@ -51,8 +51,6 @@ void AMDGPUSelectionDAGInfo::verifyTargetNode(const SelectionDAG &DAG,
   case AMDGPUISD::ELSE:
   case AMDGPUISD::LOOP:
     // operand #1 must have type i1, but has type i32/i64
-  case AMDGPUISD::LDS:
-    // result #0 must have type i64 (iPTR), but has type i32
     return;
   }
   SelectionDAGGenTargetInfo::verifyTargetNode(DAG, N);

diff  --git a/llvm/lib/Target/AMDGPU/SIInstrInfo.td b/llvm/lib/Target/AMDGPU/SIInstrInfo.td
index 7be067c085b5f..714627bee2a2c 100644
--- a/llvm/lib/Target/AMDGPU/SIInstrInfo.td
+++ b/llvm/lib/Target/AMDGPU/SIInstrInfo.td
@@ -275,7 +275,7 @@ def SIpc_add_rel_offset64 : SDNode<"AMDGPUISD::PC_ADD_REL_OFFSET64",
 >;
 
 def SIlds : SDNode<"AMDGPUISD::LDS",
-  SDTypeProfile<1, 1, [SDTCisVT<0, iPTR>, SDTCisSameAs<0,1>]>
+  SDTypeProfile<1, 1, [SDTCisVT<0, i32>, SDTCisSameAs<0,1>]>
 >;
 
 def SIload_d16_lo : SDNode<"AMDGPUISD::LOAD_D16_LO",


        


More information about the llvm-commits mailing list