From c95f821cb4286f8163bfdf341be2b0940011585a Mon Sep 17 00:00:00 2001 From: Ilia Mirkin Date: Thu, 9 Feb 2017 15:35:51 -0500 Subject: nvc0/ir: fix ubo max clamp, reset file index We just increased the max UBO, so we should also increase the clamp that we do for robustness. Similarly, as we're including the fileIndex in the new indirect value, we should reset fileIndex to 0 so that it is not added in a second time. Signed-off-by: Ilia Mirkin Reviewed-by: Samuel Pitoiset Cc: mesa-stable@lists.freedesktop.org --- src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp') diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp index c71fd696ca0..732e1a93b42 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp @@ -2406,10 +2406,12 @@ NVC0LoweringPass::handleLDST(Instruction *i) if (ind) { // Clamp the UBO index when an indirect access is used to avoid // loading information from the wrong place in the driver cb. + // TODO - synchronize the max with the driver. ind = bld.mkOp2v(OP_MIN, TYPE_U32, ind, bld.mkOp2v(OP_ADD, TYPE_U32, bld.getSSA(), ind, bld.loadImm(NULL, fileIndex)), - bld.loadImm(NULL, 12)); + bld.loadImm(NULL, 13)); + fileIndex = 0; } Value *offset = bld.loadImm(NULL, i->getSrc(0)->reg.data.offset + typeSizeof(i->sType)); -- cgit v1.2.3