1; SPIR-V 2; Version: 1.0 3; Generator: Khronos SPIR-V Tools Assembler; 0 4; Bound: 28 5; Schema: 0 6 OpCapability Float64 7 OpCapability Addresses 8 OpCapability Linkage 9 OpCapability Kernel 10 OpCapability Int64 11 %1 = OpExtInstImport "OpenCL.std" 12 OpMemoryModel Physical64 OpenCL 13 OpEntryPoint Kernel %2 "fmath_spv" 14 OpName %res "res" 15 OpName %lhs "lhs" 16 OpName %rhs "rhs" 17 OpName %entry "entry" 18 OpDecorate %7 FuncParamAttr NoCapture 19 %7 = OpDecorationGroup 20 OpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationId 21 OpDecorate %gl_GlobalInvocationID Constant 22 OpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" Import 23 OpGroupDecorate %7 %res %lhs %rhs 24 %ulong = OpTypeInt 64 0 25 %v3ulong = OpTypeVector %ulong 3 26%_ptr_UniformConstant_v3ulong = OpTypePointer UniformConstant %v3ulong 27 %void = OpTypeVoid 28 %double = OpTypeFloat 64 29 %v2double = OpTypeVector %double 2 30%_ptr_CrossWorkgroup_v2double = OpTypePointer CrossWorkgroup %v2double 31 %16 = OpTypeFunction %void %_ptr_CrossWorkgroup_v2double %_ptr_CrossWorkgroup_v2double %_ptr_CrossWorkgroup_v2double 32 %ulong_32 = OpConstant %ulong 32 33%gl_GlobalInvocationID = OpVariable %_ptr_UniformConstant_v3ulong UniformConstant 34 %2 = OpFunction %void None %16 35 %res = OpFunctionParameter %_ptr_CrossWorkgroup_v2double 36 %lhs = OpFunctionParameter %_ptr_CrossWorkgroup_v2double 37 %rhs = OpFunctionParameter %_ptr_CrossWorkgroup_v2double 38 %entry = OpLabel 39 %18 = OpLoad %v3ulong %gl_GlobalInvocationID Aligned 0 40 %19 = OpCompositeExtract %ulong %18 0 41 %20 = OpShiftLeftLogical %ulong %19 %ulong_32 42 %21 = OpShiftRightArithmetic %ulong %20 %ulong_32 43 %22 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %lhs %21 44 %23 = OpLoad %v2double %22 Aligned 16 45 %24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %rhs %21 46 %25 = OpLoad %v2double %24 Aligned 16 47 %26 = OpFSub %v2double %23 %25 48 %27 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %res %21 49 OpStore %27 %26 Aligned 16 50 OpReturn 51 OpFunctionEnd 52