Mesa (glsl2): ir_constant_expression: Add support for constant arrays.

Kenneth Graunke kwg at kemper.freedesktop.org
Thu Jul 22 00:21:29 UTC 2010


Module: Mesa
Branch: glsl2
Commit: a096fa747611472965cf0f953bfe2757fc80383c
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a096fa747611472965cf0f953bfe2757fc80383c

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Tue Jul 20 01:31:29 2010 -0700

ir_constant_expression: Add support for constant arrays.

Fixes piglit test const-array-02.frag.

---

 src/glsl/ir_constant_expression.cpp |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/glsl/ir_constant_expression.cpp b/src/glsl/ir_constant_expression.cpp
index acfbb86..d72a57c 100644
--- a/src/glsl/ir_constant_expression.cpp
+++ b/src/glsl/ir_constant_expression.cpp
@@ -712,7 +712,8 @@ ir_dereference_array::constant_expression_value()
 
 	 return new(ctx) ir_constant(array, component);
       } else {
-	 /* FINISHME: Handle access of constant arrays. */
+	 const unsigned index = idx->value.u[0];
+	 return array->get_array_element(index)->clone(NULL);
       }
    }
    return NULL;




More information about the mesa-commit mailing list