diff options
author | Tobias Hunger <tobias.hunger@qt.io> | 2019-04-16 16:32:08 +0200 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@qt.io> | 2019-04-16 16:32:08 +0200 |
commit | 6630937e63ae5797487b86743a7733c8ae5cc42c (patch) | |
tree | 3d53dacf6430f9099e1fb20835881205de674961 /src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h | |
parent | 37ed6dae00640f9cc980ffda05347c12a7eb5d7e (diff) | |
parent | c7af193d2e49e9f10b86262e63d8d13abf72b5cf (diff) |
Merge commit 'dev' into 'wip/cmake-merge'
Change-Id: I176c40d031be26a1dd1cf08843e448a660598783
Diffstat (limited to 'src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h')
-rw-r--r-- | src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h b/src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h deleted file mode 100644 index 9c49ecad33..0000000000 --- a/src/3rdparty/angle/src/compiler/translator/ForLoopUnroll.h +++ /dev/null @@ -1,53 +0,0 @@ -// -// Copyright (c) 2011 The ANGLE Project Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. -// - -#ifndef COMPILER_TRANSLATOR_FORLOOPUNROLL_H_ -#define COMPILER_TRANSLATOR_FORLOOPUNROLL_H_ - -#include "compiler/translator/LoopInfo.h" - -// This class detects for-loops that needs to be unrolled. -// Currently we support two unroll conditions: -// 1) kForLoopWithIntegerIndex: unroll if the index type is integer. -// 2) kForLoopWithSamplerArrayIndex: unroll where a sampler array index -// is also the loop integer index, and reject and fail a compile -// where a sampler array index is also the loop float index. -class ForLoopUnrollMarker : public TIntermTraverser -{ - public: - enum UnrollCondition - { - kIntegerIndex, - kSamplerArrayIndex - }; - - ForLoopUnrollMarker(UnrollCondition condition, bool hasRunLoopValidation) - : TIntermTraverser(true, false, false), - mUnrollCondition(condition), - mSamplerArrayIndexIsFloatLoopIndex(false), - mVisitSamplerArrayIndexNodeInsideLoop(false), - mHasRunLoopValidation(hasRunLoopValidation) - { - } - - bool visitBinary(Visit, TIntermBinary *node) override; - bool visitLoop(Visit, TIntermLoop *node) override; - void visitSymbol(TIntermSymbol *node) override; - - bool samplerArrayIndexIsFloatLoopIndex() const - { - return mSamplerArrayIndexIsFloatLoopIndex; - } - - private: - UnrollCondition mUnrollCondition; - TLoopStack mLoopStack; - bool mSamplerArrayIndexIsFloatLoopIndex; - bool mVisitSamplerArrayIndexNodeInsideLoop; - bool mHasRunLoopValidation; -}; - -#endif // COMPILER_TRANSLATOR_FORLOOPUNROLL_H_ |