1; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s 2; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64-unknown-unknown %s -o - -filetype=obj | spirv-val %} 3 4; CHECK: %[[TyInt:.*]] = OpTypeInt 8 0 5; CHECK: %[[TyPtr:.*]] = OpTypePointer {{[a-zA-Z]+}} %[[TyInt]] 6; CHECK: OpFunctionParameter %[[TyPtr]] 7; CHECK: OpFunctionParameter %[[TyPtr]] 8 9%struct.my_kernel_data = type { i32, i32, i32, i32, i32 } 10%struct.my_struct = type { i32, i32 } 11 12define spir_kernel void @test(ptr addrspace(1) %in, ptr addrspace(1) %outData) !kernel_arg_type !5 { 13entry: 14 ret void 15} 16 17!llvm.module.flags = !{!0} 18!opencl.enable.FP_CONTRACT = !{} 19!opencl.ocl.version = !{!1} 20!opencl.spir.version = !{!2} 21!opencl.used.extensions = !{!3} 22!opencl.used.optional.core.features = !{!3} 23!opencl.compiler.options = !{!3} 24!llvm.ident = !{!4} 25!opencl.kernels = !{!6} 26 27!0 = !{i32 1, !"wchar_size", i32 4} 28!1 = !{i32 1, i32 0} 29!2 = !{i32 1, i32 2} 30!3 = !{} 31!4 = !{!"clang version 6.0.0"} 32!5 = !{!"my_kernel_data*", !"struct my_struct*"} 33!6 = !{ptr @test} 34 35