469 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			469 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| OpCapability Shader
 | |
| %1 = OpExtInstImport "GLSL.std.450"
 | |
| OpMemoryModel Logical GLSL450
 | |
| OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_FragColor %sk_Clockwise
 | |
| OpExecutionMode %_entrypoint_v OriginUpperLeft
 | |
| OpName %sk_FragColor "sk_FragColor"
 | |
| OpName %sk_Clockwise "sk_Clockwise"
 | |
| OpName %_UniformBuffer "_UniformBuffer"
 | |
| OpMemberName %_UniformBuffer 0 "colorGreen"
 | |
| OpMemberName %_UniformBuffer 1 "colorRed"
 | |
| OpMemberName %_UniformBuffer 2 "testInputs"
 | |
| OpName %_entrypoint_v "_entrypoint_v"
 | |
| OpName %main "main"
 | |
| OpName %ok "ok"
 | |
| OpDecorate %sk_FragColor RelaxedPrecision
 | |
| OpDecorate %sk_FragColor Location 0
 | |
| OpDecorate %sk_FragColor Index 0
 | |
| OpDecorate %sk_Clockwise BuiltIn FrontFacing
 | |
| OpMemberDecorate %_UniformBuffer 0 Offset 0
 | |
| OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
 | |
| OpMemberDecorate %_UniformBuffer 1 Offset 16
 | |
| OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
 | |
| OpMemberDecorate %_UniformBuffer 2 Offset 32
 | |
| OpMemberDecorate %_UniformBuffer 2 RelaxedPrecision
 | |
| OpDecorate %_UniformBuffer Block
 | |
| OpDecorate %10 Binding 0
 | |
| OpDecorate %10 DescriptorSet 0
 | |
| OpDecorate %30 RelaxedPrecision
 | |
| OpDecorate %37 RelaxedPrecision
 | |
| OpDecorate %38 RelaxedPrecision
 | |
| OpDecorate %39 RelaxedPrecision
 | |
| OpDecorate %40 RelaxedPrecision
 | |
| OpDecorate %41 RelaxedPrecision
 | |
| OpDecorate %42 RelaxedPrecision
 | |
| OpDecorate %43 RelaxedPrecision
 | |
| OpDecorate %44 RelaxedPrecision
 | |
| OpDecorate %49 RelaxedPrecision
 | |
| OpDecorate %50 RelaxedPrecision
 | |
| OpDecorate %51 RelaxedPrecision
 | |
| OpDecorate %63 RelaxedPrecision
 | |
| OpDecorate %67 RelaxedPrecision
 | |
| OpDecorate %88 RelaxedPrecision
 | |
| OpDecorate %93 RelaxedPrecision
 | |
| OpDecorate %94 RelaxedPrecision
 | |
| OpDecorate %95 RelaxedPrecision
 | |
| OpDecorate %96 RelaxedPrecision
 | |
| OpDecorate %97 RelaxedPrecision
 | |
| OpDecorate %98 RelaxedPrecision
 | |
| OpDecorate %99 RelaxedPrecision
 | |
| OpDecorate %100 RelaxedPrecision
 | |
| OpDecorate %102 RelaxedPrecision
 | |
| OpDecorate %103 RelaxedPrecision
 | |
| OpDecorate %104 RelaxedPrecision
 | |
| OpDecorate %115 RelaxedPrecision
 | |
| OpDecorate %119 RelaxedPrecision
 | |
| OpDecorate %120 RelaxedPrecision
 | |
| OpDecorate %121 RelaxedPrecision
 | |
| OpDecorate %122 RelaxedPrecision
 | |
| OpDecorate %123 RelaxedPrecision
 | |
| OpDecorate %124 RelaxedPrecision
 | |
| OpDecorate %125 RelaxedPrecision
 | |
| OpDecorate %126 RelaxedPrecision
 | |
| OpDecorate %127 RelaxedPrecision
 | |
| OpDecorate %128 RelaxedPrecision
 | |
| OpDecorate %129 RelaxedPrecision
 | |
| OpDecorate %140 RelaxedPrecision
 | |
| OpDecorate %144 RelaxedPrecision
 | |
| OpDecorate %145 RelaxedPrecision
 | |
| OpDecorate %147 RelaxedPrecision
 | |
| OpDecorate %149 RelaxedPrecision
 | |
| OpDecorate %151 RelaxedPrecision
 | |
| OpDecorate %156 RelaxedPrecision
 | |
| OpDecorate %158 RelaxedPrecision
 | |
| OpDecorate %160 RelaxedPrecision
 | |
| OpDecorate %162 RelaxedPrecision
 | |
| OpDecorate %163 RelaxedPrecision
 | |
| OpDecorate %164 RelaxedPrecision
 | |
| OpDecorate %165 RelaxedPrecision
 | |
| OpDecorate %166 RelaxedPrecision
 | |
| OpDecorate %167 RelaxedPrecision
 | |
| OpDecorate %168 RelaxedPrecision
 | |
| OpDecorate %169 RelaxedPrecision
 | |
| OpDecorate %170 RelaxedPrecision
 | |
| OpDecorate %171 RelaxedPrecision
 | |
| OpDecorate %172 RelaxedPrecision
 | |
| OpDecorate %173 RelaxedPrecision
 | |
| OpDecorate %184 RelaxedPrecision
 | |
| OpDecorate %188 RelaxedPrecision
 | |
| OpDecorate %189 RelaxedPrecision
 | |
| OpDecorate %190 RelaxedPrecision
 | |
| OpDecorate %191 RelaxedPrecision
 | |
| OpDecorate %192 RelaxedPrecision
 | |
| OpDecorate %193 RelaxedPrecision
 | |
| OpDecorate %194 RelaxedPrecision
 | |
| OpDecorate %195 RelaxedPrecision
 | |
| OpDecorate %196 RelaxedPrecision
 | |
| OpDecorate %197 RelaxedPrecision
 | |
| OpDecorate %198 RelaxedPrecision
 | |
| OpDecorate %209 RelaxedPrecision
 | |
| OpDecorate %213 RelaxedPrecision
 | |
| OpDecorate %214 RelaxedPrecision
 | |
| OpDecorate %215 RelaxedPrecision
 | |
| OpDecorate %216 RelaxedPrecision
 | |
| OpDecorate %217 RelaxedPrecision
 | |
| OpDecorate %218 RelaxedPrecision
 | |
| OpDecorate %219 RelaxedPrecision
 | |
| OpDecorate %220 RelaxedPrecision
 | |
| OpDecorate %221 RelaxedPrecision
 | |
| OpDecorate %222 RelaxedPrecision
 | |
| OpDecorate %223 RelaxedPrecision
 | |
| OpDecorate %234 RelaxedPrecision
 | |
| OpDecorate %238 RelaxedPrecision
 | |
| OpDecorate %239 RelaxedPrecision
 | |
| OpDecorate %241 RelaxedPrecision
 | |
| OpDecorate %243 RelaxedPrecision
 | |
| OpDecorate %245 RelaxedPrecision
 | |
| OpDecorate %250 RelaxedPrecision
 | |
| OpDecorate %252 RelaxedPrecision
 | |
| OpDecorate %254 RelaxedPrecision
 | |
| OpDecorate %256 RelaxedPrecision
 | |
| OpDecorate %257 RelaxedPrecision
 | |
| OpDecorate %258 RelaxedPrecision
 | |
| OpDecorate %259 RelaxedPrecision
 | |
| OpDecorate %260 RelaxedPrecision
 | |
| OpDecorate %261 RelaxedPrecision
 | |
| OpDecorate %262 RelaxedPrecision
 | |
| OpDecorate %263 RelaxedPrecision
 | |
| OpDecorate %264 RelaxedPrecision
 | |
| OpDecorate %265 RelaxedPrecision
 | |
| OpDecorate %266 RelaxedPrecision
 | |
| OpDecorate %267 RelaxedPrecision
 | |
| OpDecorate %278 RelaxedPrecision
 | |
| OpDecorate %285 RelaxedPrecision
 | |
| OpDecorate %288 RelaxedPrecision
 | |
| OpDecorate %289 RelaxedPrecision
 | |
| %float = OpTypeFloat 32
 | |
| %v4float = OpTypeVector %float 4
 | |
| %_ptr_Output_v4float = OpTypePointer Output %v4float
 | |
| %sk_FragColor = OpVariable %_ptr_Output_v4float Output
 | |
| %bool = OpTypeBool
 | |
| %_ptr_Input_bool = OpTypePointer Input %bool
 | |
| %sk_Clockwise = OpVariable %_ptr_Input_bool Input
 | |
| %_UniformBuffer = OpTypeStruct %v4float %v4float %v4float
 | |
| %_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
 | |
| %10 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
 | |
| %void = OpTypeVoid
 | |
| %15 = OpTypeFunction %void
 | |
| %v2float = OpTypeVector %float 2
 | |
| %float_0 = OpConstant %float 0
 | |
| %19 = OpConstantComposite %v2float %float_0 %float_0
 | |
| %_ptr_Function_v2float = OpTypePointer Function %v2float
 | |
| %23 = OpTypeFunction %v4float %_ptr_Function_v2float
 | |
| %_ptr_Function_bool = OpTypePointer Function %bool
 | |
| %true = OpConstantTrue %bool
 | |
| %false = OpConstantFalse %bool
 | |
| %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
 | |
| %int = OpTypeInt 32 1
 | |
| %int_2 = OpConstant %int 2
 | |
| %mat2v2float = OpTypeMatrix %v2float 2
 | |
| %float_n1_25 = OpConstant %float -1.25
 | |
| %float_0_75 = OpConstant %float 0.75
 | |
| %float_2_25 = OpConstant %float 2.25
 | |
| %v2bool = OpTypeVector %bool 2
 | |
| %int_0 = OpConstant %int 0
 | |
| %float_1 = OpConstant %float 1
 | |
| %v4int = OpTypeVector %int 4
 | |
| %v4bool = OpTypeVector %bool 4
 | |
| %_ptr_Function_v4float = OpTypePointer Function %v4float
 | |
| %int_1 = OpConstant %int 1
 | |
| %_entrypoint_v = OpFunction %void None %15
 | |
| %16 = OpLabel
 | |
| %20 = OpVariable %_ptr_Function_v2float Function
 | |
| OpStore %20 %19
 | |
| %22 = OpFunctionCall %v4float %main %20
 | |
| OpStore %sk_FragColor %22
 | |
| OpReturn
 | |
| OpFunctionEnd
 | |
| %main = OpFunction %v4float None %23
 | |
| %24 = OpFunctionParameter %_ptr_Function_v2float
 | |
| %25 = OpLabel
 | |
| %ok = OpVariable %_ptr_Function_bool Function
 | |
| %279 = OpVariable %_ptr_Function_v4float Function
 | |
| OpStore %ok %true
 | |
| %30 = OpLoad %bool %ok
 | |
| OpSelectionMerge %32 None
 | |
| OpBranchConditional %30 %31 %32
 | |
| %31 = OpLabel
 | |
| %33 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
 | |
| %37 = OpLoad %v4float %33
 | |
| %38 = OpCompositeExtract %float %37 0
 | |
| %39 = OpCompositeExtract %float %37 1
 | |
| %40 = OpCompositeExtract %float %37 2
 | |
| %41 = OpCompositeExtract %float %37 3
 | |
| %42 = OpCompositeConstruct %v2float %38 %39
 | |
| %43 = OpCompositeConstruct %v2float %40 %41
 | |
| %44 = OpCompositeConstruct %mat2v2float %42 %43
 | |
| %49 = OpCompositeConstruct %v2float %float_n1_25 %float_0
 | |
| %50 = OpCompositeConstruct %v2float %float_0_75 %float_2_25
 | |
| %51 = OpCompositeConstruct %mat2v2float %49 %50
 | |
| %53 = OpCompositeExtract %v2float %44 0
 | |
| %54 = OpCompositeExtract %v2float %51 0
 | |
| %55 = OpFOrdEqual %v2bool %53 %54
 | |
| %56 = OpAll %bool %55
 | |
| %57 = OpCompositeExtract %v2float %44 1
 | |
| %58 = OpCompositeExtract %v2float %51 1
 | |
| %59 = OpFOrdEqual %v2bool %57 %58
 | |
| %60 = OpAll %bool %59
 | |
| %61 = OpLogicalAnd %bool %56 %60
 | |
| OpBranch %32
 | |
| %32 = OpLabel
 | |
| %62 = OpPhi %bool %false %25 %61 %31
 | |
| OpStore %ok %62
 | |
| %63 = OpLoad %bool %ok
 | |
| OpSelectionMerge %65 None
 | |
| OpBranchConditional %63 %64 %65
 | |
| %64 = OpLabel
 | |
| %66 = OpAccessChain %_ptr_Uniform_v4float %10 %int_2
 | |
| %67 = OpLoad %v4float %66
 | |
| %68 = OpCompositeExtract %float %67 0
 | |
| %69 = OpCompositeExtract %float %67 1
 | |
| %70 = OpCompositeExtract %float %67 2
 | |
| %71 = OpCompositeExtract %float %67 3
 | |
| %72 = OpCompositeConstruct %v2float %68 %69
 | |
| %73 = OpCompositeConstruct %v2float %70 %71
 | |
| %74 = OpCompositeConstruct %mat2v2float %72 %73
 | |
| %75 = OpCompositeConstruct %v2float %float_n1_25 %float_0
 | |
| %76 = OpCompositeConstruct %v2float %float_0_75 %float_2_25
 | |
| %77 = OpCompositeConstruct %mat2v2float %75 %76
 | |
| %78 = OpCompositeExtract %v2float %74 0
 | |
| %79 = OpCompositeExtract %v2float %77 0
 | |
| %80 = OpFOrdEqual %v2bool %78 %79
 | |
| %81 = OpAll %bool %80
 | |
| %82 = OpCompositeExtract %v2float %74 1
 | |
| %83 = OpCompositeExtract %v2float %77 1
 | |
| %84 = OpFOrdEqual %v2bool %82 %83
 | |
| %85 = OpAll %bool %84
 | |
| %86 = OpLogicalAnd %bool %81 %85
 | |
| OpBranch %65
 | |
| %65 = OpLabel
 | |
| %87 = OpPhi %bool %false %32 %86 %64
 | |
| OpStore %ok %87
 | |
| %88 = OpLoad %bool %ok
 | |
| OpSelectionMerge %90 None
 | |
| OpBranchConditional %88 %89 %90
 | |
| %89 = OpLabel
 | |
| %91 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %93 = OpLoad %v4float %91
 | |
| %94 = OpCompositeExtract %float %93 0
 | |
| %95 = OpCompositeExtract %float %93 1
 | |
| %96 = OpCompositeExtract %float %93 2
 | |
| %97 = OpCompositeExtract %float %93 3
 | |
| %98 = OpCompositeConstruct %v2float %94 %95
 | |
| %99 = OpCompositeConstruct %v2float %96 %97
 | |
| %100 = OpCompositeConstruct %mat2v2float %98 %99
 | |
| %102 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %103 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %104 = OpCompositeConstruct %mat2v2float %102 %103
 | |
| %105 = OpCompositeExtract %v2float %100 0
 | |
| %106 = OpCompositeExtract %v2float %104 0
 | |
| %107 = OpFOrdEqual %v2bool %105 %106
 | |
| %108 = OpAll %bool %107
 | |
| %109 = OpCompositeExtract %v2float %100 1
 | |
| %110 = OpCompositeExtract %v2float %104 1
 | |
| %111 = OpFOrdEqual %v2bool %109 %110
 | |
| %112 = OpAll %bool %111
 | |
| %113 = OpLogicalAnd %bool %108 %112
 | |
| OpBranch %90
 | |
| %90 = OpLabel
 | |
| %114 = OpPhi %bool %false %65 %113 %89
 | |
| OpStore %ok %114
 | |
| %115 = OpLoad %bool %ok
 | |
| OpSelectionMerge %117 None
 | |
| OpBranchConditional %115 %116 %117
 | |
| %116 = OpLabel
 | |
| %118 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %119 = OpLoad %v4float %118
 | |
| %120 = OpCompositeExtract %float %119 0
 | |
| %121 = OpCompositeExtract %float %119 1
 | |
| %122 = OpCompositeExtract %float %119 2
 | |
| %123 = OpCompositeExtract %float %119 3
 | |
| %124 = OpCompositeConstruct %v2float %120 %121
 | |
| %125 = OpCompositeConstruct %v2float %122 %123
 | |
| %126 = OpCompositeConstruct %mat2v2float %124 %125
 | |
| %127 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %128 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %129 = OpCompositeConstruct %mat2v2float %127 %128
 | |
| %130 = OpCompositeExtract %v2float %126 0
 | |
| %131 = OpCompositeExtract %v2float %129 0
 | |
| %132 = OpFOrdEqual %v2bool %130 %131
 | |
| %133 = OpAll %bool %132
 | |
| %134 = OpCompositeExtract %v2float %126 1
 | |
| %135 = OpCompositeExtract %v2float %129 1
 | |
| %136 = OpFOrdEqual %v2bool %134 %135
 | |
| %137 = OpAll %bool %136
 | |
| %138 = OpLogicalAnd %bool %133 %137
 | |
| OpBranch %117
 | |
| %117 = OpLabel
 | |
| %139 = OpPhi %bool %false %90 %138 %116
 | |
| OpStore %ok %139
 | |
| %140 = OpLoad %bool %ok
 | |
| OpSelectionMerge %142 None
 | |
| OpBranchConditional %140 %141 %142
 | |
| %141 = OpLabel
 | |
| %143 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %144 = OpLoad %v4float %143
 | |
| %145 = OpCompositeExtract %float %144 0
 | |
| %146 = OpConvertFToS %int %145
 | |
| %147 = OpCompositeExtract %float %144 1
 | |
| %148 = OpConvertFToS %int %147
 | |
| %149 = OpCompositeExtract %float %144 2
 | |
| %150 = OpConvertFToS %int %149
 | |
| %151 = OpCompositeExtract %float %144 3
 | |
| %152 = OpConvertFToS %int %151
 | |
| %153 = OpCompositeConstruct %v4int %146 %148 %150 %152
 | |
| %155 = OpCompositeExtract %int %153 0
 | |
| %156 = OpConvertSToF %float %155
 | |
| %157 = OpCompositeExtract %int %153 1
 | |
| %158 = OpConvertSToF %float %157
 | |
| %159 = OpCompositeExtract %int %153 2
 | |
| %160 = OpConvertSToF %float %159
 | |
| %161 = OpCompositeExtract %int %153 3
 | |
| %162 = OpConvertSToF %float %161
 | |
| %163 = OpCompositeConstruct %v4float %156 %158 %160 %162
 | |
| %164 = OpCompositeExtract %float %163 0
 | |
| %165 = OpCompositeExtract %float %163 1
 | |
| %166 = OpCompositeExtract %float %163 2
 | |
| %167 = OpCompositeExtract %float %163 3
 | |
| %168 = OpCompositeConstruct %v2float %164 %165
 | |
| %169 = OpCompositeConstruct %v2float %166 %167
 | |
| %170 = OpCompositeConstruct %mat2v2float %168 %169
 | |
| %171 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %172 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %173 = OpCompositeConstruct %mat2v2float %171 %172
 | |
| %174 = OpCompositeExtract %v2float %170 0
 | |
| %175 = OpCompositeExtract %v2float %173 0
 | |
| %176 = OpFOrdEqual %v2bool %174 %175
 | |
| %177 = OpAll %bool %176
 | |
| %178 = OpCompositeExtract %v2float %170 1
 | |
| %179 = OpCompositeExtract %v2float %173 1
 | |
| %180 = OpFOrdEqual %v2bool %178 %179
 | |
| %181 = OpAll %bool %180
 | |
| %182 = OpLogicalAnd %bool %177 %181
 | |
| OpBranch %142
 | |
| %142 = OpLabel
 | |
| %183 = OpPhi %bool %false %117 %182 %141
 | |
| OpStore %ok %183
 | |
| %184 = OpLoad %bool %ok
 | |
| OpSelectionMerge %186 None
 | |
| OpBranchConditional %184 %185 %186
 | |
| %185 = OpLabel
 | |
| %187 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %188 = OpLoad %v4float %187
 | |
| %189 = OpCompositeExtract %float %188 0
 | |
| %190 = OpCompositeExtract %float %188 1
 | |
| %191 = OpCompositeExtract %float %188 2
 | |
| %192 = OpCompositeExtract %float %188 3
 | |
| %193 = OpCompositeConstruct %v2float %189 %190
 | |
| %194 = OpCompositeConstruct %v2float %191 %192
 | |
| %195 = OpCompositeConstruct %mat2v2float %193 %194
 | |
| %196 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %197 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %198 = OpCompositeConstruct %mat2v2float %196 %197
 | |
| %199 = OpCompositeExtract %v2float %195 0
 | |
| %200 = OpCompositeExtract %v2float %198 0
 | |
| %201 = OpFOrdEqual %v2bool %199 %200
 | |
| %202 = OpAll %bool %201
 | |
| %203 = OpCompositeExtract %v2float %195 1
 | |
| %204 = OpCompositeExtract %v2float %198 1
 | |
| %205 = OpFOrdEqual %v2bool %203 %204
 | |
| %206 = OpAll %bool %205
 | |
| %207 = OpLogicalAnd %bool %202 %206
 | |
| OpBranch %186
 | |
| %186 = OpLabel
 | |
| %208 = OpPhi %bool %false %142 %207 %185
 | |
| OpStore %ok %208
 | |
| %209 = OpLoad %bool %ok
 | |
| OpSelectionMerge %211 None
 | |
| OpBranchConditional %209 %210 %211
 | |
| %210 = OpLabel
 | |
| %212 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %213 = OpLoad %v4float %212
 | |
| %214 = OpCompositeExtract %float %213 0
 | |
| %215 = OpCompositeExtract %float %213 1
 | |
| %216 = OpCompositeExtract %float %213 2
 | |
| %217 = OpCompositeExtract %float %213 3
 | |
| %218 = OpCompositeConstruct %v2float %214 %215
 | |
| %219 = OpCompositeConstruct %v2float %216 %217
 | |
| %220 = OpCompositeConstruct %mat2v2float %218 %219
 | |
| %221 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %222 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %223 = OpCompositeConstruct %mat2v2float %221 %222
 | |
| %224 = OpCompositeExtract %v2float %220 0
 | |
| %225 = OpCompositeExtract %v2float %223 0
 | |
| %226 = OpFOrdEqual %v2bool %224 %225
 | |
| %227 = OpAll %bool %226
 | |
| %228 = OpCompositeExtract %v2float %220 1
 | |
| %229 = OpCompositeExtract %v2float %223 1
 | |
| %230 = OpFOrdEqual %v2bool %228 %229
 | |
| %231 = OpAll %bool %230
 | |
| %232 = OpLogicalAnd %bool %227 %231
 | |
| OpBranch %211
 | |
| %211 = OpLabel
 | |
| %233 = OpPhi %bool %false %186 %232 %210
 | |
| OpStore %ok %233
 | |
| %234 = OpLoad %bool %ok
 | |
| OpSelectionMerge %236 None
 | |
| OpBranchConditional %234 %235 %236
 | |
| %235 = OpLabel
 | |
| %237 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %238 = OpLoad %v4float %237
 | |
| %239 = OpCompositeExtract %float %238 0
 | |
| %240 = OpFUnordNotEqual %bool %239 %float_0
 | |
| %241 = OpCompositeExtract %float %238 1
 | |
| %242 = OpFUnordNotEqual %bool %241 %float_0
 | |
| %243 = OpCompositeExtract %float %238 2
 | |
| %244 = OpFUnordNotEqual %bool %243 %float_0
 | |
| %245 = OpCompositeExtract %float %238 3
 | |
| %246 = OpFUnordNotEqual %bool %245 %float_0
 | |
| %247 = OpCompositeConstruct %v4bool %240 %242 %244 %246
 | |
| %249 = OpCompositeExtract %bool %247 0
 | |
| %250 = OpSelect %float %249 %float_1 %float_0
 | |
| %251 = OpCompositeExtract %bool %247 1
 | |
| %252 = OpSelect %float %251 %float_1 %float_0
 | |
| %253 = OpCompositeExtract %bool %247 2
 | |
| %254 = OpSelect %float %253 %float_1 %float_0
 | |
| %255 = OpCompositeExtract %bool %247 3
 | |
| %256 = OpSelect %float %255 %float_1 %float_0
 | |
| %257 = OpCompositeConstruct %v4float %250 %252 %254 %256
 | |
| %258 = OpCompositeExtract %float %257 0
 | |
| %259 = OpCompositeExtract %float %257 1
 | |
| %260 = OpCompositeExtract %float %257 2
 | |
| %261 = OpCompositeExtract %float %257 3
 | |
| %262 = OpCompositeConstruct %v2float %258 %259
 | |
| %263 = OpCompositeConstruct %v2float %260 %261
 | |
| %264 = OpCompositeConstruct %mat2v2float %262 %263
 | |
| %265 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %266 = OpCompositeConstruct %v2float %float_0 %float_1
 | |
| %267 = OpCompositeConstruct %mat2v2float %265 %266
 | |
| %268 = OpCompositeExtract %v2float %264 0
 | |
| %269 = OpCompositeExtract %v2float %267 0
 | |
| %270 = OpFOrdEqual %v2bool %268 %269
 | |
| %271 = OpAll %bool %270
 | |
| %272 = OpCompositeExtract %v2float %264 1
 | |
| %273 = OpCompositeExtract %v2float %267 1
 | |
| %274 = OpFOrdEqual %v2bool %272 %273
 | |
| %275 = OpAll %bool %274
 | |
| %276 = OpLogicalAnd %bool %271 %275
 | |
| OpBranch %236
 | |
| %236 = OpLabel
 | |
| %277 = OpPhi %bool %false %211 %276 %235
 | |
| OpStore %ok %277
 | |
| %278 = OpLoad %bool %ok
 | |
| OpSelectionMerge %283 None
 | |
| OpBranchConditional %278 %281 %282
 | |
| %281 = OpLabel
 | |
| %284 = OpAccessChain %_ptr_Uniform_v4float %10 %int_0
 | |
| %285 = OpLoad %v4float %284
 | |
| OpStore %279 %285
 | |
| OpBranch %283
 | |
| %282 = OpLabel
 | |
| %286 = OpAccessChain %_ptr_Uniform_v4float %10 %int_1
 | |
| %288 = OpLoad %v4float %286
 | |
| OpStore %279 %288
 | |
| OpBranch %283
 | |
| %283 = OpLabel
 | |
| %289 = OpLoad %v4float %279
 | |
| OpReturnValue %289
 | |
| OpFunctionEnd
 |