Edit

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

Branch :

  • Show log

    Commit

  • Author : Courtney Goeltzenleuchter
    Date : 2019-11-27 09:21:45
    Hash : 33a00efd
    Message : Add Compute Shared Memory Size Validation Add tracking of shared memory declarations in compute shaders. Test:   angle_deqp_gles31_tests --gtest_filter=dEQP.GLES31/functional_debug_negative_coverage_callbacks_compute_exceed_shared_memory_size_limit Bug: 4173 Change-Id: If2a86d467a82f73fa5b2ee0ced752701acfe1872 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1934653 Commit-Queue: Courtney Goeltzenleuchter <courtneygo@google.com> Reviewed-by: Geoff Lang <geofflang@chromium.org>

  • src/compiler/translator/CollectVariables.h
  • //
    // Copyright 2002 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.
    //
    // CollectVariables.h: Collect lists of shader interface variables based on the AST.
    
    #ifndef COMPILER_TRANSLATOR_COLLECTVARIABLES_H_
    #define COMPILER_TRANSLATOR_COLLECTVARIABLES_H_
    
    #include <GLSLANG/ShaderLang.h>
    
    #include "compiler/translator/ExtensionBehavior.h"
    
    namespace sh
    {
    
    class TIntermBlock;
    class TSymbolTable;
    
    void CollectVariables(TIntermBlock *root,
                          std::vector<ShaderVariable> *attributes,
                          std::vector<ShaderVariable> *outputVariables,
                          std::vector<ShaderVariable> *uniforms,
                          std::vector<ShaderVariable> *inputVaryings,
                          std::vector<ShaderVariable> *outputVaryings,
                          std::vector<ShaderVariable> *sharedVariables,
                          std::vector<InterfaceBlock> *uniformBlocks,
                          std::vector<InterfaceBlock> *shaderStorageBlocks,
                          std::vector<InterfaceBlock> *inBlocks,
                          ShHashFunction64 hashFunction,
                          TSymbolTable *symbolTable,
                          GLenum shaderType,
                          const TExtensionBehavior &extensionBehavior);
    }  // namespace sh
    
    #endif  // COMPILER_TRANSLATOR_COLLECTVARIABLES_H_