1 //
2 // Copyright (c) 2002-2015 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 // PruneNoOps.h: The PruneNoOps function prunes:
7 //   1. Empty declarations "int;". Empty declarators will be pruned as well, so for example:
8 //        int , a;
9 //      is turned into
10 //        int a;
11 //   2. Literal statements: "1.0;". The ESSL output doesn't define a default precision for float,
12 //      so float literal statements would end up with no precision which is invalid ESSL.
13 
14 #ifndef COMPILER_TRANSLATOR_PRUNENOOPS_H_
15 #define COMPILER_TRANSLATOR_PRUNENOOPS_H_
16 
17 namespace sh
18 {
19 class TIntermBlock;
20 
21 void PruneNoOps(TIntermBlock *root);
22 }
23 
24 #endif  // COMPILER_TRANSLATOR_PRUNENOOPS_H_
25