mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 08:58:02 +02:00
nir: Use get_once() helper for one-time init's
Makes the code more concise, and makes helgrind/drd happy at the same time! Signed-off-by: Rob Clark <robdclark@chromium.org> Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7644>
This commit is contained in:
parent
bda4d6e0d0
commit
c9062df1d5
2 changed files with 7 additions and 31 deletions
|
|
@ -4181,15 +4181,9 @@ void nir_metadata_check_validation_flag(nir_shader *shader);
|
|||
static inline bool
|
||||
should_skip_nir(const char *name)
|
||||
{
|
||||
static const char *list = NULL;
|
||||
if (!list) {
|
||||
/* Comma separated list of names to skip. */
|
||||
list = getenv("NIR_SKIP");
|
||||
if (!list)
|
||||
list = "";
|
||||
}
|
||||
const char *list = get_once(getenv("NIR_SKIP"));
|
||||
|
||||
if (!list[0])
|
||||
if (!list || !list[0])
|
||||
return false;
|
||||
|
||||
return comma_separated_list_contains(list, name);
|
||||
|
|
@ -4198,29 +4192,19 @@ should_skip_nir(const char *name)
|
|||
static inline bool
|
||||
should_clone_nir(void)
|
||||
{
|
||||
static int should_clone = -1;
|
||||
if (should_clone < 0)
|
||||
should_clone = env_var_as_boolean("NIR_TEST_CLONE", false);
|
||||
|
||||
return should_clone;
|
||||
return get_once(env_var_as_boolean("NIR_TEST_CLONE", false));
|
||||
}
|
||||
|
||||
static inline bool
|
||||
should_serialize_deserialize_nir(void)
|
||||
{
|
||||
static int test_serialize = -1;
|
||||
if (test_serialize < 0)
|
||||
test_serialize = env_var_as_boolean("NIR_TEST_SERIALIZE", false);
|
||||
|
||||
return test_serialize;
|
||||
return get_once(env_var_as_boolean("NIR_TEST_SERIALIZE", false));
|
||||
}
|
||||
|
||||
static inline bool
|
||||
should_print_nir(nir_shader *shader)
|
||||
{
|
||||
static int should_print = -1;
|
||||
if (should_print < 0)
|
||||
should_print = env_var_as_unsigned("NIR_PRINT", 0);
|
||||
int should_print = get_once(env_var_as_unsigned("NIR_PRINT", 0));
|
||||
|
||||
if (should_print == 1)
|
||||
return !shader->info.internal;
|
||||
|
|
|
|||
|
|
@ -1531,12 +1531,7 @@ validate_function_impl(nir_function_impl *impl, validate_state *state)
|
|||
validate_assert(state, state->ssa_srcs->entries == 0);
|
||||
_mesa_set_clear(state->ssa_srcs, NULL);
|
||||
|
||||
static int validate_dominance = -1;
|
||||
if (validate_dominance < 0) {
|
||||
validate_dominance =
|
||||
env_var_as_boolean("NIR_VALIDATE_SSA_DOMINANCE", false);
|
||||
}
|
||||
if (validate_dominance)
|
||||
if (get_once(env_var_as_boolean("NIR_VALIDATE_SSA_DOMINANCE", false)))
|
||||
validate_ssa_dominance(impl, state);
|
||||
}
|
||||
|
||||
|
|
@ -1610,10 +1605,7 @@ dump_errors(validate_state *state, const char *when)
|
|||
void
|
||||
nir_validate_shader(nir_shader *shader, const char *when)
|
||||
{
|
||||
static int should_validate = -1;
|
||||
if (should_validate < 0)
|
||||
should_validate = env_var_as_boolean("NIR_VALIDATE", true);
|
||||
if (!should_validate)
|
||||
if (!get_once(env_var_as_boolean("NIR_VALIDATE", true)))
|
||||
return;
|
||||
|
||||
validate_state state;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue