1. 03 Nov, 2017 3 commits
    • Store shader interface variables as per query spec · d255123c
      Olli Etuaho authored
      GLES 3.1 section 7.3.1.1 specifies how active variable entries should
      be generated and how active variables are named. The specs for program
      interface variable queries are built on top of this section.
      
      ANGLE has already followed this spec for the most part for generating
      variable lists in ProgramState, but now we also follow the naming spec
      for arrays and include [0] at the end of the stored name.
      
      This will make implementing arrays of arrays more straightforward.
      Most logic for variable queries will just keep working as is when
      arrays of arrays are added instead of needing more complex logic for
      handling array indexing.
      
      BUG=angleproject:2125
      TEST=angle_end2end_tests
      
      Change-Id: I3acd14253153e10bc312114b0303065da2efb506
      Reviewed-on: https://chromium-review.googlesource.com/739826Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
    • Squash State dirty bits to below 64. · c67323a9
      Jamie Madill authored
      This will dramatically speed up performance on 64-bit systems due to
      the efficiency of angle::BitSet64. Improves performance of the GL
      back-end on benchmarks quite a bit.
      
      Squashes the Pack and Unpack states together. Also moves the current
      value dirty bits to a single dirty bit, with a separate set for each
      attribute. Also squashes a multisample dirty bit.
      
      Also fixes an incorrect dirty bit in StateManagerGL.
      
      We may want to implement a semi-fast version of BitSet64 for 32-bit
      systems if we find performance is not satisfactory.
      
      BUG=angleproject:2188
      
      Change-Id: I4616782bf75413252ede3e3ac752b9ccdb9aab49
      Reviewed-on: https://chromium-review.googlesource.com/722423Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
    • Vulkan: Upgrade RGB8 textures to RGBA8. · 1d7be50a
      Jamie Madill authored
      It's unlikely any real hardware supports this format. Hack in a fixed
      fallback format for RGB8. We could consider implementing conditional
      support by checking the VkPhysicalDevice properties.
      
      This extends the Vulkan format support info in the RendererVk class
      to distinguish between a Buffer and Texture format. This is closely
      related to how Vulkan has separate format support bits for Linear
      Textures, Optimal Textures, and Buffers. We probably won't need to
      keep separate caps for Linear/Optimal, but it makes sense for Buffers
      to eventually use the same format tables.
      
      BUG=angleproject:2207
      
      Change-Id: I8d427a99db15b314b13dd99f31aa1ac5055f0881
      Reviewed-on: https://chromium-review.googlesource.com/742376
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
      Reviewed-by: 's avatarFrank Henigman <fjhenigman@chromium.org>
  2. 02 Nov, 2017 15 commits
  3. 01 Nov, 2017 12 commits
  4. 31 Oct, 2017 9 commits
  5. 30 Oct, 2017 1 commit