546 lines
18 KiB
GLSL
546 lines
18 KiB
GLSL
|
|
OpCapability Shader
|
||
|
|
%1 = OpExtInstImport "GLSL.std.450"
|
||
|
|
OpMemoryModel Logical GLSL450
|
||
|
|
OpEntryPoint Fragment %_entrypoint_v "_entrypoint" %sk_Clockwise %sk_FragColor
|
||
|
|
OpExecutionMode %_entrypoint_v OriginUpperLeft
|
||
|
|
OpName %sk_Clockwise "sk_Clockwise"
|
||
|
|
OpName %sk_FragColor "sk_FragColor"
|
||
|
|
OpName %_UniformBuffer "_UniformBuffer"
|
||
|
|
OpMemberName %_UniformBuffer 0 "colorGreen"
|
||
|
|
OpMemberName %_UniformBuffer 1 "colorRed"
|
||
|
|
OpName %_entrypoint_v "_entrypoint_v"
|
||
|
|
OpName %test_half_b "test_half_b"
|
||
|
|
OpName %ok "ok"
|
||
|
|
OpName %m23 "m23"
|
||
|
|
OpName %m24 "m24"
|
||
|
|
OpName %m32 "m32"
|
||
|
|
OpName %m34 "m34"
|
||
|
|
OpName %m42 "m42"
|
||
|
|
OpName %m43 "m43"
|
||
|
|
OpName %m22 "m22"
|
||
|
|
OpName %m33 "m33"
|
||
|
|
OpName %main "main"
|
||
|
|
OpName %_0_ok "_0_ok"
|
||
|
|
OpName %_1_m23 "_1_m23"
|
||
|
|
OpName %_2_m24 "_2_m24"
|
||
|
|
OpName %_3_m32 "_3_m32"
|
||
|
|
OpName %_7_m22 "_7_m22"
|
||
|
|
OpDecorate %sk_Clockwise BuiltIn FrontFacing
|
||
|
|
OpDecorate %sk_FragColor RelaxedPrecision
|
||
|
|
OpDecorate %sk_FragColor Location 0
|
||
|
|
OpDecorate %sk_FragColor Index 0
|
||
|
|
OpMemberDecorate %_UniformBuffer 0 Offset 0
|
||
|
|
OpMemberDecorate %_UniformBuffer 0 RelaxedPrecision
|
||
|
|
OpMemberDecorate %_UniformBuffer 1 Offset 16
|
||
|
|
OpMemberDecorate %_UniformBuffer 1 RelaxedPrecision
|
||
|
|
OpDecorate %_UniformBuffer Block
|
||
|
|
OpDecorate %11 Binding 0
|
||
|
|
OpDecorate %11 DescriptorSet 0
|
||
|
|
OpDecorate %m23 RelaxedPrecision
|
||
|
|
OpDecorate %41 RelaxedPrecision
|
||
|
|
OpDecorate %43 RelaxedPrecision
|
||
|
|
OpDecorate %m24 RelaxedPrecision
|
||
|
|
OpDecorate %57 RelaxedPrecision
|
||
|
|
OpDecorate %59 RelaxedPrecision
|
||
|
|
OpDecorate %m32 RelaxedPrecision
|
||
|
|
OpDecorate %73 RelaxedPrecision
|
||
|
|
OpDecorate %75 RelaxedPrecision
|
||
|
|
OpDecorate %78 RelaxedPrecision
|
||
|
|
OpDecorate %m34 RelaxedPrecision
|
||
|
|
OpDecorate %92 RelaxedPrecision
|
||
|
|
OpDecorate %94 RelaxedPrecision
|
||
|
|
OpDecorate %97 RelaxedPrecision
|
||
|
|
OpDecorate %m42 RelaxedPrecision
|
||
|
|
OpDecorate %110 RelaxedPrecision
|
||
|
|
OpDecorate %112 RelaxedPrecision
|
||
|
|
OpDecorate %115 RelaxedPrecision
|
||
|
|
OpDecorate %118 RelaxedPrecision
|
||
|
|
OpDecorate %m43 RelaxedPrecision
|
||
|
|
OpDecorate %133 RelaxedPrecision
|
||
|
|
OpDecorate %135 RelaxedPrecision
|
||
|
|
OpDecorate %138 RelaxedPrecision
|
||
|
|
OpDecorate %141 RelaxedPrecision
|
||
|
|
OpDecorate %m22 RelaxedPrecision
|
||
|
|
OpDecorate %148 RelaxedPrecision
|
||
|
|
OpDecorate %155 RelaxedPrecision
|
||
|
|
OpDecorate %156 RelaxedPrecision
|
||
|
|
OpDecorate %158 RelaxedPrecision
|
||
|
|
OpDecorate %159 RelaxedPrecision
|
||
|
|
OpDecorate %m33 RelaxedPrecision
|
||
|
|
OpDecorate %166 RelaxedPrecision
|
||
|
|
OpDecorate %174 RelaxedPrecision
|
||
|
|
OpDecorate %175 RelaxedPrecision
|
||
|
|
OpDecorate %177 RelaxedPrecision
|
||
|
|
OpDecorate %178 RelaxedPrecision
|
||
|
|
OpDecorate %181 RelaxedPrecision
|
||
|
|
OpDecorate %182 RelaxedPrecision
|
||
|
|
OpDecorate %189 RelaxedPrecision
|
||
|
|
OpDecorate %190 RelaxedPrecision
|
||
|
|
OpDecorate %191 RelaxedPrecision
|
||
|
|
OpDecorate %197 RelaxedPrecision
|
||
|
|
OpDecorate %199 RelaxedPrecision
|
||
|
|
OpDecorate %205 RelaxedPrecision
|
||
|
|
OpDecorate %206 RelaxedPrecision
|
||
|
|
OpDecorate %207 RelaxedPrecision
|
||
|
|
OpDecorate %208 RelaxedPrecision
|
||
|
|
OpDecorate %216 RelaxedPrecision
|
||
|
|
OpDecorate %218 RelaxedPrecision
|
||
|
|
OpDecorate %221 RelaxedPrecision
|
||
|
|
OpDecorate %226 RelaxedPrecision
|
||
|
|
OpDecorate %233 RelaxedPrecision
|
||
|
|
OpDecorate %234 RelaxedPrecision
|
||
|
|
OpDecorate %236 RelaxedPrecision
|
||
|
|
OpDecorate %237 RelaxedPrecision
|
||
|
|
OpDecorate %337 RelaxedPrecision
|
||
|
|
OpDecorate %340 RelaxedPrecision
|
||
|
|
OpDecorate %341 RelaxedPrecision
|
||
|
|
%bool = OpTypeBool
|
||
|
|
%_ptr_Input_bool = OpTypePointer Input %bool
|
||
|
|
%sk_Clockwise = OpVariable %_ptr_Input_bool Input
|
||
|
|
%float = OpTypeFloat 32
|
||
|
|
%v4float = OpTypeVector %float 4
|
||
|
|
%_ptr_Output_v4float = OpTypePointer Output %v4float
|
||
|
|
%sk_FragColor = OpVariable %_ptr_Output_v4float Output
|
||
|
|
%_UniformBuffer = OpTypeStruct %v4float %v4float
|
||
|
|
%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
|
||
|
|
%11 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
|
||
|
|
%void = OpTypeVoid
|
||
|
|
%16 = OpTypeFunction %void
|
||
|
|
%float_0 = OpConstant %float 0
|
||
|
|
%v2float = OpTypeVector %float 2
|
||
|
|
%20 = OpConstantComposite %v2float %float_0 %float_0
|
||
|
|
%_ptr_Function_v2float = OpTypePointer Function %v2float
|
||
|
|
%24 = OpTypeFunction %bool
|
||
|
|
%_ptr_Function_bool = OpTypePointer Function %bool
|
||
|
|
%true = OpConstantTrue %bool
|
||
|
|
%v3float = OpTypeVector %float 3
|
||
|
|
%mat2v3float = OpTypeMatrix %v3float 2
|
||
|
|
%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
|
||
|
|
%float_2 = OpConstant %float 2
|
||
|
|
%34 = OpConstantComposite %v3float %float_2 %float_0 %float_0
|
||
|
|
%35 = OpConstantComposite %v3float %float_0 %float_2 %float_0
|
||
|
|
%36 = OpConstantComposite %mat2v3float %34 %35
|
||
|
|
%false = OpConstantFalse %bool
|
||
|
|
%v3bool = OpTypeVector %bool 3
|
||
|
|
%mat2v4float = OpTypeMatrix %v4float 2
|
||
|
|
%_ptr_Function_mat2v4float = OpTypePointer Function %mat2v4float
|
||
|
|
%float_3 = OpConstant %float 3
|
||
|
|
%51 = OpConstantComposite %v4float %float_3 %float_0 %float_0 %float_0
|
||
|
|
%52 = OpConstantComposite %v4float %float_0 %float_3 %float_0 %float_0
|
||
|
|
%53 = OpConstantComposite %mat2v4float %51 %52
|
||
|
|
%v4bool = OpTypeVector %bool 4
|
||
|
|
%mat3v2float = OpTypeMatrix %v2float 3
|
||
|
|
%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
|
||
|
|
%float_4 = OpConstant %float 4
|
||
|
|
%67 = OpConstantComposite %v2float %float_4 %float_0
|
||
|
|
%68 = OpConstantComposite %v2float %float_0 %float_4
|
||
|
|
%69 = OpConstantComposite %mat3v2float %67 %68 %20
|
||
|
|
%v2bool = OpTypeVector %bool 2
|
||
|
|
%mat3v4float = OpTypeMatrix %v4float 3
|
||
|
|
%_ptr_Function_mat3v4float = OpTypePointer Function %mat3v4float
|
||
|
|
%float_5 = OpConstant %float 5
|
||
|
|
%86 = OpConstantComposite %v4float %float_5 %float_0 %float_0 %float_0
|
||
|
|
%87 = OpConstantComposite %v4float %float_0 %float_5 %float_0 %float_0
|
||
|
|
%88 = OpConstantComposite %v4float %float_0 %float_0 %float_5 %float_0
|
||
|
|
%89 = OpConstantComposite %mat3v4float %86 %87 %88
|
||
|
|
%mat4v2float = OpTypeMatrix %v2float 4
|
||
|
|
%_ptr_Function_mat4v2float = OpTypePointer Function %mat4v2float
|
||
|
|
%float_6 = OpConstant %float 6
|
||
|
|
%105 = OpConstantComposite %v2float %float_6 %float_0
|
||
|
|
%106 = OpConstantComposite %v2float %float_0 %float_6
|
||
|
|
%107 = OpConstantComposite %mat4v2float %105 %106 %20 %20
|
||
|
|
%mat4v3float = OpTypeMatrix %v3float 4
|
||
|
|
%_ptr_Function_mat4v3float = OpTypePointer Function %mat4v3float
|
||
|
|
%float_7 = OpConstant %float 7
|
||
|
|
%126 = OpConstantComposite %v3float %float_7 %float_0 %float_0
|
||
|
|
%127 = OpConstantComposite %v3float %float_0 %float_7 %float_0
|
||
|
|
%128 = OpConstantComposite %v3float %float_0 %float_0 %float_7
|
||
|
|
%129 = OpConstantComposite %v3float %float_0 %float_0 %float_0
|
||
|
|
%130 = OpConstantComposite %mat4v3float %126 %127 %128 %129
|
||
|
|
%mat2v2float = OpTypeMatrix %v2float 2
|
||
|
|
%_ptr_Function_mat2v2float = OpTypePointer Function %mat2v2float
|
||
|
|
%float_8 = OpConstant %float 8
|
||
|
|
%152 = OpConstantComposite %v2float %float_8 %float_0
|
||
|
|
%153 = OpConstantComposite %v2float %float_0 %float_8
|
||
|
|
%154 = OpConstantComposite %mat2v2float %152 %153
|
||
|
|
%mat3v3float = OpTypeMatrix %v3float 3
|
||
|
|
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
|
||
|
|
%float_35 = OpConstant %float 35
|
||
|
|
%170 = OpConstantComposite %v3float %float_35 %float_0 %float_0
|
||
|
|
%171 = OpConstantComposite %v3float %float_0 %float_35 %float_0
|
||
|
|
%172 = OpConstantComposite %v3float %float_0 %float_0 %float_35
|
||
|
|
%173 = OpConstantComposite %mat3v3float %170 %171 %172
|
||
|
|
%float_1 = OpConstant %float 1
|
||
|
|
%187 = OpConstantComposite %v3float %float_1 %float_1 %float_1
|
||
|
|
%188 = OpConstantComposite %mat2v3float %187 %187
|
||
|
|
%194 = OpConstantComposite %v3float %float_3 %float_1 %float_1
|
||
|
|
%195 = OpConstantComposite %v3float %float_1 %float_3 %float_1
|
||
|
|
%196 = OpConstantComposite %mat2v3float %194 %195
|
||
|
|
%203 = OpConstantComposite %v2float %float_2 %float_2
|
||
|
|
%204 = OpConstantComposite %mat3v2float %203 %203 %203
|
||
|
|
%float_n2 = OpConstant %float -2
|
||
|
|
%212 = OpConstantComposite %v2float %float_2 %float_n2
|
||
|
|
%213 = OpConstantComposite %v2float %float_n2 %float_2
|
||
|
|
%214 = OpConstantComposite %v2float %float_n2 %float_n2
|
||
|
|
%215 = OpConstantComposite %mat3v2float %212 %213 %214
|
||
|
|
%float_0_25 = OpConstant %float 0.25
|
||
|
|
%float_0_75 = OpConstant %float 0.75
|
||
|
|
%230 = OpConstantComposite %v4float %float_0_75 %float_0 %float_0 %float_0
|
||
|
|
%231 = OpConstantComposite %v4float %float_0 %float_0_75 %float_0 %float_0
|
||
|
|
%232 = OpConstantComposite %mat2v4float %230 %231
|
||
|
|
%241 = OpTypeFunction %v4float %_ptr_Function_v2float
|
||
|
|
%_ptr_Function_v4float = OpTypePointer Function %v4float
|
||
|
|
%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
|
||
|
|
%int = OpTypeInt 32 1
|
||
|
|
%int_0 = OpConstant %int 0
|
||
|
|
%int_1 = OpConstant %int 1
|
||
|
|
%_entrypoint_v = OpFunction %void None %16
|
||
|
|
%17 = OpLabel
|
||
|
|
%21 = OpVariable %_ptr_Function_v2float Function
|
||
|
|
OpStore %21 %20
|
||
|
|
%23 = OpFunctionCall %v4float %main %21
|
||
|
|
OpStore %sk_FragColor %23
|
||
|
|
OpReturn
|
||
|
|
OpFunctionEnd
|
||
|
|
%test_half_b = OpFunction %bool None %24
|
||
|
|
%25 = OpLabel
|
||
|
|
%ok = OpVariable %_ptr_Function_bool Function
|
||
|
|
%m23 = OpVariable %_ptr_Function_mat2v3float Function
|
||
|
|
%m24 = OpVariable %_ptr_Function_mat2v4float Function
|
||
|
|
%m32 = OpVariable %_ptr_Function_mat3v2float Function
|
||
|
|
%m34 = OpVariable %_ptr_Function_mat3v4float Function
|
||
|
|
%m42 = OpVariable %_ptr_Function_mat4v2float Function
|
||
|
|
%m43 = OpVariable %_ptr_Function_mat4v3float Function
|
||
|
|
%m22 = OpVariable %_ptr_Function_mat2v2float Function
|
||
|
|
%m33 = OpVariable %_ptr_Function_mat3v3float Function
|
||
|
|
OpStore %ok %true
|
||
|
|
OpStore %m23 %36
|
||
|
|
OpSelectionMerge %39 None
|
||
|
|
OpBranchConditional %true %38 %39
|
||
|
|
%38 = OpLabel
|
||
|
|
%41 = OpFOrdEqual %v3bool %34 %34
|
||
|
|
%42 = OpAll %bool %41
|
||
|
|
%43 = OpFOrdEqual %v3bool %35 %35
|
||
|
|
%44 = OpAll %bool %43
|
||
|
|
%45 = OpLogicalAnd %bool %42 %44
|
||
|
|
OpBranch %39
|
||
|
|
%39 = OpLabel
|
||
|
|
%46 = OpPhi %bool %false %25 %45 %38
|
||
|
|
OpStore %ok %46
|
||
|
|
OpStore %m24 %53
|
||
|
|
OpSelectionMerge %55 None
|
||
|
|
OpBranchConditional %46 %54 %55
|
||
|
|
%54 = OpLabel
|
||
|
|
%57 = OpFOrdEqual %v4bool %51 %51
|
||
|
|
%58 = OpAll %bool %57
|
||
|
|
%59 = OpFOrdEqual %v4bool %52 %52
|
||
|
|
%60 = OpAll %bool %59
|
||
|
|
%61 = OpLogicalAnd %bool %58 %60
|
||
|
|
OpBranch %55
|
||
|
|
%55 = OpLabel
|
||
|
|
%62 = OpPhi %bool %false %39 %61 %54
|
||
|
|
OpStore %ok %62
|
||
|
|
OpStore %m32 %69
|
||
|
|
OpSelectionMerge %71 None
|
||
|
|
OpBranchConditional %62 %70 %71
|
||
|
|
%70 = OpLabel
|
||
|
|
%73 = OpFOrdEqual %v2bool %67 %67
|
||
|
|
%74 = OpAll %bool %73
|
||
|
|
%75 = OpFOrdEqual %v2bool %68 %68
|
||
|
|
%76 = OpAll %bool %75
|
||
|
|
%77 = OpLogicalAnd %bool %74 %76
|
||
|
|
%78 = OpFOrdEqual %v2bool %20 %20
|
||
|
|
%79 = OpAll %bool %78
|
||
|
|
%80 = OpLogicalAnd %bool %77 %79
|
||
|
|
OpBranch %71
|
||
|
|
%71 = OpLabel
|
||
|
|
%81 = OpPhi %bool %false %55 %80 %70
|
||
|
|
OpStore %ok %81
|
||
|
|
OpStore %m34 %89
|
||
|
|
OpSelectionMerge %91 None
|
||
|
|
OpBranchConditional %81 %90 %91
|
||
|
|
%90 = OpLabel
|
||
|
|
%92 = OpFOrdEqual %v4bool %86 %86
|
||
|
|
%93 = OpAll %bool %92
|
||
|
|
%94 = OpFOrdEqual %v4bool %87 %87
|
||
|
|
%95 = OpAll %bool %94
|
||
|
|
%96 = OpLogicalAnd %bool %93 %95
|
||
|
|
%97 = OpFOrdEqual %v4bool %88 %88
|
||
|
|
%98 = OpAll %bool %97
|
||
|
|
%99 = OpLogicalAnd %bool %96 %98
|
||
|
|
OpBranch %91
|
||
|
|
%91 = OpLabel
|
||
|
|
%100 = OpPhi %bool %false %71 %99 %90
|
||
|
|
OpStore %ok %100
|
||
|
|
OpStore %m42 %107
|
||
|
|
OpSelectionMerge %109 None
|
||
|
|
OpBranchConditional %100 %108 %109
|
||
|
|
%108 = OpLabel
|
||
|
|
%110 = OpFOrdEqual %v2bool %105 %105
|
||
|
|
%111 = OpAll %bool %110
|
||
|
|
%112 = OpFOrdEqual %v2bool %106 %106
|
||
|
|
%113 = OpAll %bool %112
|
||
|
|
%114 = OpLogicalAnd %bool %111 %113
|
||
|
|
%115 = OpFOrdEqual %v2bool %20 %20
|
||
|
|
%116 = OpAll %bool %115
|
||
|
|
%117 = OpLogicalAnd %bool %114 %116
|
||
|
|
%118 = OpFOrdEqual %v2bool %20 %20
|
||
|
|
%119 = OpAll %bool %118
|
||
|
|
%120 = OpLogicalAnd %bool %117 %119
|
||
|
|
OpBranch %109
|
||
|
|
%109 = OpLabel
|
||
|
|
%121 = OpPhi %bool %false %91 %120 %108
|
||
|
|
OpStore %ok %121
|
||
|
|
OpStore %m43 %130
|
||
|
|
OpSelectionMerge %132 None
|
||
|
|
OpBranchConditional %121 %131 %132
|
||
|
|
%131 = OpLabel
|
||
|
|
%133 = OpFOrdEqual %v3bool %126 %126
|
||
|
|
%134 = OpAll %bool %133
|
||
|
|
%135 = OpFOrdEqual %v3bool %127 %127
|
||
|
|
%136 = OpAll %bool %135
|
||
|
|
%137 = OpLogicalAnd %bool %134 %136
|
||
|
|
%138 = OpFOrdEqual %v3bool %128 %128
|
||
|
|
%139 = OpAll %bool %138
|
||
|
|
%140 = OpLogicalAnd %bool %137 %139
|
||
|
|
%141 = OpFOrdEqual %v3bool %129 %129
|
||
|
|
%142 = OpAll %bool %141
|
||
|
|
%143 = OpLogicalAnd %bool %140 %142
|
||
|
|
OpBranch %132
|
||
|
|
%132 = OpLabel
|
||
|
|
%144 = OpPhi %bool %false %109 %143 %131
|
||
|
|
OpStore %ok %144
|
||
|
|
%148 = OpMatrixTimesMatrix %mat2v2float %69 %36
|
||
|
|
OpStore %m22 %148
|
||
|
|
OpSelectionMerge %150 None
|
||
|
|
OpBranchConditional %144 %149 %150
|
||
|
|
%149 = OpLabel
|
||
|
|
%155 = OpCompositeExtract %v2float %148 0
|
||
|
|
%156 = OpFOrdEqual %v2bool %155 %152
|
||
|
|
%157 = OpAll %bool %156
|
||
|
|
%158 = OpCompositeExtract %v2float %148 1
|
||
|
|
%159 = OpFOrdEqual %v2bool %158 %153
|
||
|
|
%160 = OpAll %bool %159
|
||
|
|
%161 = OpLogicalAnd %bool %157 %160
|
||
|
|
OpBranch %150
|
||
|
|
%150 = OpLabel
|
||
|
|
%162 = OpPhi %bool %false %132 %161 %149
|
||
|
|
OpStore %ok %162
|
||
|
|
%166 = OpMatrixTimesMatrix %mat3v3float %130 %89
|
||
|
|
OpStore %m33 %166
|
||
|
|
OpSelectionMerge %168 None
|
||
|
|
OpBranchConditional %162 %167 %168
|
||
|
|
%167 = OpLabel
|
||
|
|
%174 = OpCompositeExtract %v3float %166 0
|
||
|
|
%175 = OpFOrdEqual %v3bool %174 %170
|
||
|
|
%176 = OpAll %bool %175
|
||
|
|
%177 = OpCompositeExtract %v3float %166 1
|
||
|
|
%178 = OpFOrdEqual %v3bool %177 %171
|
||
|
|
%179 = OpAll %bool %178
|
||
|
|
%180 = OpLogicalAnd %bool %176 %179
|
||
|
|
%181 = OpCompositeExtract %v3float %166 2
|
||
|
|
%182 = OpFOrdEqual %v3bool %181 %172
|
||
|
|
%183 = OpAll %bool %182
|
||
|
|
%184 = OpLogicalAnd %bool %180 %183
|
||
|
|
OpBranch %168
|
||
|
|
%168 = OpLabel
|
||
|
|
%185 = OpPhi %bool %false %150 %184 %167
|
||
|
|
OpStore %ok %185
|
||
|
|
%189 = OpFAdd %v3float %34 %187
|
||
|
|
%190 = OpFAdd %v3float %35 %187
|
||
|
|
%191 = OpCompositeConstruct %mat2v3float %189 %190
|
||
|
|
OpStore %m23 %191
|
||
|
|
OpSelectionMerge %193 None
|
||
|
|
OpBranchConditional %185 %192 %193
|
||
|
|
%192 = OpLabel
|
||
|
|
%197 = OpFOrdEqual %v3bool %189 %194
|
||
|
|
%198 = OpAll %bool %197
|
||
|
|
%199 = OpFOrdEqual %v3bool %190 %195
|
||
|
|
%200 = OpAll %bool %199
|
||
|
|
%201 = OpLogicalAnd %bool %198 %200
|
||
|
|
OpBranch %193
|
||
|
|
%193 = OpLabel
|
||
|
|
%202 = OpPhi %bool %false %168 %201 %192
|
||
|
|
OpStore %ok %202
|
||
|
|
%205 = OpFSub %v2float %67 %203
|
||
|
|
%206 = OpFSub %v2float %68 %203
|
||
|
|
%207 = OpFSub %v2float %20 %203
|
||
|
|
%208 = OpCompositeConstruct %mat3v2float %205 %206 %207
|
||
|
|
OpStore %m32 %208
|
||
|
|
OpSelectionMerge %210 None
|
||
|
|
OpBranchConditional %202 %209 %210
|
||
|
|
%209 = OpLabel
|
||
|
|
%216 = OpFOrdEqual %v2bool %205 %212
|
||
|
|
%217 = OpAll %bool %216
|
||
|
|
%218 = OpFOrdEqual %v2bool %206 %213
|
||
|
|
%219 = OpAll %bool %218
|
||
|
|
%220 = OpLogicalAnd %bool %217 %219
|
||
|
|
%221 = OpFOrdEqual %v2bool %207 %214
|
||
|
|
%222 = OpAll %bool %221
|
||
|
|
%223 = OpLogicalAnd %bool %220 %222
|
||
|
|
OpBranch %210
|
||
|
|
%210 = OpLabel
|
||
|
|
%224 = OpPhi %bool %false %193 %223 %209
|
||
|
|
OpStore %ok %224
|
||
|
|
%226 = OpMatrixTimesScalar %mat2v4float %53 %float_0_25
|
||
|
|
OpStore %m24 %226
|
||
|
|
OpSelectionMerge %228 None
|
||
|
|
OpBranchConditional %224 %227 %228
|
||
|
|
%227 = OpLabel
|
||
|
|
%233 = OpCompositeExtract %v4float %226 0
|
||
|
|
%234 = OpFOrdEqual %v4bool %233 %230
|
||
|
|
%235 = OpAll %bool %234
|
||
|
|
%236 = OpCompositeExtract %v4float %226 1
|
||
|
|
%237 = OpFOrdEqual %v4bool %236 %231
|
||
|
|
%238 = OpAll %bool %237
|
||
|
|
%239 = OpLogicalAnd %bool %235 %238
|
||
|
|
OpBranch %228
|
||
|
|
%228 = OpLabel
|
||
|
|
%240 = OpPhi %bool %false %210 %239 %227
|
||
|
|
OpStore %ok %240
|
||
|
|
OpReturnValue %240
|
||
|
|
OpFunctionEnd
|
||
|
|
%main = OpFunction %v4float None %241
|
||
|
|
%242 = OpFunctionParameter %_ptr_Function_v2float
|
||
|
|
%243 = OpLabel
|
||
|
|
%_0_ok = OpVariable %_ptr_Function_bool Function
|
||
|
|
%_1_m23 = OpVariable %_ptr_Function_mat2v3float Function
|
||
|
|
%_2_m24 = OpVariable %_ptr_Function_mat2v4float Function
|
||
|
|
%_3_m32 = OpVariable %_ptr_Function_mat3v2float Function
|
||
|
|
%_7_m22 = OpVariable %_ptr_Function_mat2v2float Function
|
||
|
|
%328 = OpVariable %_ptr_Function_v4float Function
|
||
|
|
OpStore %_0_ok %true
|
||
|
|
OpStore %_1_m23 %36
|
||
|
|
OpSelectionMerge %247 None
|
||
|
|
OpBranchConditional %true %246 %247
|
||
|
|
%246 = OpLabel
|
||
|
|
%248 = OpFOrdEqual %v3bool %34 %34
|
||
|
|
%249 = OpAll %bool %248
|
||
|
|
%250 = OpFOrdEqual %v3bool %35 %35
|
||
|
|
%251 = OpAll %bool %250
|
||
|
|
%252 = OpLogicalAnd %bool %249 %251
|
||
|
|
OpBranch %247
|
||
|
|
%247 = OpLabel
|
||
|
|
%253 = OpPhi %bool %false %243 %252 %246
|
||
|
|
OpStore %_0_ok %253
|
||
|
|
OpStore %_2_m24 %53
|
||
|
|
OpSelectionMerge %256 None
|
||
|
|
OpBranchConditional %253 %255 %256
|
||
|
|
%255 = OpLabel
|
||
|
|
%257 = OpFOrdEqual %v4bool %51 %51
|
||
|
|
%258 = OpAll %bool %257
|
||
|
|
%259 = OpFOrdEqual %v4bool %52 %52
|
||
|
|
%260 = OpAll %bool %259
|
||
|
|
%261 = OpLogicalAnd %bool %258 %260
|
||
|
|
OpBranch %256
|
||
|
|
%256 = OpLabel
|
||
|
|
%262 = OpPhi %bool %false %247 %261 %255
|
||
|
|
OpStore %_0_ok %262
|
||
|
|
OpStore %_3_m32 %69
|
||
|
|
OpSelectionMerge %265 None
|
||
|
|
OpBranchConditional %262 %264 %265
|
||
|
|
%264 = OpLabel
|
||
|
|
%266 = OpFOrdEqual %v2bool %67 %67
|
||
|
|
%267 = OpAll %bool %266
|
||
|
|
%268 = OpFOrdEqual %v2bool %68 %68
|
||
|
|
%269 = OpAll %bool %268
|
||
|
|
%270 = OpLogicalAnd %bool %267 %269
|
||
|
|
%271 = OpFOrdEqual %v2bool %20 %20
|
||
|
|
%272 = OpAll %bool %271
|
||
|
|
%273 = OpLogicalAnd %bool %270 %272
|
||
|
|
OpBranch %265
|
||
|
|
%265 = OpLabel
|
||
|
|
%274 = OpPhi %bool %false %256 %273 %264
|
||
|
|
OpStore %_0_ok %274
|
||
|
|
%276 = OpMatrixTimesMatrix %mat2v2float %69 %36
|
||
|
|
OpStore %_7_m22 %276
|
||
|
|
OpSelectionMerge %278 None
|
||
|
|
OpBranchConditional %274 %277 %278
|
||
|
|
%277 = OpLabel
|
||
|
|
%279 = OpCompositeExtract %v2float %276 0
|
||
|
|
%280 = OpFOrdEqual %v2bool %279 %152
|
||
|
|
%281 = OpAll %bool %280
|
||
|
|
%282 = OpCompositeExtract %v2float %276 1
|
||
|
|
%283 = OpFOrdEqual %v2bool %282 %153
|
||
|
|
%284 = OpAll %bool %283
|
||
|
|
%285 = OpLogicalAnd %bool %281 %284
|
||
|
|
OpBranch %278
|
||
|
|
%278 = OpLabel
|
||
|
|
%286 = OpPhi %bool %false %265 %285 %277
|
||
|
|
OpStore %_0_ok %286
|
||
|
|
%287 = OpFAdd %v3float %34 %187
|
||
|
|
%288 = OpFAdd %v3float %35 %187
|
||
|
|
%289 = OpCompositeConstruct %mat2v3float %287 %288
|
||
|
|
OpStore %_1_m23 %289
|
||
|
|
OpSelectionMerge %291 None
|
||
|
|
OpBranchConditional %286 %290 %291
|
||
|
|
%290 = OpLabel
|
||
|
|
%292 = OpFOrdEqual %v3bool %287 %194
|
||
|
|
%293 = OpAll %bool %292
|
||
|
|
%294 = OpFOrdEqual %v3bool %288 %195
|
||
|
|
%295 = OpAll %bool %294
|
||
|
|
%296 = OpLogicalAnd %bool %293 %295
|
||
|
|
OpBranch %291
|
||
|
|
%291 = OpLabel
|
||
|
|
%297 = OpPhi %bool %false %278 %296 %290
|
||
|
|
OpStore %_0_ok %297
|
||
|
|
%298 = OpFSub %v2float %67 %203
|
||
|
|
%299 = OpFSub %v2float %68 %203
|
||
|
|
%300 = OpFSub %v2float %20 %203
|
||
|
|
%301 = OpCompositeConstruct %mat3v2float %298 %299 %300
|
||
|
|
OpStore %_3_m32 %301
|
||
|
|
OpSelectionMerge %303 None
|
||
|
|
OpBranchConditional %297 %302 %303
|
||
|
|
%302 = OpLabel
|
||
|
|
%304 = OpFOrdEqual %v2bool %298 %212
|
||
|
|
%305 = OpAll %bool %304
|
||
|
|
%306 = OpFOrdEqual %v2bool %299 %213
|
||
|
|
%307 = OpAll %bool %306
|
||
|
|
%308 = OpLogicalAnd %bool %305 %307
|
||
|
|
%309 = OpFOrdEqual %v2bool %300 %214
|
||
|
|
%310 = OpAll %bool %309
|
||
|
|
%311 = OpLogicalAnd %bool %308 %310
|
||
|
|
OpBranch %303
|
||
|
|
%303 = OpLabel
|
||
|
|
%312 = OpPhi %bool %false %291 %311 %302
|
||
|
|
OpStore %_0_ok %312
|
||
|
|
%313 = OpMatrixTimesScalar %mat2v4float %53 %float_0_25
|
||
|
|
OpStore %_2_m24 %313
|
||
|
|
OpSelectionMerge %315 None
|
||
|
|
OpBranchConditional %312 %314 %315
|
||
|
|
%314 = OpLabel
|
||
|
|
%316 = OpCompositeExtract %v4float %313 0
|
||
|
|
%317 = OpFOrdEqual %v4bool %316 %230
|
||
|
|
%318 = OpAll %bool %317
|
||
|
|
%319 = OpCompositeExtract %v4float %313 1
|
||
|
|
%320 = OpFOrdEqual %v4bool %319 %231
|
||
|
|
%321 = OpAll %bool %320
|
||
|
|
%322 = OpLogicalAnd %bool %318 %321
|
||
|
|
OpBranch %315
|
||
|
|
%315 = OpLabel
|
||
|
|
%323 = OpPhi %bool %false %303 %322 %314
|
||
|
|
OpStore %_0_ok %323
|
||
|
|
OpSelectionMerge %325 None
|
||
|
|
OpBranchConditional %323 %324 %325
|
||
|
|
%324 = OpLabel
|
||
|
|
%326 = OpFunctionCall %bool %test_half_b
|
||
|
|
OpBranch %325
|
||
|
|
%325 = OpLabel
|
||
|
|
%327 = OpPhi %bool %false %315 %326 %324
|
||
|
|
OpSelectionMerge %332 None
|
||
|
|
OpBranchConditional %327 %330 %331
|
||
|
|
%330 = OpLabel
|
||
|
|
%333 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0
|
||
|
|
%337 = OpLoad %v4float %333
|
||
|
|
OpStore %328 %337
|
||
|
|
OpBranch %332
|
||
|
|
%331 = OpLabel
|
||
|
|
%338 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1
|
||
|
|
%340 = OpLoad %v4float %338
|
||
|
|
OpStore %328 %340
|
||
|
|
OpBranch %332
|
||
|
|
%332 = OpLabel
|
||
|
|
%341 = OpLoad %v4float %328
|
||
|
|
OpReturnValue %341
|
||
|
|
OpFunctionEnd
|