nir/worklist: Don't change the start index when computing the tail index

Reviewed-by: Mark Janes <mark.a.janes@intel.com>
This commit is contained in:
Jason Ekstrand
2015-03-02 17:59:38 -08:00
parent 8fb8fe46fa
commit 90e50908d7
2 changed files with 7 additions and 7 deletions

View File

@@ -82,7 +82,7 @@ nir_block_worklist_push_head(nir_block_worklist *w, nir_block *block)
}
nir_block *
nir_block_worklist_peek_head(nir_block_worklist *w)
nir_block_worklist_peek_head(const nir_block_worklist *w)
{
assert(w->count > 0);
@@ -114,18 +114,18 @@ nir_block_worklist_push_tail(nir_block_worklist *w, nir_block *block)
w->count++;
unsigned tail = w->start = (w->start + w->count - 1) % w->size;
unsigned tail = (w->start + w->count - 1) % w->size;
w->blocks[tail] = block;
BITSET_SET(w->blocks_present, block->index);
}
nir_block *
nir_block_worklist_peek_tail(nir_block_worklist *w)
nir_block_worklist_peek_tail(const nir_block_worklist *w)
{
assert(w->count > 0);
unsigned tail = w->start = (w->start + w->count - 1) % w->size;
unsigned tail = (w->start + w->count - 1) % w->size;
return w->blocks[tail];
}
@@ -135,7 +135,7 @@ nir_block_worklist_pop_tail(nir_block_worklist *w)
{
assert(w->count > 0);
unsigned tail = w->start = (w->start + w->count - 1) % w->size;
unsigned tail = (w->start + w->count - 1) % w->size;
w->count--;

View File

@@ -74,13 +74,13 @@ nir_block_worklist_is_empty(const nir_block_worklist *w)
void nir_block_worklist_push_head(nir_block_worklist *w, nir_block *block);
nir_block *nir_block_worklist_peek_head(nir_block_worklist *w);
nir_block *nir_block_worklist_peek_head(const nir_block_worklist *w);
nir_block *nir_block_worklist_pop_head(nir_block_worklist *w);
void nir_block_worklist_push_tail(nir_block_worklist *w, nir_block *block);
nir_block *nir_block_worklist_peek_tail(nir_block_worklist *w);
nir_block *nir_block_worklist_peek_tail(const nir_block_worklist *w);
nir_block *nir_block_worklist_pop_tail(nir_block_worklist *w);