Mesa (master): ir_expression: Add static operator_string method

Ian Romanick idr at kemper.freedesktop.org
Fri Sep 3 19:01:04 UTC 2010


Module: Mesa
Branch: master
Commit: 351525d534268b08c090f9ce42a67e9329a969ae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=351525d534268b08c090f9ce42a67e9329a969ae

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Fri Aug 27 13:53:25 2010 -0700

ir_expression: Add static operator_string method

I've used this in quite a few debug commits that never reached an
up-stream tree.

---

 src/glsl/ir.cpp |   10 +++++++---
 src/glsl/ir.h   |    6 ++++++
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp
index 96b32a2..6d72725 100644
--- a/src/glsl/ir.cpp
+++ b/src/glsl/ir.cpp
@@ -287,11 +287,15 @@ static const char *const operator_strs[] = {
    "pow",
 };
 
+const char *ir_expression::operator_string(ir_expression_operation op)
+{
+   assert((unsigned int) op < Elements(operator_strs));
+   return operator_strs[op];
+}
+
 const char *ir_expression::operator_string()
 {
-   assert((unsigned int) operation <=
-	  sizeof(operator_strs) / sizeof(operator_strs[0]));
-   return operator_strs[operation];
+   return operator_string(this->operation);
 }
 
 ir_expression_operation
diff --git a/src/glsl/ir.h b/src/glsl/ir.h
index cf3a882..efe59d8 100644
--- a/src/glsl/ir.h
+++ b/src/glsl/ir.h
@@ -731,6 +731,12 @@ public:
    const char *operator_string();
 
    /**
+    * Return a string representing this expression's operator.
+    */
+   static const char *operator_string(ir_expression_operation);
+
+
+   /**
     * Do a reverse-lookup to translate the given string into an operator.
     */
    static ir_expression_operation get_operator(const char *);




More information about the mesa-commit mailing list