r600g: fix F2U opcode translation
authorDave Airlie <airlied@redhat.com>
Sat, 4 Aug 2012 11:39:30 +0000 (13:39 +0200)
committerMarek Olšák <maraeo@gmail.com>
Sat, 4 Aug 2012 11:45:27 +0000 (13:45 +0200)
Signed-off-by: Marek Olšák <maraeo@gmail.com>
src/gallium/drivers/r600/r600_shader.c

index 1fa519d..2422d00 100644 (file)
@@ -3424,7 +3424,7 @@ static int tgsi_f2i(struct r600_shader_ctx *ctx)
                alu.src[0].sel = ctx->temp_reg;
                alu.src[0].chan = i;
 
-               if (i == last_inst)
+               if (i == last_inst || alu.inst == EG_V_SQ_ALU_WORD1_OP2_SQ_OP2_INST_FLT_TO_UINT)
                        alu.last = 1;
                r = r600_bytecode_add_alu(ctx->bc, &alu);
                if (r)