From 341afbba8a4773ca0156da912bf1329276bf12e7 Mon Sep 17 00:00:00 2001 From: Nicolas Capens Date: Sun, 10 Apr 2016 01:54:50 -0400 Subject: [PATCH] Fix constant expression vector indexing. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change-Id: If3b61ad65f1f1d6687890bd8715b2a534c78a353 Reviewed-on: https://swiftshader-review.googlesource.com/5081 Tested-by: Nicolas Capens Reviewed-by: Alexis Hétu Reviewed-by: Nicolas Capens --- src/OpenGL/compiler/ParseHelper.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/OpenGL/compiler/ParseHelper.cpp b/src/OpenGL/compiler/ParseHelper.cpp index 499ec1323..df9ffd0ce 100644 --- a/src/OpenGL/compiler/ParseHelper.cpp +++ b/src/OpenGL/compiler/ParseHelper.cpp @@ -2616,7 +2616,7 @@ TIntermTyped *TParseContext::addFieldSelectionExpression(TIntermTyped *baseExpre TIntermTyped *index = intermediate.addSwizzle(fields, fieldLocation); indexedExpression = intermediate.addIndex(EOpVectorSwizzle, baseExpression, index, dotLocation); indexedExpression->setType(TType(baseExpression->getBasicType(), baseExpression->getPrecision(), - EvqTemporary, (unsigned char)vectorString.size())); + baseExpression->getQualifier() == EvqConstExpr ? EvqConstExpr : EvqTemporary, (unsigned char)vectorString.size())); } } else if(baseExpression->isMatrix()) -- 2.11.0