OSDN Git Service

nv50/ir: avoid messing up arg1 of PFETCH
authorIlia Mirkin <imirkin@alum.mit.edu>
Sat, 23 May 2015 05:57:41 +0000 (01:57 -0400)
committerIlia Mirkin <imirkin@alum.mit.edu>
Sun, 24 May 2015 02:15:15 +0000 (22:15 -0400)
commitfa7f9f123b70f313d3c073b52c9c16b4b8df28f8
tree9bfa8d3abe58af174cc13a0818026ae6ab8139f6
parentf972b223c4cb4ec58a9451cbac5d120ac9deb336
nv50/ir: avoid messing up arg1 of PFETCH

There can be scenarios where the "indirect" arg of a PFETCH becomes
known, and so the code will attempt to propagate it. Use this
opportunity to just fold it into the first argument, and prevent the
load propagation pass from touching PFETCH further.

This fixes gs-input-array-vec4-index-rd.shader_test and
vs-output-array-vec4-index-wr-before-gs.shader_test on nvc0 at least.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Tobias Klausmann <tobias.johannes.klausmann@mni.thm.de>
Cc: "10.5 10.6" <mesa-stable@lists.freedesktop.org>
src/gallium/drivers/nouveau/codegen/nv50_ir_peephole.cpp