1. 04 Jun, 2019 1 commit
  2. 03 Jun, 2019 6 commits
  3. 02 Jun, 2019 1 commit
    • Address cubemap faces as consecutive layers · bb575d48
      Nicolas Capens authored
      Vulkan cubemaps use six consecutive layers for the faces, so we can
      reuse the same addressing logic as for 2D array textures. Hence the
      3D lookup vector becomes a 2D coordinate plus layer coordinate after
      projection. The only difference is we don't have to clamp to the range
      of layers.
      
      This simplifies the sampled image descriptor since we only have to store
      a single pointer per mipmap level. We also avoid the per-lane lookup
      (gather) operation. YCbCr sampling was adjusted to not use the same
      array of buffer pointers.
      
      Also eliminate the unused lodOrBias parameter from computeLod*(). It's
      added afterwards.
      
      Bug: b/134164485
      Bug: b/129523279
      Change-Id: I5c349ff458aabb1d77e32104429b635d96237292
      Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31088Tested-by: 's avatarNicolas Capens <nicolascapens@google.com>
      Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
      Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com>
  4. 31 May, 2019 2 commits
    • BuiltInPointCoord implementation · 95b1db96
      Alexis Hetu authored
      BuiltInPointCoord is defined as:
      
      "The following formulas are used to evaluate s and t:
      
      s = 1/2 + (xp - xf) / size
      t = 1/2 + (yp - yf) / size
      
      where size is the point’s size; (xp,yp) is the location at which the
      point sprite coordinates are evaluated - this may be the framebuffer
      coordinates of the fragment center, or the location of a sample; and
      (xf,yf) is the exact, unrounded framebuffer coordinate of the vertex
      for the point."
      
      So it was implemented by writing (xf,yf) in SetupRoutine, where this
      information is present and using the fragment's x and y coordinates
      as (xp,yp), which passes the test.
      
      Tests: dEQP-VK.glsl.builtin_var.simple.pointcoord
      
      Change-Id: I9146349bcce0f7c31dd0464c0f210a7306d5d033
      Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31992
      Presubmit-Ready: Alexis Hétu <sugoi@google.com>
      Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
      Reviewed-by: 's avatarChris Forbes <chrisforbes@google.com>
      Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
      Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
    • 32 bit compilation fixes for Visual Studio · 5e3c9d53
      Alexis Hetu authored
      This cl fixes all issues related to building Vulkan using the x86 compiler in Visual Studio:
      - Added dummy function to prevent compiler crash in VkGetProcAddress.cpp
      - Added missing WIN32 check in SwiftShader's Vulkan unit tests
      - Removed alignment code which broke Win32 DLL. Removing all of it should work on all other
        platforms as well.
      
      Minor nit fix:
      - Renamed VkWrapper to VkNonDispatchableHandle, which is a more accurate name.
      
      Bug b/129979580
      
      Change-Id: Ib2bf305433e9aae71ff6f9d796fb86bc7ea733b0
      Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/31609Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
      Presubmit-Ready: Alexis Hétu <sugoi@google.com>
      Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
  5. 30 May, 2019 2 commits
  6. 29 May, 2019 11 commits
  7. 28 May, 2019 17 commits