From b693787fdf82d065c548e80944aad14e9ba64def Mon Sep 17 00:00:00 2001 From: Vadim Girlin Date: Wed, 6 Jul 2011 05:29:09 +0400 Subject: [PATCH] r600g: RSQ: clear NEG for operand Need to clear NEG bit because it applies after ABS, e.g. "RSQ ..., -1" uses -|1| as operand. Signed-off-by: Vadim Girlin --- 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 f3cbf9807fd..5aad3e359bc 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -1506,6 +1506,7 @@ static int tgsi_rsq(struct r600_shader_ctx *ctx) for (i = 0; i < inst->Instruction.NumSrcRegs; i++) { r600_bc_src(&alu.src[i], &ctx->src[i], 0); alu.src[i].abs = 1; + alu.src[i].neg = 0; } alu.dst.sel = ctx->temp_reg; alu.dst.write = 1;