bgfx/3rdparty/glsl-optimizer/tests/fragment/z-fxaa3-11-pc39-out.txt
2014-10-11 12:32:43 -07:00

541 lines
19 KiB
Text

#extension GL_ARB_shader_texture_lod : enable
uniform sampler2D _MainTex;
uniform vec4 _MainTex_TexelSize;
varying vec2 xlv_TEXCOORD0;
void main ()
{
vec2 fxaaQualityRcpFrame_1;
fxaaQualityRcpFrame_1 = _MainTex_TexelSize.xy;
vec4 tmpvar_2;
float subpixH_3;
float pixelOffset_4;
float spanLengthRcp_5;
bool goodSpanP_6;
bool goodSpanN_7;
float dstP_8;
float dstN_9;
bool doneNP_10;
bool doneP_11;
bool doneN_12;
bool lumaMLTZero_13;
float subpixF_14;
float gradientScaled_15;
float lumaEndP_16;
float subpixE_17;
float lumaEndN_18;
float subpixD_19;
vec2 posP_20;
vec2 posN_21;
vec2 posB_22;
bool pairN_23;
float lumaSS_24;
float lumaNN_25;
float gradientS_26;
float gradientN_27;
float subpixB_28;
float subpixA_29;
bool horzSpan_30;
float lengthSign_31;
float lumaNWSW_32;
float lumaNESE_33;
float subpixRcpRange_34;
float lumaWE_35;
float lumaNS_36;
float range_37;
float lumaN_38;
float lumaS_39;
vec2 posM_40;
posM_40 = xlv_TEXCOORD0;
vec4 tmpvar_41;
tmpvar_41 = texture2DLod (_MainTex, xlv_TEXCOORD0, 0.0);
vec4 tmpvar_42;
tmpvar_42.zw = vec2(0.0, 0.0);
tmpvar_42.xy = (xlv_TEXCOORD0 + (vec2(0.0, 1.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_43;
tmpvar_43 = texture2DLod (_MainTex, tmpvar_42.xy, 0.0);
lumaS_39 = tmpvar_43.w;
vec4 tmpvar_44;
tmpvar_44.zw = vec2(0.0, 0.0);
tmpvar_44.xy = (xlv_TEXCOORD0 + (vec2(1.0, 0.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_45;
tmpvar_45 = texture2DLod (_MainTex, tmpvar_44.xy, 0.0);
float tmpvar_46;
tmpvar_46 = tmpvar_45.w;
vec4 tmpvar_47;
tmpvar_47.zw = vec2(0.0, 0.0);
tmpvar_47.xy = (xlv_TEXCOORD0 + (vec2(0.0, -1.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_48;
tmpvar_48 = texture2DLod (_MainTex, tmpvar_47.xy, 0.0);
lumaN_38 = tmpvar_48.w;
vec4 tmpvar_49;
tmpvar_49.zw = vec2(0.0, 0.0);
tmpvar_49.xy = (xlv_TEXCOORD0 + (vec2(-1.0, 0.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_50;
tmpvar_50 = texture2DLod (_MainTex, tmpvar_49.xy, 0.0);
float tmpvar_51;
tmpvar_51 = tmpvar_50.w;
float tmpvar_52;
tmpvar_52 = max (max (tmpvar_48.w, tmpvar_50.w), max (max (tmpvar_45.w, tmpvar_43.w), tmpvar_41.w));
range_37 = (tmpvar_52 - min (min (tmpvar_48.w, tmpvar_50.w), min (
min (tmpvar_45.w, tmpvar_43.w)
, tmpvar_41.w)));
if ((range_37 < max (0.0833, (tmpvar_52 * 0.166)))) {
tmpvar_2 = tmpvar_41;
} else {
vec4 tmpvar_53;
tmpvar_53.zw = vec2(0.0, 0.0);
tmpvar_53.xy = (xlv_TEXCOORD0 - _MainTex_TexelSize.xy);
vec4 tmpvar_54;
tmpvar_54 = texture2DLod (_MainTex, tmpvar_53.xy, 0.0);
vec4 tmpvar_55;
tmpvar_55.zw = vec2(0.0, 0.0);
tmpvar_55.xy = (xlv_TEXCOORD0 + _MainTex_TexelSize.xy);
vec4 tmpvar_56;
tmpvar_56 = texture2DLod (_MainTex, tmpvar_55.xy, 0.0);
vec4 tmpvar_57;
tmpvar_57.zw = vec2(0.0, 0.0);
tmpvar_57.xy = (xlv_TEXCOORD0 + (vec2(1.0, -1.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_58;
tmpvar_58 = texture2DLod (_MainTex, tmpvar_57.xy, 0.0);
vec4 tmpvar_59;
tmpvar_59.zw = vec2(0.0, 0.0);
tmpvar_59.xy = (xlv_TEXCOORD0 + (vec2(-1.0, 1.0) * _MainTex_TexelSize.xy));
vec4 tmpvar_60;
tmpvar_60 = texture2DLod (_MainTex, tmpvar_59.xy, 0.0);
lumaNS_36 = (tmpvar_48.w + tmpvar_43.w);
lumaWE_35 = (tmpvar_50.w + tmpvar_45.w);
subpixRcpRange_34 = (1.0/(range_37));
lumaNESE_33 = (tmpvar_58.w + tmpvar_56.w);
lumaNWSW_32 = (tmpvar_54.w + tmpvar_60.w);
lengthSign_31 = fxaaQualityRcpFrame_1.x;
horzSpan_30 = ((abs(
((-2.0 * tmpvar_50.w) + lumaNWSW_32)
) + (
(abs(((-2.0 * tmpvar_41.w) + lumaNS_36)) * 2.0)
+
abs(((-2.0 * tmpvar_45.w) + lumaNESE_33))
)) >= (abs(
((-2.0 * tmpvar_43.w) + (tmpvar_60.w + tmpvar_56.w))
) + (
(abs(((-2.0 * tmpvar_41.w) + lumaWE_35)) * 2.0)
+
abs(((-2.0 * tmpvar_48.w) + (tmpvar_54.w + tmpvar_58.w)))
)));
subpixA_29 = (((lumaNS_36 + lumaWE_35) * 2.0) + (lumaNWSW_32 + lumaNESE_33));
if (!(horzSpan_30)) {
lumaN_38 = tmpvar_51;
};
if (!(horzSpan_30)) {
lumaS_39 = tmpvar_46;
};
if (horzSpan_30) {
lengthSign_31 = fxaaQualityRcpFrame_1.y;
};
subpixB_28 = ((subpixA_29 * 0.0833333) - tmpvar_41.w);
gradientN_27 = (lumaN_38 - tmpvar_41.w);
gradientS_26 = (lumaS_39 - tmpvar_41.w);
lumaNN_25 = (lumaN_38 + tmpvar_41.w);
lumaSS_24 = (lumaS_39 + tmpvar_41.w);
pairN_23 = (abs(gradientN_27) >= abs(gradientS_26));
float tmpvar_61;
tmpvar_61 = max (abs(gradientN_27), abs(gradientS_26));
if (pairN_23) {
lengthSign_31 = -(lengthSign_31);
};
float tmpvar_62;
tmpvar_62 = clamp ((abs(subpixB_28) * subpixRcpRange_34), 0.0, 1.0);
posB_22 = posM_40;
float tmpvar_63;
if (!(horzSpan_30)) {
tmpvar_63 = 0.0;
} else {
tmpvar_63 = fxaaQualityRcpFrame_1.x;
};
float tmpvar_64;
if (horzSpan_30) {
tmpvar_64 = 0.0;
} else {
tmpvar_64 = fxaaQualityRcpFrame_1.y;
};
if (!(horzSpan_30)) {
posB_22.x = (xlv_TEXCOORD0.x + (lengthSign_31 * 0.5));
};
if (horzSpan_30) {
posB_22.y = (xlv_TEXCOORD0.y + (lengthSign_31 * 0.5));
};
posN_21.x = (posB_22.x - tmpvar_63);
posN_21.y = (posB_22.y - tmpvar_64);
posP_20.x = (posB_22.x + tmpvar_63);
posP_20.y = (posB_22.y + tmpvar_64);
subpixD_19 = ((-2.0 * tmpvar_62) + 3.0);
vec4 tmpvar_65;
tmpvar_65 = texture2DLod (_MainTex, posN_21, 0.0);
lumaEndN_18 = tmpvar_65.w;
subpixE_17 = (tmpvar_62 * tmpvar_62);
vec4 tmpvar_66;
tmpvar_66 = texture2DLod (_MainTex, posP_20, 0.0);
lumaEndP_16 = tmpvar_66.w;
if (!(pairN_23)) {
lumaNN_25 = lumaSS_24;
};
gradientScaled_15 = (tmpvar_61 / 4.0);
subpixF_14 = (subpixD_19 * subpixE_17);
lumaMLTZero_13 = ((tmpvar_41.w - (lumaNN_25 * 0.5)) < 0.0);
lumaEndN_18 = (tmpvar_65.w - (lumaNN_25 * 0.5));
lumaEndP_16 = (tmpvar_66.w - (lumaNN_25 * 0.5));
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - tmpvar_63);
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - tmpvar_64);
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + tmpvar_63);
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + tmpvar_64);
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - tmpvar_63);
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - tmpvar_64);
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + tmpvar_63);
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + tmpvar_64);
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - tmpvar_63);
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - tmpvar_64);
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + tmpvar_63);
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + tmpvar_64);
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - tmpvar_63);
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - tmpvar_64);
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + tmpvar_63);
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + tmpvar_64);
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 1.5));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 1.5));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 1.5));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 1.5));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 2.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 2.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 2.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 2.0));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 2.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 2.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 2.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 2.0));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 2.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 2.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 2.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 2.0));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 2.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 2.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 2.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 2.0));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 4.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 4.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 4.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 4.0));
};
if (doneNP_10) {
if (!(doneN_12)) {
lumaEndN_18 = texture2DLod (_MainTex, posN_21, 0.0).w;
};
if (!(doneP_11)) {
lumaEndP_16 = texture2DLod (_MainTex, posP_20, 0.0).w;
};
if (!(doneN_12)) {
lumaEndN_18 = (lumaEndN_18 - (lumaNN_25 * 0.5));
};
if (!(doneP_11)) {
lumaEndP_16 = (lumaEndP_16 - (lumaNN_25 * 0.5));
};
doneN_12 = (abs(lumaEndN_18) >= gradientScaled_15);
doneP_11 = (abs(lumaEndP_16) >= gradientScaled_15);
if (!(doneN_12)) {
posN_21.x = (posN_21.x - (tmpvar_63 * 8.0));
};
if (!(doneN_12)) {
posN_21.y = (posN_21.y - (tmpvar_64 * 8.0));
};
doneNP_10 = !((doneN_12 && doneP_11));
if (!(doneP_11)) {
posP_20.x = (posP_20.x + (tmpvar_63 * 8.0));
};
if (!(doneP_11)) {
posP_20.y = (posP_20.y + (tmpvar_64 * 8.0));
};
};
};
};
};
};
};
};
};
};
};
dstN_9 = (xlv_TEXCOORD0.x - posN_21.x);
dstP_8 = (posP_20.x - xlv_TEXCOORD0.x);
if (!(horzSpan_30)) {
dstN_9 = (xlv_TEXCOORD0.y - posN_21.y);
};
if (!(horzSpan_30)) {
dstP_8 = (posP_20.y - xlv_TEXCOORD0.y);
};
goodSpanN_7 = ((lumaEndN_18 < 0.0) != lumaMLTZero_13);
goodSpanP_6 = ((lumaEndP_16 < 0.0) != lumaMLTZero_13);
spanLengthRcp_5 = (1.0/((dstP_8 + dstN_9)));
float tmpvar_67;
tmpvar_67 = min (dstN_9, dstP_8);
bool tmpvar_68;
if ((dstN_9 < dstP_8)) {
tmpvar_68 = goodSpanN_7;
} else {
tmpvar_68 = goodSpanP_6;
};
pixelOffset_4 = ((tmpvar_67 * -(spanLengthRcp_5)) + 0.5);
subpixH_3 = ((subpixF_14 * subpixF_14) * 0.75);
float tmpvar_69;
if (tmpvar_68) {
tmpvar_69 = pixelOffset_4;
} else {
tmpvar_69 = 0.0;
};
float tmpvar_70;
tmpvar_70 = max (tmpvar_69, subpixH_3);
if (!(horzSpan_30)) {
posM_40.x = (xlv_TEXCOORD0.x + (tmpvar_70 * lengthSign_31));
};
if (horzSpan_30) {
posM_40.y = (xlv_TEXCOORD0.y + (tmpvar_70 * lengthSign_31));
};
vec4 tmpvar_71;
tmpvar_71.xyz = texture2DLod (_MainTex, posM_40, 0.0).xyz;
tmpvar_71.w = tmpvar_41.w;
tmpvar_2 = tmpvar_71;
};
gl_FragData[0] = tmpvar_2;
}
// stats: 401 alu 32 tex 110 flow
// inputs: 1
// #0: xlv_TEXCOORD0 (high float) 2x1 [-1]
// uniforms: 1 (total size: 0)
// #0: _MainTex_TexelSize (high float) 4x1 [-1]
// textures: 1
// #0: _MainTex (high 2d) 0x0 [-1]