|
| 1 | +; RUN: llc -verify-machineinstrs -mtriple=spirv-unknown-unknown %s -o - | FileCheck %s |
| 2 | +; RUN: %if spirv-tools %{ llc -mtriple=spirv-unknown-unknown %s -o - -filetype=obj | spirv-val %} |
| 3 | +; RUN: llc -verify-machineinstrs -mtriple=spirv64-amd-amdhsa %s -o - | FileCheck %s |
| 4 | +; RUN: %if spirv-tools %{ llc -mtriple=spirv64-amd-amdhsa %s -o - -filetype=obj | spirv-val %} |
| 5 | +; |
| 6 | +; Verify that we can lower the embeded module and cmdline |
| 7 | + |
| 8 | +@llvm.embedded.module = private addrspace(1) constant [4 x i8] c"BC\C0\DE", section ".llvmbc", align 1 |
| 9 | +@llvm.cmdline = private addrspace(1) constant [5 x i8] c"-cc1\00", section ".llvmcmd", align 1 |
| 10 | +@llvm.compiler.used = appending addrspace(1) global [2 x ptr addrspace(4)] [ptr addrspace(4) addrspacecast (ptr addrspace(1) @llvm.embedded.module to ptr addrspace(4)), ptr addrspace(4) addrspacecast (ptr addrspace(1) @llvm.cmdline to ptr addrspace(4))], section "llvm.metadata" |
| 11 | + |
| 12 | +; CHECK: OpName %[[#LLVM_EMBEDDED_MODULE:]] "llvm.embedded.module" |
| 13 | +; CHECK: OpName %[[#LLVM_CMDLINE:]] "llvm.cmdline" |
| 14 | +; CHECK: OpDecorate %[[#LLVM_EMBEDDED_MODULE]] Constant |
| 15 | +; CHECK: OpDecorate %[[#LLVM_CMDLINE]] Constant |
| 16 | +; CHECK: %[[#UCHAR:]] = OpTypeInt 8 0 |
| 17 | +; CHECK: %[[#UINT:]] = OpTypeInt 32 0 |
| 18 | +; CHECK: %[[#FIVE:]] = OpConstant %[[#UINT]] 5 |
| 19 | +; CHECK: %[[#UCHAR_ARR_5:]] = OpTypeArray %[[#UCHAR]] %[[#FIVE]] |
| 20 | +; CHECK: %[[#FOUR:]] = OpConstant %[[#UINT]] 4 |
| 21 | +; CHECK: %[[#UCHAR_ARR_4:]] = OpTypeArray %[[#UCHAR]] %[[#FOUR]] |
| 22 | +; CHECK: %[[#UCHAR_ARR_5_PTR:]] = OpTypePointer CrossWorkgroup %[[#UCHAR_ARR_5]] |
| 23 | +; CHECK: %[[#UCHAR_ARR_4_PTR:]] = OpTypePointer CrossWorkgroup %[[#UCHAR_ARR_4]] |
| 24 | +; CHECK: %[[#CONST_UCHAR_ARR_4:]] = OpConstantComposite %[[#UCHAR_ARR_4]] |
| 25 | +; CHECK: %[[#LLVM_EMBEDDED_MODULE]] = OpVariable %[[#UCHAR_ARR_4_PTR]] CrossWorkgroup %[[#CONST_UCHAR_ARR_4]] |
| 26 | +; CHECK: %[[#CONST_UCHAR_ARR_5:]] = OpConstantComposite %[[#UCHAR_ARR_5]] |
| 27 | +; CHECK: %[[#LLVM_CMDLINE]] = OpVariable %[[#UCHAR_ARR_5_PTR]] CrossWorkgroup %[[#CONST_UCHAR_ARR_5]] |
| 28 | + |
| 29 | +define spir_kernel void @foo() { |
| 30 | +entry: |
| 31 | + ret void |
| 32 | +} |
0 commit comments