Module: Mesa Branch: main Commit: dab8bded4d256ff3e4bfcdd561985db60e9452b6 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dab8bded4d256ff3e4bfcdd561985db60e9452b6
Author: Marek Olšák <[email protected]> Date: Fri Aug 20 12:25:34 2021 -0400 mesa: add environment variable MESA_NO_SHADER_REPLACEMENT for performance comparisons Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12492> --- src/mesa/main/shaderapi.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 955790f274d..93819241a75 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -2043,20 +2043,22 @@ _mesa_read_shader_source(const gl_shader_stage stage, const char *source) generate_sha1(source, sha); - const char *process_name = - ARRAY_SIZE(shader_replacements) ? util_get_process_name() : NULL; - for (size_t i = 0; i < ARRAY_SIZE(shader_replacements); i++) { - if (stage != shader_replacements[i].stage) - continue; + if (!debug_get_bool_option("MESA_NO_SHADER_REPLACEMENT", false)) { + const char *process_name = + ARRAY_SIZE(shader_replacements) ? util_get_process_name() : NULL; + for (size_t i = 0; i < ARRAY_SIZE(shader_replacements); i++) { + if (stage != shader_replacements[i].stage) + continue; - if (shader_replacements[i].app && - strcmp(process_name, shader_replacements[i].app) != 0) - continue; + if (shader_replacements[i].app && + strcmp(process_name, shader_replacements[i].app) != 0) + continue; - if (memcmp(sha, shader_replacements[i].sha1, 40) != 0) - continue; + if (memcmp(sha, shader_replacements[i].sha1, 40) != 0) + continue; - return load_shader_replacement(&shader_replacements[i]); + return load_shader_replacement(&shader_replacements[i]); + } } if (!path_exists)
