; SPIR-V; Version: 1.0; Generator: Khronos SPIR-V Tools Assembler; 0; Bound: 25; Schema: 0OpCapability Float64OpCapability AddressesOpCapability LinkageOpCapability Kernel%1 = OpExtInstImport "OpenCL.std"OpMemoryModel Physical32 OpenCLOpEntryPoint Kernel %2 "fmath_spv" %gl_GlobalInvocationIDOpName %res "res"OpName %lhs "lhs"OpName %rhs "rhs"OpName %entry "entry"OpDecorate %7 FuncParamAttr NoCapture%7 = OpDecorationGroupOpDecorate %gl_GlobalInvocationID BuiltIn GlobalInvocationIdOpDecorate %gl_GlobalInvocationID ConstantOpDecorate %gl_GlobalInvocationID LinkageAttributes "__spirv_GlobalInvocationId" ImportOpGroupDecorate %7 %res %lhs %rhs%uint = OpTypeInt 32 0%v3uint = OpTypeVector %uint 3%_ptr_Input_v3uint = OpTypePointer Input %v3uint%void = OpTypeVoid%double = OpTypeFloat 64%v2double = OpTypeVector %double 2%_ptr_CrossWorkgroup_v2double = OpTypePointer CrossWorkgroup %v2double%16 = OpTypeFunction %void %_ptr_CrossWorkgroup_v2double %_ptr_CrossWorkgroup_v2double %_ptr_CrossWorkgroup_v2double%gl_GlobalInvocationID = OpVariable %_ptr_Input_v3uint Input%2 = OpFunction %void None %16%res = OpFunctionParameter %_ptr_CrossWorkgroup_v2double%lhs = OpFunctionParameter %_ptr_CrossWorkgroup_v2double%rhs = OpFunctionParameter %_ptr_CrossWorkgroup_v2double%entry = OpLabel%17 = OpLoad %v3uint %gl_GlobalInvocationID Aligned 0%18 = OpCompositeExtract %uint %17 0%19 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %lhs %18%20 = OpLoad %v2double %19 Aligned 16%21 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %rhs %18%22 = OpLoad %v2double %21 Aligned 16%23 = OpFMod %v2double %20 %22%24 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_v2double %res %18OpStore %24 %23 Aligned 16OpReturnOpFunctionEnd