1. 06 Jun, 2017 1 commit
  2. 01 Jun, 2017 1 commit
  3. 25 May, 2017 2 commits
    • Frank Barchard's avatar
      lint warning fixes for CpuID · 7bffe5e1
      Frank Barchard authored
      The CpuId function is a wrapper for the intrinsic, or
      implemented with inline if unavailable.  It had been
      using uint32, but the intrinsics use int, so it was causing
      casting and lint warnings.  This change makes the internal
      implementation use int.
      
      Casting was also done for xgetbv, and the cast is simply
      removed, and is not causing a build error.
      
      MipCpuCaps was doing strlen to check for white space after the
      instruction set.  Arm also does this but with a hard coded offset.
      This was causing a cast from size_t to int, which produced a lint
      warning.  The change removes the white space detect.
      In theory the code could be used to detect SSE vs SSE2, and it would
      need to check SSE is followed by a space or end of line.  But this
      code is only used on Arm and Mips, where there there is one form
      of SIMD detected.  e.g. MSA for mips.  If a new instruction set is
      added with a similar name, the write space check could be reintroduced.
      But its more likely the code can be rewritten to use a better form
      of detection by then. Or remove detection and require the instructions
      
      BUG=libyuv:641
      TEST=try bots build on all platforms without error and lint is clean
      
      Change-Id: I9f55f8e57bba0f78571bdddbe63b945dea3e8809
      Reviewed-on: https://chromium-review.googlesource.com/514524
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      Reviewed-by: 's avatarCheng Wang <wangcheng@google.com>
      Reviewed-by: 's avatarWan-Teh Chang <wtc@chromium.org>
      7bffe5e1
    • Henrik Kjellander's avatar
      Update autoroller after FromImpl was removed from depot tools · ae7e2ef1
      Henrik Kjellander authored
      In https://chromium-review.googlesource.com/c/509693/ the From
      keyword was removed. This update the script to match that (we
      also were no longer using it).
      
      BUG=libyuv:704
      NOTRY=True
      
      Change-Id: Iccbbfb426a3acd986fbc036672fb51abc2c5d346
      Reviewed-on: https://chromium-review.googlesource.com/513908Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Henrik Kjellander <kjellander@chromium.org>
      ae7e2ef1
  4. 24 May, 2017 2 commits
  5. 12 May, 2017 2 commits
  6. 09 May, 2017 1 commit
  7. 08 May, 2017 1 commit
  8. 02 May, 2017 1 commit
  9. 26 Apr, 2017 1 commit
  10. 25 Apr, 2017 1 commit
  11. 20 Apr, 2017 1 commit
  12. 18 Apr, 2017 2 commits
  13. 17 Apr, 2017 1 commit
  14. 14 Apr, 2017 1 commit
  15. 11 Apr, 2017 1 commit
    • Frank Barchard's avatar
      I422ToRGB565 fix for odd widths · 8cab2e31
      Frank Barchard authored
      I422ToRGB565Row_Any_AVX2 uses 2 step row conversion that calls
      I422ToARGBRow_AVX2 and then ARGBToRGB565.
      I422ToARGBRow_AVX2 expects multiple of 16 pixels.
      Adjust the I422ToRGB565Row_Any_AVX2 to do multiple of 16 with AVX2
      and then remainder in a buffer.
      
      Bug: libyuv: 657
      Test: out/Release/libyuv_unittest --gtest_filter=*Convert*I*To* --libyuv_width=1280 --libyuv_height=720
      Change-Id: Ice1cb6c7ff6b2295513e8b4a9f77522e1c659810
      Reviewed-on: https://chromium-review.googlesource.com/474232
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      Reviewed-by: 's avatarHenrik Kjellander <kjellander@chromium.org>
      8cab2e31
  16. 06 Apr, 2017 1 commit
  17. 29 Mar, 2017 1 commit
  18. 17 Mar, 2017 1 commit
  19. 14 Mar, 2017 1 commit
  20. 10 Mar, 2017 1 commit
  21. 09 Mar, 2017 1 commit
  22. 08 Mar, 2017 1 commit
  23. 06 Mar, 2017 1 commit
  24. 05 Mar, 2017 1 commit
  25. 04 Mar, 2017 1 commit
  26. 03 Mar, 2017 5 commits
  27. 01 Mar, 2017 1 commit
    • Frank Barchard's avatar
      Fix missing return in MipsCpuCaps. · 91ee9b72
      Frank Barchard authored
      Previously if MipsCpuCaps were called with something other than
      dspr2 or msa, the file was closed but still used.
      
      This change assumed the function is only called internally twice:
      once for msa and once for dspr2.  If msa is not being detected,
      the function assumed dspr2 was being tested and returns dspr2 was
      true.
      
      BUG=libyuv:687
      TEST=try bots
      
      Change-Id: I80b328eb5ffc7baf5f1ee5a79c16d75c45ff26cc
      Reviewed-on: https://chromium-review.googlesource.com/447831Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      91ee9b72
  28. 28 Feb, 2017 1 commit
  29. 27 Feb, 2017 1 commit
  30. 23 Feb, 2017 1 commit
    • Manojkumar Bhosale's avatar
      Add MSA optimized Interpolate/MergeUV/Misc functions · 45b176d1
      Manojkumar Bhosale authored
      BUG=libyuv:634
      
      Change-Id: If8d60bd57f01fe95bc2fd26196466574195cc126
      
      Performance Gain (vs C auto-vectorized)
      InterpolateRow_MSA      - ~3.3x
      InterpolateRow_Any_MSA  - ~2.5x
      ARGBSetRow_MSA          - ~1.0x
      ARGBSetRow_Any_MSA      - ~1.0x
      ARGBToRGB24Row_MSA      - ~1.9x
      ARGBToRGB24Row_Any_MSA  - ~1.6x
      MergeUVRow_MSA          - ~1.6x
      MergeUVRow_Any_MSA      - ~1.2x
      
      Performance Gain (vs C non-vectorized)
      InterpolateRow_MSA      - ~11.3x
      InterpolateRow_Any_MSA  - ~ 7.9x
      ARGBSetRow_MSA          - ~ 6.2x
      ARGBSetRow_Any_MSA      - ~ 4.0x
      ARGBToRGB24Row_MSA      - ~ 9.9x
      ARGBToRGB24Row_Any_MSA  - ~ 8.4x
      MergeUVRow_MSA          - ~12.7x
      MergeUVRow_Any_MSA      - ~ 8.0x
      
      Change-Id: If8d60bd57f01fe95bc2fd26196466574195cc126
      Reviewed-on: https://chromium-review.googlesource.com/445817Reviewed-by: 's avatarFrank Barchard <fbarchard@google.com>
      Commit-Queue: Frank Barchard <fbarchard@google.com>
      45b176d1
  31. 22 Feb, 2017 1 commit
  32. 21 Feb, 2017 1 commit