- 26 Jan, 2017 2 commits
-
-
Frank Barchard authored
cd ~/my_projects/libyuv git pull mkdir cbuild # (for out-of-source builds) cd cbuild cmake -DCMAKE_BUILD_TYPE=Release .. make -j4 make package BUG=libyuv:673 TEST=make package Change-Id: Ia449cbfd0bc118cc90c8648f8199a0526b7ae2a2 Reviewed-on: https://chromium-review.googlesource.com/433440 Commit-Queue: Frank Barchard <fbarchard@google.com> Reviewed-by: Henrik Kjellander <kjellander@chromium.org>
-
Henrik Kjellander authored
GYP is deprecated and execution will break soon, so remove it from executing during runhooks already. BUG=libyuv:674 Change-Id: If8b7b97d719b85e4b5658fb82fe5ae940e8ceaa3 Reviewed-on: https://chromium-review.googlesource.com/433877Reviewed-by: Frank Barchard <fbarchard@google.com> Commit-Queue: Frank Barchard <fbarchard@google.com>
-
- 24 Jan, 2017 1 commit
-
-
Aaron Gable authored
BUG=665585 Change-Id: I96e92b1d22051c60808f4563e0f3c70f5a801efd Reviewed-on: https://chromium-review.googlesource.com/430222Reviewed-by: Frank Barchard <fbarchard@google.com> Commit-Queue: Aaron Gable <agable@chromium.org>
-
- 20 Jan, 2017 3 commits
-
-
Aaron Gable authored
This is a trivial change intended to test libyuv's new CQ, but also happens to be a nice cleanup, removal of dead entries, and sort of the remaining entries. Change-Id: I87cc228d3096fdf60b755ead6bd082757ce53262 Reviewed-on: https://chromium-review.googlesource.com/430992 Commit-Queue: Aaron Gable <agable@chromium.org> Reviewed-by: Frank Barchard <fbarchard@google.com>
-
Aaron Gable authored
This adds a commit queue for libyuv. The set of bots triggered is the same as the set previously specified in PRESUBMIT.py. This has two advantages over the current setup: a) You get nice features in Gerrit (like a dry run button); and b) You get a CQ! Change-Id: I006e8480fa7238d9e7a0cfa0a932ddabcd71f511 Reviewed-on: https://chromium-review.googlesource.com/430917Reviewed-by: Frank Barchard <fbarchard@google.com>
-
Frank Barchard authored
TEST=None BUG=libyuv:672 Change-Id: Ia5949fb20913e4397e62d6a302c89a27dbd7e169 Change-Id: Ia5949fb20913e4397e62d6a302c89a27dbd7e169 Reviewed-on: https://chromium-review.googlesource.com/430321Reviewed-by: Aaron Gable <agable@chromium.org>
-
- 18 Jan, 2017 1 commit
-
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C auto-vectorized) NV12ToARGBRow_MSA - ~1.5x NV12ToARGBRow_Any_MSA - ~1.4x NV12ToRGB565Row_MSA - ~1.4x NV12ToRGB565Row_Any_MSA - ~1.4x NV21ToARGBRow_MSA - ~1.5x NV21ToARGBRow_Any_MSA - ~1.5x SobelRow_MSA - ~4.3x SobelRow_Any_MSA - ~3.4x SobelToPlaneRow_MSA - ~8.0x SobelToPlaneRow_Any_MSA - ~4.7x SobelXYRow_MSA - ~3.0x SobelXYRow_Any_MSA - ~2.5x Performance Gain (vs C non-vectorized) NV12ToARGBRow_MSA - ~6.5x NV12ToARGBRow_Any_MSA - ~6.5x NV12ToRGB565Row_MSA - ~6.2x NV12ToRGB565Row_Any_MSA - ~6.1x NV21ToARGBRow_MSA - ~6.5x NV21ToARGBRow_Any_MSA - ~6.5x SobelRow_MSA - ~14.5x SobelRow_Any_MSA - ~11.3x SobelToPlaneRow_MSA - ~34.2x SobelToPlaneRow_Any_MSA - ~19.4x SobelXYRow_MSA - ~11.1x SobelXYRow_Any_MSA - ~9.1x Review-Url: https://codereview.chromium.org/2636483002 .
-
- 13 Jan, 2017 3 commits
-
-
Frank Barchard authored
add macros to enable/disable code analyst around blocks of code. Normally these macros should not be used, but if performance details are wanted for intel code, enable them around the code and then run via the iaca tool, available on the intel website. BUG=libyuv:670 TEST=~/iaca-lin64/bin/iaca.sh -64 out/Release/libyuv_unittest R=wangcheng@google.com Review-Url: https://codereview.chromium.org/2626193002 .
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) TransposeWx16_MSA - ~6.0x TransposeWx16_Any_MSA - ~4.7x TransposeUVWx16_MSA - ~6.3x TransposeUVWx16_Any_MSA - ~5.4x Performance Gain (vs C non-vectorized) TransposeWx16_MSA - ~6.0x TransposeWx16_Any_MSA - ~4.8x TransposeUVWx16_MSA - ~6.3x TransposeUVWx16_Any_MSA - ~5.4x Review-Url: https://codereview.chromium.org/2617703002 .
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ARGB1555ToARGBRow_MSA - 1.85 ARGB1555ToARGBRow_Any_MSA - 1.82 RGB565ToARGBRow_MSA - 2.14 RGB565ToARGBRow_Any_MSA - 2.08 RGB24ToARGBRow_MSA - 8.57 RGB24ToARGBRow_Any_MSA - 7.42 RAWToARGBRow_MSA - 8.57 RAWToARGBRow_Any_MSA - 7.42 ARGB1555ToYRow_MSA - 2.60 ARGB1555ToYRow_Any_MSA - 2.47 RGB565ToYRow_MSA - 2.45 RGB565ToYRow_Any_MSA - 2.33 RGB24ToYRow_MSA - 2.23 RGB24ToYRow_Any_MSA - 2.01 RAWToYRow_MSA - 2.25 RAWToYRow_Any_MSA - 2.02 ARGB1555ToUVRow_MSA - 1.40 ARGB1555ToUVRow_Any_MSA - 1.37 RGB565ToUVRow_MSA - 1.68 RGB565ToUVRow_Any_MSA - 1.63 RGB24ToUVRow_MSA - 3.02 RGB24ToUVRow_Any_MSA - 2.87 RAWToUVRow_MSA - 3.04 RAWToUVRow_Any_MSA - 2.85 Performance Gain (vs C non-vectorized) ARGB1555ToARGBRow_MSA - 4.66 ARGB1555ToARGBRow_Any_MSA - 4.45 RGB565ToARGBRow_MSA - 5.58 RGB565ToARGBRow_Any_MSA - 5.34 RGB24ToARGBRow_MSA - 8.57 RGB24ToARGBRow_Any_MSA - 7.42 RAWToARGBRow_MSA - 8.57 RAWToARGBRow_Any_MSA - 7.42 ARGB1555ToYRow_MSA - 6.38 ARGB1555ToYRow_Any_MSA - 5.98 RGB565ToYRow_MSA - 6.42 RGB565ToYRow_Any_MSA - 6.05 RGB24ToYRow_MSA - 7.87 RGB24ToYRow_Any_MSA - 7.01 RAWToYRow_MSA - 7.98 RAWToYRow_Any_MSA - 7.01 ARGB1555ToUVRow_MSA - 5.39 ARGB1555ToUVRow_Any_MSA - 5.06 RGB565ToUVRow_MSA - 6.39 RGB565ToUVRow_Any_MSA - 5.90 RGB24ToUVRow_MSA - 3.04 RGB24ToUVRow_Any_MSA - 2.87 RAWToUVRow_MSA - 3.04 RAWToUVRow_Any_MSA - 2.88 Review-Url: https://codereview.chromium.org/2600713002 .
-
- 11 Jan, 2017 2 commits
-
-
Frank Barchard authored
BUG=libyuv:668 TEST=run unit tests R=fbarchard@google.com Review-Url: https://codereview.chromium.org/2620183002 .
-
Frank Barchard authored
Optimized functions: I444ToARGBRow_DSPR2 I422ToARGB4444Row_DSPR2 I422ToARGB1555Row_DSPR2 NV12ToARGBRow_DSPR2 BGRAToUVRow_DSPR2 BGRAToYRow_DSPR2 ABGRToUVRow_DSPR2 ARGBToYRow_DSPR2 ABGRToYRow_DSPR2 RGBAToUVRow_DSPR2 RGBAToYRow_DSPR2 ARGBToUVRow_DSPR2 RGB24ToARGBRow_DSPR2 RAWToARGBRow_DSPR2 RGB565ToARGBRow_DSPR2 ARGB1555ToARGBRow_DSPR2 ARGB4444ToARGBRow_DSPR2 ScaleAddRow_DSPR2 Bug-fixes in functions: ScaleRowDown2_DSPR2 ScaleRowDown4_DSPR2 BUG= Review-Url: https://codereview.chromium.org/2626123003 .
-
- 21 Dec, 2016 1 commit
-
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ScaleRowDown2_MSA - ~22.3x ScaleRowDown2_Any_MSA - ~19.9x ScaleRowDown2Linear_MSA - ~31.2x ScaleRowDown2Linear_Any_MSA - ~29.4x ScaleRowDown2Box_MSA - ~20.1x ScaleRowDown2Box_Any_MSA - ~19.6x ScaleRowDown4_MSA - ~11.7x ScaleRowDown4_Any_MSA - ~11.2x ScaleRowDown4Box_MSA - ~15.1x ScaleRowDown4Box_Any_MSA - ~15.1x ScaleRowDown38_MSA - ~1x ScaleRowDown38_Any_MSA - ~1x ScaleRowDown38_2_Box_MSA - ~1.7x ScaleRowDown38_2_Box_Any_MSA - ~1.7x ScaleRowDown38_3_Box_MSA - ~1.7x ScaleRowDown38_3_Box_Any_MSA - ~1.7x ScaleAddRow_MSA - ~1.2x ScaleAddRow_Any_MSA - ~1.15x Performance Gain (vs C non-vectorized) ScaleRowDown2_MSA - ~22.4x ScaleRowDown2_Any_MSA - ~19.8x ScaleRowDown2Linear_MSA - ~31.6x ScaleRowDown2Linear_Any_MSA - ~29.4x ScaleRowDown2Box_MSA - ~20.1x ScaleRowDown2Box_Any_MSA - ~19.6x ScaleRowDown4_MSA - ~11.7x ScaleRowDown4_Any_MSA - ~11.2x ScaleRowDown4Box_MSA - ~15.1x ScaleRowDown4Box_Any_MSA - ~15.1x ScaleRowDown38_MSA - ~3.2x ScaleRowDown38_Any_MSA - ~3.2x ScaleRowDown38_2_Box_MSA - ~2.4x ScaleRowDown38_2_Box_Any_MSA - ~2.3x ScaleRowDown38_3_Box_MSA - ~2.9x ScaleRowDown38_3_Box_Any_MSA - ~2.8x ScaleAddRow_MSA - ~8x ScaleAddRow_Any_MSA - ~7.46x Review-Url: https://codereview.chromium.org/2559683002 .
-
- 19 Dec, 2016 1 commit
-
-
Frank Barchard authored
BUG=libyuv:666 TESTED= unittests built and passed with jpeg disabled. R=kjellander@chromium.org Review-Url: https://codereview.chromium.org/2585373002 .
-
- 15 Dec, 2016 2 commits
-
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ARGBAttenuateRow_MSA - ~1.1x ARGBAttenuateRow_Any_MSA - ~1.1x ARGBToRGB565DitherRow_MSA - ~6.4x ARGBToRGB565DitherRow_Any_MSA - ~6.2x ARGBShuffleRow_MSA - ~5.1x ARGBShuffleRow_Any_MSA - ~1.9x ARGBShadeRow_MSA - ~1.1x ARGBGrayRow_MSA - ~2.6x ARGBSepiaRow_MSA - ~11.6x Performance Gain (vs C non-vectorized) ARGBAttenuateRow_MSA - ~2.46x ARGBAttenuateRow_Any_MSA - ~2.45x ARGBToRGB565DitherRow_MSA - ~9.4x ARGBToRGB565DitherRow_Any_MSA - ~12.5x ARGBShuffleRow_MSA - ~5.2x ARGBShuffleRow_Any_MSA - ~1.9x ARGBShadeRow_MSA - ~4.3x ARGBGrayRow_MSA - ~10.5x ARGBSepiaRow_MSA - ~12.2x Review-Url: https://codereview.chromium.org/2559693002 .
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) TransposeWx8_MSA - ~2.7x TransposeWx8_Any_MSA - ~2.1x TransposeUVWx8_MSA - ~2.5x TransposeUVWx8_Any_MSA - ~2.7x Performance Gain (vs C non-vectorized) TransposeWx8_MSA - ~4.6x TransposeWx8_Any_MSA - ~2.9x TransposeUVWx8_MSA - ~4.4x TransposeUVWx8_Any_MSA - ~3.7x Review URL: https://codereview.chromium.org/2553403002 .
-
- 14 Dec, 2016 1 commit
-
-
Frank Barchard authored
The difference was assigned to an int, causing a warning on Visual C. BUG=662 TEST=tested with try bots. R=devangelakos@google.com Review-Url: https://codereview.chromium.org/2574373002 .
-
- 07 Dec, 2016 2 commits
-
-
Frank Barchard authored
BUG=libyuv:660 TEST=try bots R=kjellander@chromium.org Review URL: https://codereview.chromium.org/2554213003 .
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ScaleARGBRowDown2_MSA - ~2.6x ScaleARGBRowDown2Linear_MSA - ~7.9x ScaleARGBRowDown2Box_MSA - ~3.7x ScaleARGBRowDownEven_MSA - ~1.2x ScaleARGBRowDownEvenBox_MSA - ~3.5x ScaleARGBRowDown2_Any_MSA - ~2.6x ScaleARGBRowDown2Linear_Any_MSA - ~7.9x ScaleARGBRowDown2Box_Any_MSA - ~3.6x ScaleARGBRowDownEven_Any_MSA - ~1.2x ScaleARGBRowDownEvenBox_Any_MSA - ~3.5x Performance Gain (vs C non-vectorized) ScaleARGBRowDown2_MSA - 2.6x ScaleARGBRowDown2Linear_MSA - 13.5x ScaleARGBRowDown2Box_MSA - 5.8x ScaleARGBRowDownEven_MSA - 1.2x ScaleARGBRowDownEvenBox_MSA - 3.7x ScaleARGBRowDown2_Any_MSA - 2.6x ScaleARGBRowDown2Linear_Any_MSA - 13.5x ScaleARGBRowDown2Box_Any_MSA - 5.3x ScaleARGBRowDownEven_Any_MSA - 1.2x ScaleARGBRowDownEvenBox_Any_MSA - 3.7x Review URL: https://codereview.chromium.org/2527983002 .
-
- 02 Dec, 2016 1 commit
-
-
Manojkumar Bhosale authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ARGBMultiplyRow_MSA - 1.4x ARGBAddRow_MSA - 8.6x ARGBSubtractRow_MSA - 8.6x ARGBMultiplyRow_Any_MSA - 1.35x ARGBAddRow_Any_MSA - 7.3x ARGBSubtractRow_Any_MSA - 7.2x Performance Gain (vs C non-vectorized) ARGBMultiplyRow_MSA - 4.4x ARGBAddRow_MSA - 27x ARGBSubtractRow_MSA - 22x ARGBMultiplyRow_Any_MSA - 3.5x ARGBAddRow_Any_MSA - 23x ARGBSubtractRow_Any_MSA - 18x Review URL: https://codereview.chromium.org/2529983002 .
-
- 22 Nov, 2016 1 commit
-
-
Frank Barchard authored
Add MSA optimized ARGBToRGB565Row_MSA, ARGBToARGB1555Row_MSA, ARGBToARGB4444Row_MSA, ARGBToUV444Row_MSA functions R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) ARGBToRGB565Row_MSA - ~1.6x ARGBToRGB565Row_Any_MSA - ~1.6x ARGBToARGB1555Row_MSA - ~1.3x ARGBToARGB1555Row_Any_MSA - ~1.3x ARGBToARGB4444Row_MSA - ~3.8x ARGBToARGB4444Row_Any_MSA - ~3.8x ARGBToUV444Row_MSA - ~2.4x ARGBToUV444Row_Any_MSA - ~2.4x Performance Gain (vs C non-vectorized) ARGBToRGB565Row_MSA - ~2.8x ARGBToRGB565Row_Any_MSA - ~2.8x ARGBToARGB1555Row_MSA - ~2.2x ARGBToARGB1555Row_Any_MSA - ~2.2x ARGBToARGB4444Row_MSA - ~6.8x ARGBToARGB4444Row_Any_MSA - ~6.6x ARGBToUV444Row_MSA - ~6.7x ARGBToUV444Row_Any_MSA - ~6.7x Review URL: https://codereview.chromium.org/2520003004 .
-
- 18 Nov, 2016 1 commit
-
-
Frank Barchard authored
R=fbarchard@google.com BUG=libyuv:634 Review URL: https://codereview.chromium.org/2487913004 .
-
- 09 Nov, 2016 1 commit
-
-
Frank Barchard authored
BUG=libyuv:658 TEST=g++ -I include -fPIC -m32 -msse2 -Os -fno-omit-frame-pointer -c source/row_gcc.cc -o row_gcc.o R=wangcheng@google.com Review URL: https://codereview.chromium.org/2482263003 .
-
- 08 Nov, 2016 3 commits
-
-
Frank Barchard authored
BUG=libyuv:654 TEST=try bots build R=kjellander@chromium.org Review URL: https://codereview.chromium.org/2484083003 .
-
Frank Barchard authored
BUG=None TEST=None Review URL: https://codereview.chromium.org/2487603002 .
-
Frank Barchard authored
BUG=libyuv:654 R=kjellander@chromium.org Review URL: https://codereview.chromium.org/2469353005 .
-
- 07 Nov, 2016 1 commit
-
-
Frank Barchard authored
Improved unittests detect different in arm64 rounding. TEST=util/android/test_runner.py gtest -s libyuv_unittest -t 7200 --verbose --release --gtest_filter=*Half* -a "--libyuv_width=640 --libyuv_height=360" BUG=libyuv:560 R=wangcheng@google.com Review URL: https://codereview.chromium.org/2478313004 .
-
- 01 Nov, 2016 1 commit
-
-
Frank Barchard authored
64 bit version made similar to 32 bit with registers 1 for load and store results, and 2 and 3 as expanded float temporary values. TEST=out/Release/libyuv_unittest --gtest_filter=*Half* BUG=libyuv:560 R=wangcheng@google.com Review URL: https://codereview.chromium.org/2467723002 .
-
- 27 Oct, 2016 1 commit
-
-
Frank Barchard authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) I422ToRGB565Row_MSA : ~1.5x I422ToRGB565Row_Any_MSA : ~1.5x I422ToARGB4444Row_MSA : ~1.4x I422ToARGB4444Row_Any_MSA : ~1.4x I422ToARGB1555Row_MSA : ~1.4x I422ToARGB1555Row_Any_MSA : ~1.4x Performance Gain (vs C non-vectorized) I422ToRGB565Row_MSA : ~6.8x I422ToRGB565Row_Any_MSA : ~6.8x I422ToARGB4444Row_MSA : ~6.6x I422ToARGB4444Row_Any_MSA : ~6.6x I422ToARGB1555Row_MSA : ~6.6x I422ToARGB1555Row_Any_MSA : ~6.6x Review URL: https://codereview.chromium.org/2445343007 .
-
- 26 Oct, 2016 3 commits
-
-
Frank Barchard authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gain (vs C vectorized) I422AlphaToARGBRow_MSA : ~1.4x I422AlphaToARGBRow_Any_MSA : ~1.4x I422ToRGB24Row_MSA : ~4.8x I422ToRGB24Row_Any_MSA : ~4.8x Performance Gain (vs C non-vectorized) I422AlphaToARGBRow_MSA : ~7.0x I422AlphaToARGBRow_Any_MSA : ~7.0x I422ToRGB24Row_MSA : ~7.9x I422ToRGB24Row_Any_MSA : ~7.7x Review URL: https://codereview.chromium.org/2454433003 .
-
Frank Barchard authored
BUG=libyuv:634 TEST=git cl lint TBR=kjellander@chromium.org Review URL: https://codereview.chromium.org/2453013003 .
-
Frank Barchard authored
BUG=libyuv:643 TEST=gn gen out/Release "--args=is_debug=false target_os=\"ios\" ios_enable_code_signing=false target_cpu=\"arm64\"" && ninja -v -C out/Release libyuv_unittest R=kjellander@chromium.org Review URL: https://codereview.chromium.org/2450853003 .
-
- 25 Oct, 2016 3 commits
-
-
Frank Barchard authored
DEPS roll is needed for mips builds. These additional changes are also needed for that DEPS roll. These can be done separately. TBR=kjellander@chromium.org BUG=libyuv:634 TEST=try bots Review URL: https://codereview.chromium.org/2446043003 .
-
Frank Barchard authored
no functional changes. TBR=kjellander@chromium.org BUG=libyuv:634 Review URL: https://codereview.chromium.org/2446313002 .
-
Frank Barchard authored
Debug builds of x86 gcc/clang can run out of register. Previously NDEBUG or _DEBUG was used to detect a debug build. But those macros are not set by gentoo builds. This CL switches to the compiler predefine __OPTIMIZE__ which is built into clang and gcc. BUG=libyuv:602 TEST=untested R=wangcheng@google.com Review URL: https://codereview.chromium.org/2451503002 .
-
- 24 Oct, 2016 1 commit
-
-
Frank Barchard authored
R=fbarchard@google.com BUG=libyuv:634 Performance Gains :- (vs C vectorized) I422ToARGBRow_MSA : ~1.6x I422ToRGBARow_MSA : ~1.6x I422ToARGBRow_Any_MSA : ~1.58x I422ToRGBARow_Any_MSA : ~1.6x Performance Gains :- (vs C non-vectorized) I422ToARGBRow_MSA : ~7x I422ToRGBARow_MSA : ~7x I422ToARGBRow_Any_MSA : ~6.9x I422ToRGBARow_Any_MSA : ~6.8x Regarding performance measurement, We have created standalone tests which pass in row's data from a 1920x1080 filled buffer to both the C and MSA functions. And such N iterations are executed to get more accurate timings of C vs MSA. Review URL: https://codereview.chromium.org/2430313005 .
-
- 21 Oct, 2016 1 commit
-
-
Frank Barchard authored
void HalfFloat1Row_NEON(const uint16* src, uint16* dst, float, int width) { asm volatile ( "1: \n" MEMACCESS(0) "ld1 {v1.16b}, [%0], #16 \n" // load 8 shorts "subs %w2, %w2, #8 \n" // 8 pixels per loop "uxtl v2.4s, v1.4h \n" // 8 int's "uxtl2 v1.4s, v1.8h \n" "scvtf v2.4s, v2.4s \n" // 8 floats "scvtf v1.4s, v1.4s \n" "fcvtn v4.4h, v2.4s \n" // 8 floatsgit "fcvtn2 v4.8h, v1.4s \n" MEMACCESS(1) "st1 {v4.16b}, [%1], #16 \n" // store 8 shorts "b.gt 1b \n" : "+r"(src), // %0 "+r"(dst), // %1 "+r"(width) // %2 : : "cc", "memory", "v1", "v2", "v4" ); } void HalfFloatRow_NEON(const uint16* src, uint16* dst, float scale, int width) { asm volatile ( "1: \n" MEMACCESS(0) "ld1 {v1.16b}, [%0], #16 \n" // load 8 shorts "subs %w2, %w2, #8 \n" // 8 pixels per loop "uxtl v2.4s, v1.4h \n" // 8 int's "uxtl2 v1.4s, v1.8h \n" "scvtf v2.4s, v2.4s \n" // 8 floats "scvtf v1.4s, v1.4s \n" "fmul v2.4s, v2.4s, %3.s[0] \n" // adjust exponent "fmul v1.4s, v1.4s, %3.s[0] \n" "uqshrn v4.4h, v2.4s, #13 \n" // isolate halffloat "uqshrn2 v4.8h, v1.4s, #13 \n" MEMACCESS(1) "st1 {v4.16b}, [%1], #16 \n" // store 8 shorts "b.gt 1b \n" : "+r"(src), // %0 "+r"(dst), // %1 "+r"(width) // %2 : "w"(scale * 1.9259299444e-34f) // %3 : "cc", "memory", "v1", "v2", "v4" ); } TEST=LibYUVPlanarTest.TestHalfFloatPlane_One BUG=libyuv:560 R=hubbe@chromium.org Review URL: https://codereview.chromium.org/2430313008 .
-
- 20 Oct, 2016 2 commits
-
-
Frank Barchard authored
AVX unpack parameters were reverse ordered causing incorrect results on AVX2 hardware. TEST=/usr/local/google/home/fbarchard/intelsde/sde -skx -- out/Release/libyuv_unittest --gtest_filter=*Half* BUG=libyuv:560 R=wangcheng@google.com Review URL: https://codereview.chromium.org/2438893002 .
-
Frank Barchard authored
Halffloats have a limited range. It shouldnt normally come up, but if the scale value passed in produces a small value, the half floats will be denormals, which are slow and/or flust to zero. This test ensures they behave the same in C and SIMD and tests the performance of denormals. TEST=TestHalfFloatPlane_denormal BUG=libyuv:560 R=hubbe@chromium.org Review URL: https://codereview.chromium.org/2424233004 .
-
- 19 Oct, 2016 1 commit
-
-
Frank Barchard authored
R=fbarchard@google.com BUG=libyuv:634 Performance gains : (Auto-vectorized C vs MSA SIMD) ARGB4444ToYRow_MSA : ~3.0x ARGB4444ToUVRow_MSA : ~1.8x ARGB4444ToARGBRow_MSA : ~3.4x ARGB4444ToYRow_Any_MSA : ~2.8x ARGB4444ToUVRow_Any_MSA : ~1.7x ARGB4444ToARGBRow_Any_MSA : ~3.2x Review URL: https://codereview.chromium.org/2421843002 .
-