1// Copyright (c) 2016 The ANGLE Project Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4//
5// This mutating tree traversal works around a bug on evaluating unary
6// integer variable on Intel D3D driver. It works by rewriting -(int) to
7// ~(int) + 1 when evaluating unary integer variables.
8
9#ifndef COMPILER_TRANSLATOR_TREEOPS_REWRITEUNARYMINUSOPERATORINT_H_
10#define COMPILER_TRANSLATOR_TREEOPS_REWRITEUNARYMINUSOPERATORINT_H_
11
12class TIntermNode;
13namespace sh
14{
15
16void RewriteUnaryMinusOperatorInt(TIntermNode *root);
17
18} // namespace sh
19
20#endif // COMPILER_TRANSLATOR_TREEOPS_REWRITEUNARYMINUSOPERATORINT_H_