aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/sksl/SkSLIRGenerator.h
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2017-06-21 03:34:39 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-06-21 03:34:49 +0000
commit84cda40bd7e98f4e19574c6e946395e244901408 (patch)
treec4bccaca446ff6b894ba85b42fc4874ce76420ef /src/sksl/SkSLIRGenerator.h
parentf66d28dfb25127ff073e2e9549c6985785a65afa (diff)
Revert "Revert "Revert "implemented mustImplementGSInvocationsWithLoop workaround in sksl"""
This reverts commit f66d28dfb25127ff073e2e9549c6985785a65afa. Reason for revert: breaks chrome-roll? https://chromium-review.googlesource.com/c/542000 Original change's description: > Revert "Revert "implemented mustImplementGSInvocationsWithLoop workaround in sksl"" > > This reverts commit 8ea60736aaa92cf3cf24705fb356e9e09e85b1fd. > > Bug: skia: > Change-Id: If77035e03430b469c2682788610b33ae0aefbe1f > Reviewed-on: https://skia-review.googlesource.com/20053 > Reviewed-by: Chris Dalton <csmartdalton@google.com> > Commit-Queue: Ethan Nicholas <ethannicholas@google.com> TBR=csmartdalton@google.com,ethannicholas@google.com Change-Id: Iedada4e4b9facb37b792a655947d76eb0f7b22e4 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/20361 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src/sksl/SkSLIRGenerator.h')
-rw-r--r--src/sksl/SkSLIRGenerator.h24
1 files changed, 7 insertions, 17 deletions
diff --git a/src/sksl/SkSLIRGenerator.h b/src/sksl/SkSLIRGenerator.h
index 29513d8d34..d4a684638c 100644
--- a/src/sksl/SkSLIRGenerator.h
+++ b/src/sksl/SkSLIRGenerator.h
@@ -81,10 +81,13 @@ public:
IRGenerator(const Context* context, std::shared_ptr<SymbolTable> root,
ErrorReporter& errorReporter);
- void convertProgram(String text,
- SymbolTable& types,
- Modifiers::Flag* defaultPrecision,
- std::vector<std::unique_ptr<ProgramElement>>* result);
+ std::unique_ptr<VarDeclarations> convertVarDeclarations(const ASTVarDeclarations& decl,
+ Variable::Storage storage);
+ std::unique_ptr<FunctionDefinition> convertFunction(const ASTFunction& f);
+ std::unique_ptr<Statement> convertStatement(const ASTStatement& statement);
+ std::unique_ptr<Expression> convertExpression(const ASTExpression& expression);
+ std::unique_ptr<ModifiersDeclaration> convertModifiersDeclaration(
+ const ASTModifiersDeclaration& m);
/**
* If both operands are compile-time constants and can be folded, returns an expression
@@ -112,15 +115,6 @@ private:
void pushSymbolTable();
void popSymbolTable();
- std::unique_ptr<VarDeclarations> convertVarDeclarations(const ASTVarDeclarations& decl,
- Variable::Storage storage);
- void convertFunction(const ASTFunction& f,
- std::vector<std::unique_ptr<ProgramElement>>* out);
- std::unique_ptr<Statement> convertStatement(const ASTStatement& statement);
- std::unique_ptr<Expression> convertExpression(const ASTExpression& expression);
- std::unique_ptr<ModifiersDeclaration> convertModifiersDeclaration(
- const ASTModifiersDeclaration& m);
-
const Type* convertType(const ASTType& type);
std::unique_ptr<Expression> call(Position position,
const FunctionDeclaration& function,
@@ -169,9 +163,6 @@ private:
std::unique_ptr<Expression> convertTernaryExpression(const ASTTernaryExpression& expression);
std::unique_ptr<Statement> convertVarDeclarationStatement(const ASTVarDeclarationStatement& s);
std::unique_ptr<Statement> convertWhile(const ASTWhileStatement& w);
- std::unique_ptr<Block> applyInvocationIDWorkaround(
- std::unique_ptr<Block> main,
- std::vector<std::unique_ptr<ProgramElement>>* out);
void fixRectSampling(std::vector<std::unique_ptr<Expression>>& arguments);
void checkValid(const Expression& expr);
@@ -184,7 +175,6 @@ private:
int fLoopLevel;
int fSwitchLevel;
ErrorReporter& fErrors;
- int fInvocations;
friend class AutoSymbolTable;
friend class AutoLoopLevel;