glsl: Expose image load and store built-ins in GLSL ES 3.1.
[mesa.git] / src / glsl / ir_print_visitor.h
index c7136f11a3bdfdc8652ca968fc6d04f0bd0e5115..965e63ade8bec07fe8f7bc28a0548cd6d8e4aaec 100644 (file)
@@ -33,15 +33,12 @@ extern "C" {
 #include "program/symbol_table.h"
 }
 
-extern void _mesa_print_ir(exec_list *instructions,
-                          struct _mesa_glsl_parse_state *state);
-
 /**
  * Abstract base class of visitors of IR instruction trees
  */
 class ir_print_visitor : public ir_visitor {
 public:
-   ir_print_visitor();
+   ir_print_visitor(FILE *f);
    virtual ~ir_print_visitor();
 
    void indent(void);
@@ -54,6 +51,7 @@ public:
     * the hierarchy should not have \c visit methods.
     */
    /*@{*/
+   virtual void visit(ir_rvalue *);
    virtual void visit(ir_variable *);
    virtual void visit(ir_function_signature *);
    virtual void visit(ir_function *);
@@ -71,6 +69,9 @@ public:
    virtual void visit(ir_if *);
    virtual void visit(ir_loop *);
    virtual void visit(ir_loop_jump *);
+   virtual void visit(ir_emit_vertex *);
+   virtual void visit(ir_end_primitive *);
+   virtual void visit(ir_barrier *);
    /*@}*/
 
 private:
@@ -87,6 +88,7 @@ private:
    _mesa_symbol_table *symbols;
 
    void *mem_ctx;
+   FILE *f;
 
    int indentation;
 };