On Thu, Sep 3, 2015 at 2:32 PM, Kenneth Graunke <kenn...@whitecape.org> wrote: > Calling unlink_blocks(block, block->successors[0]) will successfully > unlink the first successor, but then will shift block->successors[1] > down to block->successor[0]. So the successors[1] != NULL check will > always fail. > > Signed-off-by: Kenneth Graunke <kenn...@whitecape.org> > --- > src/glsl/nir/nir_control_flow.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/glsl/nir/nir_control_flow.c b/src/glsl/nir/nir_control_flow.c > index d0b2a10..b820abc 100644 > --- a/src/glsl/nir/nir_control_flow.c > +++ b/src/glsl/nir/nir_control_flow.c > @@ -93,10 +93,10 @@ unlink_blocks(nir_block *pred, nir_block *succ) > static void > unlink_block_successors(nir_block *block) > { > - if (block->successors[0] != NULL) > - unlink_blocks(block, block->successors[0]); > if (block->successors[1] != NULL) > unlink_blocks(block, block->successors[1]); > + if (block->successors[0] != NULL) > + unlink_blocks(block, block->successors[0]); > } > > static void > -- > 2.5.0 >
Patches 2-5 are Reviewed-by: Connor Abbott <cwabbo...@gmail.com> but either I'm not not understanding the problem patch 1 is trying to solve, or there's something worse going on. _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev