This patch breaks a bunch of piglit tests, see a short list below:
bin/arb_texture_barrier-blending-in-shader 512 42 1 128 7 -auto -fbo
bin/arb_texture_buffer_object-formats vs core -auto -fbo
bin/texelFetch 140 vs sampler2DRect -auto -fbo
bin/mesa_pack_invert-readpixels -auto -fbo
...
Around 150 regressions.
I suspect the moveSources() to be wrong just because texture arguments
are crazy. :-)
On 10/21/2016 08:30 AM, Ilia Mirkin wrote:
Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu>
---
src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
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 68f2b15..4181422 100644
--- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
+++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
@@ -662,6 +662,15 @@ NVC0LoweringPass::handleTEX(TexInstruction *i)
}
}
+ ImmediateValue lod;
+ if (!i->tex.target.isMS() && (i->op == OP_TXL || i->op == OP_TXF) &&
+ i->src(arg).getImmediate(lod) && lod.isInteger(0)) {
+ if (i->op == OP_TXL)
+ i->op = OP_TEX;
+ i->tex.levelZero = true;
+ i->moveSources(arg, -1);
+ }
+
// Arguments to the TEX instruction are a little insane. Even though the
// encoding is identical between SM20 and SM30, the arguments mean
// different things between Fermi and Kepler+. A lot of arguments are
--
-Samuel
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev