[Mesa-dev] [PATCH] nvc0/ir: fix images indirect access on Fermi

Samuel Pitoiset samuel.pitoiset at gmail.com
Sun Jul 10 14:26:55 UTC 2016



On 07/10/2016 04:23 PM, Ilia Mirkin wrote:
> Do you also need to zero out su->tex.r ?

Nope, because it's only used when rIndirectSrc < 0 (ie. no indirection).

>
>
> On Jul 10, 2016 10:19 AM, "Samuel Pitoiset" <samuel.pitoiset at gmail.com
> <mailto:samuel.pitoiset at gmail.com>> wrote:
>
>     This fixes the following piglits:
>
>     arb_arrays_of_arrays-basic-imagestore-mixed-const-non-const-uniform-index
>     arb_arrays_of_arrays-basic-imagestore-mixed-const-non-const-uniform-index2
>
>     Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com
>     <mailto:samuel.pitoiset at gmail.com>>
>     Cc: 12.0 <mesa-stable at lists.freedesktop.org
>     <mailto:mesa-stable at lists.freedesktop.org>>
>     ---
>
>     Expect minor conflicts because I did refactor that logic but the
>     patch has not
>     been backported.
>
>      src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp | 7
>     +++++++
>      1 file changed, 7 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 9735773..18955eb 100644
>     --- a/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
>     +++ b/src/gallium/drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp
>     @@ -2008,6 +2008,13 @@
>     NVC0LoweringPass::processSurfaceCoordsNVC0(TexInstruction *su)
>
>         adjustCoordinatesMS(su);
>
>     +   if (ind) {
>     +      Value *ptr;
>     +      ptr = bld.mkOp2v(OP_ADD, TYPE_U32, bld.getSSA(), ind,
>     bld.mkImm(su->tex.r));
>     +      ptr = bld.mkOp2v(OP_AND, TYPE_U32, bld.getSSA(), ptr,
>     bld.mkImm(7));
>     +      su->setIndirectR(ptr);
>     +   }
>     +
>         // get surface coordinates
>         for (c = 0; c < arg; ++c)
>            src[c] = su->getSrc(c);
>     --
>     2.9.0
>
>     _______________________________________________
>     mesa-dev mailing list
>     mesa-dev at lists.freedesktop.org <mailto:mesa-dev at lists.freedesktop.org>
>     https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>


More information about the mesa-dev mailing list