gen7/pipeline: Actually use inputs_read from the VS for laying out inputs
[mesa.git] / src / glsl / ir_rvalue_visitor.cpp
index 34cdb1c98a02c401ab448610c0f4eab0947b6cfd..6486838b8b8978618a5d2816c2b83ba6eb0c78ee 100644 (file)
@@ -58,6 +58,8 @@ ir_rvalue_base_visitor::rvalue_visit(ir_texture *ir)
    case ir_tex:
    case ir_lod:
    case ir_query_levels:
+   case ir_texture_samples:
+   case ir_samples_identical:
       break;
    case ir_txb:
       handle_rvalue(&ir->lod_info.bias);
@@ -134,6 +136,13 @@ ir_rvalue_base_visitor::rvalue_visit(ir_call *ir)
    return visit_continue;
 }
 
+ir_visitor_status
+ir_rvalue_base_visitor::rvalue_visit(ir_discard *ir)
+{
+   handle_rvalue(&ir->condition);
+   return visit_continue;
+}
+
 ir_visitor_status
 ir_rvalue_base_visitor::rvalue_visit(ir_return *ir)
 {
@@ -204,6 +213,12 @@ ir_rvalue_visitor::visit_leave(ir_call *ir)
    return rvalue_visit(ir);
 }
 
+ir_visitor_status
+ir_rvalue_visitor::visit_leave(ir_discard *ir)
+{
+   return rvalue_visit(ir);
+}
+
 ir_visitor_status
 ir_rvalue_visitor::visit_leave(ir_return *ir)
 {
@@ -270,6 +285,12 @@ ir_rvalue_enter_visitor::visit_enter(ir_call *ir)
    return rvalue_visit(ir);
 }
 
+ir_visitor_status
+ir_rvalue_enter_visitor::visit_enter(ir_discard *ir)
+{
+   return rvalue_visit(ir);
+}
+
 ir_visitor_status
 ir_rvalue_enter_visitor::visit_enter(ir_return *ir)
 {