diff options
author | Timothy Arceri <[email protected]> | 2016-11-22 16:56:21 +1100 |
---|---|---|
committer | Timothy Arceri <[email protected]> | 2017-02-09 12:22:56 +1100 |
commit | 0bf21519b7daa356724d2f3fcb7f954a7700ccde (patch) | |
tree | 900161cc56d26d561490600f9e79799353c60183 | |
parent | 4026b45bbc4c2c067feeee181c54e2beaa1cc5e0 (diff) |
glsl: add param to force shader recompile
This will be used to skip checking the cache and force a recompile.
Reviewed-by: Anuj Phogat <[email protected]>
-rw-r--r-- | src/compiler/glsl/glsl_parser_extras.cpp | 2 | ||||
-rw-r--r-- | src/compiler/glsl/program.h | 2 | ||||
-rw-r--r-- | src/compiler/glsl/standalone.cpp | 3 | ||||
-rw-r--r-- | src/mesa/main/shaderapi.c | 2 |
4 files changed, 5 insertions, 4 deletions
diff --git a/src/compiler/glsl/glsl_parser_extras.cpp b/src/compiler/glsl/glsl_parser_extras.cpp index 59787bda466..6fe1dd959f6 100644 --- a/src/compiler/glsl/glsl_parser_extras.cpp +++ b/src/compiler/glsl/glsl_parser_extras.cpp @@ -1911,7 +1911,7 @@ do_late_parsing_checks(struct _mesa_glsl_parse_state *state) void _mesa_glsl_compile_shader(struct gl_context *ctx, struct gl_shader *shader, - bool dump_ast, bool dump_hir) + bool dump_ast, bool dump_hir, bool force_recompile) { struct _mesa_glsl_parse_state *state = new(shader) _mesa_glsl_parse_state(ctx, shader->Stage, shader); diff --git a/src/compiler/glsl/program.h b/src/compiler/glsl/program.h index 8f5a31bd5ba..58a7069d479 100644 --- a/src/compiler/glsl/program.h +++ b/src/compiler/glsl/program.h @@ -33,7 +33,7 @@ struct gl_shader_program; extern void _mesa_glsl_compile_shader(struct gl_context *ctx, struct gl_shader *shader, - bool dump_ast, bool dump_hir); + bool dump_ast, bool dump_hir, bool force_recompile); #ifdef __cplusplus } /* extern "C" */ diff --git a/src/compiler/glsl/standalone.cpp b/src/compiler/glsl/standalone.cpp index 7a2d3d200f0..521964bf9cc 100644 --- a/src/compiler/glsl/standalone.cpp +++ b/src/compiler/glsl/standalone.cpp @@ -381,7 +381,8 @@ compile_shader(struct gl_context *ctx, struct gl_shader *shader) struct _mesa_glsl_parse_state *state = new(shader) _mesa_glsl_parse_state(ctx, shader->Stage, shader); - _mesa_glsl_compile_shader(ctx, shader, options->dump_ast, options->dump_hir); + _mesa_glsl_compile_shader(ctx, shader, options->dump_ast, + options->dump_hir, true); /* Print out the resulting IR */ if (!state->error && options->dump_lir) { diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index 4406aaa9803..3de0a7eeabf 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -1036,7 +1036,7 @@ _mesa_compile_shader(struct gl_context *ctx, struct gl_shader *sh) /* this call will set the shader->CompileStatus field to indicate if * compilation was successful. */ - _mesa_glsl_compile_shader(ctx, sh, false, false); + _mesa_glsl_compile_shader(ctx, sh, false, false, false); if (ctx->_Shader->Flags & GLSL_LOG) { _mesa_write_shader_to_file(sh); |