From 9339f8ac1bc41942c77db6fbbe0dccab42efad4c Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Thu, 24 Apr 2014 00:45:19 -0400 Subject: [PATCH] nvc0/ir: fetch shadow value from proper place for TG4 cube array Signed-off-by: Ilia Mirkin --- src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp index ea545c21415..fc418bf4e3c 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp @@ -1683,7 +1683,10 @@ Converter::handleTEX(Value *dst[4], int R, int S, int L, int C, int Dx, int Dy) if (C == 0x0f) C = 0x00 | MAX2(tgt.getArgCount(), 2); // guess DC src - if (tgt.isShadow()) + if (tgsi.getOpcode() == TGSI_OPCODE_TG4 && + tgt == TEX_TARGET_CUBE_ARRAY_SHADOW) + shd = fetchSrc(1, 0); + else if (tgt.isShadow()) shd = fetchSrc(C >> 4, C & 3); if (texi->op == OP_TXD) { -- 2.30.2