From: Rob Clark Date: Wed, 18 May 2016 15:43:15 +0000 (-0400) Subject: nir/validate: assume() that hashtable entry exists X-Git-Tag: upstream/17.1.0~9636 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=df361fc58cb1aaf8c692c3aa6f545cf7f495b374;p=platform%2Fupstream%2Fmesa.git nir/validate: assume() that hashtable entry exists At this point, it would require a logic error in nir_validate to not have already populated this hashtable entry, but coverity doesn't realize that: CID 1265547 (#1 of 1): Dereference null return value (NULL_RETURNS)3. dereference: Dereferencing a null pointer entry. CID 1271039 (#1 of 1): Dereference null return value (NULL_RETURNS)3. dereference: Dereferencing a null pointer entry. Signed-off-by: Rob Clark Reviewed-by: Matt Turner --- diff --git a/src/compiler/nir/nir_validate.c b/src/compiler/nir/nir_validate.c index b186fd5..8ac55d5 100644 --- a/src/compiler/nir/nir_validate.c +++ b/src/compiler/nir/nir_validate.c @@ -879,6 +879,7 @@ postvalidate_reg_decl(nir_register *reg, validate_state *state) { struct hash_entry *entry = _mesa_hash_table_search(state->regs, reg); + assume(entry); reg_validate_state *reg_state = (reg_validate_state *) entry->data; nir_foreach_use(src, reg) { @@ -955,6 +956,8 @@ postvalidate_ssa_def(nir_ssa_def *def, void *void_state) validate_state *state = void_state; struct hash_entry *entry = _mesa_hash_table_search(state->ssa_defs, def); + + assume(entry); ssa_def_validate_state *def_state = (ssa_def_validate_state *)entry->data; nir_foreach_use(src, def) {