[llvm] r341767 - AMDGPU: Don't abort on unknown addrspace argument

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 9 19:23:31 PDT 2018


Author: arsenm
Date: Sun Sep  9 19:23:30 2018
New Revision: 341767

URL: http://llvm.org/viewvc/llvm-project?rev=341767&view=rev
Log:
AMDGPU: Don't abort on unknown addrspace argument

Modified:
    llvm/trunk/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
    llvm/trunk/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll

Modified: llvm/trunk/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp?rev=341767&r1=341766&r2=341767&view=diff
==============================================================================
--- llvm/trunk/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp (original)
+++ llvm/trunk/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp Sun Sep  9 19:23:30 2018
@@ -76,20 +76,22 @@ AccessQualifier MetadataStreamer::getAcc
 
 AddressSpaceQualifier MetadataStreamer::getAddressSpaceQualifer(
     unsigned AddressSpace) const {
-  if (AddressSpace == AMDGPUAS::PRIVATE_ADDRESS)
+  switch (AddressSpace) {
+  case AMDGPUAS::PRIVATE_ADDRESS:
     return AddressSpaceQualifier::Private;
-  if (AddressSpace == AMDGPUAS::GLOBAL_ADDRESS)
+  case AMDGPUAS::GLOBAL_ADDRESS:
     return AddressSpaceQualifier::Global;
-  if (AddressSpace == AMDGPUAS::CONSTANT_ADDRESS)
+  case AMDGPUAS::CONSTANT_ADDRESS:
     return AddressSpaceQualifier::Constant;
-  if (AddressSpace == AMDGPUAS::LOCAL_ADDRESS)
+  case AMDGPUAS::LOCAL_ADDRESS:
     return AddressSpaceQualifier::Local;
-  if (AddressSpace == AMDGPUAS::FLAT_ADDRESS)
+  case AMDGPUAS::FLAT_ADDRESS:
     return AddressSpaceQualifier::Generic;
-  if (AddressSpace == AMDGPUAS::REGION_ADDRESS)
+  case AMDGPUAS::REGION_ADDRESS:
     return AddressSpaceQualifier::Region;
-
-  llvm_unreachable("Unknown address space qualifier");
+  default:
+    return AddressSpaceQualifier::Unknown;
+  }
 }
 
 ValueKind MetadataStreamer::getValueKind(Type *Ty, StringRef TypeQual,

Modified: llvm/trunk/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll?rev=341767&r1=341766&r2=341767&view=diff
==============================================================================
--- llvm/trunk/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll (original)
+++ llvm/trunk/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll Sun Sep  9 19:23:30 2018
@@ -1473,6 +1473,17 @@ define amdgpu_kernel void @test_enqueue_
   ret void
 }
 
+; CHECK: - Name:            unknown_addrspace_kernarg
+; CHECK: Args:
+; CHECK-NEXT: - Name:            ptr
+; CHECK-NEXT: Size:            8
+; CHECK-NEXT: Align:           8
+; CHECK-NEXT: ValueKind:       GlobalBuffer
+; CHECK-NEXT: ValueType:       I32
+define amdgpu_kernel void @unknown_addrspace_kernarg(i32 addrspace(12345)* %ptr) #0 {
+  ret void
+}
+
 attributes #0 = { "amdgpu-implicitarg-num-bytes"="48" }
 attributes #1 = { "amdgpu-implicitarg-num-bytes"="48" "runtime-handle"="__test_block_invoke_kernel_runtime_handle" }
 attributes #2 = { "amdgpu-implicitarg-num-bytes"="48" "calls-enqueue-kernel" }




More information about the llvm-commits mailing list