r600g/sb: SB support for UBO indexing
[mesa.git] / src / gallium / drivers / r600 / sb / sb_bc_finalize.cpp
index 193ade8a6617b17935d125944304e1c81e85ee5f..82826a90921eb6ebc9c7eb0408e68a8330366857 100644 (file)
@@ -515,7 +515,7 @@ void bc_finalizer::copy_fetch_src(fetch_node &dst, fetch_node &src, unsigned arg
 
 void bc_finalizer::emit_set_grad(fetch_node* f) {
 
-       assert(f->src.size() == 12);
+       assert(f->src.size() == 12 || f->src.size() == 13);
        unsigned ops[2] = { FETCH_OP_SET_GRADIENTS_V, FETCH_OP_SET_GRADIENTS_H };
 
        unsigned arg_start = 0;
@@ -810,8 +810,8 @@ void bc_finalizer::finalize_cf(cf_node* c) {
 }
 
 sel_chan bc_finalizer::translate_kcache(cf_node* alu, value* v) {
-       unsigned sel = v->select.sel();
-       unsigned bank = sel >> 12;
+       unsigned sel = v->select.kcache_sel();
+       unsigned bank = v->select.kcache_bank();
        unsigned chan = v->select.chan();
        static const unsigned kc_base[] = {128, 160, 256, 288};