1. 03 Jun, 2019 1 commit
    • Fix needStructMapping · 0730e630
      Qin Jiajia authored
      In previous logic, we didn't check the structure field member type. So
      when passing the non-struct member of a structure to a function, it
      would think that struct mapping was needed.
      In this patch, we add more checking so that struct mapping only happens
      when there are structure copy or passing a structure to a function.
      
      BUG=angleproject:2967
      Change-Id: Ic98e884c8f8540e180cdf40a0e036ffef18c1689
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1638227
      Commit-Queue: Jiajia Qin <jiajia.qin@intel.com>
      Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
  2. 02 Jun, 2019 1 commit
  3. 31 May, 2019 7 commits
  4. 30 May, 2019 6 commits
  5. 29 May, 2019 11 commits
  6. 28 May, 2019 12 commits
  7. 27 May, 2019 2 commits
    • D3D: Make sure Lod0 functions are never referenced in non-fragment shaders. · 3fe06eb3
      Geoff Lang authored
      The lod0 functions would not be declared but could still be referenced by
      vertex shaders.
      
      BUG=angleproject:3471
      
      Change-Id: I635a8465ce68dc22a6f7387b30bf7e93b14dd67d
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1622741
      Commit-Queue: Geoff Lang <geofflang@chromium.org>
      Reviewed-by: 's avatarJiajia Qin <jiajia.qin@intel.com>
    • Vulkan: Handle dirty RTs with state messages. · 6722009e
      Jamie Madill authored
      Prior to this CL we were handling dirty state change notifications by
      flushing the RT Images just prior to use or just after they were
      changed. This could lead to a few redundant checks in several places.
      It also meant we needed an owner pointer from the RT to the parent
      Image. This pointer would be null for Surfaces and Renderbuffers.
      
      This cleans up the image flushing logic to be handled by dirty bit
      notifications. When an app updates an attached Texture with TexSubImage
      or related calls it will send a notification to the Framebuffer. The
      Framebuffer then sets a dirty contents bit that is handled in the
      implementation. In Vulkan this means flushing the dirty bits.
      
      Requires adding a flag to the FramebufferImpl class to determine if we
      need to syncState before we checkStatus. Adding the option allows us to
      only call syncState for the GL back-end. Not calling syncState allows
      the robust resource init operation to happen *before* we syncState.
      Which in turn allows FramebuffeVk to initialize the VkImages in one go.
      
      Added new regression tests for Texture updates. This might not cover
      all cases. I found it was very hard to trigger some of the resource
      update staging in TextureVk.
      
      Bug: angleproject:3427
      Change-Id: Idfa177436ba7fcb9d398f2b67922e085f778f82a
      Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1601552
      Commit-Queue: Jamie Madill <jmadill@chromium.org>
      Reviewed-by: 's avatarShahbaz Youssefi <syoussefi@chromium.org>