Edit

kc3-lang/angle/src/compiler/translator/tree_util/FindFunction.cpp

Branch :

  • Show log

    Commit

  • Author : Tim Van Patten
    Date : 2019-06-26 13:13:09
    Hash : 6d37651a
    Message : Vulkan: dFdy is incorrect when the framebuffer is flipped To account for framebuffer flipping, `dFdy()` expressions must be changed to: dFdy() * ANGLEUniforms.viewportYScale Bug: angleproject:3487 Test: dEQP-GLES3.functional.shaders.derivate.dfdy.* Change-Id: I38f25ba37fb8c5ae61cee5ac911df88ec4a93fef Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1678404 Commit-Queue: Tim Van Patten <timvp@google.com> Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Shahbaz Youssefi <syoussefi@chromium.org>

  • src/compiler/translator/tree_util/FindFunction.cpp
  • //
    // Copyright 2019 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.
    //
    
    // FindFunction.cpp: Find functions.
    
    #include "compiler/translator/tree_util/FindFunction.h"
    
    #include "compiler/translator/IntermNode.h"
    #include "compiler/translator/Symbol.h"
    
    namespace sh
    {
    
    size_t FindFirstFunctionDefinitionIndex(TIntermBlock *root)
    {
        const TIntermSequence &sequence = *root->getSequence();
        for (size_t index = 0; index < sequence.size(); ++index)
        {
            TIntermNode *node                       = sequence[index];
            TIntermFunctionDefinition *nodeFunction = node->getAsFunctionDefinition();
            if (nodeFunction != nullptr)
            {
                return index;
            }
        }
        return std::numeric_limits<size_t>::max();
    }
    
    }  // namespace sh