summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag')
-rw-r--r--3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag1087
1 files changed, 1087 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag b/3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag
new file mode 100644
index 00000000000..fae211f278d
--- /dev/null
+++ b/3rdparty/bgfx/3rdparty/spirv-cross/shaders-ue4/asm/frag/accesschain-invalid-expression.asm.frag
@@ -0,0 +1,1087 @@
+; SPIR-V
+; Version: 1.0
+; Generator: Google spiregg; 0
+; Bound: 572
+; Schema: 0
+ OpCapability Shader
+ OpExtension "SPV_GOOGLE_hlsl_functionality1"
+ %1 = OpExtInstImport "GLSL.std.450"
+ OpMemoryModel Logical GLSL450
+ OpEntryPoint Fragment %Main "main" %in_var_TEXCOORD0 %in_var_TEXCOORD7 %in_var_TEXCOORD8 %gl_FragCoord %gl_FrontFacing %out_var_SV_Target0
+ OpExecutionMode %Main OriginUpperLeft
+ OpSource HLSL 600
+ OpName %type_View "type.View"
+ OpMemberName %type_View 0 "View_TranslatedWorldToClip"
+ OpMemberName %type_View 1 "View_WorldToClip"
+ OpMemberName %type_View 2 "View_TranslatedWorldToView"
+ OpMemberName %type_View 3 "View_ViewToTranslatedWorld"
+ OpMemberName %type_View 4 "View_TranslatedWorldToCameraView"
+ OpMemberName %type_View 5 "View_CameraViewToTranslatedWorld"
+ OpMemberName %type_View 6 "View_ViewToClip"
+ OpMemberName %type_View 7 "View_ViewToClipNoAA"
+ OpMemberName %type_View 8 "View_ClipToView"
+ OpMemberName %type_View 9 "View_ClipToTranslatedWorld"
+ OpMemberName %type_View 10 "View_SVPositionToTranslatedWorld"
+ OpMemberName %type_View 11 "View_ScreenToWorld"
+ OpMemberName %type_View 12 "View_ScreenToTranslatedWorld"
+ OpMemberName %type_View 13 "View_ViewForward"
+ OpMemberName %type_View 14 "PrePadding_View_844"
+ OpMemberName %type_View 15 "View_ViewUp"
+ OpMemberName %type_View 16 "PrePadding_View_860"
+ OpMemberName %type_View 17 "View_ViewRight"
+ OpMemberName %type_View 18 "PrePadding_View_876"
+ OpMemberName %type_View 19 "View_HMDViewNoRollUp"
+ OpMemberName %type_View 20 "PrePadding_View_892"
+ OpMemberName %type_View 21 "View_HMDViewNoRollRight"
+ OpMemberName %type_View 22 "PrePadding_View_908"
+ OpMemberName %type_View 23 "View_InvDeviceZToWorldZTransform"
+ OpMemberName %type_View 24 "View_ScreenPositionScaleBias"
+ OpMemberName %type_View 25 "View_WorldCameraOrigin"
+ OpMemberName %type_View 26 "PrePadding_View_956"
+ OpMemberName %type_View 27 "View_TranslatedWorldCameraOrigin"
+ OpMemberName %type_View 28 "PrePadding_View_972"
+ OpMemberName %type_View 29 "View_WorldViewOrigin"
+ OpMemberName %type_View 30 "PrePadding_View_988"
+ OpMemberName %type_View 31 "View_PreViewTranslation"
+ OpMemberName %type_View 32 "PrePadding_View_1004"
+ OpMemberName %type_View 33 "View_PrevProjection"
+ OpMemberName %type_View 34 "View_PrevViewProj"
+ OpMemberName %type_View 35 "View_PrevViewRotationProj"
+ OpMemberName %type_View 36 "View_PrevViewToClip"
+ OpMemberName %type_View 37 "View_PrevClipToView"
+ OpMemberName %type_View 38 "View_PrevTranslatedWorldToClip"
+ OpMemberName %type_View 39 "View_PrevTranslatedWorldToView"
+ OpMemberName %type_View 40 "View_PrevViewToTranslatedWorld"
+ OpMemberName %type_View 41 "View_PrevTranslatedWorldToCameraView"
+ OpMemberName %type_View 42 "View_PrevCameraViewToTranslatedWorld"
+ OpMemberName %type_View 43 "View_PrevWorldCameraOrigin"
+ OpMemberName %type_View 44 "PrePadding_View_1660"
+ OpMemberName %type_View 45 "View_PrevWorldViewOrigin"
+ OpMemberName %type_View 46 "PrePadding_View_1676"
+ OpMemberName %type_View 47 "View_PrevPreViewTranslation"
+ OpMemberName %type_View 48 "PrePadding_View_1692"
+ OpMemberName %type_View 49 "View_PrevInvViewProj"
+ OpMemberName %type_View 50 "View_PrevScreenToTranslatedWorld"
+ OpMemberName %type_View 51 "View_ClipToPrevClip"
+ OpMemberName %type_View 52 "View_TemporalAAJitter"
+ OpMemberName %type_View 53 "View_GlobalClippingPlane"
+ OpMemberName %type_View 54 "View_FieldOfViewWideAngles"
+ OpMemberName %type_View 55 "View_PrevFieldOfViewWideAngles"
+ OpMemberName %type_View 56 "View_ViewRectMin"
+ OpMemberName %type_View 57 "View_ViewSizeAndInvSize"
+ OpMemberName %type_View 58 "View_BufferSizeAndInvSize"
+ OpMemberName %type_View 59 "View_BufferBilinearUVMinMax"
+ OpMemberName %type_View 60 "View_NumSceneColorMSAASamples"
+ OpMemberName %type_View 61 "View_PreExposure"
+ OpMemberName %type_View 62 "View_OneOverPreExposure"
+ OpMemberName %type_View 63 "PrePadding_View_2012"
+ OpMemberName %type_View 64 "View_DiffuseOverrideParameter"
+ OpMemberName %type_View 65 "View_SpecularOverrideParameter"
+ OpMemberName %type_View 66 "View_NormalOverrideParameter"
+ OpMemberName %type_View 67 "View_RoughnessOverrideParameter"
+ OpMemberName %type_View 68 "View_PrevFrameGameTime"
+ OpMemberName %type_View 69 "View_PrevFrameRealTime"
+ OpMemberName %type_View 70 "View_OutOfBoundsMask"
+ OpMemberName %type_View 71 "PrePadding_View_2084"
+ OpMemberName %type_View 72 "PrePadding_View_2088"
+ OpMemberName %type_View 73 "PrePadding_View_2092"
+ OpMemberName %type_View 74 "View_WorldCameraMovementSinceLastFrame"
+ OpMemberName %type_View 75 "View_CullingSign"
+ OpMemberName %type_View 76 "View_NearPlane"
+ OpMemberName %type_View 77 "View_AdaptiveTessellationFactor"
+ OpMemberName %type_View 78 "View_GameTime"
+ OpMemberName %type_View 79 "View_RealTime"
+ OpMemberName %type_View 80 "View_DeltaTime"
+ OpMemberName %type_View 81 "View_MaterialTextureMipBias"
+ OpMemberName %type_View 82 "View_MaterialTextureDerivativeMultiply"
+ OpMemberName %type_View 83 "View_Random"
+ OpMemberName %type_View 84 "View_FrameNumber"
+ OpMemberName %type_View 85 "View_StateFrameIndexMod8"
+ OpMemberName %type_View 86 "View_StateFrameIndex"
+ OpMemberName %type_View 87 "View_CameraCut"
+ OpMemberName %type_View 88 "View_UnlitViewmodeMask"
+ OpMemberName %type_View 89 "PrePadding_View_2164"
+ OpMemberName %type_View 90 "PrePadding_View_2168"
+ OpMemberName %type_View 91 "PrePadding_View_2172"
+ OpMemberName %type_View 92 "View_DirectionalLightColor"
+ OpMemberName %type_View 93 "View_DirectionalLightDirection"
+ OpMemberName %type_View 94 "PrePadding_View_2204"
+ OpMemberName %type_View 95 "View_TranslucencyLightingVolumeMin"
+ OpMemberName %type_View 96 "View_TranslucencyLightingVolumeInvSize"
+ OpMemberName %type_View 97 "View_TemporalAAParams"
+ OpMemberName %type_View 98 "View_CircleDOFParams"
+ OpMemberName %type_View 99 "View_DepthOfFieldSensorWidth"
+ OpMemberName %type_View 100 "View_DepthOfFieldFocalDistance"
+ OpMemberName %type_View 101 "View_DepthOfFieldScale"
+ OpMemberName %type_View 102 "View_DepthOfFieldFocalLength"
+ OpMemberName %type_View 103 "View_DepthOfFieldFocalRegion"
+ OpMemberName %type_View 104 "View_DepthOfFieldNearTransitionRegion"
+ OpMemberName %type_View 105 "View_DepthOfFieldFarTransitionRegion"
+ OpMemberName %type_View 106 "View_MotionBlurNormalizedToPixel"
+ OpMemberName %type_View 107 "View_bSubsurfacePostprocessEnabled"
+ OpMemberName %type_View 108 "View_GeneralPurposeTweak"
+ OpMemberName %type_View 109 "View_DemosaicVposOffset"
+ OpMemberName %type_View 110 "PrePadding_View_2348"
+ OpMemberName %type_View 111 "View_IndirectLightingColorScale"
+ OpMemberName %type_View 112 "View_HDR32bppEncodingMode"
+ OpMemberName %type_View 113 "View_AtmosphericFogSunDirection"
+ OpMemberName %type_View 114 "View_AtmosphericFogSunPower"
+ OpMemberName %type_View 115 "View_AtmosphericFogPower"
+ OpMemberName %type_View 116 "View_AtmosphericFogDensityScale"
+ OpMemberName %type_View 117 "View_AtmosphericFogDensityOffset"
+ OpMemberName %type_View 118 "View_AtmosphericFogGroundOffset"
+ OpMemberName %type_View 119 "View_AtmosphericFogDistanceScale"
+ OpMemberName %type_View 120 "View_AtmosphericFogAltitudeScale"
+ OpMemberName %type_View 121 "View_AtmosphericFogHeightScaleRayleigh"
+ OpMemberName %type_View 122 "View_AtmosphericFogStartDistance"
+ OpMemberName %type_View 123 "View_AtmosphericFogDistanceOffset"
+ OpMemberName %type_View 124 "View_AtmosphericFogSunDiscScale"
+ OpMemberName %type_View 125 "View_AtmosphericFogRenderMask"
+ OpMemberName %type_View 126 "View_AtmosphericFogInscatterAltitudeSampleNum"
+ OpMemberName %type_View 127 "View_AtmosphericFogSunColor"
+ OpMemberName %type_View 128 "View_NormalCurvatureToRoughnessScaleBias"
+ OpMemberName %type_View 129 "View_RenderingReflectionCaptureMask"
+ OpMemberName %type_View 130 "View_AmbientCubemapTint"
+ OpMemberName %type_View 131 "View_AmbientCubemapIntensity"
+ OpMemberName %type_View 132 "View_SkyLightParameters"
+ OpMemberName %type_View 133 "PrePadding_View_2488"
+ OpMemberName %type_View 134 "PrePadding_View_2492"
+ OpMemberName %type_View 135 "View_SkyLightColor"
+ OpMemberName %type_View 136 "View_SkyIrradianceEnvironmentMap"
+ OpMemberName %type_View 137 "View_MobilePreviewMode"
+ OpMemberName %type_View 138 "View_HMDEyePaddingOffset"
+ OpMemberName %type_View 139 "View_ReflectionCubemapMaxMip"
+ OpMemberName %type_View 140 "View_ShowDecalsMask"
+ OpMemberName %type_View 141 "View_DistanceFieldAOSpecularOcclusionMode"
+ OpMemberName %type_View 142 "View_IndirectCapsuleSelfShadowingIntensity"
+ OpMemberName %type_View 143 "PrePadding_View_2648"
+ OpMemberName %type_View 144 "PrePadding_View_2652"
+ OpMemberName %type_View 145 "View_ReflectionEnvironmentRoughnessMixingScaleBiasAndLargestWeight"
+ OpMemberName %type_View 146 "View_StereoPassIndex"
+ OpMemberName %type_View 147 "View_GlobalVolumeCenterAndExtent"
+ OpMemberName %type_View 148 "View_GlobalVolumeWorldToUVAddAndMul"
+ OpMemberName %type_View 149 "View_GlobalVolumeDimension"
+ OpMemberName %type_View 150 "View_GlobalVolumeTexelSize"
+ OpMemberName %type_View 151 "View_MaxGlobalDistance"
+ OpMemberName %type_View 152 "View_bCheckerboardSubsurfaceProfileRendering"
+ OpMemberName %type_View 153 "View_VolumetricFogInvGridSize"
+ OpMemberName %type_View 154 "PrePadding_View_2828"
+ OpMemberName %type_View 155 "View_VolumetricFogGridZParams"
+ OpMemberName %type_View 156 "PrePadding_View_2844"
+ OpMemberName %type_View 157 "View_VolumetricFogSVPosToVolumeUV"
+ OpMemberName %type_View 158 "View_VolumetricFogMaxDistance"
+ OpMemberName %type_View 159 "PrePadding_View_2860"
+ OpMemberName %type_View 160 "View_VolumetricLightmapWorldToUVScale"
+ OpMemberName %type_View 161 "PrePadding_View_2876"
+ OpMemberName %type_View 162 "View_VolumetricLightmapWorldToUVAdd"
+ OpMemberName %type_View 163 "PrePadding_View_2892"
+ OpMemberName %type_View 164 "View_VolumetricLightmapIndirectionTextureSize"
+ OpMemberName %type_View 165 "View_VolumetricLightmapBrickSize"
+ OpMemberName %type_View 166 "View_VolumetricLightmapBrickTexelSize"
+ OpMemberName %type_View 167 "View_StereoIPD"
+ OpMemberName %type_View 168 "View_IndirectLightingCacheShowFlag"
+ OpMemberName %type_View 169 "View_EyeToPixelSpreadAngle"
+ OpName %View "View"
+ OpName %type_MobileDirectionalLight "type.MobileDirectionalLight"
+ OpMemberName %type_MobileDirectionalLight 0 "MobileDirectionalLight_DirectionalLightColor"
+ OpMemberName %type_MobileDirectionalLight 1 "MobileDirectionalLight_DirectionalLightDirectionAndShadowTransition"
+ OpMemberName %type_MobileDirectionalLight 2 "MobileDirectionalLight_DirectionalLightShadowSize"
+ OpMemberName %type_MobileDirectionalLight 3 "MobileDirectionalLight_DirectionalLightDistanceFadeMAD"
+ OpMemberName %type_MobileDirectionalLight 4 "MobileDirectionalLight_DirectionalLightShadowDistances"
+ OpMemberName %type_MobileDirectionalLight 5 "MobileDirectionalLight_DirectionalLightScreenToShadow"
+ OpName %MobileDirectionalLight "MobileDirectionalLight"
+ OpName %type_2d_image "type.2d.image"
+ OpName %MobileDirectionalLight_DirectionalLightShadowTexture "MobileDirectionalLight_DirectionalLightShadowTexture"
+ OpName %type_sampler "type.sampler"
+ OpName %MobileDirectionalLight_DirectionalLightShadowSampler "MobileDirectionalLight_DirectionalLightShadowSampler"
+ OpName %Material_Texture2D_0 "Material_Texture2D_0"
+ OpName %Material_Texture2D_0Sampler "Material_Texture2D_0Sampler"
+ OpName %Material_Texture2D_1 "Material_Texture2D_1"
+ OpName %Material_Texture2D_1Sampler "Material_Texture2D_1Sampler"
+ OpName %type__Globals "type.$Globals"
+ OpMemberName %type__Globals 0 "NumDynamicPointLights"
+ OpMemberName %type__Globals 1 "LightPositionAndInvRadius"
+ OpMemberName %type__Globals 2 "LightColorAndFalloffExponent"
+ OpMemberName %type__Globals 3 "MobileReflectionParams"
+ OpName %_Globals "$Globals"
+ OpName %type_cube_image "type.cube.image"
+ OpName %ReflectionCubemap "ReflectionCubemap"
+ OpName %ReflectionCubemapSampler "ReflectionCubemapSampler"
+ OpName %in_var_TEXCOORD0 "in.var.TEXCOORD0"
+ OpName %in_var_TEXCOORD7 "in.var.TEXCOORD7"
+ OpName %in_var_TEXCOORD8 "in.var.TEXCOORD8"
+ OpName %out_var_SV_Target0 "out.var.SV_Target0"
+ OpName %Main "Main"
+ OpName %type_sampled_image "type.sampled.image"
+ OpName %type_sampled_image_0 "type.sampled.image"
+ OpDecorateString %in_var_TEXCOORD0 UserSemantic "TEXCOORD0"
+ OpDecorateString %in_var_TEXCOORD7 UserSemantic "TEXCOORD7"
+ OpDecorateString %in_var_TEXCOORD8 UserSemantic "TEXCOORD8"
+ OpDecorate %gl_FragCoord BuiltIn FragCoord
+ OpDecorateString %gl_FragCoord UserSemantic "SV_Position"
+ OpDecorate %gl_FrontFacing BuiltIn FrontFacing
+ OpDecorateString %gl_FrontFacing UserSemantic "SV_IsFrontFace"
+ OpDecorate %gl_FrontFacing Flat
+ OpDecorateString %out_var_SV_Target0 UserSemantic "SV_Target0"
+ OpDecorate %in_var_TEXCOORD0 Location 0
+ OpDecorate %in_var_TEXCOORD7 Location 1
+ OpDecorate %in_var_TEXCOORD8 Location 2
+ OpDecorate %out_var_SV_Target0 Location 0
+ OpDecorate %View DescriptorSet 0
+ OpDecorate %View Binding 0
+ OpDecorate %MobileDirectionalLight DescriptorSet 0
+ OpDecorate %MobileDirectionalLight Binding 1
+ OpDecorate %MobileDirectionalLight_DirectionalLightShadowTexture DescriptorSet 0
+ OpDecorate %MobileDirectionalLight_DirectionalLightShadowTexture Binding 0
+ OpDecorate %MobileDirectionalLight_DirectionalLightShadowSampler DescriptorSet 0
+ OpDecorate %MobileDirectionalLight_DirectionalLightShadowSampler Binding 0
+ OpDecorate %Material_Texture2D_0 DescriptorSet 0
+ OpDecorate %Material_Texture2D_0 Binding 1
+ OpDecorate %Material_Texture2D_0Sampler DescriptorSet 0
+ OpDecorate %Material_Texture2D_0Sampler Binding 1
+ OpDecorate %Material_Texture2D_1 DescriptorSet 0
+ OpDecorate %Material_Texture2D_1 Binding 2
+ OpDecorate %Material_Texture2D_1Sampler DescriptorSet 0
+ OpDecorate %Material_Texture2D_1Sampler Binding 2
+ OpDecorate %_Globals DescriptorSet 0
+ OpDecorate %_Globals Binding 2
+ OpDecorate %ReflectionCubemap DescriptorSet 0
+ OpDecorate %ReflectionCubemap Binding 3
+ OpDecorate %ReflectionCubemapSampler DescriptorSet 0
+ OpDecorate %ReflectionCubemapSampler Binding 3
+ OpDecorate %_arr_v4float_uint_2 ArrayStride 16
+ OpDecorate %_arr_v4float_uint_7 ArrayStride 16
+ OpDecorate %_arr_v4float_uint_4 ArrayStride 16
+ OpMemberDecorate %type_View 0 Offset 0
+ OpMemberDecorate %type_View 0 MatrixStride 16
+ OpMemberDecorate %type_View 0 ColMajor
+ OpMemberDecorate %type_View 1 Offset 64
+ OpMemberDecorate %type_View 1 MatrixStride 16
+ OpMemberDecorate %type_View 1 ColMajor
+ OpMemberDecorate %type_View 2 Offset 128
+ OpMemberDecorate %type_View 2 MatrixStride 16
+ OpMemberDecorate %type_View 2 ColMajor
+ OpMemberDecorate %type_View 3 Offset 192
+ OpMemberDecorate %type_View 3 MatrixStride 16
+ OpMemberDecorate %type_View 3 ColMajor
+ OpMemberDecorate %type_View 4 Offset 256
+ OpMemberDecorate %type_View 4 MatrixStride 16
+ OpMemberDecorate %type_View 4 ColMajor
+ OpMemberDecorate %type_View 5 Offset 320
+ OpMemberDecorate %type_View 5 MatrixStride 16
+ OpMemberDecorate %type_View 5 ColMajor
+ OpMemberDecorate %type_View 6 Offset 384
+ OpMemberDecorate %type_View 6 MatrixStride 16
+ OpMemberDecorate %type_View 6 ColMajor
+ OpMemberDecorate %type_View 7 Offset 448
+ OpMemberDecorate %type_View 7 MatrixStride 16
+ OpMemberDecorate %type_View 7 ColMajor
+ OpMemberDecorate %type_View 8 Offset 512
+ OpMemberDecorate %type_View 8 MatrixStride 16
+ OpMemberDecorate %type_View 8 ColMajor
+ OpMemberDecorate %type_View 9 Offset 576
+ OpMemberDecorate %type_View 9 MatrixStride 16
+ OpMemberDecorate %type_View 9 ColMajor
+ OpMemberDecorate %type_View 10 Offset 640
+ OpMemberDecorate %type_View 10 MatrixStride 16
+ OpMemberDecorate %type_View 10 ColMajor
+ OpMemberDecorate %type_View 11 Offset 704
+ OpMemberDecorate %type_View 11 MatrixStride 16
+ OpMemberDecorate %type_View 11 ColMajor
+ OpMemberDecorate %type_View 12 Offset 768
+ OpMemberDecorate %type_View 12 MatrixStride 16
+ OpMemberDecorate %type_View 12 ColMajor
+ OpMemberDecorate %type_View 13 Offset 832
+ OpMemberDecorate %type_View 14 Offset 844
+ OpMemberDecorate %type_View 15 Offset 848
+ OpMemberDecorate %type_View 16 Offset 860
+ OpMemberDecorate %type_View 17 Offset 864
+ OpMemberDecorate %type_View 18 Offset 876
+ OpMemberDecorate %type_View 19 Offset 880
+ OpMemberDecorate %type_View 20 Offset 892
+ OpMemberDecorate %type_View 21 Offset 896
+ OpMemberDecorate %type_View 22 Offset 908
+ OpMemberDecorate %type_View 23 Offset 912
+ OpMemberDecorate %type_View 24 Offset 928
+ OpMemberDecorate %type_View 25 Offset 944
+ OpMemberDecorate %type_View 26 Offset 956
+ OpMemberDecorate %type_View 27 Offset 960
+ OpMemberDecorate %type_View 28 Offset 972
+ OpMemberDecorate %type_View 29 Offset 976
+ OpMemberDecorate %type_View 30 Offset 988
+ OpMemberDecorate %type_View 31 Offset 992
+ OpMemberDecorate %type_View 32 Offset 1004
+ OpMemberDecorate %type_View 33 Offset 1008
+ OpMemberDecorate %type_View 33 MatrixStride 16
+ OpMemberDecorate %type_View 33 ColMajor
+ OpMemberDecorate %type_View 34 Offset 1072
+ OpMemberDecorate %type_View 34 MatrixStride 16
+ OpMemberDecorate %type_View 34 ColMajor
+ OpMemberDecorate %type_View 35 Offset 1136
+ OpMemberDecorate %type_View 35 MatrixStride 16
+ OpMemberDecorate %type_View 35 ColMajor
+ OpMemberDecorate %type_View 36 Offset 1200
+ OpMemberDecorate %type_View 36 MatrixStride 16
+ OpMemberDecorate %type_View 36 ColMajor
+ OpMemberDecorate %type_View 37 Offset 1264
+ OpMemberDecorate %type_View 37 MatrixStride 16
+ OpMemberDecorate %type_View 37 ColMajor
+ OpMemberDecorate %type_View 38 Offset 1328
+ OpMemberDecorate %type_View 38 MatrixStride 16
+ OpMemberDecorate %type_View 38 ColMajor
+ OpMemberDecorate %type_View 39 Offset 1392
+ OpMemberDecorate %type_View 39 MatrixStride 16
+ OpMemberDecorate %type_View 39 ColMajor
+ OpMemberDecorate %type_View 40 Offset 1456
+ OpMemberDecorate %type_View 40 MatrixStride 16
+ OpMemberDecorate %type_View 40 ColMajor
+ OpMemberDecorate %type_View 41 Offset 1520
+ OpMemberDecorate %type_View 41 MatrixStride 16
+ OpMemberDecorate %type_View 41 ColMajor
+ OpMemberDecorate %type_View 42 Offset 1584
+ OpMemberDecorate %type_View 42 MatrixStride 16
+ OpMemberDecorate %type_View 42 ColMajor
+ OpMemberDecorate %type_View 43 Offset 1648
+ OpMemberDecorate %type_View 44 Offset 1660
+ OpMemberDecorate %type_View 45 Offset 1664
+ OpMemberDecorate %type_View 46 Offset 1676
+ OpMemberDecorate %type_View 47 Offset 1680
+ OpMemberDecorate %type_View 48 Offset 1692
+ OpMemberDecorate %type_View 49 Offset 1696
+ OpMemberDecorate %type_View 49 MatrixStride 16
+ OpMemberDecorate %type_View 49 ColMajor
+ OpMemberDecorate %type_View 50 Offset 1760
+ OpMemberDecorate %type_View 50 MatrixStride 16
+ OpMemberDecorate %type_View 50 ColMajor
+ OpMemberDecorate %type_View 51 Offset 1824
+ OpMemberDecorate %type_View 51 MatrixStride 16
+ OpMemberDecorate %type_View 51 ColMajor
+ OpMemberDecorate %type_View 52 Offset 1888
+ OpMemberDecorate %type_View 53 Offset 1904
+ OpMemberDecorate %type_View 54 Offset 1920
+ OpMemberDecorate %type_View 55 Offset 1928
+ OpMemberDecorate %type_View 56 Offset 1936
+ OpMemberDecorate %type_View 57 Offset 1952
+ OpMemberDecorate %type_View 58 Offset 1968
+ OpMemberDecorate %type_View 59 Offset 1984
+ OpMemberDecorate %type_View 60 Offset 2000
+ OpMemberDecorate %type_View 61 Offset 2004
+ OpMemberDecorate %type_View 62 Offset 2008
+ OpMemberDecorate %type_View 63 Offset 2012
+ OpMemberDecorate %type_View 64 Offset 2016
+ OpMemberDecorate %type_View 65 Offset 2032
+ OpMemberDecorate %type_View 66 Offset 2048
+ OpMemberDecorate %type_View 67 Offset 2064
+ OpMemberDecorate %type_View 68 Offset 2072
+ OpMemberDecorate %type_View 69 Offset 2076
+ OpMemberDecorate %type_View 70 Offset 2080
+ OpMemberDecorate %type_View 71 Offset 2084
+ OpMemberDecorate %type_View 72 Offset 2088
+ OpMemberDecorate %type_View 73 Offset 2092
+ OpMemberDecorate %type_View 74 Offset 2096
+ OpMemberDecorate %type_View 75 Offset 2108
+ OpMemberDecorate %type_View 76 Offset 2112
+ OpMemberDecorate %type_View 77 Offset 2116
+ OpMemberDecorate %type_View 78 Offset 2120
+ OpMemberDecorate %type_View 79 Offset 2124
+ OpMemberDecorate %type_View 80 Offset 2128
+ OpMemberDecorate %type_View 81 Offset 2132
+ OpMemberDecorate %type_View 82 Offset 2136
+ OpMemberDecorate %type_View 83 Offset 2140
+ OpMemberDecorate %type_View 84 Offset 2144
+ OpMemberDecorate %type_View 85 Offset 2148
+ OpMemberDecorate %type_View 86 Offset 2152
+ OpMemberDecorate %type_View 87 Offset 2156
+ OpMemberDecorate %type_View 88 Offset 2160
+ OpMemberDecorate %type_View 89 Offset 2164
+ OpMemberDecorate %type_View 90 Offset 2168
+ OpMemberDecorate %type_View 91 Offset 2172
+ OpMemberDecorate %type_View 92 Offset 2176
+ OpMemberDecorate %type_View 93 Offset 2192
+ OpMemberDecorate %type_View 94 Offset 2204
+ OpMemberDecorate %type_View 95 Offset 2208
+ OpMemberDecorate %type_View 96 Offset 2240
+ OpMemberDecorate %type_View 97 Offset 2272
+ OpMemberDecorate %type_View 98 Offset 2288
+ OpMemberDecorate %type_View 99 Offset 2304
+ OpMemberDecorate %type_View 100 Offset 2308
+ OpMemberDecorate %type_View 101 Offset 2312
+ OpMemberDecorate %type_View 102 Offset 2316
+ OpMemberDecorate %type_View 103 Offset 2320
+ OpMemberDecorate %type_View 104 Offset 2324
+ OpMemberDecorate %type_View 105 Offset 2328
+ OpMemberDecorate %type_View 106 Offset 2332
+ OpMemberDecorate %type_View 107 Offset 2336
+ OpMemberDecorate %type_View 108 Offset 2340
+ OpMemberDecorate %type_View 109 Offset 2344
+ OpMemberDecorate %type_View 110 Offset 2348
+ OpMemberDecorate %type_View 111 Offset 2352
+ OpMemberDecorate %type_View 112 Offset 2364
+ OpMemberDecorate %type_View 113 Offset 2368
+ OpMemberDecorate %type_View 114 Offset 2380
+ OpMemberDecorate %type_View 115 Offset 2384
+ OpMemberDecorate %type_View 116 Offset 2388
+ OpMemberDecorate %type_View 117 Offset 2392
+ OpMemberDecorate %type_View 118 Offset 2396
+ OpMemberDecorate %type_View 119 Offset 2400
+ OpMemberDecorate %type_View 120 Offset 2404
+ OpMemberDecorate %type_View 121 Offset 2408
+ OpMemberDecorate %type_View 122 Offset 2412
+ OpMemberDecorate %type_View 123 Offset 2416
+ OpMemberDecorate %type_View 124 Offset 2420
+ OpMemberDecorate %type_View 125 Offset 2424
+ OpMemberDecorate %type_View 126 Offset 2428
+ OpMemberDecorate %type_View 127 Offset 2432
+ OpMemberDecorate %type_View 128 Offset 2448
+ OpMemberDecorate %type_View 129 Offset 2460
+ OpMemberDecorate %type_View 130 Offset 2464
+ OpMemberDecorate %type_View 131 Offset 2480
+ OpMemberDecorate %type_View 132 Offset 2484
+ OpMemberDecorate %type_View 133 Offset 2488
+ OpMemberDecorate %type_View 134 Offset 2492
+ OpMemberDecorate %type_View 135 Offset 2496
+ OpMemberDecorate %type_View 136 Offset 2512
+ OpMemberDecorate %type_View 137 Offset 2624
+ OpMemberDecorate %type_View 138 Offset 2628
+ OpMemberDecorate %type_View 139 Offset 2632
+ OpMemberDecorate %type_View 140 Offset 2636
+ OpMemberDecorate %type_View 141 Offset 2640
+ OpMemberDecorate %type_View 142 Offset 2644
+ OpMemberDecorate %type_View 143 Offset 2648
+ OpMemberDecorate %type_View 144 Offset 2652
+ OpMemberDecorate %type_View 145 Offset 2656
+ OpMemberDecorate %type_View 146 Offset 2668
+ OpMemberDecorate %type_View 147 Offset 2672
+ OpMemberDecorate %type_View 148 Offset 2736
+ OpMemberDecorate %type_View 149 Offset 2800
+ OpMemberDecorate %type_View 150 Offset 2804
+ OpMemberDecorate %type_View 151 Offset 2808
+ OpMemberDecorate %type_View 152 Offset 2812
+ OpMemberDecorate %type_View 153 Offset 2816
+ OpMemberDecorate %type_View 154 Offset 2828
+ OpMemberDecorate %type_View 155 Offset 2832
+ OpMemberDecorate %type_View 156 Offset 2844
+ OpMemberDecorate %type_View 157 Offset 2848
+ OpMemberDecorate %type_View 158 Offset 2856
+ OpMemberDecorate %type_View 159 Offset 2860
+ OpMemberDecorate %type_View 160 Offset 2864
+ OpMemberDecorate %type_View 161 Offset 2876
+ OpMemberDecorate %type_View 162 Offset 2880
+ OpMemberDecorate %type_View 163 Offset 2892
+ OpMemberDecorate %type_View 164 Offset 2896
+ OpMemberDecorate %type_View 165 Offset 2908
+ OpMemberDecorate %type_View 166 Offset 2912
+ OpMemberDecorate %type_View 167 Offset 2924
+ OpMemberDecorate %type_View 168 Offset 2928
+ OpMemberDecorate %type_View 169 Offset 2932
+ OpDecorate %type_View Block
+ OpDecorate %_arr_mat4v4float_uint_4 ArrayStride 64
+ OpMemberDecorate %type_MobileDirectionalLight 0 Offset 0
+ OpMemberDecorate %type_MobileDirectionalLight 1 Offset 16
+ OpMemberDecorate %type_MobileDirectionalLight 2 Offset 32
+ OpMemberDecorate %type_MobileDirectionalLight 3 Offset 48
+ OpMemberDecorate %type_MobileDirectionalLight 4 Offset 64
+ OpMemberDecorate %type_MobileDirectionalLight 5 Offset 80
+ OpMemberDecorate %type_MobileDirectionalLight 5 MatrixStride 16
+ OpMemberDecorate %type_MobileDirectionalLight 5 ColMajor
+ OpDecorate %type_MobileDirectionalLight Block
+ OpMemberDecorate %type__Globals 0 Offset 0
+ OpMemberDecorate %type__Globals 1 Offset 16
+ OpMemberDecorate %type__Globals 2 Offset 80
+ OpMemberDecorate %type__Globals 3 Offset 144
+ OpDecorate %type__Globals Block
+ %float = OpTypeFloat 32
+ %v4float = OpTypeVector %float 4
+%mat4v4float = OpTypeMatrix %v4float 4
+ %v3float = OpTypeVector %float 3
+ %v2float = OpTypeVector %float 2
+ %int = OpTypeInt 32 1
+ %uint = OpTypeInt 32 0
+ %uint_2 = OpConstant %uint 2
+ %uint_7 = OpConstant %uint 7
+ %uint_4 = OpConstant %uint 4
+ %int_1 = OpConstant %int 1
+ %int_2 = OpConstant %int 2
+ %int_4 = OpConstant %int 4
+ %float_0 = OpConstant %float 0
+ %int_3 = OpConstant %int 3
+ %47 = OpConstantComposite %v3float %float_0 %float_0 %float_0
+ %float_1 = OpConstant %float 1
+ %int_0 = OpConstant %int 0
+ %bool = OpTypeBool
+ %int_5 = OpConstant %int 5
+ %52 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0
+%float_0_999989986 = OpConstant %float 0.999989986
+%float_65000 = OpConstant %float 65000
+ %55 = OpConstantComposite %v3float %float_65000 %float_65000 %float_65000
+%float_0_318309873 = OpConstant %float 0.318309873
+ %57 = OpConstantComposite %v3float %float_0_318309873 %float_0_318309873 %float_0_318309873
+%float_65500 = OpConstant %float 65500
+ %float_0_5 = OpConstant %float 0.5
+ %60 = OpConstantComposite %v2float %float_0_5 %float_0_5
+ %float_2 = OpConstant %float 2
+ %float_n2 = OpConstant %float -2
+ %63 = OpConstantComposite %v2float %float_2 %float_n2
+ %64 = OpConstantComposite %v3float %float_1 %float_1 %float_1
+%float_0_119999997 = OpConstant %float 0.119999997
+ %float_n1 = OpConstant %float -1
+%float_n0_0274999999 = OpConstant %float -0.0274999999
+ %68 = OpConstantComposite %v2float %float_n1 %float_n0_0274999999
+%float_0_0425000004 = OpConstant %float 0.0425000004
+ %70 = OpConstantComposite %v2float %float_1 %float_0_0425000004
+%float_n9_27999973 = OpConstant %float -9.27999973
+ %72 = OpConstantComposite %v2float %float_1 %float_1
+ %float_0_25 = OpConstant %float 0.25
+ %float_16 = OpConstant %float 16
+ %int_31 = OpConstant %int 31
+ %int_56 = OpConstant %int 56
+ %int_57 = OpConstant %int 57
+ %int_64 = OpConstant %int 64
+ %int_65 = OpConstant %int 65
+ %int_66 = OpConstant %int 66
+ %int_67 = OpConstant %int 67
+ %int_88 = OpConstant %int 88
+ %int_135 = OpConstant %int 135
+ %int_139 = OpConstant %int 139
+%mat3v3float = OpTypeMatrix %v3float 3
+ %86 = OpConstantComposite %v2float %float_2 %float_2
+%float_0_300000012 = OpConstant %float 0.300000012
+ %88 = OpConstantComposite %v3float %float_0_300000012 %float_0_300000012 %float_1
+ %float_20 = OpConstant %float 20
+ %90 = OpConstantComposite %v2float %float_20 %float_20
+%float_0_400000006 = OpConstant %float 0.400000006
+ %float_24 = OpConstant %float 24
+%float_0_294999987 = OpConstant %float 0.294999987
+%float_0_660000026 = OpConstant %float 0.660000026
+%float_0_699999988 = OpConstant %float 0.699999988
+%float_65504 = OpConstant %float 65504
+%float_1_20000005 = OpConstant %float 1.20000005
+ %98 = OpConstantComposite %v3float %float_2 %float_2 %float_2
+%_arr_v4float_uint_2 = OpTypeArray %v4float %uint_2
+%_arr_v4float_uint_7 = OpTypeArray %v4float %uint_7
+%_arr_v4float_uint_4 = OpTypeArray %v4float %uint_4
+ %type_View = OpTypeStruct %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %v3float %float %v3float %float %v3float %float %v3float %float %v3float %float %v4float %v4float %v3float %float %v3float %float %v3float %float %v3float %float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %mat4v4float %v3float %float %v3float %float %v3float %float %mat4v4float %mat4v4float %mat4v4float %v4float %v4float %v2float %v2float %v4float %v4float %v4float %v4float %int %float %float %float %v4float %v4float %v4float %v2float %float %float %float %float %float %float %v3float %float %float %float %float %float %float %float %float %uint %uint %uint %uint %float %float %float %float %float %v4float %v3float %float %_arr_v4float_uint_2 %_arr_v4float_uint_2 %v4float %v4float %float %float %float %float %float %float %float %float %float %float %float %float %v3float %float %v3float %float %float %float %float %float %float %float %float %float %float %float %uint %uint %v4float %v3float %float %v4float %float %float %float %float %v4float %_arr_v4float_uint_7 %float %float %float %float %uint %float %float %float %v3float %int %_arr_v4float_uint_4 %_arr_v4float_uint_4 %float %float %float %float %v3float %float %v3float %float %v2float %float %float %v3float %float %v3float %float %v3float %float %v3float %float %float %float
+%_ptr_Uniform_type_View = OpTypePointer Uniform %type_View
+%_arr_mat4v4float_uint_4 = OpTypeArray %mat4v4float %uint_4
+%type_MobileDirectionalLight = OpTypeStruct %v4float %v4float %v4float %v4float %v4float %_arr_mat4v4float_uint_4
+%_ptr_Uniform_type_MobileDirectionalLight = OpTypePointer Uniform %type_MobileDirectionalLight
+%type_2d_image = OpTypeImage %float 2D 2 0 0 1 Unknown
+%_ptr_UniformConstant_type_2d_image = OpTypePointer UniformConstant %type_2d_image
+%type_sampler = OpTypeSampler
+%_ptr_UniformConstant_type_sampler = OpTypePointer UniformConstant %type_sampler
+%type__Globals = OpTypeStruct %int %_arr_v4float_uint_4 %_arr_v4float_uint_4 %v4float
+%_ptr_Uniform_type__Globals = OpTypePointer Uniform %type__Globals
+%type_cube_image = OpTypeImage %float Cube 2 0 0 1 Unknown
+%_ptr_UniformConstant_type_cube_image = OpTypePointer UniformConstant %type_cube_image
+%_ptr_Input_v2float = OpTypePointer Input %v2float
+%_ptr_Input_v4float = OpTypePointer Input %v4float
+%_ptr_Input_bool = OpTypePointer Input %bool
+%_ptr_Output_v4float = OpTypePointer Output %v4float
+ %void = OpTypeVoid
+ %110 = OpTypeFunction %void
+%_ptr_Uniform_v4float = OpTypePointer Uniform %v4float
+%_ptr_Uniform_float = OpTypePointer Uniform %float
+%_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float
+%_ptr_Uniform_int = OpTypePointer Uniform %int
+%type_sampled_image = OpTypeSampledImage %type_cube_image
+%_ptr_Uniform_v3float = OpTypePointer Uniform %v3float
+%_ptr_Uniform_v2float = OpTypePointer Uniform %v2float
+%type_sampled_image_0 = OpTypeSampledImage %type_2d_image
+ %View = OpVariable %_ptr_Uniform_type_View Uniform
+%MobileDirectionalLight = OpVariable %_ptr_Uniform_type_MobileDirectionalLight Uniform
+%MobileDirectionalLight_DirectionalLightShadowTexture = OpVariable %_ptr_UniformConstant_type_2d_image UniformConstant
+%MobileDirectionalLight_DirectionalLightShadowSampler = OpVariable %_ptr_UniformConstant_type_sampler UniformConstant
+%Material_Texture2D_0 = OpVariable %_ptr_UniformConstant_type_2d_image UniformConstant
+%Material_Texture2D_0Sampler = OpVariable %_ptr_UniformConstant_type_sampler UniformConstant
+%Material_Texture2D_1 = OpVariable %_ptr_UniformConstant_type_2d_image UniformConstant
+%Material_Texture2D_1Sampler = OpVariable %_ptr_UniformConstant_type_sampler UniformConstant
+ %_Globals = OpVariable %_ptr_Uniform_type__Globals Uniform
+%ReflectionCubemap = OpVariable %_ptr_UniformConstant_type_cube_image UniformConstant
+%ReflectionCubemapSampler = OpVariable %_ptr_UniformConstant_type_sampler UniformConstant
+%in_var_TEXCOORD0 = OpVariable %_ptr_Input_v2float Input
+%in_var_TEXCOORD7 = OpVariable %_ptr_Input_v4float Input
+%in_var_TEXCOORD8 = OpVariable %_ptr_Input_v4float Input
+%gl_FragCoord = OpVariable %_ptr_Input_v4float Input
+%gl_FrontFacing = OpVariable %_ptr_Input_bool Input
+%out_var_SV_Target0 = OpVariable %_ptr_Output_v4float Output
+ %117 = OpConstantComposite %v3float %float_1 %float_0 %float_0
+ %118 = OpConstantComposite %v3float %float_0 %float_1 %float_0
+ %119 = OpConstantComposite %v3float %float_0 %float_0 %float_1
+ %120 = OpConstantComposite %mat3v3float %117 %118 %119
+ %float_10 = OpConstant %float 10
+ %122 = OpConstantComposite %v2float %float_10 %float_10
+ %float_5 = OpConstant %float 5
+ %124 = OpConstantComposite %v2float %float_5 %float_5
+%float_0_00066666666 = OpConstant %float 0.00066666666
+ %float_n0_5 = OpConstant %float -0.5
+ %127 = OpConstantComposite %v2float %float_n0_5 %float_n0_5
+ %128 = OpConstantComposite %v2float %float_0_5 %float_n0_5
+ %float_1_5 = OpConstant %float 1.5
+ %130 = OpConstantComposite %v2float %float_1_5 %float_n0_5
+ %131 = OpConstantComposite %v2float %float_n0_5 %float_0_5
+ %132 = OpConstantComposite %v2float %float_1_5 %float_0_5
+ %133 = OpConstantComposite %v2float %float_n0_5 %float_1_5
+ %134 = OpConstantComposite %v2float %float_0_5 %float_1_5
+ %135 = OpConstantComposite %v2float %float_1_5 %float_1_5
+ %136 = OpUndef %v3float
+ %137 = OpUndef %v4float
+ %138 = OpUndef %float
+ %139 = OpUndef %v3float
+ %Main = OpFunction %void None %110
+ %140 = OpLabel
+ %141 = OpLoad %v2float %in_var_TEXCOORD0
+ %142 = OpLoad %v4float %in_var_TEXCOORD7
+ %143 = OpLoad %v4float %in_var_TEXCOORD8
+ %144 = OpLoad %v4float %gl_FragCoord
+ %145 = OpAccessChain %_ptr_Uniform_v3float %View %int_31
+ %146 = OpLoad %v3float %145
+ %147 = OpAccessChain %_ptr_Uniform_v4float %View %int_56
+ %148 = OpLoad %v4float %147
+ %149 = OpAccessChain %_ptr_Uniform_v4float %View %int_57
+ %150 = OpLoad %v4float %149
+ %151 = OpAccessChain %_ptr_Uniform_v4float %View %int_64
+ %152 = OpLoad %v4float %151
+ %153 = OpAccessChain %_ptr_Uniform_v4float %View %int_65
+ %154 = OpLoad %v4float %153
+ %155 = OpAccessChain %_ptr_Uniform_v4float %View %int_66
+ %156 = OpLoad %v4float %155
+ %157 = OpAccessChain %_ptr_Uniform_v2float %View %int_67
+ %158 = OpLoad %v2float %157
+ %159 = OpAccessChain %_ptr_Uniform_float %View %int_88
+ %160 = OpLoad %float %159
+ %161 = OpAccessChain %_ptr_Uniform_v4float %View %int_135
+ %162 = OpLoad %v4float %161
+ %163 = OpAccessChain %_ptr_Uniform_float %View %int_139
+ %164 = OpLoad %float %163
+ %165 = OpVectorShuffle %v2float %144 %144 0 1
+ %166 = OpVectorShuffle %v2float %148 %148 0 1
+ %167 = OpFSub %v2float %165 %166
+ %168 = OpVectorShuffle %v2float %150 %150 2 3
+ %169 = OpFMul %v2float %167 %168
+ %170 = OpFSub %v2float %169 %60
+ %171 = OpFMul %v2float %170 %63
+ %172 = OpCompositeExtract %float %171 0
+ %173 = OpCompositeExtract %float %171 1
+ %174 = OpCompositeConstruct %v4float %172 %173 %138 %float_1
+ %175 = OpCompositeExtract %float %144 3
+ %176 = OpCompositeConstruct %v4float %175 %175 %175 %175
+ %177 = OpFMul %v4float %174 %176
+ %178 = OpVectorShuffle %v3float %143 %143 0 1 2
+ %179 = OpFSub %v3float %178 %146
+ %180 = OpFNegate %v3float %178
+ %181 = OpExtInst %v3float %1 Normalize %180
+ %182 = OpFMul %v2float %141 %60
+ %183 = OpFMul %v2float %141 %122
+ %184 = OpLoad %type_2d_image %Material_Texture2D_0
+ %185 = OpLoad %type_sampler %Material_Texture2D_0Sampler
+ %186 = OpSampledImage %type_sampled_image_0 %184 %185
+ %187 = OpImageSampleImplicitLod %v4float %186 %183 None
+ %188 = OpVectorShuffle %v2float %187 %187 0 1
+ %189 = OpFMul %v2float %188 %86
+ %190 = OpFSub %v2float %189 %72
+ %191 = OpDot %float %190 %190
+ %192 = OpFSub %float %float_1 %191
+ %193 = OpExtInst %float %1 FClamp %192 %float_0 %float_1
+ %194 = OpExtInst %float %1 Sqrt %193
+ %195 = OpCompositeExtract %float %190 0
+ %196 = OpCompositeExtract %float %190 1
+ %197 = OpCompositeConstruct %v4float %195 %196 %194 %float_1
+ %198 = OpVectorShuffle %v3float %197 %197 0 1 2
+ %199 = OpFMul %v3float %198 %88
+ %200 = OpVectorShuffle %v3float %156 %156 0 1 2
+ %201 = OpCompositeExtract %float %156 3
+ %202 = OpCompositeConstruct %v3float %201 %201 %201
+ %203 = OpFMul %v3float %199 %202
+ %204 = OpFAdd %v3float %203 %200
+ %205 = OpMatrixTimesVector %v3float %120 %204
+ %206 = OpExtInst %v3float %1 Normalize %205
+ %207 = OpFNegate %v3float %181
+ %208 = OpDot %float %206 %181
+ %209 = OpCompositeConstruct %v3float %208 %208 %208
+ %210 = OpFMul %v3float %206 %209
+ %211 = OpFMul %v3float %210 %98
+ %212 = OpFAdd %v3float %207 %211
+ %213 = OpFMul %v2float %141 %90
+ %214 = OpLoad %type_2d_image %Material_Texture2D_1
+ %215 = OpLoad %type_sampler %Material_Texture2D_1Sampler
+ %216 = OpSampledImage %type_sampled_image_0 %214 %215
+ %217 = OpImageSampleImplicitLod %v4float %216 %213 None
+ %218 = OpCompositeExtract %float %217 0
+ %219 = OpExtInst %float %1 FMix %float_0_400000006 %float_1 %218
+ %220 = OpFSub %float %float_1 %219
+ %221 = OpFMul %v2float %141 %124
+ %222 = OpSampledImage %type_sampled_image_0 %214 %215
+ %223 = OpImageSampleImplicitLod %v4float %222 %221 None
+ %224 = OpCompositeExtract %float %177 3
+ %225 = OpFSub %float %224 %float_24
+ %226 = OpFMul %float %225 %float_0_00066666666
+ %227 = OpExtInst %float %1 FMax %226 %float_0
+ %228 = OpExtInst %float %1 FMin %227 %float_1
+ %229 = OpCompositeExtract %float %223 1
+ %230 = OpExtInst %float %1 FMix %229 %float_1 %228
+ %231 = OpExtInst %float %1 FMix %219 %220 %230
+ %232 = OpSampledImage %type_sampled_image_0 %214 %215
+ %233 = OpImageSampleImplicitLod %v4float %232 %182 None
+ %234 = OpExtInst %float %1 FMix %229 %float_0 %228
+ %235 = OpCompositeExtract %float %233 1
+ %236 = OpFAdd %float %235 %234
+ %237 = OpExtInst %float %1 FMix %236 %float_0_5 %float_0_5
+ %238 = OpExtInst %float %1 FMix %float_0_294999987 %float_0_660000026 %237
+ %239 = OpFMul %float %238 %float_0_5
+ %240 = OpFMul %float %231 %239
+ %241 = OpExtInst %float %1 FMix %float_0 %float_0_5 %235
+ %242 = OpExtInst %float %1 FMix %float_0_699999988 %float_1 %229
+ %243 = OpExtInst %float %1 FMix %242 %float_1 %228
+ %244 = OpFAdd %float %241 %243
+ %245 = OpExtInst %float %1 FMax %244 %float_0
+ %246 = OpExtInst %float %1 FMin %245 %float_1
+ %247 = OpCompositeConstruct %v3float %240 %240 %240
+ %248 = OpExtInst %v3float %1 FClamp %247 %47 %64
+ %249 = OpCompositeExtract %float %158 1
+ %250 = OpFMul %float %246 %249
+ %251 = OpCompositeExtract %float %158 0
+ %252 = OpFAdd %float %250 %251
+ %253 = OpExtInst %float %1 FClamp %252 %float_0_119999997 %float_1
+ %254 = OpExtInst %float %1 FMax %208 %float_0
+ %255 = OpCompositeConstruct %v2float %253 %253
+ %256 = OpFMul %v2float %255 %68
+ %257 = OpFAdd %v2float %256 %70
+ %258 = OpCompositeExtract %float %257 0
+ %259 = OpFMul %float %258 %258
+ %260 = OpFMul %float %float_n9_27999973 %254
+ %261 = OpExtInst %float %1 Exp2 %260
+ %262 = OpExtInst %float %1 FMin %259 %261
+ %263 = OpFMul %float %262 %258
+ %264 = OpCompositeExtract %float %257 1
+ %265 = OpFAdd %float %263 %264
+ %266 = OpCompositeExtract %float %152 3
+ %267 = OpCompositeConstruct %v3float %266 %266 %266
+ %268 = OpFMul %v3float %248 %267
+ %269 = OpVectorShuffle %v3float %152 %152 0 1 2
+ %270 = OpFAdd %v3float %268 %269
+ %271 = OpCompositeExtract %float %154 3
+ %272 = OpFMul %float %265 %271
+ %273 = OpCompositeConstruct %v3float %272 %272 %272
+ %274 = OpVectorShuffle %v3float %154 %154 0 1 2
+ %275 = OpFAdd %v3float %273 %274
+ %276 = OpCompositeExtract %float %275 0
+ %277 = OpExtInst %float %1 FClamp %float_1 %float_0 %float_1
+ %278 = OpLoad %type_2d_image %MobileDirectionalLight_DirectionalLightShadowTexture
+ %279 = OpLoad %type_sampler %MobileDirectionalLight_DirectionalLightShadowSampler
+ %280 = OpAccessChain %_ptr_Uniform_v4float %MobileDirectionalLight %int_1
+ %281 = OpAccessChain %_ptr_Uniform_float %MobileDirectionalLight %int_1 %int_3
+ %282 = OpLoad %float %281
+ %283 = OpAccessChain %_ptr_Uniform_v4float %MobileDirectionalLight %int_2
+ %284 = OpLoad %v4float %283
+ OpBranch %285
+ %285 = OpLabel
+ %286 = OpPhi %int %int_0 %140 %287 %288
+ %289 = OpSLessThan %bool %286 %int_2
+ OpLoopMerge %290 %288 None
+ OpBranchConditional %289 %291 %290
+ %291 = OpLabel
+ %292 = OpBitcast %uint %286
+ %293 = OpAccessChain %_ptr_Uniform_float %MobileDirectionalLight %int_4 %292
+ %294 = OpLoad %float %293
+ %295 = OpFOrdLessThan %bool %224 %294
+ OpSelectionMerge %288 None
+ OpBranchConditional %295 %296 %288
+ %296 = OpLabel
+ %297 = OpCompositeExtract %float %177 0
+ %298 = OpCompositeExtract %float %177 1
+ %299 = OpCompositeConstruct %v4float %297 %298 %224 %float_1
+ %300 = OpAccessChain %_ptr_Uniform_mat4v4float %MobileDirectionalLight %int_5 %286
+ %301 = OpLoad %mat4v4float %300
+ %302 = OpMatrixTimesVector %v4float %301 %299
+ OpBranch %290
+ %288 = OpLabel
+ %287 = OpIAdd %int %286 %int_1
+ OpBranch %285
+ %290 = OpLabel
+ %303 = OpPhi %v4float %52 %285 %302 %296
+ %304 = OpCompositeExtract %float %303 2
+ %305 = OpFOrdGreaterThan %bool %304 %float_0
+ OpSelectionMerge %306 None
+ OpBranchConditional %305 %307 %306
+ %307 = OpLabel
+ %308 = OpExtInst %float %1 FMin %304 %float_0_999989986
+ %309 = OpVectorShuffle %v2float %303 %303 0 1
+ %310 = OpVectorShuffle %v2float %284 %284 0 1
+ %311 = OpFMul %v2float %309 %310
+ %312 = OpExtInst %v2float %1 Fract %311
+ %313 = OpExtInst %v2float %1 Floor %311
+ %314 = OpFAdd %v2float %313 %127
+ %315 = OpVectorShuffle %v2float %284 %284 2 3
+ %316 = OpFMul %v2float %314 %315
+ %317 = OpSampledImage %type_sampled_image_0 %278 %279
+ %318 = OpImageSampleExplicitLod %v4float %317 %316 Lod %float_0
+ %319 = OpCompositeExtract %float %318 0
+ %320 = OpCompositeInsert %v3float %319 %139 0
+ %321 = OpFAdd %v2float %313 %128
+ %322 = OpFMul %v2float %321 %315
+ %323 = OpSampledImage %type_sampled_image_0 %278 %279
+ %324 = OpImageSampleExplicitLod %v4float %323 %322 Lod %float_0
+ %325 = OpCompositeExtract %float %324 0
+ %326 = OpCompositeInsert %v3float %325 %320 1
+ %327 = OpFAdd %v2float %313 %130
+ %328 = OpFMul %v2float %327 %315
+ %329 = OpSampledImage %type_sampled_image_0 %278 %279
+ %330 = OpImageSampleExplicitLod %v4float %329 %328 Lod %float_0
+ %331 = OpCompositeExtract %float %330 0
+ %332 = OpCompositeInsert %v3float %331 %326 2
+ %333 = OpFMul %float %308 %282
+ %334 = OpFSub %float %333 %float_1
+ %335 = OpCompositeConstruct %v3float %282 %282 %282
+ %336 = OpFMul %v3float %332 %335
+ %337 = OpCompositeConstruct %v3float %334 %334 %334
+ %338 = OpFSub %v3float %336 %337
+ %339 = OpExtInst %v3float %1 FClamp %338 %47 %64
+ %340 = OpFAdd %v2float %313 %131
+ %341 = OpFMul %v2float %340 %315
+ %342 = OpSampledImage %type_sampled_image_0 %278 %279
+ %343 = OpImageSampleExplicitLod %v4float %342 %341 Lod %float_0
+ %344 = OpCompositeExtract %float %343 0
+ %345 = OpCompositeInsert %v3float %344 %139 0
+ %346 = OpFAdd %v2float %313 %60
+ %347 = OpFMul %v2float %346 %315
+ %348 = OpSampledImage %type_sampled_image_0 %278 %279
+ %349 = OpImageSampleExplicitLod %v4float %348 %347 Lod %float_0
+ %350 = OpCompositeExtract %float %349 0
+ %351 = OpCompositeInsert %v3float %350 %345 1
+ %352 = OpFAdd %v2float %313 %132
+ %353 = OpFMul %v2float %352 %315
+ %354 = OpSampledImage %type_sampled_image_0 %278 %279
+ %355 = OpImageSampleExplicitLod %v4float %354 %353 Lod %float_0
+ %356 = OpCompositeExtract %float %355 0
+ %357 = OpCompositeInsert %v3float %356 %351 2
+ %358 = OpFMul %v3float %357 %335
+ %359 = OpFSub %v3float %358 %337
+ %360 = OpExtInst %v3float %1 FClamp %359 %47 %64
+ %361 = OpFAdd %v2float %313 %133
+ %362 = OpFMul %v2float %361 %315
+ %363 = OpSampledImage %type_sampled_image_0 %278 %279
+ %364 = OpImageSampleExplicitLod %v4float %363 %362 Lod %float_0
+ %365 = OpCompositeExtract %float %364 0
+ %366 = OpCompositeInsert %v3float %365 %139 0
+ %367 = OpFAdd %v2float %313 %134
+ %368 = OpFMul %v2float %367 %315
+ %369 = OpSampledImage %type_sampled_image_0 %278 %279
+ %370 = OpImageSampleExplicitLod %v4float %369 %368 Lod %float_0
+ %371 = OpCompositeExtract %float %370 0
+ %372 = OpCompositeInsert %v3float %371 %366 1
+ %373 = OpFAdd %v2float %313 %135
+ %374 = OpFMul %v2float %373 %315
+ %375 = OpSampledImage %type_sampled_image_0 %278 %279
+ %376 = OpImageSampleExplicitLod %v4float %375 %374 Lod %float_0
+ %377 = OpCompositeExtract %float %376 0
+ %378 = OpCompositeInsert %v3float %377 %372 2
+ %379 = OpFMul %v3float %378 %335
+ %380 = OpFSub %v3float %379 %337
+ %381 = OpExtInst %v3float %1 FClamp %380 %47 %64
+ %382 = OpCompositeExtract %float %339 0
+ %383 = OpCompositeExtract %float %312 0
+ %384 = OpFSub %float %float_1 %383
+ %385 = OpFMul %float %382 %384
+ %386 = OpCompositeExtract %float %360 0
+ %387 = OpFMul %float %386 %384
+ %388 = OpCompositeExtract %float %381 0
+ %389 = OpFMul %float %388 %384
+ %390 = OpCompositeExtract %float %339 1
+ %391 = OpFAdd %float %385 %390
+ %392 = OpCompositeExtract %float %360 1
+ %393 = OpFAdd %float %387 %392
+ %394 = OpCompositeExtract %float %381 1
+ %395 = OpFAdd %float %389 %394
+ %396 = OpCompositeExtract %float %339 2
+ %397 = OpFMul %float %396 %383
+ %398 = OpFAdd %float %391 %397
+ %399 = OpCompositeInsert %v3float %398 %136 0
+ %400 = OpCompositeExtract %float %360 2
+ %401 = OpFMul %float %400 %383
+ %402 = OpFAdd %float %393 %401
+ %403 = OpCompositeInsert %v3float %402 %399 1
+ %404 = OpCompositeExtract %float %381 2
+ %405 = OpFMul %float %404 %383
+ %406 = OpFAdd %float %395 %405
+ %407 = OpCompositeInsert %v3float %406 %403 2
+ %408 = OpCompositeExtract %float %312 1
+ %409 = OpFSub %float %float_1 %408
+ %410 = OpCompositeConstruct %v3float %409 %float_1 %408
+ %411 = OpDot %float %407 %410
+ %412 = OpFMul %float %float_0_25 %411
+ %413 = OpExtInst %float %1 FClamp %412 %float_0 %float_1
+ %414 = OpAccessChain %_ptr_Uniform_float %MobileDirectionalLight %int_3 %int_0
+ %415 = OpLoad %float %414
+ %416 = OpFMul %float %224 %415
+ %417 = OpAccessChain %_ptr_Uniform_float %MobileDirectionalLight %int_3 %int_1
+ %418 = OpLoad %float %417
+ %419 = OpFAdd %float %416 %418
+ %420 = OpExtInst %float %1 FClamp %419 %float_0 %float_1
+ %421 = OpFMul %float %420 %420
+ %422 = OpExtInst %float %1 FMix %413 %float_1 %421
+ OpBranch %306
+ %306 = OpLabel
+ %423 = OpPhi %float %float_1 %290 %422 %307
+ %424 = OpLoad %v4float %280
+ %425 = OpVectorShuffle %v3float %424 %424 0 1 2
+ %426 = OpDot %float %206 %425
+ %427 = OpExtInst %float %1 FMax %float_0 %426
+ %428 = OpFAdd %v3float %181 %425
+ %429 = OpExtInst %v3float %1 Normalize %428
+ %430 = OpDot %float %206 %429
+ %431 = OpExtInst %float %1 FMax %float_0 %430
+ %432 = OpFMul %float %423 %427
+ %433 = OpCompositeConstruct %v3float %432 %432 %432
+ %434 = OpAccessChain %_ptr_Uniform_v4float %MobileDirectionalLight %int_0
+ %435 = OpLoad %v4float %434
+ %436 = OpVectorShuffle %v3float %435 %435 0 1 2
+ %437 = OpFMul %v3float %433 %436
+ %438 = OpFMul %float %253 %float_0_25
+ %439 = OpFAdd %float %438 %float_0_25
+ %440 = OpExtInst %v3float %1 Cross %206 %429
+ %441 = OpDot %float %440 %440
+ %442 = OpFMul %float %253 %253
+ %443 = OpFMul %float %431 %442
+ %444 = OpFMul %float %443 %443
+ %445 = OpFAdd %float %441 %444
+ %446 = OpFDiv %float %442 %445
+ %447 = OpFMul %float %446 %446
+ %448 = OpExtInst %float %1 FMin %447 %float_65504
+ %449 = OpFMul %float %439 %448
+ %450 = OpFMul %float %276 %449
+ %451 = OpCompositeConstruct %v3float %450 %450 %450
+ %452 = OpFAdd %v3float %270 %451
+ %453 = OpFMul %v3float %437 %452
+ %454 = OpAccessChain %_ptr_Uniform_float %_Globals %int_3 %int_3
+ %455 = OpLoad %float %454
+ %456 = OpFOrdGreaterThan %bool %455 %float_0
+ %457 = OpSelect %float %456 %float_1 %float_0
+ %458 = OpFOrdNotEqual %bool %457 %float_0
+ %459 = OpSelect %float %458 %455 %164
+ %460 = OpExtInst %float %1 Log2 %253
+ %461 = OpFMul %float %float_1_20000005 %460
+ %462 = OpFSub %float %float_1 %461
+ %463 = OpFSub %float %459 %float_1
+ %464 = OpFSub %float %463 %462
+ %465 = OpLoad %type_cube_image %ReflectionCubemap
+ %466 = OpLoad %type_sampler %ReflectionCubemapSampler
+ %467 = OpSampledImage %type_sampled_image %465 %466
+ %468 = OpImageSampleExplicitLod %v4float %467 %212 Lod %464
+ OpSelectionMerge %469 None
+ OpBranchConditional %458 %470 %471
+ %471 = OpLabel
+ %472 = OpVectorShuffle %v3float %468 %468 0 1 2
+ %473 = OpCompositeExtract %float %468 3
+ %474 = OpFMul %float %473 %float_16
+ %475 = OpCompositeConstruct %v3float %474 %474 %474
+ %476 = OpFMul %v3float %472 %475
+ %477 = OpFMul %v3float %476 %476
+ OpBranch %469
+ %470 = OpLabel
+ %478 = OpVectorShuffle %v3float %468 %468 0 1 2
+ %479 = OpVectorShuffle %v3float %162 %162 0 1 2
+ %480 = OpFMul %v3float %478 %479
+ OpBranch %469
+ %469 = OpLabel
+ %481 = OpPhi %v3float %477 %471 %480 %470
+ %482 = OpCompositeConstruct %v3float %277 %277 %277
+ %483 = OpFMul %v3float %481 %482
+ %484 = OpCompositeConstruct %v3float %276 %276 %276
+ %485 = OpFMul %v3float %483 %484
+ %486 = OpFAdd %v3float %453 %485
+ OpBranch %487
+ %487 = OpLabel
+ %488 = OpPhi %v3float %486 %469 %489 %490
+ %491 = OpPhi %int %int_0 %469 %492 %490
+ %493 = OpAccessChain %_ptr_Uniform_int %_Globals %int_0
+ %494 = OpLoad %int %493
+ %495 = OpSLessThan %bool %491 %494
+ OpLoopMerge %496 %490 None
+ OpBranchConditional %495 %497 %496
+ %497 = OpLabel
+ %498 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_1 %491
+ %499 = OpLoad %v4float %498
+ %500 = OpVectorShuffle %v3float %499 %499 0 1 2
+ %501 = OpFSub %v3float %500 %179
+ %502 = OpDot %float %501 %501
+ %503 = OpExtInst %float %1 InverseSqrt %502
+ %504 = OpCompositeConstruct %v3float %503 %503 %503
+ %505 = OpFMul %v3float %501 %504
+ %506 = OpFAdd %v3float %181 %505
+ %507 = OpExtInst %v3float %1 Normalize %506
+ %508 = OpDot %float %206 %505
+ %509 = OpExtInst %float %1 FMax %float_0 %508
+ %510 = OpDot %float %206 %507
+ %511 = OpExtInst %float %1 FMax %float_0 %510
+ %512 = OpAccessChain %_ptr_Uniform_v4float %_Globals %int_2 %491
+ %513 = OpAccessChain %_ptr_Uniform_float %_Globals %int_2 %491 %int_3
+ %514 = OpLoad %float %513
+ %515 = OpFOrdEqual %bool %514 %float_0
+ OpSelectionMerge %490 None
+ OpBranchConditional %515 %516 %517
+ %517 = OpLabel
+ %518 = OpAccessChain %_ptr_Uniform_float %_Globals %int_1 %491 %int_3
+ %519 = OpLoad %float %518
+ %520 = OpCompositeConstruct %v3float %519 %519 %519
+ %521 = OpFMul %v3float %501 %520
+ %522 = OpDot %float %521 %521
+ %523 = OpExtInst %float %1 FClamp %522 %float_0 %float_1
+ %524 = OpFSub %float %float_1 %523
+ %525 = OpExtInst %float %1 Pow %524 %514
+ OpBranch %490
+ %516 = OpLabel
+ %526 = OpFAdd %float %502 %float_1
+ %527 = OpFDiv %float %float_1 %526
+ %528 = OpAccessChain %_ptr_Uniform_float %_Globals %int_1 %491 %int_3
+ %529 = OpLoad %float %528
+ %530 = OpFMul %float %529 %529
+ %531 = OpFMul %float %502 %530
+ %532 = OpFMul %float %531 %531
+ %533 = OpFSub %float %float_1 %532
+ %534 = OpExtInst %float %1 FClamp %533 %float_0 %float_1
+ %535 = OpFMul %float %534 %534
+ %536 = OpFMul %float %527 %535
+ OpBranch %490
+ %490 = OpLabel
+ %537 = OpPhi %float %525 %517 %536 %516
+ %538 = OpFMul %float %537 %509
+ %539 = OpCompositeConstruct %v3float %538 %538 %538
+ %540 = OpLoad %v4float %512
+ %541 = OpVectorShuffle %v3float %540 %540 0 1 2
+ %542 = OpFMul %v3float %539 %541
+ %543 = OpFMul %v3float %542 %57
+ %544 = OpExtInst %v3float %1 Cross %206 %507
+ %545 = OpDot %float %544 %544
+ %546 = OpFMul %float %511 %442
+ %547 = OpFMul %float %546 %546
+ %548 = OpFAdd %float %545 %547
+ %549 = OpFDiv %float %442 %548
+ %550 = OpFMul %float %549 %549
+ %551 = OpExtInst %float %1 FMin %550 %float_65504
+ %552 = OpFMul %float %439 %551
+ %553 = OpFMul %float %276 %552
+ %554 = OpCompositeConstruct %v3float %553 %553 %553
+ %555 = OpFAdd %v3float %270 %554
+ %556 = OpFMul %v3float %543 %555
+ %557 = OpExtInst %v3float %1 FMin %55 %556
+ %489 = OpFAdd %v3float %488 %557
+ %492 = OpIAdd %int %491 %int_1
+ OpBranch %487
+ %496 = OpLabel
+ %558 = OpExtInst %v3float %1 FMax %47 %47
+ %559 = OpFAdd %v3float %488 %558
+ %560 = OpFAdd %v3float %270 %484
+ %561 = OpCompositeConstruct %v3float %160 %160 %160
+ %562 = OpExtInst %v3float %1 FMix %559 %560 %561
+ %563 = OpCompositeExtract %float %142 3
+ %564 = OpCompositeConstruct %v3float %563 %563 %563
+ %565 = OpFMul %v3float %562 %564
+ %566 = OpVectorShuffle %v3float %142 %142 0 1 2
+ %567 = OpFAdd %v3float %565 %566
+ %568 = OpVectorShuffle %v4float %137 %567 4 5 6 3
+ %569 = OpCompositeExtract %float %143 3
+ %570 = OpExtInst %float %1 FMin %569 %float_65500
+ %571 = OpCompositeInsert %v4float %570 %568 3
+ OpStore %out_var_SV_Target0 %571
+ OpReturn
+ OpFunctionEnd