summaryrefslogtreecommitdiffstats
path: root/src/glsl/nir/nir.h
diff options
context:
space:
mode:
authorJason Ekstrand <[email protected]>2015-01-21 15:23:32 -0800
committerJason Ekstrand <[email protected]>2015-02-03 12:33:11 -0800
commitf2adcd36cb4f95d13bd820c3ba51451a9bf1df4f (patch)
treebb162d1ca2b8a98fe7ef14a7b34026e282452f28 /src/glsl/nir/nir.h
parente87928a494a7cf0985a9d1cd78bda8729d17c614 (diff)
nir: Add a pass to lower vector phi nodes to scalar phi nodes
v2 Jason Ekstrand <[email protected]>: - Add better comments - Use nir_ssa_dest_init and nir_src_for_ssa more places - Fix some void * casts v3 Jason Ekstrand <[email protected]>: - Rework the way we determine whether or not to sccalarize a phi node to make the recursion non-bogus - Treat load_const instructions as scalarizable v4 Jason Ekstrand <[email protected]>: - Allow uniform and input loads to be scalarizable v5 Jason Ekstrand <[email protected]>: - Also consider loads of inputs (varying, uniform, or ubo) to be scalarizable. We were already doing this for load_var on uniforms and inputs. Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/glsl/nir/nir.h')
-rw-r--r--src/glsl/nir/nir.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/glsl/nir/nir.h b/src/glsl/nir/nir.h
index 98d26896019..866ac5d4751 100644
--- a/src/glsl/nir/nir.h
+++ b/src/glsl/nir/nir.h
@@ -1527,6 +1527,8 @@ void nir_remove_dead_variables(nir_shader *shader);
void nir_lower_vec_to_movs(nir_shader *shader);
void nir_lower_alu_to_scalar(nir_shader *shader);
+void nir_lower_phis_to_scalar(nir_shader *shader);
+
void nir_lower_samplers(nir_shader *shader,
struct gl_shader_program *shader_program,
struct gl_program *prog);