Mesa (master): glsl/ast: Use logical-or instead of conditional assignment to set fallthru_var

Ian Romanick idr at kemper.freedesktop.org
Mon Oct 2 21:48:15 UTC 2017


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

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Mon Sep 18 16:20:38 2017 -0500

glsl/ast: Use logical-or instead of conditional assignment to set fallthru_var

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Alejandro Piñeiro <apinheiro at igalia.com>

---

 src/compiler/glsl/ast_to_hir.cpp | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/compiler/glsl/ast_to_hir.cpp b/src/compiler/glsl/ast_to_hir.cpp
index cbd5746648..d7c8b47f9d 100644
--- a/src/compiler/glsl/ast_to_hir.cpp
+++ b/src/compiler/glsl/ast_to_hir.cpp
@@ -6763,8 +6763,7 @@ ast_case_label::hir(exec_list *instructions,
       }
 
       body.emit(assign(fallthru_var,
-                       body.constant(true),
-                       equal(label, deref_test_var)));
+                       logic_or(fallthru_var, equal(label, deref_test_var))));
    } else { /* default case */
       if (state->switch_state.previous_default) {
          YYLTYPE loc = this->get_location();
@@ -6777,8 +6776,9 @@ ast_case_label::hir(exec_list *instructions,
       state->switch_state.previous_default = this;
 
       /* Set fallthru condition on 'run_default' bool. */
-      body.emit(assign(fallthru_var, body.constant(true),
-                       state->switch_state.run_default));
+      body.emit(assign(fallthru_var,
+                       logic_or(fallthru_var,
+                                state->switch_state.run_default)));
    }
 
    /* Case statements do not have r-values. */




More information about the mesa-commit mailing list