nir: Fix printing of individual instructions with io semantics.
[mesa.git] / src / compiler / glsl / ir_hierarchical_visitor.h
index 5f5acd041b8d98b4cf10351b64daacb13f6c85e9..dff6a39a6a43db18ca423226deda2495245b1a94 100644 (file)
@@ -133,6 +133,8 @@ public:
    virtual ir_visitor_status visit_leave(class ir_return *);
    virtual ir_visitor_status visit_enter(class ir_discard *);
    virtual ir_visitor_status visit_leave(class ir_discard *);
+   virtual ir_visitor_status visit_enter(class ir_demote *);
+   virtual ir_visitor_status visit_leave(class ir_demote *);
    virtual ir_visitor_status visit_enter(class ir_if *);
    virtual ir_visitor_status visit_leave(class ir_if *);
    virtual ir_visitor_status visit_enter(class ir_emit_vertex *);
@@ -147,6 +149,12 @@ public:
     */
    void run(struct exec_list *instructions);
 
+   /**
+    * Utility function to call both the leave and enter callback functions.
+    * This is used for leaf nodes.
+    */
+   void call_enter_leave_callbacks(class ir_instruction *ir);
+
    /* Some visitors may need to insert new variable declarations and
     * assignments for portions of a subtree, which means they need a
     * pointer to the current instruction in the stream, not just their