Mesa (master): nir: Make nir_lower_io_to_temporaries store an impl internally.

Kenneth Graunke kwg at kemper.freedesktop.org
Fri Aug 26 03:05:53 UTC 2016


Module: Mesa
Branch: master
Commit: 8479b03c5826f32355775d865d99d69c829e65bb
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8479b03c5826f32355775d865d99d69c829e65bb

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Wed Aug 24 19:15:53 2016 -0700

nir: Make nir_lower_io_to_temporaries store an impl internally.

This changes the pass internals to work with a nir_function_impl
directly rather than a nir_function.  The next patch will change
the API.

v2: Rebase after framebuffer fetch landed.

Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
Reviewed-by: Connor Abbott <cwabbott0 at gmail.com>

---

 src/compiler/nir/nir_lower_io_to_temporaries.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/compiler/nir/nir_lower_io_to_temporaries.c b/src/compiler/nir/nir_lower_io_to_temporaries.c
index c8f94ff..8cbf683 100644
--- a/src/compiler/nir/nir_lower_io_to_temporaries.c
+++ b/src/compiler/nir/nir_lower_io_to_temporaries.c
@@ -34,7 +34,7 @@
 
 struct lower_io_state {
    nir_shader *shader;
-   nir_function *entrypoint;
+   nir_function_impl *entrypoint;
    struct exec_list old_outputs;
    struct exec_list old_inputs;
 };
@@ -93,7 +93,7 @@ emit_output_copies_impl(struct lower_io_state *state, nir_function_impl *impl)
             }
          }
       }
-   } else if (impl->function == state->entrypoint) {
+   } else if (impl == state->entrypoint) {
       nir_cursor cursor = nir_before_block(nir_start_block(impl));
       emit_copies(cursor, state->shader, &state->old_outputs,
                   &state->shader->outputs);
@@ -114,7 +114,7 @@ emit_output_copies_impl(struct lower_io_state *state, nir_function_impl *impl)
 static void
 emit_input_copies_impl(struct lower_io_state *state, nir_function_impl *impl)
 {
-   if (impl->function == state->entrypoint) {
+   if (impl == state->entrypoint) {
       nir_cursor cursor = nir_before_block(nir_start_block(impl));
       emit_copies(cursor, state->shader, &state->old_inputs,
                   &state->shader->inputs);
@@ -157,7 +157,7 @@ nir_lower_io_to_temporaries(nir_shader *shader, nir_function *entrypoint,
       return;
 
    state.shader = shader;
-   state.entrypoint = entrypoint;
+   state.entrypoint = entrypoint->impl;
 
    if (inputs)
       exec_list_move_nodes_to(&shader->inputs, &state.old_inputs);




More information about the mesa-commit mailing list