Commit 3d0d9a48 by Olli Etuaho

Clean up TIntermTraverser usage

Remove default parameters from TIntermTraverser. Also clean up a few dead function declarations in traversers. TEST=angle_unittests, angle_end2end_tests BUG=angleproject:1037 Change-Id: I8d126c6c2d5b53e8b14e23e3d102f204a59323b3 Reviewed-on: https://chromium-review.googlesource.com/275184Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarZhenyao Mo <zmo@chromium.org> Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
parent 1155ddd2
......@@ -12,7 +12,8 @@ class BuiltInFunctionEmulator::BuiltInFunctionEmulationMarker : public TIntermTr
{
public:
BuiltInFunctionEmulationMarker(BuiltInFunctionEmulator &emulator)
: mEmulator(emulator)
: TIntermTraverser(true, false, false),
mEmulator(emulator)
{
}
......
......@@ -18,6 +18,12 @@ namespace sh
class FlagStd140Structs : public TIntermTraverser
{
public:
FlagStd140Structs()
: TIntermTraverser(true, false, false)
{
}
const std::vector<TIntermTyped *> getFlaggedNodes() const { return mFlaggedNodes; }
protected:
......
......@@ -25,7 +25,8 @@ class ForLoopUnrollMarker : public TIntermTraverser
};
ForLoopUnrollMarker(UnrollCondition condition)
: mUnrollCondition(condition),
: TIntermTraverser(true, false, false),
mUnrollCondition(condition),
mSamplerArrayIndexIsFloatLoopIndex(false),
mVisitSamplerArrayIndexNodeInsideLoop(false)
{
......
......@@ -26,7 +26,8 @@ class InitializeVariables : public TIntermTraverser
typedef TVector<InitVariableInfo> InitVariableInfoList;
InitializeVariables(const InitVariableInfoList &vars)
: mVariables(vars),
: TIntermTraverser(true, false, false),
mVariables(vars),
mCodeInserted(false)
{
}
......
......@@ -587,8 +587,7 @@ class TIntermTraverser : angle::NonCopyable
{
public:
POOL_ALLOCATOR_NEW_DELETE();
// TODO(zmo): remove default values.
TIntermTraverser(bool preVisit = true, bool inVisit = false, bool postVisit = false)
TIntermTraverser(bool preVisit, bool inVisit, bool postVisit)
: preVisit(preVisit),
inVisit(inVisit),
postVisit(postVisit),
......
......@@ -19,7 +19,8 @@ class NodeSearchTraverser : public TIntermTraverser
{
public:
NodeSearchTraverser()
: mFound(false)
: TIntermTraverser(true, false, false),
mFound(false)
{}
bool found() const { return mFound; }
......
......@@ -17,7 +17,8 @@ class RegenerateStructNames : public TIntermTraverser
public:
RegenerateStructNames(const TSymbolTable &symbolTable,
int shaderVersion)
: mSymbolTable(symbolTable),
: TIntermTraverser(true, false, false),
mSymbolTable(symbolTable),
mShaderVersion(shaderVersion),
mScopeDepth(0) {}
......
......@@ -14,7 +14,8 @@ class ScalarizeVecAndMatConstructorArgs : public TIntermTraverser
public:
ScalarizeVecAndMatConstructorArgs(sh::GLenum shaderType,
bool fragmentPrecisionHigh)
: mTempVarCount(0),
: TIntermTraverser(true, false, false),
mTempVarCount(0),
mShaderType(shaderType),
mFragmentPrecisionHigh(fragmentPrecisionHigh) {}
......
......@@ -12,7 +12,9 @@
namespace sh
{
SearchSymbol::SearchSymbol(const TString &symbol) : mSymbol(symbol)
SearchSymbol::SearchSymbol(const TString &symbol)
: TIntermTraverser(true, false, false),
mSymbol(symbol)
{
match = false;
}
......
......@@ -22,7 +22,6 @@ class SeparateExpressionsTraverser : public TIntermTraverser
public:
SeparateExpressionsTraverser();
void traverse(TIntermNode *node);
bool visitBinary(Visit visit, TIntermBinary *node) override;
bool visitAggregate(Visit visit, TIntermAggregate *node) override;
......
......@@ -21,7 +21,8 @@ class TFragmentOutSearcher : public TIntermTraverser
{
public:
TFragmentOutSearcher()
: mUsesGlFragColor(false),
: TIntermTraverser(true, false, false),
mUsesGlFragColor(false),
mUsesGlFragData(false)
{
}
......
......@@ -20,7 +20,10 @@
class UnfoldShortCircuitAST : public TIntermTraverser
{
public:
UnfoldShortCircuitAST() { }
UnfoldShortCircuitAST()
: TIntermTraverser(true, false, false)
{
}
virtual bool visitBinary(Visit visit, TIntermBinary *);
};
......
......@@ -21,7 +21,6 @@ class UnfoldShortCircuitTraverser : public TIntermTraverser
public:
UnfoldShortCircuitTraverser();
void traverse(TIntermNode *node);
bool visitBinary(Visit visit, TIntermBinary *node) override;
bool visitAggregate(Visit visit, TIntermAggregate *node) override;
bool visitSelection(Visit visit, TIntermSelection *node) override;
......
......@@ -26,7 +26,11 @@ class ValidateConstIndexExpr : public TIntermTraverser
{
public:
ValidateConstIndexExpr(TLoopStack& stack)
: mValid(true), mLoopStack(stack) {}
: TIntermTraverser(true, false, false),
mValid(true),
mLoopStack(stack)
{
}
// Returns true if the parsed node represents a constant index expression.
bool isValid() const { return mValid; }
......@@ -51,7 +55,8 @@ class ValidateConstIndexExpr : public TIntermTraverser
ValidateLimitations::ValidateLimitations(sh::GLenum shaderType,
TInfoSinkBase &sink)
: mShaderType(shaderType),
: TIntermTraverser(true, false, false),
mShaderType(shaderType),
mSink(sink),
mNumErrors(0)
{
......
......@@ -10,7 +10,8 @@
#include "compiler/translator/ParseContext.h"
ValidateOutputs::ValidateOutputs(TInfoSinkBase& sink, int maxDrawBuffers)
: mSink(sink),
: TIntermTraverser(true, false, false),
mSink(sink),
mMaxDrawBuffers(maxDrawBuffers),
mNumErrors(0),
mHasUnspecifiedOutputLocation(false)
......
......@@ -134,7 +134,8 @@ CollectVariables::CollectVariables(std::vector<sh::Attribute> *attribs,
std::vector<sh::InterfaceBlock> *interfaceBlocks,
ShHashFunction64 hashFunction,
const TSymbolTable &symbolTable)
: mAttribs(attribs),
: TIntermTraverser(true, false, false),
mAttribs(attribs),
mOutputVariables(outputVariables),
mUniforms(uniforms),
mVaryings(varyings),
......
......@@ -32,6 +32,7 @@ static const int GLSL_VERSION_420 = 420;
TVersionGLSL::TVersionGLSL(sh::GLenum type,
const TPragma &pragma,
ShShaderOutput output)
: TIntermTraverser(true, false, false)
{
if (output == SH_GLSL_130_OUTPUT)
{
......
......@@ -27,7 +27,10 @@ class TOutputTraverser : public TIntermTraverser
{
public:
TOutputTraverser(TInfoSinkBase &i)
: sink(i) { }
: TIntermTraverser(true, false, false),
sink(i)
{
}
TInfoSinkBase& sink;
protected:
......
......@@ -15,7 +15,8 @@ class TConstTraverser : public TIntermTraverser
public:
TConstTraverser(TConstantUnion *cUnion, bool singleConstParam,
TOperator constructType, TInfoSink &sink, TType &t)
: error(false),
: TIntermTraverser(true, false, false),
error(false),
mIndex(0),
mUnionArray(cUnion),
mType(t),
......
......@@ -20,12 +20,14 @@ class ConstantFinder : public TIntermTraverser
{
public:
ConstantFinder(const std::vector<T> &constantVector)
: mConstantVector(constantVector),
: TIntermTraverser(true, false, false),
mConstantVector(constantVector),
mFound(false)
{}
ConstantFinder(const T &value)
: mFound(false)
: TIntermTraverser(true, false, false),
mFound(false)
{
mConstantVector.push_back(value);
}
......
......@@ -43,7 +43,8 @@ namespace {
class ArrayBoundsClamperMarker : public TIntermTraverser {
public:
ArrayBoundsClamperMarker()
: mNeedsClamp(false)
: TIntermTraverser(true, false, false),
mNeedsClamp(false)
{
}
......
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