Skip to content
  • roger_fong@apple.com's avatar
    Hook into some shader symbol logic following the ANGLE update in r159533. · e9526c4f
    roger_fong@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=125332.
    
    Reviewed by Brent Fulgham.
    
    No new functionality added.
    
    * html/canvas/WebGLRenderingContext.cpp: Add some error checking for errors related to
        shader symbols that exist across both vertex and fragment shaders.
    (WebCore::WebGLRenderingContext::linkProgram):
    * platform/graphics/ANGLEWebKitBridge.cpp: Add logic for handling varyings
        and add new fields to the ANGLEShaderSymbol struct.
    (WebCore::getSymbolInfo):
    * platform/graphics/ANGLEWebKitBridge.h:
    * platform/graphics/GraphicsContext3D.h: Add those same fields to the SymbolInfo struct
        as well so that we can access them from our shader source map.
        Also add a map of varyings along side the uniforms and attributes.
    (WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo):
    (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
    * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
    (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
    * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
    (WebCore::GraphicsContext3D::areProgramSymbolsValid): Will be filled in later, this method
        will use the shader source map to check for issues with unused varyings and precisions
        mismatches of shader symbols that exist across both the vertex and fragment shaders.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@160223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    e9526c4f