From 499cc7a9ecdd7261a5859fa5220e0fdaf764d36e Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 7 May 2021 14:06:23 -0400 Subject: [PATCH] nir/validate: refactor validate_assert to have a return value Reviewed-by: Jason Ekstrand Reviewed-by: Alyssa Rosenzweig Reviewed-by: Connor Abbott Part-of: --- src/compiler/nir/nir_validate.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/compiler/nir/nir_validate.c b/src/compiler/nir/nir_validate.c index 64af1e86078..8791ed3b050 100644 --- a/src/compiler/nir/nir_validate.c +++ b/src/compiler/nir/nir_validate.c @@ -120,10 +120,18 @@ log_error(validate_state *state, const char *cond, const char *file, int line) _mesa_hash_table_insert(state->errors, obj, msg); } -#define validate_assert(state, cond) do { \ - if (!(cond)) \ - log_error(state, #cond, __FILE__, __LINE__); \ - } while (0) +static bool +validate_assert_impl(validate_state *state, bool cond, const char *str, + const char *file, unsigned line) +{ + if (!cond) + log_error(state, str, file, line); + return cond; +} + +#define validate_assert(state, cond) \ + validate_assert_impl(state, (cond), #cond, __FILE__, __LINE__) + static void validate_src(nir_src *src, validate_state *state, unsigned bit_sizes, unsigned num_components);