summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2014-04-08 15:43:46 -0700
committerKenneth Graunke <[email protected]>2014-04-11 17:41:37 -0700
commitda22221aa365923e033a65c1fbe19ed27301d000 (patch)
tree8a5ebb22586a159dd16b6b5ce9dc582ed9ca5fc0
parentf00a6483e997e8377b62940e6cbe8f750272e3e9 (diff)
glsl: Drop do_common_optimization's max_unroll_iterations parameter.
Now that we pass in gl_shader_compiler_options, it makes sense to just use options->MaxUnrollIterations, rather than passing a separate parameter. Half of the invocations already passed options->MaxUnrollIterations, while the other half passed in a hardcoded value of 32. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r--src/glsl/glsl_parser_extras.cpp5
-rw-r--r--src/glsl/ir_optimization.h1
-rw-r--r--src/glsl/linker.cpp4
-rw-r--r--src/glsl/test_optpass.cpp5
-rw-r--r--src/mesa/drivers/dri/i965/brw_shader.cpp2
-rw-r--r--src/mesa/main/ff_fragment_shader.cpp2
-rw-r--r--src/mesa/program/ir_to_mesa.cpp1
-rw-r--r--src/mesa/state_tracker/st_glsl_to_tgsi.cpp4
8 files changed, 8 insertions, 16 deletions
diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp
index a42f3d23df0..1fcd5f8ca0a 100644
--- a/src/glsl/glsl_parser_extras.cpp
+++ b/src/glsl/glsl_parser_extras.cpp
@@ -1444,7 +1444,7 @@ _mesa_glsl_compile_shader(struct gl_context *ctx, struct gl_shader *shader,
/* Do some optimization at compile time to reduce shader IR size
* and reduce later work if the same shader is linked multiple times
*/
- while (do_common_optimization(shader->ir, false, false, 32, options,
+ while (do_common_optimization(shader->ir, false, false, options,
ctx->Const.NativeIntegers))
;
@@ -1492,7 +1492,6 @@ _mesa_glsl_compile_shader(struct gl_context *ctx, struct gl_shader *shader,
bool
do_common_optimization(exec_list *ir, bool linked,
bool uniform_locations_assigned,
- unsigned max_unroll_iterations,
const struct gl_shader_compiler_options *options,
bool native_integers)
{
@@ -1543,7 +1542,7 @@ do_common_optimization(exec_list *ir, bool linked,
loop_state *ls = analyze_loop_variables(ir);
if (ls->loop_found) {
progress = set_loop_controls(ir, ls) || progress;
- progress = unroll_loops(ir, ls, max_unroll_iterations) || progress;
+ progress = unroll_loops(ir, ls, options->MaxUnrollIterations) || progress;
}
delete ls;
diff --git a/src/glsl/ir_optimization.h b/src/glsl/ir_optimization.h
index 665124a7d30..40bb6139285 100644
--- a/src/glsl/ir_optimization.h
+++ b/src/glsl/ir_optimization.h
@@ -66,7 +66,6 @@ enum lower_packing_builtins_op {
bool do_common_optimization(exec_list *ir, bool linked,
bool uniform_locations_assigned,
- unsigned max_unroll_iterations,
const struct gl_shader_compiler_options *options,
bool native_integers);
diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp
index 7c194a26a36..c8dc0661dfd 100644
--- a/src/glsl/linker.cpp
+++ b/src/glsl/linker.cpp
@@ -2296,10 +2296,8 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog)
lower_clip_distance(prog->_LinkedShaders[i]);
}
- unsigned max_unroll = ctx->ShaderCompilerOptions[i].MaxUnrollIterations;
-
while (do_common_optimization(prog->_LinkedShaders[i]->ir, true, false,
- max_unroll, &ctx->ShaderCompilerOptions[i],
+ &ctx->ShaderCompilerOptions[i],
ctx->Const.NativeIntegers))
;
}
diff --git a/src/glsl/test_optpass.cpp b/src/glsl/test_optpass.cpp
index 79fb17a9e4c..db5cb266207 100644
--- a/src/glsl/test_optpass.cpp
+++ b/src/glsl/test_optpass.cpp
@@ -62,9 +62,8 @@ do_optimization(struct exec_list *ir, const char *optimization,
int int_3;
int int_4;
- if (sscanf(optimization, "do_common_optimization ( %d , %d ) ",
- &int_0, &int_1) == 2) {
- return do_common_optimization(ir, int_0 != 0, false, int_1, options, true);
+ if (sscanf(optimization, "do_common_optimization ( %d ) ", &int_0) == 1) {
+ return do_common_optimization(ir, int_0 != 0, false, options, true);
} else if (strcmp(optimization, "do_algebraic") == 0) {
return do_algebraic(ir, true);
} else if (strcmp(optimization, "do_constant_folding") == 0) {
diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp
index 7a6cd7c17f2..c32e66c9f80 100644
--- a/src/mesa/drivers/dri/i965/brw_shader.cpp
+++ b/src/mesa/drivers/dri/i965/brw_shader.cpp
@@ -200,7 +200,7 @@ brw_link_shader(struct gl_context *ctx, struct gl_shader_program *shProg)
false /* loops */
) || progress;
- progress = do_common_optimization(shader->base.ir, true, true, 32,
+ progress = do_common_optimization(shader->base.ir, true, true,
options, ctx->Const.NativeIntegers)
|| progress;
} while (progress);
diff --git a/src/mesa/main/ff_fragment_shader.cpp b/src/mesa/main/ff_fragment_shader.cpp
index e41dcefb0c6..66c18fa1670 100644
--- a/src/mesa/main/ff_fragment_shader.cpp
+++ b/src/mesa/main/ff_fragment_shader.cpp
@@ -1344,7 +1344,7 @@ create_new_program(struct gl_context *ctx, struct state_key *key)
const struct gl_shader_compiler_options *options =
&ctx->ShaderCompilerOptions[MESA_SHADER_FRAGMENT];
- while (do_common_optimization(p.shader->ir, false, false, 32, options,
+ while (do_common_optimization(p.shader->ir, false, false, options,
ctx->Const.NativeIntegers))
;
reparent_ir(p.shader->ir, p.shader->ir);
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index 675e58e2a97..59cf1232ad0 100644
--- a/src/mesa/program/ir_to_mesa.cpp
+++ b/src/mesa/program/ir_to_mesa.cpp
@@ -3007,7 +3007,6 @@ _mesa_ir_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
progress = do_lower_jumps(ir, true, true, options->EmitNoMainReturn, options->EmitNoCont, options->EmitNoLoops) || progress;
progress = do_common_optimization(ir, true, true,
- options->MaxUnrollIterations,
options, ctx->Const.NativeIntegers)
|| progress;
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
index 28e8f1ecbc5..edd0aa7658d 100644
--- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
@@ -5357,9 +5357,7 @@ st_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
progress = do_lower_jumps(ir, true, true, options->EmitNoMainReturn, options->EmitNoCont, options->EmitNoLoops) || progress;
- progress = do_common_optimization(ir, true, true,
- options->MaxUnrollIterations,
- options,
+ progress = do_common_optimization(ir, true, true, options,
ctx->Const.NativeIntegers)
|| progress;