Module: Mesa Branch: master Commit: f3f8615d76b20ad66466b172a600e06b9a833729 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f3f8615d76b20ad66466b172a600e06b9a833729
Author: Dave Airlie <[email protected]> Date: Mon Nov 13 15:40:15 2017 +1000 r600: fix isoline tess factor component swapping. As per radeonsi, the tess factor components for isolines are reversed. Fixes: tests/spec/arb_tessellation_shader/execution/isoline.shader_test Cc: <[email protected]> Signed-off-by: Dave Airlie <[email protected]> --- src/gallium/drivers/r600/r600_shader.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index c6e445744e..146c26ce1a 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -2884,6 +2884,13 @@ static int r600_emit_tess_factor(struct r600_shader_ctx *ctx) int out_idx = i >= outer_comps ? tessinner_idx : tessouter_idx; int out_comp = i >= outer_comps ? i - outer_comps : i; + if (ctx->shader->tcs_prim_mode == PIPE_PRIM_LINES) { + if (out_comp == 1) + out_comp = 0; + else if (out_comp == 0) + out_comp = 1; + } + r = single_alu_op2(ctx, ALU_OP2_ADD_INT, treg[i / 2], (2 * (i % 2)), temp_reg, 0, _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
