docs: Document shader capturing environment variables.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 11 Sep 2017 22:47:55 +0000 (15:47 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Tue, 12 Sep 2017 16:27:09 +0000 (09:27 -0700)
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
docs/envvars.html
docs/shading.html

index 51c930f013f094c61b6d9b71594d96ae8595f872..17d69dc4cd40cb1a5ba42b8b7a832a3776b740cb 100644 (file)
@@ -133,6 +133,8 @@ that variable is set), or else within .cache/mesa 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>
 </ul>
 
 
index 8b4cfb36a1fe38d312f5a4eeaa67d90fb11a1552..a0bbe997c1b8eeea572fa16260b4af329689cb9c 100644 (file)
@@ -64,6 +64,7 @@ execution.  These are generally used for debugging.
 Example:  export MESA_GLSL=dump,nopt
 </p>
 
+<h3 id="replacement">Experimenting with Shader Replacements</h3>
 <p>
 Shaders can be dumped and replaced on runtime for debugging purposes. This
 feature is not currently supported by SCons build.
@@ -79,6 +80,20 @@ not clobber the replacement shaders. Also, the filenames of the replacement shad
 should match the filenames of the corresponding dumped shaders.
 </p>
 
+<h3 id="capture">Capturing Shaders</h3>
+
+<p>
+Setting <b>MESA_SHADER_CAPTURE_PATH</b> to a directory will cause the compiler
+to write <tt>.shader_test</tt> files for use with
+<a href="https://cgit.freedesktop.org/mesa/shader-db">shader-db</a>, a tool
+which compiler developers can use to gather statistics about shaders
+(instructions, cycles, memory accesses, and so on).
+</p>
+<p>
+Notably, this captures linked GLSL shaders - with all stages together -
+as well as ARB programs.
+</p>
+
 <h2 id="support">GLSL Version</h2>
 
 <p>