• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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)26 ANGLE_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