blob: e4241f1756f721d9bab4db90e8706af962d0dbb9 [file] [log] [blame]
Alastair Donaldsonf7e73d42021-07-23 13:10:12 +00001 OpCapability Shader
2 %1 = OpExtInstImport "GLSL.std.450"
3 OpMemoryModel Logical GLSL450
4 OpEntryPoint Fragment %main "main" %_GLF_color
5 OpExecutionMode %main OriginUpperLeft
6 OpSource ESSL 310
7 OpName %main "main"
8 OpName %a "a"
9 OpName %buf0 "buf0"
10 OpMemberName %buf0 0 "one"
11 OpName %_ ""
12 OpName %b "b"
13 OpName %c "c"
14 OpName %d "d"
15 OpName %e "e"
16 OpName %f "f"
17 OpName %_GLF_color "_GLF_color"
18 OpMemberDecorate %buf0 0 Offset 0
19 OpDecorate %buf0 Block
20 OpDecorate %_ DescriptorSet 0
21 OpDecorate %_ Binding 0
22 OpDecorate %_GLF_color Location 0
23 %void = OpTypeVoid
24 %13 = OpTypeFunction %void
25 %uint = OpTypeInt 32 0
26%_ptr_Function_uint = OpTypePointer Function %uint
27 %uint_77 = OpConstant %uint 77
28 %buf0 = OpTypeStruct %uint
29%_ptr_Uniform_buf0 = OpTypePointer Uniform %buf0
30 %_ = OpVariable %_ptr_Uniform_buf0 Uniform
31 %int = OpTypeInt 32 1
32 %int_0 = OpConstant %int 0
33%_ptr_Uniform_uint = OpTypePointer Uniform %uint
34 %uint_32 = OpConstant %uint 32
35 %uint_3243 = OpConstant %uint 3243
36 %uint_33 = OpConstant %uint 33
37 %uint_23 = OpConstant %uint 23
38 %uint_345 = OpConstant %uint 345
39 %uint_2395 = OpConstant %uint 2395
40%uint_290485 = OpConstant %uint 290485
41 %uint_44321 = OpConstant %uint 44321
42 %uint_1 = OpConstant %uint 1
43 %bool = OpTypeBool
44 %uint_0 = OpConstant %uint 0
45 %float = OpTypeFloat 32
46 %v4float = OpTypeVector %float 4
47%_ptr_Output_v4float = OpTypePointer Output %v4float
48 %_GLF_color = OpVariable %_ptr_Output_v4float Output
49 %float_1 = OpConstant %float 1
50 %float_0 = OpConstant %float 0
51 %37 = OpConstantComposite %v4float %float_1 %float_0 %float_0 %float_1
52 %38 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
53 %main = OpFunction %void None %13
54 %39 = OpLabel
55 %a = OpVariable %_ptr_Function_uint Function
56 %b = OpVariable %_ptr_Function_uint Function
57 %c = OpVariable %_ptr_Function_uint Function
58 %d = OpVariable %_ptr_Function_uint Function
59 %e = OpVariable %_ptr_Function_uint Function
60 %f = OpVariable %_ptr_Function_uint Function
61 %40 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
62 %41 = OpLoad %uint %40
63 %42 = OpIAdd %uint %uint_77 %41
64 %43 = OpShiftRightLogical %uint %42 %uint_32
65 OpStore %a %43
66 %44 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
67 %45 = OpLoad %uint %44
68 %46 = OpIAdd %uint %uint_3243 %45
69 %47 = OpShiftRightLogical %uint %46 %uint_33
70 OpStore %b %47
71 %48 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
72 %49 = OpLoad %uint %48
73 %50 = OpIAdd %uint %uint_23 %49
74 %51 = OpShiftRightLogical %uint %50 %uint_345
75 OpStore %c %51
76 %52 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
77 %53 = OpLoad %uint %52
78 %54 = OpIAdd %uint %uint_2395 %53
79 %55 = OpShiftLeftLogical %uint %54 %uint_32
80 OpStore %d %55
81 %56 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
82 %57 = OpLoad %uint %56
83 %58 = OpIAdd %uint %uint_290485 %57
84 %59 = OpShiftLeftLogical %uint %58 %uint_33
85 OpStore %e %59
86 %60 = OpAccessChain %_ptr_Uniform_uint %_ %int_0
87 %61 = OpLoad %uint %60
88 %62 = OpIAdd %uint %uint_44321 %61
89 %63 = OpShiftLeftLogical %uint %62 %uint_345
90 OpStore %f %63
91 %64 = OpLoad %uint %a
92 %65 = OpINotEqual %bool %64 %uint_1
93 OpSelectionMerge %66 None
94 OpBranchConditional %65 %67 %66
95 %67 = OpLabel
96 OpStore %a %uint_1
97 OpBranch %66
98 %66 = OpLabel
99 %68 = OpLoad %uint %b
100 %69 = OpINotEqual %bool %68 %uint_0
101 OpSelectionMerge %70 None
102 OpBranchConditional %69 %71 %70
103 %71 = OpLabel
104 OpStore %b %uint_0
105 OpBranch %70
106 %70 = OpLabel
107 %72 = OpLoad %uint %c
108 %73 = OpINotEqual %bool %72 %uint_1
109 OpSelectionMerge %74 None
110 OpBranchConditional %73 %75 %74
111 %75 = OpLabel
112 OpStore %c %uint_1
113 OpBranch %74
114 %74 = OpLabel
115 %76 = OpLoad %uint %d
116 %77 = OpINotEqual %bool %76 %uint_0
117 OpSelectionMerge %78 None
118 OpBranchConditional %77 %79 %78
119 %79 = OpLabel
120 OpStore %d %uint_0
121 OpBranch %78
122 %78 = OpLabel
123 %80 = OpLoad %uint %e
124 %81 = OpINotEqual %bool %80 %uint_1
125 OpSelectionMerge %82 None
126 OpBranchConditional %81 %83 %82
127 %83 = OpLabel
128 OpStore %e %uint_1
129 OpBranch %82
130 %82 = OpLabel
131 %84 = OpLoad %uint %f
132 %85 = OpINotEqual %bool %84 %uint_0
133 OpSelectionMerge %86 None
134 OpBranchConditional %85 %87 %86
135 %87 = OpLabel
136 OpStore %f %uint_0
137 OpBranch %86
138 %86 = OpLabel
139 %88 = OpLoad %uint %a
140 %89 = OpIEqual %bool %88 %uint_1
141 %90 = OpLoad %uint %b
142 %91 = OpIEqual %bool %90 %uint_0
143 %92 = OpLogicalAnd %bool %89 %91
144 %93 = OpLoad %uint %c
145 %94 = OpIEqual %bool %93 %uint_1
146 %95 = OpLogicalAnd %bool %92 %94
147 %96 = OpLoad %uint %d
148 %97 = OpIEqual %bool %96 %uint_0
149 %98 = OpLogicalAnd %bool %95 %97
150 %99 = OpLoad %uint %e
151 %100 = OpIEqual %bool %99 %uint_1
152 %101 = OpLogicalAnd %bool %98 %100
153 %102 = OpLoad %uint %f
154 %103 = OpIEqual %bool %102 %uint_0
155 %104 = OpLogicalAnd %bool %101 %103
156 OpSelectionMerge %105 None
157 OpBranchConditional %104 %106 %107
158 %106 = OpLabel
159 OpStore %_GLF_color %37
160 OpBranch %105
161 %107 = OpLabel
162 OpStore %_GLF_color %38
163 OpBranch %105
164 %105 = OpLabel
165 OpReturn
166 OpFunctionEnd