blob: 197993997bfd42bf974ff60cd575a53ea02dcfa6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
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
|