OpCapability GenericPointer OpCapability Linkage OpCapability Addresses OpCapability Kernel OpCapability Int8 OpCapability Int16 OpCapability Int64 OpCapability Float16 OpCapability Float64 %34 = OpExtInstImport "OpenCL.std" OpMemoryModel Physical64 OpenCL OpEntryPoint Kernel %1 "reg_local" OpDecorate %4 Alignment 8 %void = OpTypeVoid %ulong = OpTypeInt 64 0 %37 = OpTypeFunction %void %ulong %ulong %_ptr_Function_ulong = OpTypePointer Function %ulong %uint = OpTypeInt 32 0 %uchar = OpTypeInt 8 0 %uint_8 = OpConstant %uint 8 %_arr_uchar_uint_8 = OpTypeArray %uchar %uint_8 %_ptr_Function__arr_uchar_uint_8 = OpTypePointer Function %_arr_uchar_uint_8 %_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong %ulong_1 = OpConstant %ulong 1 %_ptr_Generic_ulong = OpTypePointer Generic %ulong %ulong_0 = OpConstant %ulong 0 %_ptr_Generic_uchar = OpTypePointer Generic %uchar %ulong_0_0 = OpConstant %ulong 0 %1 = OpFunction %void None %37 %8 = OpFunctionParameter %ulong %9 = OpFunctionParameter %ulong %32 = OpLabel %2 = OpVariable %_ptr_Function_ulong Function %3 = OpVariable %_ptr_Function_ulong Function %4 = OpVariable %_ptr_Function__arr_uchar_uint_8 Function %5 = OpVariable %_ptr_Function_ulong Function %6 = OpVariable %_ptr_Function_ulong Function %7 = OpVariable %_ptr_Function_ulong Function OpStore %2 %8 OpStore %3 %9 %10 = OpLoad %ulong %2 OpStore %5 %10 %11 = OpLoad %ulong %3 OpStore %6 %11 %13 = OpLoad %ulong %5 %25 = OpConvertUToPtr %_ptr_CrossWorkgroup_ulong %13 %24 = OpLoad %ulong %25 %12 = OpCopyObject %ulong %24 OpStore %7 %12 %14 = OpLoad %ulong %7 %26 = OpCopyObject %ulong %14 %19 = OpIAdd %ulong %26 %ulong_1 %27 = OpBitcast %_ptr_Generic_ulong %4 OpStore %27 %19 %28 = OpBitcast %_ptr_Generic_ulong %4 %47 = OpBitcast %_ptr_Generic_uchar %28 %48 = OpInBoundsPtrAccessChain %_ptr_Generic_uchar %47 %ulong_0 %21 = OpBitcast %_ptr_Generic_ulong %48 %29 = OpLoad %ulong %21 %15 = OpCopyObject %ulong %29 OpStore %7 %15 %16 = OpLoad %ulong %6 %17 = OpLoad %ulong %7 %23 = OpIAdd %ulong %16 %ulong_0_0 %30 = OpConvertUToPtr %_ptr_CrossWorkgroup_ulong %23 %31 = OpCopyObject %ulong %17 OpStore %30 %31 OpReturn OpFunctionEnd