[llvm] 5b01522 - [AMDGPU] Use LLT::isPointerOrPointerVector in legalizer (#81582)

via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 13 01:01:49 PST 2024


Author: Jay Foad
Date: 2024-02-13T09:01:45Z
New Revision: 5b015229b77d6ea7916a503d88661b04d4867e7c

URL: https://github.com/llvm/llvm-project/commit/5b015229b77d6ea7916a503d88661b04d4867e7c
DIFF: https://github.com/llvm/llvm-project/commit/5b015229b77d6ea7916a503d88661b04d4867e7c.diff

LOG: [AMDGPU] Use LLT::isPointerOrPointerVector in legalizer (#81582)

Added: 
    

Modified: 
    llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
index f3716f96c44ac..5458dfc68f3df 100644
--- a/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+++ b/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
@@ -342,11 +342,8 @@ static std::initializer_list<LLT> AllS64Vectors = {V2S64, V3S64, V4S64, V5S64,
 
 // Checks whether a type is in the list of legal register types.
 static bool isRegisterClassType(LLT Ty) {
-  if (Ty.isVector() && Ty.getElementType().isPointer())
-    Ty = LLT::fixed_vector(Ty.getNumElements(),
-                           LLT::scalar(Ty.getScalarSizeInBits()));
-  else if (Ty.isPointer())
-    Ty = LLT::scalar(Ty.getScalarSizeInBits());
+  if (Ty.isPointerOrPointerVector())
+    Ty = Ty.changeElementType(LLT::scalar(Ty.getScalarSizeInBits()));
 
   return is_contained(AllS32Vectors, Ty) || is_contained(AllS64Vectors, Ty) ||
          is_contained(AllScalarTypes, Ty) || is_contained(AllS16Vectors, Ty);


        


More information about the llvm-commits mailing list