Closed GoogleCodeExporter closed 8 years ago
The following revision refers to this bug:
https://chromium.googlesource.com/libyuv/libyuv.git/+/431cb3667a346136189952ff93974f4ac9e79d78
commit 431cb3667a346136189952ff93974f4ac9e79d78
Author: Frank Barchard <fbarchard@google.com>
Date: Thu Nov 05 00:16:18 2015
YUV to RGB for x64 use registers instead of memory.
On Arm the YVU to RGB conversions move constants into registers.
This change does the same for 64 bit intel builds where additional
registers are available.
The AVX2 saves 3 instructions by because the 2nd argument needs to be a
register, so a vmovdqu was avoided.
x64 builds using memory:
AVX2 I420ToARGB_Opt (3059 ms)
SSSE3 I420ToARGB_Opt (3959 ms)
Now using registers
AVX2 I420ToARGB_Opt (2906 ms)
SSSE3 I420ToARGB_Opt (3928 ms)
TBR=harryjin@google.com
BUG=libyuv:520
Review URL: https://codereview.chromium.org/1407353010 .
[modify]
http://crrev.com/431cb3667a346136189952ff93974f4ac9e79d78/README.chromium
[modify]
http://crrev.com/431cb3667a346136189952ff93974f4ac9e79d78/include/libyuv/version
.h
[modify]
http://crrev.com/431cb3667a346136189952ff93974f4ac9e79d78/source/row_gcc.cc
Original comment by bugdroid1@chromium.org
on 5 Nov 2015 at 12:16
fixed. also note that landing a fix now updates the bug!
Original comment by fbarch...@chromium.org
on 5 Nov 2015 at 1:19
Original issue reported on code.google.com by
fbarch...@chromium.org
on 4 Nov 2015 at 8:04