summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2016-06-24 14:28:51 -0400
committerRob Clark <[email protected]>2016-07-02 09:00:19 -0400
commitf78a6b1ce398a537d77c25b1a93f156109086975 (patch)
tree0d891e0156328ae8462f1e7cad56b373e7ab8607 /src/gallium
parent202710d11057dfe4416770752cf5fd5b3f766999 (diff)
glsl: add driconf to zero-init unintialized vars
Some games are sloppy.. perhaps because it is defined behavior for DX or perhaps because nv blob driver defaults things to zero. So add driconf param to force uninitialized variables to default to zero. This issue was observed with rust, from steam store. But has surfaced elsewhere in the past. Signed-off-by: Rob Clark <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/include/state_tracker/st_api.h1
-rw-r--r--src/gallium/state_trackers/dri/dri_screen.c2
2 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/include/state_tracker/st_api.h b/src/gallium/include/state_tracker/st_api.h
index 41daa47986c..21d5177aa2f 100644
--- a/src/gallium/include/state_tracker/st_api.h
+++ b/src/gallium/include/state_tracker/st_api.h
@@ -242,6 +242,7 @@ struct st_config_options
unsigned force_glsl_version;
boolean force_s3tc_enable;
boolean allow_glsl_extension_directive_midshader;
+ boolean glsl_zero_init;
};
/**
diff --git a/src/gallium/state_trackers/dri/dri_screen.c b/src/gallium/state_trackers/dri/dri_screen.c
index 2ac55c88926..b16585a38cc 100644
--- a/src/gallium/state_trackers/dri/dri_screen.c
+++ b/src/gallium/state_trackers/dri/dri_screen.c
@@ -74,6 +74,7 @@ const __DRIconfigOptionsExtension gallium_config_options = {
DRI_CONF_SECTION_MISCELLANEOUS
DRI_CONF_ALWAYS_HAVE_DEPTH_BUFFER("false")
+ DRI_CONF_GLSL_ZERO_INIT("false")
DRI_CONF_SECTION_END
DRI_CONF_END
};
@@ -98,6 +99,7 @@ dri_fill_st_options(struct st_config_options *options,
driQueryOptionb(optionCache, "force_s3tc_enable");
options->allow_glsl_extension_directive_midshader =
driQueryOptionb(optionCache, "allow_glsl_extension_directive_midshader");
+ options->glsl_zero_init = driQueryOptionb(optionCache, "glsl_zero_init");
}
static const __DRIconfig **