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 // RewriteRowMajorMatrices: Change row-major matrices to column-major in uniform and storage 7 // buffers. 8 9 #ifndef COMPILER_TRANSLATOR_TREEOPS_APPLE_REWRITEROWMAJORMATRICES_H_ 10 #define COMPILER_TRANSLATOR_TREEOPS_APPLE_REWRITEROWMAJORMATRICES_H_ 11 12 #include "common/angleutils.h" 13 14 namespace sh 15 { 16 class TCompiler; 17 class TIntermBlock; 18 class TSymbolTable; 19 20 #if (defined(ANGLE_ENABLE_GLSL) || defined(ANGLE_ENABLE_METAL)) && \ 21 defined(ANGLE_ENABLE_APPLE_WORKAROUNDS) 22 ANGLE_NO_DISCARD bool RewriteRowMajorMatrices(TCompiler *compiler, 23 TIntermBlock *root, 24 TSymbolTable *symbolTable); 25 #else RewriteRowMajorMatrices(TCompiler * compiler,TIntermBlock * root,TSymbolTable * symbolTable)26ANGLE_NO_DISCARD ANGLE_INLINE bool RewriteRowMajorMatrices(TCompiler *compiler, 27 TIntermBlock *root, 28 TSymbolTable *symbolTable) 29 { 30 UNREACHABLE(); 31 return false; 32 } 33 #endif 34 35 } // namespace sh 36 37 #endif // COMPILER_TRANSLATOR_TREEOPS_APPLE_REWRITEROWMAJORMATRICES_H_ 38