- 20 Nov, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:751 Test: none Change-Id: If6d5e7b9c5e6e8d2a272e03ce5a1cc199ef364ca Reviewed-on: https://chromium-review.googlesource.com/779980Reviewed-by:
Weiyong Yao <braveyao@chromium.org> Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 17 Nov, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:760 Test: LibYUVConvertTest.H420ToRAW_Opt Change-Id: I050385f477309d5db02bb2218088f224c83392ed Reviewed-on: https://chromium-review.googlesource.com/775785 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Weiyong Yao <braveyao@chromium.org>
-
- 16 Nov, 2017 1 commit
-
-
Frank Barchard authored
Tests ScalePlane vs ScalePlane_16 match. Bug: libyuv:749 Test: LibYUVScaleTest.ScalePlaneDownBy4_Box_16 Change-Id: I3f71748da404982d5d48bfb11bbd3ae95a1d021c Reviewed-on: https://chromium-review.googlesource.com/765045Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
richard winterton <rrwinterton@gmail.com> Reviewed-by:
Weiyong Yao <braveyao@chromium.org>
-
- 07 Nov, 2017 1 commit
-
-
Frank Barchard authored
Key instruction sets added for each microarchitecture: AVX512BW, AVX512VL, AVX512DQ - skylake server or later AVX512_VBMI, AVX512_IFMA - cannon lake or later AVX512_BITALG, AVX512_VBMI2, AVX512_VPOPCNTDQ, AVX512_VNNI, GFNI, VAES, VPCLMULQDQ - ice lake or later Bug: libyuv:752 Test: ~/intelsde/sde -icl -- out/Release/libyuv_unittest --gtest_filter=*Cpu* Change-Id: I9ee28904c90009d66721b9f805a440c5fc2da122 Reviewed-on: https://chromium-review.googlesource.com/755617Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
richard winterton <rrwinterton@gmail.com>
-
- 17 Oct, 2017 1 commit
-
-
Frank Barchard authored
mingw gcc sets the macro _M_IX86 which is normally only set by Visual C and clangcl which are Visual C style source code style for assembly, but gcc is not Visual C compatible. Add _MSC_VER to most ifdefs to detect that its really Visual C or clangcl and not mingw gcc so the gcc source code will be used. Bug: libyuv:744 Test: CXXFLAGS=-m32 CXX=~/prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/bin/x86_64-w64-mingw32-g++ make -f linux.mk Change-Id: I3431aa486eb769b145faa8d5eb75ed639f9d6f5e Reviewed-on: https://chromium-review.googlesource.com/722319Reviewed-by:
Cheng Wang <wangcheng@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 11 Oct, 2017 1 commit
-
-
Frank Barchard authored
The low level hamming distance functions have size limitations based on counter sizes. The higher level calls the low level in blocks that avoid overflow and then accumulators in int64. This test compares the results of the low levels to the high level and against a known value (all ones) to ensure the count is correct for any specified size. The the size is very large, the result is expected to be different. Bug: libyuv:701 Test: TestHammingDistance_Opt Change-Id: I6716af7cd09ac4d88a8afa25bc845a1b62af7c93 Reviewed-on: https://chromium-review.googlesource.com/710800Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
richard winterton <rrwinterton@gmail.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 10 Oct, 2017 1 commit
-
-
Frank Barchard authored
This reverts commit ec75df58. Reason for revert: <INSERT REASONING HERE> Original change's description: > ComputeHammingDistance reduce SIMD loop to 1 call when possible. > > 32 bit x86 has high overhead due to -fpic. So this reduces the > number of calls by 1. > > TBR=kjellander@chromium.org > Bug: libyuv:701 > Test: BenchmarkHammingDistance > Change-Id: I7f557ef047920db65eab362a5f93abbd274ca051 > Reviewed-on: https://chromium-review.googlesource.com/701755 > Reviewed-by: Frank Barchard <fbarchard@google.com> > Reviewed-by: Cheng Wang <wangcheng@google.com> TBR=rrwinterton@gmail.com,fbarchard@google.com,wangcheng@google.com Change-Id: Ia61e8558a8f083c14be5f51e0e141550b6f2b5c1 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: libyuv:701 Reviewed-on: https://chromium-review.googlesource.com/707823Reviewed-by:
Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 09 Oct, 2017 1 commit
-
-
Frank Barchard authored
32 bit x86 has high overhead due to -fpic. So this reduces the number of calls by 1. TBR=kjellander@chromium.org Bug: libyuv:701 Test: BenchmarkHammingDistance Change-Id: I7f557ef047920db65eab362a5f93abbd274ca051 Reviewed-on: https://chromium-review.googlesource.com/701755Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 04 Oct, 2017 1 commit
-
-
Frank Barchard authored
If length of HammingDistance was not a multiple of 4, the result was incorrect. The old tests did not catch this so a new test is done to count 1s. Bug: libyuv:740 Test: LibYUVCompareTest.TestHammingDistance Change-Id: I93db5437821c597f1f162ac263d4a594bb83231f Reviewed-on: https://chromium-review.googlesource.com/699614Reviewed-by:
richard winterton <rrwinterton@gmail.com> Reviewed-by:
Cheng Wang <wangcheng@google.com> Reviewed-by:
Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 03 Oct, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:701 Test: BenchmarkHammingDistance_Opt Change-Id: Ibdd5d382677ebef4f82a62e0d5c3b88614a3b6e4 Reviewed-on: https://chromium-review.googlesource.com/696290 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 19 Sep, 2017 1 commit
-
-
Frank Barchard authored
Full color test is the slowest of the unittests, and not catching any additional bugs at the moment. Step thru range of 0 to 255 in steps of 5 to speed up the test. 255 is 3 * 5 * 17, so any of those primes would hit 0 and 255 exactly. Was LibYUVColorTest.TestFullYUV (896 ms) Now LibYUVColorTest.TestFullYUV (212 ms) TBR=kjellander@chromium.org Bug: libyuv:736 Test: LibYUVColorTest.TestFullYUV Change-Id: I5b55fb07ada0dc7bdc3c3c20569d36bf09bb3804 Reviewed-on: https://chromium-review.googlesource.com/672064 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 15 Sep, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org Bug: libyuv:735 Test: try bots Change-Id: I00dc06689cd0a23847865c0c8edeb538b0cc81ac Reviewed-on: https://chromium-review.googlesource.com/669142Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 12 Sep, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org BUG=libyuv:732 TEST=LibYUVPlanarTest.TestScaleSumSamples_Opt Change-Id: If80e9510ad5668b080b9384e656c0bd73cf5b4a6 Reviewed-on: https://chromium-review.googlesource.com/663764 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 11 Sep, 2017 1 commit
-
-
Frank Barchard authored
Converts packed RGB to planar and back. TBR=kjellander@chromium.org BUG=libyuv:728 TEST=MergeRGBPlane_Opt and SplitRGBPlane_Opt unittests added Change-Id: Ida59af940afcb1fc4a48bbf62c714f592665c3cc Reviewed-on: https://chromium-review.googlesource.com/658069Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 31 Aug, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org BUG=libyuv:725 TEST=lint Change-Id: I76f777427f9b1458faba12796fb0011d8e3228d5 Reviewed-on: https://chromium-review.googlesource.com/646586Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 14 Aug, 2017 1 commit
-
-
Frank Barchard authored
add ScaleMaxSamples_NEON function with max done on original values. TBR=kjellander@chromium.org BUG=libyuv:717 TEST=LibYUVPlanarTest.TestScaleMaxSamples_Opt Change-Id: Id99338860782b10ffd24f66242eb42014c2e229e Reviewed-on: https://chromium-review.googlesource.com/614685Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 09 Aug, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org BUG=libyuv:717 TEST=LibYUVPlanarTest.TestScaleSumSamples_Opt Change-Id: I5208666f3968c5c4b0f1b0c951f24216d78ee3fe Reviewed-on: https://chromium-review.googlesource.com/607184Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 04 Aug, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:717 TEST=ScaleSum unittest to compare C vs Arm implementation TBR=kjellander@chromium.org Change-Id: Iaa7af5547d979aad4722f868d31b405340115748 Reviewed-on: https://chromium-review.googlesource.com/600534Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 03 Aug, 2017 1 commit
-
-
Frank Barchard authored
R=kjellander@chromium.org Bug: libyuv:715 Test: gn gen out/Release "--args=is_debug=false target_os=\"android\" target_cpu=\"mips64el\" mips_arch_variant=\"r6\" mips_use_msa=true is_component_build=true is_clang=true" Change-Id: Ia3943b0afc02e05a8bc32350719b296b0b9d5479 Reviewed-on: https://chromium-review.googlesource.com/592720Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 21 Jul, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org BUG=None TEST=make -f linux.mk Change-Id: I747c2eb6ed03cacddf3265e65088472507f3436c Reviewed-on: https://chromium-review.googlesource.com/581874 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 19 Jun, 2017 1 commit
-
-
Frank Barchard authored
BUG=None TEST=LibYUVCompareTest.* R=jkellander@chromium.org Change-Id: I3131ca73020f855ead08255d09aa7a846bf0d556 Reviewed-on: https://chromium-review.googlesource.com/540064 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Henrik Kjellander <kjellander@chromium.org>
-
- 07 Jun, 2017 1 commit
-
-
Frank Barchard authored
Summing 16 bit hamming codes restricts the maximum length, but saves an inner loop instruction. The outer loop can sum the values. 32 bit Neon Now BenchmarkHammingDistance_Opt (78 ms) Was BenchmarkHammingDistance_Opt (92 ms) 64 bit Neon Now BenchmarkHammingDistance_Opt (85 ms) Was BenchmarkHammingDistance_Opt (92 ms) R=wangcheng@google.com TBR=kjellander@chromium.org BUG=libyuv:701 TEST=BenchmarkHammingDistance Change-Id: Ie40f0eac2f3339c33b833b42af5d394b122066ae Reviewed-on: https://chromium-review.googlesource.com/526932Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 06 Jun, 2017 1 commit
-
-
Frank Barchard authored
existing test passes out/Release/libyuv_unittest --gtest_filter=*Blend* --libyuv_width=33 --libyuv_height=16 new test added BUG=libyuv:705 TEST=LibYUVScaleTest.TestScaleOdd Change-Id: Ica91812aee2e4ed9bcc18df4962b089c2e4ae704 Reviewed-on: https://chromium-review.googlesource.com/524932Reviewed-by:
Cheng Wang <wangcheng@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 25 May, 2017 1 commit
-
-
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:
Cheng Wang <wangcheng@google.com> Reviewed-by:
Wan-Teh Chang <wtc@chromium.org>
-
- 24 May, 2017 1 commit
-
-
Frank Barchard authored
Detect the compiler's support of C11 atomics, and use C11 atomics when available. Note that libyuv::MaskCpuFlags() is still not thread-safe. BUG=libyuv:641 TEST= cpu_thread_test.cc adds a pthread based test R=wangcheng@google.com Change-Id: If05b1e16da833105a0159ed67ef20f4e61bc7abd Reviewed-on: https://chromium-review.googlesource.com/510079 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 12 May, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:701 TEST=LibYUVBaseTest.BenchmarkHammingDistance_C R=wangcheng@google.com Change-Id: I243003b098bea8ef3809298bbec349ed52a43d8c Reviewed-on: https://chromium-review.googlesource.com/499487Reviewed-by:
Cheng Wang <wangcheng@google.com>
-
- 02 May, 2017 1 commit
-
-
Frank Barchard authored
The verion of clang in ndk r14 (3.9) has a built in llvm assembler that does not have the sgtu pseudo instruction. sltu is the actual instruction, so switch the 2 operands and use the instruction instead of the pseudo op. BUG=libyuv:700 TEST=try bots build mips without error. Change-Id: I2d5f94f81acbd56cdedea011e7d9308979e19079 Reviewed-on: https://chromium-review.googlesource.com/494026Reviewed-by:
Henrik Kjellander <kjellander@chromium.org>
-
- 26 Apr, 2017 1 commit
-
-
Vignesh Venkatasubramanian authored
Revert the workaround and fix it properly by passing the additional necessary flag to the compiler. BUG=libyuv:700 Change-Id: I1c893a8acb5079decbee6963b689424bf2f99f4f Reviewed-on: https://chromium-review.googlesource.com/487881Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 25 Apr, 2017 1 commit
-
-
Frank Barchard authored
CopyRow_MIPS produces a compile error on some compilers. TBR=kjellander@chromium.org BUG=libyuv:700 TEST=try bots Change-Id: Ie88f2006ef5cf14bffaf80fd4c0dd1caa409c569 Reviewed-on: https://chromium-review.googlesource.com/486127Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 14 Apr, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:698 TESTED=mm libyuv_unittest within android external/libyuv builds unittests Change-Id: I4b5fed9f5af86c8a910f73b14053ef83f38431cc Reviewed-on: https://chromium-review.googlesource.com/478572 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 11 Apr, 2017 1 commit
-
-
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:
Henrik Kjellander <kjellander@chromium.org>
-
- 14 Mar, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:691 TEST=gn gen out/Release "--args=is_debug=false target_cpu=\"x64\" libyuv_include_tests=true" Change-Id: Ib481189be884c34d9bbc30bfcf71c7969c6f4dae Reviewed-on: https://chromium-review.googlesource.com/452736Reviewed-by:
Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 09 Mar, 2017 1 commit
-
-
Frank Barchard authored
RGB24, RAW, RGB565, ARGB1555 and ARGB4444 have conditional 2 pass versus direct path. 2 pass method requires a buffer that is conditionally allocated. ifdef's were confusing lint. simplifed ifdefs to clean up lint warning BUG=libyuv:692 TEST=lint source/convert.cc Change-Id: If868718af30b48824a5e3d28f0d7d01d4609ad55 Reviewed-on: https://chromium-review.googlesource.com/451552Reviewed-by:
Henrik Kjellander <kjellander@chromium.org> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 06 Mar, 2017 1 commit
-
-
Frank Barchard authored
Change log: https://chromium.googlesource.com/chromium/src/+log/c793ec77b2..7950721f08 Full diff: https://chromium.googlesource.com/chromium/src/+/c793ec77b2..7950721f08 Changed dependencies: * src/base: https://chromium.googlesource.com/chromium/src/base/+log/8fe126945c..d75864a2c5 * src/build: https://chromium.googlesource.com/chromium/src/build/+log/8a0a5a27d4..bf8911f59b * src/ios: https://chromium.googlesource.com/chromium/src/ios/+log/2c58c1ed6b..8b8111f841 * src/testing: https://chromium.googlesource.com/chromium/src/testing/+log/9cacf531de..c2c74bc1d1 * src/third_party: https://chromium.googlesource.com/chromium/src/third_party/+log/0ea751c2fe..4c0908d22e * src/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult.git/+log/3c626eaf72..353ee60a45 * src/tools: https://chromium.googlesource.com/chromium/src/tools/+log/41a0ccf0e1..14318cc69b DEPS diff: https://chromium.googlesource.com/chromium/src/+/c793ec77b2..7950721f08/DEPS No update to Clang. TBR=kjellander@chromium.org BUG=libyuv:689 Change-Id: Ife134b4af1c8c1e63aae2b811342d325abe0b600 Reviewed-on: https://chromium-review.googlesource.com/450317Reviewed-by:
Frank Barchard <fbarchard@google.com>
-
- 03 Mar, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:686 TESTED=untested Change-Id: Idfae93349dd78b1b633a596631e5397e11b77d0b Reviewed-on: https://chromium-review.googlesource.com/448320Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Henrik Kjellander <kjellander@chromium.org> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 01 Mar, 2017 1 commit
-
-
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:
Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 22 Feb, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:682 TEST=mm from android tree. Change-Id: I13be3eaa6a33741797360d57bc5cf5fed91678ef Reviewed-on: https://chromium-review.googlesource.com/445935Reviewed-by:
Frank Barchard <fbarchard@google.com> Reviewed-by:
Henrik Kjellander <kjellander@chromium.org> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 15 Feb, 2017 1 commit
-
-
Frank Barchard authored
BUG=libyuv:680 TEST=builds and runs with no warnings Change-Id: I7d60ef44292fa6ad4f7c4e2e2657359b864d2dab Reviewed-on: https://chromium-review.googlesource.com/442670 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by:
Henrik Kjellander <kjellander@chromium.org>
-
- 02 Feb, 2017 1 commit
-
-
Frank Barchard authored
TBR=kjellander@chromium.org BUG=libyuv:634 TEST=try bots Review-Url: https://codereview.chromium.org/2675583002 .
-
- 27 Jan, 2017 1 commit
-
-
Frank Barchard authored
Add MSA detect to unittest. Change macro to disable DSPR2 code to LIBYUV_DISABLE_DSPR2 BUG=libyuv:634 TEST=try bots Change-Id: I9e0aa2452204fc529bb6f9e6fd93c4e1c379bba6 Reviewed-on: https://chromium-review.googlesource.com/433463Reviewed-by:
Henrik Kjellander <kjellander@chromium.org> Commit-Queue: Frank Barchard <fbarchard@google.com>
-