Edit

kc3-lang/angle/src/compiler/translator/BreakVariableAliasingInInnerLoops.h

Branch :

  • Show log

    Commit

  • Author : Corentin Wallez
    Date : 2016-08-25 14:55:44
    Hash : 509e4560
    Message : compiler: Work around a HLSL compiler aliasing opt bug. BUG=angleproject:1448 Change-Id: I7d5bcbd100069152cea0cb03bc4fa6af1044460b Reviewed-on: https://chromium-review.googlesource.com/376020 Commit-Queue: Corentin Wallez <cwallez@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>

  • src/compiler/translator/BreakVariableAliasingInInnerLoops.h
  • //
    // Copyright (c) 2016 The ANGLE Project Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    //
    
    // BreakVariableAliasingInInnerLoops.h: To optimize simple assignments, the HLSL compiler frontend
    //      may record a variable as aliasing another. Sometimes the alias information gets garbled
    //      so we work around this issue by breaking the aliasing chain in inner loops.
    
    #ifndef COMPILER_TRANSLATOR_BREAKVARIABLEALIASINGININNERLOOPS_H_
    #define COMPILER_TRANSLATOR_BREAKVARIABLEALIASINGININNERLOOPS_H_
    
    class TIntermNode;
    
    namespace sh
    {
    
    void BreakVariableAliasingInInnerLoops(TIntermNode *root);
    
    }  // namespace sh
    
    #endif  // COMPILER_TRANSLATOR_BREAKVARIABLEALIASINGININNERLOOPS_H_