summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp')
-rw-r--r--src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp75
1 files changed, 0 insertions, 75 deletions
diff --git a/src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp b/src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp
deleted file mode 100644
index fba837f55c..0000000000
--- a/src/3rdparty/angle/src/compiler/translator/FlagStd140Structs.cpp
+++ /dev/null
@@ -1,75 +0,0 @@
-//
-// Copyright (c) 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.
-//
-// FlagStd140Structs.cpp: Find structs in std140 blocks, where the padding added in the translator
-// conflicts with the "natural" unpadded type.
-
-#include "compiler/translator/FlagStd140Structs.h"
-
-#include "compiler/translator/IntermTraverse.h"
-
-namespace sh
-{
-
-namespace
-{
-
-class FlagStd140StructsTraverser : public TIntermTraverser
-{
- public:
- FlagStd140StructsTraverser() : TIntermTraverser(true, false, false) {}
-
- const std::vector<MappedStruct> getMappedStructs() const { return mMappedStructs; }
-
- protected:
- bool visitDeclaration(Visit visit, TIntermDeclaration *node) override;
-
- private:
- void mapBlockStructMembers(TIntermSymbol *blockDeclarator, TInterfaceBlock *block);
-
- std::vector<MappedStruct> mMappedStructs;
-};
-
-void FlagStd140StructsTraverser::mapBlockStructMembers(TIntermSymbol *blockDeclarator,
- TInterfaceBlock *block)
-{
- for (auto *field : block->fields())
- {
- if (field->type()->getBasicType() == EbtStruct)
- {
- MappedStruct mappedStruct;
- mappedStruct.blockDeclarator = blockDeclarator;
- mappedStruct.field = field;
- mMappedStructs.push_back(mappedStruct);
- }
- }
-}
-
-bool FlagStd140StructsTraverser::visitDeclaration(Visit visit, TIntermDeclaration *node)
-{
- TIntermTyped *declarator = node->getSequence()->back()->getAsTyped();
- if (declarator->getBasicType() == EbtInterfaceBlock)
- {
- TInterfaceBlock *block = declarator->getType().getInterfaceBlock();
- if (block->blockStorage() == EbsStd140)
- {
- mapBlockStructMembers(declarator->getAsSymbolNode(), block);
- }
- }
- return false;
-}
-
-} // anonymous namespace
-
-std::vector<MappedStruct> FlagStd140Structs(TIntermNode *node)
-{
- FlagStd140StructsTraverser flaggingTraversal;
-
- node->traverse(&flaggingTraversal);
-
- return flaggingTraversal.getMappedStructs();
-}
-
-} // namespace sh