OpCapability GenericPointer OpCapability Linkage OpCapability Addresses OpCapability Kernel OpCapability Int8 OpCapability Int16 OpCapability Int64 OpCapability Float16 OpCapability Float64 %22 = OpExtInstImport "OpenCL.std" OpMemoryModel Physical64 OpenCL OpEntryPoint Kernel %1 "shr" %void = OpTypeVoid %ulong = OpTypeInt 64 0 %25 = OpTypeFunction %void %ulong %ulong %_ptr_Function_ulong = OpTypePointer Function %ulong %uint = OpTypeInt 32 0 %_ptr_Function_uint = OpTypePointer Function %uint %_ptr_Generic_uint = OpTypePointer Generic %uint %uint_1 = OpConstant %uint 1 %1 = OpFunction %void None %25 %7 = OpFunctionParameter %ulong %8 = OpFunctionParameter %ulong %20 = OpLabel %2 = OpVariable %_ptr_Function_ulong Function %3 = OpVariable %_ptr_Function_ulong Function %4 = OpVariable %_ptr_Function_ulong Function %5 = OpVariable %_ptr_Function_ulong Function %6 = OpVariable %_ptr_Function_uint Function OpStore %2 %7 OpStore %3 %8 %9 = OpLoad %ulong %2 Aligned 8 OpStore %4 %9 %10 = OpLoad %ulong %3 Aligned 8 OpStore %5 %10 %12 = OpLoad %ulong %4 %18 = OpConvertUToPtr %_ptr_Generic_uint %12 %11 = OpLoad %uint %18 Aligned 4 OpStore %6 %11 %14 = OpLoad %uint %6 %13 = OpShiftRightArithmetic %uint %14 %uint_1 OpStore %6 %13 %15 = OpLoad %ulong %5 %16 = OpLoad %uint %6 %19 = OpConvertUToPtr %_ptr_Generic_uint %15 OpStore %19 %16 Aligned 4 OpReturn OpFunctionEnd