summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2016-09-15 11:26:28 -0700
committerIan Romanick <[email protected]>2016-11-10 14:30:49 -0800
commit984f16bbd729646a27a474cf351e11445b8d0b8b (patch)
tree02d58e330662087387c445f6ad9c721b2b553fc9
parentd0028b2e1c43392bb476416a1af2097ab17afe7c (diff)
glsl: Generate strings that are the enum names without the ir_*op_ prefix
For many expressions, this is different from the printable name. The printable name for ir_binop_add is "+", but we want "add". This is needed for ir_builder_print_visitor. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Iago Toral Quiroga <[email protected]> Reviewed-by: Nicolai Hähnle <[email protected]>
-rw-r--r--src/compiler/glsl/ir.h1
-rw-r--r--src/compiler/glsl/ir_expression_operation.py6
2 files changed, 7 insertions, 0 deletions
diff --git a/src/compiler/glsl/ir.h b/src/compiler/glsl/ir.h
index 433ba193801..24f510ea990 100644
--- a/src/compiler/glsl/ir.h
+++ b/src/compiler/glsl/ir.h
@@ -1471,6 +1471,7 @@ public:
#include "ir_expression_operation.h"
extern const char *const ir_expression_operation_strings[ir_last_opcode + 1];
+extern const char *const ir_expression_operation_enum_strings[ir_last_opcode + 1];
class ir_expression : public ir_rvalue {
public:
diff --git a/src/compiler/glsl/ir_expression_operation.py b/src/compiler/glsl/ir_expression_operation.py
index 9aa08d3cabe..58a585b741d 100644
--- a/src/compiler/glsl/ir_expression_operation.py
+++ b/src/compiler/glsl/ir_expression_operation.py
@@ -707,6 +707,12 @@ const char *const ir_expression_operation_strings[] = {
% for item in values:
"${item.printable_name}",
% endfor
+};
+
+const char *const ir_expression_operation_enum_strings[] = {
+% for item in values:
+ "${item.name}",
+% endfor
};""")
constant_template = mako.template.Template("""\