diff options
Diffstat (limited to 'src/broadcom/compiler/vir_register_allocate.c')
-rw-r--r-- | src/broadcom/compiler/vir_register_allocate.c | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/src/broadcom/compiler/vir_register_allocate.c b/src/broadcom/compiler/vir_register_allocate.c index c55d8dc937d..60535c17a4b 100644 --- a/src/broadcom/compiler/vir_register_allocate.c +++ b/src/broadcom/compiler/vir_register_allocate.c @@ -251,7 +251,7 @@ v3d_spill_reg(struct v3d_compile *c, int spill_temp) } struct qinst *last_thrsw = c->last_thrsw; - assert(!last_thrsw || last_thrsw->is_last_thrsw); + assert(last_thrsw && last_thrsw->is_last_thrsw); int start_num_temps = c->num_temps; @@ -337,29 +337,13 @@ v3d_spill_reg(struct v3d_compile *c, int spill_temp) spill_offset); } } - - /* If we didn't have a last-thrsw inserted by nir_to_vir and - * we've been inserting thrsws, then insert a new last_thrsw - * right before we start the vpm/tlb sequence for the last - * thread segment. - */ - if (!is_uniform && !last_thrsw && c->last_thrsw && - (v3d_qpu_writes_vpm(&inst->qpu) || - v3d_qpu_uses_tlb(&inst->qpu))) { - c->cursor = vir_before_inst(inst); - vir_emit_thrsw(c); - - last_thrsw = c->last_thrsw; - last_thrsw->is_last_thrsw = true; - } } } /* Make sure c->last_thrsw is the actual last thrsw, not just one we * inserted in our most recent unspill. */ - if (last_thrsw) - c->last_thrsw = last_thrsw; + c->last_thrsw = last_thrsw; /* Don't allow spilling of our spilling instructions. There's no way * they can help get things colored. |