xref: /llvm-project/llvm/test/CodeGen/SPIRV/pointers/nested-struct-opaque-pointers.ll (revision 67d3ef74b31e1517d4f679e754cc2b3041c95901)
1*67d3ef74SVyacheslav Levytskyy; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s
2b7ac8fddSVyacheslav Levytskyy; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv32-unknown-unknown %s -o - -filetype=obj | spirv-val %}
3b7ac8fddSVyacheslav Levytskyy
4b7ac8fddSVyacheslav Levytskyy; CHECK-NOT: OpTypeInt 8 0
5b7ac8fddSVyacheslav Levytskyy
6b7ac8fddSVyacheslav Levytskyy@GI = addrspace(1) constant i64 42
7b7ac8fddSVyacheslav Levytskyy
8b7ac8fddSVyacheslav Levytskyy@GS = addrspace(1) global {ptr addrspace(1), ptr addrspace(1)} { ptr addrspace(1) @GI, ptr addrspace(1) @GI }
9b7ac8fddSVyacheslav Levytskyy@GS2 = addrspace(1) global {ptr addrspace(1), ptr addrspace(1)} { ptr addrspace(1) @GS, ptr addrspace(1) @GS }
10b7ac8fddSVyacheslav Levytskyy@GS3 = addrspace(1) global {ptr addrspace(1), ptr addrspace(1)} { ptr addrspace(1) @GS2, ptr addrspace(1) @GS2 }
11b7ac8fddSVyacheslav Levytskyy
12b7ac8fddSVyacheslav Levytskyy@GPS = addrspace(1) global ptr addrspace(1) @GS3
13b7ac8fddSVyacheslav Levytskyy
14b7ac8fddSVyacheslav Levytskyy@GPI1 = addrspace(1) global ptr addrspace(1) @GI
15b7ac8fddSVyacheslav Levytskyy@GPI2 = addrspace(1) global ptr addrspace(1) @GPI1
16b7ac8fddSVyacheslav Levytskyy@GPI3 = addrspace(1) global ptr addrspace(1) @GPI2
17b7ac8fddSVyacheslav Levytskyy
18b7ac8fddSVyacheslav Levytskyydefine spir_kernel void @foo() {
19b7ac8fddSVyacheslav Levytskyy  ret void
20b7ac8fddSVyacheslav Levytskyy}
21