diff options
author | Eric Anholt <[email protected]> | 2011-11-23 10:01:39 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2011-11-30 11:22:53 -0800 |
commit | c6abde211fa875f90e59e3709720cfe394669069 (patch) | |
tree | e8f1178e86fb9524d544d3f79ede33c2713adaf8 /src/mesa/drivers/dri/i965/brw_shader.cpp | |
parent | 0a22fb6a5d519ca26d423fa4a9404697dca56cbf (diff) |
i965: Don't perform the precompile on fragment shaders by default.
It is useful to have this option for shader-db, and it was also good
at the time where we were rejecting shaders due to various internal
limits we hadn't supported yet. However, at this point the precompile
step takes extra time (since not all NOS is known at link time) and
spews misleading debug in the common case of debugging a real app.
This is left in place for VS, where we still have a couple of codegen
failure paths that result in link failure through precompile. Those
need to be fixed.
shader-db can still get at the debug info it wants using
"shader_precompile=true" driconf option. Long term, we can probably
build a good-enough app for shader-db to trigger real codegen.
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_shader.cpp')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_shader.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp index f25fab30a03..33c9ae57ac2 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.cpp +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp @@ -65,7 +65,9 @@ brw_new_shader_program(struct gl_context *ctx, GLuint name) bool brw_shader_precompile(struct gl_context *ctx, struct gl_shader_program *prog) { - if (!brw_fs_precompile(ctx, prog)) + struct brw_context *brw = brw_context(ctx); + + if (brw->precompile && !brw_fs_precompile(ctx, prog)) return false; if (!brw_vs_precompile(ctx, prog)) |