Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • compiler
  • translator
  • ConstantUnion.cpp
Find file
BlameHistoryPermalink
  • Shahbaz Youssefi's avatar
    Vulkan: Allow more than one atomic counter buffer binding · c13ca2af
    Shahbaz Youssefi authored Jul 17, 2019
    dEQP assumes there are more than one atomic counter buffers available.
    This is technically not a requirement by the standard, but nevertheless
    could be what applications expect as well.
    
    This change adds support for multiple atomic counter buffer bindings.
    This is done by declaring an array of storage buffers for the atomic
    counter buffers (instead of declaring only one) and passing the
    (binding, offset) pair around to functions instead of just the offset.
    The atomic counter is found by indexing `binding` into the storage
    buffer array first before indexing `offset` into its `uint[]`.
    
    ProgramVk's default uniform collection is also fixed not to include
    atomic counter uniforms.
    
    A remaining issue is that atomic counter buffer offsets don't have
    alignment requirements in GLES, but Vulkan does for storage buffers.
    Similar to emulated transform feedback buffer offsets, these should be
    sent to the shader through uniform values.  This will be done in a
    follow up change.
    
    Bug: angleproject:3566
    Change-Id: I5600225c24c38f1a8ecf5c64388073055733197d
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1707931
    Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org>
    Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    c13ca2af
ConstantUnion.cpp 22.3 KB
EditWeb IDE
×

Replace ConstantUnion.cpp

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.