Use the same limit for kcache constants in alu group on r6xx as on other
chips (two const pairs). Relaxing this will require additional checks to
make sure that all 4 consts in the group come from 2 kcache sets (clause
limit), probably without noticeable improvements of shader performance.

Signed-off-by: Vadim Girlin <vadimgir...@gmail.com>
---
 src/gallium/drivers/r600/sb/sb_sched.cpp | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/r600/sb/sb_sched.cpp 
b/src/gallium/drivers/r600/sb/sb_sched.cpp
index b21b342..d0045ce 100644
--- a/src/gallium/drivers/r600/sb/sb_sched.cpp
+++ b/src/gallium/drivers/r600/sb/sb_sched.cpp
@@ -43,7 +43,11 @@ namespace r600_sb {
 using std::cerr;
 
 rp_kcache_tracker::rp_kcache_tracker(shader &sh) : rp(), uc(),
-       sel_count(sh.get_ctx().is_r600() ? 4 : 2) {}
+               // FIXME: for now we'll use "two const pairs" limit for r600, 
same as
+               // for other chips, otherwise additional check in 
alu_group_tracker is
+               // required to make sure that all 4 consts in the group fit 
into 2
+               // kcache sets
+               sel_count(2) {}
 
 bool rp_kcache_tracker::try_reserve(sel_chan r) {
        unsigned sel = kc_sel(r);
-- 
1.8.2.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to