gallivm: do texture swizzle after shadow compare
We need to swizzle after the shadow comparison so that the GL_DEPTH_MODE functionality is handled properly. This fixes all the piglit glsl-fs-shadow2d*.shader_test cases, except for glsl-fs-shadow2dproj-bias.shader_test which fails because of a bug in the GLSL compiler (fd.o 32395).
This commit is contained in:
parent
68c41a25b4
commit
dfbc20593e
|
@ -1098,6 +1098,4 @@ lp_build_sample_aos(struct lp_build_sample_context *bld,
|
||||||
texel_out[2] = unswizzled[2];
|
texel_out[2] = unswizzled[2];
|
||||||
texel_out[3] = unswizzled[3];
|
texel_out[3] = unswizzled[3];
|
||||||
}
|
}
|
||||||
|
|
||||||
apply_sampler_swizzle(bld, texel_out);
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -187,8 +187,6 @@ lp_build_sample_texel_soa(struct lp_build_sample_context *bld,
|
||||||
border_chan_vec, texel_out[chan]);
|
border_chan_vec, texel_out[chan]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
apply_sampler_swizzle(bld, texel_out);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -1268,4 +1266,6 @@ lp_build_sample_soa(struct gallivm_state *gallivm,
|
||||||
}
|
}
|
||||||
|
|
||||||
lp_build_sample_compare(&bld, r, texel_out);
|
lp_build_sample_compare(&bld, r, texel_out);
|
||||||
|
|
||||||
|
apply_sampler_swizzle(&bld, texel_out);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue