Commit bc8a6842 authored by Nicolai Hähnle's avatar Nicolai Hähnle

mesa: add MESA_NO_MINMAX_CACHE environment variable

When set to a truish value, this globally disables the minmax cache for all
buffer objects.

No #ifdef DEBUG guards because this option can be interesting for
benchmarking.
Reviewed-by: 's avatarMarek Olšák <marek.olsak@amd.com>
parent 761c7d59
......@@ -96,6 +96,7 @@ glGetString(GL_SHADING_LANGUAGE_VERSION). Valid values are integers, such as
"130". Mesa will not really implement all the features of the given language version
if it's higher than what's normally reported. (for developers only)
<li>MESA_GLSL - <a href="shading.html#envvars">shading language compiler options</a>
<li>MESA_NO_MINMAX_CACHE - when set, the minmax index cache is globally disabled.
</ul>
......
......@@ -32,6 +32,7 @@
#include <stdbool.h>
#include <inttypes.h> /* for PRId64 macro */
#include "util/debug.h"
#include "glheader.h"
#include "enums.h"
#include "hash.h"
......@@ -520,6 +521,24 @@ _mesa_reference_buffer_object_(struct gl_context *ctx,
}
/**
* Get the value of MESA_NO_MINMAX_CACHE.
*/
static bool
get_no_minmax_cache()
{
static bool read = false;
static bool disable = false;
if (!read) {
disable = env_var_as_boolean("MESA_NO_MINMAX_CACHE", false);
read = true;
}
return disable;
}
/**
* Initialize a buffer object to default values.
*/
......@@ -533,6 +552,9 @@ _mesa_initialize_buffer_object(struct gl_context *ctx,
obj->RefCount = 1;
obj->Name = name;
obj->Usage = GL_STATIC_DRAW_ARB;
if (get_no_minmax_cache())
obj->UsageHistory |= USAGE_DISABLE_MINMAX_CACHE;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment