1 // 2 // Copyright 2021 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 // DeclarePerVertexBlocks: If gl_PerVertex is not already declared, it is declared and builtins are 7 // turned into references into that I/O block. 8 // 9 10 #ifndef COMPILER_TRANSLATOR_TREEOPS_DECLAREPERVERTEXBLOCKS_H_ 11 #define COMPILER_TRANSLATOR_TREEOPS_DECLAREPERVERTEXBLOCKS_H_ 12 13 #include "common/angleutils.h" 14 15 namespace sh 16 { 17 class TCompiler; 18 class TIntermBlock; 19 class TSymbolTable; 20 class TVariable; 21 22 [[nodiscard]] bool DeclarePerVertexBlocks(TCompiler *compiler, 23 TIntermBlock *root, 24 TSymbolTable *symbolTable, 25 const TVariable **inputPerVertexOut, 26 const TVariable **outputPerVertexOut); 27 } // namespace sh 28 29 #endif // COMPILER_TRANSLATOR_TREEOPS_DECLAREPERVERTEXBLOCKS_H_ 30