//
// Generated by Microsoft (R) HLSL Shader Compiler 9.26.952.2844
//
// Parameters:
//
//   sampler2D g_AlbedoTex;
//   
//   struct
//   {
//       float4 MinRangeX;
//       float4 MinRangeY;
//       float4 MaxRangeX;
//       float4 MaxRangeY;
//       row_major float4x4 eye2lightMtx;
//       float4 OrthoShiftU;
//       float4 OrthoShiftV;
//       float4 OrthoShiftZ;
//       float4 OrthoScaleU;
//       float4 OrthoScaleV;
//       float4 OrthoScaleZ;
//       float4 softShadowFixedSpread;
//       float4 softShadowSpreadRatio;
//       float4 noiseScale;
//
//   } g_Parallel;
//   
//   sampler2D g_SceneDepthTex;
//   
//   struct
//   {
//       float4 shadowFactors;
//       float4 lightDirPos;
//       float4 params;
//
//   } g_ShadowCommon;
//   
//   sampler2D g_ShadowMapTex;
//
//
// Registers:
//
//   Name            Reg   Size
//   --------------- ----- ----
//   g_ShadowCommon  c150     1
//   g_Parallel      c153    14
//   g_SceneDepthTex s0       1
//   g_ShadowMapTex  s4       1
//   g_AlbedoTex     s6       1
//

    ps_3_0
    def c0, 1, 0, 0.99000001, -0.5

def c220, 0, 0, 0.0625, 0
dcl_2d s14
dcl_texcoord8 v8

    dcl_texcoord v0
    dcl_texcoord1 v1.xyw
    dcl_2d s0
    dcl_2d s4
    dcl_2d s6
    mul r0, c0.xxyy, v0.xyxx
    texldl r0, r0, s0
    mad r0.x, r0.x, -v1.y, c0.x
    rcp r0.x, r0.x
    mul r0.y, r0.x, v1.x
    mad r0.x, v1.x, r0.x, -c150.y
    mul_sat r0.x, r0.x, c150.z
    add_pp r0.x, -r0.x, c0.x
    mul r0.zw, c0.xyxy, v1.w

    mad r0.zw, v0, r0.y, r0

texldl r24, c220.z, s14
add r24.y,  r0.y, -r24.y
mul r24.x, r24.x, r24.y
mul r24.x, r24.x, v8.x
add  r0.z,  r0.z, -r24.x


    mul r1.xyz, r0.w, c158
    mad r1.xyz, r0.z, c157, r1
    mad r0.yzw, r0.y, c159.xxyz, r1.xxyz
    add r0.yzw, r0, c160.xxyz
    add r1, r0.z, -c156
    cmp r1, r1, c0.y, c0.x
    add r2, r0.z, -c154
    cmp r1, r2, r1, c0.y
    add r2, r0.y, -c155
    cmp r1, r2, c0.y, r1
    add r2, r0.y, -c153
    cmp r1, r2, r1, c0.y
    mad r1, r1.x, -c0.yxxx, r1
    max r2, r1, c0.y
    mad r1, r2.y, -c0.yyxx, r2
    max r2, r1, c0.y
    mad r1, r2.z, -c0.yyyx, r2
    max r2, r1, c0.y
    dp4 r1.x, r2, c164
    dp4 r1.y, r2, c165
    dp4 r1.z, r2, c166
    dp4 r3.x, r2, c161
    dp4 r3.y, r2, c162
    dp4 r3.z, r2, c163
    dp4 r1.w, r2, c0.x
    cmp r1.w, -r1.w, c0.y, c0.x
    mad r0.yzw, r0, r1.xxyz, r3.xxyz
    mul r0.yzw, r1.w, r0
    min r1.z, r0.w, c0.z
    mad r1.xyw, r0.yzzy, c0.xxzy, c0.yyzx
    texldp r1, r1, s4
    add_pp r0.y, -r1.x, c0.x
    mul_pp r0.y, r0.y, c150.x
    mul_pp r0.x, r0.x, r0.y
    texld_pp r1, v0, s6
    add r0.y, r1.w, c0.w
    cmp_pp r0.y, r0.y, c0.x, c0.y
    mul_pp oC0, r0.x, r0.y

// approximately 49 instruction slots used (4 texture, 45 arithmetic)
 
