From c6cfc54db059310c41d139c4d01929928d031b55 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Tue, 4 Feb 2014 10:48:42 +1000 Subject: [PATCH] r600g: properly propogate clip dist write value This moves the value from the GS shader to the copy shader so the registers are setup correctly. fixes tests/spec/glsl-1.50/execution/geometry/clip-distance-out-values.shader_test Signed-off-by: Dave Airlie Reviewed-by: Alex Deucher --- src/gallium/drivers/r600/r600_shader.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index 213b1c9db81..755fa91f8ae 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1287,6 +1287,7 @@ static int generate_gs_copy_shader(struct r600_context *rctx, case TGSI_SEMANTIC_CLIPDIST: /* spi_sid is 0 for clipdistance outputs that were generated * for clipvertex - we don't need to pass them to PS */ + ctx.shader->clip_dist_write = gs->shader.clip_dist_write; if (out->spi_sid) { /* duplicate it as PARAM to pass to the pixel shader */ output.array_base = next_param++; -- 2.30.2