diff options
author | Eric Anholt <[email protected]> | 2010-08-05 10:09:12 -0700 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2010-08-05 10:18:31 -0700 |
commit | 2e853ca23c8670246dd4efcee0706f68097652f7 (patch) | |
tree | 9b5e1f32cf565e3367f574d4c918e676e0d68060 /src/glsl/ir_optimization.h | |
parent | c5b9cab49900cbcab78911361976a3678d49e853 (diff) |
glsl2: Add a pass for removing unused functions.
For a shader involving many small functions, this avoids running
optimization across all of them after they've been inlined
post-linking.
Reduces the runtime of linking and running a fragment shader from Yo
Frankie from 1.6 seconds to 0.9 seconds (-44.9%, +/- 3.3%).
Diffstat (limited to 'src/glsl/ir_optimization.h')
-rw-r--r-- | src/glsl/ir_optimization.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/glsl/ir_optimization.h b/src/glsl/ir_optimization.h index 55ec3271936..e0c0715cf5b 100644 --- a/src/glsl/ir_optimization.h +++ b/src/glsl/ir_optimization.h @@ -36,6 +36,7 @@ bool do_copy_propagation(exec_list *instructions); bool do_dead_code(exec_list *instructions); bool do_dead_code_local(exec_list *instructions); bool do_dead_code_unlinked(exec_list *instructions); +bool do_dead_functions(exec_list *instructions); bool do_div_to_mul_rcp(exec_list *instructions); bool do_function_inlining(exec_list *instructions); bool do_if_return(exec_list *instructions); |