summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2015-03-02 17:59:38 -0800
committerJason Ekstrand <[email protected]>2015-03-11 15:18:16 -0700
commit90e50908d7f080d91f41d889cfe0dc67134971eb (patch)
treec613fff6c3f58ce0747f9bf7f33b33a754459104
parent8fb8fe46fa565dceedacd95287c836004b0fade2 (diff)
nir/worklist: Don't change the start index when computing the tail index
Reviewed-by: Mark Janes <[email protected]>
-rw-r--r--src/glsl/nir/nir_worklist.c10
-rw-r--r--src/glsl/nir/nir_worklist.h4
2 files changed, 7 insertions, 7 deletions
diff --git a/src/glsl/nir/nir_worklist.c b/src/glsl/nir/nir_worklist.c
index a8baae9375e..3087a1d2354 100644
--- a/src/glsl/nir/nir_worklist.c
+++ b/src/glsl/nir/nir_worklist.c
@@ -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--;
diff --git a/src/glsl/nir/nir_worklist.h b/src/glsl/nir/nir_worklist.h
index d5a8568e428..829bff24a55 100644
--- a/src/glsl/nir/nir_worklist.h
+++ b/src/glsl/nir/nir_worklist.h
@@ -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);