Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(711)

Unified Diff: src/sksl/ir/SkSLVarDeclaration.h

Issue 2131223002: SkSL performance improvements (Closed) Base URL: https://skia.googlesource.com/skia@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/sksl/ir/SkSLUnresolvedFunction.h ('k') | src/sksl/ir/SkSLVariable.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/sksl/ir/SkSLVarDeclaration.h
diff --git a/src/sksl/ir/SkSLVarDeclaration.h b/src/sksl/ir/SkSLVarDeclaration.h
index 400f430e4c574d234e2a5e80b34a9f3412304310..b234231b8682a32cd5234dbb8f6e6717b59ca0a6 100644
--- a/src/sksl/ir/SkSLVarDeclaration.h
+++ b/src/sksl/ir/SkSLVarDeclaration.h
@@ -20,7 +20,7 @@ namespace SkSL {
* names ['x', 'y', 'z'], sizes of [[], [], [4, 2]], and values of [null, 1, null].
*/
struct VarDeclaration : public ProgramElement {
- VarDeclaration(Position position, std::vector<std::shared_ptr<Variable>> vars,
+ VarDeclaration(Position position, std::vector<const Variable*> vars,
std::vector<std::vector<std::unique_ptr<Expression>>> sizes,
std::vector<std::unique_ptr<Expression>> values)
: INHERITED(position, kVar_Kind)
@@ -30,9 +30,9 @@ struct VarDeclaration : public ProgramElement {
std::string description() const override {
std::string result = fVars[0]->fModifiers.description();
- std::shared_ptr<Type> baseType = fVars[0]->fType;
+ const Type* baseType = &fVars[0]->fType;
while (baseType->kind() == Type::kArray_Kind) {
- baseType = baseType->componentType();
+ baseType = &baseType->componentType();
}
result += baseType->description();
std::string separator = " ";
@@ -55,7 +55,7 @@ struct VarDeclaration : public ProgramElement {
return result;
}
- const std::vector<std::shared_ptr<Variable>> fVars;
+ const std::vector<const Variable*> fVars;
const std::vector<std::vector<std::unique_ptr<Expression>>> fSizes;
const std::vector<std::unique_ptr<Expression>> fValues;
« no previous file with comments | « src/sksl/ir/SkSLUnresolvedFunction.h ('k') | src/sksl/ir/SkSLVariable.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698