| ; RUN: llc -O0 -mtriple=spirv32-unknown-unknown %s -o - | FileCheck %s --check-prefix=CHECK-SPIRV |
| ; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv32-unknown-unknown %s -o - -filetype=obj | spirv-val %} |
| |
| ; CHECK-SPIRV-DAG: OpDecorate %[[#Id:]] BuiltIn GlobalInvocationId |
| ; CHECK-SPIRV-DAG: OpDecorate %[[#Id:]] BuiltIn GlobalLinearId |
| ; CHECK-SPIRV: %[[#Id:]] = OpVariable %[[#]] |
| ; CHECK-SPIRV: %[[#Id:]] = OpVariable %[[#]] |
| |
| define spir_kernel void @f() { |
| entry: |
| %0 = call spir_func i32 @_Z29__spirv_BuiltInGlobalLinearIdv() |
| %1 = call spir_func i64 @_Z33__spirv_BuiltInGlobalInvocationIdi(i32 1) |
| ret void |
| } |
| |
| declare spir_func i32 @_Z29__spirv_BuiltInGlobalLinearIdv() |
| declare spir_func i64 @_Z33__spirv_BuiltInGlobalInvocationIdi(i32) |