1 // 2 // Copyright 2019 The ANGLE Project Authors. All rights reserved. 3 // Use of this source code is governed by a BSD-style license that can be 4 // found in the LICENSE file. 5 // 6 // RewriteAtomicCounters: Change atomic counter buffers to storage buffers, with atomic counter 7 // variables being offsets into the uint array of that storage buffer. 8 9 #ifndef COMPILER_TRANSLATOR_TREEOPS_REWRITEATOMICCOUNTERS_H_ 10 #define COMPILER_TRANSLATOR_TREEOPS_REWRITEATOMICCOUNTERS_H_ 11 12 #include "common/angleutils.h" 13 14 namespace sh 15 { 16 class TCompiler; 17 class TIntermBlock; 18 class TIntermTyped; 19 class TSymbolTable; 20 class TVariable; 21 22 ANGLE_NO_DISCARD bool RewriteAtomicCounters(TCompiler *compiler, 23 TIntermBlock *root, 24 TSymbolTable *symbolTable, 25 const TIntermTyped *acbBufferOffsets); 26 } // namespace sh 27 28 #endif // COMPILER_TRANSLATOR_TREEOPS_REWRITEATOMICCOUNTERS_H_ 29