• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1               OpCapability Shader
2          %1 = OpExtInstImport "GLSL.std.450"
3               OpMemoryModel Logical GLSL450
4               OpEntryPoint GLCompute %4 "main" %15
5               OpExecutionMode %4 LocalSize 1 1 1
6               OpSource ESSL 310
7               OpName %4 "main"
8               OpName %6 "f1("
9               OpName %8 "f2("
10               OpName %12 "x"
11               OpName %15 "gl_LocalInvocationID"
12               OpName %20 "y"
13               OpName %27 "image"
14               OpName %44 "sum"
15               OpName %46 "i"
16               OpName %56 "j"
17               OpName %80 "BufferOut"
18               OpMemberName %80 0 "o_uv4"
19               OpMemberName %80 1 "o_v3"
20               OpMemberName %80 2 "o_i"
21               OpName %82 ""
22               OpName %88 "BufferIn"
23               OpMemberName %88 0 "i_u"
24               OpMemberName %88 1 "i_v4"
25               OpMemberName %88 2 "i_f"
26               OpName %90 ""
27               OpName %101 "i"
28               OpName %128 "image2"
29               OpDecorate %15 BuiltIn LocalInvocationId
30               OpDecorate %27 DescriptorSet 0
31               OpDecorate %27 Binding 2
32               OpMemberDecorate %80 0 Offset 0
33               OpMemberDecorate %80 1 Offset 16
34               OpMemberDecorate %80 2 Offset 28
35               OpDecorate %80 BufferBlock
36               OpDecorate %82 DescriptorSet 0
37               OpDecorate %82 Binding 1
38               OpMemberDecorate %88 0 Offset 0
39               OpMemberDecorate %88 1 RowMajor
40               OpMemberDecorate %88 1 Offset 16
41               OpMemberDecorate %88 1 MatrixStride 16
42               OpMemberDecorate %88 2 Offset 80
43               OpDecorate %88 Block
44               OpDecorate %90 DescriptorSet 0
45               OpDecorate %90 Binding 0
46               OpDecorate %128 DescriptorSet 0
47               OpDecorate %128 Binding 3
48          %2 = OpTypeVoid
49          %3 = OpTypeFunction %2
50         %10 = OpTypeInt 32 0
51         %11 = OpTypePointer Function %10
52         %13 = OpTypeVector %10 3
53         %14 = OpTypePointer Input %13
54         %15 = OpVariable %14 Input
55         %16 = OpConstant %10 0
56         %17 = OpTypePointer Input %10
57         %21 = OpConstant %10 1
58         %24 = OpTypeInt 32 1
59         %25 = OpTypeImage %24 2D 0 0 0 2 R32i
60         %26 = OpTypePointer UniformConstant %25
61         %27 = OpVariable %26 UniformConstant
62         %29 = OpTypeVector %10 2
63         %32 = OpTypeVector %24 2
64         %38 = OpTypeVector %24 4
65         %40 = OpConstant %10 2
66         %41 = OpConstant %10 3400
67         %42 = OpConstant %10 264
68         %43 = OpTypePointer Function %24
69         %45 = OpConstant %24 0
70         %53 = OpConstant %24 2
71         %54 = OpTypeBool
72         %73 = OpConstant %24 1
73         %77 = OpTypeVector %10 4
74         %78 = OpTypeFloat 32
75         %79 = OpTypeVector %78 3
76         %80 = OpTypeStruct %77 %79 %24
77         %81 = OpTypePointer Uniform %80
78         %82 = OpVariable %81 Uniform
79         %84 = OpTypePointer Uniform %24
80         %86 = OpTypeVector %78 4
81         %87 = OpTypeMatrix %86 4
82         %88 = OpTypeStruct %10 %87 %78
83         %89 = OpTypePointer Uniform %88
84         %90 = OpVariable %89 Uniform
85         %91 = OpTypePointer Uniform %87
86         %94 = OpTypePointer Uniform %77
87        %108 = OpConstant %24 3
88        %110 = OpTypePointer Uniform %79
89        %113 = OpTypePointer Uniform %78
90        %128 = OpVariable %26 UniformConstant
91        %130 = OpConstantComposite %32 %45 %45
92          %4 = OpFunction %2 None %3
93          %5 = OpLabel
94        %136 = OpFunctionCall %2 %6
95        %137 = OpFunctionCall %2 %8
96               OpReturn
97               OpFunctionEnd
98          %6 = OpFunction %2 None %3
99          %7 = OpLabel
100         %12 = OpVariable %11 Function
101         %20 = OpVariable %11 Function
102         %44 = OpVariable %43 Function
103         %46 = OpVariable %43 Function
104         %56 = OpVariable %43 Function
105         %18 = OpAccessChain %17 %15 %16
106         %19 = OpLoad %10 %18
107               OpStore %12 %19
108         %22 = OpAccessChain %17 %15 %21
109         %23 = OpLoad %10 %22
110               OpStore %20 %23
111         %28 = OpLoad %25 %27
112         %30 = OpLoad %13 %15
113         %31 = OpVectorShuffle %29 %30 %30 0 1
114         %33 = OpBitcast %32 %31
115         %34 = OpLoad %10 %12
116         %35 = OpLoad %10 %20
117         %36 = OpIAdd %10 %34 %35
118         %37 = OpBitcast %24 %36
119         %39 = OpCompositeConstruct %38 %37 %37 %37 %37
120               OpImageWrite %28 %33 %39
121               OpMemoryBarrier %40 %41
122               OpControlBarrier %40 %40 %42
123               OpStore %44 %45
124               OpStore %46 %45
125               OpBranch %47
126         %47 = OpLabel
127               OpLoopMerge %49 %50 None
128               OpBranch %51
129         %51 = OpLabel
130         %52 = OpLoad %24 %46
131         %55 = OpSLessThan %54 %52 %53
132               OpBranchConditional %55 %48 %49
133         %48 = OpLabel
134               OpStore %56 %45
135               OpBranch %57
136         %57 = OpLabel
137               OpLoopMerge %59 %60 None
138               OpBranch %61
139         %61 = OpLabel
140         %62 = OpLoad %24 %56
141         %63 = OpSLessThan %54 %62 %53
142               OpBranchConditional %63 %58 %59
143         %58 = OpLabel
144         %64 = OpLoad %25 %27
145         %65 = OpLoad %24 %46
146         %66 = OpLoad %24 %56
147         %67 = OpCompositeConstruct %32 %65 %66
148         %68 = OpImageRead %38 %64 %67
149         %69 = OpCompositeExtract %24 %68 0
150         %70 = OpLoad %24 %44
151         %71 = OpIMul %24 %70 %69
152               OpStore %44 %71
153               OpBranch %60
154         %60 = OpLabel
155         %72 = OpLoad %24 %56
156         %74 = OpIAdd %24 %72 %73
157               OpStore %56 %74
158               OpBranch %57
159         %59 = OpLabel
160               OpBranch %50
161         %50 = OpLabel
162         %75 = OpLoad %24 %46
163         %76 = OpIAdd %24 %75 %73
164               OpStore %46 %76
165               OpBranch %47
166         %49 = OpLabel
167               OpMemoryBarrier %40 %41
168               OpControlBarrier %40 %40 %42
169         %83 = OpLoad %24 %44
170         %85 = OpAccessChain %84 %82 %53
171               OpStore %85 %83
172               OpReturn
173               OpFunctionEnd
174          %8 = OpFunction %2 None %3
175          %9 = OpLabel
176        %101 = OpVariable %43 Function
177         %92 = OpAccessChain %91 %90 %73
178         %93 = OpLoad %87 %92
179         %95 = OpAccessChain %94 %82 %45
180         %96 = OpLoad %77 %95
181         %97 = OpConvertUToF %86 %96
182         %98 = OpMatrixTimesVector %86 %93 %97
183         %99 = OpConvertFToU %77 %98
184        %100 = OpAccessChain %94 %82 %45
185               OpStore %100 %99
186               OpStore %101 %45
187               OpBranch %102
188        %102 = OpLabel
189               OpLoopMerge %104 %105 None
190               OpBranch %106
191        %106 = OpLabel
192        %107 = OpLoad %24 %101
193        %109 = OpSLessThan %54 %107 %108
194               OpBranchConditional %109 %103 %104
195        %103 = OpLabel
196        %111 = OpAccessChain %110 %82 %73
197        %112 = OpLoad %79 %111
198        %114 = OpAccessChain %113 %90 %53
199        %115 = OpLoad %78 %114
200        %116 = OpVectorTimesScalar %79 %112 %115
201        %117 = OpConvertFToU %13 %116
202        %118 = OpCompositeExtract %10 %117 0
203        %119 = OpCompositeExtract %10 %117 1
204        %120 = OpCompositeExtract %10 %117 2
205        %121 = OpCompositeConstruct %77 %118 %119 %120 %16
206        %122 = OpAccessChain %94 %82 %45
207        %123 = OpLoad %77 %122
208        %124 = OpIAdd %77 %123 %121
209        %125 = OpAccessChain %94 %82 %45
210               OpStore %125 %124
211               OpBranch %105
212        %105 = OpLabel
213        %126 = OpLoad %24 %101
214        %127 = OpIAdd %24 %126 %73
215               OpStore %101 %127
216               OpBranch %102
217        %104 = OpLabel
218               OpMemoryBarrier %40 %41
219               OpControlBarrier %40 %40 %42
220        %129 = OpLoad %25 %128
221        %131 = OpImageRead %38 %129 %130
222        %132 = OpCompositeExtract %24 %131 0
223        %133 = OpConvertSToF %78 %132
224        %134 = OpCompositeConstruct %79 %133 %133 %133
225        %135 = OpAccessChain %110 %82 %73
226               OpStore %135 %134
227               OpReturn
228               OpFunctionEnd
229
230