aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/glsl/opt_discard_simplification.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mesalib/src/glsl/opt_discard_simplification.cpp')
-rw-r--r--mesalib/src/glsl/opt_discard_simplification.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/mesalib/src/glsl/opt_discard_simplification.cpp b/mesalib/src/glsl/opt_discard_simplification.cpp
index df8caba4d..37622eb02 100644
--- a/mesalib/src/glsl/opt_discard_simplification.cpp
+++ b/mesalib/src/glsl/opt_discard_simplification.cpp
@@ -95,6 +95,7 @@ public:
ir_visitor_status visit_enter(ir_if *);
ir_visitor_status visit_enter(ir_loop *);
+ ir_visitor_status visit_enter(ir_assignment *);
bool progress;
};
@@ -117,6 +118,15 @@ is_only_instruction(ir_discard *discard)
discard->next->is_tail_sentinel());
}
+/* We only care about the top level instructions, so don't descend
+ * into expressions.
+ */
+ir_visitor_status
+discard_simplifier::visit_enter(ir_assignment *ir)
+{
+ return visit_continue_with_parent;
+}
+
ir_visitor_status
discard_simplifier::visit_enter(ir_if *ir)
{