aboutsummaryrefslogtreecommitdiffhomepage
path: root/ptx/src/test/spirv_run/shared_unify_extern.spvtxt
blob: 90fc156ec1910199f740759d0fc4e66a445ac73f (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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
               OpCapability GenericPointer
               OpCapability Linkage
               OpCapability Addresses
               OpCapability Kernel
               OpCapability Int8
               OpCapability Int16
               OpCapability Int64
               OpCapability Float16
               OpCapability Float64
               OpCapability DenormFlushToZero
               OpExtension "SPV_KHR_float_controls"
               OpExtension "SPV_KHR_no_integer_wrap_decoration"
         %61 = OpExtInstImport "OpenCL.std"
               OpMemoryModel Physical64 OpenCL
               OpEntryPoint Kernel %27 "shared_unify_extern" %1 %2
               OpExecutionMode %27 ContractionOff
       %void = OpTypeVoid
       %uint = OpTypeInt 32 0
%_ptr_Workgroup_uint = OpTypePointer Workgroup %uint
          %1 = OpVariable %_ptr_Workgroup_uint Workgroup
     %uint_4 = OpConstant %uint 4
%_arr_uint_uint_4 = OpTypeArray %uint %uint_4
%_ptr_Workgroup__arr_uint_uint_4 = OpTypePointer Workgroup %_arr_uint_uint_4
          %2 = OpVariable %_ptr_Workgroup__arr_uint_uint_4 Workgroup
      %ulong = OpTypeInt 64 0
   %uint_4_0 = OpConstant %uint 4
         %70 = OpTypeFunction %ulong %_ptr_Workgroup_uint %_ptr_Workgroup__arr_uint_uint_4
   %uint_4_1 = OpConstant %uint 4
%_ptr_Function_ulong = OpTypePointer Function %ulong
%_ptr_Workgroup_ulong = OpTypePointer Workgroup %ulong
   %uint_4_2 = OpConstant %uint 4
         %75 = OpTypeFunction %ulong %ulong %_ptr_Workgroup_uint %_ptr_Workgroup__arr_uint_uint_4
   %uint_4_3 = OpConstant %uint 4
         %77 = OpTypeFunction %void %ulong %ulong
%_ptr_CrossWorkgroup_ulong = OpTypePointer CrossWorkgroup %ulong
    %ulong_8 = OpConstant %ulong 8
      %uchar = OpTypeInt 8 0
%_ptr_CrossWorkgroup_uchar = OpTypePointer CrossWorkgroup %uchar
%_ptr_Generic_ulong = OpTypePointer Generic %ulong
          %3 = OpFunction %ulong None %70
         %57 = OpFunctionParameter %_ptr_Workgroup_uint
         %58 = OpFunctionParameter %_ptr_Workgroup__arr_uint_uint_4
         %16 = OpLabel
          %4 = OpVariable %_ptr_Function_ulong Function
          %5 = OpVariable %_ptr_Function_ulong Function
          %6 = OpVariable %_ptr_Function_ulong Function
         %13 = OpBitcast %_ptr_Workgroup_ulong %58
          %7 = OpLoad %ulong %13 Aligned 8
               OpStore %5 %7
         %14 = OpBitcast %_ptr_Workgroup_ulong %57
          %8 = OpLoad %ulong %14 Aligned 8
               OpStore %6 %8
         %10 = OpLoad %ulong %6
         %11 = OpLoad %ulong %5
         %15 = OpIAdd %ulong %10 %11
          %9 = OpCopyObject %ulong %15
               OpStore %4 %9
         %12 = OpLoad %ulong %4
               OpReturnValue %12
               OpFunctionEnd
         %17 = OpFunction %ulong None %75
         %20 = OpFunctionParameter %ulong
         %59 = OpFunctionParameter %_ptr_Workgroup_uint
         %60 = OpFunctionParameter %_ptr_Workgroup__arr_uint_uint_4
         %26 = OpLabel
         %19 = OpVariable %_ptr_Function_ulong Function
         %18 = OpVariable %_ptr_Function_ulong Function
               OpStore %19 %20
         %21 = OpLoad %ulong %19
         %24 = OpBitcast %_ptr_Workgroup_ulong %59
         %25 = OpCopyObject %ulong %21
               OpStore %24 %25 Aligned 8
         %22 = OpFunctionCall %ulong %3 %59 %60
               OpStore %18 %22
         %23 = OpLoad %ulong %18
               OpReturnValue %23
               OpFunctionEnd
         %27 = OpFunction %void None %77
         %34 = OpFunctionParameter %ulong
         %35 = OpFunctionParameter %ulong
         %55 = OpLabel
         %28 = OpVariable %_ptr_Function_ulong Function
         %29 = OpVariable %_ptr_Function_ulong Function
         %30 = OpVariable %_ptr_Function_ulong Function
         %31 = OpVariable %_ptr_Function_ulong Function
         %32 = OpVariable %_ptr_Function_ulong Function
         %33 = OpVariable %_ptr_Function_ulong Function
               OpStore %28 %34
               OpStore %29 %35
         %36 = OpLoad %ulong %28 Aligned 8
               OpStore %30 %36
         %37 = OpLoad %ulong %29 Aligned 8
               OpStore %31 %37
         %39 = OpLoad %ulong %30
         %49 = OpConvertUToPtr %_ptr_CrossWorkgroup_ulong %39
         %38 = OpLoad %ulong %49 Aligned 8
               OpStore %32 %38
         %41 = OpLoad %ulong %30
         %50 = OpConvertUToPtr %_ptr_CrossWorkgroup_ulong %41
         %81 = OpBitcast %_ptr_CrossWorkgroup_uchar %50
         %82 = OpInBoundsPtrAccessChain %_ptr_CrossWorkgroup_uchar %81 %ulong_8
         %48 = OpBitcast %_ptr_CrossWorkgroup_ulong %82
         %40 = OpLoad %ulong %48 Aligned 8
               OpStore %33 %40
         %42 = OpLoad %ulong %33
         %51 = OpBitcast %_ptr_Workgroup_ulong %2
               OpStore %51 %42 Aligned 8
         %44 = OpLoad %ulong %32
         %53 = OpCopyObject %ulong %44
         %52 = OpFunctionCall %ulong %17 %53 %1 %2
         %43 = OpCopyObject %ulong %52
               OpStore %33 %43
         %45 = OpLoad %ulong %31
         %46 = OpLoad %ulong %33
         %54 = OpConvertUToPtr %_ptr_Generic_ulong %45
               OpStore %54 %46 Aligned 8
               OpReturn
               OpFunctionEnd