From: Dave Airlie Date: Thu, 11 Apr 2013 04:51:35 +0000 (+0100) Subject: r600g: fix two issues in compressed msaa reading code X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=184278a804bb92b998b46c1f8db8b516cd7dcf21;p=mesa.git r600g: fix two issues in compressed msaa reading code I've no idea when sample_chan would ever be 4 here, but 4 is most definitely wrong, array textures have it as 3 as well. Also the cayman code though unused is obviously wrong. Signed-off-by: Dave Airlie --- diff --git a/src/gallium/drivers/r600/r600_shader.c b/src/gallium/drivers/r600/r600_shader.c index f8017072228..6dbca505cbe 100644 --- a/src/gallium/drivers/r600/r600_shader.c +++ b/src/gallium/drivers/r600/r600_shader.c @@ -4504,7 +4504,7 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) * Then fetch the texel with src. */ if (read_compressed_msaa) { - unsigned sample_chan = inst->Texture.Texture == TGSI_TEXTURE_2D_MSAA ? 3 : 4; + unsigned sample_chan = 3; unsigned temp = r600_get_temp(ctx); assert(src_loaded); @@ -4535,7 +4535,7 @@ static int tgsi_tex(struct r600_shader_ctx *ctx) if (ctx->bc->chip_class == CAYMAN) { for (i = 0 ; i < 4; i++) { memset(&alu, 0, sizeof(struct r600_bytecode_alu)); - alu.op = ctx->inst_info->op; + alu.op = ALU_OP2_MULLO_INT; alu.src[0].sel = src_gpr; alu.src[0].chan = sample_chan; alu.src[1].sel = V_SQ_ALU_SRC_LITERAL;