2021-04-09 16:14:03 +00:00
|
|
|
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"
|
|
|
|
OpName %_entrypoint_v "_entrypoint_v"
|
|
|
|
OpName %test_half_b "test_half_b"
|
2021-05-14 18:38:01 +00:00
|
|
|
OpName %ok "ok"
|
2021-04-09 16:14:03 +00:00
|
|
|
OpName %m23 "m23"
|
|
|
|
OpName %m24 "m24"
|
|
|
|
OpName %m32 "m32"
|
|
|
|
OpName %m34 "m34"
|
|
|
|
OpName %m43 "m43"
|
|
|
|
OpName %m22 "m22"
|
|
|
|
OpName %m33 "m33"
|
|
|
|
OpName %main "main"
|
2021-05-14 18:38:01 +00:00
|
|
|
OpName %_0_ok "_0_ok"
|
|
|
|
OpName %_1_m23 "_1_m23"
|
|
|
|
OpName %_2_m24 "_2_m24"
|
|
|
|
OpName %_3_m32 "_3_m32"
|
|
|
|
OpName %_4_m34 "_4_m34"
|
|
|
|
OpName %_6_m43 "_6_m43"
|
|
|
|
OpName %_7_m22 "_7_m22"
|
|
|
|
OpName %_8_m33 "_8_m33"
|
2021-04-09 16:14:03 +00:00
|
|
|
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
|
|
|
|
OpDecorate %_UniformBuffer Block
|
|
|
|
OpDecorate %11 Binding 0
|
|
|
|
OpDecorate %11 DescriptorSet 0
|
|
|
|
OpDecorate %m23 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %34 RelaxedPrecision
|
|
|
|
OpDecorate %35 RelaxedPrecision
|
|
|
|
OpDecorate %36 RelaxedPrecision
|
2021-04-21 18:27:08 +00:00
|
|
|
OpDecorate %38 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %41 RelaxedPrecision
|
|
|
|
OpDecorate %42 RelaxedPrecision
|
|
|
|
OpDecorate %43 RelaxedPrecision
|
|
|
|
OpDecorate %44 RelaxedPrecision
|
|
|
|
OpDecorate %m24 RelaxedPrecision
|
|
|
|
OpDecorate %60 RelaxedPrecision
|
2021-04-09 16:14:03 +00:00
|
|
|
OpDecorate %61 RelaxedPrecision
|
|
|
|
OpDecorate %62 RelaxedPrecision
|
2021-04-21 18:27:08 +00:00
|
|
|
OpDecorate %63 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %66 RelaxedPrecision
|
|
|
|
OpDecorate %67 RelaxedPrecision
|
|
|
|
OpDecorate %68 RelaxedPrecision
|
|
|
|
OpDecorate %69 RelaxedPrecision
|
|
|
|
OpDecorate %m32 RelaxedPrecision
|
|
|
|
OpDecorate %85 RelaxedPrecision
|
|
|
|
OpDecorate %86 RelaxedPrecision
|
2021-04-09 16:14:03 +00:00
|
|
|
OpDecorate %87 RelaxedPrecision
|
|
|
|
OpDecorate %88 RelaxedPrecision
|
|
|
|
OpDecorate %89 RelaxedPrecision
|
2021-04-21 18:27:08 +00:00
|
|
|
OpDecorate %92 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %93 RelaxedPrecision
|
|
|
|
OpDecorate %94 RelaxedPrecision
|
|
|
|
OpDecorate %95 RelaxedPrecision
|
2021-04-09 16:14:03 +00:00
|
|
|
OpDecorate %96 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %m34 RelaxedPrecision
|
|
|
|
OpDecorate %117 RelaxedPrecision
|
|
|
|
OpDecorate %118 RelaxedPrecision
|
|
|
|
OpDecorate %119 RelaxedPrecision
|
|
|
|
OpDecorate %120 RelaxedPrecision
|
|
|
|
OpDecorate %121 RelaxedPrecision
|
|
|
|
OpDecorate %124 RelaxedPrecision
|
|
|
|
OpDecorate %125 RelaxedPrecision
|
|
|
|
OpDecorate %126 RelaxedPrecision
|
|
|
|
OpDecorate %127 RelaxedPrecision
|
|
|
|
OpDecorate %128 RelaxedPrecision
|
2021-05-14 21:53:03 +00:00
|
|
|
OpDecorate %m43 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %148 RelaxedPrecision
|
|
|
|
OpDecorate %149 RelaxedPrecision
|
|
|
|
OpDecorate %150 RelaxedPrecision
|
|
|
|
OpDecorate %151 RelaxedPrecision
|
|
|
|
OpDecorate %152 RelaxedPrecision
|
|
|
|
OpDecorate %153 RelaxedPrecision
|
|
|
|
OpDecorate %156 RelaxedPrecision
|
|
|
|
OpDecorate %157 RelaxedPrecision
|
|
|
|
OpDecorate %158 RelaxedPrecision
|
|
|
|
OpDecorate %159 RelaxedPrecision
|
|
|
|
OpDecorate %160 RelaxedPrecision
|
|
|
|
OpDecorate %161 RelaxedPrecision
|
2021-05-14 21:53:03 +00:00
|
|
|
OpDecorate %m22 RelaxedPrecision
|
|
|
|
OpDecorate %185 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %186 RelaxedPrecision
|
|
|
|
OpDecorate %187 RelaxedPrecision
|
|
|
|
OpDecorate %188 RelaxedPrecision
|
|
|
|
OpDecorate %191 RelaxedPrecision
|
2021-05-14 21:53:03 +00:00
|
|
|
OpDecorate %193 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %194 RelaxedPrecision
|
|
|
|
OpDecorate %195 RelaxedPrecision
|
|
|
|
OpDecorate %m33 RelaxedPrecision
|
2021-05-14 21:53:03 +00:00
|
|
|
OpDecorate %209 RelaxedPrecision
|
|
|
|
OpDecorate %210 RelaxedPrecision
|
|
|
|
OpDecorate %211 RelaxedPrecision
|
|
|
|
OpDecorate %212 RelaxedPrecision
|
|
|
|
OpDecorate %215 RelaxedPrecision
|
|
|
|
OpDecorate %217 RelaxedPrecision
|
|
|
|
OpDecorate %218 RelaxedPrecision
|
|
|
|
OpDecorate %219 RelaxedPrecision
|
|
|
|
OpDecorate %220 RelaxedPrecision
|
|
|
|
OpDecorate %236 RelaxedPrecision
|
|
|
|
OpDecorate %245 RelaxedPrecision
|
|
|
|
OpDecorate %266 RelaxedPrecision
|
2021-05-14 18:38:01 +00:00
|
|
|
OpDecorate %288 RelaxedPrecision
|
2021-05-14 21:53:03 +00:00
|
|
|
OpDecorate %316 RelaxedPrecision
|
|
|
|
OpDecorate %345 RelaxedPrecision
|
|
|
|
OpDecorate %378 RelaxedPrecision
|
|
|
|
OpDecorate %399 RelaxedPrecision
|
|
|
|
OpDecorate %422 RelaxedPrecision
|
|
|
|
OpDecorate %436 RelaxedPrecision
|
|
|
|
OpDecorate %439 RelaxedPrecision
|
|
|
|
OpDecorate %440 RelaxedPrecision
|
2021-04-09 16:14:03 +00:00
|
|
|
%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
|
|
|
|
%_ptr_Uniform__UniformBuffer = OpTypePointer Uniform %_UniformBuffer
|
|
|
|
%11 = OpVariable %_ptr_Uniform__UniformBuffer Uniform
|
|
|
|
%void = OpTypeVoid
|
|
|
|
%16 = OpTypeFunction %void
|
2021-04-21 18:27:08 +00:00
|
|
|
%v2float = OpTypeVector %float 2
|
|
|
|
%float_0 = OpConstant %float 0
|
|
|
|
%20 = OpConstantComposite %v2float %float_0 %float_0
|
|
|
|
%_ptr_Function_v2float = OpTypePointer Function %v2float
|
|
|
|
%24 = OpTypeFunction %bool
|
2021-05-14 18:38:01 +00:00
|
|
|
%_ptr_Function_bool = OpTypePointer Function %bool
|
|
|
|
%true = OpConstantTrue %bool
|
2021-04-09 16:14:03 +00:00
|
|
|
%v3float = OpTypeVector %float 3
|
|
|
|
%mat2v3float = OpTypeMatrix %v3float 2
|
|
|
|
%_ptr_Function_mat2v3float = OpTypePointer Function %mat2v3float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_2 = OpConstant %float 2
|
|
|
|
%false = OpConstantFalse %bool
|
|
|
|
%v3bool = OpTypeVector %bool 3
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat2v4float = OpTypeMatrix %v4float 2
|
|
|
|
%_ptr_Function_mat2v4float = OpTypePointer Function %mat2v4float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_3 = OpConstant %float 3
|
|
|
|
%v4bool = OpTypeVector %bool 4
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat3v2float = OpTypeMatrix %v2float 3
|
|
|
|
%_ptr_Function_mat3v2float = OpTypePointer Function %mat3v2float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_4 = OpConstant %float 4
|
|
|
|
%v2bool = OpTypeVector %bool 2
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat3v4float = OpTypeMatrix %v4float 3
|
|
|
|
%_ptr_Function_mat3v4float = OpTypePointer Function %mat3v4float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_5 = OpConstant %float 5
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat4v3float = OpTypeMatrix %v3float 4
|
|
|
|
%_ptr_Function_mat4v3float = OpTypePointer Function %mat4v3float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_7 = OpConstant %float 7
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat2v2float = OpTypeMatrix %v2float 2
|
|
|
|
%_ptr_Function_mat2v2float = OpTypePointer Function %mat2v2float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_8 = OpConstant %float 8
|
2021-04-09 16:14:03 +00:00
|
|
|
%mat3v3float = OpTypeMatrix %v3float 3
|
|
|
|
%_ptr_Function_mat3v3float = OpTypePointer Function %mat3v3float
|
2021-05-14 18:38:01 +00:00
|
|
|
%float_35 = OpConstant %float 35
|
2021-05-14 21:53:03 +00:00
|
|
|
%237 = OpTypeFunction %v4float %_ptr_Function_v2float
|
2021-04-09 16:14:03 +00:00
|
|
|
%_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
|
2021-04-21 18:27:08 +00:00
|
|
|
%21 = OpVariable %_ptr_Function_v2float Function
|
|
|
|
OpStore %21 %20
|
|
|
|
%23 = OpFunctionCall %v4float %main %21
|
|
|
|
OpStore %sk_FragColor %23
|
2021-04-09 16:14:03 +00:00
|
|
|
OpReturn
|
|
|
|
OpFunctionEnd
|
2021-04-21 18:27:08 +00:00
|
|
|
%test_half_b = OpFunction %bool None %24
|
|
|
|
%25 = OpLabel
|
2021-05-14 18:38:01 +00:00
|
|
|
%ok = OpVariable %_ptr_Function_bool Function
|
2021-04-09 16:14:03 +00:00
|
|
|
%m23 = OpVariable %_ptr_Function_mat2v3float Function
|
|
|
|
%m24 = OpVariable %_ptr_Function_mat2v4float Function
|
|
|
|
%m32 = OpVariable %_ptr_Function_mat3v2float Function
|
|
|
|
%m34 = OpVariable %_ptr_Function_mat3v4float Function
|
|
|
|
%m43 = OpVariable %_ptr_Function_mat4v3float Function
|
|
|
|
%m22 = OpVariable %_ptr_Function_mat2v2float Function
|
|
|
|
%m33 = OpVariable %_ptr_Function_mat3v3float Function
|
2021-05-14 18:38:01 +00:00
|
|
|
OpStore %ok %true
|
|
|
|
%35 = OpCompositeConstruct %v3float %float_2 %float_0 %float_0
|
|
|
|
%36 = OpCompositeConstruct %v3float %float_0 %float_2 %float_0
|
|
|
|
%34 = OpCompositeConstruct %mat2v3float %35 %36
|
|
|
|
OpStore %m23 %34
|
|
|
|
%38 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %40 None
|
|
|
|
OpBranchConditional %38 %39 %40
|
|
|
|
%39 = OpLabel
|
|
|
|
%41 = OpLoad %mat2v3float %m23
|
|
|
|
%43 = OpCompositeConstruct %v3float %float_2 %float_0 %float_0
|
|
|
|
%44 = OpCompositeConstruct %v3float %float_0 %float_2 %float_0
|
|
|
|
%42 = OpCompositeConstruct %mat2v3float %43 %44
|
|
|
|
%46 = OpCompositeExtract %v3float %41 0
|
|
|
|
%47 = OpCompositeExtract %v3float %42 0
|
|
|
|
%48 = OpFOrdEqual %v3bool %46 %47
|
|
|
|
%49 = OpAll %bool %48
|
|
|
|
%50 = OpCompositeExtract %v3float %41 1
|
|
|
|
%51 = OpCompositeExtract %v3float %42 1
|
|
|
|
%52 = OpFOrdEqual %v3bool %50 %51
|
|
|
|
%53 = OpAll %bool %52
|
|
|
|
%54 = OpLogicalAnd %bool %49 %53
|
|
|
|
OpBranch %40
|
|
|
|
%40 = OpLabel
|
|
|
|
%55 = OpPhi %bool %false %25 %54 %39
|
|
|
|
OpStore %ok %55
|
|
|
|
%61 = OpCompositeConstruct %v4float %float_3 %float_0 %float_0 %float_0
|
|
|
|
%62 = OpCompositeConstruct %v4float %float_0 %float_3 %float_0 %float_0
|
|
|
|
%60 = OpCompositeConstruct %mat2v4float %61 %62
|
|
|
|
OpStore %m24 %60
|
|
|
|
%63 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %65 None
|
|
|
|
OpBranchConditional %63 %64 %65
|
|
|
|
%64 = OpLabel
|
|
|
|
%66 = OpLoad %mat2v4float %m24
|
|
|
|
%68 = OpCompositeConstruct %v4float %float_3 %float_0 %float_0 %float_0
|
|
|
|
%69 = OpCompositeConstruct %v4float %float_0 %float_3 %float_0 %float_0
|
|
|
|
%67 = OpCompositeConstruct %mat2v4float %68 %69
|
|
|
|
%71 = OpCompositeExtract %v4float %66 0
|
|
|
|
%72 = OpCompositeExtract %v4float %67 0
|
|
|
|
%73 = OpFOrdEqual %v4bool %71 %72
|
|
|
|
%74 = OpAll %bool %73
|
|
|
|
%75 = OpCompositeExtract %v4float %66 1
|
|
|
|
%76 = OpCompositeExtract %v4float %67 1
|
|
|
|
%77 = OpFOrdEqual %v4bool %75 %76
|
|
|
|
%78 = OpAll %bool %77
|
|
|
|
%79 = OpLogicalAnd %bool %74 %78
|
|
|
|
OpBranch %65
|
|
|
|
%65 = OpLabel
|
|
|
|
%80 = OpPhi %bool %false %40 %79 %64
|
|
|
|
OpStore %ok %80
|
|
|
|
%86 = OpCompositeConstruct %v2float %float_4 %float_0
|
|
|
|
%87 = OpCompositeConstruct %v2float %float_0 %float_4
|
|
|
|
%88 = OpCompositeConstruct %v2float %float_0 %float_0
|
|
|
|
%85 = OpCompositeConstruct %mat3v2float %86 %87 %88
|
|
|
|
OpStore %m32 %85
|
|
|
|
%89 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %91 None
|
|
|
|
OpBranchConditional %89 %90 %91
|
|
|
|
%90 = OpLabel
|
|
|
|
%92 = OpLoad %mat3v2float %m32
|
|
|
|
%94 = OpCompositeConstruct %v2float %float_4 %float_0
|
|
|
|
%95 = OpCompositeConstruct %v2float %float_0 %float_4
|
|
|
|
%96 = OpCompositeConstruct %v2float %float_0 %float_0
|
|
|
|
%93 = OpCompositeConstruct %mat3v2float %94 %95 %96
|
|
|
|
%98 = OpCompositeExtract %v2float %92 0
|
|
|
|
%99 = OpCompositeExtract %v2float %93 0
|
|
|
|
%100 = OpFOrdEqual %v2bool %98 %99
|
|
|
|
%101 = OpAll %bool %100
|
|
|
|
%102 = OpCompositeExtract %v2float %92 1
|
|
|
|
%103 = OpCompositeExtract %v2float %93 1
|
|
|
|
%104 = OpFOrdEqual %v2bool %102 %103
|
|
|
|
%105 = OpAll %bool %104
|
|
|
|
%106 = OpLogicalAnd %bool %101 %105
|
|
|
|
%107 = OpCompositeExtract %v2float %92 2
|
|
|
|
%108 = OpCompositeExtract %v2float %93 2
|
|
|
|
%109 = OpFOrdEqual %v2bool %107 %108
|
|
|
|
%110 = OpAll %bool %109
|
|
|
|
%111 = OpLogicalAnd %bool %106 %110
|
|
|
|
OpBranch %91
|
|
|
|
%91 = OpLabel
|
|
|
|
%112 = OpPhi %bool %false %65 %111 %90
|
|
|
|
OpStore %ok %112
|
|
|
|
%118 = OpCompositeConstruct %v4float %float_5 %float_0 %float_0 %float_0
|
|
|
|
%119 = OpCompositeConstruct %v4float %float_0 %float_5 %float_0 %float_0
|
|
|
|
%120 = OpCompositeConstruct %v4float %float_0 %float_0 %float_5 %float_0
|
|
|
|
%117 = OpCompositeConstruct %mat3v4float %118 %119 %120
|
|
|
|
OpStore %m34 %117
|
|
|
|
%121 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %123 None
|
|
|
|
OpBranchConditional %121 %122 %123
|
|
|
|
%122 = OpLabel
|
|
|
|
%124 = OpLoad %mat3v4float %m34
|
|
|
|
%126 = OpCompositeConstruct %v4float %float_5 %float_0 %float_0 %float_0
|
|
|
|
%127 = OpCompositeConstruct %v4float %float_0 %float_5 %float_0 %float_0
|
|
|
|
%128 = OpCompositeConstruct %v4float %float_0 %float_0 %float_5 %float_0
|
|
|
|
%125 = OpCompositeConstruct %mat3v4float %126 %127 %128
|
|
|
|
%129 = OpCompositeExtract %v4float %124 0
|
|
|
|
%130 = OpCompositeExtract %v4float %125 0
|
|
|
|
%131 = OpFOrdEqual %v4bool %129 %130
|
|
|
|
%132 = OpAll %bool %131
|
|
|
|
%133 = OpCompositeExtract %v4float %124 1
|
|
|
|
%134 = OpCompositeExtract %v4float %125 1
|
|
|
|
%135 = OpFOrdEqual %v4bool %133 %134
|
|
|
|
%136 = OpAll %bool %135
|
|
|
|
%137 = OpLogicalAnd %bool %132 %136
|
|
|
|
%138 = OpCompositeExtract %v4float %124 2
|
|
|
|
%139 = OpCompositeExtract %v4float %125 2
|
|
|
|
%140 = OpFOrdEqual %v4bool %138 %139
|
|
|
|
%141 = OpAll %bool %140
|
|
|
|
%142 = OpLogicalAnd %bool %137 %141
|
|
|
|
OpBranch %123
|
|
|
|
%123 = OpLabel
|
|
|
|
%143 = OpPhi %bool %false %91 %142 %122
|
|
|
|
OpStore %ok %143
|
2021-05-14 21:53:03 +00:00
|
|
|
%149 = OpCompositeConstruct %v3float %float_7 %float_0 %float_0
|
|
|
|
%150 = OpCompositeConstruct %v3float %float_0 %float_7 %float_0
|
|
|
|
%151 = OpCompositeConstruct %v3float %float_0 %float_0 %float_7
|
|
|
|
%152 = OpCompositeConstruct %v3float %float_0 %float_0 %float_0
|
|
|
|
%148 = OpCompositeConstruct %mat4v3float %149 %150 %151 %152
|
|
|
|
OpStore %m43 %148
|
2021-05-14 18:38:01 +00:00
|
|
|
%153 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %155 None
|
|
|
|
OpBranchConditional %153 %154 %155
|
|
|
|
%154 = OpLabel
|
2021-05-14 21:53:03 +00:00
|
|
|
%156 = OpLoad %mat4v3float %m43
|
|
|
|
%158 = OpCompositeConstruct %v3float %float_7 %float_0 %float_0
|
|
|
|
%159 = OpCompositeConstruct %v3float %float_0 %float_7 %float_0
|
|
|
|
%160 = OpCompositeConstruct %v3float %float_0 %float_0 %float_7
|
|
|
|
%161 = OpCompositeConstruct %v3float %float_0 %float_0 %float_0
|
|
|
|
%157 = OpCompositeConstruct %mat4v3float %158 %159 %160 %161
|
|
|
|
%162 = OpCompositeExtract %v3float %156 0
|
|
|
|
%163 = OpCompositeExtract %v3float %157 0
|
|
|
|
%164 = OpFOrdEqual %v3bool %162 %163
|
2021-05-14 18:38:01 +00:00
|
|
|
%165 = OpAll %bool %164
|
2021-05-14 21:53:03 +00:00
|
|
|
%166 = OpCompositeExtract %v3float %156 1
|
|
|
|
%167 = OpCompositeExtract %v3float %157 1
|
|
|
|
%168 = OpFOrdEqual %v3bool %166 %167
|
2021-05-14 18:38:01 +00:00
|
|
|
%169 = OpAll %bool %168
|
|
|
|
%170 = OpLogicalAnd %bool %165 %169
|
2021-05-14 21:53:03 +00:00
|
|
|
%171 = OpCompositeExtract %v3float %156 2
|
|
|
|
%172 = OpCompositeExtract %v3float %157 2
|
|
|
|
%173 = OpFOrdEqual %v3bool %171 %172
|
2021-05-14 18:38:01 +00:00
|
|
|
%174 = OpAll %bool %173
|
|
|
|
%175 = OpLogicalAnd %bool %170 %174
|
2021-05-14 21:53:03 +00:00
|
|
|
%176 = OpCompositeExtract %v3float %156 3
|
|
|
|
%177 = OpCompositeExtract %v3float %157 3
|
|
|
|
%178 = OpFOrdEqual %v3bool %176 %177
|
2021-05-14 18:38:01 +00:00
|
|
|
%179 = OpAll %bool %178
|
|
|
|
%180 = OpLogicalAnd %bool %175 %179
|
|
|
|
OpBranch %155
|
|
|
|
%155 = OpLabel
|
|
|
|
%181 = OpPhi %bool %false %123 %180 %154
|
|
|
|
OpStore %ok %181
|
2021-05-14 21:53:03 +00:00
|
|
|
%185 = OpLoad %mat3v2float %m32
|
|
|
|
%186 = OpLoad %mat2v3float %m23
|
|
|
|
%187 = OpMatrixTimesMatrix %mat2v2float %185 %186
|
|
|
|
OpStore %m22 %187
|
|
|
|
%188 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %190 None
|
|
|
|
OpBranchConditional %188 %189 %190
|
|
|
|
%189 = OpLabel
|
|
|
|
%191 = OpLoad %mat2v2float %m22
|
|
|
|
%194 = OpCompositeConstruct %v2float %float_8 %float_0
|
|
|
|
%195 = OpCompositeConstruct %v2float %float_0 %float_8
|
|
|
|
%193 = OpCompositeConstruct %mat2v2float %194 %195
|
|
|
|
%196 = OpCompositeExtract %v2float %191 0
|
|
|
|
%197 = OpCompositeExtract %v2float %193 0
|
|
|
|
%198 = OpFOrdEqual %v2bool %196 %197
|
|
|
|
%199 = OpAll %bool %198
|
|
|
|
%200 = OpCompositeExtract %v2float %191 1
|
|
|
|
%201 = OpCompositeExtract %v2float %193 1
|
|
|
|
%202 = OpFOrdEqual %v2bool %200 %201
|
2021-05-14 18:38:01 +00:00
|
|
|
%203 = OpAll %bool %202
|
2021-05-14 21:53:03 +00:00
|
|
|
%204 = OpLogicalAnd %bool %199 %203
|
|
|
|
OpBranch %190
|
|
|
|
%190 = OpLabel
|
|
|
|
%205 = OpPhi %bool %false %155 %204 %189
|
|
|
|
OpStore %ok %205
|
|
|
|
%209 = OpLoad %mat4v3float %m43
|
|
|
|
%210 = OpLoad %mat3v4float %m34
|
|
|
|
%211 = OpMatrixTimesMatrix %mat3v3float %209 %210
|
|
|
|
OpStore %m33 %211
|
|
|
|
%212 = OpLoad %bool %ok
|
|
|
|
OpSelectionMerge %214 None
|
|
|
|
OpBranchConditional %212 %213 %214
|
|
|
|
%213 = OpLabel
|
|
|
|
%215 = OpLoad %mat3v3float %m33
|
|
|
|
%218 = OpCompositeConstruct %v3float %float_35 %float_0 %float_0
|
|
|
|
%219 = OpCompositeConstruct %v3float %float_0 %float_35 %float_0
|
|
|
|
%220 = OpCompositeConstruct %v3float %float_0 %float_0 %float_35
|
|
|
|
%217 = OpCompositeConstruct %mat3v3float %218 %219 %220
|
|
|
|
%221 = OpCompositeExtract %v3float %215 0
|
|
|
|
%222 = OpCompositeExtract %v3float %217 0
|
|
|
|
%223 = OpFOrdEqual %v3bool %221 %222
|
|
|
|
%224 = OpAll %bool %223
|
|
|
|
%225 = OpCompositeExtract %v3float %215 1
|
|
|
|
%226 = OpCompositeExtract %v3float %217 1
|
|
|
|
%227 = OpFOrdEqual %v3bool %225 %226
|
|
|
|
%228 = OpAll %bool %227
|
|
|
|
%229 = OpLogicalAnd %bool %224 %228
|
|
|
|
%230 = OpCompositeExtract %v3float %215 2
|
|
|
|
%231 = OpCompositeExtract %v3float %217 2
|
|
|
|
%232 = OpFOrdEqual %v3bool %230 %231
|
|
|
|
%233 = OpAll %bool %232
|
|
|
|
%234 = OpLogicalAnd %bool %229 %233
|
|
|
|
OpBranch %214
|
|
|
|
%214 = OpLabel
|
|
|
|
%235 = OpPhi %bool %false %190 %234 %213
|
|
|
|
OpStore %ok %235
|
|
|
|
%236 = OpLoad %bool %ok
|
|
|
|
OpReturnValue %236
|
2021-04-09 16:14:03 +00:00
|
|
|
OpFunctionEnd
|
2021-05-14 21:53:03 +00:00
|
|
|
%main = OpFunction %v4float None %237
|
|
|
|
%238 = OpFunctionParameter %_ptr_Function_v2float
|
|
|
|
%239 = OpLabel
|
2021-05-14 18:38:01 +00:00
|
|
|
%_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
|
|
|
|
%_4_m34 = OpVariable %_ptr_Function_mat3v4float Function
|
|
|
|
%_6_m43 = OpVariable %_ptr_Function_mat4v3float Function
|
|
|
|
%_7_m22 = OpVariable %_ptr_Function_mat2v2float Function
|
|
|
|
%_8_m33 = OpVariable %_ptr_Function_mat3v3float Function
|
2021-05-14 21:53:03 +00:00
|
|
|
%427 = OpVariable %_ptr_Function_v4float Function
|
2021-05-14 18:38:01 +00:00
|
|
|
OpStore %_0_ok %true
|
2021-05-14 21:53:03 +00:00
|
|
|
%243 = OpCompositeConstruct %v3float %float_2 %float_0 %float_0
|
|
|
|
%244 = OpCompositeConstruct %v3float %float_0 %float_2 %float_0
|
|
|
|
%242 = OpCompositeConstruct %mat2v3float %243 %244
|
|
|
|
OpStore %_1_m23 %242
|
|
|
|
%245 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %247 None
|
|
|
|
OpBranchConditional %245 %246 %247
|
|
|
|
%246 = OpLabel
|
|
|
|
%248 = OpLoad %mat2v3float %_1_m23
|
|
|
|
%250 = OpCompositeConstruct %v3float %float_2 %float_0 %float_0
|
|
|
|
%251 = OpCompositeConstruct %v3float %float_0 %float_2 %float_0
|
|
|
|
%249 = OpCompositeConstruct %mat2v3float %250 %251
|
|
|
|
%252 = OpCompositeExtract %v3float %248 0
|
|
|
|
%253 = OpCompositeExtract %v3float %249 0
|
|
|
|
%254 = OpFOrdEqual %v3bool %252 %253
|
|
|
|
%255 = OpAll %bool %254
|
|
|
|
%256 = OpCompositeExtract %v3float %248 1
|
|
|
|
%257 = OpCompositeExtract %v3float %249 1
|
|
|
|
%258 = OpFOrdEqual %v3bool %256 %257
|
|
|
|
%259 = OpAll %bool %258
|
|
|
|
%260 = OpLogicalAnd %bool %255 %259
|
|
|
|
OpBranch %247
|
|
|
|
%247 = OpLabel
|
|
|
|
%261 = OpPhi %bool %false %239 %260 %246
|
|
|
|
OpStore %_0_ok %261
|
|
|
|
%264 = OpCompositeConstruct %v4float %float_3 %float_0 %float_0 %float_0
|
|
|
|
%265 = OpCompositeConstruct %v4float %float_0 %float_3 %float_0 %float_0
|
|
|
|
%263 = OpCompositeConstruct %mat2v4float %264 %265
|
|
|
|
OpStore %_2_m24 %263
|
|
|
|
%266 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %268 None
|
|
|
|
OpBranchConditional %266 %267 %268
|
|
|
|
%267 = OpLabel
|
|
|
|
%269 = OpLoad %mat2v4float %_2_m24
|
|
|
|
%271 = OpCompositeConstruct %v4float %float_3 %float_0 %float_0 %float_0
|
|
|
|
%272 = OpCompositeConstruct %v4float %float_0 %float_3 %float_0 %float_0
|
|
|
|
%270 = OpCompositeConstruct %mat2v4float %271 %272
|
|
|
|
%273 = OpCompositeExtract %v4float %269 0
|
|
|
|
%274 = OpCompositeExtract %v4float %270 0
|
|
|
|
%275 = OpFOrdEqual %v4bool %273 %274
|
|
|
|
%276 = OpAll %bool %275
|
|
|
|
%277 = OpCompositeExtract %v4float %269 1
|
|
|
|
%278 = OpCompositeExtract %v4float %270 1
|
|
|
|
%279 = OpFOrdEqual %v4bool %277 %278
|
|
|
|
%280 = OpAll %bool %279
|
|
|
|
%281 = OpLogicalAnd %bool %276 %280
|
|
|
|
OpBranch %268
|
|
|
|
%268 = OpLabel
|
|
|
|
%282 = OpPhi %bool %false %247 %281 %267
|
|
|
|
OpStore %_0_ok %282
|
|
|
|
%285 = OpCompositeConstruct %v2float %float_4 %float_0
|
|
|
|
%286 = OpCompositeConstruct %v2float %float_0 %float_4
|
|
|
|
%287 = OpCompositeConstruct %v2float %float_0 %float_0
|
|
|
|
%284 = OpCompositeConstruct %mat3v2float %285 %286 %287
|
|
|
|
OpStore %_3_m32 %284
|
|
|
|
%288 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %290 None
|
|
|
|
OpBranchConditional %288 %289 %290
|
|
|
|
%289 = OpLabel
|
|
|
|
%291 = OpLoad %mat3v2float %_3_m32
|
|
|
|
%293 = OpCompositeConstruct %v2float %float_4 %float_0
|
|
|
|
%294 = OpCompositeConstruct %v2float %float_0 %float_4
|
|
|
|
%295 = OpCompositeConstruct %v2float %float_0 %float_0
|
|
|
|
%292 = OpCompositeConstruct %mat3v2float %293 %294 %295
|
|
|
|
%296 = OpCompositeExtract %v2float %291 0
|
|
|
|
%297 = OpCompositeExtract %v2float %292 0
|
|
|
|
%298 = OpFOrdEqual %v2bool %296 %297
|
|
|
|
%299 = OpAll %bool %298
|
|
|
|
%300 = OpCompositeExtract %v2float %291 1
|
|
|
|
%301 = OpCompositeExtract %v2float %292 1
|
|
|
|
%302 = OpFOrdEqual %v2bool %300 %301
|
|
|
|
%303 = OpAll %bool %302
|
|
|
|
%304 = OpLogicalAnd %bool %299 %303
|
|
|
|
%305 = OpCompositeExtract %v2float %291 2
|
|
|
|
%306 = OpCompositeExtract %v2float %292 2
|
|
|
|
%307 = OpFOrdEqual %v2bool %305 %306
|
|
|
|
%308 = OpAll %bool %307
|
|
|
|
%309 = OpLogicalAnd %bool %304 %308
|
|
|
|
OpBranch %290
|
|
|
|
%290 = OpLabel
|
|
|
|
%310 = OpPhi %bool %false %268 %309 %289
|
|
|
|
OpStore %_0_ok %310
|
|
|
|
%313 = OpCompositeConstruct %v4float %float_5 %float_0 %float_0 %float_0
|
|
|
|
%314 = OpCompositeConstruct %v4float %float_0 %float_5 %float_0 %float_0
|
|
|
|
%315 = OpCompositeConstruct %v4float %float_0 %float_0 %float_5 %float_0
|
|
|
|
%312 = OpCompositeConstruct %mat3v4float %313 %314 %315
|
|
|
|
OpStore %_4_m34 %312
|
|
|
|
%316 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %318 None
|
|
|
|
OpBranchConditional %316 %317 %318
|
|
|
|
%317 = OpLabel
|
|
|
|
%319 = OpLoad %mat3v4float %_4_m34
|
|
|
|
%321 = OpCompositeConstruct %v4float %float_5 %float_0 %float_0 %float_0
|
|
|
|
%322 = OpCompositeConstruct %v4float %float_0 %float_5 %float_0 %float_0
|
|
|
|
%323 = OpCompositeConstruct %v4float %float_0 %float_0 %float_5 %float_0
|
|
|
|
%320 = OpCompositeConstruct %mat3v4float %321 %322 %323
|
|
|
|
%324 = OpCompositeExtract %v4float %319 0
|
|
|
|
%325 = OpCompositeExtract %v4float %320 0
|
|
|
|
%326 = OpFOrdEqual %v4bool %324 %325
|
|
|
|
%327 = OpAll %bool %326
|
|
|
|
%328 = OpCompositeExtract %v4float %319 1
|
|
|
|
%329 = OpCompositeExtract %v4float %320 1
|
|
|
|
%330 = OpFOrdEqual %v4bool %328 %329
|
|
|
|
%331 = OpAll %bool %330
|
|
|
|
%332 = OpLogicalAnd %bool %327 %331
|
|
|
|
%333 = OpCompositeExtract %v4float %319 2
|
|
|
|
%334 = OpCompositeExtract %v4float %320 2
|
|
|
|
%335 = OpFOrdEqual %v4bool %333 %334
|
|
|
|
%336 = OpAll %bool %335
|
|
|
|
%337 = OpLogicalAnd %bool %332 %336
|
|
|
|
OpBranch %318
|
|
|
|
%318 = OpLabel
|
|
|
|
%338 = OpPhi %bool %false %290 %337 %317
|
|
|
|
OpStore %_0_ok %338
|
|
|
|
%341 = OpCompositeConstruct %v3float %float_7 %float_0 %float_0
|
|
|
|
%342 = OpCompositeConstruct %v3float %float_0 %float_7 %float_0
|
|
|
|
%343 = OpCompositeConstruct %v3float %float_0 %float_0 %float_7
|
|
|
|
%344 = OpCompositeConstruct %v3float %float_0 %float_0 %float_0
|
|
|
|
%340 = OpCompositeConstruct %mat4v3float %341 %342 %343 %344
|
|
|
|
OpStore %_6_m43 %340
|
|
|
|
%345 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %347 None
|
|
|
|
OpBranchConditional %345 %346 %347
|
|
|
|
%346 = OpLabel
|
|
|
|
%348 = OpLoad %mat4v3float %_6_m43
|
|
|
|
%350 = OpCompositeConstruct %v3float %float_7 %float_0 %float_0
|
|
|
|
%351 = OpCompositeConstruct %v3float %float_0 %float_7 %float_0
|
|
|
|
%352 = OpCompositeConstruct %v3float %float_0 %float_0 %float_7
|
|
|
|
%353 = OpCompositeConstruct %v3float %float_0 %float_0 %float_0
|
|
|
|
%349 = OpCompositeConstruct %mat4v3float %350 %351 %352 %353
|
|
|
|
%354 = OpCompositeExtract %v3float %348 0
|
|
|
|
%355 = OpCompositeExtract %v3float %349 0
|
|
|
|
%356 = OpFOrdEqual %v3bool %354 %355
|
|
|
|
%357 = OpAll %bool %356
|
|
|
|
%358 = OpCompositeExtract %v3float %348 1
|
|
|
|
%359 = OpCompositeExtract %v3float %349 1
|
|
|
|
%360 = OpFOrdEqual %v3bool %358 %359
|
|
|
|
%361 = OpAll %bool %360
|
|
|
|
%362 = OpLogicalAnd %bool %357 %361
|
|
|
|
%363 = OpCompositeExtract %v3float %348 2
|
|
|
|
%364 = OpCompositeExtract %v3float %349 2
|
|
|
|
%365 = OpFOrdEqual %v3bool %363 %364
|
|
|
|
%366 = OpAll %bool %365
|
|
|
|
%367 = OpLogicalAnd %bool %362 %366
|
|
|
|
%368 = OpCompositeExtract %v3float %348 3
|
|
|
|
%369 = OpCompositeExtract %v3float %349 3
|
|
|
|
%370 = OpFOrdEqual %v3bool %368 %369
|
|
|
|
%371 = OpAll %bool %370
|
|
|
|
%372 = OpLogicalAnd %bool %367 %371
|
|
|
|
OpBranch %347
|
|
|
|
%347 = OpLabel
|
|
|
|
%373 = OpPhi %bool %false %318 %372 %346
|
|
|
|
OpStore %_0_ok %373
|
|
|
|
%375 = OpLoad %mat3v2float %_3_m32
|
|
|
|
%376 = OpLoad %mat2v3float %_1_m23
|
|
|
|
%377 = OpMatrixTimesMatrix %mat2v2float %375 %376
|
|
|
|
OpStore %_7_m22 %377
|
|
|
|
%378 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %380 None
|
|
|
|
OpBranchConditional %378 %379 %380
|
|
|
|
%379 = OpLabel
|
|
|
|
%381 = OpLoad %mat2v2float %_7_m22
|
|
|
|
%383 = OpCompositeConstruct %v2float %float_8 %float_0
|
|
|
|
%384 = OpCompositeConstruct %v2float %float_0 %float_8
|
|
|
|
%382 = OpCompositeConstruct %mat2v2float %383 %384
|
|
|
|
%385 = OpCompositeExtract %v2float %381 0
|
|
|
|
%386 = OpCompositeExtract %v2float %382 0
|
|
|
|
%387 = OpFOrdEqual %v2bool %385 %386
|
|
|
|
%388 = OpAll %bool %387
|
|
|
|
%389 = OpCompositeExtract %v2float %381 1
|
|
|
|
%390 = OpCompositeExtract %v2float %382 1
|
|
|
|
%391 = OpFOrdEqual %v2bool %389 %390
|
|
|
|
%392 = OpAll %bool %391
|
|
|
|
%393 = OpLogicalAnd %bool %388 %392
|
|
|
|
OpBranch %380
|
|
|
|
%380 = OpLabel
|
|
|
|
%394 = OpPhi %bool %false %347 %393 %379
|
|
|
|
OpStore %_0_ok %394
|
|
|
|
%396 = OpLoad %mat4v3float %_6_m43
|
|
|
|
%397 = OpLoad %mat3v4float %_4_m34
|
|
|
|
%398 = OpMatrixTimesMatrix %mat3v3float %396 %397
|
|
|
|
OpStore %_8_m33 %398
|
|
|
|
%399 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %401 None
|
|
|
|
OpBranchConditional %399 %400 %401
|
|
|
|
%400 = OpLabel
|
|
|
|
%402 = OpLoad %mat3v3float %_8_m33
|
|
|
|
%404 = OpCompositeConstruct %v3float %float_35 %float_0 %float_0
|
|
|
|
%405 = OpCompositeConstruct %v3float %float_0 %float_35 %float_0
|
|
|
|
%406 = OpCompositeConstruct %v3float %float_0 %float_0 %float_35
|
|
|
|
%403 = OpCompositeConstruct %mat3v3float %404 %405 %406
|
|
|
|
%407 = OpCompositeExtract %v3float %402 0
|
|
|
|
%408 = OpCompositeExtract %v3float %403 0
|
|
|
|
%409 = OpFOrdEqual %v3bool %407 %408
|
2021-05-14 18:38:01 +00:00
|
|
|
%410 = OpAll %bool %409
|
2021-05-14 21:53:03 +00:00
|
|
|
%411 = OpCompositeExtract %v3float %402 1
|
|
|
|
%412 = OpCompositeExtract %v3float %403 1
|
|
|
|
%413 = OpFOrdEqual %v3bool %411 %412
|
|
|
|
%414 = OpAll %bool %413
|
|
|
|
%415 = OpLogicalAnd %bool %410 %414
|
|
|
|
%416 = OpCompositeExtract %v3float %402 2
|
|
|
|
%417 = OpCompositeExtract %v3float %403 2
|
|
|
|
%418 = OpFOrdEqual %v3bool %416 %417
|
|
|
|
%419 = OpAll %bool %418
|
|
|
|
%420 = OpLogicalAnd %bool %415 %419
|
|
|
|
OpBranch %401
|
|
|
|
%401 = OpLabel
|
|
|
|
%421 = OpPhi %bool %false %380 %420 %400
|
|
|
|
OpStore %_0_ok %421
|
|
|
|
%422 = OpLoad %bool %_0_ok
|
|
|
|
OpSelectionMerge %424 None
|
|
|
|
OpBranchConditional %422 %423 %424
|
|
|
|
%423 = OpLabel
|
|
|
|
%425 = OpFunctionCall %bool %test_half_b
|
|
|
|
OpBranch %424
|
|
|
|
%424 = OpLabel
|
|
|
|
%426 = OpPhi %bool %false %401 %425 %423
|
|
|
|
OpSelectionMerge %431 None
|
|
|
|
OpBranchConditional %426 %429 %430
|
|
|
|
%429 = OpLabel
|
|
|
|
%432 = OpAccessChain %_ptr_Uniform_v4float %11 %int_0
|
|
|
|
%436 = OpLoad %v4float %432
|
|
|
|
OpStore %427 %436
|
|
|
|
OpBranch %431
|
|
|
|
%430 = OpLabel
|
|
|
|
%437 = OpAccessChain %_ptr_Uniform_v4float %11 %int_1
|
|
|
|
%439 = OpLoad %v4float %437
|
|
|
|
OpStore %427 %439
|
|
|
|
OpBranch %431
|
|
|
|
%431 = OpLabel
|
|
|
|
%440 = OpLoad %v4float %427
|
|
|
|
OpReturnValue %440
|
2021-04-09 16:14:03 +00:00
|
|
|
OpFunctionEnd
|