Commit 8bad46d4 by Kenneth Russell Committed by Commit Bot

The global invariant pragma must not leak across compilations.

BUG=chromium:625363 TEST=conformance/glsl/bugs/global-invariant-does-not-leak-across-shaders.html Change-Id: I66389352b92211f4d7967772f68470c8e93405bd Reviewed-on: https://chromium-review.googlesource.com/358515Reviewed-by: 's avatarZhenyao Mo <zmo@chromium.org> Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
parent 61b81acf
...@@ -246,10 +246,7 @@ TIntermNode *TCompiler::compileTreeImpl(const char *const shaderStrings[], ...@@ -246,10 +246,7 @@ TIntermNode *TCompiler::compileTreeImpl(const char *const shaderStrings[],
if (success) if (success)
{ {
mPragma = parseContext.pragma(); mPragma = parseContext.pragma();
if (mPragma.stdgl.invariantAll) symbolTable.setGlobalInvariant(mPragma.stdgl.invariantAll);
{
symbolTable.setGlobalInvariant();
}
root = parseContext.getTreeRoot(); root = parseContext.getTreeRoot();
root = intermediate.postProcess(root); root = intermediate.postProcess(root);
......
...@@ -469,8 +469,7 @@ class TSymbolTable : angle::NonCopyable ...@@ -469,8 +469,7 @@ class TSymbolTable : angle::NonCopyable
mInvariantVaryings.count(originalName) > 0); mInvariantVaryings.count(originalName) > 0);
} }
void setGlobalInvariant() { mGlobalInvariant = true; } void setGlobalInvariant(bool invariant) { mGlobalInvariant = invariant; }
bool getGlobalInvariant() const { return mGlobalInvariant; }
static int nextUniqueId() static int nextUniqueId()
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment