1. 18 Dec, 2017 1 commit
    • Fixed EAC failures · f46493fe
      Alexis Hetu authored
      The ETC2 decoder spec has a slight difference with the EAC decoder
      spec when it comes to handling the 0 multiplier corner case.
      
      For ETC2, we have (OpenGL ES 3.0 spec, section C.1.3):
      "An encoder is not allowed to produce a multiplier of zero, but
       the decoder should still be able to handle also this case (and
       produce 0 x modifier = 0 in that case)."
      
      For EAC, we have (OpenGL ES 3.0 spec, section C.1.5):
      "If the multiplier value is zero, we should set the multiplier
       to 1.0/8.0"
      
      In order to take this into account, the EAC decoded output can no
      longer be represented by an 8 bit value, but must be represented by
      a minimum of 11 bits, as the spec requires. For now, the EAC decoder
      decodes EAC into a 32 bit integer format, which then gets converted
      to a 32 bit float format internally.
      
      Eventually, it would be possible for the EAC decoder to decode the
      image to a signed 16 bit integer internal format, if it was supported.
      
      Fixes all failures in:
      dEQP-GLES3.functional.texture.wrap*
      
      Change-Id: I32106383ade56e375229231ff230a2574791caa6
      Reviewed-on: https://swiftshader-review.googlesource.com/15188Tested-by: 's avatarAlexis Hétu <sugoi@google.com>
      Reviewed-by: 's avatarNicolas Capens <nicolascapens@google.com>
  2. 14 Dec, 2017 7 commits
  3. 13 Dec, 2017 1 commit
  4. 12 Dec, 2017 3 commits
  5. 08 Dec, 2017 3 commits
  6. 07 Dec, 2017 3 commits
  7. 06 Dec, 2017 6 commits
  8. 05 Dec, 2017 2 commits
  9. 04 Dec, 2017 2 commits
  10. 01 Dec, 2017 12 commits