• Show log

    Commit

  • Hash : dc99fc40
    Author : Shahbaz Youssefi
    Date : 2021-01-13T00:21:41

    Vulkan: Translator pass to monomorphize problematic functions
    
    With array of array of samplers and images, we currently require the
    shader*ArrayDynamicIndexing Vulkan features.  With atomic counters, we
    require the shaderStorageBufferArrayDynamicIndexing feature.
    
    The above features are required to enable passing opaque uniforms to
    functions.  This change introduces a translator pass that monomorphizes
    functions that receive atomic counters, or partially subscripted array
    of array of samplers or images, etc by removing those arguments and
    using the opaque uniform directly.
    
    Follow up changes will include:
    
    - Great simplification to RewriteStructSamplers, and removal of
      RewriteStructSamplersOld.  This will drop dependency to
      shaderSampledImageArrayDynamicIndexing and
      shaderStorageImageArrayDynamicIndexing.
    - Great simplification to RewriteAtomicCounters.  This will drop
      dependency to shaderStorageBufferArrayDynamicIndexing.
    - Emulation of imageAtomicExchange for r32f formats, but changing the
      qualifier to r32ui.
    
    Note that parts of RewriteStructSampler are obsolete with this change,
    but will be refactored as a follow up.
    
    Bug: angleproject:3881
    Bug: angleproject:4071
    Bug: angleproject:5535
    Change-Id: Ifd1435b2a31ebf364815046886aeded60297da79
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2628127
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: Jamie Madill <jmadill@chromium.org>
    Reviewed-by: Tim Van Patten <timvp@google.com>
    

  • Properties

  • Git HTTP https://git.kmx.io/kc3-lang/angle.git
    Git SSH git@git.kmx.io:kc3-lang/angle.git
    Public access ? public
    Description

    A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.

    Homepage

    Github

    Users
    thodg_m kc3_lang_org thodg_w www_kmx_io thodg thodg_l
    Tags