25 lines · plain
1; Expanding the bitcode marker works only for AMD at the moment.2; RUN: not llc -verify-machineinstrs -mtriple=spirv-unknown-unknown %s -o -3; RUN: llc -verify-machineinstrs -mtriple=spirv64-amd-amdhsa %s -o - | FileCheck %s4; RUN: %if spirv-tools %{ llc -mtriple=spirv64-amd-amdhsa %s -o - -filetype=obj | spirv-val %}5;6; Verify that we lower the embedded bitcode7 8@llvm.embedded.module = private addrspace(1) constant [0 x i8] zeroinitializer, section ".llvmbc", align 19@llvm.compiler.used = appending addrspace(1) global [1 x ptr addrspace(4)] [ptr addrspace(4) addrspacecast (ptr addrspace(1) @llvm.embedded.module to ptr addrspace(4))], section "llvm.metadata"10 11; CHECK: OpName %[[#LLVM_EMBEDDED_MODULE:]] "llvm.embedded.module"12; CHECK: OpDecorate %[[#LLVM_EMBEDDED_MODULE]] Constant13; CHECK: %[[#UCHAR:]] = OpTypeInt 8 014; CHECK: %[[#UINT:]] = OpTypeInt 32 015; CHECK: %[[#ONE:]] = OpConstant %[[#UINT]] 116; CHECK: %[[#UCHAR_ARR_1:]] = OpTypeArray %[[#UCHAR]] %[[#ONE]]17; CHECK: %[[#UCHAR_ARR_1_PTR:]] = OpTypePointer CrossWorkgroup %[[#UCHAR_ARR_1]]18; CHECK: %[[#CONST_UCHAR_ARR_1:]] = OpConstantNull %[[#UCHAR_ARR_1]]19; CHECK: %[[#LLVM_EMBEDDED_MODULE]] = OpVariable %[[#UCHAR_ARR_1_PTR]] CrossWorkgroup %[[#CONST_UCHAR_ARR_1]]20 21define spir_kernel void @foo() {22entry:23 ret void24}25