OpCapability GenericPointer OpCapability Linkage OpCapability Addresses OpCapability Kernel OpCapability Int8 OpCapability Int16 OpCapability Int64 OpCapability Float16 OpCapability Float64 %51 = OpExtInstImport "OpenCL.std" OpMemoryModel Physical64 OpenCL OpEntryPoint Kernel %1 "bfi" OpDecorate %44 LinkageAttributes "__zluda_ptx_impl__bfi_b32" Import %void = OpTypeVoid %uint = OpTypeInt 32 0 %54 = OpTypeFunction %uint %uint %uint %uint %uint %ulong = OpTypeInt 64 0 %56 = OpTypeFunction %void %ulong %ulong %_ptr_Function_ulong = OpTypePointer Function %ulong %_ptr_Function_uint = OpTypePointer Function %uint %_ptr_Generic_uint = OpTypePointer Generic %uint %ulong_4 = OpConstant %ulong 4 %uchar = OpTypeInt 8 0 %_ptr_Generic_uchar = OpTypePointer Generic %uchar %ulong_8 = OpConstant %ulong 8 %ulong_12 = OpConstant %ulong 12 %44 = OpFunction %uint None %54 %46 = OpFunctionParameter %uint %47 = OpFunctionParameter %uint %48 = OpFunctionParameter %uint %49 = OpFunctionParameter %uint OpFunctionEnd %1 = OpFunction %void None %56 %10 = OpFunctionParameter %ulong %11 = OpFunctionParameter %ulong %43 = 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 %7 = OpVariable %_ptr_Function_uint Function %8 = OpVariable %_ptr_Function_uint Function %9 = OpVariable %_ptr_Function_uint Function OpStore %2 %10 OpStore %3 %11 %12 = OpLoad %ulong %2 Aligned 8 OpStore %4 %12 %13 = OpLoad %ulong %3 Aligned 8 OpStore %5 %13 %15 = OpLoad %ulong %4 %35 = OpConvertUToPtr %_ptr_Generic_uint %15 %14 = OpLoad %uint %35 Aligned 4 OpStore %6 %14 %17 = OpLoad %ulong %4 %36 = OpConvertUToPtr %_ptr_Generic_uint %17 %62 = OpBitcast %_ptr_Generic_uchar %36 %63 = OpInBoundsPtrAccessChain %_ptr_Generic_uchar %62 %ulong_4 %30 = OpBitcast %_ptr_Generic_uint %63 %16 = OpLoad %uint %30 Aligned 4 OpStore %7 %16 %19 = OpLoad %ulong %4 %37 = OpConvertUToPtr %_ptr_Generic_uint %19 %64 = OpBitcast %_ptr_Generic_uchar %37 %65 = OpInBoundsPtrAccessChain %_ptr_Generic_uchar %64 %ulong_8 %32 = OpBitcast %_ptr_Generic_uint %65 %18 = OpLoad %uint %32 Aligned 4 OpStore %8 %18 %21 = OpLoad %ulong %4 %38 = OpConvertUToPtr %_ptr_Generic_uint %21 %66 = OpBitcast %_ptr_Generic_uchar %38 %67 = OpInBoundsPtrAccessChain %_ptr_Generic_uchar %66 %ulong_12 %34 = OpBitcast %_ptr_Generic_uint %67 %20 = OpLoad %uint %34 Aligned 4 OpStore %9 %20 %23 = OpLoad %uint %6 %24 = OpLoad %uint %7 %25 = OpLoad %uint %8 %26 = OpLoad %uint %9 %40 = OpCopyObject %uint %23 %41 = OpCopyObject %uint %24 %39 = OpFunctionCall %uint %44 %40 %41 %25 %26 %22 = OpCopyObject %uint %39 OpStore %6 %22 %27 = OpLoad %ulong %5 %28 = OpLoad %uint %6 %42 = OpConvertUToPtr %_ptr_Generic_uint %27 OpStore %42 %28 Aligned 4 OpReturn OpFunctionEnd