fbarchard@google.com
|
29db9b0b89
|
C version of YToARGB with ubias removed to produce consistent luma ramp.
BUG=392
TESTED=TestGreyYUV
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/35869004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1251 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-01-26 23:07:46 +00:00 |
|
fbarchard@google.com
|
080a316492
|
port yuv chroma improvements to gcc. YUV to RGB is more accurate using a negative matrix. 2% slower but half as much error.
BUG=324
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/41629004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1249 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-01-26 04:35:51 +00:00 |
|
fbarchard@google.com
|
b089593610
|
xmm4 is unused - remove from NV21
BUG=324
TESTED=untested
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/40489004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1243 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-01-22 18:17:44 +00:00 |
|
fbarchard@google.com
|
e7873910df
|
port YUV luma accuracy to posix
BUG=324
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/33049004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1236 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-01-21 00:36:30 +00:00 |
|
fbarchard@google.com
|
b2a6af1be6
|
Change rectangle low level functions to use more conventional row functions including 'any' variations. Previously the yuv function SetPlane stored 32 bit values. Now a more conventional memset() style function is used for YUV that stores bytes. On Haswell a rep stosb is used for YUV. Overall benefit of this CL is improved performance for 'any' width, and simpler row assembly instead of full image assembly. Previously ARGBRect used a low level function that supported a rectangle in assembly. Now it uses a row function, and relies on row coalesce to combine into a single low level call.
BUG=371
TESTED=untested
R=brucedawson@google.com, harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/35689004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1222 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2015-01-12 03:58:24 +00:00 |
|
fbarchard@google.com
|
966233e5eb
|
Remove sub 16 from yuv conversions and change bias to include it.
BUG=388
TESTED=out\release\libyuv_unittest --gtest_catch_exceptions=0 --gtest_filter=*420ToARGB_Opt | sortms
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/34609004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1216 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-31 01:07:02 +00:00 |
|
fbarchard@google.com
|
8723fc1109
|
Syntax fix for change 24 bit conversions to use single asm block instead of 2, but with memory counter
BUG=389, 378
TESTED=out\release\libyuv_unittest --gtest_catch_exceptions=0 --gtest_filter=*420ToRGB24_Opt | sortms
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/39399004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1215 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-30 22:26:10 +00:00 |
|
fbarchard@google.com
|
16338ba85f
|
Change 24 bit conversions to use single asm block instead of 2, but with memory counter
BUG=389,378
TESTED=out\release\libyuv_unittest --gtest_catch_exceptions=0 --gtest_filter=*420ToRGB24_Opt | sortms
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/29359004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1214 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-30 21:35:35 +00:00 |
|
fbarchard@google.com
|
284d6bdf49
|
Port I422ToBGRA from Windows version that does 16 pixels at a time, for performance improvement.
BUG=386
TESTED=nacl build
R=brucedawson@google.com, harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/36549004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1207 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-16 23:56:04 +00:00 |
|
fbarchard@google.com
|
8b55212c83
|
Make vextop take the register selector parameter to access the upper portion of the avx registers.
BUG=269
TESTED=nacl
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/37399004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1205 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-16 00:30:51 +00:00 |
|
fbarchard@google.com
|
7892ea1fe1
|
Fix for ARGBToUV on AVX2
BUG=269
TESTED=local testing
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/33669004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1202 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-15 18:59:23 +00:00 |
|
fbarchard@google.com
|
f5f5d15dcd
|
Fix register order for ARGBToUV_AVX2
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/29249004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1200 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-15 18:07:09 +00:00 |
|
fbarchard@google.com
|
11c3015712
|
Fix for I422ToARGB AVX2
BUG=269
TESTED=untested
Review URL: https://webrtc-codereview.appspot.com/32809004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1199 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-13 19:22:09 +00:00 |
|
fbarchard@google.com
|
ada2a3eb12
|
Fix for ARGBToY on AVX
BUG=269
TESTED=local build on osx
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/29229005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1198 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-13 01:44:33 +00:00 |
|
fbarchard@google.com
|
b0abc62c21
|
Fix for UYVYToI422 AVX2 version
BUG=269
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/32329004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1197 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-13 00:15:11 +00:00 |
|
fbarchard@google.com
|
a9734a4492
|
ARGBMirror for AVX had wrong loop counting. This fixes it to match windows, and reenables the function.
BUG=269
TESTED=try bots
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/33639004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1196 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-12 22:43:55 +00:00 |
|
fbarchard@google.com
|
08daa3e22b
|
Disable AVX2 code that fails on GCC unittests until issues can be resolved.
BUG=269
TESTED=sde-external-7.8.0-2014-10-02-mac/sde -ast -hsw -- out/Release/libyuv_unittest
Review URL: https://webrtc-codereview.appspot.com/29219004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1195 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-12 19:30:15 +00:00 |
|
fbarchard@google.com
|
233a931cb6
|
Port ARGBToUV to AVX2.
BUG=269
TESTED=ncval
R=brucedawson@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/35449004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1194 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-10 22:48:58 +00:00 |
|
fbarchard@google.com
|
e0bb4c26e2
|
Interpolate Row ported to AVX2 GCC/NaCL.
BUG=269
TESTED=nacl build
R=brucedawson@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/25329004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1193 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-09 22:21:53 +00:00 |
|
fbarchard@google.com
|
044938f485
|
convert ARGB to UV for SSSE3 use single asm block.
BUG=378
TESTED=nacl build
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/28179004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1191 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-06 19:23:12 +00:00 |
|
fbarchard@google.com
|
540e8af80c
|
remove add 16 from ARGBToYJ and add rounding, for consistency with Windows version. row.h header macros sorted alphabetically.
BUG=269
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/32579005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1185 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-02 22:37:47 +00:00 |
|
fbarchard@google.com
|
b036cf700b
|
ARGBToYRow_AVX2 and ARGBToYJRow_AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=brucedawson@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/30299004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1184 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-02 22:00:08 +00:00 |
|
fbarchard@google.com
|
d0bfd10147
|
I422ToRGBARow_AVX2 ported to GCC.
BUG=269
TESTED=nacl build
R=brucedawson@google.com
Review URL: https://webrtc-codereview.appspot.com/32259004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1183 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-02 18:59:33 +00:00 |
|
fbarchard@google.com
|
702e237d5f
|
I422ToABGR_AVX2 port from Visual C to GCC/NaCL.
BUG=269
TESTED=builds with nacl compiler.
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/33449004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1182 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-02 03:54:08 +00:00 |
|
fbarchard@google.com
|
0c472f9d42
|
gcc port of I422ToARGB_AVX2 from Visual C. Uses Macros for read of I422 and conversion from YUV to RGB. Shares constants from I422ToBGRA structure.
BUG=269
TESTED=nacl builds.
R=brucedawson@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/27279004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1181 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-12-02 00:22:56 +00:00 |
|
fbarchard@google.com
|
ef14972df0
|
MergeUV AVX2 use vextractf128 to store results to avoid shuffling.
BUG=none
TESTED=intel sde on unittests
R=brucedawson@google.com
Review URL: https://webrtc-codereview.appspot.com/33369004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1178 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-22 03:33:33 +00:00 |
|
fbarchard@google.com
|
147f7b70f5
|
Quick fix for build gcc - remove unused argument kARGBShuffleMirror from ARGBMirror SSE2.
BUG=none
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/30209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1177 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-22 01:12:19 +00:00 |
|
fbarchard@google.com
|
ef67597b48
|
ARGBMirror use SSE2 pshufd instruction instead of SSSE3 pshufb.
BUG=269
TESTED=local benchmark for ARGBMirror
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/32509004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1176 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-21 19:25:14 +00:00 |
|
fbarchard@google.com
|
91f240c5db
|
Move sub before branch for loops.
Remove CopyRow_x86
Add CopyRow_Any versions for AVX, SSE2 and Neon.
BUG=269
TESTED=local build
R=harryjin@google.com, tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/26209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1175 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-20 21:14:27 +00:00 |
|
fbarchard@google.com
|
813bf9f97d
|
Change lea macros from memaccess to memlea to fix nacl 64 bit build errors.
BUG=381
TESTED=local nacl build and validate
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/32129004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1174 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-19 23:02:04 +00:00 |
|
fbarchard@google.com
|
db7a7f61ff
|
Port ARGBMirror AVX2 code to gcc/NaCL.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/24329004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1173 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-19 20:03:37 +00:00 |
|
fbarchard@google.com
|
55db4ec23b
|
port lea removal for mirror to gcc
BUG=none
TESTED=none
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/27209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1169 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-17 20:06:40 +00:00 |
|
fbarchard@google.com
|
5822505e0a
|
Remove extra unaligned loop from alphablender. Both aligned and unaligned loops were the same, so remove the extra.
BUG=none
TESTED=try bots.
R=brucedawson@google.com, harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/29059004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1166 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-17 18:33:07 +00:00 |
|
fbarchard@google.com
|
35508d0979
|
Mirror_AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/32079004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1164 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-13 23:11:10 +00:00 |
|
fbarchard@google.com
|
91000425a3
|
ARGBUnattenuate_AVX2 ported to GCC. Minor cleanup of constants to use broadcast to make 16 byte constant instead of 32 byte.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/30999004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1163 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-13 17:57:33 +00:00 |
|
fbarchard@google.com
|
f8c334473b
|
ARGBAttenuate_AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/29049004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1162 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-12 18:38:06 +00:00 |
|
fbarchard@google.com
|
a843cafbe4
|
ARGBMultiply_AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/27139005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1160 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-11 20:33:33 +00:00 |
|
fbarchard@google.com
|
0387df5186
|
ARGBSubtract_AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/27129004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1159 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-11 19:12:38 +00:00 |
|
fbarchard@google.com
|
9e9e26d60a
|
ARGBAdd ported AVX2 ported to GCC.
BUG=269
TESTED=try bots
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/32449004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1158 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-11 19:01:29 +00:00 |
|
fbarchard@google.com
|
10d9c0d0a7
|
MergeUV for AVX2 ported to gcc. Add missing vzeroupper to all avx2 functions.
BUG=none
TESTED=ncval for nacl
R=brucedawson@google.com, harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/25059005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1157 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-10 19:19:12 +00:00 |
|
fbarchard@google.com
|
d1885bcc73
|
SplitUVRow_AVX2 ported to GCC/NaCL.
BUG=269
TESTED=validator for nacl.
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/28979004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1156 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-06 01:39:26 +00:00 |
|
fbarchard@google.com
|
bb3a4b41e9
|
vextractf128 requuires a constant argument for which dqword to extract, so add a new macro.
BUG=none
TESTED=local build on clang for osx
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/30869004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1153 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-04 21:05:55 +00:00 |
|
fbarchard@google.com
|
3f87404769
|
Port YUY2ToUV, YUY2ToUV422, UYVYToUV and UYVYToUV422 to AVX2 on GCC/Nacl.
BUG=269
TESTED=ncval
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/26029004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1152 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-04 18:24:10 +00:00 |
|
fbarchard@google.com
|
067892c5a1
|
Port YUY2ToYRow_AVX2 and UYVYToYRow_AVX2 to gcc/NaCL from Windows AVX code.
BUG=269
TESTED=ncval
R=brucedawson@google.com, harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/25039004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1151 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-11-03 18:30:17 +00:00 |
|
fbarchard@google.com
|
260e3b2273
|
now that libyuv requires newer nacl compiler, bundles can be assumed and bundle align macro can be removed. no impact on code gen.
BUG=none
TESTED=validator still passes
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/30019004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1150 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-30 20:02:03 +00:00 |
|
fbarchard@google.com
|
51b78880c5
|
gcc version of I422ToBGRA_AVX2. Original copied from https://webrtc-codereview.appspot.com/28729004/ and compatible with, but unrelated to windows version.
BUG=269
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/29849004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1131 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-21 02:18:11 +00:00 |
|
fbarchard@google.com
|
4d46be3930
|
Declare CopyRow_AVX as using xmm usage, not ymm. Should resolve chromium build error for Android Atom.
BUG=libyuv:369
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/31609004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1118 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-09 17:54:43 +00:00 |
|
fbarchard@google.com
|
205c1440cf
|
Use movdqu then pavgb to allow unaligned memory for rgb subsampling code. Allows this assembly to be used for unaligned pointers as well as aligned ones with no performance hit when memory is aligned on a modern cpu.
BUG=365
TESTED=libyuvTest.ARGBToI420_Unaligned (453 ms)
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/30679004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1116 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-07 19:47:06 +00:00 |
|
fbarchard@google.com
|
883ce64a34
|
ifdefs for UV functions to resolve link error on osx
BUG=365
TESTED=mac local build
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/24859004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1115 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-07 17:24:14 +00:00 |
|
fbarchard@google.com
|
008ce53ac4
|
pavgb with memory op requires alignment. This CL disables conversions that use pavgb, and resolves scale by 3/8 unittest for checking alignment works. The 3/8 code used a pavgb with a memory operand. tests are added for scaling and allow unaligning on purpose.
BUG=365
TESTED=local change to force unaligned memory fails on some conversions and scaling code.
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/29699004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1114 16f28f9a-4ce2-e073-06de-1de4eb20be90
|
2014-10-07 01:57:34 +00:00 |
|