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 <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Cc: mesa-stable@lists.freedesktop.org
This commit is contained in:
Ilia Mirkin 2017-02-09 15:35:51 -05:00
parent e4a698cb97
commit c95f821cb4
1 changed files with 3 additions and 1 deletions

View File

@ -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));