i965: Don't create a swrast context on ES2+.
[mesa.git] / src / glsl / ir_print_visitor.cpp
index 597d2813ff216f88c27a7846aa0d0bd9ef408d84..ca973a5f38ec468a0e7d7751f65a4eb6f87a8dd4 100644 (file)
@@ -24,6 +24,7 @@
 #include "ir_print_visitor.h"
 #include "glsl_types.h"
 #include "glsl_parser_extras.h"
+#include "main/macros.h"
 #include "program/hash_table.h"
 
 static void print_type(const glsl_type *t);
@@ -37,6 +38,7 @@ ir_instruction::print(void) const
    deconsted->accept(&v);
 }
 
+extern "C" {
 void
 _mesa_print_ir(exec_list *instructions,
               struct _mesa_glsl_parse_state *state)
@@ -68,6 +70,8 @@ _mesa_print_ir(exec_list *instructions,
    printf("\n)");
 }
 
+} /* extern "C" */
+
 ir_print_visitor::ir_print_visitor()
 {
    indentation = 0;
@@ -149,7 +153,9 @@ void ir_print_visitor::visit(ir_variable *ir)
    const char *const mode[] = { "", "uniform ", "shader_in ", "shader_out ",
                                 "in ", "out ", "inout ",
                                "const_in ", "sys ", "temporary " };
-   const char *const interp[] = { "", "flat", "noperspective" };
+   STATIC_ASSERT(ARRAY_SIZE(mode) == ir_var_mode_count);
+   const char *const interp[] = { "", "smooth", "flat", "noperspective" };
+   STATIC_ASSERT(ARRAY_SIZE(interp) == INTERP_QUALIFIER_COUNT);
 
    printf("(%s%s%s%s) ",
          cent, inv, mode[ir->mode], interp[ir->interpolation]);