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

Author: Christian Gmeiner <christian.gmei...@gmail.com>
Date:   Mon Aug 12 15:18:20 2019 +0200

etnaviv: split link_shader

Signed-off-by: Christian Gmeiner <christian.gmei...@gmail.com>
Reviewed-by: Jonathan Marek <jonat...@marek.ca>

---

 src/gallium/drivers/etnaviv/etnaviv_compiler_tgsi.c | 3 ---
 src/gallium/drivers/etnaviv/etnaviv_shader.c        | 8 +++++++-
 2 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/src/gallium/drivers/etnaviv/etnaviv_compiler_tgsi.c 
b/src/gallium/drivers/etnaviv/etnaviv_compiler_tgsi.c
index 72fab578a1e..3b8f43c5c2b 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_compiler_tgsi.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_compiler_tgsi.c
@@ -2561,9 +2561,6 @@ bool
 etna_link_shader(struct etna_shader_link_info *info,
                  const struct etna_shader_variant *vs, const struct 
etna_shader_variant *fs)
 {
-   if (DBG_ENABLED(ETNA_DBG_NIR))
-      return etna_link_shader_nir(info, vs, fs);
-
    int comp_ofs = 0;
    /* For each fragment input we need to find the associated vertex shader
     * output, which can be found by matching on semantic name and index. A
diff --git a/src/gallium/drivers/etnaviv/etnaviv_shader.c 
b/src/gallium/drivers/etnaviv/etnaviv_shader.c
index a87e94b2b01..1f0d117eac1 100644
--- a/src/gallium/drivers/etnaviv/etnaviv_shader.c
+++ b/src/gallium/drivers/etnaviv/etnaviv_shader.c
@@ -67,6 +67,7 @@ etna_link_shaders(struct etna_context *ctx, struct 
compiled_shader_state *cs,
                   struct etna_shader_variant *vs, struct etna_shader_variant 
*fs)
 {
    struct etna_shader_link_info link = { };
+   bool failed;
 
    assert(vs->stage == MESA_SHADER_VERTEX);
    assert(fs->stage == MESA_SHADER_FRAGMENT);
@@ -83,7 +84,12 @@ etna_link_shaders(struct etna_context *ctx, struct 
compiled_shader_state *cs,
    }
 #endif
 
-   if (etna_link_shader(&link, vs, fs)) {
+   if (DBG_ENABLED(ETNA_DBG_NIR))
+      failed = etna_link_shader_nir(&link, vs, fs);
+   else
+      failed = etna_link_shader(&link, vs, fs);
+
+   if (failed) {
       /* linking failed: some fs inputs do not have corresponding
        * vs outputs */
       assert(0);

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to