From 258e2408984724539dd04c96d10f4575511fe56f Mon Sep 17 00:00:00 2001 From: Patrick Georgi Date: Thu, 15 Dec 2016 15:21:56 +0100 Subject: [PATCH] UPSTREAM: util/romcc: Don't reference a variable after checking it for NULL BUG=none BRANCH=none TEST=none Change-Id: Id30943d931ca9d3a792bfdffde22f0bd5f41a19b Signed-off-by: Patrick Georgi Original-Commit-Id: ded1e05d11675d899e07906e04032b3cc2f29711 Original-Change-Id: Ic8e850bdf75d38fc061fb3a8c55d38bcf09c305a Original-Signed-off-by: Patrick Georgi Original-Found-by: Coverity Scan #1129146 Original-Reviewed-on: https://review.coreboot.org/17886 Original-Tested-by: build bot (Jenkins) Original-Reviewed-by: Nico Huber Reviewed-on: https://chromium-review.googlesource.com/441805 --- util/romcc/romcc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/util/romcc/romcc.c b/util/romcc/romcc.c index aa41ccf2ce..9a7d1a2ff6 100644 --- a/util/romcc/romcc.c +++ b/util/romcc/romcc.c @@ -21319,15 +21319,15 @@ static void verify_blocks(struct compile_state *state) "computed users %d != stored users %d", users, block->users); } + if (!(block->last->next) || !(block->last->next->u.block)) { + internal_error(state, block->last, + "bad next block"); + } if (!triple_stores_block(state, block->last->next)) { internal_error(state, block->last->next, "cannot find next block"); } block = block->last->next->u.block; - if (!block) { - internal_error(state, block->last->next, - "bad next block"); - } } while(block != state->bb.first_block); if (blocks != state->bb.last_vertex) { internal_error(state, 0, "computed blocks: %d != stored blocks %d",