| ; SPIR-V |
| ; Version: 1.0 |
| ; Generator: Google spiregg; 0 |
| ; Bound: 598 |
| ; Schema: 0 |
| OpCapability Tessellation |
| OpCapability SampledBuffer |
| OpCapability StorageImageExtendedFormats |
| OpExtension "SPV_GOOGLE_hlsl_functionality1" |
| %1 = OpExtInstImport "GLSL.std.450" |
| OpMemoryModel Logical GLSL450 |
| OpEntryPoint TessellationControl %MainHull "main" %in_var_TEXCOORD10_centroid %in_var_TEXCOORD11_centroid %in_var_COLOR0 %in_var_TEXCOORD0 %in_var_TEXCOORD4 %in_var_PRIMITIVE_ID %in_var_LIGHTMAP_ID %in_var_VS_To_DS_Position %gl_InvocationID %out_var_TEXCOORD10_centroid %out_var_TEXCOORD11_centroid %out_var_COLOR0 %out_var_TEXCOORD0 %out_var_TEXCOORD4 %out_var_PRIMITIVE_ID %out_var_LIGHTMAP_ID %out_var_VS_To_DS_Position %out_var_PN_POSITION %out_var_PN_DisplacementScales %out_var_PN_TessellationMultiplier %out_var_PN_WorldDisplacementMultiplier %gl_TessLevelOuter %gl_TessLevelInner %out_var_PN_POSITION9 |
| OpExecutionMode %MainHull Triangles |
| OpExecutionMode %MainHull SpacingFractionalOdd |
| OpExecutionMode %MainHull VertexOrderCw |
| OpExecutionMode %MainHull OutputVertices 3 |
| OpSource HLSL 600 |
| OpName %FPNTessellationHSToDS "FPNTessellationHSToDS" |
| OpMemberName %FPNTessellationHSToDS 0 "PassSpecificData" |
| OpMemberName %FPNTessellationHSToDS 1 "WorldPosition" |
| OpMemberName %FPNTessellationHSToDS 2 "DisplacementScale" |
| OpMemberName %FPNTessellationHSToDS 3 "TessellationMultiplier" |
| OpMemberName %FPNTessellationHSToDS 4 "WorldDisplacementMultiplier" |
| OpName %FBasePassVSToDS "FBasePassVSToDS" |
| OpMemberName %FBasePassVSToDS 0 "FactoryInterpolants" |
| OpMemberName %FBasePassVSToDS 1 "BasePassInterpolants" |
| OpMemberName %FBasePassVSToDS 2 "Position" |
| OpName %FVertexFactoryInterpolantsVSToDS "FVertexFactoryInterpolantsVSToDS" |
| OpMemberName %FVertexFactoryInterpolantsVSToDS 0 "InterpolantsVSToPS" |
| OpName %FVertexFactoryInterpolantsVSToPS "FVertexFactoryInterpolantsVSToPS" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 0 "TangentToWorld0" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 1 "TangentToWorld2" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 2 "Color" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 3 "TexCoords" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 4 "LightMapCoordinate" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 5 "PrimitiveId" |
| OpMemberName %FVertexFactoryInterpolantsVSToPS 6 "LightmapDataIndex" |
| OpName %FBasePassInterpolantsVSToDS "FBasePassInterpolantsVSToDS" |
| OpName %FSharedBasePassInterpolants "FSharedBasePassInterpolants" |
| 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_StructuredBuffer_v4float "type.StructuredBuffer.v4float" |
| OpName %View_PrimitiveSceneData "View_PrimitiveSceneData" |
| OpName %in_var_TEXCOORD10_centroid "in.var.TEXCOORD10_centroid" |
| OpName %in_var_TEXCOORD11_centroid "in.var.TEXCOORD11_centroid" |
| OpName %in_var_COLOR0 "in.var.COLOR0" |
| OpName %in_var_TEXCOORD0 "in.var.TEXCOORD0" |
| OpName %in_var_TEXCOORD4 "in.var.TEXCOORD4" |
| OpName %in_var_PRIMITIVE_ID "in.var.PRIMITIVE_ID" |
| OpName %in_var_LIGHTMAP_ID "in.var.LIGHTMAP_ID" |
| OpName %in_var_VS_To_DS_Position "in.var.VS_To_DS_Position" |
| OpName %out_var_TEXCOORD10_centroid "out.var.TEXCOORD10_centroid" |
| OpName %out_var_TEXCOORD11_centroid "out.var.TEXCOORD11_centroid" |
| OpName %out_var_COLOR0 "out.var.COLOR0" |
| OpName %out_var_TEXCOORD0 "out.var.TEXCOORD0" |
| OpName %out_var_TEXCOORD4 "out.var.TEXCOORD4" |
| OpName %out_var_PRIMITIVE_ID "out.var.PRIMITIVE_ID" |
| OpName %out_var_LIGHTMAP_ID "out.var.LIGHTMAP_ID" |
| OpName %out_var_VS_To_DS_Position "out.var.VS_To_DS_Position" |
| OpName %out_var_PN_POSITION "out.var.PN_POSITION" |
| OpName %out_var_PN_DisplacementScales "out.var.PN_DisplacementScales" |
| OpName %out_var_PN_TessellationMultiplier "out.var.PN_TessellationMultiplier" |
| OpName %out_var_PN_WorldDisplacementMultiplier "out.var.PN_WorldDisplacementMultiplier" |
| OpName %out_var_PN_POSITION9 "out.var.PN_POSITION9" |
| OpName %MainHull "MainHull" |
| OpName %param_var_I "param.var.I" |
| OpName %temp_var_hullMainRetVal "temp.var.hullMainRetVal" |
| OpName %if_merge "if.merge" |
| OpDecorateString %in_var_TEXCOORD10_centroid UserSemantic "TEXCOORD10_centroid" |
| OpDecorateString %in_var_TEXCOORD11_centroid UserSemantic "TEXCOORD11_centroid" |
| OpDecorateString %in_var_COLOR0 UserSemantic "COLOR0" |
| OpDecorateString %in_var_TEXCOORD0 UserSemantic "TEXCOORD0" |
| OpDecorateString %in_var_TEXCOORD4 UserSemantic "TEXCOORD4" |
| OpDecorateString %in_var_PRIMITIVE_ID UserSemantic "PRIMITIVE_ID" |
| OpDecorateString %in_var_LIGHTMAP_ID UserSemantic "LIGHTMAP_ID" |
| OpDecorateString %in_var_VS_To_DS_Position UserSemantic "VS_To_DS_Position" |
| OpDecorate %gl_InvocationID BuiltIn InvocationId |
| OpDecorateString %gl_InvocationID UserSemantic "SV_OutputControlPointID" |
| OpDecorateString %out_var_TEXCOORD10_centroid UserSemantic "TEXCOORD10_centroid" |
| OpDecorateString %out_var_TEXCOORD11_centroid UserSemantic "TEXCOORD11_centroid" |
| OpDecorateString %out_var_COLOR0 UserSemantic "COLOR0" |
| OpDecorateString %out_var_TEXCOORD0 UserSemantic "TEXCOORD0" |
| OpDecorateString %out_var_TEXCOORD4 UserSemantic "TEXCOORD4" |
| OpDecorateString %out_var_PRIMITIVE_ID UserSemantic "PRIMITIVE_ID" |
| OpDecorateString %out_var_LIGHTMAP_ID UserSemantic "LIGHTMAP_ID" |
| OpDecorateString %out_var_VS_To_DS_Position UserSemantic "VS_To_DS_Position" |
| OpDecorateString %out_var_PN_POSITION UserSemantic "PN_POSITION" |
| OpDecorateString %out_var_PN_DisplacementScales UserSemantic "PN_DisplacementScales" |
| OpDecorateString %out_var_PN_TessellationMultiplier UserSemantic "PN_TessellationMultiplier" |
| OpDecorateString %out_var_PN_WorldDisplacementMultiplier UserSemantic "PN_WorldDisplacementMultiplier" |
| OpDecorate %gl_TessLevelOuter BuiltIn TessLevelOuter |
| OpDecorateString %gl_TessLevelOuter UserSemantic "SV_TessFactor" |
| OpDecorate %gl_TessLevelOuter Patch |
| OpDecorate %gl_TessLevelInner BuiltIn TessLevelInner |
| OpDecorateString %gl_TessLevelInner UserSemantic "SV_InsideTessFactor" |
| OpDecorate %gl_TessLevelInner Patch |
| OpDecorateString %out_var_PN_POSITION9 UserSemantic "PN_POSITION9" |
| OpDecorate %out_var_PN_POSITION9 Patch |
| OpDecorate %in_var_TEXCOORD10_centroid Location 0 |
| OpDecorate %in_var_TEXCOORD11_centroid Location 1 |
| OpDecorate %in_var_COLOR0 Location 2 |
| OpDecorate %in_var_TEXCOORD0 Location 3 |
| OpDecorate %in_var_TEXCOORD4 Location 4 |
| OpDecorate %in_var_PRIMITIVE_ID Location 5 |
| OpDecorate %in_var_LIGHTMAP_ID Location 6 |
| OpDecorate %in_var_VS_To_DS_Position Location 7 |
| OpDecorate %out_var_COLOR0 Location 0 |
| OpDecorate %out_var_LIGHTMAP_ID Location 1 |
| OpDecorate %out_var_PN_DisplacementScales Location 2 |
| OpDecorate %out_var_PN_POSITION Location 3 |
| OpDecorate %out_var_PN_POSITION9 Location 6 |
| OpDecorate %out_var_PN_TessellationMultiplier Location 7 |
| OpDecorate %out_var_PN_WorldDisplacementMultiplier Location 8 |
| OpDecorate %out_var_PRIMITIVE_ID Location 9 |
| OpDecorate %out_var_TEXCOORD0 Location 10 |
| OpDecorate %out_var_TEXCOORD10_centroid Location 11 |
| OpDecorate %out_var_TEXCOORD11_centroid Location 12 |
| OpDecorate %out_var_TEXCOORD4 Location 13 |
| OpDecorate %out_var_VS_To_DS_Position Location 14 |
| OpDecorate %View DescriptorSet 0 |
| OpDecorate %View Binding 1 |
| OpDecorate %View_PrimitiveSceneData DescriptorSet 0 |
| OpDecorate %View_PrimitiveSceneData Binding 0 |
| OpDecorate %_arr_v4float_uint_4 ArrayStride 16 |
| OpDecorate %_arr_v4float_uint_2 ArrayStride 16 |
| OpDecorate %_arr_v4float_uint_7 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 %_runtimearr_v4float ArrayStride 16 |
| OpMemberDecorate %type_StructuredBuffer_v4float 0 Offset 0 |
| OpMemberDecorate %type_StructuredBuffer_v4float 0 NonWritable |
| OpDecorate %type_StructuredBuffer_v4float BufferBlock |
| %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 |
| %uint_0 = OpConstant %uint 0 |
| %uint_1 = OpConstant %uint 1 |
| %uint_3 = OpConstant %uint 3 |
| %_arr_float_uint_3 = OpTypeArray %float %uint_3 |
| %int_1 = OpConstant %int 1 |
| %int_0 = OpConstant %int 0 |
| %int_2 = OpConstant %int 2 |
| %float_2 = OpConstant %float 2 |
| %62 = OpConstantComposite %v4float %float_2 %float_2 %float_2 %float_2 |
| %float_0_5 = OpConstant %float 0.5 |
| %int_3 = OpConstant %int 3 |
| %float_0_333000004 = OpConstant %float 0.333000004 |
| %float_1 = OpConstant %float 1 |
| %67 = OpConstantComposite %v4float %float_1 %float_1 %float_1 %float_1 |
| %float_15 = OpConstant %float 15 |
| %69 = OpConstantComposite %v4float %float_15 %float_15 %float_15 %float_15 |
| %_arr_v4float_uint_1 = OpTypeArray %v4float %uint_1 |
| %FVertexFactoryInterpolantsVSToPS = OpTypeStruct %v4float %v4float %v4float %_arr_v4float_uint_1 %v4float %uint %uint |
| %FVertexFactoryInterpolantsVSToDS = OpTypeStruct %FVertexFactoryInterpolantsVSToPS |
| %FSharedBasePassInterpolants = OpTypeStruct |
| %FBasePassInterpolantsVSToDS = OpTypeStruct %FSharedBasePassInterpolants |
| %FBasePassVSToDS = OpTypeStruct %FVertexFactoryInterpolantsVSToDS %FBasePassInterpolantsVSToDS %v4float |
| %_arr_v4float_uint_3 = OpTypeArray %v4float %uint_3 |
| %FPNTessellationHSToDS = OpTypeStruct %FBasePassVSToDS %_arr_v4float_uint_3 %v3float %float %float |
| %v3int = OpTypeVector %int 3 |
| %73 = OpConstantComposite %v3int %int_0 %int_0 %int_0 |
| %74 = OpConstantComposite %v3int %int_3 %int_3 %int_3 |
| %float_0 = OpConstant %float 0 |
| %76 = OpConstantComposite %v4float %float_0 %float_0 %float_0 %float_0 |
| %77 = OpConstantComposite %v3float %float_0_5 %float_0_5 %float_0_5 |
| %int_77 = OpConstant %int 77 |
| %int_6 = OpConstant %int 6 |
| %int_27 = OpConstant %int 27 |
| %81 = OpConstantComposite %v3int %int_1 %int_1 %int_1 |
| %82 = OpConstantComposite %v3int %int_2 %int_2 %int_2 |
| %uint_26 = OpConstant %uint 26 |
| %uint_12 = OpConstant %uint 12 |
| %uint_22 = OpConstant %uint 22 |
| %_arr_v4float_uint_4 = OpTypeArray %v4float %uint_4 |
| %_arr_v4float_uint_2 = OpTypeArray %v4float %uint_2 |
| %_arr_v4float_uint_7 = OpTypeArray %v4float %uint_7 |
| %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 |
| %_runtimearr_v4float = OpTypeRuntimeArray %v4float |
| %type_StructuredBuffer_v4float = OpTypeStruct %_runtimearr_v4float |
| %_ptr_Uniform_type_StructuredBuffer_v4float = OpTypePointer Uniform %type_StructuredBuffer_v4float |
| %_arr_v4float_uint_12 = OpTypeArray %v4float %uint_12 |
| %_ptr_Input__arr_v4float_uint_12 = OpTypePointer Input %_arr_v4float_uint_12 |
| %_arr__arr_v4float_uint_1_uint_12 = OpTypeArray %_arr_v4float_uint_1 %uint_12 |
| %_ptr_Input__arr__arr_v4float_uint_1_uint_12 = OpTypePointer Input %_arr__arr_v4float_uint_1_uint_12 |
| %_arr_uint_uint_12 = OpTypeArray %uint %uint_12 |
| %_ptr_Input__arr_uint_uint_12 = OpTypePointer Input %_arr_uint_uint_12 |
| %_ptr_Input_uint = OpTypePointer Input %uint |
| %_ptr_Output__arr_v4float_uint_3 = OpTypePointer Output %_arr_v4float_uint_3 |
| %_arr__arr_v4float_uint_1_uint_3 = OpTypeArray %_arr_v4float_uint_1 %uint_3 |
| %_ptr_Output__arr__arr_v4float_uint_1_uint_3 = OpTypePointer Output %_arr__arr_v4float_uint_1_uint_3 |
| %_arr_uint_uint_3 = OpTypeArray %uint %uint_3 |
| %_ptr_Output__arr_uint_uint_3 = OpTypePointer Output %_arr_uint_uint_3 |
| %_arr__arr_v4float_uint_3_uint_3 = OpTypeArray %_arr_v4float_uint_3 %uint_3 |
| %_ptr_Output__arr__arr_v4float_uint_3_uint_3 = OpTypePointer Output %_arr__arr_v4float_uint_3_uint_3 |
| %_arr_v3float_uint_3 = OpTypeArray %v3float %uint_3 |
| %_ptr_Output__arr_v3float_uint_3 = OpTypePointer Output %_arr_v3float_uint_3 |
| %_ptr_Output__arr_float_uint_3 = OpTypePointer Output %_arr_float_uint_3 |
| %_arr_float_uint_4 = OpTypeArray %float %uint_4 |
| %_ptr_Output__arr_float_uint_4 = OpTypePointer Output %_arr_float_uint_4 |
| %_arr_float_uint_2 = OpTypeArray %float %uint_2 |
| %_ptr_Output__arr_float_uint_2 = OpTypePointer Output %_arr_float_uint_2 |
| %_ptr_Output_v4float = OpTypePointer Output %v4float |
| %void = OpTypeVoid |
| %111 = OpTypeFunction %void |
| %_arr_FBasePassVSToDS_uint_12 = OpTypeArray %FBasePassVSToDS %uint_12 |
| %_ptr_Function__arr_FBasePassVSToDS_uint_12 = OpTypePointer Function %_arr_FBasePassVSToDS_uint_12 |
| %_arr_FPNTessellationHSToDS_uint_3 = OpTypeArray %FPNTessellationHSToDS %uint_3 |
| %_ptr_Workgroup__arr_FPNTessellationHSToDS_uint_3 = OpTypePointer Workgroup %_arr_FPNTessellationHSToDS_uint_3 |
| %_ptr_Output__arr_v4float_uint_1 = OpTypePointer Output %_arr_v4float_uint_1 |
| %_ptr_Output_uint = OpTypePointer Output %uint |
| %_ptr_Output_v3float = OpTypePointer Output %v3float |
| %_ptr_Output_float = OpTypePointer Output %float |
| %_ptr_Workgroup_FPNTessellationHSToDS = OpTypePointer Workgroup %FPNTessellationHSToDS |
| %bool = OpTypeBool |
| %_ptr_Function_v4float = OpTypePointer Function %v4float |
| %_ptr_Workgroup_v4float = OpTypePointer Workgroup %v4float |
| %_ptr_Function_float = OpTypePointer Function %float |
| %_ptr_Workgroup_float = OpTypePointer Workgroup %float |
| %mat3v3float = OpTypeMatrix %v3float 3 |
| %_ptr_Function_FVertexFactoryInterpolantsVSToDS = OpTypePointer Function %FVertexFactoryInterpolantsVSToDS |
| %_ptr_Function_FVertexFactoryInterpolantsVSToPS = OpTypePointer Function %FVertexFactoryInterpolantsVSToPS |
| %_ptr_Function_FBasePassVSToDS = OpTypePointer Function %FBasePassVSToDS |
| %v3bool = OpTypeVector %bool 3 |
| %_ptr_Uniform_float = OpTypePointer Uniform %float |
| %_ptr_Uniform_mat4v4float = OpTypePointer Uniform %mat4v4float |
| %_ptr_Uniform_v3float = OpTypePointer Uniform %v3float |
| %_ptr_Uniform_v4float = OpTypePointer Uniform %v4float |
| %View = OpVariable %_ptr_Uniform_type_View Uniform |
| %View_PrimitiveSceneData = OpVariable %_ptr_Uniform_type_StructuredBuffer_v4float Uniform |
| %in_var_TEXCOORD10_centroid = OpVariable %_ptr_Input__arr_v4float_uint_12 Input |
| %in_var_TEXCOORD11_centroid = OpVariable %_ptr_Input__arr_v4float_uint_12 Input |
| %in_var_COLOR0 = OpVariable %_ptr_Input__arr_v4float_uint_12 Input |
| %in_var_TEXCOORD0 = OpVariable %_ptr_Input__arr__arr_v4float_uint_1_uint_12 Input |
| %in_var_TEXCOORD4 = OpVariable %_ptr_Input__arr_v4float_uint_12 Input |
| %in_var_PRIMITIVE_ID = OpVariable %_ptr_Input__arr_uint_uint_12 Input |
| %in_var_LIGHTMAP_ID = OpVariable %_ptr_Input__arr_uint_uint_12 Input |
| %in_var_VS_To_DS_Position = OpVariable %_ptr_Input__arr_v4float_uint_12 Input |
| %gl_InvocationID = OpVariable %_ptr_Input_uint Input |
| %out_var_TEXCOORD10_centroid = OpVariable %_ptr_Output__arr_v4float_uint_3 Output |
| %out_var_TEXCOORD11_centroid = OpVariable %_ptr_Output__arr_v4float_uint_3 Output |
| %out_var_COLOR0 = OpVariable %_ptr_Output__arr_v4float_uint_3 Output |
| %out_var_TEXCOORD0 = OpVariable %_ptr_Output__arr__arr_v4float_uint_1_uint_3 Output |
| %out_var_TEXCOORD4 = OpVariable %_ptr_Output__arr_v4float_uint_3 Output |
| %out_var_PRIMITIVE_ID = OpVariable %_ptr_Output__arr_uint_uint_3 Output |
| %out_var_LIGHTMAP_ID = OpVariable %_ptr_Output__arr_uint_uint_3 Output |
| %out_var_VS_To_DS_Position = OpVariable %_ptr_Output__arr_v4float_uint_3 Output |
| %out_var_PN_POSITION = OpVariable %_ptr_Output__arr__arr_v4float_uint_3_uint_3 Output |
| %out_var_PN_DisplacementScales = OpVariable %_ptr_Output__arr_v3float_uint_3 Output |
| %out_var_PN_TessellationMultiplier = OpVariable %_ptr_Output__arr_float_uint_3 Output |
| %out_var_PN_WorldDisplacementMultiplier = OpVariable %_ptr_Output__arr_float_uint_3 Output |
| %gl_TessLevelOuter = OpVariable %_ptr_Output__arr_float_uint_4 Output |
| %gl_TessLevelInner = OpVariable %_ptr_Output__arr_float_uint_2 Output |
| %out_var_PN_POSITION9 = OpVariable %_ptr_Output_v4float Output |
| %133 = OpConstantNull %FSharedBasePassInterpolants |
| %134 = OpConstantComposite %FBasePassInterpolantsVSToDS %133 |
| %float_0_333333343 = OpConstant %float 0.333333343 |
| %136 = OpConstantComposite %v4float %float_0_333333343 %float_0_333333343 %float_0_333333343 %float_0_333333343 |
| %137 = OpConstantComposite %v4float %float_0_5 %float_0_5 %float_0_5 %float_0_5 |
| %float_0_166666672 = OpConstant %float 0.166666672 |
| %139 = OpConstantComposite %v4float %float_0_166666672 %float_0_166666672 %float_0_166666672 %float_0_166666672 |
| %140 = OpUndef %v4float |
| |
| ; XXX: Original asm used Function here, which is wrong. |
| ; This patches the SPIR-V to be correct. |
| %temp_var_hullMainRetVal = OpVariable %_ptr_Workgroup__arr_FPNTessellationHSToDS_uint_3 Workgroup |
| |
| %MainHull = OpFunction %void None %111 |
| %141 = OpLabel |
| %param_var_I = OpVariable %_ptr_Function__arr_FBasePassVSToDS_uint_12 Function |
| %142 = OpLoad %_arr_v4float_uint_12 %in_var_TEXCOORD10_centroid |
| %143 = OpLoad %_arr_v4float_uint_12 %in_var_TEXCOORD11_centroid |
| %144 = OpLoad %_arr_v4float_uint_12 %in_var_COLOR0 |
| %145 = OpLoad %_arr__arr_v4float_uint_1_uint_12 %in_var_TEXCOORD0 |
| %146 = OpLoad %_arr_v4float_uint_12 %in_var_TEXCOORD4 |
| %147 = OpLoad %_arr_uint_uint_12 %in_var_PRIMITIVE_ID |
| %148 = OpLoad %_arr_uint_uint_12 %in_var_LIGHTMAP_ID |
| %149 = OpCompositeExtract %v4float %142 0 |
| %150 = OpCompositeExtract %v4float %143 0 |
| %151 = OpCompositeExtract %v4float %144 0 |
| %152 = OpCompositeExtract %_arr_v4float_uint_1 %145 0 |
| %153 = OpCompositeExtract %v4float %146 0 |
| %154 = OpCompositeExtract %uint %147 0 |
| %155 = OpCompositeExtract %uint %148 0 |
| %156 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %149 %150 %151 %152 %153 %154 %155 |
| %157 = OpCompositeExtract %v4float %142 1 |
| %158 = OpCompositeExtract %v4float %143 1 |
| %159 = OpCompositeExtract %v4float %144 1 |
| %160 = OpCompositeExtract %_arr_v4float_uint_1 %145 1 |
| %161 = OpCompositeExtract %v4float %146 1 |
| %162 = OpCompositeExtract %uint %147 1 |
| %163 = OpCompositeExtract %uint %148 1 |
| %164 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %157 %158 %159 %160 %161 %162 %163 |
| %165 = OpCompositeExtract %v4float %142 2 |
| %166 = OpCompositeExtract %v4float %143 2 |
| %167 = OpCompositeExtract %v4float %144 2 |
| %168 = OpCompositeExtract %_arr_v4float_uint_1 %145 2 |
| %169 = OpCompositeExtract %v4float %146 2 |
| %170 = OpCompositeExtract %uint %147 2 |
| %171 = OpCompositeExtract %uint %148 2 |
| %172 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %165 %166 %167 %168 %169 %170 %171 |
| %173 = OpCompositeExtract %v4float %142 3 |
| %174 = OpCompositeExtract %v4float %143 3 |
| %175 = OpCompositeExtract %v4float %144 3 |
| %176 = OpCompositeExtract %_arr_v4float_uint_1 %145 3 |
| %177 = OpCompositeExtract %v4float %146 3 |
| %178 = OpCompositeExtract %uint %147 3 |
| %179 = OpCompositeExtract %uint %148 3 |
| %180 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %173 %174 %175 %176 %177 %178 %179 |
| %181 = OpCompositeExtract %v4float %142 4 |
| %182 = OpCompositeExtract %v4float %143 4 |
| %183 = OpCompositeExtract %v4float %144 4 |
| %184 = OpCompositeExtract %_arr_v4float_uint_1 %145 4 |
| %185 = OpCompositeExtract %v4float %146 4 |
| %186 = OpCompositeExtract %uint %147 4 |
| %187 = OpCompositeExtract %uint %148 4 |
| %188 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %181 %182 %183 %184 %185 %186 %187 |
| %189 = OpCompositeExtract %v4float %142 5 |
| %190 = OpCompositeExtract %v4float %143 5 |
| %191 = OpCompositeExtract %v4float %144 5 |
| %192 = OpCompositeExtract %_arr_v4float_uint_1 %145 5 |
| %193 = OpCompositeExtract %v4float %146 5 |
| %194 = OpCompositeExtract %uint %147 5 |
| %195 = OpCompositeExtract %uint %148 5 |
| %196 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %189 %190 %191 %192 %193 %194 %195 |
| %197 = OpCompositeExtract %v4float %142 6 |
| %198 = OpCompositeExtract %v4float %143 6 |
| %199 = OpCompositeExtract %v4float %144 6 |
| %200 = OpCompositeExtract %_arr_v4float_uint_1 %145 6 |
| %201 = OpCompositeExtract %v4float %146 6 |
| %202 = OpCompositeExtract %uint %147 6 |
| %203 = OpCompositeExtract %uint %148 6 |
| %204 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %197 %198 %199 %200 %201 %202 %203 |
| %205 = OpCompositeExtract %v4float %142 7 |
| %206 = OpCompositeExtract %v4float %143 7 |
| %207 = OpCompositeExtract %v4float %144 7 |
| %208 = OpCompositeExtract %_arr_v4float_uint_1 %145 7 |
| %209 = OpCompositeExtract %v4float %146 7 |
| %210 = OpCompositeExtract %uint %147 7 |
| %211 = OpCompositeExtract %uint %148 7 |
| %212 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %205 %206 %207 %208 %209 %210 %211 |
| %213 = OpCompositeExtract %v4float %142 8 |
| %214 = OpCompositeExtract %v4float %143 8 |
| %215 = OpCompositeExtract %v4float %144 8 |
| %216 = OpCompositeExtract %_arr_v4float_uint_1 %145 8 |
| %217 = OpCompositeExtract %v4float %146 8 |
| %218 = OpCompositeExtract %uint %147 8 |
| %219 = OpCompositeExtract %uint %148 8 |
| %220 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %213 %214 %215 %216 %217 %218 %219 |
| %221 = OpCompositeExtract %v4float %142 9 |
| %222 = OpCompositeExtract %v4float %143 9 |
| %223 = OpCompositeExtract %v4float %144 9 |
| %224 = OpCompositeExtract %_arr_v4float_uint_1 %145 9 |
| %225 = OpCompositeExtract %v4float %146 9 |
| %226 = OpCompositeExtract %uint %147 9 |
| %227 = OpCompositeExtract %uint %148 9 |
| %228 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %221 %222 %223 %224 %225 %226 %227 |
| %229 = OpCompositeExtract %v4float %142 10 |
| %230 = OpCompositeExtract %v4float %143 10 |
| %231 = OpCompositeExtract %v4float %144 10 |
| %232 = OpCompositeExtract %_arr_v4float_uint_1 %145 10 |
| %233 = OpCompositeExtract %v4float %146 10 |
| %234 = OpCompositeExtract %uint %147 10 |
| %235 = OpCompositeExtract %uint %148 10 |
| %236 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %229 %230 %231 %232 %233 %234 %235 |
| %237 = OpCompositeExtract %v4float %142 11 |
| %238 = OpCompositeExtract %v4float %143 11 |
| %239 = OpCompositeExtract %v4float %144 11 |
| %240 = OpCompositeExtract %_arr_v4float_uint_1 %145 11 |
| %241 = OpCompositeExtract %v4float %146 11 |
| %242 = OpCompositeExtract %uint %147 11 |
| %243 = OpCompositeExtract %uint %148 11 |
| %244 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToPS %237 %238 %239 %240 %241 %242 %243 |
| %245 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %156 |
| %246 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %164 |
| %247 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %172 |
| %248 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %180 |
| %249 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %188 |
| %250 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %196 |
| %251 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %204 |
| %252 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %212 |
| %253 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %220 |
| %254 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %228 |
| %255 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %236 |
| %256 = OpCompositeConstruct %FVertexFactoryInterpolantsVSToDS %244 |
| %257 = OpLoad %_arr_v4float_uint_12 %in_var_VS_To_DS_Position |
| %258 = OpCompositeExtract %v4float %257 0 |
| %259 = OpCompositeConstruct %FBasePassVSToDS %245 %134 %258 |
| %260 = OpCompositeExtract %v4float %257 1 |
| %261 = OpCompositeConstruct %FBasePassVSToDS %246 %134 %260 |
| %262 = OpCompositeExtract %v4float %257 2 |
| %263 = OpCompositeConstruct %FBasePassVSToDS %247 %134 %262 |
| %264 = OpCompositeExtract %v4float %257 3 |
| %265 = OpCompositeConstruct %FBasePassVSToDS %248 %134 %264 |
| %266 = OpCompositeExtract %v4float %257 4 |
| %267 = OpCompositeConstruct %FBasePassVSToDS %249 %134 %266 |
| %268 = OpCompositeExtract %v4float %257 5 |
| %269 = OpCompositeConstruct %FBasePassVSToDS %250 %134 %268 |
| %270 = OpCompositeExtract %v4float %257 6 |
| %271 = OpCompositeConstruct %FBasePassVSToDS %251 %134 %270 |
| %272 = OpCompositeExtract %v4float %257 7 |
| %273 = OpCompositeConstruct %FBasePassVSToDS %252 %134 %272 |
| %274 = OpCompositeExtract %v4float %257 8 |
| %275 = OpCompositeConstruct %FBasePassVSToDS %253 %134 %274 |
| %276 = OpCompositeExtract %v4float %257 9 |
| %277 = OpCompositeConstruct %FBasePassVSToDS %254 %134 %276 |
| %278 = OpCompositeExtract %v4float %257 10 |
| %279 = OpCompositeConstruct %FBasePassVSToDS %255 %134 %278 |
| %280 = OpCompositeExtract %v4float %257 11 |
| %281 = OpCompositeConstruct %FBasePassVSToDS %256 %134 %280 |
| %282 = OpCompositeConstruct %_arr_FBasePassVSToDS_uint_12 %259 %261 %263 %265 %267 %269 %271 %273 %275 %277 %279 %281 |
| OpStore %param_var_I %282 |
| %283 = OpLoad %uint %gl_InvocationID |
| %284 = OpAccessChain %_ptr_Function_FVertexFactoryInterpolantsVSToDS %param_var_I %283 %int_0 |
| %285 = OpLoad %FVertexFactoryInterpolantsVSToDS %284 |
| %286 = OpCompositeExtract %FVertexFactoryInterpolantsVSToPS %285 0 |
| %287 = OpCompositeExtract %v4float %286 0 |
| %288 = OpCompositeExtract %v4float %286 1 |
| %289 = OpVectorShuffle %v3float %287 %287 0 1 2 |
| %290 = OpVectorShuffle %v3float %288 %288 0 1 2 |
| %291 = OpExtInst %v3float %1 Cross %290 %289 |
| %292 = OpCompositeExtract %float %288 3 |
| %293 = OpCompositeConstruct %v3float %292 %292 %292 |
| %294 = OpFMul %v3float %291 %293 |
| %295 = OpCompositeConstruct %mat3v3float %289 %294 %290 |
| %296 = OpCompositeExtract %float %288 0 |
| %297 = OpCompositeExtract %float %288 1 |
| %298 = OpCompositeExtract %float %288 2 |
| %299 = OpCompositeConstruct %v4float %296 %297 %298 %float_0 |
| %300 = OpAccessChain %_ptr_Function_FVertexFactoryInterpolantsVSToPS %param_var_I %283 %int_0 %int_0 |
| %301 = OpLoad %FVertexFactoryInterpolantsVSToPS %300 |
| %302 = OpCompositeExtract %uint %301 5 |
| %303 = OpIMul %uint %302 %uint_26 |
| %304 = OpIAdd %uint %303 %uint_22 |
| %305 = OpAccessChain %_ptr_Uniform_v4float %View_PrimitiveSceneData %int_0 %304 |
| %306 = OpLoad %v4float %305 |
| %307 = OpVectorShuffle %v3float %306 %306 0 1 2 |
| %308 = OpVectorTimesMatrix %v3float %307 %295 |
| %309 = OpULessThan %bool %283 %uint_2 |
| %310 = OpIAdd %uint %283 %uint_1 |
| %311 = OpSelect %uint %309 %310 %uint_0 |
| %312 = OpIMul %uint %uint_2 %283 |
| %313 = OpIAdd %uint %uint_3 %312 |
| %314 = OpIAdd %uint %312 %uint_4 |
| %315 = OpAccessChain %_ptr_Function_FBasePassVSToDS %param_var_I %283 |
| %316 = OpLoad %FBasePassVSToDS %315 |
| %317 = OpAccessChain %_ptr_Function_v4float %param_var_I %283 %int_2 |
| %318 = OpLoad %v4float %317 |
| %319 = OpAccessChain %_ptr_Function_FVertexFactoryInterpolantsVSToDS %param_var_I %311 %int_0 |
| %320 = OpLoad %FVertexFactoryInterpolantsVSToDS %319 |
| %321 = OpCompositeExtract %FVertexFactoryInterpolantsVSToPS %320 0 |
| %322 = OpCompositeExtract %v4float %321 1 |
| %323 = OpCompositeExtract %float %322 0 |
| %324 = OpCompositeExtract %float %322 1 |
| %325 = OpCompositeExtract %float %322 2 |
| %326 = OpCompositeConstruct %v4float %323 %324 %325 %float_0 |
| %327 = OpAccessChain %_ptr_Function_FVertexFactoryInterpolantsVSToDS %param_var_I %313 %int_0 |
| %328 = OpLoad %FVertexFactoryInterpolantsVSToDS %327 |
| %329 = OpCompositeExtract %FVertexFactoryInterpolantsVSToPS %328 0 |
| %330 = OpCompositeExtract %v4float %329 1 |
| %331 = OpCompositeExtract %float %330 0 |
| %332 = OpCompositeExtract %float %330 1 |
| %333 = OpCompositeExtract %float %330 2 |
| %334 = OpCompositeConstruct %v4float %331 %332 %333 %float_0 |
| %335 = OpAccessChain %_ptr_Function_FVertexFactoryInterpolantsVSToDS %param_var_I %314 %int_0 |
| %336 = OpLoad %FVertexFactoryInterpolantsVSToDS %335 |
| %337 = OpCompositeExtract %FVertexFactoryInterpolantsVSToPS %336 0 |
| %338 = OpCompositeExtract %v4float %337 1 |
| %339 = OpCompositeExtract %float %338 0 |
| %340 = OpCompositeExtract %float %338 1 |
| %341 = OpCompositeExtract %float %338 2 |
| %342 = OpCompositeConstruct %v4float %339 %340 %341 %float_0 |
| %343 = OpLoad %v4float %317 |
| %344 = OpAccessChain %_ptr_Function_v4float %param_var_I %311 %int_2 |
| %345 = OpLoad %v4float %344 |
| %346 = OpFMul %v4float %62 %343 |
| %347 = OpFAdd %v4float %346 %345 |
| %348 = OpFSub %v4float %345 %343 |
| %349 = OpDot %float %348 %299 |
| %350 = OpCompositeConstruct %v4float %349 %349 %349 %349 |
| %351 = OpFMul %v4float %350 %299 |
| %352 = OpFSub %v4float %347 %351 |
| %353 = OpFMul %v4float %352 %136 |
| %354 = OpAccessChain %_ptr_Function_v4float %param_var_I %313 %int_2 |
| %355 = OpLoad %v4float %354 |
| %356 = OpAccessChain %_ptr_Function_v4float %param_var_I %314 %int_2 |
| %357 = OpLoad %v4float %356 |
| %358 = OpFMul %v4float %62 %355 |
| %359 = OpFAdd %v4float %358 %357 |
| %360 = OpFSub %v4float %357 %355 |
| %361 = OpDot %float %360 %334 |
| %362 = OpCompositeConstruct %v4float %361 %361 %361 %361 |
| %363 = OpFMul %v4float %362 %334 |
| %364 = OpFSub %v4float %359 %363 |
| %365 = OpFMul %v4float %364 %136 |
| %366 = OpFAdd %v4float %353 %365 |
| %367 = OpFMul %v4float %366 %137 |
| %368 = OpLoad %v4float %344 |
| %369 = OpLoad %v4float %317 |
| %370 = OpFMul %v4float %62 %368 |
| %371 = OpFAdd %v4float %370 %369 |
| %372 = OpFSub %v4float %369 %368 |
| %373 = OpDot %float %372 %326 |
| %374 = OpCompositeConstruct %v4float %373 %373 %373 %373 |
| %375 = OpFMul %v4float %374 %326 |
| %376 = OpFSub %v4float %371 %375 |
| %377 = OpFMul %v4float %376 %136 |
| %378 = OpLoad %v4float %356 |
| %379 = OpLoad %v4float %354 |
| %380 = OpFMul %v4float %62 %378 |
| %381 = OpFAdd %v4float %380 %379 |
| %382 = OpFSub %v4float %379 %378 |
| %383 = OpDot %float %382 %342 |
| %384 = OpCompositeConstruct %v4float %383 %383 %383 %383 |
| %385 = OpFMul %v4float %384 %342 |
| %386 = OpFSub %v4float %381 %385 |
| %387 = OpFMul %v4float %386 %136 |
| %388 = OpFAdd %v4float %377 %387 |
| %389 = OpFMul %v4float %388 %137 |
| %390 = OpCompositeConstruct %_arr_v4float_uint_3 %318 %367 %389 |
| %391 = OpCompositeConstruct %FPNTessellationHSToDS %316 %390 %308 %float_1 %float_1 |
| %392 = OpCompositeExtract %FVertexFactoryInterpolantsVSToDS %316 0 |
| %393 = OpCompositeExtract %FVertexFactoryInterpolantsVSToPS %392 0 |
| %394 = OpCompositeExtract %v4float %393 0 |
| %395 = OpAccessChain %_ptr_Output_v4float %out_var_TEXCOORD10_centroid %283 |
| OpStore %395 %394 |
| %396 = OpCompositeExtract %v4float %393 1 |
| %397 = OpAccessChain %_ptr_Output_v4float %out_var_TEXCOORD11_centroid %283 |
| OpStore %397 %396 |
| %398 = OpCompositeExtract %v4float %393 2 |
| %399 = OpAccessChain %_ptr_Output_v4float %out_var_COLOR0 %283 |
| OpStore %399 %398 |
| %400 = OpCompositeExtract %_arr_v4float_uint_1 %393 3 |
| %401 = OpAccessChain %_ptr_Output__arr_v4float_uint_1 %out_var_TEXCOORD0 %283 |
| OpStore %401 %400 |
| %402 = OpCompositeExtract %v4float %393 4 |
| %403 = OpAccessChain %_ptr_Output_v4float %out_var_TEXCOORD4 %283 |
| OpStore %403 %402 |
| %404 = OpCompositeExtract %uint %393 5 |
| %405 = OpAccessChain %_ptr_Output_uint %out_var_PRIMITIVE_ID %283 |
| OpStore %405 %404 |
| %406 = OpCompositeExtract %uint %393 6 |
| %407 = OpAccessChain %_ptr_Output_uint %out_var_LIGHTMAP_ID %283 |
| OpStore %407 %406 |
| %408 = OpCompositeExtract %v4float %316 2 |
| %409 = OpAccessChain %_ptr_Output_v4float %out_var_VS_To_DS_Position %283 |
| OpStore %409 %408 |
| %410 = OpAccessChain %_ptr_Output__arr_v4float_uint_3 %out_var_PN_POSITION %283 |
| OpStore %410 %390 |
| %411 = OpAccessChain %_ptr_Output_v3float %out_var_PN_DisplacementScales %283 |
| OpStore %411 %308 |
| %412 = OpAccessChain %_ptr_Output_float %out_var_PN_TessellationMultiplier %283 |
| OpStore %412 %float_1 |
| %413 = OpAccessChain %_ptr_Output_float %out_var_PN_WorldDisplacementMultiplier %283 |
| OpStore %413 %float_1 |
| %414 = OpAccessChain %_ptr_Workgroup_FPNTessellationHSToDS %temp_var_hullMainRetVal %283 |
| OpStore %414 %391 |
| OpControlBarrier %uint_2 %uint_4 %uint_0 |
| %415 = OpIEqual %bool %283 %uint_0 |
| OpSelectionMerge %if_merge None |
| OpBranchConditional %415 %416 %if_merge |
| %416 = OpLabel |
| %417 = OpAccessChain %_ptr_Uniform_mat4v4float %View %int_0 |
| %418 = OpLoad %mat4v4float %417 |
| %419 = OpAccessChain %_ptr_Uniform_mat4v4float %View %int_6 |
| %420 = OpLoad %mat4v4float %419 |
| %421 = OpAccessChain %_ptr_Uniform_v3float %View %int_27 |
| %422 = OpLoad %v3float %421 |
| %423 = OpAccessChain %_ptr_Uniform_float %View %int_77 |
| %424 = OpLoad %float %423 |
| %425 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_0 %int_1 %int_0 |
| %426 = OpLoad %v4float %425 |
| %427 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_0 %int_1 %int_1 |
| %428 = OpLoad %v4float %427 |
| %429 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_0 %int_1 %int_2 |
| %430 = OpLoad %v4float %429 |
| %431 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_1 %int_1 %int_0 |
| %432 = OpLoad %v4float %431 |
| %433 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_1 %int_1 %int_1 |
| %434 = OpLoad %v4float %433 |
| %435 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_1 %int_1 %int_2 |
| %436 = OpLoad %v4float %435 |
| %437 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_2 %int_1 %int_0 |
| %438 = OpLoad %v4float %437 |
| %439 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_2 %int_1 %int_1 |
| %440 = OpLoad %v4float %439 |
| %441 = OpAccessChain %_ptr_Workgroup_v4float %temp_var_hullMainRetVal %uint_2 %int_1 %int_2 |
| %442 = OpLoad %v4float %441 |
| %443 = OpFAdd %v4float %428 %430 |
| %444 = OpFAdd %v4float %443 %434 |
| %445 = OpFAdd %v4float %444 %436 |
| %446 = OpFAdd %v4float %445 %440 |
| %447 = OpFAdd %v4float %446 %442 |
| %448 = OpFMul %v4float %447 %139 |
| %449 = OpFAdd %v4float %438 %432 |
| %450 = OpFAdd %v4float %449 %426 |
| %451 = OpFMul %v4float %450 %136 |
| %452 = OpFSub %v4float %448 %451 |
| %453 = OpFMul %v4float %452 %137 |
| %454 = OpFAdd %v4float %448 %453 |
| %455 = OpAccessChain %_ptr_Workgroup_float %temp_var_hullMainRetVal %uint_1 %int_3 |
| %456 = OpLoad %float %455 |
| %457 = OpAccessChain %_ptr_Workgroup_float %temp_var_hullMainRetVal %uint_2 %int_3 |
| %458 = OpLoad %float %457 |
| %459 = OpFAdd %float %456 %458 |
| %460 = OpFMul %float %float_0_5 %459 |
| %461 = OpCompositeInsert %v4float %460 %140 0 |
| %462 = OpLoad %float %457 |
| %463 = OpAccessChain %_ptr_Workgroup_float %temp_var_hullMainRetVal %uint_0 %int_3 |
| %464 = OpLoad %float %463 |
| %465 = OpFAdd %float %462 %464 |
| %466 = OpFMul %float %float_0_5 %465 |
| %467 = OpCompositeInsert %v4float %466 %461 1 |
| %468 = OpLoad %float %463 |
| %469 = OpLoad %float %455 |
| %470 = OpFAdd %float %468 %469 |
| %471 = OpFMul %float %float_0_5 %470 |
| %472 = OpCompositeInsert %v4float %471 %467 2 |
| %473 = OpLoad %float %463 |
| %474 = OpLoad %float %455 |
| %475 = OpFAdd %float %473 %474 |
| %476 = OpLoad %float %457 |
| %477 = OpFAdd %float %475 %476 |
| %478 = OpFMul %float %float_0_333000004 %477 |
| %479 = OpCompositeInsert %v4float %478 %472 3 |
| %480 = OpVectorShuffle %v3float %426 %426 0 1 2 |
| %481 = OpVectorShuffle %v3float %432 %432 0 1 2 |
| %482 = OpVectorShuffle %v3float %438 %438 0 1 2 |
| OpBranch %483 |
| %483 = OpLabel |
| OpLoopMerge %484 %485 None |
| OpBranch %486 |
| %486 = OpLabel |
| %487 = OpMatrixTimesVector %v4float %420 %76 |
| %488 = OpCompositeExtract %float %426 0 |
| %489 = OpCompositeExtract %float %426 1 |
| %490 = OpCompositeExtract %float %426 2 |
| %491 = OpCompositeConstruct %v4float %488 %489 %490 %float_1 |
| %492 = OpMatrixTimesVector %v4float %418 %491 |
| %493 = OpVectorShuffle %v3float %492 %492 0 1 2 |
| %494 = OpVectorShuffle %v3float %487 %487 0 1 2 |
| %495 = OpFSub %v3float %493 %494 |
| %496 = OpCompositeExtract %float %492 3 |
| %497 = OpCompositeExtract %float %487 3 |
| %498 = OpFAdd %float %496 %497 |
| %499 = OpCompositeConstruct %v3float %498 %498 %498 |
| %500 = OpFOrdLessThan %v3bool %495 %499 |
| %501 = OpSelect %v3int %500 %81 %73 |
| %502 = OpFAdd %v3float %493 %494 |
| %503 = OpFNegate %float %496 |
| %504 = OpFSub %float %503 %497 |
| %505 = OpCompositeConstruct %v3float %504 %504 %504 |
| %506 = OpFOrdGreaterThan %v3bool %502 %505 |
| %507 = OpSelect %v3int %506 %81 %73 |
| %508 = OpIMul %v3int %82 %507 |
| %509 = OpIAdd %v3int %501 %508 |
| %510 = OpCompositeExtract %float %432 0 |
| %511 = OpCompositeExtract %float %432 1 |
| %512 = OpCompositeExtract %float %432 2 |
| %513 = OpCompositeConstruct %v4float %510 %511 %512 %float_1 |
| %514 = OpMatrixTimesVector %v4float %418 %513 |
| %515 = OpVectorShuffle %v3float %514 %514 0 1 2 |
| %516 = OpFSub %v3float %515 %494 |
| %517 = OpCompositeExtract %float %514 3 |
| %518 = OpFAdd %float %517 %497 |
| %519 = OpCompositeConstruct %v3float %518 %518 %518 |
| %520 = OpFOrdLessThan %v3bool %516 %519 |
| %521 = OpSelect %v3int %520 %81 %73 |
| %522 = OpFAdd %v3float %515 %494 |
| %523 = OpFNegate %float %517 |
| %524 = OpFSub %float %523 %497 |
| %525 = OpCompositeConstruct %v3float %524 %524 %524 |
| %526 = OpFOrdGreaterThan %v3bool %522 %525 |
| %527 = OpSelect %v3int %526 %81 %73 |
| %528 = OpIMul %v3int %82 %527 |
| %529 = OpIAdd %v3int %521 %528 |
| %530 = OpBitwiseOr %v3int %509 %529 |
| %531 = OpCompositeExtract %float %438 0 |
| %532 = OpCompositeExtract %float %438 1 |
| %533 = OpCompositeExtract %float %438 2 |
| %534 = OpCompositeConstruct %v4float %531 %532 %533 %float_1 |
| %535 = OpMatrixTimesVector %v4float %418 %534 |
| %536 = OpVectorShuffle %v3float %535 %535 0 1 2 |
| %537 = OpFSub %v3float %536 %494 |
| %538 = OpCompositeExtract %float %535 3 |
| %539 = OpFAdd %float %538 %497 |
| %540 = OpCompositeConstruct %v3float %539 %539 %539 |
| %541 = OpFOrdLessThan %v3bool %537 %540 |
| %542 = OpSelect %v3int %541 %81 %73 |
| %543 = OpFAdd %v3float %536 %494 |
| %544 = OpFNegate %float %538 |
| %545 = OpFSub %float %544 %497 |
| %546 = OpCompositeConstruct %v3float %545 %545 %545 |
| %547 = OpFOrdGreaterThan %v3bool %543 %546 |
| %548 = OpSelect %v3int %547 %81 %73 |
| %549 = OpIMul %v3int %82 %548 |
| %550 = OpIAdd %v3int %542 %549 |
| %551 = OpBitwiseOr %v3int %530 %550 |
| %552 = OpINotEqual %v3bool %551 %74 |
| %553 = OpAny %bool %552 |
| OpSelectionMerge %554 None |
| OpBranchConditional %553 %555 %554 |
| %555 = OpLabel |
| OpBranch %484 |
| %554 = OpLabel |
| %556 = OpFSub %v3float %480 %481 |
| %557 = OpFSub %v3float %481 %482 |
| %558 = OpFSub %v3float %482 %480 |
| %559 = OpFAdd %v3float %480 %481 |
| %560 = OpFMul %v3float %77 %559 |
| %561 = OpFSub %v3float %560 %422 |
| %562 = OpFAdd %v3float %481 %482 |
| %563 = OpFMul %v3float %77 %562 |
| %564 = OpFSub %v3float %563 %422 |
| %565 = OpFAdd %v3float %482 %480 |
| %566 = OpFMul %v3float %77 %565 |
| %567 = OpFSub %v3float %566 %422 |
| %568 = OpDot %float %557 %557 |
| %569 = OpDot %float %564 %564 |
| %570 = OpFDiv %float %568 %569 |
| %571 = OpExtInst %float %1 Sqrt %570 |
| %572 = OpDot %float %558 %558 |
| %573 = OpDot %float %567 %567 |
| %574 = OpFDiv %float %572 %573 |
| %575 = OpExtInst %float %1 Sqrt %574 |
| %576 = OpDot %float %556 %556 |
| %577 = OpDot %float %561 %561 |
| %578 = OpFDiv %float %576 %577 |
| %579 = OpExtInst %float %1 Sqrt %578 |
| %580 = OpCompositeConstruct %v4float %571 %575 %579 %float_1 |
| %581 = OpFAdd %float %571 %575 |
| %582 = OpFAdd %float %581 %579 |
| %583 = OpFMul %float %float_0_333000004 %582 |
| %584 = OpCompositeInsert %v4float %583 %580 3 |
| %585 = OpCompositeConstruct %v4float %424 %424 %424 %424 |
| %586 = OpFMul %v4float %585 %584 |
| OpBranch %484 |
| %485 = OpLabel |
| OpBranch %483 |
| %484 = OpLabel |
| %587 = OpPhi %v4float %76 %555 %586 %554 |
| %588 = OpFMul %v4float %479 %587 |
| %589 = OpExtInst %v4float %1 FClamp %588 %67 %69 |
| %590 = OpCompositeExtract %float %589 0 |
| %591 = OpCompositeExtract %float %589 1 |
| %592 = OpCompositeExtract %float %589 2 |
| %593 = OpCompositeExtract %float %589 3 |
| %594 = OpAccessChain %_ptr_Output_float %gl_TessLevelOuter %uint_0 |
| OpStore %594 %590 |
| %595 = OpAccessChain %_ptr_Output_float %gl_TessLevelOuter %uint_1 |
| OpStore %595 %591 |
| %596 = OpAccessChain %_ptr_Output_float %gl_TessLevelOuter %uint_2 |
| OpStore %596 %592 |
| %597 = OpAccessChain %_ptr_Output_float %gl_TessLevelInner %uint_0 |
| OpStore %597 %593 |
| OpStore %out_var_PN_POSITION9 %454 |
| OpBranch %if_merge |
| %if_merge = OpLabel |
| OpReturn |
| OpFunctionEnd |