aboutsummaryrefslogtreecommitdiffstats
path: root/docs/envvars.html
diff options
context:
space:
mode:
authorErik Faye-Lund <[email protected]>2019-06-04 11:26:40 +0200
committerErik Faye-Lund <[email protected]>2019-06-05 23:48:45 +0200
commit5639f0d5ee73de76f961aae49462fb06dadea7d5 (patch)
tree1d290eb028538eab2b01ffe340e0abebc5ccce5b /docs/envvars.html
parent0bca0f1aa23be59d8302a75cb681d7089e105bdc (diff)
docs: use dl instead of ul
A HTML definition-list is more semantically strong than just some unordered list, and renders a bit cleaner by default. So let's use that instead. Signed-off-by: Erik Faye-Lund <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Acked-by: Eric Engestrom <[email protected]>
Diffstat (limited to 'docs/envvars.html')
-rw-r--r--docs/envvars.html648
1 files changed, 391 insertions, 257 deletions
diff --git a/docs/envvars.html b/docs/envvars.html
index e063f5c1a5a..c6e23731065 100644
--- a/docs/envvars.html
+++ b/docs/envvars.html
@@ -25,64 +25,85 @@ sometimes be useful for debugging end-user issues.
<h2>LibGL environment variables</h2>
-<ul>
-<li>LIBGL_DEBUG - If defined debug information will be printed to stderr.
- If set to 'verbose' additional information will be printed.
-<li>LIBGL_DRIVERS_PATH - colon-separated list of paths to search for DRI drivers
-<li>LIBGL_ALWAYS_INDIRECT - if set to `true`, forces an indirect rendering context/connection.
-<li>LIBGL_ALWAYS_SOFTWARE - if set to `true`, always use software rendering
-<li>LIBGL_NO_DRAWARRAYS - if set to `true`, do not use DrawArrays GLX protocol (for debugging)
-<li>LIBGL_SHOW_FPS - print framerate to stdout based on the number of glXSwapBuffers
- calls per second.
-<li>LIBGL_DRI3_DISABLE - disable DRI3 if set to `true`.
-</ul>
-
-
+<dl>
+<dt>LIBGL_DEBUG</dt>
+<dd>If defined debug information will be printed to stderr.
+ If set to 'verbose' additional information will be printed.</dd>
+<dt>LIBGL_DRIVERS_PATH</dt>
+<dd>colon-separated list of paths to search for DRI drivers</dd>
+<dt>LIBGL_ALWAYS_INDIRECT</dt>
+<dd>if set to `true`, forces an indirect rendering context/connection.</dd>
+<dt>LIBGL_ALWAYS_SOFTWARE</dt>
+<dd>if set to `true`, always use software rendering</dd>
+<dt>LIBGL_NO_DRAWARRAYS</dt>
+<dd>if set to `true`, do not use DrawArrays GLX protocol (for debugging)</dd>
+<dt>LIBGL_SHOW_FPS</dt>
+<dd>print framerate to stdout based on the number of glXSwapBuffers
+ calls per second.</dd>
+<dt>LIBGL_DRI3_DISABLE</dt>
+<dd>disable DRI3 if set to `true`.</dd>
+</dl>
<h2>Core Mesa environment variables</h2>
-<ul>
-<li>MESA_NO_ASM - if set, disables all assembly language optimizations
-<li>MESA_NO_MMX - if set, disables Intel MMX optimizations
-<li>MESA_NO_3DNOW - if set, disables AMD 3DNow! optimizations
-<li>MESA_NO_SSE - if set, disables Intel SSE optimizations
-<li>MESA_NO_ERROR - if set to 1, error checking is disabled as per KHR_no_error.
- This will result in undefined behaviour for invalid use of the api, but
- can reduce CPU use for apps that are known to be error free.</li>
-<li>MESA_DEBUG - if set, error messages are printed to stderr. For example,
- if the application generates a GL_INVALID_ENUM error, a corresponding error
- message indicating where the error occurred, and possibly why, will be
- printed to stderr. For release builds, MESA_DEBUG defaults to off (no debug
- output). MESA_DEBUG accepts the following comma-separated list of named
- flags, which adds extra behaviour to just set MESA_DEBUG=1:
- <ul>
- <li>silent - turn off debug messages. Only useful for debug builds.</li>
- <li>flush - flush after each drawing command</li>
- <li>incomplete_tex - extra debug messages when a texture is incomplete</li>
- <li>incomplete_fbo - extra debug messages when a fbo is incomplete</li>
- <li>context - create a debug context (see GLX_CONTEXT_DEBUG_BIT_ARB) and
- print error and performance messages to stderr (or MESA_LOG_FILE).</li>
- </ul>
-<li>MESA_LOG_FILE - specifies a file name for logging all errors, warnings,
-etc., rather than stderr
-<li>MESA_TEX_PROG - if set, implement conventional texture env modes with
-fragment programs (intended for developers only)
-<li>MESA_TNL_PROG - if set, implement conventional vertex transformation
-operations with vertex programs (intended for developers only).
-Setting this variable automatically sets the MESA_TEX_PROG variable as well.
-<li>MESA_EXTENSION_OVERRIDE - can be used to enable/disable extensions.
-A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension
-and disable the GL_EXT_bar extension.
-<li>MESA_EXTENSION_MAX_YEAR - The GL_EXTENSIONS string returned by Mesa is sorted
-by extension year.
-If this variable is set to year X, only extensions defined on or before year
-X will be reported.
-This is to work-around a bug in some games where the extension string is
-copied into a fixed-size buffer without truncating.
-If the extension string is too long, the buffer overrun can cause the game
-to crash.
-This is a work-around for that.
-<li>MESA_GL_VERSION_OVERRIDE - changes the value returned by
+<dl>
+<dt>MESA_NO_ASM</dt>
+<dd>if set, disables all assembly language optimizations</dd>
+<dt>MESA_NO_MMX</dt>
+<dd>if set, disables Intel MMX optimizations</dd>
+<dt>MESA_NO_3DNOW</dt>
+<dd>if set, disables AMD 3DNow! optimizations</dd>
+<dt>MESA_NO_SSE</dt>
+<dd>if set, disables Intel SSE optimizations</dd>
+<dt>MESA_NO_ERROR</dt>
+<dd>if set to 1, error checking is disabled as per KHR_no_error.
+ This will result in undefined behaviour for invalid use of the api, but
+ can reduce CPU use for apps that are known to be error free.</dd>
+<dt>MESA_DEBUG</dt>
+<dd>if set, error messages are printed to stderr. For example,
+ if the application generates a GL_INVALID_ENUM error, a corresponding error
+ message indicating where the error occurred, and possibly why, will be
+ printed to stderr. For release builds, MESA_DEBUG defaults to off (no debug
+ output). MESA_DEBUG accepts the following comma-separated list of named
+ flags, which adds extra behaviour to just set MESA_DEBUG=1:
+ <dl>
+ <dt>silent</dt>
+ <dd>turn off debug messages. Only useful for debug builds.</dd>
+ <dt>flush</dt>
+ <dd>flush after each drawing command</dd>
+ <dt>incomplete_tex</dt>
+ <dd>extra debug messages when a texture is incomplete</dd>
+ <dt>incomplete_fbo</dt>
+ <dd>extra debug messages when a fbo is incomplete</dd>
+ <dt>context</dt>
+ <dd>create a debug context (see GLX_CONTEXT_DEBUG_BIT_ARB) and print
+ error and performance messages to stderr (or MESA_LOG_FILE).</dd>
+ </dl>
+</dd>
+<dt>MESA_LOG_FILE</dt>
+<dd>specifies a file name for logging all errors, warnings,
+ etc., rather than stderr</dd>
+<dt>MESA_TEX_PROG</dt>
+<dd>if set, implement conventional texture env modes with
+ fragment programs (intended for developers only)</dd>
+<dt>MESA_TNL_PROG</dt>
+<dd>if set, implement conventional vertex transformation operations with
+ vertex programs (intended for developers only). Setting this variable
+ automatically sets the MESA_TEX_PROG variable as well.</dd>
+<dt>MESA_EXTENSION_OVERRIDE</dt>
+<dd>can be used to enable/disable extensions. A value such as
+ "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension and disable
+ the GL_EXT_bar extension.</dd>
+<dt>MESA_EXTENSION_MAX_YEAR</dt>
+<dd>The GL_EXTENSIONS string returned by Mesa is sorted by extension year.
+ If this variable is set to year X, only extensions defined on or before
+ year X will be reported. This is to work-around a bug in some games where
+ the extension string is copied into a fixed-size buffer without
+ truncating. If the extension string is too long, the buffer overrun can
+ cause the game to crash. This is a work-around for that.
+</dd>
+<dt>MESA_GL_VERSION_OVERRIDE</dt>
+<dd>changes the value returned by
glGetString(GL_VERSION) and possibly the GL API type.
<ul>
<li>The format should be MAJOR.MINOR[FC|COMPAT]
@@ -97,59 +118,74 @@ glGetString(GL_VERSION) and possibly the GL API type.
have the ARB_compatibility extension enabled.
<li>GL versions &gt;= 3.2 are set to a Core profile
<li>Examples:
- <ul>
- <li>2.1 - select a compatibility (non-Core) profile with GL
- version 2.1.
- <li>3.0 - select a compatibility (non-Core) profile with GL
- version 3.0.
- <li>3.0FC - select a Core+Forward Compatible profile with GL
- version 3.0.
- <li>3.1 - select GL version 3.1 with GL_ARB_compatibility enabled
- per the driver default.
- <li>3.1FC - select GL version 3.1 with forward compatibility and
- GL_ARB_compatibility disabled.
- <li>3.1COMPAT - select GL version 3.1 with GL_ARB_compatibility
- enabled.
- <li>X.Y - override GL version to X.Y without changing the profile.
- <li>X.YFC - select a Core+Forward Compatible profile with GL
- version X.Y.
- <li>X.YCOMPAT - select a Compatibility profile with GL version
- X.Y.
- </ul>
+ <dl>
+ <dt>2.1</dt>
+ <dd>select a compatibility (non-Core) profile with GL version 2.1.</dd>
+ <dt>3.0</dt>
+ <dd>select a compatibility (non-Core) profile with GL version 3.0.</dd>
+ <dt>3.0FC</dt>
+ <dd>select a Core+Forward Compatible profile with GL version 3.0.</dd>
+ <dt>3.1</dt>
+ <dd>select GL version 3.1 with GL_ARB_compatibility enabled per the
+ driver default.</dd>
+ <dt>3.1FC</dt>
+ <dd>select GL version 3.1 with forward compatibility and
+ GL_ARB_compatibility disabled.</dd>
+ <dt>3.1COMPAT</dt>
+ <dd>select GL version 3.1 with GL_ARB_compatibility enabled.</dd>
+ <dt>X.Y</dt>
+ <dd>override GL version to X.Y without changing the profile.</dd>
+ <dt>X.YFC</dt>
+ <dd>select a Core+Forward Compatible profile with GL version X.Y.</dd>
+ <dt>X.YCOMPAT</dt>
+ <dd>select a Compatibility profile with GL version X.Y.</dd>
+ </dl>
<li>Mesa may not really implement all the features of the given
version. (for developers only)
</ul>
-<li>MESA_GLES_VERSION_OVERRIDE - changes the value returned by
-glGetString(GL_VERSION) for OpenGL ES.
+</dd>
+<dt>MESA_GLES_VERSION_OVERRIDE</dt>
+<dd>changes the value returned by glGetString(GL_VERSION) for OpenGL ES.
<ul>
<li> The format should be MAJOR.MINOR
<li> Examples: 2.0, 3.0, 3.1
<li> Mesa may not really implement all the features of the given version.
(for developers only)
</ul>
-<li>MESA_GLSL_VERSION_OVERRIDE - changes the value returned by
-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_CACHE_DISABLE - if set to `true`, disables the GLSL shader cache
-<li>MESA_GLSL_CACHE_MAX_SIZE - if set, determines the maximum size of
-the on-disk cache of compiled GLSL programs. Should be set to a number
-optionally followed by 'K', 'M', or 'G' to specify a size in
-kilobytes, megabytes, or gigabytes. By default, gigabytes will be
-assumed. And if unset, a maximum size of 1GB will be used. Note: A separate
-cache might be created for each architecture that Mesa is installed for on
-your system. For example under the default settings you may end up with a 1GB
-cache for x86_64 and another 1GB cache for i386.
-<li>MESA_GLSL_CACHE_DIR - if set, determines the directory to be used
-for the on-disk cache of compiled GLSL programs. If this variable is
-not set, then the cache will be stored in $XDG_CACHE_HOME/mesa_shader_cache (if
-that variable is set), or else within .cache/mesa_shader_cache within the user's
-home directory.
-<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.
-<li>MESA_SHADER_CAPTURE_PATH - see <a href="shading.html#capture">Capturing Shaders</a></li>
-<li>MESA_SHADER_DUMP_PATH and MESA_SHADER_READ_PATH - see <a href="shading.html#replacement">Experimenting with Shader Replacements</a></li>
-<li>MESA_VK_VERSION_OVERRIDE - changes the Vulkan physical device version
+</dd>
+<dt>MESA_GLSL_VERSION_OVERRIDE</dt>
+<dd>changes the value returned by 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)
+</dd>
+<dt>MESA_GLSL_CACHE_DISABLE</dt>
+<dd>if set to `true`, disables the GLSL shader cache</dd>
+<dt>MESA_GLSL_CACHE_MAX_SIZE</dt>
+<dd>if set, determines the maximum size of the on-disk cache of compiled GLSL
+ programs. Should be set to a number optionally followed by 'K', 'M', or
+ 'G' to specify a size in kilobytes, megabytes, or gigabytes. By default,
+ gigabytes will be assumed. And if unset, a maximum size of 1GB will be
+ used. Note: A separate cache might be created for each architecture that
+ Mesa is installed for on your system. For example under the default
+ settings you may end up with a 1GB cache for x86_64 and another 1GB cache
+ for i386.</dd>
+<dt>MESA_GLSL_CACHE_DIR</dt>
+<dd>if set, determines the directory to be used for the on-disk cache of
+ compiled GLSL programs. If this variable is not set, then the cache will
+ be stored in $XDG_CACHE_HOME/mesa_shader_cache (if that variable is set),
+ or else within .cache/mesa_shader_cache within the user's home directory.
+</dd>
+<dt>MESA_GLSL</dt>
+<dd><a href="shading.html#envvars">shading language compiler options</a></dd>
+<dt>MESA_NO_MINMAX_CACHE</dt>
+<dd>when set, the minmax index cache is globally disabled.</dd>
+<dt>MESA_SHADER_CAPTURE_PATH</dt>
+<dd>see <a href="shading.html#capture">Capturing Shaders</a></dd>
+<dt>MESA_SHADER_DUMP_PATH and MESA_SHADER_READ_PATH</dt>
+<dd>see <a href="shading.html#replacement">Experimenting with Shader Replacements</a></dd>
+<dt>MESA_VK_VERSION_OVERRIDE</dt>
+<dd>changes the Vulkan physical device version
as returned in VkPhysicalDeviceProperties::apiVersion.
<ul>
<li>The format should be MAJOR.MINOR[.PATCH]</li>
@@ -158,8 +194,8 @@ home directory.
<li>This can be very useful for debugging but some features may not be
implemented correctly. (For developers only)</li>
</ul>
-</li>
-</ul>
+</dd>
+</dl>
<h2>Mesa Xlib driver environment variables</h2>
@@ -168,80 +204,136 @@ home directory.
The following are only applicable to the Mesa Xlib software driver.
See the <a href="xlibdriver.html">Xlib software driver page</a> for details.
</p>
-<ul>
-<li>MESA_RGB_VISUAL - specifies the X visual and depth for RGB mode
-<li>MESA_CI_VISUAL - specifies the X visual and depth for CI mode
-<li>MESA_BACK_BUFFER - specifies how to implement the back color buffer,
- either "pixmap" or "ximage"
-<li>MESA_GAMMA - gamma correction coefficients for red, green, blue channels
-<li>MESA_XSYNC - enable synchronous X behavior (for debugging only)
-<li>MESA_GLX_FORCE_CI - if set, force GLX to treat 8bpp visuals as CI visuals
-<li>MESA_GLX_FORCE_ALPHA - if set, forces RGB windows to have an alpha channel.
-<li>MESA_GLX_DEPTH_BITS - specifies default number of bits for depth buffer.
-<li>MESA_GLX_ALPHA_BITS - specifies default number of bits for alpha channel.
-</ul>
+<dl>
+<dt>MESA_RGB_VISUAL</dt>
+<dd>specifies the X visual and depth for RGB mode</dd>
+<dt>MESA_CI_VISUAL</dt>
+<dd>specifies the X visual and depth for CI mode</dd>
+<dt>MESA_BACK_BUFFER</dt>
+<dd>specifies how to implement the back color buffer, either "pixmap" or
+ "ximage"</dd>
+<dt>MESA_GAMMA</dt>
+<dd>gamma correction coefficients for red, green, blue channels</dd>
+<dt>MESA_XSYNC</dt>
+<dd>enable synchronous X behavior (for debugging only)</dd>
+<dt>MESA_GLX_FORCE_CI</dt>
+<dd>if set, force GLX to treat 8bpp visuals as CI visuals</dd>
+<dt>MESA_GLX_FORCE_ALPHA</dt>
+<dd>if set, forces RGB windows to have an alpha channel.</dd>
+<dt>MESA_GLX_DEPTH_BITS</dt>
+<dd>specifies default number of bits for depth buffer.</dd>
+<dt>MESA_GLX_ALPHA_BITS</dt>
+<dd>specifies default number of bits for alpha channel.</dd>
+</dl>
<h2>i945/i965 driver environment variables (non-Gallium)</h2>
-<ul>
-<li>INTEL_NO_HW - if set to 1, prevents batches from being submitted to the hardware.
- This is useful for debugging hangs, etc.</li>
-<li>INTEL_DEBUG - a comma-separated list of named flags, which do various things:
-<ul>
- <li>ann - annotate IR in assembly dumps</li>
- <li>aub - dump batches into an AUB trace for use with simulation tools</li>
- <li>bat - emit batch information</li>
- <li>blit - emit messages about blit operations</li>
- <li>blorp - emit messages about the blorp operations (blits &amp; clears)</li>
- <li>buf - emit messages about buffer objects</li>
- <li>clip - emit messages about the clip unit (for old gens, includes the CLIP program)</li>
- <li>color - use color in output</li>
- <li>cs - dump shader assembly for compute shaders</li>
- <li>do32 - generate compute shader SIMD32 programs even if workgroup size doesn't exceed the SIMD16 limit</li>
- <li>dri - emit messages about the DRI interface</li>
- <li>fbo - emit messages about framebuffers</li>
- <li>fs - dump shader assembly for fragment shaders</li>
- <li>gs - dump shader assembly for geometry shaders</li>
- <li>hex - print instruction hex dump with the disassembly</li>
- <li>l3 - emit messages about the new L3 state during transitions</li>
- <li>miptree - emit messages about miptrees</li>
- <li>no8 - don't generate SIMD8 fragment shader</li>
- <li>no16 - suppress generation of 16-wide fragment shaders. useful for debugging broken shaders</li>
- <li>nocompact - disable instruction compaction</li>
- <li>nodualobj - suppress generation of dual-object geometry shader code</li>
- <li>norbc - disable single sampled render buffer compression</li>
- <li>optimizer - dump shader assembly to files at each optimization pass and iteration that make progress</li>
- <li>perf - emit messages about performance issues</li>
- <li>perfmon - emit messages about AMD_performance_monitor</li>
- <li>pix - emit messages about pixel operations</li>
- <li>prim - emit messages about drawing primitives</li>
- <li>reemit - mark all state dirty on each draw call</li>
- <li>sf - emit messages about the strips &amp; fans unit (for old gens, includes the SF program)</li>
- <li>shader_time - record how much GPU time is spent in each shader</li>
- <li>spill_fs - force spilling of all registers in the scalar backend (useful to debug spilling code)</li>
- <li>spill_vec4 - force spilling of all registers in the vec4 backend (useful to debug spilling code)</li>
- <li>state - emit messages about state flag tracking</li>
- <li>submit - emit batchbuffer usage statistics</li>
- <li>sync - after sending each batch, emit a message and wait for that batch to finish rendering</li>
- <li>tcs - dump shader assembly for tessellation control shaders</li>
- <li>tes - dump shader assembly for tessellation evaluation shaders</li>
- <li>tex - emit messages about textures.</li>
- <li>urb - emit messages about URB setup</li>
- <li>vert - emit messages about vertex assembly</li>
- <li>vs - dump shader assembly for vertex shaders</li>
-</ul>
-<li>INTEL_SCALAR_VS (or TCS, TES, GS) - force scalar/vec4 mode for a shader stage (Gen8-9 only)</li>
-<li>INTEL_PRECISE_TRIG - if set to 1, true or yes, then the driver prefers
- accuracy over performance in trig functions.</li>
-</ul>
+<dl>
+<dt>INTEL_NO_HW</dt>
+<dd>if set to 1, prevents batches from being submitted to the hardware.
+ This is useful for debugging hangs, etc.</dd>
+<dt>INTEL_DEBUG</dt>
+<dd>a comma-separated list of named flags, which do various things:
+<dl>
+ <dt>ann</dt>
+ <dd>annotate IR in assembly dumps</dd>
+ <dt>aub</dt>
+ <dd>dump batches into an AUB trace for use with simulation tools</dd>
+ <dt>bat</dt>
+ <dd>emit batch information</dd>
+ <dt>blit</dt>
+ <dd>emit messages about blit operations</dd>
+ <dt>blorp</dt>
+ <dd>emit messages about the blorp operations (blits &amp; clears)</dd>
+ <dt>buf</dt>
+ <dd>emit messages about buffer objects</dd>
+ <dt>clip</dt>
+ <dd>emit messages about the clip unit (for old gens, includes the CLIP program)</dd>
+ <dt>color</dt>
+ <dd>use color in output</dd>
+ <dt>cs</dt>
+ <dd>dump shader assembly for compute shaders</dd>
+ <dt>do32</dt>
+ <dd>generate compute shader SIMD32 programs even if workgroup size doesn't exceed the SIMD16 limit</dd>
+ <dt>dri</dt>
+ <dd>emit messages about the DRI interface</dd>
+ <dt>fbo</dt>
+ <dd>emit messages about framebuffers</dd>
+ <dt>fs</dt>
+ <dd>dump shader assembly for fragment shaders</dd>
+ <dt>gs</dt>
+ <dd>dump shader assembly for geometry shaders</dd>
+ <dt>hex</dt>
+ <dd>print instruction hex dump with the disassembly</dd>
+ <dt>l3</dt>
+ <dd>emit messages about the new L3 state during transitions</dd>
+ <dt>miptree</dt>
+ <dd>emit messages about miptrees</dd>
+ <dt>no8</dt>
+ <dd>don't generate SIMD8 fragment shader</dd>
+ <dt>no16</dt>
+ <dd>suppress generation of 16-wide fragment shaders. useful for debugging broken shaders</dd>
+ <dt>nocompact</dt>
+ <dd>disable instruction compaction</dd>
+ <dt>nodualobj</dt>
+ <dd>suppress generation of dual-object geometry shader code</dd>
+ <dt>norbc</dt>
+ <dd>disable single sampled render buffer compression</dd>
+ <dt>optimizer</dt>
+ <dd>dump shader assembly to files at each optimization pass and iteration that make progress</dd>
+ <dt>perf</dt>
+ <dd>emit messages about performance issues</dd>
+ <dt>perfmon</dt>
+ <dd>emit messages about AMD_performance_monitor</dd>
+ <dt>pix</dt>
+ <dd>emit messages about pixel operations</dd>
+ <dt>prim</dt>
+ <dd>emit messages about drawing primitives</dd>
+ <dt>reemit</dt>
+ <dd>mark all state dirty on each draw call</dd>
+ <dt>sf</dt>
+ <dd>emit messages about the strips &amp; fans unit (for old gens, includes the SF program)</dd>
+ <dt>shader_time</dt>
+ <dd>record how much GPU time is spent in each shader</dd>
+ <dt>spill_fs</dt>
+ <dd>force spilling of all registers in the scalar backend (useful to debug spilling code)</dd>
+ <dt>spill_vec4</dt>
+ <dd>force spilling of all registers in the vec4 backend (useful to debug spilling code)</dd>
+ <dt>state</dt>
+ <dd>emit messages about state flag tracking</dd>
+ <dt>submit</dt>
+ <dd>emit batchbuffer usage statistics</dd>
+ <dt>sync</dt>
+ <dd>after sending each batch, emit a message and wait for that batch to finish rendering</dd>
+ <dt>tcs</dt>
+ <dd>dump shader assembly for tessellation control shaders</dd>
+ <dt>tes</dt>
+ <dd>dump shader assembly for tessellation evaluation shaders</dd>
+ <dt>tex</dt>
+ <dd>emit messages about textures.</dd>
+ <dt>urb</dt>
+ <dd>emit messages about URB setup</dd>
+ <dt>vert</dt>
+ <dd>emit messages about vertex assembly</dd>
+ <dt>vs</dt>
+ <dd>dump shader assembly for vertex shaders</dd>
+</dl>
+</dd>
+<dt>INTEL_SCALAR_VS (or TCS, TES, GS)</dt>
+<dd>force scalar/vec4 mode for a shader stage (Gen8-9 only)</dd>
+<dt>INTEL_PRECISE_TRIG</dt>
+<dd>if set to 1, true or yes, then the driver prefers accuracy over
+ performance in trig functions.</dd>
+</dl>
<h2>Radeon driver environment variables (radeon, r200, and r300g)</h2>
-<ul>
-<li>RADEON_NO_TCL - if set, disable hardware-accelerated Transform/Clip/Lighting.
-</ul>
+<dl>
+<dt>RADEON_NO_TCL</dt>
+<dd>if set, disable hardware-accelerated Transform/Clip/Lighting.</dd>
+</dl>
<h2>EGL environment variables</h2>
@@ -254,122 +346,164 @@ Mesa EGL supports different sets of environment variables. See the
<h2>Gallium environment variables</h2>
-<ul>
-<li>GALLIUM_HUD - draws various information on the screen, like framerate,
+<dl>
+<dt>GALLIUM_HUD</dt>
+<dd>draws various information on the screen, like framerate,
cpu load, driver statistics, performance counters, etc.
- Set GALLIUM_HUD=help and run e.g. glxgears for more info.
-<li>GALLIUM_HUD_PERIOD - sets the hud update rate in seconds (float). Use zero
- to update every frame. The default period is 1/2 second.
-<li>GALLIUM_HUD_VISIBLE - control default visibility, defaults to true.
-<li>GALLIUM_HUD_TOGGLE_SIGNAL - toggle visibility via user specified signal.
+ Set GALLIUM_HUD=help and run e.g. glxgears for more info.</dd>
+<dt>GALLIUM_HUD_PERIOD</dt>
+<dd>sets the hud update rate in seconds (float). Use zero
+ to update every frame. The default period is 1/2 second.</dd>
+<dt>GALLIUM_HUD_VISIBLE</dt>
+<dd>control default visibility, defaults to true.</dd>
+<dt>GALLIUM_HUD_TOGGLE_SIGNAL</dt>
+<dd>toggle visibility via user specified signal.
Especially useful to toggle hud at specific points of application and
disable for unencumbered viewing the rest of the time. For example, set
GALLIUM_HUD_VISIBLE to false and GALLIUM_HUD_TOGGLE_SIGNAL to 10 (SIGUSR1).
- Use kill -10 &lt;pid&gt; to toggle the hud as desired.
-<li>GALLIUM_HUD_DUMP_DIR - specifies a directory for writing the displayed
- hud values into files.
-<li>GALLIUM_DRIVER - useful in combination with LIBGL_ALWAYS_SOFTWARE=true for
- choosing one of the software renderers "softpipe", "llvmpipe" or "swr".
-<li>GALLIUM_LOG_FILE - specifies a file for logging all errors, warnings, etc.
- rather than stderr.
-<li>GALLIUM_PRINT_OPTIONS - if non-zero, print all the Gallium environment
- variables which are used, and their current values.
-<li>GALLIUM_DUMP_CPU - if non-zero, print information about the CPU on start-up
-<li>TGSI_PRINT_SANITY - if set, do extra sanity checking on TGSI shaders and
- print any errors to stderr.
-<LI>DRAW_FSE - ???
-<LI>DRAW_NO_FSE - ???
-<li>DRAW_USE_LLVM - if set to zero, the draw module will not use LLVM to execute
- shaders, vertex fetch, etc.
-<li>ST_DEBUG - controls debug output from the Mesa/Gallium state tracker.
-Setting to "tgsi", for example, will print all the TGSI shaders.
-See src/mesa/state_tracker/st_debug.c for other options.
-</ul>
+ Use kill -10 &lt;pid&gt; to toggle the hud as desired.</dd>
+<dt>GALLIUM_HUD_DUMP_DIR</dt>
+<dd>specifies a directory for writing the displayed hud values into files.</dd>
+<dt>GALLIUM_DRIVER</dt>
+<dd>useful in combination with LIBGL_ALWAYS_SOFTWARE=true for choosing one
+ of the software renderers "softpipe", "llvmpipe" or "swr".</dd>
+<dt>GALLIUM_LOG_FILE</dt>
+<dd>specifies a file for logging all errors, warnings, etc.
+ rather than stderr.</dd>
+<dt>GALLIUM_PRINT_OPTIONS</dt>
+<dd>if non-zero, print all the Gallium environment variables which are
+ used, and their current values.</dd>
+<dt>GALLIUM_DUMP_CPU</dt>
+<dd>if non-zero, print information about the CPU on start-up</dd>
+<dt>TGSI_PRINT_SANITY</dt>
+<dd>if set, do extra sanity checking on TGSI shaders and
+ print any errors to stderr.</dd>
+<dt>DRAW_FSE</dt>
+<dd>???</dd>
+<dt>DRAW_NO_FSE</dt>
+<dd>???</dd>
+<dt>DRAW_USE_LLVM</dt>
+<dd>if set to zero, the draw module will not use LLVM to execute
+ shaders, vertex fetch, etc.</dd>
+<dt>ST_DEBUG</dt>
+<dd>controls debug output from the Mesa/Gallium state tracker.
+ Setting to "tgsi", for example, will print all the TGSI shaders.
+ See src/mesa/state_tracker/st_debug.c for other options.</dd>
+</dl>
<h3>Clover state tracker environment variables</h3>
-<ul>
-<li>CLOVER_EXTRA_BUILD_OPTIONS - allows specifying additional compiler and linker
+<dl>
+<dt>CLOVER_EXTRA_BUILD_OPTIONS</dt>
+<dd>allows specifying additional compiler and linker
options. Specified options are appended after the options set by the OpenCL
- program in clBuildProgram.
-<li>CLOVER_EXTRA_COMPILE_OPTIONS - allows specifying additional compiler
+ program in clBuildProgram.</dd>
+<dt>CLOVER_EXTRA_COMPILE_OPTIONS</dt>
+<dd>allows specifying additional compiler
options. Specified options are appended after the options set by the OpenCL
- program in clCompileProgram.
-<li>CLOVER_EXTRA_LINK_OPTIONS - allows specifying additional linker
+ program in clCompileProgram.</dd>
+<dt>CLOVER_EXTRA_LINK_OPTIONS</dt>
+<dd>allows specifying additional linker
options. Specified options are appended after the options set by the OpenCL
- program in clLinkProgram.
-</ul>
+ program in clLinkProgram.</dd>
+</dl>
<h3>Softpipe driver environment variables</h3>
-<ul>
-<li>SOFTPIPE_DUMP_FS - if set, the softpipe driver will print fragment shaders
- to stderr
-<li>SOFTPIPE_DUMP_GS - if set, the softpipe driver will print geometry shaders
- to stderr
-<li>SOFTPIPE_NO_RAST - if set, rasterization is no-op'd. For profiling purposes.
-<li>SOFTPIPE_USE_LLVM - if set, the softpipe driver will try to use LLVM JIT for
- vertex shading processing.
-</ul>
+<dl>
+<dt>SOFTPIPE_DUMP_FS</dt>
+<dd>if set, the softpipe driver will print fragment shaders to stderr</dd>
+<dt>SOFTPIPE_DUMP_GS</dt>
+<dd>if set, the softpipe driver will print geometry shaders to stderr</dd>
+<dt>SOFTPIPE_NO_RAST</dt>
+<dd>if set, rasterization is no-op'd. For profiling purposes.</dd>
+<dt>SOFTPIPE_USE_LLVM</dt>
+<dd>if set, the softpipe driver will try to use LLVM JIT for
+ vertex shading processing.</dd>
+</dl>
<h3>LLVMpipe driver environment variables</h3>
-<ul>
-<li>LP_NO_RAST - if set LLVMpipe will no-op rasterization
-<li>LP_DEBUG - a comma-separated list of debug options is accepted. See the
- source code for details.
-<li>LP_PERF - a comma-separated list of options to selectively no-op various
- parts of the driver. See the source code for details.
-<li>LP_NUM_THREADS - an integer indicating how many threads to use for rendering.
+<dl>
+<dt>LP_NO_RAST</dt>
+<dd>if set LLVMpipe will no-op rasterization</dd>
+<dt>LP_DEBUG</dt>
+<dd>a comma-separated list of debug options is accepted. See the
+ source code for details.</dd>
+<dt>LP_PERF</dt>
+<dd>a comma-separated list of options to selectively no-op various
+ parts of the driver. See the source code for details.</dd>
+<dt>LP_NUM_THREADS</dt>
+<dd>an integer indicating how many threads to use for rendering.
Zero turns off threading completely. The default value is the number of CPU
- cores present.
-</ul>
+ cores present.</dd>
+</dl>
<h3>VMware SVGA driver environment variables</h3>
-<ul>
-<li>SVGA_FORCE_SWTNL - force use of software vertex transformation
-<li>SVGA_NO_SWTNL - don't allow software vertex transformation fallbacks
-(will often result in incorrect rendering).
-<li>SVGA_DEBUG - for dumping shaders, constant buffers, etc. See the code
-for details.
-<li>SVGA_EXTRA_LOGGING - if set, enables extra logging to the vmware.log file,
-such as the OpenGL program's name and command line arguments.
-<li>SVGA_NO_LOGGING - if set, disables logging to the vmware.log file.
-This is useful when using Valgrind because it otherwise crashes when
-initializing the host log feature.
-<li>See the driver code for other, lesser-used variables.
-</ul>
+<dl>
+<dt>SVGA_FORCE_SWTNL</dt>
+<dd>force use of software vertex transformation</dd>
+<dt>SVGA_NO_SWTNL</dt>
+<dd>don't allow software vertex transformation fallbacks (will often result
+ in incorrect rendering).</dd>
+<dt>SVGA_DEBUG</dt>
+<dd>for dumping shaders, constant buffers, etc. See the code for
+ details.</dd>
+<dt>SVGA_EXTRA_LOGGING</dt>
+<dd>if set, enables extra logging to the vmware.log file, such as the
+ OpenGL program's name and command line arguments.</dd>
+<dt>SVGA_NO_LOGGING</dt>
+<dd>if set, disables logging to the vmware.log file. This is useful when
+ using Valgrind because it otherwise crashes when initializing the host
+ log feature.</dd>
+</dl>
+<p>See the driver code for other, lesser-used variables.</p>
<h3>WGL environment variables</h3>
-<ul>
-<li>WGL_SWAP_INTERVAL - to set a swap interval, equivalent to calling
-wglSwapIntervalEXT() in an application. If this environment variable
-is set, application calls to wglSwapIntervalEXT() will have no effect.
-</ul>
+<dl>
+<dt>WGL_SWAP_INTERVAL</dt>
+<dd>to set a swap interval, equivalent to calling wglSwapIntervalEXT()
+ in an application. If this environment variable is set, application
+ calls to wglSwapIntervalEXT() will have no effect.</dd>
+</dl>
<h3>VA-API state tracker environment variables</h3>
-<ul>
-<li>VAAPI_MPEG4_ENABLED - enable MPEG4 for VA-API, disabled by default.
-</ul>
+<dl>
+<dt>VAAPI_MPEG4_ENABLED</dt>
+<dd>enable MPEG4 for VA-API, disabled by default.</dd>
+</dl>
<h3>VC4 driver environment variables</h3>
-<ul>
-<li>VC4_DEBUG - a comma-separated list of named flags, which do various things:
-<ul>
- <li>cl - dump command list during creation</li>
- <li>qpu - dump generated QPU instructions</li>
- <li>qir - dump QPU IR during program compile</li>
- <li>nir - dump NIR during program compile</li>
- <li>tgsi - dump TGSI during program compile</li>
- <li>shaderdb - dump program compile information for shader-db analysis</li>
- <li>perf - print during performance-related events</li>
- <li>norast - skip actual hardware execution of commands</li>
- <li>always_flush - flush after each draw call</li>
- <li>always_sync - wait for finish after each flush</li>
- <li>dump - write a GPU command stream trace file (VC4 simulator only)</li>
-</ul>
-</ul>
+<dl>
+<dt>VC4_DEBUG</dt>
+<dd>a comma-separated list of named flags, which do various things:
+<dl>
+ <dt>cl</dt>
+ <dd>dump command list during creation</dd>
+ <dt>qpu</dt>
+ <dd>dump generated QPU instructions</dd>
+ <dt>qir</dt>
+ <dd>dump QPU IR during program compile</dd>
+ <dt>nir</dt>
+ <dd>dump NIR during program compile</dd>
+ <dt>tgsi</dt>
+ <dd>dump TGSI during program compile</dd>
+ <dt>shaderdb</dt>
+ <dd>dump program compile information for shader-db analysis</dd>
+ <dt>perf</dt>
+ <dd>print during performance-related events</dd>
+ <dt>norast</dt>
+ <dd>skip actual hardware execution of commands</dd>
+ <dt>always_flush</dt>
+ <dd>flush after each draw call</dd>
+ <dt>always_sync</dt>
+ <dd>wait for finish after each flush</dd>
+ <dt>dump</dt>
+ <dd>write a GPU command stream trace file (VC4 simulator only)</dd>
+</dl>
+</dd>
+</dl>
<p>