Index: llvm/docs/AMDGPUUsage.rst =================================================================== --- llvm/docs/AMDGPUUsage.rst +++ llvm/docs/AMDGPUUsage.rst @@ -2817,29 +2817,6 @@ multi-grid synchronization is passed in the kernarg. - ".value_type" string Required Kernel argument value type. Only - present if ".value_kind" is - "by_value". For vector data - types, the value is for the - element type. Values include: - - - "struct" - - "i8" - - "u8" - - "i16" - - "u16" - - "f16" - - "i32" - - "u32" - - "f32" - - "i64" - - "u64" - - "f64" - - .. TODO:: - How can it be determined if a - vector type, and what size - vector? ".pointee_align" integer Alignment in bytes of pointee type for pointer type kernel argument. Must be a power Index: llvm/include/llvm/Support/AMDGPUMetadata.h =================================================================== --- llvm/include/llvm/Support/AMDGPUMetadata.h +++ llvm/include/llvm/Support/AMDGPUMetadata.h @@ -79,7 +79,8 @@ Unknown = 0xff }; -/// Value types. +/// Value types. This is deprecated and only remains for compatability parsing +/// of old metadata. enum class ValueType : uint8_t { Struct = 0, I8 = 1, @@ -164,7 +165,7 @@ constexpr char Align[] = "Align"; /// Key for Kernel::Arg::Metadata::mValueKind. constexpr char ValueKind[] = "ValueKind"; -/// Key for Kernel::Arg::Metadata::mValueType. +/// Key for Kernel::Arg::Metadata::mValueType. (deprecated) constexpr char ValueType[] = "ValueType"; /// Key for Kernel::Arg::Metadata::mPointeeAlign. constexpr char PointeeAlign[] = "PointeeAlign"; @@ -198,8 +199,6 @@ uint32_t mAlign = 0; /// Value kind. Required. ValueKind mValueKind = ValueKind::Unknown; - /// Value type. Required. - ValueType mValueType = ValueType::Unknown; /// Pointee alignment in bytes. Optional. uint32_t mPointeeAlign = 0; /// Address space qualifier. Optional. Index: llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp =================================================================== --- llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp +++ llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp @@ -127,25 +127,6 @@ .Default(false); })) return false; - if (!verifyScalarEntry(ArgsMap, ".value_type", true, - msgpack::Type::String, - [](msgpack::DocNode &SNode) { - return StringSwitch(SNode.getString()) - .Case("struct", true) - .Case("i8", true) - .Case("u8", true) - .Case("i16", true) - .Case("u16", true) - .Case("f16", true) - .Case("i32", true) - .Case("u32", true) - .Case("f32", true) - .Case("i64", true) - .Case("u64", true) - .Case("f64", true) - .Default(false); - })) - return false; if (!verifyIntegerEntry(ArgsMap, ".pointee_align", false)) return false; if (!verifyScalarEntry(ArgsMap, ".address_space", false, Index: llvm/lib/Support/AMDGPUMetadata.cpp =================================================================== --- llvm/lib/Support/AMDGPUMetadata.cpp +++ llvm/lib/Support/AMDGPUMetadata.cpp @@ -111,7 +111,11 @@ YIO.mapRequired(Kernel::Arg::Key::Size, MD.mSize); YIO.mapRequired(Kernel::Arg::Key::Align, MD.mAlign); YIO.mapRequired(Kernel::Arg::Key::ValueKind, MD.mValueKind); - YIO.mapRequired(Kernel::Arg::Key::ValueType, MD.mValueType); + + // Removed. Accepted for parsing compatability, but not emitted. + Optional Unused; + YIO.mapOptional(Kernel::Arg::Key::ValueType, Unused); + YIO.mapOptional(Kernel::Arg::Key::PointeeAlign, MD.mPointeeAlign, uint32_t(0)); YIO.mapOptional(Kernel::Arg::Key::AddrSpaceQual, MD.mAddrSpaceQual, Index: llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h =================================================================== --- llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h +++ llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h @@ -67,8 +67,6 @@ StringRef getValueKind(Type *Ty, StringRef TypeQual, StringRef BaseTypeName) const; - StringRef getValueType(Type *Ty, StringRef TypeName) const; - std::string getTypeName(Type *Ty, bool Signed) const; msgpack::ArrayDocNode getWorkGroupDimensions(MDNode *Node) const; @@ -135,8 +133,6 @@ ValueKind getValueKind(Type *Ty, StringRef TypeQual, StringRef BaseTypeName) const; - ValueType getValueType(Type *Ty, StringRef TypeName) const; - std::string getTypeName(Type *Ty, bool Signed) const; std::vector getWorkGroupDimensions(MDNode *Node) const; Index: llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp =================================================================== --- llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp +++ llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp @@ -127,38 +127,6 @@ ValueKind::ByValue); } -ValueType MetadataStreamerV2::getValueType(Type *Ty, StringRef TypeName) const { - switch (Ty->getTypeID()) { - case Type::IntegerTyID: { - auto Signed = !TypeName.startswith("u"); - switch (Ty->getIntegerBitWidth()) { - case 8: - return Signed ? ValueType::I8 : ValueType::U8; - case 16: - return Signed ? ValueType::I16 : ValueType::U16; - case 32: - return Signed ? ValueType::I32 : ValueType::U32; - case 64: - return Signed ? ValueType::I64 : ValueType::U64; - default: - return ValueType::Struct; - } - } - case Type::HalfTyID: - return ValueType::F16; - case Type::FloatTyID: - return ValueType::F32; - case Type::DoubleTyID: - return ValueType::F64; - case Type::PointerTyID: - return getValueType(Ty->getPointerElementType(), TypeName); - case Type::FixedVectorTyID: - return getValueType(cast(Ty)->getElementType(), TypeName); - default: - return ValueType::Struct; - } -} - std::string MetadataStreamerV2::getTypeName(Type *Ty, bool Signed) const { switch (Ty->getTypeID()) { case Type::IntegerTyID: { @@ -372,7 +340,6 @@ Arg.mSize = DL.getTypeAllocSize(Ty); Arg.mAlign = DL.getABITypeAlign(Ty).value(); Arg.mValueKind = ValueKind; - Arg.mValueType = getValueType(Ty, BaseTypeName); Arg.mPointeeAlign = PointeeAlign ? PointeeAlign->value() : 0; if (auto PtrTy = dyn_cast(Ty)) @@ -573,38 +540,6 @@ : "by_value"); } -StringRef MetadataStreamerV3::getValueType(Type *Ty, StringRef TypeName) const { - switch (Ty->getTypeID()) { - case Type::IntegerTyID: { - auto Signed = !TypeName.startswith("u"); - switch (Ty->getIntegerBitWidth()) { - case 8: - return Signed ? "i8" : "u8"; - case 16: - return Signed ? "i16" : "u16"; - case 32: - return Signed ? "i32" : "u32"; - case 64: - return Signed ? "i64" : "u64"; - default: - return "struct"; - } - } - case Type::HalfTyID: - return "f16"; - case Type::FloatTyID: - return "f32"; - case Type::DoubleTyID: - return "f64"; - case Type::PointerTyID: - return getValueType(Ty->getPointerElementType(), TypeName); - case Type::FixedVectorTyID: - return getValueType(cast(Ty)->getElementType(), TypeName); - default: - return "struct"; - } -} - std::string MetadataStreamerV3::getTypeName(Type *Ty, bool Signed) const { switch (Ty->getTypeID()) { case Type::IntegerTyID: { @@ -801,8 +736,6 @@ Arg[".offset"] = Arg.getDocument()->getNode(Offset); Offset += Size; Arg[".value_kind"] = Arg.getDocument()->getNode(ValueKind, /*Copy=*/true); - Arg[".value_type"] = - Arg.getDocument()->getNode(getValueType(Ty, BaseTypeName), /*Copy=*/true); if (PointeeAlign) Arg[".pointee_align"] = Arg.getDocument()->getNode(PointeeAlign->value()); Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg-v3.ll @@ -1,6 +1,6 @@ ; RUN: llc -mattr=+code-object-v3 -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - < %s | llvm-readelf --notes | FileCheck %s -; CHECK: - .args: +; CHECK: - .args: ; CHECK-NEXT: - .access: read_only ; CHECK-NEXT: .address_space: global ; CHECK-NEXT: .is_const: true @@ -10,14 +10,12 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'float*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f32 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: out ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'float*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f32 ; CHECK: .name: test_ro_arg ; CHECK: .symbol: test_ro_arg.kd Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-deduce-ro-arg.ll @@ -8,7 +8,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: ReadOnly ; CHECK-NEXT: IsConst: true @@ -18,7 +17,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel-v3.ll @@ -9,19 +9,15 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NOT: .value_kind: hidden_default_queue ; CHECK-NOT: .value_kind: hidden_completion_action ; CHECK: .language: OpenCL C @@ -42,34 +38,27 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_default_queue -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_completion_action -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-enqueue-kernel.ll @@ -16,20 +16,16 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NOT: ValueKind: HiddenDefaultQueue ; CHECK-NOT: ValueKind: HiddenCompletionAction define amdgpu_kernel void @test_non_enqueue_kernel_caller(i8 %a) #0 @@ -48,34 +44,27 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenDefaultQueue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenCompletionAction -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_enqueue_kernel_caller(i8 %a) #1 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full-v3.ll @@ -24,19 +24,15 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 @@ -44,9 +40,7 @@ ; CHECK-NOT: .value_kind: hidden_completion_action ; CHECK-NOT: .value_kind: hidden_hostcall_buffer ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -65,39 +59,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: ushort2 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: u16 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -116,39 +102,31 @@ ; CHECK-NEXT: .size: 16 ; CHECK-NEXT: .type_name: int3 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -167,39 +145,31 @@ ; CHECK-NEXT: .size: 32 ; CHECK-NEXT: .type_name: ulong4 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: u64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -218,39 +188,31 @@ ; CHECK-NEXT: .size: 16 ; CHECK-NEXT: .type_name: half8 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -269,39 +231,31 @@ ; CHECK-NEXT: .size: 64 ; CHECK-NEXT: .type_name: float16 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: f32 ; CHECK-NEXT: - .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 88 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 96 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 104 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 112 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -320,39 +274,31 @@ ; CHECK-NEXT: .size: 128 ; CHECK-NEXT: .type_name: double16 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: f64 ; CHECK-NEXT: - .offset: 128 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 136 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 144 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 152 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 160 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 168 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 176 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -372,39 +318,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -424,39 +362,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: image2d_t ; CHECK-NEXT: .value_kind: image -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -475,39 +405,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: sampler_t ; CHECK-NEXT: .value_kind: sampler -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -527,39 +449,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: queue_t ; CHECK-NEXT: .value_kind: queue -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -578,39 +492,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: struct A ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -629,39 +535,31 @@ ; CHECK-NEXT: .size: 32 ; CHECK-NEXT: .type_name: struct A ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -680,39 +578,31 @@ ; CHECK-NEXT: .size: 16 ; CHECK-NEXT: .type_name: i128 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -731,51 +621,41 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .name: b ; CHECK-NEXT: .offset: 4 ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: short2 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i16 ; CHECK-NEXT: - .name: c ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: char3 ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -795,14 +675,12 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .address_space: constant ; CHECK-NEXT: .name: c ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: l ; CHECK-NEXT: .offset: 16 @@ -810,39 +688,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -865,7 +735,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .is_const: true ; CHECK-NEXT: .is_restrict: true @@ -874,7 +743,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .is_pipe: true ; CHECK-NEXT: .name: c @@ -882,39 +750,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)*' ; CHECK-NEXT: .value_kind: pipe -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -937,7 +797,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: image1d_t ; CHECK-NEXT: .value_kind: image -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .access: write_only ; CHECK-NEXT: .address_space: global ; CHECK-NEXT: .name: wo @@ -945,7 +804,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: image2d_t ; CHECK-NEXT: .value_kind: image -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .access: read_write ; CHECK-NEXT: .address_space: global ; CHECK-NEXT: .name: rw @@ -953,39 +811,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: image3d_t ; CHECK-NEXT: .value_kind: image -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1006,39 +856,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1058,39 +900,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1110,39 +944,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1162,39 +988,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1214,39 +1032,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1266,39 +1076,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1318,39 +1120,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1370,39 +1164,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1427,39 +1213,31 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: int ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1485,39 +1263,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'int addrspace(5)* addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1536,39 +1306,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: struct B ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1587,39 +1349,31 @@ ; CHECK-NEXT: .size: 16 ; CHECK-NEXT: .type_name: 'global int addrspace(5)* __attribute__((ext_vector_type(2)))' ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i32 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1639,39 +1393,31 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: clk_event_t ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1692,7 +1438,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'long addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 8 @@ -1700,7 +1445,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: c ; CHECK-NEXT: .offset: 12 @@ -1708,7 +1452,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char2 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: d ; CHECK-NEXT: .offset: 16 @@ -1716,7 +1459,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char3 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: e ; CHECK-NEXT: .offset: 20 @@ -1724,7 +1466,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char4 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: f ; CHECK-NEXT: .offset: 24 @@ -1732,7 +1473,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char8 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: g ; CHECK-NEXT: .offset: 28 @@ -1740,46 +1480,37 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char16 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: h ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .pointee_align: 1 ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 88 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1806,7 +1537,6 @@ ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .type_name: 'long addrspace(5)*' ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 8 @@ -1814,7 +1544,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: c ; CHECK-NEXT: .offset: 12 @@ -1822,7 +1551,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char2 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: d ; CHECK-NEXT: .offset: 16 @@ -1830,7 +1558,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char3 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: e ; CHECK-NEXT: .offset: 20 @@ -1838,7 +1565,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char4 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: f ; CHECK-NEXT: .offset: 24 @@ -1846,7 +1572,6 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char8 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: g ; CHECK-NEXT: .offset: 28 @@ -1854,46 +1579,37 @@ ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .type_name: 'char16 addrspace(5)*' ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: local ; CHECK-NEXT: .name: h ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .pointee_align: 16 ; CHECK-NEXT: .size: 4 ; CHECK-NEXT: .value_kind: dynamic_shared_pointer -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 88 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -1918,39 +1634,31 @@ ; CHECK-NEXT: .size: 25 ; CHECK-NEXT: .type_name: __block_literal ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: struct ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 80 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .device_enqueue_symbol: __test_block_invoke_kernel_runtime_handle ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: @@ -1971,39 +1679,31 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_printf_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_default_queue -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_completion_action -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 @@ -2021,7 +1721,6 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: i32 ; CHECK: .name: unknown_addrspace_kernarg ; CHECK: .symbol: unknown_addrspace_kernarg.kd define amdgpu_kernel void @unknown_addrspace_kernarg(i32 addrspace(12345)* %ptr) #0 { Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-from-llvm-ir-full.ll @@ -33,30 +33,24 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NOT: ValueKind: HiddenHostcallBuffer ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NOT: ValueKind: HiddenDefaultQueue ; CHECK-NOT: ValueKind: HiddenCompletionAction ; CHECK: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_char(i8 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !9 @@ -74,39 +68,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: U16 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_ushort2(<2 x i16> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !10 @@ -124,39 +110,31 @@ ; CHECK-NEXT: Size: 16 ; CHECK-NEXT: Align: 16 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_int3(<3 x i32> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !11 @@ -174,39 +152,31 @@ ; CHECK-NEXT: Size: 32 ; CHECK-NEXT: Align: 32 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: U64 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_ulong4(<4 x i64> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !12 @@ -224,39 +194,31 @@ ; CHECK-NEXT: Size: 16 ; CHECK-NEXT: Align: 16 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_half8(<8 x half> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !13 @@ -274,39 +236,31 @@ ; CHECK-NEXT: Size: 64 ; CHECK-NEXT: Align: 64 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: F32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_float16(<16 x float> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !14 @@ -324,39 +278,31 @@ ; CHECK-NEXT: Size: 128 ; CHECK-NEXT: Align: 128 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: F64 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_double16(<16 x double> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !15 @@ -374,40 +320,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_pointer(i32 addrspace(1)* %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !16 @@ -425,40 +363,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Image -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_image(%opencl.image2d_t addrspace(1)* %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !17 @@ -476,39 +406,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: Sampler -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_sampler(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !18 @@ -526,40 +448,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Queue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_queue(%opencl.queue_t addrspace(1)* %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !19 @@ -577,39 +491,31 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_struct(%struct.A %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !20 @@ -627,39 +533,31 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_array([8 x i8] %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !20 @@ -677,39 +575,31 @@ ; CHECK-NEXT: Size: 16 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_i128(i128 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !21 @@ -727,53 +617,43 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: b ; CHECK-NEXT: TypeName: short2 ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I16 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: c ; CHECK-NEXT: TypeName: char3 ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_multi_arg(i32 %a, <2 x i16> %b, <3 x i8> %c) #0 !kernel_arg_addr_space !22 !kernel_arg_access_qual !23 !kernel_arg_type !24 @@ -791,7 +671,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: c @@ -799,7 +678,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Constant ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: l @@ -807,41 +685,33 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: PointeeAlign: 4 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_addr_space(i32 addrspace(1)* %g, i32 addrspace(4)* %c, @@ -861,7 +731,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: IsVolatile: true @@ -870,7 +739,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: IsConst: true @@ -880,41 +748,33 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Pipe -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: IsPipe: true ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_type_qual(i32 addrspace(1)* %a, i32 addrspace(1)* %b, @@ -934,7 +794,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Image -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: ReadOnly ; CHECK-NEXT: - Name: wo @@ -942,7 +801,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Image -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: WriteOnly ; CHECK-NEXT: - Name: rw @@ -950,40 +808,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: Image -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: ReadWrite ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_access_qual(%opencl.image1d_t addrspace(1)* %ro, %opencl.image2d_t addrspace(1)* %wo, @@ -1005,39 +855,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_half(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1057,39 +899,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_float(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1109,39 +943,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_double(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1161,39 +987,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_char(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1213,39 +1031,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_short(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1265,39 +1075,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_long(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1317,39 +1119,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_vec_type_hint_unknown(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1370,39 +1164,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_reqd_wgs_vec_type_hint(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1424,39 +1210,31 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_wgs_hint_vec_type_hint(i32 %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !3 @@ -1475,40 +1253,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_arg_ptr_to_ptr(i32 addrspace(5)* addrspace(1)* %a) #0 !kernel_arg_addr_space !81 !kernel_arg_access_qual !2 !kernel_arg_type !80 @@ -1526,24 +1296,19 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_arg_struct_contains_ptr(%struct.B %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !82 @@ -1561,39 +1326,31 @@ ; CHECK-NEXT: Size: 16 ; CHECK-NEXT: Align: 16 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I32 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_arg_vector_of_ptr(<2 x i32 addrspace(1)*> %a) #0 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !83 @@ -1611,40 +1368,32 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_arg_unknown_builtin_type( %opencl.clk_event_t addrspace(1)* %a) #0 @@ -1663,7 +1412,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: b @@ -1671,7 +1419,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 1 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1680,7 +1427,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 2 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1689,7 +1435,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 4 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1698,7 +1443,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 4 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1707,7 +1451,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 8 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1716,7 +1459,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 16 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1724,40 +1466,32 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: PointeeAlign: 1 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_pointee_align(i64 addrspace(1)* %a, i8 addrspace(3)* %b, @@ -1782,7 +1516,6 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Name: b @@ -1790,7 +1523,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 8 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1799,7 +1531,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 32 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1808,7 +1539,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 64 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1817,7 +1547,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 256 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1826,7 +1555,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 128 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1835,7 +1563,6 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: PointeeAlign: 1024 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: AccQual: Default @@ -1843,40 +1570,32 @@ ; CHECK-NEXT: Size: 4 ; CHECK-NEXT: Align: 4 ; CHECK-NEXT: ValueKind: DynamicSharedPointer -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: PointeeAlign: 16 ; CHECK-NEXT: AddrSpaceQual: Local ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_pointee_align_attribute(i64 addrspace(1)* align 16 %a, i8 addrspace(3)* align 8 %b, @@ -1904,39 +1623,31 @@ ; CHECK-NEXT: Size: 25 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: Struct ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @__test_block_invoke_kernel( <{ i32, i32, i8*, i8 addrspace(1)*, i8 }> %arg) #1 @@ -1955,39 +1666,31 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenPrintfBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenDefaultQueue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenCompletionAction -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global define amdgpu_kernel void @test_enqueue_kernel_caller(i8 %a) #2 !kernel_arg_addr_space !1 !kernel_arg_access_qual !2 !kernel_arg_type !9 @@ -2001,7 +1704,6 @@ ; 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 } Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args-v3.ll @@ -11,19 +11,16 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK: .name: test0 ; CHECK: .symbol: test0.kd define amdgpu_kernel void @test0( @@ -44,23 +41,19 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK: .name: test8 ; CHECK: .symbol: test8.kd define amdgpu_kernel void @test8( @@ -81,27 +74,22 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK: .name: test16 ; CHECK: .symbol: test16.kd define amdgpu_kernel void @test16( @@ -122,31 +110,25 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK: .name: test24 ; CHECK: .symbol: test24.kd define amdgpu_kernel void @test24( @@ -167,36 +149,29 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK: .name: test32 ; CHECK: .symbol: test32.kd define amdgpu_kernel void @test32( @@ -217,46 +192,37 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK: .name: test48 ; CHECK: .symbol: test48.kd define amdgpu_kernel void @test48( @@ -277,51 +243,41 @@ ; CHECK-NEXT: .offset: 0 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: a ; CHECK-NEXT: .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .name: b ; CHECK-NEXT: .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: global_buffer -; CHECK-NEXT: .value_type: f16 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 40 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 48 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 56 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 64 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_none -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 72 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_multigrid_sync_arg -; CHECK-NEXT: .value_type: i8 ; CHECK: .name: test56 ; CHECK: .symbol: test56.kd define amdgpu_kernel void @test56( Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hidden-args.ll @@ -13,19 +13,16 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test0( @@ -47,24 +44,20 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test8( half addrspace(1)* %r, @@ -85,28 +78,23 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test16( half addrspace(1)* %r, @@ -127,32 +115,26 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test24( half addrspace(1)* %r, @@ -173,36 +155,29 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test32( @@ -224,46 +199,37 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test48( @@ -285,51 +251,41 @@ ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: a ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Name: b ; CHECK-NEXT: Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: GlobalBuffer -; CHECK-NEXT: ValueType: F16 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenNone -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenMultiGridSyncArg -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NEXT: CodeProps: define amdgpu_kernel void @test56( Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent-v3.ll @@ -9,19 +9,15 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NOT: .value_kind: hidden_hostcall_buffer Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-absent.ll @@ -15,20 +15,16 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NOT: ValueKind: HiddenHostcallBuffer ; CHECK-NOT: ValueKind: HiddenDefaultQueue ; CHECK-NOT: ValueKind: HiddenCompletionAction Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present-v3.ll @@ -9,24 +9,19 @@ ; CHECK-NEXT: .size: 1 ; CHECK-NEXT: .type_name: char ; CHECK-NEXT: .value_kind: by_value -; CHECK-NEXT: .value_type: i8 ; CHECK-NEXT: - .offset: 8 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_x -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 16 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_y -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .offset: 24 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_global_offset_z -; CHECK-NEXT: .value_type: i64 ; CHECK-NEXT: - .address_space: global ; CHECK-NEXT: .offset: 32 ; CHECK-NEXT: .size: 8 ; CHECK-NEXT: .value_kind: hidden_hostcall_buffer -; CHECK-NEXT: .value_type: i8 ; CHECK: .language: OpenCL C ; CHECK-NEXT: .language_version: ; CHECK-NEXT: - 2 Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-hostcall-present.ll @@ -15,24 +15,19 @@ ; CHECK-NEXT: Size: 1 ; CHECK-NEXT: Align: 1 ; CHECK-NEXT: ValueKind: ByValue -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AccQual: Default ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetX -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetY -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenGlobalOffsetZ -; CHECK-NEXT: ValueType: I64 ; CHECK-NEXT: - Size: 8 ; CHECK-NEXT: Align: 8 ; CHECK-NEXT: ValueKind: HiddenHostcallBuffer -; CHECK-NEXT: ValueType: I8 ; CHECK-NEXT: AddrSpaceQual: Global ; CHECK-NOT: ValueKind: HiddenDefaultQueue ; CHECK-NOT: ValueKind: HiddenCompletionAction Index: llvm/test/CodeGen/AMDGPU/hsa-metadata-images-v3.ll =================================================================== --- llvm/test/CodeGen/AMDGPU/hsa-metadata-images-v3.ll +++ llvm/test/CodeGen/AMDGPU/hsa-metadata-images-v3.ll @@ -16,92 +16,80 @@ %opencl.image3d_t = type opaque ; CHECK: --- -; CHECK: amdhsa.kernels: -; CHECK: - .args: +; CHECK: amdhsa.kernels: +; CHECK: - .args: ; CHECK: - .address_space: global ; CHECK: .name: a ; CHECK: .offset: 0 ; CHECK: .size: 8 ; CHECK: .type_name: image1d_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: b ; CHECK: .offset: 8 ; CHECK: .size: 8 ; CHECK: .type_name: image1d_array_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: c ; CHECK: .offset: 16 ; CHECK: .size: 8 ; CHECK: .type_name: image1d_buffer_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: d ; CHECK: .offset: 24 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: e ; CHECK: .offset: 32 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_array_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: f ; CHECK: .offset: 40 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_array_depth_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: g ; CHECK: .offset: 48 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_array_msaa_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: h ; CHECK: .offset: 56 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_array_msaa_depth_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: i ; CHECK: .offset: 64 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_depth_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: j ; CHECK: .offset: 72 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_msaa_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: k ; CHECK: .offset: 80 ; CHECK: .size: 8 ; CHECK: .type_name: image2d_msaa_depth_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct ; CHECK: - .address_space: global ; CHECK: .name: l ; CHECK: .offset: 88 ; CHECK: .size: 8 ; CHECK: .type_name: image3d_t ; CHECK: .value_kind: image -; CHECK: .value_type: struct define amdgpu_kernel void @test(%opencl.image1d_t addrspace(1)* %a, %opencl.image1d_array_t addrspace(1)* %b, %opencl.image1d_buffer_t addrspace(1)* %c, Index: llvm/test/MC/AMDGPU/hsa-metadata-kernel-args.s =================================================================== --- llvm/test/MC/AMDGPU/hsa-metadata-kernel-args.s +++ llvm/test/MC/AMDGPU/hsa-metadata-kernel-args.s @@ -2,6 +2,9 @@ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx800 -mattr=-code-object-v3 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX800 %s // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx900 -mattr=-code-object-v3 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX900 %s +// The legacy ValueType field should be parsed without error, but not +// re-emitted. + // CHECK: .amd_amdgpu_hsa_metadata // CHECK: Version: [ 1, 0 ] // CHECK: Printf: @@ -17,24 +20,19 @@ // CHECK: Size: 1 // CHECK: Align: 1 // CHECK: ValueKind: ByValue -// CHECK: ValueType: I8 // CHECK: AccQual: Default // CHECK: - Size: 8 // CHECK: Align: 8 // CHECK: ValueKind: HiddenGlobalOffsetX -// CHECK: ValueType: I64 // CHECK: - Size: 8 // CHECK: Align: 8 // CHECK: ValueKind: HiddenGlobalOffsetY -// CHECK: ValueType: I64 // CHECK: - Size: 8 // CHECK: Align: 8 // CHECK: ValueKind: HiddenGlobalOffsetZ -// CHECK: ValueType: I64 // CHECK: - Size: 8 // CHECK: Align: 8 // CHECK: ValueKind: HiddenPrintfBuffer -// CHECK: ValueType: I8 // CHECK: AddrSpaceQual: Global // CHECK: .end_amd_amdgpu_hsa_metadata .amd_amdgpu_hsa_metadata