Mesa (master): r600g/sb: fix constant propagation in gvn pass
Vadim Girlin
vadimg at kemper.freedesktop.org
Fri May 3 14:27:22 UTC 2013
Module: Mesa
Branch: master
Commit: f92bd0958e5f6453aa5cf8d54cd57546ca5de963
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f92bd0958e5f6453aa5cf8d54cd57546ca5de963
Author: Vadim Girlin <vadimgirlin at gmail.com>
Date: Fri May 3 13:01:31 2013 +0400
r600g/sb: fix constant propagation in gvn pass
Fixes the bug that prevented propagation of literals in some cases.
Signed-off-by: Vadim Girlin <vadimgirlin at gmail.com>
---
src/gallium/drivers/r600/sb/sb_gvn.cpp | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/src/gallium/drivers/r600/sb/sb_gvn.cpp b/src/gallium/drivers/r600/sb/sb_gvn.cpp
index 6798917..fe4f884 100644
--- a/src/gallium/drivers/r600/sb/sb_gvn.cpp
+++ b/src/gallium/drivers/r600/sb/sb_gvn.cpp
@@ -159,7 +159,8 @@ void gvn::process_alu_src_constants(node &n, value* &v) {
rp_kcache_tracker kc(sh);
- kc.try_reserve(v->gvn_source->select);
+ if (v->gvn_source->is_kcache())
+ kc.try_reserve(v->gvn_source->select);
// don't propagate 3rd constant to the trans-only instruction
if (!n.is_alu_packed()) {
More information about the mesa-commit
mailing list