| Index: src/sksl/SkSLCompiler.cpp
|
| diff --git a/src/sksl/SkSLCompiler.cpp b/src/sksl/SkSLCompiler.cpp
|
| index 88df8aeb5760a47beac7a78160ed5e5dee84bb13..d2ad81223e8c495e73546e4375b09f84db1b1eef 100644
|
| --- a/src/sksl/SkSLCompiler.cpp
|
| +++ b/src/sksl/SkSLCompiler.cpp
|
| @@ -10,13 +10,11 @@
|
| #include <fstream>
|
| #include <streambuf>
|
|
|
| -#include "ast/SkSLASTPrecision.h"
|
| #include "SkSLIRGenerator.h"
|
| #include "SkSLParser.h"
|
| #include "SkSLSPIRVCodeGenerator.h"
|
| #include "ir/SkSLExpression.h"
|
| #include "ir/SkSLIntLiteral.h"
|
| -#include "ir/SkSLModifiersDeclaration.h"
|
| #include "ir/SkSLSymbolTable.h"
|
| #include "ir/SkSLVarDeclaration.h"
|
| #include "SkMutex.h"
|
| @@ -99,7 +97,6 @@
|
| ADD_TYPE(Sampler1D);
|
| ADD_TYPE(Sampler2D);
|
| ADD_TYPE(Sampler3D);
|
| - ADD_TYPE(SamplerExternalOES);
|
| ADD_TYPE(SamplerCube);
|
| ADD_TYPE(Sampler2DRect);
|
| ADD_TYPE(Sampler1DArray);
|
| @@ -131,9 +128,8 @@
|
| ADD_TYPE(GSampler2DArrayShadow);
|
| ADD_TYPE(GSamplerCubeArrayShadow);
|
|
|
| - Modifiers::Flag ignored1;
|
| - std::vector<std::unique_ptr<ProgramElement>> ignored2;
|
| - this->internalConvertProgram(SKSL_INCLUDE, &ignored1, &ignored2);
|
| + std::vector<std::unique_ptr<ProgramElement>> ignored;
|
| + this->internalConvertProgram(SKSL_INCLUDE, &ignored);
|
| ASSERT(!fErrorCount);
|
| }
|
|
|
| @@ -142,14 +138,12 @@
|
| }
|
|
|
| void Compiler::internalConvertProgram(std::string text,
|
| - Modifiers::Flag* defaultPrecision,
|
| std::vector<std::unique_ptr<ProgramElement>>* result) {
|
| Parser parser(text, *fTypes, *this);
|
| std::vector<std::unique_ptr<ASTDeclaration>> parsed = parser.file();
|
| if (fErrorCount) {
|
| return;
|
| }
|
| - *defaultPrecision = Modifiers::kHighp_Flag;
|
| for (size_t i = 0; i < parsed.size(); i++) {
|
| ASTDeclaration& decl = *parsed[i];
|
| switch (decl.fKind) {
|
| @@ -170,14 +164,6 @@
|
| }
|
| break;
|
| }
|
| - case ASTDeclaration::kModifiers_Kind: {
|
| - std::unique_ptr<ModifiersDeclaration> f = fIRGenerator->convertModifiersDeclaration(
|
| - (ASTModifiersDeclaration&) decl);
|
| - if (f) {
|
| - result->push_back(std::move(f));
|
| - }
|
| - break;
|
| - }
|
| case ASTDeclaration::kInterfaceBlock_Kind: {
|
| std::unique_ptr<InterfaceBlock> i = fIRGenerator->convertInterfaceBlock(
|
| (ASTInterfaceBlock&) decl);
|
| @@ -193,10 +179,6 @@
|
| }
|
| break;
|
| }
|
| - case ASTDeclaration::kPrecision_Kind: {
|
| - *defaultPrecision = ((ASTPrecision&) decl).fPrecision;
|
| - break;
|
| - }
|
| default:
|
| ABORT("unsupported declaration: %s\n", decl.description().c_str());
|
| }
|
| @@ -208,18 +190,16 @@
|
| fErrorCount = 0;
|
| fIRGenerator->pushSymbolTable();
|
| std::vector<std::unique_ptr<ProgramElement>> elements;
|
| - Modifiers::Flag ignored;
|
| switch (kind) {
|
| case Program::kVertex_Kind:
|
| - this->internalConvertProgram(SKSL_VERT_INCLUDE, &ignored, &elements);
|
| + this->internalConvertProgram(SKSL_VERT_INCLUDE, &elements);
|
| break;
|
| case Program::kFragment_Kind:
|
| - this->internalConvertProgram(SKSL_FRAG_INCLUDE, &ignored, &elements);
|
| + this->internalConvertProgram(SKSL_FRAG_INCLUDE, &elements);
|
| break;
|
| }
|
| - Modifiers::Flag defaultPrecision;
|
| - this->internalConvertProgram(text, &defaultPrecision, &elements);
|
| - auto result = std::unique_ptr<Program>(new Program(kind, defaultPrecision, std::move(elements),
|
| + this->internalConvertProgram(text, &elements);
|
| + auto result = std::unique_ptr<Program>(new Program(kind, std::move(elements),
|
| fIRGenerator->fSymbolTable));;
|
| fIRGenerator->popSymbolTable();
|
| this->writeErrorCount();
|
|
|