From: Samuel Pitoiset Date: Sun, 29 Nov 2015 14:50:09 +0000 (+0100) Subject: nv50/ir: do not call textureMask() for surface ops X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c672bf3b043ffd1b29d796f9c52a79d1014397ae;p=mesa.git 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 --- 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);