From: Jason Ekstrand Date: Tue, 3 Mar 2015 01:59:38 +0000 (-0800) Subject: nir/worklist: Don't change the start index when computing the tail index X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=90e50908d7f080d91f41d889cfe0dc67134971eb;p=mesa.git nir/worklist: Don't change the start index when computing the tail index Reviewed-by: Mark Janes --- 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);