diff options
author | Dave Airlie <[email protected]> | 2018-01-10 04:25:41 +0000 |
---|---|---|
committer | Dave Airlie <[email protected]> | 2018-01-18 03:37:39 +0000 |
commit | 046cf68cadd04a1e1eb89476614c334ac702f0ce (patch) | |
tree | 1d880e396c902bf7d47ded0374c396b6c7ba280a /src/gallium/drivers/r600/sb | |
parent | d72590032f4a73f824c425fbe926d4b0c4ea13e1 (diff) |
r600/sb: handle lds special dest registers.
This adds lds to the geom emit handling
Acked-By: Roland Scheidegger <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/sb')
-rw-r--r-- | src/gallium/drivers/r600/sb/sb_bc_finalize.cpp | 2 | ||||
-rw-r--r-- | src/gallium/drivers/r600/sb/sb_sched.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp b/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp index d377a3950a6..099b295f18f 100644 --- a/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp +++ b/src/gallium/drivers/r600/sb/sb_bc_finalize.cpp @@ -294,7 +294,7 @@ void bc_finalizer::finalize_alu_group(alu_group_node* g, node *prev_node) { value *d = n->dst.empty() ? NULL : n->dst[0]; if (d && d->is_special_reg()) { - assert((n->bc.op_ptr->flags & AF_MOVA) || d->is_geometry_emit()); + assert((n->bc.op_ptr->flags & AF_MOVA) || d->is_geometry_emit() || d->is_lds_oq() || d->is_lds_access()); d = NULL; } diff --git a/src/gallium/drivers/r600/sb/sb_sched.cpp b/src/gallium/drivers/r600/sb/sb_sched.cpp index 4158317765f..6d7ab671ff5 100644 --- a/src/gallium/drivers/r600/sb/sb_sched.cpp +++ b/src/gallium/drivers/r600/sb/sb_sched.cpp @@ -1663,7 +1663,7 @@ unsigned post_scheduler::try_add_instruction(node *n) { value *d = a->dst.empty() ? NULL : a->dst[0]; if (d && d->is_special_reg()) { - assert((a->bc.op_ptr->flags & AF_MOVA) || d->is_geometry_emit()); + assert((a->bc.op_ptr->flags & AF_MOVA) || d->is_geometry_emit() || d->is_lds_oq() || d->is_lds_access()); d = NULL; } |