; REQUIRES: spirv-as ; RUN: spirv-as %s --target-env spv1.2 -o %t.spv ; RUN: spirv-val %t.spv ; RUN: llvm-spirv -r -o %t.rev.bc %t.spv ; RUN: llvm-dis %t.rev.bc -o - | FileCheck %s OpCapability Addresses OpCapability Linkage OpCapability Kernel OpCapability SubgroupDispatch OpMemoryModel Physical64 OpenCL OpEntryPoint Kernel %fn "testSubgroupsPerWorkgroupId" OpExecutionModeId %fn SubgroupsPerWorkgroupId %uint_8 %void = OpTypeVoid %uint = OpTypeInt 32 0 %uint_4 = OpConstant %uint 4 %uint_8 = OpSpecConstantOp %uint IAdd %uint_4 %uint_4 %fnTy = OpTypeFunction %void ; CHECK: !spirv.ExecutionMode = !{![[MD:[0-9]+]]} ; CHECK: ![[MD]] = !{ptr @testSubgroupsPerWorkgroupId, i32 37, i32 8} %fn = OpFunction %void None %fnTy %entry = OpLabel OpReturn OpFunctionEnd