Mesa (main): mesa: add environment variable MESA_NO_SHADER_REPLACEMENT
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Aug 31 18:48:41 UTC 2021
Module: Mesa
Branch: main
Commit: dab8bded4d256ff3e4bfcdd561985db60e9452b6
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=dab8bded4d256ff3e4bfcdd561985db60e9452b6
Author: Marek Olšák <marek.olsak at amd.com>
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 <pierre-eric.pelloux-prayer at amd.com>
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)
More information about the mesa-commit
mailing list