1; SPIR-V 2; Version: 1.0 3; Generator: Google spiregg; 0 4; Bound: 3005 5; Schema: 0 6 OpCapability Shader 7 OpCapability Geometry 8 OpExtension "SPV_GOOGLE_hlsl_functionality1" 9 %1 = OpExtInstImport "GLSL.std.450" 10 OpMemoryModel Logical GLSL450 11 OpEntryPoint Fragment %MainPS "main" %in_var_TEXCOORD0 %gl_FragCoord %gl_Layer %out_var_SV_Target0 12 OpExecutionMode %MainPS OriginUpperLeft 13 OpSource HLSL 600 14 OpName %type__Globals "type.$Globals" 15 OpMemberName %type__Globals 0 "MappingPolynomial" 16 OpMemberName %type__Globals 1 "InverseGamma" 17 OpMemberName %type__Globals 2 "ColorMatrixR_ColorCurveCd1" 18 OpMemberName %type__Globals 3 "ColorMatrixG_ColorCurveCd3Cm3" 19 OpMemberName %type__Globals 4 "ColorMatrixB_ColorCurveCm2" 20 OpMemberName %type__Globals 5 "ColorCurve_Cm0Cd0_Cd2_Ch0Cm1_Ch3" 21 OpMemberName %type__Globals 6 "ColorCurve_Ch1_Ch2" 22 OpMemberName %type__Globals 7 "ColorShadow_Luma" 23 OpMemberName %type__Globals 8 "ColorShadow_Tint1" 24 OpMemberName %type__Globals 9 "ColorShadow_Tint2" 25 OpMemberName %type__Globals 10 "FilmSlope" 26 OpMemberName %type__Globals 11 "FilmToe" 27 OpMemberName %type__Globals 12 "FilmShoulder" 28 OpMemberName %type__Globals 13 "FilmBlackClip" 29 OpMemberName %type__Globals 14 "FilmWhiteClip" 30 OpMemberName %type__Globals 15 "ColorScale" 31 OpMemberName %type__Globals 16 "OverlayColor" 32 OpMemberName %type__Globals 17 "WhiteTemp" 33 OpMemberName %type__Globals 18 "WhiteTint" 34 OpMemberName %type__Globals 19 "ColorSaturation" 35 OpMemberName %type__Globals 20 "ColorContrast" 36 OpMemberName %type__Globals 21 "ColorGamma" 37 OpMemberName %type__Globals 22 "ColorGain" 38 OpMemberName %type__Globals 23 "ColorOffset" 39 OpMemberName %type__Globals 24 "ColorSaturationShadows" 40 OpMemberName %type__Globals 25 "ColorContrastShadows" 41 OpMemberName %type__Globals 26 "ColorGammaShadows" 42 OpMemberName %type__Globals 27 "ColorGainShadows" 43 OpMemberName %type__Globals 28 "ColorOffsetShadows" 44 OpMemberName %type__Globals 29 "ColorSaturationMidtones" 45 OpMemberName %type__Globals 30 "ColorContrastMidtones" 46 OpMemberName %type__Globals 31 "ColorGammaMidtones" 47 OpMemberName %type__Globals 32 "ColorGainMidtones" 48 OpMemberName %type__Globals 33 "ColorOffsetMidtones" 49 OpMemberName %type__Globals 34 "ColorSaturationHighlights" 50 OpMemberName %type__Globals 35 "ColorContrastHighlights" 51 OpMemberName %type__Globals 36 "ColorGammaHighlights" 52 OpMemberName %type__Globals 37 "ColorGainHighlights" 53 OpMemberName %type__Globals 38 "ColorOffsetHighlights" 54 OpMemberName %type__Globals 39 "ColorCorrectionShadowsMax" 55 OpMemberName %type__Globals 40 "ColorCorrectionHighlightsMin" 56 OpMemberName %type__Globals 41 "OutputDevice" 57 OpMemberName %type__Globals 42 "OutputGamut" 58 OpMemberName %type__Globals 43 "BlueCorrection" 59 OpMemberName %type__Globals 44 "ExpandGamut" 60 OpName %_Globals "$Globals" 61 OpName %in_var_TEXCOORD0 "in.var.TEXCOORD0" 62 OpName %out_var_SV_Target0 "out.var.SV_Target0" 63 OpName %MainPS "MainPS" 64 OpDecorateString %in_var_TEXCOORD0 UserSemantic "TEXCOORD0" 65 OpDecorate %in_var_TEXCOORD0 NoPerspective 66 OpDecorate %gl_FragCoord BuiltIn FragCoord 67 OpDecorateString %gl_FragCoord UserSemantic "SV_POSITION" 68 OpDecorate %gl_Layer BuiltIn Layer 69 OpDecorateString %gl_Layer UserSemantic "SV_RenderTargetArrayIndex" 70 OpDecorate %gl_Layer Flat 71 OpDecorateString %out_var_SV_Target0 UserSemantic "SV_Target0" 72 OpDecorate %in_var_TEXCOORD0 Location 0 73 OpDecorate %out_var_SV_Target0 Location 0 74 OpDecorate %_Globals DescriptorSet 0 75 OpDecorate %_Globals Binding 0 76 OpMemberDecorate %type__Globals 0 Offset 0 77 OpMemberDecorate %type__Globals 1 Offset 16 78 OpMemberDecorate %type__Globals 2 Offset 32 79 OpMemberDecorate %type__Globals 3 Offset 48 80 OpMemberDecorate %type__Globals 4 Offset 64 81 OpMemberDecorate %type__Globals 5 Offset 80 82 OpMemberDecorate %type__Globals 6 Offset 96 83 OpMemberDecorate %type__Globals 7 Offset 112 84 OpMemberDecorate %type__Globals 8 Offset 128 85 OpMemberDecorate %type__Globals 9 Offset 144 86 OpMemberDecorate %type__Globals 10 Offset 160 87 OpMemberDecorate %type__Globals 11 Offset 164 88 OpMemberDecorate %type__Globals 12 Offset 168 89 OpMemberDecorate %type__Globals 13 Offset 172 90 OpMemberDecorate %type__Globals 14 Offset 176 91 OpMemberDecorate %type__Globals 15 Offset 180 92 OpMemberDecorate %type__Globals 16 Offset 192 93 OpMemberDecorate %type__Globals 17 Offset 208 94 OpMemberDecorate %type__Globals 18 Offset 212 95 OpMemberDecorate %type__Globals 19 Offset 224 96 OpMemberDecorate %type__Globals 20 Offset 240 97 OpMemberDecorate %type__Globals 21 Offset 256 98 OpMemberDecorate %type__Globals 22 Offset 272 99 OpMemberDecorate %type__Globals 23 Offset 288 100 OpMemberDecorate %type__Globals 24 Offset 304 101 OpMemberDecorate %type__Globals 25 Offset 320 102 OpMemberDecorate %type__Globals 26 Offset 336 103 OpMemberDecorate %type__Globals 27 Offset 352 104 OpMemberDecorate %type__Globals 28 Offset 368 105 OpMemberDecorate %type__Globals 29 Offset 384 106 OpMemberDecorate %type__Globals 30 Offset 400 107 OpMemberDecorate %type__Globals 31 Offset 416 108 OpMemberDecorate %type__Globals 32 Offset 432 109 OpMemberDecorate %type__Globals 33 Offset 448 110 OpMemberDecorate %type__Globals 34 Offset 464 111 OpMemberDecorate %type__Globals 35 Offset 480 112 OpMemberDecorate %type__Globals 36 Offset 496 113 OpMemberDecorate %type__Globals 37 Offset 512 114 OpMemberDecorate %type__Globals 38 Offset 528 115 OpMemberDecorate %type__Globals 39 Offset 544 116 OpMemberDecorate %type__Globals 40 Offset 548 117 OpMemberDecorate %type__Globals 41 Offset 552 118 OpMemberDecorate %type__Globals 42 Offset 556 119 OpMemberDecorate %type__Globals 43 Offset 560 120 OpMemberDecorate %type__Globals 44 Offset 564 121 OpDecorate %type__Globals Block 122 %float = OpTypeFloat 32 123 %v4float = OpTypeVector %float 4 124 %v3float = OpTypeVector %float 3 125 %v2float = OpTypeVector %float 2 126 %int = OpTypeInt 32 1 127 %uint = OpTypeInt 32 0 128 %uint_2 = OpConstant %uint 2 129 %uint_7 = OpConstant %uint 7 130 %uint_4 = OpConstant %uint 4 131%float_0_952552378 = OpConstant %float 0.952552378 132 %float_0 = OpConstant %float 0 133 134; HACK: Needed to hack this constant since MSVC and GNU libc are off by 1 ULP when converting to string (it probably still works fine though in a roundtrip ...) 135%float_9_36786018en05 = OpConstant %float 9.25 136 137%float_0_343966454 = OpConstant %float 0.343966454 138%float_0_728166103 = OpConstant %float 0.728166103 139%float_n0_0721325427 = OpConstant %float -0.0721325427 140%float_1_00882518 = OpConstant %float 1.00882518 141%float_1_04981101 = OpConstant %float 1.04981101 142%float_n9_74845025en05 = OpConstant %float -9.74845025e-05 143%float_n0_495903015 = OpConstant %float -0.495903015 144%float_1_37331307 = OpConstant %float 1.37331307 145%float_0_0982400328 = OpConstant %float 0.0982400328 146%float_0_991252005 = OpConstant %float 0.991252005 147%float_0_662454188 = OpConstant %float 0.662454188 148%float_0_134004205 = OpConstant %float 0.134004205 149%float_0_156187683 = OpConstant %float 0.156187683 150%float_0_272228718 = OpConstant %float 0.272228718 151%float_0_674081743 = OpConstant %float 0.674081743 152%float_0_0536895171 = OpConstant %float 0.0536895171 153%float_n0_00557464967 = OpConstant %float -0.00557464967 154%float_0_0040607336 = OpConstant %float 0.0040607336 155%float_1_01033914 = OpConstant %float 1.01033914 156%float_1_6410234 = OpConstant %float 1.6410234 157%float_n0_324803293 = OpConstant %float -0.324803293 158%float_n0_236424699 = OpConstant %float -0.236424699 159%float_n0_663662851 = OpConstant %float -0.663662851 160%float_1_61533165 = OpConstant %float 1.61533165 161%float_0_0167563483 = OpConstant %float 0.0167563483 162%float_0_0117218941 = OpConstant %float 0.0117218941 163%float_n0_00828444213 = OpConstant %float -0.00828444213 164%float_0_988394856 = OpConstant %float 0.988394856 165%float_1_45143926 = OpConstant %float 1.45143926 166%float_n0_236510754 = OpConstant %float -0.236510754 167%float_n0_214928567 = OpConstant %float -0.214928567 168%float_n0_0765537769 = OpConstant %float -0.0765537769 169%float_1_17622972 = OpConstant %float 1.17622972 170%float_n0_0996759236 = OpConstant %float -0.0996759236 171%float_0_00831614807 = OpConstant %float 0.00831614807 172%float_n0_00603244966 = OpConstant %float -0.00603244966 173%float_0_997716308 = OpConstant %float 0.997716308 174%float_0_695452213 = OpConstant %float 0.695452213 175%float_0_140678704 = OpConstant %float 0.140678704 176%float_0_163869068 = OpConstant %float 0.163869068 177%float_0_0447945632 = OpConstant %float 0.0447945632 178%float_0_859671116 = OpConstant %float 0.859671116 179%float_0_0955343172 = OpConstant %float 0.0955343172 180%float_n0_00552588282 = OpConstant %float -0.00552588282 181%float_0_00402521016 = OpConstant %float 0.00402521016 182%float_1_00150073 = OpConstant %float 1.00150073 183 %67 = OpConstantComposite %v3float %float_0_272228718 %float_0_674081743 %float_0_0536895171 184%float_3_2409699 = OpConstant %float 3.2409699 185%float_n1_5373832 = OpConstant %float -1.5373832 186%float_n0_498610765 = OpConstant %float -0.498610765 187%float_n0_969243646 = OpConstant %float -0.969243646 188%float_1_8759675 = OpConstant %float 1.8759675 189%float_0_0415550582 = OpConstant %float 0.0415550582 190%float_0_0556300804 = OpConstant %float 0.0556300804 191%float_n0_203976959 = OpConstant %float -0.203976959 192%float_1_05697155 = OpConstant %float 1.05697155 193%float_0_412456393 = OpConstant %float 0.412456393 194%float_0_357576102 = OpConstant %float 0.357576102 195%float_0_180437505 = OpConstant %float 0.180437505 196%float_0_212672904 = OpConstant %float 0.212672904 197%float_0_715152204 = OpConstant %float 0.715152204 198%float_0_0721750036 = OpConstant %float 0.0721750036 199%float_0_0193339009 = OpConstant %float 0.0193339009 200%float_0_119191997 = OpConstant %float 0.119191997 201%float_0_950304091 = OpConstant %float 0.950304091 202%float_1_71660841 = OpConstant %float 1.71660841 203%float_n0_355662107 = OpConstant %float -0.355662107 204%float_n0_253360093 = OpConstant %float -0.253360093 205%float_n0_666682899 = OpConstant %float -0.666682899 206%float_1_61647761 = OpConstant %float 1.61647761 207%float_0_0157685 = OpConstant %float 0.0157685 208%float_0_0176422 = OpConstant %float 0.0176422 209%float_n0_0427763015 = OpConstant %float -0.0427763015 210%float_0_942228675 = OpConstant %float 0.942228675 211%float_2_49339628 = OpConstant %float 2.49339628 212%float_n0_93134588 = OpConstant %float -0.93134588 213%float_n0_402694494 = OpConstant %float -0.402694494 214%float_n0_829486787 = OpConstant %float -0.829486787 215%float_1_76265967 = OpConstant %float 1.76265967 216%float_0_0236246008 = OpConstant %float 0.0236246008 217%float_0_0358507 = OpConstant %float 0.0358507 218%float_n0_0761827007 = OpConstant %float -0.0761827007 219%float_0_957014024 = OpConstant %float 0.957014024 220%float_1_01303005 = OpConstant %float 1.01303005 221%float_0_00610530982 = OpConstant %float 0.00610530982 222%float_n0_0149710001 = OpConstant %float -0.0149710001 223%float_0_00769822998 = OpConstant %float 0.00769822998 224%float_0_998165011 = OpConstant %float 0.998165011 225%float_n0_00503202993 = OpConstant %float -0.00503202993 226%float_n0_00284131011 = OpConstant %float -0.00284131011 227%float_0_00468515977 = OpConstant %float 0.00468515977 228%float_0_924507022 = OpConstant %float 0.924507022 229%float_0_987223983 = OpConstant %float 0.987223983 230%float_n0_00611326983 = OpConstant %float -0.00611326983 231%float_0_0159533005 = OpConstant %float 0.0159533005 232%float_n0_00759836007 = OpConstant %float -0.00759836007 233%float_1_00186002 = OpConstant %float 1.00186002 234%float_0_0053300201 = OpConstant %float 0.0053300201 235%float_0_00307257008 = OpConstant %float 0.00307257008 236%float_n0_00509594986 = OpConstant %float -0.00509594986 237%float_1_08168006 = OpConstant %float 1.08168006 238 %float_0_5 = OpConstant %float 0.5 239 %float_n1 = OpConstant %float -1 240 %float_1 = OpConstant %float 1 241 %int_0 = OpConstant %int 0 242 %int_1 = OpConstant %int 1 243%float_0_015625 = OpConstant %float 0.015625 244 %128 = OpConstantComposite %v2float %float_0_015625 %float_0_015625 245 %129 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0 246 %int_42 = OpConstant %int 42 247 %uint_3 = OpConstant %uint 3 248 %132 = OpConstantComposite %v3float %float_0 %float_0 %float_0 249 %int_9 = OpConstant %int 9 250 %int_3 = OpConstant %int 3 251 %135 = OpConstantComposite %v3float %float_1 %float_1 %float_1 252 %float_n4 = OpConstant %float -4 253 %int_44 = OpConstant %int 44 254%float_0_544169128 = OpConstant %float 0.544169128 255%float_0_239592597 = OpConstant %float 0.239592597 256%float_0_166694298 = OpConstant %float 0.166694298 257%float_0_239465594 = OpConstant %float 0.239465594 258%float_0_702153027 = OpConstant %float 0.702153027 259%float_0_058381401 = OpConstant %float 0.058381401 260%float_n0_00234390004 = OpConstant %float -0.00234390004 261%float_0_0361833982 = OpConstant %float 0.0361833982 262%float_1_05521834 = OpConstant %float 1.05521834 263%float_0_940437257 = OpConstant %float 0.940437257 264%float_n0_0183068793 = OpConstant %float -0.0183068793 265%float_0_077869609 = OpConstant %float 0.077869609 266%float_0_00837869663 = OpConstant %float 0.00837869663 267%float_0_828660011 = OpConstant %float 0.828660011 268%float_0_162961304 = OpConstant %float 0.162961304 269%float_0_00054712611 = OpConstant %float 0.00054712611 270%float_n0_000883374596 = OpConstant %float -0.000883374596 271%float_1_00033629 = OpConstant %float 1.00033629 272%float_1_06317997 = OpConstant %float 1.06317997 273%float_0_0233955998 = OpConstant %float 0.0233955998 274%float_n0_0865726024 = OpConstant %float -0.0865726024 275%float_n0_0106336996 = OpConstant %float -0.0106336996 276%float_1_20632005 = OpConstant %float 1.20632005 277%float_n0_195690006 = OpConstant %float -0.195690006 278%float_n0_000590886979 = OpConstant %float -0.000590886979 279%float_0_00105247996 = OpConstant %float 0.00105247996 280%float_0_999538004 = OpConstant %float 0.999538004 281 %int_43 = OpConstant %int 43 282 %int_15 = OpConstant %int 15 283 %int_16 = OpConstant %int 16 284 %uint_0 = OpConstant %uint 0 285 %uint_1 = OpConstant %uint 1 286 %uint_5 = OpConstant %uint 5 287 %uint_6 = OpConstant %uint 6 288 %int_2 = OpConstant %int 2 289%mat3v3float = OpTypeMatrix %v3float 3 290 %int_41 = OpConstant %int 41 291%float_0_159301758 = OpConstant %float 0.159301758 292%float_78_84375 = OpConstant %float 78.84375 293%float_0_8359375 = OpConstant %float 0.8359375 294%float_18_8515625 = OpConstant %float 18.8515625 295%float_18_6875 = OpConstant %float 18.6875 296%float_10000 = OpConstant %float 10000 297%float_0_0126833133 = OpConstant %float 0.0126833133 298 %182 = OpConstantComposite %v3float %float_0_0126833133 %float_0_0126833133 %float_0_0126833133 299 %183 = OpConstantComposite %v3float %float_0_8359375 %float_0_8359375 %float_0_8359375 300 %184 = OpConstantComposite %v3float %float_18_8515625 %float_18_8515625 %float_18_8515625 301 %185 = OpConstantComposite %v3float %float_18_6875 %float_18_6875 %float_18_6875 302%float_6_27739477 = OpConstant %float 6.27739477 303 %187 = OpConstantComposite %v3float %float_6_27739477 %float_6_27739477 %float_6_27739477 304 %188 = OpConstantComposite %v3float %float_10000 %float_10000 %float_10000 305 %float_14 = OpConstant %float 14 306%float_0_180000007 = OpConstant %float 0.180000007 307%float_0_434017599 = OpConstant %float 0.434017599 308 %192 = OpConstantComposite %v3float %float_0_434017599 %float_0_434017599 %float_0_434017599 309 %193 = OpConstantComposite %v3float %float_14 %float_14 %float_14 310 %194 = OpConstantComposite %v3float %float_0_180000007 %float_0_180000007 %float_0_180000007 311 %int_17 = OpConstant %int 17 312 %float_4000 = OpConstant %float 4000 313%float_0_312700003 = OpConstant %float 0.312700003 314%float_0_328999996 = OpConstant %float 0.328999996 315 %int_18 = OpConstant %int 18 316 %int_24 = OpConstant %int 24 317 %int_19 = OpConstant %int 19 318 %int_25 = OpConstant %int 25 319 %int_20 = OpConstant %int 20 320 %int_26 = OpConstant %int 26 321 %int_21 = OpConstant %int 21 322 %int_27 = OpConstant %int 27 323 %int_22 = OpConstant %int 22 324 %int_28 = OpConstant %int 28 325 %int_23 = OpConstant %int 23 326 %int_39 = OpConstant %int 39 327 %int_34 = OpConstant %int 34 328 %int_35 = OpConstant %int 35 329 %int_36 = OpConstant %int 36 330 %int_37 = OpConstant %int 37 331 %int_38 = OpConstant %int 38 332 %int_40 = OpConstant %int 40 333 %int_29 = OpConstant %int 29 334 %int_30 = OpConstant %int 30 335 %int_31 = OpConstant %int 31 336 %int_32 = OpConstant %int 32 337 %int_33 = OpConstant %int 33 338%float_0_0500000007 = OpConstant %float 0.0500000007 339 %float_1_75 = OpConstant %float 1.75 340%float_0_400000006 = OpConstant %float 0.400000006 341%float_0_0299999993 = OpConstant %float 0.0299999993 342 %float_2 = OpConstant %float 2 343%float_0_959999979 = OpConstant %float 0.959999979 344 %228 = OpConstantComposite %v3float %float_0_959999979 %float_0_959999979 %float_0_959999979 345 %int_13 = OpConstant %int 13 346 %int_11 = OpConstant %int 11 347 %int_14 = OpConstant %int 14 348 %int_12 = OpConstant %int 12 349%float_0_800000012 = OpConstant %float 0.800000012 350 %int_10 = OpConstant %int 10 351 %float_10 = OpConstant %float 10 352 %float_n2 = OpConstant %float -2 353 %float_3 = OpConstant %float 3 354 %238 = OpConstantComposite %v3float %float_3 %float_3 %float_3 355 %239 = OpConstantComposite %v3float %float_2 %float_2 %float_2 356%float_0_930000007 = OpConstant %float 0.930000007 357 %241 = OpConstantComposite %v3float %float_0_930000007 %float_0_930000007 %float_0_930000007 358 %int_4 = OpConstant %int 4 359 %int_8 = OpConstant %int 8 360 %int_7 = OpConstant %int 7 361 %int_5 = OpConstant %int 5 362 %int_6 = OpConstant %int 6 363%float_0_00200000009 = OpConstant %float 0.00200000009 364 %248 = OpConstantComposite %v3float %float_0_00200000009 %float_0_00200000009 %float_0_00200000009 365%float_6_10351999en05 = OpConstant %float 6.10351999e-05 366 %250 = OpConstantComposite %v3float %float_6_10351999en05 %float_6_10351999en05 %float_6_10351999en05 367 %float_4_5 = OpConstant %float 4.5 368 %252 = OpConstantComposite %v3float %float_4_5 %float_4_5 %float_4_5 369%float_0_0179999992 = OpConstant %float 0.0179999992 370 %254 = OpConstantComposite %v3float %float_0_0179999992 %float_0_0179999992 %float_0_0179999992 371%float_0_449999988 = OpConstant %float 0.449999988 372 %256 = OpConstantComposite %v3float %float_0_449999988 %float_0_449999988 %float_0_449999988 373%float_1_09899998 = OpConstant %float 1.09899998 374 %258 = OpConstantComposite %v3float %float_1_09899998 %float_1_09899998 %float_1_09899998 375%float_0_0989999995 = OpConstant %float 0.0989999995 376 %260 = OpConstantComposite %v3float %float_0_0989999995 %float_0_0989999995 %float_0_0989999995 377 %float_1_5 = OpConstant %float 1.5 378 %262 = OpConstantComposite %v3float %float_1_5 %float_1_5 %float_1_5 379 %263 = OpConstantComposite %v3float %float_0_159301758 %float_0_159301758 %float_0_159301758 380 %264 = OpConstantComposite %v3float %float_78_84375 %float_78_84375 %float_78_84375 381%float_1_00055635 = OpConstant %float 1.00055635 382 %float_7000 = OpConstant %float 7000 383%float_0_244063005 = OpConstant %float 0.244063005 384%float_99_1100006 = OpConstant %float 99.1100006 385%float_2967800 = OpConstant %float 2967800 386%float_0_237039998 = OpConstant %float 0.237039998 387%float_247_479996 = OpConstant %float 247.479996 388%float_1901800 = OpConstant %float 1901800 389 %float_n3 = OpConstant %float -3 390%float_2_86999989 = OpConstant %float 2.86999989 391%float_0_275000006 = OpConstant %float 0.275000006 392%float_0_860117733 = OpConstant %float 0.860117733 393%float_0_000154118257 = OpConstant %float 0.000154118257 394%float_1_28641219en07 = OpConstant %float 1.28641219e-07 395%float_0_00084242021 = OpConstant %float 0.00084242021 396%float_7_08145137en07 = OpConstant %float 7.08145137e-07 397%float_0_317398727 = OpConstant %float 0.317398727 398 399; HACK: Needed to hack this constant since MSVC and GNU libc are off by 1 ULP when converting to string (it probably still works fine though in a roundtrip ...) 400%float_4_22806261en05 = OpConstant %float 4.25 401 402%float_4_20481676en08 = OpConstant %float 4.20481676e-08 403%float_2_8974182en05 = OpConstant %float 2.8974182e-05 404%float_1_61456057en07 = OpConstant %float 1.61456057e-07 405 %float_8 = OpConstant %float 8 406 %float_4 = OpConstant %float 4 407%float_0_895099998 = OpConstant %float 0.895099998 408%float_0_266400009 = OpConstant %float 0.266400009 409%float_n0_161400005 = OpConstant %float -0.161400005 410%float_n0_750199974 = OpConstant %float -0.750199974 411%float_1_71350002 = OpConstant %float 1.71350002 412%float_0_0366999991 = OpConstant %float 0.0366999991 413%float_0_0388999991 = OpConstant %float 0.0388999991 414%float_n0_0684999973 = OpConstant %float -0.0684999973 415%float_1_02960002 = OpConstant %float 1.02960002 416%float_0_986992896 = OpConstant %float 0.986992896 417%float_n0_1470543 = OpConstant %float -0.1470543 418%float_0_159962699 = OpConstant %float 0.159962699 419%float_0_432305306 = OpConstant %float 0.432305306 420%float_0_518360317 = OpConstant %float 0.518360317 421%float_0_0492912009 = OpConstant %float 0.0492912009 422%float_n0_0085287001 = OpConstant %float -0.0085287001 423%float_0_040042799 = OpConstant %float 0.040042799 424%float_0_968486726 = OpConstant %float 0.968486726 425%float_5_55555534 = OpConstant %float 5.55555534 426 %307 = OpConstantComposite %v3float %float_5_55555534 %float_5_55555534 %float_5_55555534 427%float_1_00000001en10 = OpConstant %float 1.00000001e-10 428%float_0_00999999978 = OpConstant %float 0.00999999978 429%float_0_666666687 = OpConstant %float 0.666666687 430 %float_180 = OpConstant %float 180 431 %float_360 = OpConstant %float 360 432%float_65535 = OpConstant %float 65535 433 %314 = OpConstantComposite %v3float %float_65535 %float_65535 %float_65535 434%float_n4_97062206 = OpConstant %float -4.97062206 435%float_n3_02937818 = OpConstant %float -3.02937818 436%float_n2_12619996 = OpConstant %float -2.12619996 437%float_n1_51049995 = OpConstant %float -1.51049995 438%float_n1_05780005 = OpConstant %float -1.05780005 439%float_n0_466800004 = OpConstant %float -0.466800004 440%float_0_119379997 = OpConstant %float 0.119379997 441%float_0_708813429 = OpConstant %float 0.708813429 442%float_1_29118657 = OpConstant %float 1.29118657 443%float_0_808913231 = OpConstant %float 0.808913231 444%float_1_19108677 = OpConstant %float 1.19108677 445%float_1_56830001 = OpConstant %float 1.56830001 446%float_1_9483 = OpConstant %float 1.9483 447%float_2_30830002 = OpConstant %float 2.30830002 448%float_2_63840008 = OpConstant %float 2.63840008 449%float_2_85949993 = OpConstant %float 2.85949993 450%float_2_98726082 = OpConstant %float 2.98726082 451%float_3_01273918 = OpConstant %float 3.01273918 452%float_0_179999992 = OpConstant %float 0.179999992 453%float_9_99999975en05 = OpConstant %float 9.99999975e-05 454 %float_1000 = OpConstant %float 1000 455%float_0_0599999987 = OpConstant %float 0.0599999987 456%float_3_50738446en05 = OpConstant %float 3.50738446e-05 457 %338 = OpConstantComposite %v3float %float_3_50738446en05 %float_3_50738446en05 %float_3_50738446en05 458%float_n2_30102992 = OpConstant %float -2.30102992 459%float_n1_93120003 = OpConstant %float -1.93120003 460%float_n1_52049994 = OpConstant %float -1.52049994 461%float_0_801995218 = OpConstant %float 0.801995218 462%float_1_19800484 = OpConstant %float 1.19800484 463%float_1_59430003 = OpConstant %float 1.59430003 464%float_1_99730003 = OpConstant %float 1.99730003 465%float_2_37829995 = OpConstant %float 2.37829995 466%float_2_76839995 = OpConstant %float 2.76839995 467%float_3_05150008 = OpConstant %float 3.05150008 468%float_3_27462935 = OpConstant %float 3.27462935 469%float_3_32743073 = OpConstant %float 3.32743073 470%float_0_00499999989 = OpConstant %float 0.00499999989 471 %float_11 = OpConstant %float 11 472 %float_2000 = OpConstant %float 2000 473%float_0_119999997 = OpConstant %float 0.119999997 474%float_0_00313066994 = OpConstant %float 0.00313066994 475%float_12_9200001 = OpConstant %float 12.9200001 476%float_0_416666657 = OpConstant %float 0.416666657 477%float_1_05499995 = OpConstant %float 1.05499995 478%float_0_0549999997 = OpConstant %float 0.0549999997 479%float_n0_166666672 = OpConstant %float -0.166666672 480 %float_n0_5 = OpConstant %float -0.5 481%float_0_166666672 = OpConstant %float 0.166666672 482%float_n3_15737653 = OpConstant %float -3.15737653 483%float_n0_485249996 = OpConstant %float -0.485249996 484%float_1_84773242 = OpConstant %float 1.84773242 485%float_n0_718548238 = OpConstant %float -0.718548238 486%float_2_08103061 = OpConstant %float 2.08103061 487%float_3_6681242 = OpConstant %float 3.6681242 488 %float_18 = OpConstant %float 18 489 %float_7 = OpConstant %float 7 490%type__Globals = OpTypeStruct %v4float %v3float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %float %float %float %float %float %v3float %v4float %float %float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %v4float %float %float %uint %uint %float %float 491%_ptr_Uniform_type__Globals = OpTypePointer Uniform %type__Globals 492%_ptr_Input_v2float = OpTypePointer Input %v2float 493%_ptr_Input_v4float = OpTypePointer Input %v4float 494%_ptr_Input_uint = OpTypePointer Input %uint 495%_ptr_Output_v4float = OpTypePointer Output %v4float 496 %void = OpTypeVoid 497 %377 = OpTypeFunction %void 498%_ptr_Function_float = OpTypePointer Function %float 499%_ptr_Uniform_uint = OpTypePointer Uniform %uint 500 %bool = OpTypeBool 501%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float 502%_ptr_Uniform_float = OpTypePointer Uniform %float 503%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float 504 %v2bool = OpTypeVector %bool 2 505 %v3bool = OpTypeVector %bool 3 506 %uint_10 = OpConstant %uint 10 507%_arr_float_uint_10 = OpTypeArray %float %uint_10 508%_arr_float_uint_6 = OpTypeArray %float %uint_6 509 %_Globals = OpVariable %_ptr_Uniform_type__Globals Uniform 510%in_var_TEXCOORD0 = OpVariable %_ptr_Input_v2float Input 511%gl_FragCoord = OpVariable %_ptr_Input_v4float Input 512 %gl_Layer = OpVariable %_ptr_Input_uint Input 513%out_var_SV_Target0 = OpVariable %_ptr_Output_v4float Output 514%_ptr_Function__arr_float_uint_6 = OpTypePointer Function %_arr_float_uint_6 515%_ptr_Function__arr_float_uint_10 = OpTypePointer Function %_arr_float_uint_10 516 %391 = OpUndef %v3float 517 %392 = OpConstantComposite %v3float %float_0_952552378 %float_0 %float_9_36786018en05 518 %393 = OpConstantComposite %v3float %float_0_343966454 %float_0_728166103 %float_n0_0721325427 519 %394 = OpConstantComposite %v3float %float_0 %float_0 %float_1_00882518 520 %395 = OpConstantComposite %mat3v3float %392 %393 %394 521 %396 = OpConstantComposite %v3float %float_1_04981101 %float_0 %float_n9_74845025en05 522 %397 = OpConstantComposite %v3float %float_n0_495903015 %float_1_37331307 %float_0_0982400328 523 %398 = OpConstantComposite %v3float %float_0 %float_0 %float_0_991252005 524 %399 = OpConstantComposite %mat3v3float %396 %397 %398 525 %400 = OpConstantComposite %v3float %float_0_662454188 %float_0_134004205 %float_0_156187683 526 %401 = OpConstantComposite %v3float %float_n0_00557464967 %float_0_0040607336 %float_1_01033914 527 %402 = OpConstantComposite %mat3v3float %400 %67 %401 528 %403 = OpConstantComposite %v3float %float_1_6410234 %float_n0_324803293 %float_n0_236424699 529 %404 = OpConstantComposite %v3float %float_n0_663662851 %float_1_61533165 %float_0_0167563483 530 %405 = OpConstantComposite %v3float %float_0_0117218941 %float_n0_00828444213 %float_0_988394856 531 %406 = OpConstantComposite %mat3v3float %403 %404 %405 532 %407 = OpConstantComposite %v3float %float_1_45143926 %float_n0_236510754 %float_n0_214928567 533 %408 = OpConstantComposite %v3float %float_n0_0765537769 %float_1_17622972 %float_n0_0996759236 534 %409 = OpConstantComposite %v3float %float_0_00831614807 %float_n0_00603244966 %float_0_997716308 535 %410 = OpConstantComposite %mat3v3float %407 %408 %409 536 %411 = OpConstantComposite %v3float %float_0_695452213 %float_0_140678704 %float_0_163869068 537 %412 = OpConstantComposite %v3float %float_0_0447945632 %float_0_859671116 %float_0_0955343172 538 %413 = OpConstantComposite %v3float %float_n0_00552588282 %float_0_00402521016 %float_1_00150073 539 %414 = OpConstantComposite %mat3v3float %411 %412 %413 540 %415 = OpConstantComposite %v3float %float_3_2409699 %float_n1_5373832 %float_n0_498610765 541 %416 = OpConstantComposite %v3float %float_n0_969243646 %float_1_8759675 %float_0_0415550582 542 %417 = OpConstantComposite %v3float %float_0_0556300804 %float_n0_203976959 %float_1_05697155 543 %418 = OpConstantComposite %mat3v3float %415 %416 %417 544 %419 = OpConstantComposite %v3float %float_0_412456393 %float_0_357576102 %float_0_180437505 545 %420 = OpConstantComposite %v3float %float_0_212672904 %float_0_715152204 %float_0_0721750036 546 %421 = OpConstantComposite %v3float %float_0_0193339009 %float_0_119191997 %float_0_950304091 547 %422 = OpConstantComposite %mat3v3float %419 %420 %421 548 %423 = OpConstantComposite %v3float %float_1_71660841 %float_n0_355662107 %float_n0_253360093 549 %424 = OpConstantComposite %v3float %float_n0_666682899 %float_1_61647761 %float_0_0157685 550 %425 = OpConstantComposite %v3float %float_0_0176422 %float_n0_0427763015 %float_0_942228675 551 %426 = OpConstantComposite %mat3v3float %423 %424 %425 552 %427 = OpConstantComposite %v3float %float_2_49339628 %float_n0_93134588 %float_n0_402694494 553 %428 = OpConstantComposite %v3float %float_n0_829486787 %float_1_76265967 %float_0_0236246008 554 %429 = OpConstantComposite %v3float %float_0_0358507 %float_n0_0761827007 %float_0_957014024 555 %430 = OpConstantComposite %mat3v3float %427 %428 %429 556 %431 = OpConstantComposite %v3float %float_1_01303005 %float_0_00610530982 %float_n0_0149710001 557 %432 = OpConstantComposite %v3float %float_0_00769822998 %float_0_998165011 %float_n0_00503202993 558 %433 = OpConstantComposite %v3float %float_n0_00284131011 %float_0_00468515977 %float_0_924507022 559 %434 = OpConstantComposite %mat3v3float %431 %432 %433 560 %435 = OpConstantComposite %v3float %float_0_987223983 %float_n0_00611326983 %float_0_0159533005 561 %436 = OpConstantComposite %v3float %float_n0_00759836007 %float_1_00186002 %float_0_0053300201 562 %437 = OpConstantComposite %v3float %float_0_00307257008 %float_n0_00509594986 %float_1_08168006 563 %438 = OpConstantComposite %mat3v3float %435 %436 %437 564 %439 = OpConstantComposite %v3float %float_0_5 %float_n1 %float_0_5 565 %440 = OpConstantComposite %v3float %float_n1 %float_1 %float_0_5 566 %441 = OpConstantComposite %v3float %float_0_5 %float_0 %float_0 567 %442 = OpConstantComposite %mat3v3float %439 %440 %441 568 %443 = OpConstantComposite %v3float %float_1 %float_0 %float_0 569 %444 = OpConstantComposite %v3float %float_0 %float_1 %float_0 570 %445 = OpConstantComposite %v3float %float_0 %float_0 %float_1 571 %446 = OpConstantComposite %mat3v3float %443 %444 %445 572%float_n6_07624626 = OpConstant %float -6.07624626 573 %448 = OpConstantComposite %v3float %float_n6_07624626 %float_n6_07624626 %float_n6_07624626 574 %449 = OpConstantComposite %v3float %float_0_895099998 %float_0_266400009 %float_n0_161400005 575 %450 = OpConstantComposite %v3float %float_n0_750199974 %float_1_71350002 %float_0_0366999991 576 %451 = OpConstantComposite %v3float %float_0_0388999991 %float_n0_0684999973 %float_1_02960002 577 %452 = OpConstantComposite %mat3v3float %449 %450 %451 578 %453 = OpConstantComposite %v3float %float_0_986992896 %float_n0_1470543 %float_0_159962699 579 %454 = OpConstantComposite %v3float %float_0_432305306 %float_0_518360317 %float_0_0492912009 580 %455 = OpConstantComposite %v3float %float_n0_0085287001 %float_0_040042799 %float_0_968486726 581 %456 = OpConstantComposite %mat3v3float %453 %454 %455 582%float_0_358299971 = OpConstant %float 0.358299971 583 %458 = OpConstantComposite %v3float %float_0_544169128 %float_0_239592597 %float_0_166694298 584 %459 = OpConstantComposite %v3float %float_0_239465594 %float_0_702153027 %float_0_058381401 585 %460 = OpConstantComposite %v3float %float_n0_00234390004 %float_0_0361833982 %float_1_05521834 586 %461 = OpConstantComposite %mat3v3float %458 %459 %460 587 %462 = OpConstantComposite %v3float %float_0_940437257 %float_n0_0183068793 %float_0_077869609 588 %463 = OpConstantComposite %v3float %float_0_00837869663 %float_0_828660011 %float_0_162961304 589 %464 = OpConstantComposite %v3float %float_0_00054712611 %float_n0_000883374596 %float_1_00033629 590 %465 = OpConstantComposite %mat3v3float %462 %463 %464 591 %466 = OpConstantComposite %v3float %float_1_06317997 %float_0_0233955998 %float_n0_0865726024 592 %467 = OpConstantComposite %v3float %float_n0_0106336996 %float_1_20632005 %float_n0_195690006 593 %468 = OpConstantComposite %v3float %float_n0_000590886979 %float_0_00105247996 %float_0_999538004 594 %469 = OpConstantComposite %mat3v3float %466 %467 %468 595%float_0_0533333346 = OpConstant %float 0.0533333346 596%float_0_159999996 = OpConstant %float 0.159999996 597%float_57_2957764 = OpConstant %float 57.2957764 598%float_n67_5 = OpConstant %float -67.5 599 %float_67_5 = OpConstant %float 67.5 600 %475 = OpConstantComposite %_arr_float_uint_6 %float_n4 %float_n4 %float_n3_15737653 %float_n0_485249996 %float_1_84773242 %float_1_84773242 601 %476 = OpConstantComposite %_arr_float_uint_6 %float_n0_718548238 %float_2_08103061 %float_3_6681242 %float_4 %float_4 %float_4 602 %float_n15 = OpConstant %float -15 603 %float_n14 = OpConstant %float -14 604 %479 = OpConstantComposite %_arr_float_uint_10 %float_n4_97062206 %float_n3_02937818 %float_n2_12619996 %float_n1_51049995 %float_n1_05780005 %float_n0_466800004 %float_0_119379997 %float_0_708813429 %float_1_29118657 %float_1_29118657 605 %480 = OpConstantComposite %_arr_float_uint_10 %float_0_808913231 %float_1_19108677 %float_1_56830001 %float_1_9483 %float_2_30830002 %float_2_63840008 %float_2_85949993 %float_2_98726082 %float_3_01273918 %float_3_01273918 606 %float_n12 = OpConstant %float -12 607 %482 = OpConstantComposite %_arr_float_uint_10 %float_n2_30102992 %float_n2_30102992 %float_n1_93120003 %float_n1_52049994 %float_n1_05780005 %float_n0_466800004 %float_0_119379997 %float_0_708813429 %float_1_29118657 %float_1_29118657 608 %483 = OpConstantComposite %_arr_float_uint_10 %float_0_801995218 %float_1_19800484 %float_1_59430003 %float_1_99730003 %float_2_37829995 %float_2_76839995 %float_3_05150008 %float_3_27462935 %float_3_32743073 %float_3_32743073 609%float_0_0322580636 = OpConstant %float 0.0322580636 610%float_1_03225803 = OpConstant %float 1.03225803 611 %486 = OpConstantComposite %v2float %float_1_03225803 %float_1_03225803 612%float_4_60443853e_09 = OpConstant %float 4.60443853e+09 613%float_2_00528435e_09 = OpConstant %float 2.00528435e+09 614%float_0_333333343 = OpConstant %float 0.333333343 615 %float_5 = OpConstant %float 5 616 %float_2_5 = OpConstant %float 2.5 617%float_0_0250000004 = OpConstant %float 0.0250000004 618%float_0_239999995 = OpConstant %float 0.239999995 619%float_0_0148148146 = OpConstant %float 0.0148148146 620%float_0_819999993 = OpConstant %float 0.819999993 621 %496 = OpConstantComposite %v3float %float_9_99999975en05 %float_9_99999975en05 %float_9_99999975en05 622%float_0_0296296291 = OpConstant %float 0.0296296291 623%float_0_952381015 = OpConstant %float 0.952381015 624 %499 = OpConstantComposite %v3float %float_0_952381015 %float_0_952381015 %float_0_952381015 625 %MainPS = OpFunction %void None %377 626 %500 = OpLabel 627 %501 = OpVariable %_ptr_Function__arr_float_uint_6 Function 628 %502 = OpVariable %_ptr_Function__arr_float_uint_6 Function 629 %503 = OpVariable %_ptr_Function__arr_float_uint_6 Function 630 %504 = OpVariable %_ptr_Function__arr_float_uint_6 Function 631 %505 = OpVariable %_ptr_Function__arr_float_uint_6 Function 632 %506 = OpVariable %_ptr_Function__arr_float_uint_6 Function 633 %507 = OpVariable %_ptr_Function__arr_float_uint_10 Function 634 %508 = OpVariable %_ptr_Function__arr_float_uint_10 Function 635 %509 = OpVariable %_ptr_Function__arr_float_uint_10 Function 636 %510 = OpVariable %_ptr_Function__arr_float_uint_10 Function 637 %511 = OpVariable %_ptr_Function__arr_float_uint_10 Function 638 %512 = OpVariable %_ptr_Function__arr_float_uint_10 Function 639 %513 = OpVariable %_ptr_Function__arr_float_uint_6 Function 640 %514 = OpVariable %_ptr_Function__arr_float_uint_6 Function 641 %515 = OpVariable %_ptr_Function__arr_float_uint_6 Function 642 %516 = OpVariable %_ptr_Function__arr_float_uint_6 Function 643 %517 = OpVariable %_ptr_Function__arr_float_uint_6 Function 644 %518 = OpVariable %_ptr_Function__arr_float_uint_6 Function 645 %519 = OpVariable %_ptr_Function__arr_float_uint_6 Function 646 %520 = OpVariable %_ptr_Function__arr_float_uint_6 Function 647 %521 = OpVariable %_ptr_Function__arr_float_uint_6 Function 648 %522 = OpVariable %_ptr_Function__arr_float_uint_6 Function 649 %523 = OpVariable %_ptr_Function__arr_float_uint_6 Function 650 %524 = OpVariable %_ptr_Function__arr_float_uint_6 Function 651 %525 = OpVariable %_ptr_Function__arr_float_uint_10 Function 652 %526 = OpVariable %_ptr_Function__arr_float_uint_10 Function 653 %527 = OpVariable %_ptr_Function__arr_float_uint_10 Function 654 %528 = OpVariable %_ptr_Function__arr_float_uint_10 Function 655 %529 = OpVariable %_ptr_Function__arr_float_uint_10 Function 656 %530 = OpVariable %_ptr_Function__arr_float_uint_10 Function 657 %531 = OpVariable %_ptr_Function__arr_float_uint_6 Function 658 %532 = OpVariable %_ptr_Function__arr_float_uint_6 Function 659 %533 = OpVariable %_ptr_Function__arr_float_uint_6 Function 660 %534 = OpVariable %_ptr_Function__arr_float_uint_6 Function 661 %535 = OpVariable %_ptr_Function__arr_float_uint_6 Function 662 %536 = OpVariable %_ptr_Function__arr_float_uint_6 Function 663 %537 = OpLoad %v2float %in_var_TEXCOORD0 664 %538 = OpLoad %uint %gl_Layer 665 %539 = OpFSub %v2float %537 %128 666 %540 = OpFMul %v2float %539 %486 667 %541 = OpCompositeExtract %float %540 0 668 %542 = OpCompositeExtract %float %540 1 669 %543 = OpConvertUToF %float %538 670 %544 = OpFMul %float %543 %float_0_0322580636 671 %545 = OpCompositeConstruct %v4float %541 %542 %544 %float_0 672 %546 = OpMatrixTimesMatrix %mat3v3float %422 %434 673 %547 = OpMatrixTimesMatrix %mat3v3float %546 %406 674 %548 = OpMatrixTimesMatrix %mat3v3float %402 %438 675 %549 = OpMatrixTimesMatrix %mat3v3float %548 %418 676 %550 = OpMatrixTimesMatrix %mat3v3float %395 %406 677 %551 = OpMatrixTimesMatrix %mat3v3float %402 %399 678 %552 = OpAccessChain %_ptr_Uniform_uint %_Globals %int_42 679 %553 = OpLoad %uint %552 680 OpBranch %554 681 %554 = OpLabel 682 OpLoopMerge %555 %556 None 683 OpBranch %557 684 %557 = OpLabel 685 %558 = OpMatrixTimesMatrix %mat3v3float %548 %430 686 %559 = OpMatrixTimesMatrix %mat3v3float %548 %426 687 %560 = OpIEqual %bool %553 %uint_1 688 OpSelectionMerge %561 None 689 OpBranchConditional %560 %562 %563 690 %563 = OpLabel 691 %564 = OpIEqual %bool %553 %uint_2 692 OpSelectionMerge %565 None 693 OpBranchConditional %564 %566 %567 694 %567 = OpLabel 695 %568 = OpIEqual %bool %553 %uint_3 696 OpSelectionMerge %569 None 697 OpBranchConditional %568 %570 %571 698 %571 = OpLabel 699 %572 = OpIEqual %bool %553 %uint_4 700 OpSelectionMerge %573 None 701 OpBranchConditional %572 %574 %575 702 %575 = OpLabel 703 OpBranch %555 704 %574 = OpLabel 705 OpBranch %555 706 %573 = OpLabel 707 OpUnreachable 708 %570 = OpLabel 709 OpBranch %555 710 %569 = OpLabel 711 OpUnreachable 712 %566 = OpLabel 713 OpBranch %555 714 %565 = OpLabel 715 OpUnreachable 716 %562 = OpLabel 717 OpBranch %555 718 %561 = OpLabel 719 OpUnreachable 720 %556 = OpLabel 721 OpBranch %554 722 %555 = OpLabel 723 %576 = OpPhi %mat3v3float %549 %575 %446 %574 %414 %570 %559 %566 %558 %562 724 %577 = OpVectorShuffle %v3float %545 %545 0 1 2 725 %578 = OpAccessChain %_ptr_Uniform_uint %_Globals %int_41 726 %579 = OpLoad %uint %578 727 %580 = OpUGreaterThanEqual %bool %579 %uint_3 728 OpSelectionMerge %581 None 729 OpBranchConditional %580 %582 %583 730 %583 = OpLabel 731 %584 = OpFSub %v3float %577 %192 732 %585 = OpFMul %v3float %584 %193 733 %586 = OpExtInst %v3float %1 Exp2 %585 734 %587 = OpFMul %v3float %586 %194 735 %588 = OpExtInst %v3float %1 Exp2 %448 736 %589 = OpFMul %v3float %588 %194 737 %590 = OpFSub %v3float %587 %589 738 OpBranch %581 739 %582 = OpLabel 740 %591 = OpExtInst %v3float %1 Pow %577 %182 741 %592 = OpFSub %v3float %591 %183 742 %593 = OpExtInst %v3float %1 FMax %132 %592 743 %594 = OpFMul %v3float %185 %591 744 %595 = OpFSub %v3float %184 %594 745 %596 = OpFDiv %v3float %593 %595 746 %597 = OpExtInst %v3float %1 Pow %596 %187 747 %598 = OpFMul %v3float %597 %188 748 OpBranch %581 749 %581 = OpLabel 750 %599 = OpPhi %v3float %590 %583 %598 %582 751 %600 = OpAccessChain %_ptr_Uniform_float %_Globals %int_17 752 %601 = OpLoad %float %600 753 %602 = OpFMul %float %601 %float_1_00055635 754 %603 = OpFOrdLessThanEqual %bool %602 %float_7000 755 %604 = OpFDiv %float %float_4_60443853e_09 %601 756 %605 = OpFSub %float %float_2967800 %604 757 %606 = OpFDiv %float %605 %602 758 %607 = OpFAdd %float %float_99_1100006 %606 759 %608 = OpFDiv %float %607 %602 760 %609 = OpFAdd %float %float_0_244063005 %608 761 %610 = OpFDiv %float %float_2_00528435e_09 %601 762 %611 = OpFSub %float %float_1901800 %610 763 %612 = OpFDiv %float %611 %602 764 %613 = OpFAdd %float %float_247_479996 %612 765 %614 = OpFDiv %float %613 %602 766 %615 = OpFAdd %float %float_0_237039998 %614 767 %616 = OpSelect %float %603 %609 %615 768 %617 = OpFMul %float %float_n3 %616 769 %618 = OpFMul %float %617 %616 770 %619 = OpFMul %float %float_2_86999989 %616 771 %620 = OpFAdd %float %618 %619 772 %621 = OpFSub %float %620 %float_0_275000006 773 %622 = OpCompositeConstruct %v2float %616 %621 774 %623 = OpFMul %float %float_0_000154118257 %601 775 %624 = OpFAdd %float %float_0_860117733 %623 776 %625 = OpFMul %float %float_1_28641219en07 %601 777 %626 = OpFMul %float %625 %601 778 %627 = OpFAdd %float %624 %626 779 %628 = OpFMul %float %float_0_00084242021 %601 780 %629 = OpFAdd %float %float_1 %628 781 %630 = OpFMul %float %float_7_08145137en07 %601 782 %631 = OpFMul %float %630 %601 783 %632 = OpFAdd %float %629 %631 784 %633 = OpFDiv %float %627 %632 785 %634 = OpFMul %float %float_4_22806261en05 %601 786 %635 = OpFAdd %float %float_0_317398727 %634 787 %636 = OpFMul %float %float_4_20481676en08 %601 788 %637 = OpFMul %float %636 %601 789 %638 = OpFAdd %float %635 %637 790 %639 = OpFMul %float %float_2_8974182en05 %601 791 %640 = OpFSub %float %float_1 %639 792 %641 = OpFMul %float %float_1_61456057en07 %601 793 %642 = OpFMul %float %641 %601 794 %643 = OpFAdd %float %640 %642 795 %644 = OpFDiv %float %638 %643 796 %645 = OpFMul %float %float_3 %633 797 %646 = OpFMul %float %float_2 %633 798 %647 = OpFMul %float %float_8 %644 799 %648 = OpFSub %float %646 %647 800 %649 = OpFAdd %float %648 %float_4 801 %650 = OpFDiv %float %645 %649 802 %651 = OpFMul %float %float_2 %644 803 %652 = OpFDiv %float %651 %649 804 %653 = OpCompositeConstruct %v2float %650 %652 805 %654 = OpFOrdLessThan %bool %601 %float_4000 806 %655 = OpCompositeConstruct %v2bool %654 %654 807 %656 = OpSelect %v2float %655 %653 %622 808 %657 = OpAccessChain %_ptr_Uniform_float %_Globals %int_18 809 %658 = OpLoad %float %657 810 %659 = OpCompositeConstruct %v2float %633 %644 811 %660 = OpExtInst %v2float %1 Normalize %659 812 %661 = OpCompositeExtract %float %660 1 813 %662 = OpFNegate %float %661 814 %663 = OpFMul %float %662 %658 815 %664 = OpFMul %float %663 %float_0_0500000007 816 %665 = OpFAdd %float %633 %664 817 %666 = OpCompositeExtract %float %660 0 818 %667 = OpFMul %float %666 %658 819 %668 = OpFMul %float %667 %float_0_0500000007 820 %669 = OpFAdd %float %644 %668 821 %670 = OpFMul %float %float_3 %665 822 %671 = OpFMul %float %float_2 %665 823 %672 = OpFMul %float %float_8 %669 824 %673 = OpFSub %float %671 %672 825 %674 = OpFAdd %float %673 %float_4 826 %675 = OpFDiv %float %670 %674 827 %676 = OpFMul %float %float_2 %669 828 %677 = OpFDiv %float %676 %674 829 %678 = OpCompositeConstruct %v2float %675 %677 830 %679 = OpFSub %v2float %678 %653 831 %680 = OpFAdd %v2float %656 %679 832 %681 = OpCompositeExtract %float %680 0 833 %682 = OpCompositeExtract %float %680 1 834 %683 = OpExtInst %float %1 FMax %682 %float_1_00000001en10 835 %684 = OpFDiv %float %681 %683 836 %685 = OpCompositeInsert %v3float %684 %391 0 837 %686 = OpCompositeInsert %v3float %float_1 %685 1 838 %687 = OpFSub %float %float_1 %681 839 %688 = OpFSub %float %687 %682 840 %689 = OpFDiv %float %688 %683 841 %690 = OpCompositeInsert %v3float %689 %686 2 842 %691 = OpExtInst %float %1 FMax %float_0_328999996 %float_1_00000001en10 843 %692 = OpFDiv %float %float_0_312700003 %691 844 %693 = OpCompositeInsert %v3float %692 %391 0 845 %694 = OpCompositeInsert %v3float %float_1 %693 1 846 %695 = OpFDiv %float %float_0_358299971 %691 847 %696 = OpCompositeInsert %v3float %695 %694 2 848 %697 = OpVectorTimesMatrix %v3float %690 %452 849 %698 = OpVectorTimesMatrix %v3float %696 %452 850 %699 = OpCompositeExtract %float %698 0 851 %700 = OpCompositeExtract %float %697 0 852 %701 = OpFDiv %float %699 %700 853 %702 = OpCompositeConstruct %v3float %701 %float_0 %float_0 854 %703 = OpCompositeExtract %float %698 1 855 %704 = OpCompositeExtract %float %697 1 856 %705 = OpFDiv %float %703 %704 857 %706 = OpCompositeConstruct %v3float %float_0 %705 %float_0 858 %707 = OpCompositeExtract %float %698 2 859 %708 = OpCompositeExtract %float %697 2 860 %709 = OpFDiv %float %707 %708 861 %710 = OpCompositeConstruct %v3float %float_0 %float_0 %709 862 %711 = OpCompositeConstruct %mat3v3float %702 %706 %710 863 %712 = OpMatrixTimesMatrix %mat3v3float %452 %711 864 %713 = OpMatrixTimesMatrix %mat3v3float %712 %456 865 %714 = OpMatrixTimesMatrix %mat3v3float %422 %713 866 %715 = OpMatrixTimesMatrix %mat3v3float %714 %418 867 %716 = OpVectorTimesMatrix %v3float %599 %715 868 %717 = OpVectorTimesMatrix %v3float %716 %547 869 %718 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_9 870 %719 = OpAccessChain %_ptr_Uniform_float %_Globals %int_9 %int_3 871 %720 = OpLoad %float %719 872 %721 = OpFOrdNotEqual %bool %720 %float_0 873 OpSelectionMerge %722 None 874 OpBranchConditional %721 %723 %722 875 %723 = OpLabel 876 %724 = OpDot %float %717 %67 877 %725 = OpCompositeConstruct %v3float %724 %724 %724 878 %726 = OpFDiv %v3float %717 %725 879 %727 = OpFSub %v3float %726 %135 880 %728 = OpDot %float %727 %727 881 %729 = OpFMul %float %float_n4 %728 882 %730 = OpExtInst %float %1 Exp2 %729 883 %731 = OpFSub %float %float_1 %730 884 %732 = OpAccessChain %_ptr_Uniform_float %_Globals %int_44 885 %733 = OpLoad %float %732 886 %734 = OpFMul %float %float_n4 %733 887 %735 = OpFMul %float %734 %724 888 %736 = OpFMul %float %735 %724 889 %737 = OpExtInst %float %1 Exp2 %736 890 %738 = OpFSub %float %float_1 %737 891 %739 = OpFMul %float %731 %738 892 %740 = OpMatrixTimesMatrix %mat3v3float %461 %406 893 %741 = OpMatrixTimesMatrix %mat3v3float %549 %740 894 %742 = OpVectorTimesMatrix %v3float %717 %741 895 %743 = OpCompositeConstruct %v3float %739 %739 %739 896 %744 = OpExtInst %v3float %1 FMix %717 %742 %743 897 OpBranch %722 898 %722 = OpLabel 899 %745 = OpPhi %v3float %717 %581 %744 %723 900 %746 = OpDot %float %745 %67 901 %747 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_24 902 %748 = OpLoad %v4float %747 903 %749 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_19 904 %750 = OpLoad %v4float %749 905 %751 = OpFMul %v4float %748 %750 906 %752 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_25 907 %753 = OpLoad %v4float %752 908 %754 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_20 909 %755 = OpLoad %v4float %754 910 %756 = OpFMul %v4float %753 %755 911 %757 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_26 912 %758 = OpLoad %v4float %757 913 %759 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_21 914 %760 = OpLoad %v4float %759 915 %761 = OpFMul %v4float %758 %760 916 %762 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_27 917 %763 = OpLoad %v4float %762 918 %764 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_22 919 %765 = OpLoad %v4float %764 920 %766 = OpFMul %v4float %763 %765 921 %767 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_28 922 %768 = OpLoad %v4float %767 923 %769 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_23 924 %770 = OpLoad %v4float %769 925 %771 = OpFAdd %v4float %768 %770 926 %772 = OpCompositeConstruct %v3float %746 %746 %746 927 %773 = OpVectorShuffle %v3float %751 %751 0 1 2 928 %774 = OpCompositeExtract %float %751 3 929 %775 = OpCompositeConstruct %v3float %774 %774 %774 930 %776 = OpFMul %v3float %773 %775 931 %777 = OpExtInst %v3float %1 FMix %772 %745 %776 932 %778 = OpExtInst %v3float %1 FMax %132 %777 933 %779 = OpFMul %v3float %778 %307 934 %780 = OpVectorShuffle %v3float %756 %756 0 1 2 935 %781 = OpCompositeExtract %float %756 3 936 %782 = OpCompositeConstruct %v3float %781 %781 %781 937 %783 = OpFMul %v3float %780 %782 938 %784 = OpExtInst %v3float %1 Pow %779 %783 939 %785 = OpFMul %v3float %784 %194 940 %786 = OpVectorShuffle %v3float %761 %761 0 1 2 941 %787 = OpCompositeExtract %float %761 3 942 %788 = OpCompositeConstruct %v3float %787 %787 %787 943 %789 = OpFMul %v3float %786 %788 944 %790 = OpFDiv %v3float %135 %789 945 %791 = OpExtInst %v3float %1 Pow %785 %790 946 %792 = OpVectorShuffle %v3float %766 %766 0 1 2 947 %793 = OpCompositeExtract %float %766 3 948 %794 = OpCompositeConstruct %v3float %793 %793 %793 949 %795 = OpFMul %v3float %792 %794 950 %796 = OpFMul %v3float %791 %795 951 %797 = OpVectorShuffle %v3float %771 %771 0 1 2 952 %798 = OpCompositeExtract %float %771 3 953 %799 = OpCompositeConstruct %v3float %798 %798 %798 954 %800 = OpFAdd %v3float %797 %799 955 %801 = OpFAdd %v3float %796 %800 956 %802 = OpAccessChain %_ptr_Uniform_float %_Globals %int_39 957 %803 = OpLoad %float %802 958 %804 = OpExtInst %float %1 SmoothStep %float_0 %803 %746 959 %805 = OpFSub %float %float_1 %804 960 %806 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_34 961 %807 = OpLoad %v4float %806 962 %808 = OpFMul %v4float %807 %750 963 %809 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_35 964 %810 = OpLoad %v4float %809 965 %811 = OpFMul %v4float %810 %755 966 %812 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_36 967 %813 = OpLoad %v4float %812 968 %814 = OpFMul %v4float %813 %760 969 %815 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_37 970 %816 = OpLoad %v4float %815 971 %817 = OpFMul %v4float %816 %765 972 %818 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_38 973 %819 = OpLoad %v4float %818 974 %820 = OpFAdd %v4float %819 %770 975 %821 = OpVectorShuffle %v3float %808 %808 0 1 2 976 %822 = OpCompositeExtract %float %808 3 977 %823 = OpCompositeConstruct %v3float %822 %822 %822 978 %824 = OpFMul %v3float %821 %823 979 %825 = OpExtInst %v3float %1 FMix %772 %745 %824 980 %826 = OpExtInst %v3float %1 FMax %132 %825 981 %827 = OpFMul %v3float %826 %307 982 %828 = OpVectorShuffle %v3float %811 %811 0 1 2 983 %829 = OpCompositeExtract %float %811 3 984 %830 = OpCompositeConstruct %v3float %829 %829 %829 985 %831 = OpFMul %v3float %828 %830 986 %832 = OpExtInst %v3float %1 Pow %827 %831 987 %833 = OpFMul %v3float %832 %194 988 %834 = OpVectorShuffle %v3float %814 %814 0 1 2 989 %835 = OpCompositeExtract %float %814 3 990 %836 = OpCompositeConstruct %v3float %835 %835 %835 991 %837 = OpFMul %v3float %834 %836 992 %838 = OpFDiv %v3float %135 %837 993 %839 = OpExtInst %v3float %1 Pow %833 %838 994 %840 = OpVectorShuffle %v3float %817 %817 0 1 2 995 %841 = OpCompositeExtract %float %817 3 996 %842 = OpCompositeConstruct %v3float %841 %841 %841 997 %843 = OpFMul %v3float %840 %842 998 %844 = OpFMul %v3float %839 %843 999 %845 = OpVectorShuffle %v3float %820 %820 0 1 2 1000 %846 = OpCompositeExtract %float %820 3 1001 %847 = OpCompositeConstruct %v3float %846 %846 %846 1002 %848 = OpFAdd %v3float %845 %847 1003 %849 = OpFAdd %v3float %844 %848 1004 %850 = OpAccessChain %_ptr_Uniform_float %_Globals %int_40 1005 %851 = OpLoad %float %850 1006 %852 = OpExtInst %float %1 SmoothStep %851 %float_1 %746 1007 %853 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_29 1008 %854 = OpLoad %v4float %853 1009 %855 = OpFMul %v4float %854 %750 1010 %856 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_30 1011 %857 = OpLoad %v4float %856 1012 %858 = OpFMul %v4float %857 %755 1013 %859 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_31 1014 %860 = OpLoad %v4float %859 1015 %861 = OpFMul %v4float %860 %760 1016 %862 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_32 1017 %863 = OpLoad %v4float %862 1018 %864 = OpFMul %v4float %863 %765 1019 %865 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_33 1020 %866 = OpLoad %v4float %865 1021 %867 = OpFAdd %v4float %866 %770 1022 %868 = OpVectorShuffle %v3float %855 %855 0 1 2 1023 %869 = OpCompositeExtract %float %855 3 1024 %870 = OpCompositeConstruct %v3float %869 %869 %869 1025 %871 = OpFMul %v3float %868 %870 1026 %872 = OpExtInst %v3float %1 FMix %772 %745 %871 1027 %873 = OpExtInst %v3float %1 FMax %132 %872 1028 %874 = OpFMul %v3float %873 %307 1029 %875 = OpVectorShuffle %v3float %858 %858 0 1 2 1030 %876 = OpCompositeExtract %float %858 3 1031 %877 = OpCompositeConstruct %v3float %876 %876 %876 1032 %878 = OpFMul %v3float %875 %877 1033 %879 = OpExtInst %v3float %1 Pow %874 %878 1034 %880 = OpFMul %v3float %879 %194 1035 %881 = OpVectorShuffle %v3float %861 %861 0 1 2 1036 %882 = OpCompositeExtract %float %861 3 1037 %883 = OpCompositeConstruct %v3float %882 %882 %882 1038 %884 = OpFMul %v3float %881 %883 1039 %885 = OpFDiv %v3float %135 %884 1040 %886 = OpExtInst %v3float %1 Pow %880 %885 1041 %887 = OpVectorShuffle %v3float %864 %864 0 1 2 1042 %888 = OpCompositeExtract %float %864 3 1043 %889 = OpCompositeConstruct %v3float %888 %888 %888 1044 %890 = OpFMul %v3float %887 %889 1045 %891 = OpFMul %v3float %886 %890 1046 %892 = OpVectorShuffle %v3float %867 %867 0 1 2 1047 %893 = OpCompositeExtract %float %867 3 1048 %894 = OpCompositeConstruct %v3float %893 %893 %893 1049 %895 = OpFAdd %v3float %892 %894 1050 %896 = OpFAdd %v3float %891 %895 1051 %897 = OpFSub %float %804 %852 1052 %898 = OpCompositeConstruct %v3float %805 %805 %805 1053 %899 = OpFMul %v3float %801 %898 1054 %900 = OpCompositeConstruct %v3float %897 %897 %897 1055 %901 = OpFMul %v3float %896 %900 1056 %902 = OpFAdd %v3float %899 %901 1057 %903 = OpCompositeConstruct %v3float %852 %852 %852 1058 %904 = OpFMul %v3float %849 %903 1059 %905 = OpFAdd %v3float %902 %904 1060 %906 = OpVectorTimesMatrix %v3float %905 %549 1061 %907 = OpMatrixTimesMatrix %mat3v3float %551 %465 1062 %908 = OpMatrixTimesMatrix %mat3v3float %907 %550 1063 %909 = OpMatrixTimesMatrix %mat3v3float %551 %469 1064 %910 = OpMatrixTimesMatrix %mat3v3float %909 %550 1065 %911 = OpVectorTimesMatrix %v3float %905 %908 1066 %912 = OpAccessChain %_ptr_Uniform_float %_Globals %int_43 1067 %913 = OpLoad %float %912 1068 %914 = OpCompositeConstruct %v3float %913 %913 %913 1069 %915 = OpExtInst %v3float %1 FMix %905 %911 %914 1070 %916 = OpVectorTimesMatrix %v3float %915 %551 1071 %917 = OpCompositeExtract %float %916 0 1072 %918 = OpCompositeExtract %float %916 1 1073 %919 = OpExtInst %float %1 FMin %917 %918 1074 %920 = OpCompositeExtract %float %916 2 1075 %921 = OpExtInst %float %1 FMin %919 %920 1076 %922 = OpExtInst %float %1 FMax %917 %918 1077 %923 = OpExtInst %float %1 FMax %922 %920 1078 %924 = OpExtInst %float %1 FMax %923 %float_1_00000001en10 1079 %925 = OpExtInst %float %1 FMax %921 %float_1_00000001en10 1080 %926 = OpFSub %float %924 %925 1081 %927 = OpExtInst %float %1 FMax %923 %float_0_00999999978 1082 %928 = OpFDiv %float %926 %927 1083 %929 = OpFSub %float %920 %918 1084 %930 = OpFMul %float %920 %929 1085 %931 = OpFSub %float %918 %917 1086 %932 = OpFMul %float %918 %931 1087 %933 = OpFAdd %float %930 %932 1088 %934 = OpFSub %float %917 %920 1089 %935 = OpFMul %float %917 %934 1090 %936 = OpFAdd %float %933 %935 1091 %937 = OpExtInst %float %1 Sqrt %936 1092 %938 = OpFAdd %float %920 %918 1093 %939 = OpFAdd %float %938 %917 1094 %940 = OpFMul %float %float_1_75 %937 1095 %941 = OpFAdd %float %939 %940 1096 %942 = OpFMul %float %941 %float_0_333333343 1097 %943 = OpFSub %float %928 %float_0_400000006 1098 %944 = OpFMul %float %943 %float_5 1099 %945 = OpFMul %float %943 %float_2_5 1100 %946 = OpExtInst %float %1 FAbs %945 1101 %947 = OpFSub %float %float_1 %946 1102 %948 = OpExtInst %float %1 FMax %947 %float_0 1103 %949 = OpExtInst %float %1 FSign %944 1104 %950 = OpConvertFToS %int %949 1105 %951 = OpConvertSToF %float %950 1106 %952 = OpFMul %float %948 %948 1107 %953 = OpFSub %float %float_1 %952 1108 %954 = OpFMul %float %951 %953 1109 %955 = OpFAdd %float %float_1 %954 1110 %956 = OpFMul %float %955 %float_0_0250000004 1111 %957 = OpFOrdLessThanEqual %bool %942 %float_0_0533333346 1112 OpSelectionMerge %958 None 1113 OpBranchConditional %957 %959 %960 1114 %960 = OpLabel 1115 %961 = OpFOrdGreaterThanEqual %bool %942 %float_0_159999996 1116 OpSelectionMerge %962 None 1117 OpBranchConditional %961 %963 %964 1118 %964 = OpLabel 1119 %965 = OpFDiv %float %float_0_239999995 %941 1120 %966 = OpFSub %float %965 %float_0_5 1121 %967 = OpFMul %float %956 %966 1122 OpBranch %962 1123 %963 = OpLabel 1124 OpBranch %962 1125 %962 = OpLabel 1126 %968 = OpPhi %float %967 %964 %float_0 %963 1127 OpBranch %958 1128 %959 = OpLabel 1129 OpBranch %958 1130 %958 = OpLabel 1131 %969 = OpPhi %float %968 %962 %956 %959 1132 %970 = OpFAdd %float %float_1 %969 1133 %971 = OpCompositeConstruct %v3float %970 %970 %970 1134 %972 = OpFMul %v3float %916 %971 1135 %973 = OpCompositeExtract %float %972 0 1136 %974 = OpCompositeExtract %float %972 1 1137 %975 = OpFOrdEqual %bool %973 %974 1138 %976 = OpCompositeExtract %float %972 2 1139 %977 = OpFOrdEqual %bool %974 %976 1140 %978 = OpLogicalAnd %bool %975 %977 1141 OpSelectionMerge %979 None 1142 OpBranchConditional %978 %980 %981 1143 %981 = OpLabel 1144 %982 = OpExtInst %float %1 Sqrt %float_3 1145 %983 = OpFSub %float %974 %976 1146 %984 = OpFMul %float %982 %983 1147 %985 = OpFMul %float %float_2 %973 1148 %986 = OpFSub %float %985 %974 1149 %987 = OpFSub %float %986 %976 1150 %988 = OpExtInst %float %1 Atan2 %984 %987 1151 %989 = OpFMul %float %float_57_2957764 %988 1152 OpBranch %979 1153 %980 = OpLabel 1154 OpBranch %979 1155 %979 = OpLabel 1156 %990 = OpPhi %float %989 %981 %float_0 %980 1157 %991 = OpFOrdLessThan %bool %990 %float_0 1158 OpSelectionMerge %992 None 1159 OpBranchConditional %991 %993 %992 1160 %993 = OpLabel 1161 %994 = OpFAdd %float %990 %float_360 1162 OpBranch %992 1163 %992 = OpLabel 1164 %995 = OpPhi %float %990 %979 %994 %993 1165 %996 = OpExtInst %float %1 FClamp %995 %float_0 %float_360 1166 %997 = OpFOrdGreaterThan %bool %996 %float_180 1167 OpSelectionMerge %998 None 1168 OpBranchConditional %997 %999 %998 1169 %999 = OpLabel 1170 %1000 = OpFSub %float %996 %float_360 1171 OpBranch %998 1172 %998 = OpLabel 1173 %1001 = OpPhi %float %996 %992 %1000 %999 1174 %1002 = OpFMul %float %1001 %float_0_0148148146 1175 %1003 = OpExtInst %float %1 FAbs %1002 1176 %1004 = OpFSub %float %float_1 %1003 1177 %1005 = OpExtInst %float %1 SmoothStep %float_0 %float_1 %1004 1178 %1006 = OpFMul %float %1005 %1005 1179 %1007 = OpFMul %float %1006 %928 1180 %1008 = OpFSub %float %float_0_0299999993 %973 1181 %1009 = OpFMul %float %1007 %1008 1182 %1010 = OpFMul %float %1009 %float_0_180000007 1183 %1011 = OpFAdd %float %973 %1010 1184 %1012 = OpCompositeInsert %v3float %1011 %972 0 1185 %1013 = OpVectorTimesMatrix %v3float %1012 %410 1186 %1014 = OpExtInst %v3float %1 FMax %132 %1013 1187 %1015 = OpDot %float %1014 %67 1188 %1016 = OpCompositeConstruct %v3float %1015 %1015 %1015 1189 %1017 = OpExtInst %v3float %1 FMix %1016 %1014 %228 1190 %1018 = OpAccessChain %_ptr_Uniform_float %_Globals %int_13 1191 %1019 = OpLoad %float %1018 1192 %1020 = OpFAdd %float %float_1 %1019 1193 %1021 = OpAccessChain %_ptr_Uniform_float %_Globals %int_11 1194 %1022 = OpLoad %float %1021 1195 %1023 = OpFSub %float %1020 %1022 1196 %1024 = OpAccessChain %_ptr_Uniform_float %_Globals %int_14 1197 %1025 = OpLoad %float %1024 1198 %1026 = OpFAdd %float %float_1 %1025 1199 %1027 = OpAccessChain %_ptr_Uniform_float %_Globals %int_12 1200 %1028 = OpLoad %float %1027 1201 %1029 = OpFSub %float %1026 %1028 1202 %1030 = OpFOrdGreaterThan %bool %1022 %float_0_800000012 1203 OpSelectionMerge %1031 None 1204 OpBranchConditional %1030 %1032 %1033 1205 %1033 = OpLabel 1206 %1034 = OpFAdd %float %float_0_180000007 %1019 1207 %1035 = OpFDiv %float %1034 %1023 1208 %1036 = OpExtInst %float %1 Log %float_0_180000007 1209 %1037 = OpExtInst %float %1 Log %float_10 1210 %1038 = OpFDiv %float %1036 %1037 1211 %1039 = OpFSub %float %float_2 %1035 1212 %1040 = OpFDiv %float %1035 %1039 1213 %1041 = OpExtInst %float %1 Log %1040 1214 %1042 = OpFMul %float %float_0_5 %1041 1215 %1043 = OpAccessChain %_ptr_Uniform_float %_Globals %int_10 1216 %1044 = OpLoad %float %1043 1217 %1045 = OpFDiv %float %1023 %1044 1218 %1046 = OpFMul %float %1042 %1045 1219 %1047 = OpFSub %float %1038 %1046 1220 OpBranch %1031 1221 %1032 = OpLabel 1222 %1048 = OpFSub %float %float_0_819999993 %1022 1223 %1049 = OpAccessChain %_ptr_Uniform_float %_Globals %int_10 1224 %1050 = OpLoad %float %1049 1225 %1051 = OpFDiv %float %1048 %1050 1226 %1052 = OpExtInst %float %1 Log %float_0_180000007 1227 %1053 = OpExtInst %float %1 Log %float_10 1228 %1054 = OpFDiv %float %1052 %1053 1229 %1055 = OpFAdd %float %1051 %1054 1230 OpBranch %1031 1231 %1031 = OpLabel 1232 %1056 = OpPhi %float %1047 %1033 %1055 %1032 1233 %1057 = OpFSub %float %float_1 %1022 1234 %1058 = OpAccessChain %_ptr_Uniform_float %_Globals %int_10 1235 %1059 = OpLoad %float %1058 1236 %1060 = OpFDiv %float %1057 %1059 1237 %1061 = OpFSub %float %1060 %1056 1238 %1062 = OpFDiv %float %1028 %1059 1239 %1063 = OpFSub %float %1062 %1061 1240 %1064 = OpExtInst %v3float %1 Log %1017 1241 %1065 = OpExtInst %float %1 Log %float_10 1242 %1066 = OpCompositeConstruct %v3float %1065 %1065 %1065 1243 %1067 = OpFDiv %v3float %1064 %1066 1244 %1068 = OpCompositeConstruct %v3float %1059 %1059 %1059 1245 %1069 = OpCompositeConstruct %v3float %1061 %1061 %1061 1246 %1070 = OpFAdd %v3float %1067 %1069 1247 %1071 = OpFMul %v3float %1068 %1070 1248 %1072 = OpFNegate %float %1019 1249 %1073 = OpCompositeConstruct %v3float %1072 %1072 %1072 1250 %1074 = OpFMul %float %float_2 %1023 1251 %1075 = OpCompositeConstruct %v3float %1074 %1074 %1074 1252 %1076 = OpFMul %float %float_n2 %1059 1253 %1077 = OpFDiv %float %1076 %1023 1254 %1078 = OpCompositeConstruct %v3float %1077 %1077 %1077 1255 %1079 = OpCompositeConstruct %v3float %1056 %1056 %1056 1256 %1080 = OpFSub %v3float %1067 %1079 1257 %1081 = OpFMul %v3float %1078 %1080 1258 %1082 = OpExtInst %v3float %1 Exp %1081 1259 %1083 = OpFAdd %v3float %135 %1082 1260 %1084 = OpFDiv %v3float %1075 %1083 1261 %1085 = OpFAdd %v3float %1073 %1084 1262 %1086 = OpCompositeConstruct %v3float %1026 %1026 %1026 1263 %1087 = OpFMul %float %float_2 %1029 1264 %1088 = OpCompositeConstruct %v3float %1087 %1087 %1087 1265 %1089 = OpFMul %float %float_2 %1059 1266 %1090 = OpFDiv %float %1089 %1029 1267 %1091 = OpCompositeConstruct %v3float %1090 %1090 %1090 1268 %1092 = OpCompositeConstruct %v3float %1063 %1063 %1063 1269 %1093 = OpFSub %v3float %1067 %1092 1270 %1094 = OpFMul %v3float %1091 %1093 1271 %1095 = OpExtInst %v3float %1 Exp %1094 1272 %1096 = OpFAdd %v3float %135 %1095 1273 %1097 = OpFDiv %v3float %1088 %1096 1274 %1098 = OpFSub %v3float %1086 %1097 1275 %1099 = OpFOrdLessThan %v3bool %1067 %1079 1276 %1100 = OpSelect %v3float %1099 %1085 %1071 1277 %1101 = OpFOrdGreaterThan %v3bool %1067 %1092 1278 %1102 = OpSelect %v3float %1101 %1098 %1071 1279 %1103 = OpFSub %float %1063 %1056 1280 %1104 = OpCompositeConstruct %v3float %1103 %1103 %1103 1281 %1105 = OpFDiv %v3float %1080 %1104 1282 %1106 = OpExtInst %v3float %1 FClamp %1105 %132 %135 1283 %1107 = OpFOrdLessThan %bool %1063 %1056 1284 %1108 = OpFSub %v3float %135 %1106 1285 %1109 = OpCompositeConstruct %v3bool %1107 %1107 %1107 1286 %1110 = OpSelect %v3float %1109 %1108 %1106 1287 %1111 = OpFMul %v3float %239 %1110 1288 %1112 = OpFSub %v3float %238 %1111 1289 %1113 = OpFMul %v3float %1112 %1110 1290 %1114 = OpFMul %v3float %1113 %1110 1291 %1115 = OpExtInst %v3float %1 FMix %1100 %1102 %1114 1292 %1116 = OpDot %float %1115 %67 1293 %1117 = OpCompositeConstruct %v3float %1116 %1116 %1116 1294 %1118 = OpExtInst %v3float %1 FMix %1117 %1115 %241 1295 %1119 = OpExtInst %v3float %1 FMax %132 %1118 1296 %1120 = OpVectorTimesMatrix %v3float %1119 %910 1297 %1121 = OpExtInst %v3float %1 FMix %1119 %1120 %914 1298 %1122 = OpVectorTimesMatrix %v3float %1121 %549 1299 %1123 = OpExtInst %v3float %1 FMax %132 %1122 1300 %1124 = OpFOrdEqual %bool %720 %float_0 1301 OpSelectionMerge %1125 DontFlatten 1302 OpBranchConditional %1124 %1126 %1125 1303 %1126 = OpLabel 1304 %1127 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_2 1305 %1128 = OpLoad %v4float %1127 1306 %1129 = OpVectorShuffle %v3float %1128 %1128 0 1 2 1307 %1130 = OpDot %float %906 %1129 1308 %1131 = OpCompositeInsert %v3float %1130 %391 0 1309 %1132 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_3 1310 %1133 = OpLoad %v4float %1132 1311 %1134 = OpVectorShuffle %v3float %1133 %1133 0 1 2 1312 %1135 = OpDot %float %906 %1134 1313 %1136 = OpCompositeInsert %v3float %1135 %1131 1 1314 %1137 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_4 1315 %1138 = OpLoad %v4float %1137 1316 %1139 = OpVectorShuffle %v3float %1138 %1138 0 1 2 1317 %1140 = OpDot %float %906 %1139 1318 %1141 = OpCompositeInsert %v3float %1140 %1136 2 1319 %1142 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_8 1320 %1143 = OpLoad %v4float %1142 1321 %1144 = OpVectorShuffle %v3float %1143 %1143 0 1 2 1322 %1145 = OpLoad %v4float %718 1323 %1146 = OpVectorShuffle %v3float %1145 %1145 0 1 2 1324 %1147 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_7 1325 %1148 = OpLoad %v4float %1147 1326 %1149 = OpVectorShuffle %v3float %1148 %1148 0 1 2 1327 %1150 = OpDot %float %906 %1149 1328 %1151 = OpFAdd %float %1150 %float_1 1329 %1152 = OpFDiv %float %float_1 %1151 1330 %1153 = OpCompositeConstruct %v3float %1152 %1152 %1152 1331 %1154 = OpFMul %v3float %1146 %1153 1332 %1155 = OpFAdd %v3float %1144 %1154 1333 %1156 = OpFMul %v3float %1141 %1155 1334 %1157 = OpExtInst %v3float %1 FMax %132 %1156 1335 %1158 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_5 1336 %1159 = OpLoad %v4float %1158 1337 %1160 = OpVectorShuffle %v3float %1159 %1159 0 0 0 1338 %1161 = OpFSub %v3float %1160 %1157 1339 %1162 = OpExtInst %v3float %1 FMax %132 %1161 1340 %1163 = OpVectorShuffle %v3float %1159 %1159 2 2 2 1341 %1164 = OpExtInst %v3float %1 FMax %1157 %1163 1342 %1165 = OpExtInst %v3float %1 FClamp %1157 %1160 %1163 1343 %1166 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_6 1344 %1167 = OpLoad %v4float %1166 1345 %1168 = OpVectorShuffle %v3float %1167 %1167 0 0 0 1346 %1169 = OpFMul %v3float %1164 %1168 1347 %1170 = OpVectorShuffle %v3float %1167 %1167 1 1 1 1348 %1171 = OpFAdd %v3float %1169 %1170 1349 %1172 = OpVectorShuffle %v3float %1159 %1159 3 3 3 1350 %1173 = OpFAdd %v3float %1164 %1172 1351 %1174 = OpFDiv %v3float %135 %1173 1352 %1175 = OpFMul %v3float %1171 %1174 1353 %1176 = OpVectorShuffle %v3float %1138 %1138 3 3 3 1354 %1177 = OpFMul %v3float %1165 %1176 1355 %1178 = OpVectorShuffle %v3float %1128 %1128 3 3 3 1356 %1179 = OpFMul %v3float %1162 %1178 1357 %1180 = OpVectorShuffle %v3float %1159 %1159 1 1 1 1358 %1181 = OpFAdd %v3float %1162 %1180 1359 %1182 = OpFDiv %v3float %135 %1181 1360 %1183 = OpFMul %v3float %1179 %1182 1361 %1184 = OpVectorShuffle %v3float %1133 %1133 3 3 3 1362 %1185 = OpFAdd %v3float %1183 %1184 1363 %1186 = OpFAdd %v3float %1177 %1185 1364 %1187 = OpFAdd %v3float %1175 %1186 1365 %1188 = OpFSub %v3float %1187 %248 1366 OpBranch %1125 1367 %1125 = OpLabel 1368 %1189 = OpPhi %v3float %1123 %1031 %1188 %1126 1369 %1190 = OpAccessChain %_ptr_Uniform_float %_Globals %int_0 %int_0 1370 %1191 = OpLoad %float %1190 1371 %1192 = OpCompositeConstruct %v3float %1191 %1191 %1191 1372 %1193 = OpFMul %v3float %1189 %1189 1373 %1194 = OpFMul %v3float %1192 %1193 1374 %1195 = OpAccessChain %_ptr_Uniform_float %_Globals %int_0 %int_1 1375 %1196 = OpLoad %float %1195 1376 %1197 = OpCompositeConstruct %v3float %1196 %1196 %1196 1377 %1198 = OpFMul %v3float %1197 %1189 1378 %1199 = OpFAdd %v3float %1194 %1198 1379 %1200 = OpAccessChain %_ptr_Uniform_float %_Globals %int_0 %int_2 1380 %1201 = OpLoad %float %1200 1381 %1202 = OpCompositeConstruct %v3float %1201 %1201 %1201 1382 %1203 = OpFAdd %v3float %1199 %1202 1383 %1204 = OpAccessChain %_ptr_Uniform_v3float %_Globals %int_15 1384 %1205 = OpLoad %v3float %1204 1385 %1206 = OpFMul %v3float %1203 %1205 1386 %1207 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_16 1387 %1208 = OpLoad %v4float %1207 1388 %1209 = OpVectorShuffle %v3float %1208 %1208 0 1 2 1389 %1210 = OpAccessChain %_ptr_Uniform_float %_Globals %int_16 %int_3 1390 %1211 = OpLoad %float %1210 1391 %1212 = OpCompositeConstruct %v3float %1211 %1211 %1211 1392 %1213 = OpExtInst %v3float %1 FMix %1206 %1209 %1212 1393 %1214 = OpExtInst %v3float %1 FMax %132 %1213 1394 %1215 = OpAccessChain %_ptr_Uniform_float %_Globals %int_1 %int_1 1395 %1216 = OpLoad %float %1215 1396 %1217 = OpCompositeConstruct %v3float %1216 %1216 %1216 1397 %1218 = OpExtInst %v3float %1 Pow %1214 %1217 1398 %1219 = OpIEqual %bool %579 %uint_0 1399 OpSelectionMerge %1220 DontFlatten 1400 OpBranchConditional %1219 %1221 %1222 1401 %1222 = OpLabel 1402 %1223 = OpIEqual %bool %579 %uint_1 1403 OpSelectionMerge %1224 None 1404 OpBranchConditional %1223 %1225 %1226 1405 %1226 = OpLabel 1406 %1227 = OpIEqual %bool %579 %uint_3 1407 %1228 = OpIEqual %bool %579 %uint_5 1408 %1229 = OpLogicalOr %bool %1227 %1228 1409 OpSelectionMerge %1230 None 1410 OpBranchConditional %1229 %1231 %1232 1411 %1232 = OpLabel 1412 %1233 = OpIEqual %bool %579 %uint_4 1413 %1234 = OpIEqual %bool %579 %uint_6 1414 %1235 = OpLogicalOr %bool %1233 %1234 1415 OpSelectionMerge %1236 None 1416 OpBranchConditional %1235 %1237 %1238 1417 %1238 = OpLabel 1418 %1239 = OpIEqual %bool %579 %uint_7 1419 OpSelectionMerge %1240 None 1420 OpBranchConditional %1239 %1241 %1242 1421 %1242 = OpLabel 1422 %1243 = OpVectorTimesMatrix %v3float %1218 %547 1423 %1244 = OpVectorTimesMatrix %v3float %1243 %576 1424 %1245 = OpAccessChain %_ptr_Uniform_float %_Globals %int_1 %int_2 1425 %1246 = OpLoad %float %1245 1426 %1247 = OpCompositeConstruct %v3float %1246 %1246 %1246 1427 %1248 = OpExtInst %v3float %1 Pow %1244 %1247 1428 OpBranch %1240 1429 %1241 = OpLabel 1430 %1249 = OpVectorTimesMatrix %v3float %906 %547 1431 %1250 = OpVectorTimesMatrix %v3float %1249 %576 1432 %1251 = OpFMul %v3float %1250 %496 1433 %1252 = OpExtInst %v3float %1 Pow %1251 %263 1434 %1253 = OpFMul %v3float %184 %1252 1435 %1254 = OpFAdd %v3float %183 %1253 1436 %1255 = OpFMul %v3float %185 %1252 1437 %1256 = OpFAdd %v3float %135 %1255 1438 %1257 = OpFDiv %v3float %135 %1256 1439 %1258 = OpFMul %v3float %1254 %1257 1440 %1259 = OpExtInst %v3float %1 Pow %1258 %264 1441 OpBranch %1240 1442 %1240 = OpLabel 1443 %1260 = OpPhi %v3float %1248 %1242 %1259 %1241 1444 OpBranch %1236 1445 %1237 = OpLabel 1446 %1261 = OpMatrixTimesMatrix %mat3v3float %546 %399 1447 %1262 = OpFMul %v3float %906 %262 1448 %1263 = OpVectorTimesMatrix %v3float %1262 %1261 1449 %1264 = OpCompositeExtract %float %1263 0 1450 %1265 = OpCompositeExtract %float %1263 1 1451 %1266 = OpExtInst %float %1 FMin %1264 %1265 1452 %1267 = OpCompositeExtract %float %1263 2 1453 %1268 = OpExtInst %float %1 FMin %1266 %1267 1454 %1269 = OpExtInst %float %1 FMax %1264 %1265 1455 %1270 = OpExtInst %float %1 FMax %1269 %1267 1456 %1271 = OpExtInst %float %1 FMax %1270 %float_1_00000001en10 1457 %1272 = OpExtInst %float %1 FMax %1268 %float_1_00000001en10 1458 %1273 = OpFSub %float %1271 %1272 1459 %1274 = OpExtInst %float %1 FMax %1270 %float_0_00999999978 1460 %1275 = OpFDiv %float %1273 %1274 1461 %1276 = OpFSub %float %1267 %1265 1462 %1277 = OpFMul %float %1267 %1276 1463 %1278 = OpFSub %float %1265 %1264 1464 %1279 = OpFMul %float %1265 %1278 1465 %1280 = OpFAdd %float %1277 %1279 1466 %1281 = OpFSub %float %1264 %1267 1467 %1282 = OpFMul %float %1264 %1281 1468 %1283 = OpFAdd %float %1280 %1282 1469 %1284 = OpExtInst %float %1 Sqrt %1283 1470 %1285 = OpFAdd %float %1267 %1265 1471 %1286 = OpFAdd %float %1285 %1264 1472 %1287 = OpFMul %float %float_1_75 %1284 1473 %1288 = OpFAdd %float %1286 %1287 1474 %1289 = OpFMul %float %1288 %float_0_333333343 1475 %1290 = OpFSub %float %1275 %float_0_400000006 1476 %1291 = OpFMul %float %1290 %float_5 1477 %1292 = OpFMul %float %1290 %float_2_5 1478 %1293 = OpExtInst %float %1 FAbs %1292 1479 %1294 = OpFSub %float %float_1 %1293 1480 %1295 = OpExtInst %float %1 FMax %1294 %float_0 1481 %1296 = OpExtInst %float %1 FSign %1291 1482 %1297 = OpConvertFToS %int %1296 1483 %1298 = OpConvertSToF %float %1297 1484 %1299 = OpFMul %float %1295 %1295 1485 %1300 = OpFSub %float %float_1 %1299 1486 %1301 = OpFMul %float %1298 %1300 1487 %1302 = OpFAdd %float %float_1 %1301 1488 %1303 = OpFMul %float %1302 %float_0_0250000004 1489 %1304 = OpFOrdLessThanEqual %bool %1289 %float_0_0533333346 1490 OpSelectionMerge %1305 None 1491 OpBranchConditional %1304 %1306 %1307 1492 %1307 = OpLabel 1493 %1308 = OpFOrdGreaterThanEqual %bool %1289 %float_0_159999996 1494 OpSelectionMerge %1309 None 1495 OpBranchConditional %1308 %1310 %1311 1496 %1311 = OpLabel 1497 %1312 = OpFDiv %float %float_0_239999995 %1288 1498 %1313 = OpFSub %float %1312 %float_0_5 1499 %1314 = OpFMul %float %1303 %1313 1500 OpBranch %1309 1501 %1310 = OpLabel 1502 OpBranch %1309 1503 %1309 = OpLabel 1504 %1315 = OpPhi %float %1314 %1311 %float_0 %1310 1505 OpBranch %1305 1506 %1306 = OpLabel 1507 OpBranch %1305 1508 %1305 = OpLabel 1509 %1316 = OpPhi %float %1315 %1309 %1303 %1306 1510 %1317 = OpFAdd %float %float_1 %1316 1511 %1318 = OpCompositeConstruct %v3float %1317 %1317 %1317 1512 %1319 = OpFMul %v3float %1263 %1318 1513 %1320 = OpCompositeExtract %float %1319 0 1514 %1321 = OpCompositeExtract %float %1319 1 1515 %1322 = OpFOrdEqual %bool %1320 %1321 1516 %1323 = OpCompositeExtract %float %1319 2 1517 %1324 = OpFOrdEqual %bool %1321 %1323 1518 %1325 = OpLogicalAnd %bool %1322 %1324 1519 OpSelectionMerge %1326 None 1520 OpBranchConditional %1325 %1327 %1328 1521 %1328 = OpLabel 1522 %1329 = OpExtInst %float %1 Sqrt %float_3 1523 %1330 = OpFSub %float %1321 %1323 1524 %1331 = OpFMul %float %1329 %1330 1525 %1332 = OpFMul %float %float_2 %1320 1526 %1333 = OpFSub %float %1332 %1321 1527 %1334 = OpFSub %float %1333 %1323 1528 %1335 = OpExtInst %float %1 Atan2 %1331 %1334 1529 %1336 = OpFMul %float %float_57_2957764 %1335 1530 OpBranch %1326 1531 %1327 = OpLabel 1532 OpBranch %1326 1533 %1326 = OpLabel 1534 %1337 = OpPhi %float %1336 %1328 %float_0 %1327 1535 %1338 = OpFOrdLessThan %bool %1337 %float_0 1536 OpSelectionMerge %1339 None 1537 OpBranchConditional %1338 %1340 %1339 1538 %1340 = OpLabel 1539 %1341 = OpFAdd %float %1337 %float_360 1540 OpBranch %1339 1541 %1339 = OpLabel 1542 %1342 = OpPhi %float %1337 %1326 %1341 %1340 1543 %1343 = OpExtInst %float %1 FClamp %1342 %float_0 %float_360 1544 %1344 = OpFOrdGreaterThan %bool %1343 %float_180 1545 OpSelectionMerge %1345 None 1546 OpBranchConditional %1344 %1346 %1345 1547 %1346 = OpLabel 1548 %1347 = OpFSub %float %1343 %float_360 1549 OpBranch %1345 1550 %1345 = OpLabel 1551 %1348 = OpPhi %float %1343 %1339 %1347 %1346 1552 %1349 = OpFOrdGreaterThan %bool %1348 %float_n67_5 1553 %1350 = OpFOrdLessThan %bool %1348 %float_67_5 1554 %1351 = OpLogicalAnd %bool %1349 %1350 1555 OpSelectionMerge %1352 None 1556 OpBranchConditional %1351 %1353 %1352 1557 %1353 = OpLabel 1558 %1354 = OpFSub %float %1348 %float_n67_5 1559 %1355 = OpFMul %float %1354 %float_0_0296296291 1560 %1356 = OpConvertFToS %int %1355 1561 %1357 = OpConvertSToF %float %1356 1562 %1358 = OpFSub %float %1355 %1357 1563 %1359 = OpFMul %float %1358 %1358 1564 %1360 = OpFMul %float %1359 %1358 1565 %1361 = OpIEqual %bool %1356 %int_3 1566 OpSelectionMerge %1362 None 1567 OpBranchConditional %1361 %1363 %1364 1568 %1364 = OpLabel 1569 %1365 = OpIEqual %bool %1356 %int_2 1570 OpSelectionMerge %1366 None 1571 OpBranchConditional %1365 %1367 %1368 1572 %1368 = OpLabel 1573 %1369 = OpIEqual %bool %1356 %int_1 1574 OpSelectionMerge %1370 None 1575 OpBranchConditional %1369 %1371 %1372 1576 %1372 = OpLabel 1577 %1373 = OpIEqual %bool %1356 %int_0 1578 OpSelectionMerge %1374 None 1579 OpBranchConditional %1373 %1375 %1376 1580 %1376 = OpLabel 1581 OpBranch %1374 1582 %1375 = OpLabel 1583 %1377 = OpFMul %float %1360 %float_0_166666672 1584 OpBranch %1374 1585 %1374 = OpLabel 1586 %1378 = OpPhi %float %float_0 %1376 %1377 %1375 1587 OpBranch %1370 1588 %1371 = OpLabel 1589 %1379 = OpFMul %float %1360 %float_n0_5 1590 %1380 = OpFMul %float %1359 %float_0_5 1591 %1381 = OpFAdd %float %1379 %1380 1592 %1382 = OpFMul %float %1358 %float_0_5 1593 %1383 = OpFAdd %float %1381 %1382 1594 %1384 = OpFAdd %float %1383 %float_0_166666672 1595 OpBranch %1370 1596 %1370 = OpLabel 1597 %1385 = OpPhi %float %1378 %1374 %1384 %1371 1598 OpBranch %1366 1599 %1367 = OpLabel 1600 %1386 = OpFMul %float %1360 %float_0_5 1601 %1387 = OpFMul %float %1359 %float_n1 1602 %1388 = OpFAdd %float %1386 %1387 1603 %1389 = OpFAdd %float %1388 %float_0_666666687 1604 OpBranch %1366 1605 %1366 = OpLabel 1606 %1390 = OpPhi %float %1385 %1370 %1389 %1367 1607 OpBranch %1362 1608 %1363 = OpLabel 1609 %1391 = OpFMul %float %1360 %float_n0_166666672 1610 %1392 = OpFMul %float %1359 %float_0_5 1611 %1393 = OpFAdd %float %1391 %1392 1612 %1394 = OpFMul %float %1358 %float_n0_5 1613 %1395 = OpFAdd %float %1393 %1394 1614 %1396 = OpFAdd %float %1395 %float_0_166666672 1615 OpBranch %1362 1616 %1362 = OpLabel 1617 %1397 = OpPhi %float %1390 %1366 %1396 %1363 1618 OpBranch %1352 1619 %1352 = OpLabel 1620 %1398 = OpPhi %float %float_0 %1345 %1397 %1362 1621 %1399 = OpFMul %float %1398 %float_1_5 1622 %1400 = OpFMul %float %1399 %1275 1623 %1401 = OpFSub %float %float_0_0299999993 %1320 1624 %1402 = OpFMul %float %1400 %1401 1625 %1403 = OpFMul %float %1402 %float_0_180000007 1626 %1404 = OpFAdd %float %1320 %1403 1627 %1405 = OpCompositeInsert %v3float %1404 %1319 0 1628 %1406 = OpExtInst %v3float %1 FClamp %1405 %132 %314 1629 %1407 = OpVectorTimesMatrix %v3float %1406 %410 1630 %1408 = OpExtInst %v3float %1 FClamp %1407 %132 %314 1631 %1409 = OpDot %float %1408 %67 1632 %1410 = OpCompositeConstruct %v3float %1409 %1409 %1409 1633 %1411 = OpExtInst %v3float %1 FMix %1410 %1408 %228 1634 %1412 = OpCompositeExtract %float %1411 0 1635 %1413 = OpExtInst %float %1 Exp2 %float_n15 1636 %1414 = OpFMul %float %float_0_179999992 %1413 1637 %1415 = OpExtInst %float %1 Exp2 %float_18 1638 %1416 = OpFMul %float %float_0_179999992 %1415 1639 OpStore %502 %475 1640 OpStore %501 %476 1641 %1417 = OpFOrdLessThanEqual %bool %1412 %float_0 1642 %1418 = OpExtInst %float %1 Exp2 %float_n14 1643 %1419 = OpSelect %float %1417 %1418 %1412 1644 %1420 = OpExtInst %float %1 Log %1419 1645 %1421 = OpFDiv %float %1420 %1065 1646 %1422 = OpExtInst %float %1 Log %1414 1647 %1423 = OpFDiv %float %1422 %1065 1648 %1424 = OpFOrdLessThanEqual %bool %1421 %1423 1649 OpSelectionMerge %1425 None 1650 OpBranchConditional %1424 %1426 %1427 1651 %1427 = OpLabel 1652 %1428 = OpFOrdGreaterThan %bool %1421 %1423 1653 %1429 = OpExtInst %float %1 Log %float_0_180000007 1654 %1430 = OpFDiv %float %1429 %1065 1655 %1431 = OpFOrdLessThan %bool %1421 %1430 1656 %1432 = OpLogicalAnd %bool %1428 %1431 1657 OpSelectionMerge %1433 None 1658 OpBranchConditional %1432 %1434 %1435 1659 %1435 = OpLabel 1660 %1436 = OpFOrdGreaterThanEqual %bool %1421 %1430 1661 %1437 = OpExtInst %float %1 Log %1416 1662 %1438 = OpFDiv %float %1437 %1065 1663 %1439 = OpFOrdLessThan %bool %1421 %1438 1664 %1440 = OpLogicalAnd %bool %1436 %1439 1665 OpSelectionMerge %1441 None 1666 OpBranchConditional %1440 %1442 %1443 1667 %1443 = OpLabel 1668 %1444 = OpExtInst %float %1 Log %float_10000 1669 %1445 = OpFDiv %float %1444 %1065 1670 OpBranch %1441 1671 %1442 = OpLabel 1672 %1446 = OpFSub %float %1421 %1430 1673 %1447 = OpFMul %float %float_3 %1446 1674 %1448 = OpFSub %float %1438 %1430 1675 %1449 = OpFDiv %float %1447 %1448 1676 %1450 = OpConvertFToS %int %1449 1677 %1451 = OpConvertSToF %float %1450 1678 %1452 = OpFSub %float %1449 %1451 1679 %1453 = OpAccessChain %_ptr_Function_float %501 %1450 1680 %1454 = OpLoad %float %1453 1681 %1455 = OpIAdd %int %1450 %int_1 1682 %1456 = OpAccessChain %_ptr_Function_float %501 %1455 1683 %1457 = OpLoad %float %1456 1684 %1458 = OpIAdd %int %1450 %int_2 1685 %1459 = OpAccessChain %_ptr_Function_float %501 %1458 1686 %1460 = OpLoad %float %1459 1687 %1461 = OpCompositeConstruct %v3float %1454 %1457 %1460 1688 %1462 = OpFMul %float %1452 %1452 1689 %1463 = OpCompositeConstruct %v3float %1462 %1452 %float_1 1690 %1464 = OpMatrixTimesVector %v3float %442 %1461 1691 %1465 = OpDot %float %1463 %1464 1692 OpBranch %1441 1693 %1441 = OpLabel 1694 %1466 = OpPhi %float %1445 %1443 %1465 %1442 1695 OpBranch %1433 1696 %1434 = OpLabel 1697 %1467 = OpFSub %float %1421 %1423 1698 %1468 = OpFMul %float %float_3 %1467 1699 %1469 = OpFSub %float %1430 %1423 1700 %1470 = OpFDiv %float %1468 %1469 1701 %1471 = OpConvertFToS %int %1470 1702 %1472 = OpConvertSToF %float %1471 1703 %1473 = OpFSub %float %1470 %1472 1704 %1474 = OpAccessChain %_ptr_Function_float %502 %1471 1705 %1475 = OpLoad %float %1474 1706 %1476 = OpIAdd %int %1471 %int_1 1707 %1477 = OpAccessChain %_ptr_Function_float %502 %1476 1708 %1478 = OpLoad %float %1477 1709 %1479 = OpIAdd %int %1471 %int_2 1710 %1480 = OpAccessChain %_ptr_Function_float %502 %1479 1711 %1481 = OpLoad %float %1480 1712 %1482 = OpCompositeConstruct %v3float %1475 %1478 %1481 1713 %1483 = OpFMul %float %1473 %1473 1714 %1484 = OpCompositeConstruct %v3float %1483 %1473 %float_1 1715 %1485 = OpMatrixTimesVector %v3float %442 %1482 1716 %1486 = OpDot %float %1484 %1485 1717 OpBranch %1433 1718 %1433 = OpLabel 1719 %1487 = OpPhi %float %1466 %1441 %1486 %1434 1720 OpBranch %1425 1721 %1426 = OpLabel 1722 %1488 = OpExtInst %float %1 Log %float_9_99999975en05 1723 %1489 = OpFDiv %float %1488 %1065 1724 OpBranch %1425 1725 %1425 = OpLabel 1726 %1490 = OpPhi %float %1487 %1433 %1489 %1426 1727 %1491 = OpExtInst %float %1 Pow %float_10 %1490 1728 %1492 = OpCompositeInsert %v3float %1491 %391 0 1729 %1493 = OpCompositeExtract %float %1411 1 1730 OpStore %504 %475 1731 OpStore %503 %476 1732 %1494 = OpFOrdLessThanEqual %bool %1493 %float_0 1733 %1495 = OpSelect %float %1494 %1418 %1493 1734 %1496 = OpExtInst %float %1 Log %1495 1735 %1497 = OpFDiv %float %1496 %1065 1736 %1498 = OpFOrdLessThanEqual %bool %1497 %1423 1737 OpSelectionMerge %1499 None 1738 OpBranchConditional %1498 %1500 %1501 1739 %1501 = OpLabel 1740 %1502 = OpFOrdGreaterThan %bool %1497 %1423 1741 %1503 = OpExtInst %float %1 Log %float_0_180000007 1742 %1504 = OpFDiv %float %1503 %1065 1743 %1505 = OpFOrdLessThan %bool %1497 %1504 1744 %1506 = OpLogicalAnd %bool %1502 %1505 1745 OpSelectionMerge %1507 None 1746 OpBranchConditional %1506 %1508 %1509 1747 %1509 = OpLabel 1748 %1510 = OpFOrdGreaterThanEqual %bool %1497 %1504 1749 %1511 = OpExtInst %float %1 Log %1416 1750 %1512 = OpFDiv %float %1511 %1065 1751 %1513 = OpFOrdLessThan %bool %1497 %1512 1752 %1514 = OpLogicalAnd %bool %1510 %1513 1753 OpSelectionMerge %1515 None 1754 OpBranchConditional %1514 %1516 %1517 1755 %1517 = OpLabel 1756 %1518 = OpExtInst %float %1 Log %float_10000 1757 %1519 = OpFDiv %float %1518 %1065 1758 OpBranch %1515 1759 %1516 = OpLabel 1760 %1520 = OpFSub %float %1497 %1504 1761 %1521 = OpFMul %float %float_3 %1520 1762 %1522 = OpFSub %float %1512 %1504 1763 %1523 = OpFDiv %float %1521 %1522 1764 %1524 = OpConvertFToS %int %1523 1765 %1525 = OpConvertSToF %float %1524 1766 %1526 = OpFSub %float %1523 %1525 1767 %1527 = OpAccessChain %_ptr_Function_float %503 %1524 1768 %1528 = OpLoad %float %1527 1769 %1529 = OpIAdd %int %1524 %int_1 1770 %1530 = OpAccessChain %_ptr_Function_float %503 %1529 1771 %1531 = OpLoad %float %1530 1772 %1532 = OpIAdd %int %1524 %int_2 1773 %1533 = OpAccessChain %_ptr_Function_float %503 %1532 1774 %1534 = OpLoad %float %1533 1775 %1535 = OpCompositeConstruct %v3float %1528 %1531 %1534 1776 %1536 = OpFMul %float %1526 %1526 1777 %1537 = OpCompositeConstruct %v3float %1536 %1526 %float_1 1778 %1538 = OpMatrixTimesVector %v3float %442 %1535 1779 %1539 = OpDot %float %1537 %1538 1780 OpBranch %1515 1781 %1515 = OpLabel 1782 %1540 = OpPhi %float %1519 %1517 %1539 %1516 1783 OpBranch %1507 1784 %1508 = OpLabel 1785 %1541 = OpFSub %float %1497 %1423 1786 %1542 = OpFMul %float %float_3 %1541 1787 %1543 = OpFSub %float %1504 %1423 1788 %1544 = OpFDiv %float %1542 %1543 1789 %1545 = OpConvertFToS %int %1544 1790 %1546 = OpConvertSToF %float %1545 1791 %1547 = OpFSub %float %1544 %1546 1792 %1548 = OpAccessChain %_ptr_Function_float %504 %1545 1793 %1549 = OpLoad %float %1548 1794 %1550 = OpIAdd %int %1545 %int_1 1795 %1551 = OpAccessChain %_ptr_Function_float %504 %1550 1796 %1552 = OpLoad %float %1551 1797 %1553 = OpIAdd %int %1545 %int_2 1798 %1554 = OpAccessChain %_ptr_Function_float %504 %1553 1799 %1555 = OpLoad %float %1554 1800 %1556 = OpCompositeConstruct %v3float %1549 %1552 %1555 1801 %1557 = OpFMul %float %1547 %1547 1802 %1558 = OpCompositeConstruct %v3float %1557 %1547 %float_1 1803 %1559 = OpMatrixTimesVector %v3float %442 %1556 1804 %1560 = OpDot %float %1558 %1559 1805 OpBranch %1507 1806 %1507 = OpLabel 1807 %1561 = OpPhi %float %1540 %1515 %1560 %1508 1808 OpBranch %1499 1809 %1500 = OpLabel 1810 %1562 = OpExtInst %float %1 Log %float_9_99999975en05 1811 %1563 = OpFDiv %float %1562 %1065 1812 OpBranch %1499 1813 %1499 = OpLabel 1814 %1564 = OpPhi %float %1561 %1507 %1563 %1500 1815 %1565 = OpExtInst %float %1 Pow %float_10 %1564 1816 %1566 = OpCompositeInsert %v3float %1565 %1492 1 1817 %1567 = OpCompositeExtract %float %1411 2 1818 OpStore %506 %475 1819 OpStore %505 %476 1820 %1568 = OpFOrdLessThanEqual %bool %1567 %float_0 1821 %1569 = OpSelect %float %1568 %1418 %1567 1822 %1570 = OpExtInst %float %1 Log %1569 1823 %1571 = OpFDiv %float %1570 %1065 1824 %1572 = OpFOrdLessThanEqual %bool %1571 %1423 1825 OpSelectionMerge %1573 None 1826 OpBranchConditional %1572 %1574 %1575 1827 %1575 = OpLabel 1828 %1576 = OpFOrdGreaterThan %bool %1571 %1423 1829 %1577 = OpExtInst %float %1 Log %float_0_180000007 1830 %1578 = OpFDiv %float %1577 %1065 1831 %1579 = OpFOrdLessThan %bool %1571 %1578 1832 %1580 = OpLogicalAnd %bool %1576 %1579 1833 OpSelectionMerge %1581 None 1834 OpBranchConditional %1580 %1582 %1583 1835 %1583 = OpLabel 1836 %1584 = OpFOrdGreaterThanEqual %bool %1571 %1578 1837 %1585 = OpExtInst %float %1 Log %1416 1838 %1586 = OpFDiv %float %1585 %1065 1839 %1587 = OpFOrdLessThan %bool %1571 %1586 1840 %1588 = OpLogicalAnd %bool %1584 %1587 1841 OpSelectionMerge %1589 None 1842 OpBranchConditional %1588 %1590 %1591 1843 %1591 = OpLabel 1844 %1592 = OpExtInst %float %1 Log %float_10000 1845 %1593 = OpFDiv %float %1592 %1065 1846 OpBranch %1589 1847 %1590 = OpLabel 1848 %1594 = OpFSub %float %1571 %1578 1849 %1595 = OpFMul %float %float_3 %1594 1850 %1596 = OpFSub %float %1586 %1578 1851 %1597 = OpFDiv %float %1595 %1596 1852 %1598 = OpConvertFToS %int %1597 1853 %1599 = OpConvertSToF %float %1598 1854 %1600 = OpFSub %float %1597 %1599 1855 %1601 = OpAccessChain %_ptr_Function_float %505 %1598 1856 %1602 = OpLoad %float %1601 1857 %1603 = OpIAdd %int %1598 %int_1 1858 %1604 = OpAccessChain %_ptr_Function_float %505 %1603 1859 %1605 = OpLoad %float %1604 1860 %1606 = OpIAdd %int %1598 %int_2 1861 %1607 = OpAccessChain %_ptr_Function_float %505 %1606 1862 %1608 = OpLoad %float %1607 1863 %1609 = OpCompositeConstruct %v3float %1602 %1605 %1608 1864 %1610 = OpFMul %float %1600 %1600 1865 %1611 = OpCompositeConstruct %v3float %1610 %1600 %float_1 1866 %1612 = OpMatrixTimesVector %v3float %442 %1609 1867 %1613 = OpDot %float %1611 %1612 1868 OpBranch %1589 1869 %1589 = OpLabel 1870 %1614 = OpPhi %float %1593 %1591 %1613 %1590 1871 OpBranch %1581 1872 %1582 = OpLabel 1873 %1615 = OpFSub %float %1571 %1423 1874 %1616 = OpFMul %float %float_3 %1615 1875 %1617 = OpFSub %float %1578 %1423 1876 %1618 = OpFDiv %float %1616 %1617 1877 %1619 = OpConvertFToS %int %1618 1878 %1620 = OpConvertSToF %float %1619 1879 %1621 = OpFSub %float %1618 %1620 1880 %1622 = OpAccessChain %_ptr_Function_float %506 %1619 1881 %1623 = OpLoad %float %1622 1882 %1624 = OpIAdd %int %1619 %int_1 1883 %1625 = OpAccessChain %_ptr_Function_float %506 %1624 1884 %1626 = OpLoad %float %1625 1885 %1627 = OpIAdd %int %1619 %int_2 1886 %1628 = OpAccessChain %_ptr_Function_float %506 %1627 1887 %1629 = OpLoad %float %1628 1888 %1630 = OpCompositeConstruct %v3float %1623 %1626 %1629 1889 %1631 = OpFMul %float %1621 %1621 1890 %1632 = OpCompositeConstruct %v3float %1631 %1621 %float_1 1891 %1633 = OpMatrixTimesVector %v3float %442 %1630 1892 %1634 = OpDot %float %1632 %1633 1893 OpBranch %1581 1894 %1581 = OpLabel 1895 %1635 = OpPhi %float %1614 %1589 %1634 %1582 1896 OpBranch %1573 1897 %1574 = OpLabel 1898 %1636 = OpExtInst %float %1 Log %float_9_99999975en05 1899 %1637 = OpFDiv %float %1636 %1065 1900 OpBranch %1573 1901 %1573 = OpLabel 1902 %1638 = OpPhi %float %1635 %1581 %1637 %1574 1903 %1639 = OpExtInst %float %1 Pow %float_10 %1638 1904 %1640 = OpCompositeInsert %v3float %1639 %1566 2 1905 %1641 = OpVectorTimesMatrix %v3float %1640 %414 1906 %1642 = OpVectorTimesMatrix %v3float %1641 %410 1907 %1643 = OpExtInst %float %1 Pow %float_2 %float_n12 1908 %1644 = OpFMul %float %float_0_179999992 %1643 1909 OpStore %514 %475 1910 OpStore %513 %476 1911 %1645 = OpFOrdLessThanEqual %bool %1644 %float_0 1912 %1646 = OpSelect %float %1645 %1418 %1644 1913 %1647 = OpExtInst %float %1 Log %1646 1914 %1648 = OpFDiv %float %1647 %1065 1915 %1649 = OpFOrdLessThanEqual %bool %1648 %1423 1916 OpSelectionMerge %1650 None 1917 OpBranchConditional %1649 %1651 %1652 1918 %1652 = OpLabel 1919 %1653 = OpFOrdGreaterThan %bool %1648 %1423 1920 %1654 = OpExtInst %float %1 Log %float_0_180000007 1921 %1655 = OpFDiv %float %1654 %1065 1922 %1656 = OpFOrdLessThan %bool %1648 %1655 1923 %1657 = OpLogicalAnd %bool %1653 %1656 1924 OpSelectionMerge %1658 None 1925 OpBranchConditional %1657 %1659 %1660 1926 %1660 = OpLabel 1927 %1661 = OpFOrdGreaterThanEqual %bool %1648 %1655 1928 %1662 = OpExtInst %float %1 Log %1416 1929 %1663 = OpFDiv %float %1662 %1065 1930 %1664 = OpFOrdLessThan %bool %1648 %1663 1931 %1665 = OpLogicalAnd %bool %1661 %1664 1932 OpSelectionMerge %1666 None 1933 OpBranchConditional %1665 %1667 %1668 1934 %1668 = OpLabel 1935 %1669 = OpExtInst %float %1 Log %float_10000 1936 %1670 = OpFDiv %float %1669 %1065 1937 OpBranch %1666 1938 %1667 = OpLabel 1939 %1671 = OpFSub %float %1648 %1655 1940 %1672 = OpFMul %float %float_3 %1671 1941 %1673 = OpFSub %float %1663 %1655 1942 %1674 = OpFDiv %float %1672 %1673 1943 %1675 = OpConvertFToS %int %1674 1944 %1676 = OpConvertSToF %float %1675 1945 %1677 = OpFSub %float %1674 %1676 1946 %1678 = OpAccessChain %_ptr_Function_float %513 %1675 1947 %1679 = OpLoad %float %1678 1948 %1680 = OpIAdd %int %1675 %int_1 1949 %1681 = OpAccessChain %_ptr_Function_float %513 %1680 1950 %1682 = OpLoad %float %1681 1951 %1683 = OpIAdd %int %1675 %int_2 1952 %1684 = OpAccessChain %_ptr_Function_float %513 %1683 1953 %1685 = OpLoad %float %1684 1954 %1686 = OpCompositeConstruct %v3float %1679 %1682 %1685 1955 %1687 = OpFMul %float %1677 %1677 1956 %1688 = OpCompositeConstruct %v3float %1687 %1677 %float_1 1957 %1689 = OpMatrixTimesVector %v3float %442 %1686 1958 %1690 = OpDot %float %1688 %1689 1959 OpBranch %1666 1960 %1666 = OpLabel 1961 %1691 = OpPhi %float %1670 %1668 %1690 %1667 1962 OpBranch %1658 1963 %1659 = OpLabel 1964 %1692 = OpFSub %float %1648 %1423 1965 %1693 = OpFMul %float %float_3 %1692 1966 %1694 = OpFSub %float %1655 %1423 1967 %1695 = OpFDiv %float %1693 %1694 1968 %1696 = OpConvertFToS %int %1695 1969 %1697 = OpConvertSToF %float %1696 1970 %1698 = OpFSub %float %1695 %1697 1971 %1699 = OpAccessChain %_ptr_Function_float %514 %1696 1972 %1700 = OpLoad %float %1699 1973 %1701 = OpIAdd %int %1696 %int_1 1974 %1702 = OpAccessChain %_ptr_Function_float %514 %1701 1975 %1703 = OpLoad %float %1702 1976 %1704 = OpIAdd %int %1696 %int_2 1977 %1705 = OpAccessChain %_ptr_Function_float %514 %1704 1978 %1706 = OpLoad %float %1705 1979 %1707 = OpCompositeConstruct %v3float %1700 %1703 %1706 1980 %1708 = OpFMul %float %1698 %1698 1981 %1709 = OpCompositeConstruct %v3float %1708 %1698 %float_1 1982 %1710 = OpMatrixTimesVector %v3float %442 %1707 1983 %1711 = OpDot %float %1709 %1710 1984 OpBranch %1658 1985 %1658 = OpLabel 1986 %1712 = OpPhi %float %1691 %1666 %1711 %1659 1987 OpBranch %1650 1988 %1651 = OpLabel 1989 %1713 = OpExtInst %float %1 Log %float_9_99999975en05 1990 %1714 = OpFDiv %float %1713 %1065 1991 OpBranch %1650 1992 %1650 = OpLabel 1993 %1715 = OpPhi %float %1712 %1658 %1714 %1651 1994 %1716 = OpExtInst %float %1 Pow %float_10 %1715 1995 OpStore %516 %475 1996 OpStore %515 %476 1997 %1717 = OpExtInst %float %1 Log %float_0_180000007 1998 %1718 = OpFDiv %float %1717 %1065 1999 %1719 = OpFOrdLessThanEqual %bool %1718 %1423 2000 OpSelectionMerge %1720 None 2001 OpBranchConditional %1719 %1721 %1722 2002 %1722 = OpLabel 2003 %1723 = OpFOrdGreaterThan %bool %1718 %1423 2004 %1724 = OpFOrdLessThan %bool %1718 %1718 2005 %1725 = OpLogicalAnd %bool %1723 %1724 2006 OpSelectionMerge %1726 None 2007 OpBranchConditional %1725 %1727 %1728 2008 %1728 = OpLabel 2009 %1729 = OpFOrdGreaterThanEqual %bool %1718 %1718 2010 %1730 = OpExtInst %float %1 Log %1416 2011 %1731 = OpFDiv %float %1730 %1065 2012 %1732 = OpFOrdLessThan %bool %1718 %1731 2013 %1733 = OpLogicalAnd %bool %1729 %1732 2014 OpSelectionMerge %1734 None 2015 OpBranchConditional %1733 %1735 %1736 2016 %1736 = OpLabel 2017 %1737 = OpExtInst %float %1 Log %float_10000 2018 %1738 = OpFDiv %float %1737 %1065 2019 OpBranch %1734 2020 %1735 = OpLabel 2021 %1739 = OpFSub %float %1718 %1718 2022 %1740 = OpFMul %float %float_3 %1739 2023 %1741 = OpFSub %float %1731 %1718 2024 %1742 = OpFDiv %float %1740 %1741 2025 %1743 = OpConvertFToS %int %1742 2026 %1744 = OpConvertSToF %float %1743 2027 %1745 = OpFSub %float %1742 %1744 2028 %1746 = OpAccessChain %_ptr_Function_float %515 %1743 2029 %1747 = OpLoad %float %1746 2030 %1748 = OpIAdd %int %1743 %int_1 2031 %1749 = OpAccessChain %_ptr_Function_float %515 %1748 2032 %1750 = OpLoad %float %1749 2033 %1751 = OpIAdd %int %1743 %int_2 2034 %1752 = OpAccessChain %_ptr_Function_float %515 %1751 2035 %1753 = OpLoad %float %1752 2036 %1754 = OpCompositeConstruct %v3float %1747 %1750 %1753 2037 %1755 = OpFMul %float %1745 %1745 2038 %1756 = OpCompositeConstruct %v3float %1755 %1745 %float_1 2039 %1757 = OpMatrixTimesVector %v3float %442 %1754 2040 %1758 = OpDot %float %1756 %1757 2041 OpBranch %1734 2042 %1734 = OpLabel 2043 %1759 = OpPhi %float %1738 %1736 %1758 %1735 2044 OpBranch %1726 2045 %1727 = OpLabel 2046 %1760 = OpFSub %float %1718 %1423 2047 %1761 = OpFMul %float %float_3 %1760 2048 %1762 = OpAccessChain %_ptr_Function_float %516 %int_3 2049 %1763 = OpLoad %float %1762 2050 %1764 = OpAccessChain %_ptr_Function_float %516 %int_4 2051 %1765 = OpLoad %float %1764 2052 %1766 = OpAccessChain %_ptr_Function_float %516 %int_5 2053 %1767 = OpLoad %float %1766 2054 %1768 = OpCompositeConstruct %v3float %1763 %1765 %1767 2055 %1769 = OpMatrixTimesVector %v3float %442 %1768 2056 %1770 = OpCompositeExtract %float %1769 2 2057 OpBranch %1726 2058 %1726 = OpLabel 2059 %1771 = OpPhi %float %1759 %1734 %1770 %1727 2060 OpBranch %1720 2061 %1721 = OpLabel 2062 %1772 = OpExtInst %float %1 Log %float_9_99999975en05 2063 %1773 = OpFDiv %float %1772 %1065 2064 OpBranch %1720 2065 %1720 = OpLabel 2066 %1774 = OpPhi %float %1771 %1726 %1773 %1721 2067 %1775 = OpExtInst %float %1 Pow %float_10 %1774 2068 %1776 = OpExtInst %float %1 Pow %float_2 %float_11 2069 %1777 = OpFMul %float %float_0_179999992 %1776 2070 OpStore %518 %475 2071 OpStore %517 %476 2072 %1778 = OpFOrdLessThanEqual %bool %1777 %float_0 2073 %1779 = OpSelect %float %1778 %1418 %1777 2074 %1780 = OpExtInst %float %1 Log %1779 2075 %1781 = OpFDiv %float %1780 %1065 2076 %1782 = OpFOrdLessThanEqual %bool %1781 %1423 2077 OpSelectionMerge %1783 None 2078 OpBranchConditional %1782 %1784 %1785 2079 %1785 = OpLabel 2080 %1786 = OpFOrdGreaterThan %bool %1781 %1423 2081 %1787 = OpFOrdLessThan %bool %1781 %1718 2082 %1788 = OpLogicalAnd %bool %1786 %1787 2083 OpSelectionMerge %1789 None 2084 OpBranchConditional %1788 %1790 %1791 2085 %1791 = OpLabel 2086 %1792 = OpFOrdGreaterThanEqual %bool %1781 %1718 2087 %1793 = OpExtInst %float %1 Log %1416 2088 %1794 = OpFDiv %float %1793 %1065 2089 %1795 = OpFOrdLessThan %bool %1781 %1794 2090 %1796 = OpLogicalAnd %bool %1792 %1795 2091 OpSelectionMerge %1797 None 2092 OpBranchConditional %1796 %1798 %1799 2093 %1799 = OpLabel 2094 %1800 = OpExtInst %float %1 Log %float_10000 2095 %1801 = OpFDiv %float %1800 %1065 2096 OpBranch %1797 2097 %1798 = OpLabel 2098 %1802 = OpFSub %float %1781 %1718 2099 %1803 = OpFMul %float %float_3 %1802 2100 %1804 = OpFSub %float %1794 %1718 2101 %1805 = OpFDiv %float %1803 %1804 2102 %1806 = OpConvertFToS %int %1805 2103 %1807 = OpConvertSToF %float %1806 2104 %1808 = OpFSub %float %1805 %1807 2105 %1809 = OpAccessChain %_ptr_Function_float %517 %1806 2106 %1810 = OpLoad %float %1809 2107 %1811 = OpIAdd %int %1806 %int_1 2108 %1812 = OpAccessChain %_ptr_Function_float %517 %1811 2109 %1813 = OpLoad %float %1812 2110 %1814 = OpIAdd %int %1806 %int_2 2111 %1815 = OpAccessChain %_ptr_Function_float %517 %1814 2112 %1816 = OpLoad %float %1815 2113 %1817 = OpCompositeConstruct %v3float %1810 %1813 %1816 2114 %1818 = OpFMul %float %1808 %1808 2115 %1819 = OpCompositeConstruct %v3float %1818 %1808 %float_1 2116 %1820 = OpMatrixTimesVector %v3float %442 %1817 2117 %1821 = OpDot %float %1819 %1820 2118 OpBranch %1797 2119 %1797 = OpLabel 2120 %1822 = OpPhi %float %1801 %1799 %1821 %1798 2121 OpBranch %1789 2122 %1790 = OpLabel 2123 %1823 = OpFSub %float %1781 %1423 2124 %1824 = OpFMul %float %float_3 %1823 2125 %1825 = OpFSub %float %1718 %1423 2126 %1826 = OpFDiv %float %1824 %1825 2127 %1827 = OpConvertFToS %int %1826 2128 %1828 = OpConvertSToF %float %1827 2129 %1829 = OpFSub %float %1826 %1828 2130 %1830 = OpAccessChain %_ptr_Function_float %518 %1827 2131 %1831 = OpLoad %float %1830 2132 %1832 = OpIAdd %int %1827 %int_1 2133 %1833 = OpAccessChain %_ptr_Function_float %518 %1832 2134 %1834 = OpLoad %float %1833 2135 %1835 = OpIAdd %int %1827 %int_2 2136 %1836 = OpAccessChain %_ptr_Function_float %518 %1835 2137 %1837 = OpLoad %float %1836 2138 %1838 = OpCompositeConstruct %v3float %1831 %1834 %1837 2139 %1839 = OpFMul %float %1829 %1829 2140 %1840 = OpCompositeConstruct %v3float %1839 %1829 %float_1 2141 %1841 = OpMatrixTimesVector %v3float %442 %1838 2142 %1842 = OpDot %float %1840 %1841 2143 OpBranch %1789 2144 %1789 = OpLabel 2145 %1843 = OpPhi %float %1822 %1797 %1842 %1790 2146 OpBranch %1783 2147 %1784 = OpLabel 2148 %1844 = OpExtInst %float %1 Log %float_9_99999975en05 2149 %1845 = OpFDiv %float %1844 %1065 2150 OpBranch %1783 2151 %1783 = OpLabel 2152 %1846 = OpPhi %float %1843 %1789 %1845 %1784 2153 %1847 = OpExtInst %float %1 Pow %float_10 %1846 2154 %1848 = OpCompositeExtract %float %1642 0 2155 OpStore %512 %482 2156 OpStore %511 %483 2157 %1849 = OpFOrdLessThanEqual %bool %1848 %float_0 2158 %1850 = OpSelect %float %1849 %float_9_99999975en05 %1848 2159 %1851 = OpExtInst %float %1 Log %1850 2160 %1852 = OpFDiv %float %1851 %1065 2161 %1853 = OpExtInst %float %1 Log %1716 2162 %1854 = OpFDiv %float %1853 %1065 2163 %1855 = OpFOrdLessThanEqual %bool %1852 %1854 2164 OpSelectionMerge %1856 None 2165 OpBranchConditional %1855 %1857 %1858 2166 %1858 = OpLabel 2167 %1859 = OpFOrdGreaterThan %bool %1852 %1854 2168 %1860 = OpExtInst %float %1 Log %1775 2169 %1861 = OpFDiv %float %1860 %1065 2170 %1862 = OpFOrdLessThan %bool %1852 %1861 2171 %1863 = OpLogicalAnd %bool %1859 %1862 2172 OpSelectionMerge %1864 None 2173 OpBranchConditional %1863 %1865 %1866 2174 %1866 = OpLabel 2175 %1867 = OpFOrdGreaterThanEqual %bool %1852 %1861 2176 %1868 = OpExtInst %float %1 Log %1847 2177 %1869 = OpFDiv %float %1868 %1065 2178 %1870 = OpFOrdLessThan %bool %1852 %1869 2179 %1871 = OpLogicalAnd %bool %1867 %1870 2180 OpSelectionMerge %1872 None 2181 OpBranchConditional %1871 %1873 %1874 2182 %1874 = OpLabel 2183 %1875 = OpFMul %float %1852 %float_0_119999997 2184 %1876 = OpExtInst %float %1 Log %float_2000 2185 %1877 = OpFDiv %float %1876 %1065 2186 %1878 = OpFMul %float %float_0_119999997 %1868 2187 %1879 = OpFDiv %float %1878 %1065 2188 %1880 = OpFSub %float %1877 %1879 2189 %1881 = OpFAdd %float %1875 %1880 2190 OpBranch %1872 2191 %1873 = OpLabel 2192 %1882 = OpFSub %float %1852 %1861 2193 %1883 = OpFMul %float %float_7 %1882 2194 %1884 = OpFSub %float %1869 %1861 2195 %1885 = OpFDiv %float %1883 %1884 2196 %1886 = OpConvertFToS %int %1885 2197 %1887 = OpConvertSToF %float %1886 2198 %1888 = OpFSub %float %1885 %1887 2199 %1889 = OpAccessChain %_ptr_Function_float %511 %1886 2200 %1890 = OpLoad %float %1889 2201 %1891 = OpIAdd %int %1886 %int_1 2202 %1892 = OpAccessChain %_ptr_Function_float %511 %1891 2203 %1893 = OpLoad %float %1892 2204 %1894 = OpIAdd %int %1886 %int_2 2205 %1895 = OpAccessChain %_ptr_Function_float %511 %1894 2206 %1896 = OpLoad %float %1895 2207 %1897 = OpCompositeConstruct %v3float %1890 %1893 %1896 2208 %1898 = OpFMul %float %1888 %1888 2209 %1899 = OpCompositeConstruct %v3float %1898 %1888 %float_1 2210 %1900 = OpMatrixTimesVector %v3float %442 %1897 2211 %1901 = OpDot %float %1899 %1900 2212 OpBranch %1872 2213 %1872 = OpLabel 2214 %1902 = OpPhi %float %1881 %1874 %1901 %1873 2215 OpBranch %1864 2216 %1865 = OpLabel 2217 %1903 = OpFSub %float %1852 %1854 2218 %1904 = OpFMul %float %float_7 %1903 2219 %1905 = OpFSub %float %1861 %1854 2220 %1906 = OpFDiv %float %1904 %1905 2221 %1907 = OpConvertFToS %int %1906 2222 %1908 = OpConvertSToF %float %1907 2223 %1909 = OpFSub %float %1906 %1908 2224 %1910 = OpAccessChain %_ptr_Function_float %512 %1907 2225 %1911 = OpLoad %float %1910 2226 %1912 = OpIAdd %int %1907 %int_1 2227 %1913 = OpAccessChain %_ptr_Function_float %512 %1912 2228 %1914 = OpLoad %float %1913 2229 %1915 = OpIAdd %int %1907 %int_2 2230 %1916 = OpAccessChain %_ptr_Function_float %512 %1915 2231 %1917 = OpLoad %float %1916 2232 %1918 = OpCompositeConstruct %v3float %1911 %1914 %1917 2233 %1919 = OpFMul %float %1909 %1909 2234 %1920 = OpCompositeConstruct %v3float %1919 %1909 %float_1 2235 %1921 = OpMatrixTimesVector %v3float %442 %1918 2236 %1922 = OpDot %float %1920 %1921 2237 OpBranch %1864 2238 %1864 = OpLabel 2239 %1923 = OpPhi %float %1902 %1872 %1922 %1865 2240 OpBranch %1856 2241 %1857 = OpLabel 2242 %1924 = OpExtInst %float %1 Log %float_0_00499999989 2243 %1925 = OpFDiv %float %1924 %1065 2244 OpBranch %1856 2245 %1856 = OpLabel 2246 %1926 = OpPhi %float %1923 %1864 %1925 %1857 2247 %1927 = OpExtInst %float %1 Pow %float_10 %1926 2248 %1928 = OpCompositeInsert %v3float %1927 %391 0 2249 %1929 = OpCompositeExtract %float %1642 1 2250 OpStore %510 %482 2251 OpStore %509 %483 2252 %1930 = OpFOrdLessThanEqual %bool %1929 %float_0 2253 %1931 = OpSelect %float %1930 %float_9_99999975en05 %1929 2254 %1932 = OpExtInst %float %1 Log %1931 2255 %1933 = OpFDiv %float %1932 %1065 2256 %1934 = OpFOrdLessThanEqual %bool %1933 %1854 2257 OpSelectionMerge %1935 None 2258 OpBranchConditional %1934 %1936 %1937 2259 %1937 = OpLabel 2260 %1938 = OpFOrdGreaterThan %bool %1933 %1854 2261 %1939 = OpExtInst %float %1 Log %1775 2262 %1940 = OpFDiv %float %1939 %1065 2263 %1941 = OpFOrdLessThan %bool %1933 %1940 2264 %1942 = OpLogicalAnd %bool %1938 %1941 2265 OpSelectionMerge %1943 None 2266 OpBranchConditional %1942 %1944 %1945 2267 %1945 = OpLabel 2268 %1946 = OpFOrdGreaterThanEqual %bool %1933 %1940 2269 %1947 = OpExtInst %float %1 Log %1847 2270 %1948 = OpFDiv %float %1947 %1065 2271 %1949 = OpFOrdLessThan %bool %1933 %1948 2272 %1950 = OpLogicalAnd %bool %1946 %1949 2273 OpSelectionMerge %1951 None 2274 OpBranchConditional %1950 %1952 %1953 2275 %1953 = OpLabel 2276 %1954 = OpFMul %float %1933 %float_0_119999997 2277 %1955 = OpExtInst %float %1 Log %float_2000 2278 %1956 = OpFDiv %float %1955 %1065 2279 %1957 = OpFMul %float %float_0_119999997 %1947 2280 %1958 = OpFDiv %float %1957 %1065 2281 %1959 = OpFSub %float %1956 %1958 2282 %1960 = OpFAdd %float %1954 %1959 2283 OpBranch %1951 2284 %1952 = OpLabel 2285 %1961 = OpFSub %float %1933 %1940 2286 %1962 = OpFMul %float %float_7 %1961 2287 %1963 = OpFSub %float %1948 %1940 2288 %1964 = OpFDiv %float %1962 %1963 2289 %1965 = OpConvertFToS %int %1964 2290 %1966 = OpConvertSToF %float %1965 2291 %1967 = OpFSub %float %1964 %1966 2292 %1968 = OpAccessChain %_ptr_Function_float %509 %1965 2293 %1969 = OpLoad %float %1968 2294 %1970 = OpIAdd %int %1965 %int_1 2295 %1971 = OpAccessChain %_ptr_Function_float %509 %1970 2296 %1972 = OpLoad %float %1971 2297 %1973 = OpIAdd %int %1965 %int_2 2298 %1974 = OpAccessChain %_ptr_Function_float %509 %1973 2299 %1975 = OpLoad %float %1974 2300 %1976 = OpCompositeConstruct %v3float %1969 %1972 %1975 2301 %1977 = OpFMul %float %1967 %1967 2302 %1978 = OpCompositeConstruct %v3float %1977 %1967 %float_1 2303 %1979 = OpMatrixTimesVector %v3float %442 %1976 2304 %1980 = OpDot %float %1978 %1979 2305 OpBranch %1951 2306 %1951 = OpLabel 2307 %1981 = OpPhi %float %1960 %1953 %1980 %1952 2308 OpBranch %1943 2309 %1944 = OpLabel 2310 %1982 = OpFSub %float %1933 %1854 2311 %1983 = OpFMul %float %float_7 %1982 2312 %1984 = OpFSub %float %1940 %1854 2313 %1985 = OpFDiv %float %1983 %1984 2314 %1986 = OpConvertFToS %int %1985 2315 %1987 = OpConvertSToF %float %1986 2316 %1988 = OpFSub %float %1985 %1987 2317 %1989 = OpAccessChain %_ptr_Function_float %510 %1986 2318 %1990 = OpLoad %float %1989 2319 %1991 = OpIAdd %int %1986 %int_1 2320 %1992 = OpAccessChain %_ptr_Function_float %510 %1991 2321 %1993 = OpLoad %float %1992 2322 %1994 = OpIAdd %int %1986 %int_2 2323 %1995 = OpAccessChain %_ptr_Function_float %510 %1994 2324 %1996 = OpLoad %float %1995 2325 %1997 = OpCompositeConstruct %v3float %1990 %1993 %1996 2326 %1998 = OpFMul %float %1988 %1988 2327 %1999 = OpCompositeConstruct %v3float %1998 %1988 %float_1 2328 %2000 = OpMatrixTimesVector %v3float %442 %1997 2329 %2001 = OpDot %float %1999 %2000 2330 OpBranch %1943 2331 %1943 = OpLabel 2332 %2002 = OpPhi %float %1981 %1951 %2001 %1944 2333 OpBranch %1935 2334 %1936 = OpLabel 2335 %2003 = OpExtInst %float %1 Log %float_0_00499999989 2336 %2004 = OpFDiv %float %2003 %1065 2337 OpBranch %1935 2338 %1935 = OpLabel 2339 %2005 = OpPhi %float %2002 %1943 %2004 %1936 2340 %2006 = OpExtInst %float %1 Pow %float_10 %2005 2341 %2007 = OpCompositeInsert %v3float %2006 %1928 1 2342 %2008 = OpCompositeExtract %float %1642 2 2343 OpStore %508 %482 2344 OpStore %507 %483 2345 %2009 = OpFOrdLessThanEqual %bool %2008 %float_0 2346 %2010 = OpSelect %float %2009 %float_9_99999975en05 %2008 2347 %2011 = OpExtInst %float %1 Log %2010 2348 %2012 = OpFDiv %float %2011 %1065 2349 %2013 = OpFOrdLessThanEqual %bool %2012 %1854 2350 OpSelectionMerge %2014 None 2351 OpBranchConditional %2013 %2015 %2016 2352 %2016 = OpLabel 2353 %2017 = OpFOrdGreaterThan %bool %2012 %1854 2354 %2018 = OpExtInst %float %1 Log %1775 2355 %2019 = OpFDiv %float %2018 %1065 2356 %2020 = OpFOrdLessThan %bool %2012 %2019 2357 %2021 = OpLogicalAnd %bool %2017 %2020 2358 OpSelectionMerge %2022 None 2359 OpBranchConditional %2021 %2023 %2024 2360 %2024 = OpLabel 2361 %2025 = OpFOrdGreaterThanEqual %bool %2012 %2019 2362 %2026 = OpExtInst %float %1 Log %1847 2363 %2027 = OpFDiv %float %2026 %1065 2364 %2028 = OpFOrdLessThan %bool %2012 %2027 2365 %2029 = OpLogicalAnd %bool %2025 %2028 2366 OpSelectionMerge %2030 None 2367 OpBranchConditional %2029 %2031 %2032 2368 %2032 = OpLabel 2369 %2033 = OpFMul %float %2012 %float_0_119999997 2370 %2034 = OpExtInst %float %1 Log %float_2000 2371 %2035 = OpFDiv %float %2034 %1065 2372 %2036 = OpFMul %float %float_0_119999997 %2026 2373 %2037 = OpFDiv %float %2036 %1065 2374 %2038 = OpFSub %float %2035 %2037 2375 %2039 = OpFAdd %float %2033 %2038 2376 OpBranch %2030 2377 %2031 = OpLabel 2378 %2040 = OpFSub %float %2012 %2019 2379 %2041 = OpFMul %float %float_7 %2040 2380 %2042 = OpFSub %float %2027 %2019 2381 %2043 = OpFDiv %float %2041 %2042 2382 %2044 = OpConvertFToS %int %2043 2383 %2045 = OpConvertSToF %float %2044 2384 %2046 = OpFSub %float %2043 %2045 2385 %2047 = OpAccessChain %_ptr_Function_float %507 %2044 2386 %2048 = OpLoad %float %2047 2387 %2049 = OpIAdd %int %2044 %int_1 2388 %2050 = OpAccessChain %_ptr_Function_float %507 %2049 2389 %2051 = OpLoad %float %2050 2390 %2052 = OpIAdd %int %2044 %int_2 2391 %2053 = OpAccessChain %_ptr_Function_float %507 %2052 2392 %2054 = OpLoad %float %2053 2393 %2055 = OpCompositeConstruct %v3float %2048 %2051 %2054 2394 %2056 = OpFMul %float %2046 %2046 2395 %2057 = OpCompositeConstruct %v3float %2056 %2046 %float_1 2396 %2058 = OpMatrixTimesVector %v3float %442 %2055 2397 %2059 = OpDot %float %2057 %2058 2398 OpBranch %2030 2399 %2030 = OpLabel 2400 %2060 = OpPhi %float %2039 %2032 %2059 %2031 2401 OpBranch %2022 2402 %2023 = OpLabel 2403 %2061 = OpFSub %float %2012 %1854 2404 %2062 = OpFMul %float %float_7 %2061 2405 %2063 = OpFSub %float %2019 %1854 2406 %2064 = OpFDiv %float %2062 %2063 2407 %2065 = OpConvertFToS %int %2064 2408 %2066 = OpConvertSToF %float %2065 2409 %2067 = OpFSub %float %2064 %2066 2410 %2068 = OpAccessChain %_ptr_Function_float %508 %2065 2411 %2069 = OpLoad %float %2068 2412 %2070 = OpIAdd %int %2065 %int_1 2413 %2071 = OpAccessChain %_ptr_Function_float %508 %2070 2414 %2072 = OpLoad %float %2071 2415 %2073 = OpIAdd %int %2065 %int_2 2416 %2074 = OpAccessChain %_ptr_Function_float %508 %2073 2417 %2075 = OpLoad %float %2074 2418 %2076 = OpCompositeConstruct %v3float %2069 %2072 %2075 2419 %2077 = OpFMul %float %2067 %2067 2420 %2078 = OpCompositeConstruct %v3float %2077 %2067 %float_1 2421 %2079 = OpMatrixTimesVector %v3float %442 %2076 2422 %2080 = OpDot %float %2078 %2079 2423 OpBranch %2022 2424 %2022 = OpLabel 2425 %2081 = OpPhi %float %2060 %2030 %2080 %2023 2426 OpBranch %2014 2427 %2015 = OpLabel 2428 %2082 = OpExtInst %float %1 Log %float_0_00499999989 2429 %2083 = OpFDiv %float %2082 %1065 2430 OpBranch %2014 2431 %2014 = OpLabel 2432 %2084 = OpPhi %float %2081 %2022 %2083 %2015 2433 %2085 = OpExtInst %float %1 Pow %float_10 %2084 2434 %2086 = OpCompositeInsert %v3float %2085 %2007 2 2435 %2087 = OpVectorTimesMatrix %v3float %2086 %576 2436 %2088 = OpFMul %v3float %2087 %496 2437 %2089 = OpExtInst %v3float %1 Pow %2088 %263 2438 %2090 = OpFMul %v3float %184 %2089 2439 %2091 = OpFAdd %v3float %183 %2090 2440 %2092 = OpFMul %v3float %185 %2089 2441 %2093 = OpFAdd %v3float %135 %2092 2442 %2094 = OpFDiv %v3float %135 %2093 2443 %2095 = OpFMul %v3float %2091 %2094 2444 %2096 = OpExtInst %v3float %1 Pow %2095 %264 2445 OpBranch %1236 2446 %1236 = OpLabel 2447 %2097 = OpPhi %v3float %1260 %1240 %2096 %2014 2448 OpBranch %1230 2449 %1231 = OpLabel 2450 %2098 = OpMatrixTimesMatrix %mat3v3float %546 %399 2451 %2099 = OpFMul %v3float %906 %262 2452 %2100 = OpVectorTimesMatrix %v3float %2099 %2098 2453 %2101 = OpCompositeExtract %float %2100 0 2454 %2102 = OpCompositeExtract %float %2100 1 2455 %2103 = OpExtInst %float %1 FMin %2101 %2102 2456 %2104 = OpCompositeExtract %float %2100 2 2457 %2105 = OpExtInst %float %1 FMin %2103 %2104 2458 %2106 = OpExtInst %float %1 FMax %2101 %2102 2459 %2107 = OpExtInst %float %1 FMax %2106 %2104 2460 %2108 = OpExtInst %float %1 FMax %2107 %float_1_00000001en10 2461 %2109 = OpExtInst %float %1 FMax %2105 %float_1_00000001en10 2462 %2110 = OpFSub %float %2108 %2109 2463 %2111 = OpExtInst %float %1 FMax %2107 %float_0_00999999978 2464 %2112 = OpFDiv %float %2110 %2111 2465 %2113 = OpFSub %float %2104 %2102 2466 %2114 = OpFMul %float %2104 %2113 2467 %2115 = OpFSub %float %2102 %2101 2468 %2116 = OpFMul %float %2102 %2115 2469 %2117 = OpFAdd %float %2114 %2116 2470 %2118 = OpFSub %float %2101 %2104 2471 %2119 = OpFMul %float %2101 %2118 2472 %2120 = OpFAdd %float %2117 %2119 2473 %2121 = OpExtInst %float %1 Sqrt %2120 2474 %2122 = OpFAdd %float %2104 %2102 2475 %2123 = OpFAdd %float %2122 %2101 2476 %2124 = OpFMul %float %float_1_75 %2121 2477 %2125 = OpFAdd %float %2123 %2124 2478 %2126 = OpFMul %float %2125 %float_0_333333343 2479 %2127 = OpFSub %float %2112 %float_0_400000006 2480 %2128 = OpFMul %float %2127 %float_5 2481 %2129 = OpFMul %float %2127 %float_2_5 2482 %2130 = OpExtInst %float %1 FAbs %2129 2483 %2131 = OpFSub %float %float_1 %2130 2484 %2132 = OpExtInst %float %1 FMax %2131 %float_0 2485 %2133 = OpExtInst %float %1 FSign %2128 2486 %2134 = OpConvertFToS %int %2133 2487 %2135 = OpConvertSToF %float %2134 2488 %2136 = OpFMul %float %2132 %2132 2489 %2137 = OpFSub %float %float_1 %2136 2490 %2138 = OpFMul %float %2135 %2137 2491 %2139 = OpFAdd %float %float_1 %2138 2492 %2140 = OpFMul %float %2139 %float_0_0250000004 2493 %2141 = OpFOrdLessThanEqual %bool %2126 %float_0_0533333346 2494 OpSelectionMerge %2142 None 2495 OpBranchConditional %2141 %2143 %2144 2496 %2144 = OpLabel 2497 %2145 = OpFOrdGreaterThanEqual %bool %2126 %float_0_159999996 2498 OpSelectionMerge %2146 None 2499 OpBranchConditional %2145 %2147 %2148 2500 %2148 = OpLabel 2501 %2149 = OpFDiv %float %float_0_239999995 %2125 2502 %2150 = OpFSub %float %2149 %float_0_5 2503 %2151 = OpFMul %float %2140 %2150 2504 OpBranch %2146 2505 %2147 = OpLabel 2506 OpBranch %2146 2507 %2146 = OpLabel 2508 %2152 = OpPhi %float %2151 %2148 %float_0 %2147 2509 OpBranch %2142 2510 %2143 = OpLabel 2511 OpBranch %2142 2512 %2142 = OpLabel 2513 %2153 = OpPhi %float %2152 %2146 %2140 %2143 2514 %2154 = OpFAdd %float %float_1 %2153 2515 %2155 = OpCompositeConstruct %v3float %2154 %2154 %2154 2516 %2156 = OpFMul %v3float %2100 %2155 2517 %2157 = OpCompositeExtract %float %2156 0 2518 %2158 = OpCompositeExtract %float %2156 1 2519 %2159 = OpFOrdEqual %bool %2157 %2158 2520 %2160 = OpCompositeExtract %float %2156 2 2521 %2161 = OpFOrdEqual %bool %2158 %2160 2522 %2162 = OpLogicalAnd %bool %2159 %2161 2523 OpSelectionMerge %2163 None 2524 OpBranchConditional %2162 %2164 %2165 2525 %2165 = OpLabel 2526 %2166 = OpExtInst %float %1 Sqrt %float_3 2527 %2167 = OpFSub %float %2158 %2160 2528 %2168 = OpFMul %float %2166 %2167 2529 %2169 = OpFMul %float %float_2 %2157 2530 %2170 = OpFSub %float %2169 %2158 2531 %2171 = OpFSub %float %2170 %2160 2532 %2172 = OpExtInst %float %1 Atan2 %2168 %2171 2533 %2173 = OpFMul %float %float_57_2957764 %2172 2534 OpBranch %2163 2535 %2164 = OpLabel 2536 OpBranch %2163 2537 %2163 = OpLabel 2538 %2174 = OpPhi %float %2173 %2165 %float_0 %2164 2539 %2175 = OpFOrdLessThan %bool %2174 %float_0 2540 OpSelectionMerge %2176 None 2541 OpBranchConditional %2175 %2177 %2176 2542 %2177 = OpLabel 2543 %2178 = OpFAdd %float %2174 %float_360 2544 OpBranch %2176 2545 %2176 = OpLabel 2546 %2179 = OpPhi %float %2174 %2163 %2178 %2177 2547 %2180 = OpExtInst %float %1 FClamp %2179 %float_0 %float_360 2548 %2181 = OpFOrdGreaterThan %bool %2180 %float_180 2549 OpSelectionMerge %2182 None 2550 OpBranchConditional %2181 %2183 %2182 2551 %2183 = OpLabel 2552 %2184 = OpFSub %float %2180 %float_360 2553 OpBranch %2182 2554 %2182 = OpLabel 2555 %2185 = OpPhi %float %2180 %2176 %2184 %2183 2556 %2186 = OpFOrdGreaterThan %bool %2185 %float_n67_5 2557 %2187 = OpFOrdLessThan %bool %2185 %float_67_5 2558 %2188 = OpLogicalAnd %bool %2186 %2187 2559 OpSelectionMerge %2189 None 2560 OpBranchConditional %2188 %2190 %2189 2561 %2190 = OpLabel 2562 %2191 = OpFSub %float %2185 %float_n67_5 2563 %2192 = OpFMul %float %2191 %float_0_0296296291 2564 %2193 = OpConvertFToS %int %2192 2565 %2194 = OpConvertSToF %float %2193 2566 %2195 = OpFSub %float %2192 %2194 2567 %2196 = OpFMul %float %2195 %2195 2568 %2197 = OpFMul %float %2196 %2195 2569 %2198 = OpIEqual %bool %2193 %int_3 2570 OpSelectionMerge %2199 None 2571 OpBranchConditional %2198 %2200 %2201 2572 %2201 = OpLabel 2573 %2202 = OpIEqual %bool %2193 %int_2 2574 OpSelectionMerge %2203 None 2575 OpBranchConditional %2202 %2204 %2205 2576 %2205 = OpLabel 2577 %2206 = OpIEqual %bool %2193 %int_1 2578 OpSelectionMerge %2207 None 2579 OpBranchConditional %2206 %2208 %2209 2580 %2209 = OpLabel 2581 %2210 = OpIEqual %bool %2193 %int_0 2582 OpSelectionMerge %2211 None 2583 OpBranchConditional %2210 %2212 %2213 2584 %2213 = OpLabel 2585 OpBranch %2211 2586 %2212 = OpLabel 2587 %2214 = OpFMul %float %2197 %float_0_166666672 2588 OpBranch %2211 2589 %2211 = OpLabel 2590 %2215 = OpPhi %float %float_0 %2213 %2214 %2212 2591 OpBranch %2207 2592 %2208 = OpLabel 2593 %2216 = OpFMul %float %2197 %float_n0_5 2594 %2217 = OpFMul %float %2196 %float_0_5 2595 %2218 = OpFAdd %float %2216 %2217 2596 %2219 = OpFMul %float %2195 %float_0_5 2597 %2220 = OpFAdd %float %2218 %2219 2598 %2221 = OpFAdd %float %2220 %float_0_166666672 2599 OpBranch %2207 2600 %2207 = OpLabel 2601 %2222 = OpPhi %float %2215 %2211 %2221 %2208 2602 OpBranch %2203 2603 %2204 = OpLabel 2604 %2223 = OpFMul %float %2197 %float_0_5 2605 %2224 = OpFMul %float %2196 %float_n1 2606 %2225 = OpFAdd %float %2223 %2224 2607 %2226 = OpFAdd %float %2225 %float_0_666666687 2608 OpBranch %2203 2609 %2203 = OpLabel 2610 %2227 = OpPhi %float %2222 %2207 %2226 %2204 2611 OpBranch %2199 2612 %2200 = OpLabel 2613 %2228 = OpFMul %float %2197 %float_n0_166666672 2614 %2229 = OpFMul %float %2196 %float_0_5 2615 %2230 = OpFAdd %float %2228 %2229 2616 %2231 = OpFMul %float %2195 %float_n0_5 2617 %2232 = OpFAdd %float %2230 %2231 2618 %2233 = OpFAdd %float %2232 %float_0_166666672 2619 OpBranch %2199 2620 %2199 = OpLabel 2621 %2234 = OpPhi %float %2227 %2203 %2233 %2200 2622 OpBranch %2189 2623 %2189 = OpLabel 2624 %2235 = OpPhi %float %float_0 %2182 %2234 %2199 2625 %2236 = OpFMul %float %2235 %float_1_5 2626 %2237 = OpFMul %float %2236 %2112 2627 %2238 = OpFSub %float %float_0_0299999993 %2157 2628 %2239 = OpFMul %float %2237 %2238 2629 %2240 = OpFMul %float %2239 %float_0_180000007 2630 %2241 = OpFAdd %float %2157 %2240 2631 %2242 = OpCompositeInsert %v3float %2241 %2156 0 2632 %2243 = OpExtInst %v3float %1 FClamp %2242 %132 %314 2633 %2244 = OpVectorTimesMatrix %v3float %2243 %410 2634 %2245 = OpExtInst %v3float %1 FClamp %2244 %132 %314 2635 %2246 = OpDot %float %2245 %67 2636 %2247 = OpCompositeConstruct %v3float %2246 %2246 %2246 2637 %2248 = OpExtInst %v3float %1 FMix %2247 %2245 %228 2638 %2249 = OpCompositeExtract %float %2248 0 2639 %2250 = OpExtInst %float %1 Exp2 %float_n15 2640 %2251 = OpFMul %float %float_0_179999992 %2250 2641 %2252 = OpExtInst %float %1 Exp2 %float_18 2642 %2253 = OpFMul %float %float_0_179999992 %2252 2643 OpStore %520 %475 2644 OpStore %519 %476 2645 %2254 = OpFOrdLessThanEqual %bool %2249 %float_0 2646 %2255 = OpExtInst %float %1 Exp2 %float_n14 2647 %2256 = OpSelect %float %2254 %2255 %2249 2648 %2257 = OpExtInst %float %1 Log %2256 2649 %2258 = OpFDiv %float %2257 %1065 2650 %2259 = OpExtInst %float %1 Log %2251 2651 %2260 = OpFDiv %float %2259 %1065 2652 %2261 = OpFOrdLessThanEqual %bool %2258 %2260 2653 OpSelectionMerge %2262 None 2654 OpBranchConditional %2261 %2263 %2264 2655 %2264 = OpLabel 2656 %2265 = OpFOrdGreaterThan %bool %2258 %2260 2657 %2266 = OpExtInst %float %1 Log %float_0_180000007 2658 %2267 = OpFDiv %float %2266 %1065 2659 %2268 = OpFOrdLessThan %bool %2258 %2267 2660 %2269 = OpLogicalAnd %bool %2265 %2268 2661 OpSelectionMerge %2270 None 2662 OpBranchConditional %2269 %2271 %2272 2663 %2272 = OpLabel 2664 %2273 = OpFOrdGreaterThanEqual %bool %2258 %2267 2665 %2274 = OpExtInst %float %1 Log %2253 2666 %2275 = OpFDiv %float %2274 %1065 2667 %2276 = OpFOrdLessThan %bool %2258 %2275 2668 %2277 = OpLogicalAnd %bool %2273 %2276 2669 OpSelectionMerge %2278 None 2670 OpBranchConditional %2277 %2279 %2280 2671 %2280 = OpLabel 2672 %2281 = OpExtInst %float %1 Log %float_10000 2673 %2282 = OpFDiv %float %2281 %1065 2674 OpBranch %2278 2675 %2279 = OpLabel 2676 %2283 = OpFSub %float %2258 %2267 2677 %2284 = OpFMul %float %float_3 %2283 2678 %2285 = OpFSub %float %2275 %2267 2679 %2286 = OpFDiv %float %2284 %2285 2680 %2287 = OpConvertFToS %int %2286 2681 %2288 = OpConvertSToF %float %2287 2682 %2289 = OpFSub %float %2286 %2288 2683 %2290 = OpAccessChain %_ptr_Function_float %519 %2287 2684 %2291 = OpLoad %float %2290 2685 %2292 = OpIAdd %int %2287 %int_1 2686 %2293 = OpAccessChain %_ptr_Function_float %519 %2292 2687 %2294 = OpLoad %float %2293 2688 %2295 = OpIAdd %int %2287 %int_2 2689 %2296 = OpAccessChain %_ptr_Function_float %519 %2295 2690 %2297 = OpLoad %float %2296 2691 %2298 = OpCompositeConstruct %v3float %2291 %2294 %2297 2692 %2299 = OpFMul %float %2289 %2289 2693 %2300 = OpCompositeConstruct %v3float %2299 %2289 %float_1 2694 %2301 = OpMatrixTimesVector %v3float %442 %2298 2695 %2302 = OpDot %float %2300 %2301 2696 OpBranch %2278 2697 %2278 = OpLabel 2698 %2303 = OpPhi %float %2282 %2280 %2302 %2279 2699 OpBranch %2270 2700 %2271 = OpLabel 2701 %2304 = OpFSub %float %2258 %2260 2702 %2305 = OpFMul %float %float_3 %2304 2703 %2306 = OpFSub %float %2267 %2260 2704 %2307 = OpFDiv %float %2305 %2306 2705 %2308 = OpConvertFToS %int %2307 2706 %2309 = OpConvertSToF %float %2308 2707 %2310 = OpFSub %float %2307 %2309 2708 %2311 = OpAccessChain %_ptr_Function_float %520 %2308 2709 %2312 = OpLoad %float %2311 2710 %2313 = OpIAdd %int %2308 %int_1 2711 %2314 = OpAccessChain %_ptr_Function_float %520 %2313 2712 %2315 = OpLoad %float %2314 2713 %2316 = OpIAdd %int %2308 %int_2 2714 %2317 = OpAccessChain %_ptr_Function_float %520 %2316 2715 %2318 = OpLoad %float %2317 2716 %2319 = OpCompositeConstruct %v3float %2312 %2315 %2318 2717 %2320 = OpFMul %float %2310 %2310 2718 %2321 = OpCompositeConstruct %v3float %2320 %2310 %float_1 2719 %2322 = OpMatrixTimesVector %v3float %442 %2319 2720 %2323 = OpDot %float %2321 %2322 2721 OpBranch %2270 2722 %2270 = OpLabel 2723 %2324 = OpPhi %float %2303 %2278 %2323 %2271 2724 OpBranch %2262 2725 %2263 = OpLabel 2726 %2325 = OpExtInst %float %1 Log %float_9_99999975en05 2727 %2326 = OpFDiv %float %2325 %1065 2728 OpBranch %2262 2729 %2262 = OpLabel 2730 %2327 = OpPhi %float %2324 %2270 %2326 %2263 2731 %2328 = OpExtInst %float %1 Pow %float_10 %2327 2732 %2329 = OpCompositeInsert %v3float %2328 %391 0 2733 %2330 = OpCompositeExtract %float %2248 1 2734 OpStore %522 %475 2735 OpStore %521 %476 2736 %2331 = OpFOrdLessThanEqual %bool %2330 %float_0 2737 %2332 = OpSelect %float %2331 %2255 %2330 2738 %2333 = OpExtInst %float %1 Log %2332 2739 %2334 = OpFDiv %float %2333 %1065 2740 %2335 = OpFOrdLessThanEqual %bool %2334 %2260 2741 OpSelectionMerge %2336 None 2742 OpBranchConditional %2335 %2337 %2338 2743 %2338 = OpLabel 2744 %2339 = OpFOrdGreaterThan %bool %2334 %2260 2745 %2340 = OpExtInst %float %1 Log %float_0_180000007 2746 %2341 = OpFDiv %float %2340 %1065 2747 %2342 = OpFOrdLessThan %bool %2334 %2341 2748 %2343 = OpLogicalAnd %bool %2339 %2342 2749 OpSelectionMerge %2344 None 2750 OpBranchConditional %2343 %2345 %2346 2751 %2346 = OpLabel 2752 %2347 = OpFOrdGreaterThanEqual %bool %2334 %2341 2753 %2348 = OpExtInst %float %1 Log %2253 2754 %2349 = OpFDiv %float %2348 %1065 2755 %2350 = OpFOrdLessThan %bool %2334 %2349 2756 %2351 = OpLogicalAnd %bool %2347 %2350 2757 OpSelectionMerge %2352 None 2758 OpBranchConditional %2351 %2353 %2354 2759 %2354 = OpLabel 2760 %2355 = OpExtInst %float %1 Log %float_10000 2761 %2356 = OpFDiv %float %2355 %1065 2762 OpBranch %2352 2763 %2353 = OpLabel 2764 %2357 = OpFSub %float %2334 %2341 2765 %2358 = OpFMul %float %float_3 %2357 2766 %2359 = OpFSub %float %2349 %2341 2767 %2360 = OpFDiv %float %2358 %2359 2768 %2361 = OpConvertFToS %int %2360 2769 %2362 = OpConvertSToF %float %2361 2770 %2363 = OpFSub %float %2360 %2362 2771 %2364 = OpAccessChain %_ptr_Function_float %521 %2361 2772 %2365 = OpLoad %float %2364 2773 %2366 = OpIAdd %int %2361 %int_1 2774 %2367 = OpAccessChain %_ptr_Function_float %521 %2366 2775 %2368 = OpLoad %float %2367 2776 %2369 = OpIAdd %int %2361 %int_2 2777 %2370 = OpAccessChain %_ptr_Function_float %521 %2369 2778 %2371 = OpLoad %float %2370 2779 %2372 = OpCompositeConstruct %v3float %2365 %2368 %2371 2780 %2373 = OpFMul %float %2363 %2363 2781 %2374 = OpCompositeConstruct %v3float %2373 %2363 %float_1 2782 %2375 = OpMatrixTimesVector %v3float %442 %2372 2783 %2376 = OpDot %float %2374 %2375 2784 OpBranch %2352 2785 %2352 = OpLabel 2786 %2377 = OpPhi %float %2356 %2354 %2376 %2353 2787 OpBranch %2344 2788 %2345 = OpLabel 2789 %2378 = OpFSub %float %2334 %2260 2790 %2379 = OpFMul %float %float_3 %2378 2791 %2380 = OpFSub %float %2341 %2260 2792 %2381 = OpFDiv %float %2379 %2380 2793 %2382 = OpConvertFToS %int %2381 2794 %2383 = OpConvertSToF %float %2382 2795 %2384 = OpFSub %float %2381 %2383 2796 %2385 = OpAccessChain %_ptr_Function_float %522 %2382 2797 %2386 = OpLoad %float %2385 2798 %2387 = OpIAdd %int %2382 %int_1 2799 %2388 = OpAccessChain %_ptr_Function_float %522 %2387 2800 %2389 = OpLoad %float %2388 2801 %2390 = OpIAdd %int %2382 %int_2 2802 %2391 = OpAccessChain %_ptr_Function_float %522 %2390 2803 %2392 = OpLoad %float %2391 2804 %2393 = OpCompositeConstruct %v3float %2386 %2389 %2392 2805 %2394 = OpFMul %float %2384 %2384 2806 %2395 = OpCompositeConstruct %v3float %2394 %2384 %float_1 2807 %2396 = OpMatrixTimesVector %v3float %442 %2393 2808 %2397 = OpDot %float %2395 %2396 2809 OpBranch %2344 2810 %2344 = OpLabel 2811 %2398 = OpPhi %float %2377 %2352 %2397 %2345 2812 OpBranch %2336 2813 %2337 = OpLabel 2814 %2399 = OpExtInst %float %1 Log %float_9_99999975en05 2815 %2400 = OpFDiv %float %2399 %1065 2816 OpBranch %2336 2817 %2336 = OpLabel 2818 %2401 = OpPhi %float %2398 %2344 %2400 %2337 2819 %2402 = OpExtInst %float %1 Pow %float_10 %2401 2820 %2403 = OpCompositeInsert %v3float %2402 %2329 1 2821 %2404 = OpCompositeExtract %float %2248 2 2822 OpStore %524 %475 2823 OpStore %523 %476 2824 %2405 = OpFOrdLessThanEqual %bool %2404 %float_0 2825 %2406 = OpSelect %float %2405 %2255 %2404 2826 %2407 = OpExtInst %float %1 Log %2406 2827 %2408 = OpFDiv %float %2407 %1065 2828 %2409 = OpFOrdLessThanEqual %bool %2408 %2260 2829 OpSelectionMerge %2410 None 2830 OpBranchConditional %2409 %2411 %2412 2831 %2412 = OpLabel 2832 %2413 = OpFOrdGreaterThan %bool %2408 %2260 2833 %2414 = OpExtInst %float %1 Log %float_0_180000007 2834 %2415 = OpFDiv %float %2414 %1065 2835 %2416 = OpFOrdLessThan %bool %2408 %2415 2836 %2417 = OpLogicalAnd %bool %2413 %2416 2837 OpSelectionMerge %2418 None 2838 OpBranchConditional %2417 %2419 %2420 2839 %2420 = OpLabel 2840 %2421 = OpFOrdGreaterThanEqual %bool %2408 %2415 2841 %2422 = OpExtInst %float %1 Log %2253 2842 %2423 = OpFDiv %float %2422 %1065 2843 %2424 = OpFOrdLessThan %bool %2408 %2423 2844 %2425 = OpLogicalAnd %bool %2421 %2424 2845 OpSelectionMerge %2426 None 2846 OpBranchConditional %2425 %2427 %2428 2847 %2428 = OpLabel 2848 %2429 = OpExtInst %float %1 Log %float_10000 2849 %2430 = OpFDiv %float %2429 %1065 2850 OpBranch %2426 2851 %2427 = OpLabel 2852 %2431 = OpFSub %float %2408 %2415 2853 %2432 = OpFMul %float %float_3 %2431 2854 %2433 = OpFSub %float %2423 %2415 2855 %2434 = OpFDiv %float %2432 %2433 2856 %2435 = OpConvertFToS %int %2434 2857 %2436 = OpConvertSToF %float %2435 2858 %2437 = OpFSub %float %2434 %2436 2859 %2438 = OpAccessChain %_ptr_Function_float %523 %2435 2860 %2439 = OpLoad %float %2438 2861 %2440 = OpIAdd %int %2435 %int_1 2862 %2441 = OpAccessChain %_ptr_Function_float %523 %2440 2863 %2442 = OpLoad %float %2441 2864 %2443 = OpIAdd %int %2435 %int_2 2865 %2444 = OpAccessChain %_ptr_Function_float %523 %2443 2866 %2445 = OpLoad %float %2444 2867 %2446 = OpCompositeConstruct %v3float %2439 %2442 %2445 2868 %2447 = OpFMul %float %2437 %2437 2869 %2448 = OpCompositeConstruct %v3float %2447 %2437 %float_1 2870 %2449 = OpMatrixTimesVector %v3float %442 %2446 2871 %2450 = OpDot %float %2448 %2449 2872 OpBranch %2426 2873 %2426 = OpLabel 2874 %2451 = OpPhi %float %2430 %2428 %2450 %2427 2875 OpBranch %2418 2876 %2419 = OpLabel 2877 %2452 = OpFSub %float %2408 %2260 2878 %2453 = OpFMul %float %float_3 %2452 2879 %2454 = OpFSub %float %2415 %2260 2880 %2455 = OpFDiv %float %2453 %2454 2881 %2456 = OpConvertFToS %int %2455 2882 %2457 = OpConvertSToF %float %2456 2883 %2458 = OpFSub %float %2455 %2457 2884 %2459 = OpAccessChain %_ptr_Function_float %524 %2456 2885 %2460 = OpLoad %float %2459 2886 %2461 = OpIAdd %int %2456 %int_1 2887 %2462 = OpAccessChain %_ptr_Function_float %524 %2461 2888 %2463 = OpLoad %float %2462 2889 %2464 = OpIAdd %int %2456 %int_2 2890 %2465 = OpAccessChain %_ptr_Function_float %524 %2464 2891 %2466 = OpLoad %float %2465 2892 %2467 = OpCompositeConstruct %v3float %2460 %2463 %2466 2893 %2468 = OpFMul %float %2458 %2458 2894 %2469 = OpCompositeConstruct %v3float %2468 %2458 %float_1 2895 %2470 = OpMatrixTimesVector %v3float %442 %2467 2896 %2471 = OpDot %float %2469 %2470 2897 OpBranch %2418 2898 %2418 = OpLabel 2899 %2472 = OpPhi %float %2451 %2426 %2471 %2419 2900 OpBranch %2410 2901 %2411 = OpLabel 2902 %2473 = OpExtInst %float %1 Log %float_9_99999975en05 2903 %2474 = OpFDiv %float %2473 %1065 2904 OpBranch %2410 2905 %2410 = OpLabel 2906 %2475 = OpPhi %float %2472 %2418 %2474 %2411 2907 %2476 = OpExtInst %float %1 Pow %float_10 %2475 2908 %2477 = OpCompositeInsert %v3float %2476 %2403 2 2909 %2478 = OpVectorTimesMatrix %v3float %2477 %414 2910 %2479 = OpVectorTimesMatrix %v3float %2478 %410 2911 %2480 = OpExtInst %float %1 Pow %float_2 %float_n12 2912 %2481 = OpFMul %float %float_0_179999992 %2480 2913 OpStore %532 %475 2914 OpStore %531 %476 2915 %2482 = OpFOrdLessThanEqual %bool %2481 %float_0 2916 %2483 = OpSelect %float %2482 %2255 %2481 2917 %2484 = OpExtInst %float %1 Log %2483 2918 %2485 = OpFDiv %float %2484 %1065 2919 %2486 = OpFOrdLessThanEqual %bool %2485 %2260 2920 OpSelectionMerge %2487 None 2921 OpBranchConditional %2486 %2488 %2489 2922 %2489 = OpLabel 2923 %2490 = OpFOrdGreaterThan %bool %2485 %2260 2924 %2491 = OpExtInst %float %1 Log %float_0_180000007 2925 %2492 = OpFDiv %float %2491 %1065 2926 %2493 = OpFOrdLessThan %bool %2485 %2492 2927 %2494 = OpLogicalAnd %bool %2490 %2493 2928 OpSelectionMerge %2495 None 2929 OpBranchConditional %2494 %2496 %2497 2930 %2497 = OpLabel 2931 %2498 = OpFOrdGreaterThanEqual %bool %2485 %2492 2932 %2499 = OpExtInst %float %1 Log %2253 2933 %2500 = OpFDiv %float %2499 %1065 2934 %2501 = OpFOrdLessThan %bool %2485 %2500 2935 %2502 = OpLogicalAnd %bool %2498 %2501 2936 OpSelectionMerge %2503 None 2937 OpBranchConditional %2502 %2504 %2505 2938 %2505 = OpLabel 2939 %2506 = OpExtInst %float %1 Log %float_10000 2940 %2507 = OpFDiv %float %2506 %1065 2941 OpBranch %2503 2942 %2504 = OpLabel 2943 %2508 = OpFSub %float %2485 %2492 2944 %2509 = OpFMul %float %float_3 %2508 2945 %2510 = OpFSub %float %2500 %2492 2946 %2511 = OpFDiv %float %2509 %2510 2947 %2512 = OpConvertFToS %int %2511 2948 %2513 = OpConvertSToF %float %2512 2949 %2514 = OpFSub %float %2511 %2513 2950 %2515 = OpAccessChain %_ptr_Function_float %531 %2512 2951 %2516 = OpLoad %float %2515 2952 %2517 = OpIAdd %int %2512 %int_1 2953 %2518 = OpAccessChain %_ptr_Function_float %531 %2517 2954 %2519 = OpLoad %float %2518 2955 %2520 = OpIAdd %int %2512 %int_2 2956 %2521 = OpAccessChain %_ptr_Function_float %531 %2520 2957 %2522 = OpLoad %float %2521 2958 %2523 = OpCompositeConstruct %v3float %2516 %2519 %2522 2959 %2524 = OpFMul %float %2514 %2514 2960 %2525 = OpCompositeConstruct %v3float %2524 %2514 %float_1 2961 %2526 = OpMatrixTimesVector %v3float %442 %2523 2962 %2527 = OpDot %float %2525 %2526 2963 OpBranch %2503 2964 %2503 = OpLabel 2965 %2528 = OpPhi %float %2507 %2505 %2527 %2504 2966 OpBranch %2495 2967 %2496 = OpLabel 2968 %2529 = OpFSub %float %2485 %2260 2969 %2530 = OpFMul %float %float_3 %2529 2970 %2531 = OpFSub %float %2492 %2260 2971 %2532 = OpFDiv %float %2530 %2531 2972 %2533 = OpConvertFToS %int %2532 2973 %2534 = OpConvertSToF %float %2533 2974 %2535 = OpFSub %float %2532 %2534 2975 %2536 = OpAccessChain %_ptr_Function_float %532 %2533 2976 %2537 = OpLoad %float %2536 2977 %2538 = OpIAdd %int %2533 %int_1 2978 %2539 = OpAccessChain %_ptr_Function_float %532 %2538 2979 %2540 = OpLoad %float %2539 2980 %2541 = OpIAdd %int %2533 %int_2 2981 %2542 = OpAccessChain %_ptr_Function_float %532 %2541 2982 %2543 = OpLoad %float %2542 2983 %2544 = OpCompositeConstruct %v3float %2537 %2540 %2543 2984 %2545 = OpFMul %float %2535 %2535 2985 %2546 = OpCompositeConstruct %v3float %2545 %2535 %float_1 2986 %2547 = OpMatrixTimesVector %v3float %442 %2544 2987 %2548 = OpDot %float %2546 %2547 2988 OpBranch %2495 2989 %2495 = OpLabel 2990 %2549 = OpPhi %float %2528 %2503 %2548 %2496 2991 OpBranch %2487 2992 %2488 = OpLabel 2993 %2550 = OpExtInst %float %1 Log %float_9_99999975en05 2994 %2551 = OpFDiv %float %2550 %1065 2995 OpBranch %2487 2996 %2487 = OpLabel 2997 %2552 = OpPhi %float %2549 %2495 %2551 %2488 2998 %2553 = OpExtInst %float %1 Pow %float_10 %2552 2999 OpStore %534 %475 3000 OpStore %533 %476 3001 %2554 = OpExtInst %float %1 Log %float_0_180000007 3002 %2555 = OpFDiv %float %2554 %1065 3003 %2556 = OpFOrdLessThanEqual %bool %2555 %2260 3004 OpSelectionMerge %2557 None 3005 OpBranchConditional %2556 %2558 %2559 3006 %2559 = OpLabel 3007 %2560 = OpFOrdGreaterThan %bool %2555 %2260 3008 %2561 = OpFOrdLessThan %bool %2555 %2555 3009 %2562 = OpLogicalAnd %bool %2560 %2561 3010 OpSelectionMerge %2563 None 3011 OpBranchConditional %2562 %2564 %2565 3012 %2565 = OpLabel 3013 %2566 = OpFOrdGreaterThanEqual %bool %2555 %2555 3014 %2567 = OpExtInst %float %1 Log %2253 3015 %2568 = OpFDiv %float %2567 %1065 3016 %2569 = OpFOrdLessThan %bool %2555 %2568 3017 %2570 = OpLogicalAnd %bool %2566 %2569 3018 OpSelectionMerge %2571 None 3019 OpBranchConditional %2570 %2572 %2573 3020 %2573 = OpLabel 3021 %2574 = OpExtInst %float %1 Log %float_10000 3022 %2575 = OpFDiv %float %2574 %1065 3023 OpBranch %2571 3024 %2572 = OpLabel 3025 %2576 = OpFSub %float %2555 %2555 3026 %2577 = OpFMul %float %float_3 %2576 3027 %2578 = OpFSub %float %2568 %2555 3028 %2579 = OpFDiv %float %2577 %2578 3029 %2580 = OpConvertFToS %int %2579 3030 %2581 = OpConvertSToF %float %2580 3031 %2582 = OpFSub %float %2579 %2581 3032 %2583 = OpAccessChain %_ptr_Function_float %533 %2580 3033 %2584 = OpLoad %float %2583 3034 %2585 = OpIAdd %int %2580 %int_1 3035 %2586 = OpAccessChain %_ptr_Function_float %533 %2585 3036 %2587 = OpLoad %float %2586 3037 %2588 = OpIAdd %int %2580 %int_2 3038 %2589 = OpAccessChain %_ptr_Function_float %533 %2588 3039 %2590 = OpLoad %float %2589 3040 %2591 = OpCompositeConstruct %v3float %2584 %2587 %2590 3041 %2592 = OpFMul %float %2582 %2582 3042 %2593 = OpCompositeConstruct %v3float %2592 %2582 %float_1 3043 %2594 = OpMatrixTimesVector %v3float %442 %2591 3044 %2595 = OpDot %float %2593 %2594 3045 OpBranch %2571 3046 %2571 = OpLabel 3047 %2596 = OpPhi %float %2575 %2573 %2595 %2572 3048 OpBranch %2563 3049 %2564 = OpLabel 3050 %2597 = OpFSub %float %2555 %2260 3051 %2598 = OpFMul %float %float_3 %2597 3052 %2599 = OpAccessChain %_ptr_Function_float %534 %int_3 3053 %2600 = OpLoad %float %2599 3054 %2601 = OpAccessChain %_ptr_Function_float %534 %int_4 3055 %2602 = OpLoad %float %2601 3056 %2603 = OpAccessChain %_ptr_Function_float %534 %int_5 3057 %2604 = OpLoad %float %2603 3058 %2605 = OpCompositeConstruct %v3float %2600 %2602 %2604 3059 %2606 = OpMatrixTimesVector %v3float %442 %2605 3060 %2607 = OpCompositeExtract %float %2606 2 3061 OpBranch %2563 3062 %2563 = OpLabel 3063 %2608 = OpPhi %float %2596 %2571 %2607 %2564 3064 OpBranch %2557 3065 %2558 = OpLabel 3066 %2609 = OpExtInst %float %1 Log %float_9_99999975en05 3067 %2610 = OpFDiv %float %2609 %1065 3068 OpBranch %2557 3069 %2557 = OpLabel 3070 %2611 = OpPhi %float %2608 %2563 %2610 %2558 3071 %2612 = OpExtInst %float %1 Pow %float_10 %2611 3072 %2613 = OpExtInst %float %1 Pow %float_2 %float_10 3073 %2614 = OpFMul %float %float_0_179999992 %2613 3074 OpStore %536 %475 3075 OpStore %535 %476 3076 %2615 = OpFOrdLessThanEqual %bool %2614 %float_0 3077 %2616 = OpSelect %float %2615 %2255 %2614 3078 %2617 = OpExtInst %float %1 Log %2616 3079 %2618 = OpFDiv %float %2617 %1065 3080 %2619 = OpFOrdLessThanEqual %bool %2618 %2260 3081 OpSelectionMerge %2620 None 3082 OpBranchConditional %2619 %2621 %2622 3083 %2622 = OpLabel 3084 %2623 = OpFOrdGreaterThan %bool %2618 %2260 3085 %2624 = OpFOrdLessThan %bool %2618 %2555 3086 %2625 = OpLogicalAnd %bool %2623 %2624 3087 OpSelectionMerge %2626 None 3088 OpBranchConditional %2625 %2627 %2628 3089 %2628 = OpLabel 3090 %2629 = OpFOrdGreaterThanEqual %bool %2618 %2555 3091 %2630 = OpExtInst %float %1 Log %2253 3092 %2631 = OpFDiv %float %2630 %1065 3093 %2632 = OpFOrdLessThan %bool %2618 %2631 3094 %2633 = OpLogicalAnd %bool %2629 %2632 3095 OpSelectionMerge %2634 None 3096 OpBranchConditional %2633 %2635 %2636 3097 %2636 = OpLabel 3098 %2637 = OpExtInst %float %1 Log %float_10000 3099 %2638 = OpFDiv %float %2637 %1065 3100 OpBranch %2634 3101 %2635 = OpLabel 3102 %2639 = OpFSub %float %2618 %2555 3103 %2640 = OpFMul %float %float_3 %2639 3104 %2641 = OpFSub %float %2631 %2555 3105 %2642 = OpFDiv %float %2640 %2641 3106 %2643 = OpConvertFToS %int %2642 3107 %2644 = OpConvertSToF %float %2643 3108 %2645 = OpFSub %float %2642 %2644 3109 %2646 = OpAccessChain %_ptr_Function_float %535 %2643 3110 %2647 = OpLoad %float %2646 3111 %2648 = OpIAdd %int %2643 %int_1 3112 %2649 = OpAccessChain %_ptr_Function_float %535 %2648 3113 %2650 = OpLoad %float %2649 3114 %2651 = OpIAdd %int %2643 %int_2 3115 %2652 = OpAccessChain %_ptr_Function_float %535 %2651 3116 %2653 = OpLoad %float %2652 3117 %2654 = OpCompositeConstruct %v3float %2647 %2650 %2653 3118 %2655 = OpFMul %float %2645 %2645 3119 %2656 = OpCompositeConstruct %v3float %2655 %2645 %float_1 3120 %2657 = OpMatrixTimesVector %v3float %442 %2654 3121 %2658 = OpDot %float %2656 %2657 3122 OpBranch %2634 3123 %2634 = OpLabel 3124 %2659 = OpPhi %float %2638 %2636 %2658 %2635 3125 OpBranch %2626 3126 %2627 = OpLabel 3127 %2660 = OpFSub %float %2618 %2260 3128 %2661 = OpFMul %float %float_3 %2660 3129 %2662 = OpFSub %float %2555 %2260 3130 %2663 = OpFDiv %float %2661 %2662 3131 %2664 = OpConvertFToS %int %2663 3132 %2665 = OpConvertSToF %float %2664 3133 %2666 = OpFSub %float %2663 %2665 3134 %2667 = OpAccessChain %_ptr_Function_float %536 %2664 3135 %2668 = OpLoad %float %2667 3136 %2669 = OpIAdd %int %2664 %int_1 3137 %2670 = OpAccessChain %_ptr_Function_float %536 %2669 3138 %2671 = OpLoad %float %2670 3139 %2672 = OpIAdd %int %2664 %int_2 3140 %2673 = OpAccessChain %_ptr_Function_float %536 %2672 3141 %2674 = OpLoad %float %2673 3142 %2675 = OpCompositeConstruct %v3float %2668 %2671 %2674 3143 %2676 = OpFMul %float %2666 %2666 3144 %2677 = OpCompositeConstruct %v3float %2676 %2666 %float_1 3145 %2678 = OpMatrixTimesVector %v3float %442 %2675 3146 %2679 = OpDot %float %2677 %2678 3147 OpBranch %2626 3148 %2626 = OpLabel 3149 %2680 = OpPhi %float %2659 %2634 %2679 %2627 3150 OpBranch %2620 3151 %2621 = OpLabel 3152 %2681 = OpExtInst %float %1 Log %float_9_99999975en05 3153 %2682 = OpFDiv %float %2681 %1065 3154 OpBranch %2620 3155 %2620 = OpLabel 3156 %2683 = OpPhi %float %2680 %2626 %2682 %2621 3157 %2684 = OpExtInst %float %1 Pow %float_10 %2683 3158 %2685 = OpCompositeExtract %float %2479 0 3159 OpStore %530 %479 3160 OpStore %529 %480 3161 %2686 = OpFOrdLessThanEqual %bool %2685 %float_0 3162 %2687 = OpSelect %float %2686 %float_9_99999975en05 %2685 3163 %2688 = OpExtInst %float %1 Log %2687 3164 %2689 = OpFDiv %float %2688 %1065 3165 %2690 = OpExtInst %float %1 Log %2553 3166 %2691 = OpFDiv %float %2690 %1065 3167 %2692 = OpFOrdLessThanEqual %bool %2689 %2691 3168 OpSelectionMerge %2693 None 3169 OpBranchConditional %2692 %2694 %2695 3170 %2695 = OpLabel 3171 %2696 = OpFOrdGreaterThan %bool %2689 %2691 3172 %2697 = OpExtInst %float %1 Log %2612 3173 %2698 = OpFDiv %float %2697 %1065 3174 %2699 = OpFOrdLessThan %bool %2689 %2698 3175 %2700 = OpLogicalAnd %bool %2696 %2699 3176 OpSelectionMerge %2701 None 3177 OpBranchConditional %2700 %2702 %2703 3178 %2703 = OpLabel 3179 %2704 = OpFOrdGreaterThanEqual %bool %2689 %2698 3180 %2705 = OpExtInst %float %1 Log %2684 3181 %2706 = OpFDiv %float %2705 %1065 3182 %2707 = OpFOrdLessThan %bool %2689 %2706 3183 %2708 = OpLogicalAnd %bool %2704 %2707 3184 OpSelectionMerge %2709 None 3185 OpBranchConditional %2708 %2710 %2711 3186 %2711 = OpLabel 3187 %2712 = OpFMul %float %2689 %float_0_0599999987 3188 %2713 = OpExtInst %float %1 Log %float_1000 3189 %2714 = OpFDiv %float %2713 %1065 3190 %2715 = OpFMul %float %float_0_0599999987 %2705 3191 %2716 = OpFDiv %float %2715 %1065 3192 %2717 = OpFSub %float %2714 %2716 3193 %2718 = OpFAdd %float %2712 %2717 3194 OpBranch %2709 3195 %2710 = OpLabel 3196 %2719 = OpFSub %float %2689 %2698 3197 %2720 = OpFMul %float %float_7 %2719 3198 %2721 = OpFSub %float %2706 %2698 3199 %2722 = OpFDiv %float %2720 %2721 3200 %2723 = OpConvertFToS %int %2722 3201 %2724 = OpConvertSToF %float %2723 3202 %2725 = OpFSub %float %2722 %2724 3203 %2726 = OpAccessChain %_ptr_Function_float %529 %2723 3204 %2727 = OpLoad %float %2726 3205 %2728 = OpIAdd %int %2723 %int_1 3206 %2729 = OpAccessChain %_ptr_Function_float %529 %2728 3207 %2730 = OpLoad %float %2729 3208 %2731 = OpIAdd %int %2723 %int_2 3209 %2732 = OpAccessChain %_ptr_Function_float %529 %2731 3210 %2733 = OpLoad %float %2732 3211 %2734 = OpCompositeConstruct %v3float %2727 %2730 %2733 3212 %2735 = OpFMul %float %2725 %2725 3213 %2736 = OpCompositeConstruct %v3float %2735 %2725 %float_1 3214 %2737 = OpMatrixTimesVector %v3float %442 %2734 3215 %2738 = OpDot %float %2736 %2737 3216 OpBranch %2709 3217 %2709 = OpLabel 3218 %2739 = OpPhi %float %2718 %2711 %2738 %2710 3219 OpBranch %2701 3220 %2702 = OpLabel 3221 %2740 = OpFSub %float %2689 %2691 3222 %2741 = OpFMul %float %float_7 %2740 3223 %2742 = OpFSub %float %2698 %2691 3224 %2743 = OpFDiv %float %2741 %2742 3225 %2744 = OpConvertFToS %int %2743 3226 %2745 = OpConvertSToF %float %2744 3227 %2746 = OpFSub %float %2743 %2745 3228 %2747 = OpAccessChain %_ptr_Function_float %530 %2744 3229 %2748 = OpLoad %float %2747 3230 %2749 = OpIAdd %int %2744 %int_1 3231 %2750 = OpAccessChain %_ptr_Function_float %530 %2749 3232 %2751 = OpLoad %float %2750 3233 %2752 = OpIAdd %int %2744 %int_2 3234 %2753 = OpAccessChain %_ptr_Function_float %530 %2752 3235 %2754 = OpLoad %float %2753 3236 %2755 = OpCompositeConstruct %v3float %2748 %2751 %2754 3237 %2756 = OpFMul %float %2746 %2746 3238 %2757 = OpCompositeConstruct %v3float %2756 %2746 %float_1 3239 %2758 = OpMatrixTimesVector %v3float %442 %2755 3240 %2759 = OpDot %float %2757 %2758 3241 OpBranch %2701 3242 %2701 = OpLabel 3243 %2760 = OpPhi %float %2739 %2709 %2759 %2702 3244 OpBranch %2693 3245 %2694 = OpLabel 3246 %2761 = OpFMul %float %2689 %float_3 3247 %2762 = OpExtInst %float %1 Log %float_9_99999975en05 3248 %2763 = OpFDiv %float %2762 %1065 3249 %2764 = OpFMul %float %float_3 %2690 3250 %2765 = OpFDiv %float %2764 %1065 3251 %2766 = OpFSub %float %2763 %2765 3252 %2767 = OpFAdd %float %2761 %2766 3253 OpBranch %2693 3254 %2693 = OpLabel 3255 %2768 = OpPhi %float %2760 %2701 %2767 %2694 3256 %2769 = OpExtInst %float %1 Pow %float_10 %2768 3257 %2770 = OpCompositeInsert %v3float %2769 %391 0 3258 %2771 = OpCompositeExtract %float %2479 1 3259 OpStore %528 %479 3260 OpStore %527 %480 3261 %2772 = OpFOrdLessThanEqual %bool %2771 %float_0 3262 %2773 = OpSelect %float %2772 %float_9_99999975en05 %2771 3263 %2774 = OpExtInst %float %1 Log %2773 3264 %2775 = OpFDiv %float %2774 %1065 3265 %2776 = OpFOrdLessThanEqual %bool %2775 %2691 3266 OpSelectionMerge %2777 None 3267 OpBranchConditional %2776 %2778 %2779 3268 %2779 = OpLabel 3269 %2780 = OpFOrdGreaterThan %bool %2775 %2691 3270 %2781 = OpExtInst %float %1 Log %2612 3271 %2782 = OpFDiv %float %2781 %1065 3272 %2783 = OpFOrdLessThan %bool %2775 %2782 3273 %2784 = OpLogicalAnd %bool %2780 %2783 3274 OpSelectionMerge %2785 None 3275 OpBranchConditional %2784 %2786 %2787 3276 %2787 = OpLabel 3277 %2788 = OpFOrdGreaterThanEqual %bool %2775 %2782 3278 %2789 = OpExtInst %float %1 Log %2684 3279 %2790 = OpFDiv %float %2789 %1065 3280 %2791 = OpFOrdLessThan %bool %2775 %2790 3281 %2792 = OpLogicalAnd %bool %2788 %2791 3282 OpSelectionMerge %2793 None 3283 OpBranchConditional %2792 %2794 %2795 3284 %2795 = OpLabel 3285 %2796 = OpFMul %float %2775 %float_0_0599999987 3286 %2797 = OpExtInst %float %1 Log %float_1000 3287 %2798 = OpFDiv %float %2797 %1065 3288 %2799 = OpFMul %float %float_0_0599999987 %2789 3289 %2800 = OpFDiv %float %2799 %1065 3290 %2801 = OpFSub %float %2798 %2800 3291 %2802 = OpFAdd %float %2796 %2801 3292 OpBranch %2793 3293 %2794 = OpLabel 3294 %2803 = OpFSub %float %2775 %2782 3295 %2804 = OpFMul %float %float_7 %2803 3296 %2805 = OpFSub %float %2790 %2782 3297 %2806 = OpFDiv %float %2804 %2805 3298 %2807 = OpConvertFToS %int %2806 3299 %2808 = OpConvertSToF %float %2807 3300 %2809 = OpFSub %float %2806 %2808 3301 %2810 = OpAccessChain %_ptr_Function_float %527 %2807 3302 %2811 = OpLoad %float %2810 3303 %2812 = OpIAdd %int %2807 %int_1 3304 %2813 = OpAccessChain %_ptr_Function_float %527 %2812 3305 %2814 = OpLoad %float %2813 3306 %2815 = OpIAdd %int %2807 %int_2 3307 %2816 = OpAccessChain %_ptr_Function_float %527 %2815 3308 %2817 = OpLoad %float %2816 3309 %2818 = OpCompositeConstruct %v3float %2811 %2814 %2817 3310 %2819 = OpFMul %float %2809 %2809 3311 %2820 = OpCompositeConstruct %v3float %2819 %2809 %float_1 3312 %2821 = OpMatrixTimesVector %v3float %442 %2818 3313 %2822 = OpDot %float %2820 %2821 3314 OpBranch %2793 3315 %2793 = OpLabel 3316 %2823 = OpPhi %float %2802 %2795 %2822 %2794 3317 OpBranch %2785 3318 %2786 = OpLabel 3319 %2824 = OpFSub %float %2775 %2691 3320 %2825 = OpFMul %float %float_7 %2824 3321 %2826 = OpFSub %float %2782 %2691 3322 %2827 = OpFDiv %float %2825 %2826 3323 %2828 = OpConvertFToS %int %2827 3324 %2829 = OpConvertSToF %float %2828 3325 %2830 = OpFSub %float %2827 %2829 3326 %2831 = OpAccessChain %_ptr_Function_float %528 %2828 3327 %2832 = OpLoad %float %2831 3328 %2833 = OpIAdd %int %2828 %int_1 3329 %2834 = OpAccessChain %_ptr_Function_float %528 %2833 3330 %2835 = OpLoad %float %2834 3331 %2836 = OpIAdd %int %2828 %int_2 3332 %2837 = OpAccessChain %_ptr_Function_float %528 %2836 3333 %2838 = OpLoad %float %2837 3334 %2839 = OpCompositeConstruct %v3float %2832 %2835 %2838 3335 %2840 = OpFMul %float %2830 %2830 3336 %2841 = OpCompositeConstruct %v3float %2840 %2830 %float_1 3337 %2842 = OpMatrixTimesVector %v3float %442 %2839 3338 %2843 = OpDot %float %2841 %2842 3339 OpBranch %2785 3340 %2785 = OpLabel 3341 %2844 = OpPhi %float %2823 %2793 %2843 %2786 3342 OpBranch %2777 3343 %2778 = OpLabel 3344 %2845 = OpFMul %float %2775 %float_3 3345 %2846 = OpExtInst %float %1 Log %float_9_99999975en05 3346 %2847 = OpFDiv %float %2846 %1065 3347 %2848 = OpFMul %float %float_3 %2690 3348 %2849 = OpFDiv %float %2848 %1065 3349 %2850 = OpFSub %float %2847 %2849 3350 %2851 = OpFAdd %float %2845 %2850 3351 OpBranch %2777 3352 %2777 = OpLabel 3353 %2852 = OpPhi %float %2844 %2785 %2851 %2778 3354 %2853 = OpExtInst %float %1 Pow %float_10 %2852 3355 %2854 = OpCompositeInsert %v3float %2853 %2770 1 3356 %2855 = OpCompositeExtract %float %2479 2 3357 OpStore %526 %479 3358 OpStore %525 %480 3359 %2856 = OpFOrdLessThanEqual %bool %2855 %float_0 3360 %2857 = OpSelect %float %2856 %float_9_99999975en05 %2855 3361 %2858 = OpExtInst %float %1 Log %2857 3362 %2859 = OpFDiv %float %2858 %1065 3363 %2860 = OpFOrdLessThanEqual %bool %2859 %2691 3364 OpSelectionMerge %2861 None 3365 OpBranchConditional %2860 %2862 %2863 3366 %2863 = OpLabel 3367 %2864 = OpFOrdGreaterThan %bool %2859 %2691 3368 %2865 = OpExtInst %float %1 Log %2612 3369 %2866 = OpFDiv %float %2865 %1065 3370 %2867 = OpFOrdLessThan %bool %2859 %2866 3371 %2868 = OpLogicalAnd %bool %2864 %2867 3372 OpSelectionMerge %2869 None 3373 OpBranchConditional %2868 %2870 %2871 3374 %2871 = OpLabel 3375 %2872 = OpFOrdGreaterThanEqual %bool %2859 %2866 3376 %2873 = OpExtInst %float %1 Log %2684 3377 %2874 = OpFDiv %float %2873 %1065 3378 %2875 = OpFOrdLessThan %bool %2859 %2874 3379 %2876 = OpLogicalAnd %bool %2872 %2875 3380 OpSelectionMerge %2877 None 3381 OpBranchConditional %2876 %2878 %2879 3382 %2879 = OpLabel 3383 %2880 = OpFMul %float %2859 %float_0_0599999987 3384 %2881 = OpExtInst %float %1 Log %float_1000 3385 %2882 = OpFDiv %float %2881 %1065 3386 %2883 = OpFMul %float %float_0_0599999987 %2873 3387 %2884 = OpFDiv %float %2883 %1065 3388 %2885 = OpFSub %float %2882 %2884 3389 %2886 = OpFAdd %float %2880 %2885 3390 OpBranch %2877 3391 %2878 = OpLabel 3392 %2887 = OpFSub %float %2859 %2866 3393 %2888 = OpFMul %float %float_7 %2887 3394 %2889 = OpFSub %float %2874 %2866 3395 %2890 = OpFDiv %float %2888 %2889 3396 %2891 = OpConvertFToS %int %2890 3397 %2892 = OpConvertSToF %float %2891 3398 %2893 = OpFSub %float %2890 %2892 3399 %2894 = OpAccessChain %_ptr_Function_float %525 %2891 3400 %2895 = OpLoad %float %2894 3401 %2896 = OpIAdd %int %2891 %int_1 3402 %2897 = OpAccessChain %_ptr_Function_float %525 %2896 3403 %2898 = OpLoad %float %2897 3404 %2899 = OpIAdd %int %2891 %int_2 3405 %2900 = OpAccessChain %_ptr_Function_float %525 %2899 3406 %2901 = OpLoad %float %2900 3407 %2902 = OpCompositeConstruct %v3float %2895 %2898 %2901 3408 %2903 = OpFMul %float %2893 %2893 3409 %2904 = OpCompositeConstruct %v3float %2903 %2893 %float_1 3410 %2905 = OpMatrixTimesVector %v3float %442 %2902 3411 %2906 = OpDot %float %2904 %2905 3412 OpBranch %2877 3413 %2877 = OpLabel 3414 %2907 = OpPhi %float %2886 %2879 %2906 %2878 3415 OpBranch %2869 3416 %2870 = OpLabel 3417 %2908 = OpFSub %float %2859 %2691 3418 %2909 = OpFMul %float %float_7 %2908 3419 %2910 = OpFSub %float %2866 %2691 3420 %2911 = OpFDiv %float %2909 %2910 3421 %2912 = OpConvertFToS %int %2911 3422 %2913 = OpConvertSToF %float %2912 3423 %2914 = OpFSub %float %2911 %2913 3424 %2915 = OpAccessChain %_ptr_Function_float %526 %2912 3425 %2916 = OpLoad %float %2915 3426 %2917 = OpIAdd %int %2912 %int_1 3427 %2918 = OpAccessChain %_ptr_Function_float %526 %2917 3428 %2919 = OpLoad %float %2918 3429 %2920 = OpIAdd %int %2912 %int_2 3430 %2921 = OpAccessChain %_ptr_Function_float %526 %2920 3431 %2922 = OpLoad %float %2921 3432 %2923 = OpCompositeConstruct %v3float %2916 %2919 %2922 3433 %2924 = OpFMul %float %2914 %2914 3434 %2925 = OpCompositeConstruct %v3float %2924 %2914 %float_1 3435 %2926 = OpMatrixTimesVector %v3float %442 %2923 3436 %2927 = OpDot %float %2925 %2926 3437 OpBranch %2869 3438 %2869 = OpLabel 3439 %2928 = OpPhi %float %2907 %2877 %2927 %2870 3440 OpBranch %2861 3441 %2862 = OpLabel 3442 %2929 = OpFMul %float %2859 %float_3 3443 %2930 = OpExtInst %float %1 Log %float_9_99999975en05 3444 %2931 = OpFDiv %float %2930 %1065 3445 %2932 = OpFMul %float %float_3 %2690 3446 %2933 = OpFDiv %float %2932 %1065 3447 %2934 = OpFSub %float %2931 %2933 3448 %2935 = OpFAdd %float %2929 %2934 3449 OpBranch %2861 3450 %2861 = OpLabel 3451 %2936 = OpPhi %float %2928 %2869 %2935 %2862 3452 %2937 = OpExtInst %float %1 Pow %float_10 %2936 3453 %2938 = OpCompositeInsert %v3float %2937 %2854 2 3454 %2939 = OpFSub %v3float %2938 %338 3455 %2940 = OpVectorTimesMatrix %v3float %2939 %576 3456 %2941 = OpFMul %v3float %2940 %496 3457 %2942 = OpExtInst %v3float %1 Pow %2941 %263 3458 %2943 = OpFMul %v3float %184 %2942 3459 %2944 = OpFAdd %v3float %183 %2943 3460 %2945 = OpFMul %v3float %185 %2942 3461 %2946 = OpFAdd %v3float %135 %2945 3462 %2947 = OpFDiv %v3float %135 %2946 3463 %2948 = OpFMul %v3float %2944 %2947 3464 %2949 = OpExtInst %v3float %1 Pow %2948 %264 3465 OpBranch %1230 3466 %1230 = OpLabel 3467 %2950 = OpPhi %v3float %2097 %1236 %2949 %2861 3468 OpBranch %1224 3469 %1225 = OpLabel 3470 %2951 = OpVectorTimesMatrix %v3float %1218 %547 3471 %2952 = OpVectorTimesMatrix %v3float %2951 %576 3472 %2953 = OpExtInst %v3float %1 FMax %250 %2952 3473 %2954 = OpFMul %v3float %2953 %252 3474 %2955 = OpExtInst %v3float %1 FMax %2953 %254 3475 %2956 = OpExtInst %v3float %1 Pow %2955 %256 3476 %2957 = OpFMul %v3float %2956 %258 3477 %2958 = OpFSub %v3float %2957 %260 3478 %2959 = OpExtInst %v3float %1 FMin %2954 %2958 3479 OpBranch %1224 3480 %1224 = OpLabel 3481 %2960 = OpPhi %v3float %2950 %1230 %2959 %1225 3482 OpBranch %1220 3483 %1221 = OpLabel 3484 %2961 = OpCompositeExtract %float %1218 0 3485 OpBranch %2962 3486 %2962 = OpLabel 3487 OpLoopMerge %2963 %2964 None 3488 OpBranch %2965 3489 %2965 = OpLabel 3490 %2966 = OpFOrdLessThan %bool %2961 %float_0_00313066994 3491 OpSelectionMerge %2967 None 3492 OpBranchConditional %2966 %2968 %2967 3493 %2968 = OpLabel 3494 %2969 = OpFMul %float %2961 %float_12_9200001 3495 OpBranch %2963 3496 %2967 = OpLabel 3497 %2970 = OpExtInst %float %1 Pow %2961 %float_0_416666657 3498 %2971 = OpFMul %float %2970 %float_1_05499995 3499 %2972 = OpFSub %float %2971 %float_0_0549999997 3500 OpBranch %2963 3501 %2964 = OpLabel 3502 OpBranch %2962 3503 %2963 = OpLabel 3504 %2973 = OpPhi %float %2969 %2968 %2972 %2967 3505 %2974 = OpCompositeExtract %float %1218 1 3506 OpBranch %2975 3507 %2975 = OpLabel 3508 OpLoopMerge %2976 %2977 None 3509 OpBranch %2978 3510 %2978 = OpLabel 3511 %2979 = OpFOrdLessThan %bool %2974 %float_0_00313066994 3512 OpSelectionMerge %2980 None 3513 OpBranchConditional %2979 %2981 %2980 3514 %2981 = OpLabel 3515 %2982 = OpFMul %float %2974 %float_12_9200001 3516 OpBranch %2976 3517 %2980 = OpLabel 3518 %2983 = OpExtInst %float %1 Pow %2974 %float_0_416666657 3519 %2984 = OpFMul %float %2983 %float_1_05499995 3520 %2985 = OpFSub %float %2984 %float_0_0549999997 3521 OpBranch %2976 3522 %2977 = OpLabel 3523 OpBranch %2975 3524 %2976 = OpLabel 3525 %2986 = OpPhi %float %2982 %2981 %2985 %2980 3526 %2987 = OpCompositeExtract %float %1218 2 3527 OpBranch %2988 3528 %2988 = OpLabel 3529 OpLoopMerge %2989 %2990 None 3530 OpBranch %2991 3531 %2991 = OpLabel 3532 %2992 = OpFOrdLessThan %bool %2987 %float_0_00313066994 3533 OpSelectionMerge %2993 None 3534 OpBranchConditional %2992 %2994 %2993 3535 %2994 = OpLabel 3536 %2995 = OpFMul %float %2987 %float_12_9200001 3537 OpBranch %2989 3538 %2993 = OpLabel 3539 %2996 = OpExtInst %float %1 Pow %2987 %float_0_416666657 3540 %2997 = OpFMul %float %2996 %float_1_05499995 3541 %2998 = OpFSub %float %2997 %float_0_0549999997 3542 OpBranch %2989 3543 %2990 = OpLabel 3544 OpBranch %2988 3545 %2989 = OpLabel 3546 %2999 = OpPhi %float %2995 %2994 %2998 %2993 3547 %3000 = OpCompositeConstruct %v3float %2973 %2986 %2999 3548 OpBranch %1220 3549 %1220 = OpLabel 3550 %3001 = OpPhi %v3float %2960 %1224 %3000 %2989 3551 %3002 = OpFMul %v3float %3001 %499 3552 %3003 = OpVectorShuffle %v4float %129 %3002 4 5 6 3 3553 %3004 = OpCompositeInsert %v4float %float_0 %3003 3 3554 OpStore %out_var_SV_Target0 %3004 3555 OpReturn 3556 OpFunctionEnd 3557