• Frank Barchard's avatar
    YUV to RGB for x64 use registers instead of memory. · 431cb366
    Frank Barchard authored
    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 .
    431cb366
Name
Last commit
Last update
chromium Loading commit data...
include Loading commit data...
source Loading commit data...
third_party/gflags Loading commit data...
tools Loading commit data...
unit_test Loading commit data...
util Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
AUTHORS Loading commit data...
Android.mk Loading commit data...
BUILD.gn Loading commit data...
CMakeLists.txt Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE_THIRD_PARTY Loading commit data...
OWNERS Loading commit data...
PATENTS Loading commit data...
PRESUBMIT.py Loading commit data...
README.chromium Loading commit data...
all.gyp Loading commit data...
codereview.settings Loading commit data...
download_vs_toolchain.py Loading commit data...
drover.properties Loading commit data...
gyp_libyuv Loading commit data...
gyp_libyuv.py Loading commit data...
libyuv.gyp Loading commit data...
libyuv.gypi Loading commit data...
libyuv_nacl.gyp Loading commit data...
libyuv_test.gyp Loading commit data...
linux.mk Loading commit data...
public.mk Loading commit data...
setup_links.py Loading commit data...
sync_chromium.py Loading commit data...
winarm.mk Loading commit data...