X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Ffreedreno%2Fir3%2Fir3_nir.h;h=4126d4e48686107673271acebe50e1aeedfd7e8c;hb=857008850f37886f3febeaaf3b4e42f3db4e7603;hp=67c56f931d7959c83304911bb93bd54fee6bc4bf;hpb=65660622a1f7284c457388e553867b239343d314;p=mesa.git diff --git a/src/freedreno/ir3/ir3_nir.h b/src/freedreno/ir3/ir3_nir.h index 67c56f931d7..4126d4e4868 100644 --- a/src/freedreno/ir3/ir3_nir.h +++ b/src/freedreno/ir3/ir3_nir.h @@ -45,20 +45,21 @@ bool ir3_nir_lower_tex_prefetch(nir_shader *shader); void ir3_nir_lower_to_explicit_output(nir_shader *shader, - struct ir3_shader *s, unsigned topology); -void ir3_nir_lower_to_explicit_input(nir_shader *shader); -void ir3_nir_lower_tess_ctrl(nir_shader *shader, struct ir3_shader *s, unsigned topology); + struct ir3_shader_variant *v, unsigned topology); +void ir3_nir_lower_to_explicit_input(nir_shader *shader, struct ir3_compiler *compiler); +void ir3_nir_lower_tess_ctrl(nir_shader *shader, struct ir3_shader_variant *v, unsigned topology); void ir3_nir_lower_tess_eval(nir_shader *shader, unsigned topology); void ir3_nir_lower_gs(nir_shader *shader); const nir_shader_compiler_options * ir3_get_compiler_options(struct ir3_compiler *compiler); -void ir3_optimize_nir(struct ir3_shader *shader, nir_shader *s); +void ir3_finalize_nir(struct ir3_compiler *compiler, nir_shader *s); +void ir3_nir_post_finalize(struct ir3_compiler *compiler, nir_shader *s); void ir3_nir_lower_variant(struct ir3_shader_variant *so, nir_shader *s); -void ir3_setup_const_state(struct ir3_shader *shader, nir_shader *nir, +void ir3_setup_const_state(nir_shader *nir, struct ir3_shader_variant *v, struct ir3_const_state *const_state); - -bool ir3_nir_analyze_ubo_ranges(nir_shader *nir, struct ir3_shader *shader); +void ir3_nir_analyze_ubo_ranges(nir_shader *nir, struct ir3_shader_variant *v); +bool ir3_nir_lower_ubo_loads(nir_shader *nir, struct ir3_shader_variant *v); nir_ssa_def * ir3_nir_try_propagate_bit_shift(nir_builder *b, nir_ssa_def *offset, int32_t shift);