From c672bf3b043ffd1b29d796f9c52a79d1014397ae Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Sun, 29 Nov 2015 15:50:09 +0100 Subject: [PATCH] nv50/ir: do not call textureMask() for surface ops That texture mask thing doesn't seem to be needed for surface ops, so just as nve4+, let do that only for texture ops. This fixes a segfault with 'test_surface_st' from gallium/tests/trivial/compute.c on Fermi because this test uses sustp. Signed-off-by: Samuel Pitoiset Reviewed-by: Ilia Mirkin --- src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp index 41d2cc9167c..16d87e3e762 100644 --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_ra.cpp @@ -2084,7 +2084,8 @@ RegAlloc::InsertConstraintsPass::texConstraintNVC0(TexInstruction *tex) { int n, s; - textureMask(tex); + if (isTextureOp(tex->op)) + textureMask(tex); if (tex->op == OP_TXQ) { s = tex->srcCount(0xff); -- 2.30.2