summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/angle/src/compiler/NodeSearch.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/angle/src/compiler/NodeSearch.h')
-rw-r--r--chromium/third_party/angle/src/compiler/NodeSearch.h78
1 files changed, 0 insertions, 78 deletions
diff --git a/chromium/third_party/angle/src/compiler/NodeSearch.h b/chromium/third_party/angle/src/compiler/NodeSearch.h
deleted file mode 100644
index 27e471dbbc4..00000000000
--- a/chromium/third_party/angle/src/compiler/NodeSearch.h
+++ /dev/null
@@ -1,78 +0,0 @@
-//
-// Copyright (c) 2002-2013 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.
-//
-// NodeSearch.h: Utilities for searching translator node graphs
-//
-
-#ifndef TRANSLATOR_NODESEARCH_H_
-#define TRANSLATOR_NODESEARCH_H_
-
-namespace sh
-{
-
-template <class Parent>
-class NodeSearchTraverser : public TIntermTraverser
-{
- public:
- NodeSearchTraverser()
- : mFound(false)
- {}
-
- bool found() const { return mFound; }
-
- static bool search(TIntermNode *node)
- {
- Parent searchTraverser;
- node->traverse(&searchTraverser);
- return searchTraverser.found();
- }
-
- protected:
- bool mFound;
-};
-
-class FindDiscard : public NodeSearchTraverser<FindDiscard>
-{
- public:
- virtual bool visitBranch(Visit visit, TIntermBranch *node)
- {
- switch (node->getFlowOp())
- {
- case EOpKill:
- mFound = true;
- break;
-
- default: break;
- }
-
- return !mFound;
- }
-};
-
-class FindSideEffectRewriting : public NodeSearchTraverser<FindSideEffectRewriting>
-{
- public:
- virtual bool visitBinary(Visit visit, TIntermBinary *node)
- {
- switch (node->getOp())
- {
- case EOpLogicalOr:
- case EOpLogicalAnd:
- if (node->getRight()->hasSideEffects())
- {
- mFound = true;
- }
- break;
-
- default: break;
- }
-
- return !mFound;
- }
-};
-
-}
-
-#endif // TRANSLATOR_NODESEARCH_H_