external/libyuv.git
26 hours agoRemove loop alignment for benefit of modern cpus that dont require alignment. master
fbarchard@google.com [Mon, 24 Nov 2014 21:26:22 +0000 (21:26 +0000)]
Remove loop alignment for benefit of modern cpus that dont require alignment.
BUG=none
TESTED=local libyuv unittest passes
R=brucedawson@google.com, tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/32159004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1180 16f28f9a-4ce2-e073-06de-1de4eb20be90

27 hours agoRoll chromium deps to match version used by WebRtc: d8c90415d681a7c3727e3ef70873bc4f4...
fbarchard@google.com [Mon, 24 Nov 2014 20:50:57 +0000 (20:50 +0000)]
Roll chromium deps to match version used by WebRtc: d8c90415d681a7c3727e3ef70873bc4f44dd3ab0.
BUG=370
TESTED=try bots
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/28089004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1179 16f28f9a-4ce2-e073-06de-1de4eb20be90

3 days agoMergeUV AVX2 use vextractf128 to store results to avoid shuffling.
fbarchard@google.com [Sat, 22 Nov 2014 03:33:33 +0000 (03:33 +0000)]
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

3 days agoQuick fix for build gcc - remove unused argument kARGBShuffleMirror from ARGBMirror...
fbarchard@google.com [Sat, 22 Nov 2014 01:12:19 +0000 (01:12 +0000)]
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

4 days agoARGBMirror use SSE2 pshufd instruction instead of SSSE3 pshufb.
fbarchard@google.com [Fri, 21 Nov 2014 19:25:14 +0000 (19:25 +0000)]
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

5 days agoMove sub before branch for loops.
fbarchard@google.com [Thu, 20 Nov 2014 21:14:27 +0000 (21:14 +0000)]
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

6 days agoChange lea macros from memaccess to memlea to fix nacl 64 bit build errors.
fbarchard@google.com [Wed, 19 Nov 2014 23:02:04 +0000 (23:02 +0000)]
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

6 days agoPort ARGBMirror AVX2 code to gcc/NaCL.
fbarchard@google.com [Wed, 19 Nov 2014 20:03:37 +0000 (20:03 +0000)]
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

6 days agoARGBMirror Any
fbarchard@google.com [Wed, 19 Nov 2014 00:46:51 +0000 (00:46 +0000)]
ARGBMirror Any
BUG=none
TESTED=mirror and rotate unittests
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/30159004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1172 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 days agoBuild libyuv w/ no_chromium_code in GN.
fbarchard@google.com [Tue, 18 Nov 2014 01:10:14 +0000 (01:10 +0000)]
Build libyuv w/ no_chromium_code in GN.

This disables a couple of windows warnings that will otherwise
fire on Win64, causing compile failures.

BUG=432375
suppress size_t -> int warnings

R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24299004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1171 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 days agoMirrorAny functions so assembly can always be used.
fbarchard@google.com [Tue, 18 Nov 2014 01:03:47 +0000 (01:03 +0000)]
MirrorAny functions so assembly can always be used.
BUG=none
TESTED=untested
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/29069004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1170 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 days agoport lea removal for mirror to gcc
fbarchard@google.com [Mon, 17 Nov 2014 20:06:40 +0000 (20:06 +0000)]
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

8 days agoFix offset in addresses for windows. Wants it within [] now.
fbarchard@google.com [Mon, 17 Nov 2014 19:50:42 +0000 (19:50 +0000)]
Fix offset in addresses for windows.  Wants it within [] now.
BUG=none
TESTED=local windows build.
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/32479004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1168 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 days agoRemove alignment from loops. Newer cpus will execute the loop efficiently without...
fbarchard@google.com [Mon, 17 Nov 2014 19:25:21 +0000 (19:25 +0000)]
Remove alignment from loops.  Newer cpus will execute the loop efficiently without alignment, and the extra nops would slow the initial iteration marginally if anything.
BUG=none
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/27199004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1167 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 days agoRemove extra unaligned loop from alphablender. Both aligned and unaligned loops...
fbarchard@google.com [Mon, 17 Nov 2014 18:33:07 +0000 (18:33 +0000)]
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

8 days agoremove initial lea in mirror functions and add the offset in the address mode.
fbarchard@google.com [Mon, 17 Nov 2014 18:16:23 +0000 (18:16 +0000)]
remove initial lea in mirror functions and add the offset in the address mode.
BUG=none
TESTED=local libyuv unittests on windows
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/26169004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1165 16f28f9a-4ce2-e073-06de-1de4eb20be90

12 days agoMirror_AVX2 ported to GCC.
fbarchard@google.com [Thu, 13 Nov 2014 23:11:10 +0000 (23:11 +0000)]
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

12 days agoARGBUnattenuate_AVX2 ported to GCC. Minor cleanup of constants to use broadcast to...
fbarchard@google.com [Thu, 13 Nov 2014 17:57:33 +0000 (17:57 +0000)]
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

13 days agoARGBAttenuate_AVX2 ported to GCC.
fbarchard@google.com [Wed, 12 Nov 2014 18:38:06 +0000 (18:38 +0000)]
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

13 days agoUse broadcast to duplicate constants from 16 bytes to 32 bytes to save data space.
fbarchard@google.com [Wed, 12 Nov 2014 01:45:27 +0000 (01:45 +0000)]
Use broadcast to duplicate constants from 16 bytes to 32 bytes to save data space.
BUG=none
TESTED=intelsde
R=brucedawson@google.com

Review URL: https://webrtc-codereview.appspot.com/32029004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1161 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 weeks agoARGBMultiply_AVX2 ported to GCC.
fbarchard@google.com [Tue, 11 Nov 2014 20:33:33 +0000 (20:33 +0000)]
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

2 weeks agoARGBSubtract_AVX2 ported to GCC.
fbarchard@google.com [Tue, 11 Nov 2014 19:12:38 +0000 (19:12 +0000)]
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

2 weeks agoARGBAdd ported AVX2 ported to GCC.
fbarchard@google.com [Tue, 11 Nov 2014 19:01:29 +0000 (19:01 +0000)]
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

2 weeks agoMergeUV for AVX2 ported to gcc. Add missing vzeroupper to all avx2 functions.
fbarchard@google.com [Mon, 10 Nov 2014 19:19:12 +0000 (19:19 +0000)]
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

2 weeks agoSplitUVRow_AVX2 ported to GCC/NaCL.
fbarchard@google.com [Thu, 6 Nov 2014 01:39:26 +0000 (01:39 +0000)]
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

2 weeks agoARGBDetect do 2 pixels at a time for improved performance.
fbarchard@google.com [Wed, 5 Nov 2014 23:23:17 +0000 (23:23 +0000)]
ARGBDetect do 2 pixels at a time for improved performance.
BUG=375
TESTED=libyuvTest.BenchmarkARGBDetect_Opt
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/26049004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1155 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 weeks agoDetect Endian of ARGB image.
fbarchard@google.com [Wed, 5 Nov 2014 18:46:06 +0000 (18:46 +0000)]
Detect Endian of ARGB image.
BUG=375
TESTED=libyuv builds, but no test app for it yet
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/32389004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1154 16f28f9a-4ce2-e073-06de-1de4eb20be90

3 weeks agovextractf128 requuires a constant argument for which dqword to extract, so add a...
fbarchard@google.com [Tue, 4 Nov 2014 21:05:55 +0000 (21:05 +0000)]
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

3 weeks agoPort YUY2ToUV, YUY2ToUV422, UYVYToUV and UYVYToUV422 to AVX2 on GCC/Nacl.
fbarchard@google.com [Tue, 4 Nov 2014 18:24:10 +0000 (18:24 +0000)]
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

3 weeks agoPort YUY2ToYRow_AVX2 and UYVYToYRow_AVX2 to gcc/NaCL from Windows AVX code.
fbarchard@google.com [Mon, 3 Nov 2014 18:30:17 +0000 (18:30 +0000)]
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

3 weeks agonow that libyuv requires newer nacl compiler, bundles can be assumed and bundle align...
fbarchard@google.com [Thu, 30 Oct 2014 20:02:03 +0000 (20:02 +0000)]
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

3 weeks agovzeroupper moved to just before ret. in one case it was done after ret, which is...
fbarchard@google.com [Thu, 30 Oct 2014 19:27:21 +0000 (19:27 +0000)]
vzeroupper moved to just before ret.  in one case it was done after ret, which is a bug that would cause a performance stall.
BUG=none
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24159004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1149 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoImprove cmake build. Add unittests to cmake build and automatically detect jpeg...
fbarchard@google.com [Tue, 28 Oct 2014 23:37:11 +0000 (23:37 +0000)]
Improve cmake build.  Add unittests to cmake build and automatically detect jpeg support. This change was originally generated to support the build of libyuv in naclports: https://chromium.googlesource.com/external/naclports/+/master/ports/libyuv/.  Also add cmake artifacts to .gitignore file.
BUG=366
TESTED=build and run unittests with cmake
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/27009004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1146 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoPass neon option to assembler but not the compiler. Step 1 of unifying the two...
fbarchard@google.com [Tue, 28 Oct 2014 23:15:16 +0000 (23:15 +0000)]
Pass neon option to assembler but not the compiler.   Step 1 of unifying the two libraries back into one.
BUG=371
TESTED=local ios builds ignore the option, but still work.
R=brucedawson@google.com, harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/31719004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1145 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoFix lint extraneous warning on row_win assembly by disabling the warning for those...
fbarchard@google.com [Mon, 27 Oct 2014 16:27:48 +0000 (16:27 +0000)]
Fix lint extraneous warning on row_win assembly by disabling the warning for those affected lines.
BUG=none
TESTED=line row_win.cc
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/29969004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1144 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoThe 'Any' versions of functions can handle any width now, so remove the check from...
fbarchard@google.com [Fri, 24 Oct 2014 23:29:31 +0000 (23:29 +0000)]
The 'Any' versions of functions can handle any width now, so remove the check from the calling code. This has 2 advantages - less code, and less overhead in calling function when any function is NOT used. Downside is more code for case where any is used.
BUG=373
TESTED=libyuv_unittest still passes
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24129004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1143 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoChange YAny functions to share, and use mask for how many bytes at a time for simd...
fbarchard@google.com [Fri, 24 Oct 2014 22:58:38 +0000 (22:58 +0000)]
Change YAny functions to share, and use mask for how many bytes at a time for simd vs C.
BUG=373
TESTED=libyuv_unittest passes
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/31819004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1142 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoChange Any functions that convert 1 to 1 formats, memcpy style, so use C for remainde...
fbarchard@google.com [Fri, 24 Oct 2014 22:17:59 +0000 (22:17 +0000)]
Change Any functions that convert 1 to 1 formats, memcpy style, so use C for remainder to allow a minimum width of 1.  This has some advantages - allows function to be used even with SIMD that only allows aligned memory.  Fewer macros, used by more functions.  SIMD is not used unaligned avoiding page/cache split.  No overlap so it can be used in place.  Disadvantage is it will be slower if close to the maximum number of non-SIMD pixels.
BUG=373
TESTED=libyuv_unittest still passes
R=brucedawson@google.com, tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/23209004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1141 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoadd a check that the simd function should be called. allows any functions to support...
fbarchard@google.com [Fri, 24 Oct 2014 00:45:27 +0000 (00:45 +0000)]
add a check that the simd function should be called.  allows any functions to support any width, simplifing and speeding up the calling code.
BUG=373
TESTED=try bots
R=brucedawson@chromium.org, harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/25949004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1140 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoAdd check for minimum of 8 pixels for any functions and multiple of 8 not 16 for...
fbarchard@google.com [Thu, 23 Oct 2014 23:05:12 +0000 (23:05 +0000)]
Add check for minimum of 8 pixels for any functions and multiple of 8 not 16 for neon functions.
BUG=373
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/23189004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1139 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoPort I422ToABGR to AVX2.
fbarchard@google.com [Thu, 23 Oct 2014 17:20:22 +0000 (17:20 +0000)]
Port I422ToABGR to AVX2.
BUG=269
TESTED=intelsde on I422ToABGR
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/23149004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1138 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoOptimize I422ToRGBA for AVX2 by hoisting ymm5 initialization and using different...
fbarchard@google.com [Wed, 22 Oct 2014 23:39:16 +0000 (23:39 +0000)]
Optimize I422ToRGBA for AVX2 by hoisting ymm5 initialization and using different register for output of unpack.
BUG=269
TESTED=intelsde on I422ToABGR
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/29889004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1137 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoPort I422ToRGBA to AVX.
fbarchard@google.com [Wed, 22 Oct 2014 22:41:39 +0000 (22:41 +0000)]
Port I422ToRGBA to AVX.
BUG=269
TESTED=intelsde on I422ToRGBA
R=brucedawson@google.com

Review URL: https://webrtc-codereview.appspot.com/28769004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1136 16f28f9a-4ce2-e073-06de-1de4eb20be90

4 weeks agoReenable AVX2 scaling with bug fix for any width
fbarchard@google.com [Wed, 22 Oct 2014 01:15:20 +0000 (01:15 +0000)]
Reenable AVX2 scaling with bug fix for any width
BUG=376
TESTED=unittest on scale functions
R=brucedawson@google.com, harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/30759004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1135 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoDisable AVX2 version of bilinear filter used for scaling.
fbarchard@google.com [Tue, 21 Oct 2014 23:10:16 +0000 (23:10 +0000)]
Disable AVX2 version of bilinear filter used for scaling.
BUG=376
TESTED=d:\src\libyuv\trunk>c:\intelsde\sde -ast -hsw -- out\release\libyuv_unittest.exe --gtest_filter=libyuvTest.ScaleTo569x480_Bilinear
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/25909004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1134 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoUse macros to simplify I422ToARGB for AVX code.
fbarchard@google.com [Tue, 21 Oct 2014 22:48:32 +0000 (22:48 +0000)]
Use macros to simplify I422ToARGB for AVX code.
BUG=269
TESTED=local build with Visual C
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24079004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1133 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoChange I422ToARGB_AVX2 register usage to match SSSE3. ymm0 = B, ymm1 = G, ymm2 = R.
fbarchard@google.com [Tue, 21 Oct 2014 19:02:06 +0000 (19:02 +0000)]
Change I422ToARGB_AVX2 register usage to match SSSE3.  ymm0 = B, ymm1 = G, ymm2 = R.
BUG=269
TESTED=intelsde passes on unittests.
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/28759004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1132 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agogcc version of I422ToBGRA_AVX2. Original copied from https://webrtc-codereview.appsp...
fbarchard@google.com [Tue, 21 Oct 2014 02:18:11 +0000 (02:18 +0000)]
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

5 weeks agoremove ppapi/c/pp_macros.h dependency and assume m37 is available.
fbarchard@google.com [Mon, 20 Oct 2014 23:54:14 +0000 (23:54 +0000)]
remove ppapi/c/pp_macros.h dependency and assume m37 is available.
BUG=374
TESTED=untested
R=nfullagar@chromium.org, tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/26769005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1130 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoport I420ToBGRA to AVX2.
fbarchard@google.com [Mon, 20 Oct 2014 19:35:55 +0000 (19:35 +0000)]
port I420ToBGRA to AVX2.
BUG=269
TESTED=c:\intelsde\sde -ast -hsw -- out\release\libyuv_unittest.exe --gtest_filter=*I420ToBGRA*
R=brucedawson@google.com, harryjin@google.com, magjed@chromium.org

Review URL: https://webrtc-codereview.appspot.com/26869004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1127 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoNeon does 8 at a time, so a check is added for any function of I422ToBGRA that width...
fbarchard@google.com [Mon, 20 Oct 2014 18:39:21 +0000 (18:39 +0000)]
Neon does 8 at a time, so a check is added for any function of I422ToBGRA that width is >= 8 and for fast path that it is a multiple of 8 not 16.
BUG=373
TESTED=untested
R=brucedawson@google.com

Review URL: https://webrtc-codereview.appspot.com/24059004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1126 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoOffset destination by 1 for I420ToARGB_Unaligned test to ensure destination alignment...
fbarchard@google.com [Fri, 17 Oct 2014 01:18:02 +0000 (01:18 +0000)]
Offset destination by 1 for I420ToARGB_Unaligned test to ensure destination alignment avoids exceptions.
BUG=372
TESTED=out\release_x64\libyuv_unittest --gtest_catch_exceptions=0 --gtest_filter=*I420ToARGB_Unaligned
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/23109004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1125 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoswitch win64 intrinsics to loadu / storeu for unaligned memory.
fbarchard@google.com [Thu, 16 Oct 2014 23:46:48 +0000 (23:46 +0000)]
switch win64 intrinsics to loadu / storeu for unaligned memory.
BUG=372
TESTED=untested
R=brucedawson@google.com, harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/30729004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1124 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoFix for r1122 to change back to elif for rotate build error on Mac.
fbarchard@google.com [Thu, 16 Oct 2014 22:21:48 +0000 (22:21 +0000)]
Fix for r1122 to change back to elif for rotate build error on Mac.
BUG=268
TESTED=try bot
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/31749004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1123 16f28f9a-4ce2-e073-06de-1de4eb20be90

5 weeks agoChange elif to endif and if to allow AVX2 as well as SSE2 in future changes instead...
fbarchard@google.com [Thu, 16 Oct 2014 20:47:22 +0000 (20:47 +0000)]
Change elif to endif and if to allow AVX2 as well as SSE2 in future changes instead of one or the other.
BUG=none
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/30719004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1122 16f28f9a-4ce2-e073-06de-1de4eb20be90

6 weeks agoCopy width to 64 bit register to work around clang 3.4 warning
fbarchard@google.com [Mon, 13 Oct 2014 23:26:17 +0000 (23:26 +0000)]
Copy width to 64 bit register to work around clang 3.4 warning
BUG=none
TESTED=local ios 64 bit build completes without size warnings on xcode 5.1.1
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/31699004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1120 16f28f9a-4ce2-e073-06de-1de4eb20be90

6 weeks agoRoll chromium deps to match webrtc from 455c66b4375d72984b79249616d0a708ad568894...
fbarchard@google.com [Mon, 13 Oct 2014 19:47:46 +0000 (19:47 +0000)]
Roll chromium deps to match webrtc from 455c66b4375d72984b79249616d0a708ad568894 to 4d46be3930146bf9bdff7c17545c5d47361d3a80.
BUG=none
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24919004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1119 16f28f9a-4ce2-e073-06de-1de4eb20be90

6 weeks agoDeclare CopyRow_AVX as using xmm usage, not ymm. Should resolve chromium build error...
fbarchard@google.com [Thu, 9 Oct 2014 17:54:43 +0000 (17:54 +0000)]
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

6 weeks agoclear aarch64 related macro and fix bugs
zhongwei.yao@arm.com [Thu, 9 Oct 2014 02:00:40 +0000 (02:00 +0000)]
clear aarch64 related macro and fix bugs

fix 2 bugs:
 - build bug libyuv.gyp
 - runtime bug in ScaleRowDown38_2_Box_NEON
BUG=
TESTED=libyuv_unittest
R=fbarchard@google.com, fbarchard@chromium.org

Review URL: https://webrtc-codereview.appspot.com/23939004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1117 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoUse movdqu then pavgb to allow unaligned memory for rgb subsampling code. Allows...
fbarchard@google.com [Tue, 7 Oct 2014 19:47:06 +0000 (19:47 +0000)]
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

7 weeks agoifdefs for UV functions to resolve link error on osx
fbarchard@google.com [Tue, 7 Oct 2014 17:24:14 +0000 (17:24 +0000)]
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

7 weeks agopavgb with memory op requires alignment. This CL disables conversions that use pavgb...
fbarchard@google.com [Tue, 7 Oct 2014 01:57:34 +0000 (01:57 +0000)]
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

7 weeks agoRemove unaligned functions, since most function support unaligned memory now. This...
fbarchard@google.com [Tue, 7 Oct 2014 00:59:31 +0000 (00:59 +0000)]
Remove unaligned functions, since most function support unaligned memory now.  This reduces complexity and improves performance for unaligned cases because C code can be avoided, and overhead is less.  Downside is old cpus (core2 and earlier) will be slower for aligned memory case. Except mips, which has alignment requirement, but remove unaligned variant.
BUG=365
TESTED=unittest builds and passes locally
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24839004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1113 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agocmake fix to make build compatible with Windows builds.
fbarchard@google.com [Mon, 6 Oct 2014 19:34:22 +0000 (19:34 +0000)]
cmake fix to make build compatible with Windows builds.
BUG=366
TESTED=untested
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/23879004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1112 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoMake row functions used for planarfunctions and convert use movdqu to relax alignment...
fbarchard@google.com [Fri, 3 Oct 2014 21:11:37 +0000 (21:11 +0000)]
Make row functions used for planarfunctions and convert use movdqu to relax alignment constraint.  Step 1 - make functions unaligned.
BUG=365
TESTED=libyuv_unittest passes
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/26709004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1111 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoRow AArch64 Neon implementation - Part 8
ashok.bhat@gmail.com [Fri, 3 Oct 2014 18:10:05 +0000 (18:10 +0000)]
Row AArch64 Neon implementation - Part 8

BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Change-Id: If30eb2d255a09dece9d216a9d29317dd748ef496
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/22769004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1109 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoscale use movdqu for posix
fbarchard@google.com [Fri, 3 Oct 2014 18:03:10 +0000 (18:03 +0000)]
scale use movdqu for posix
BUG=367
TESTED=libyuvTest.I444ToI420_Unaligned
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/26699004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1108 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoInterpolateRow used for scale handle unaligned memory. Remove HalfRow which is not...
fbarchard@google.com [Fri, 3 Oct 2014 17:37:11 +0000 (17:37 +0000)]
InterpolateRow used for scale handle unaligned memory.  Remove HalfRow which is not used.
BUG=367
TESTED=unittest on I422ToI420
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/28639004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1107 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoMove AVX code to conditionals used for AVX2 to require newer compiler.
fbarchard@google.com [Thu, 2 Oct 2014 20:55:22 +0000 (20:55 +0000)]
Move AVX code to conditionals used for AVX2 to require newer compiler.
BUG=367
TESTED=try bots
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/24819004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1105 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agocmake file for libyuv and remove -o from linux.mk for osx support.
fbarchard@google.com [Thu, 2 Oct 2014 19:44:10 +0000 (19:44 +0000)]
cmake file for libyuv and remove -o from linux.mk for osx support.
BUG=366
TESTED=untested
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/31569004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1104 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoMake rotate SIMD allow unaligned pointers.
fbarchard@google.com [Thu, 2 Oct 2014 17:56:48 +0000 (17:56 +0000)]
Make rotate SIMD allow unaligned pointers.
BUG=365
TESTED=libyuv_unittest
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/22899004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1102 16f28f9a-4ce2-e073-06de-1de4eb20be90

7 weeks agoChange scale to unaligned movdqu.
fbarchard@google.com [Wed, 1 Oct 2014 01:16:04 +0000 (01:16 +0000)]
Change scale to unaligned movdqu.
BUG=365
TESTED=scale unittests
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/22879004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1101 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRemove alignment constraint for SSE2. Allows the optimized function to be used with...
fbarchard@google.com [Tue, 30 Sep 2014 18:53:34 +0000 (18:53 +0000)]
Remove alignment constraint for SSE2. Allows the optimized function to be used with unaligned memory, improving performance in that use case.  Hurts performance on core2 and prior where memory was faster with movdqa instruction.
BUG=365
TESTED=psnr, ssim and djb2 unittests pass.
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/22859004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1100 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoFor android arm64 dont specify neon flag.
fbarchard@google.com [Tue, 30 Sep 2014 01:35:56 +0000 (01:35 +0000)]
For android arm64 dont specify neon flag.
BUG=364
TESTED=try bots
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/25719004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1099 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoport/fix CopyRow_AVX to gcc
fbarchard@google.com [Tue, 30 Sep 2014 00:39:41 +0000 (00:39 +0000)]
port/fix CopyRow_AVX to gcc
BUG=363
TESTED=osx build
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/28619004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1098 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoCopyRow_AVX which supports unaligned pointers for Sandy Bridge CPU.
fbarchard@google.com [Mon, 29 Sep 2014 23:53:18 +0000 (23:53 +0000)]
CopyRow_AVX which supports unaligned pointers for Sandy Bridge CPU.
BUG=363
TESTED=out\release\libyuv_unittest --gtest_filter=*ARGBToARGB_*
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/31489004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1097 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRow AArch64 Neon implementation - Part 11
ashok.bhat@gmail.com [Mon, 29 Sep 2014 18:10:20 +0000 (18:10 +0000)]
Row AArch64 Neon implementation - Part 11
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Change-Id: Id187c5cbdbbb5570598eb9fcd9c3d6699e175f03
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/24759004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1096 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRemove __ARM_NEON__ define check for AArch64
ashok.bhat@gmail.com [Mon, 29 Sep 2014 09:40:37 +0000 (09:40 +0000)]
Remove __ARM_NEON__ define check for AArch64

BUG=319
TESTED=local build
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/28569005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1095 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRename GN public variables.
brettw@google.com [Fri, 26 Sep 2014 21:46:47 +0000 (21:46 +0000)]
Rename GN public variables.

direct_dependent_configs => public_configs
Code review: https://webrtc-codereview.appspot.com/22749004/
R=fbarchard

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1094 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRow AArch64444 Neon implementation - Part 10
ashok.bhat@gmail.com [Fri, 26 Sep 2014 12:40:57 +0000 (12:40 +0000)]
Row AArch64444 Neon implementation - Part 10
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Change-Id: I1a11136aa3e4f541f9c2617281d7b530b470f13d
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/23769005

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1093 16f28f9a-4ce2-e073-06de-1de4eb20be90

8 weeks agoRow AArch64 Neon implementation - Part 9
ashok.bhat@gmail.com [Fri, 26 Sep 2014 09:16:48 +0000 (09:16 +0000)]
Row AArch64 Neon implementation - Part 9

BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Change-Id: Id3af83a6efbd70b4a808a8442c3badbef749c0cc
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/23769004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1092 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoAdd tools/lsan/suppressions.txt
kjellander@google.com [Tue, 23 Sep 2014 13:34:34 +0000 (13:34 +0000)]
Add tools/lsan/suppressions.txt

The new buildbots are using the default config
for ASan, which has Leak Sanitizer (LSan) enabled.
This assumes a suppression file exists in this
location.

TBR=fbarchard@google.com
TESTED=Passing linux_asan trybot run.
BUG=

Review URL: https://webrtc-codereview.appspot.com/27589004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1091 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoUpdate Chromium sync scripts for WebRTC r7222 changes
kjellander@google.com [Tue, 23 Sep 2014 12:53:42 +0000 (12:53 +0000)]
Update Chromium sync scripts for WebRTC r7222 changes

https://code.google.com/p/webrtc/source/detail?r=7222 contains
a few fixes for edge cases when moving back and forth with
Chromium DEPS.

TBR=fbarchard@google.com
BUG=

Review URL: https://webrtc-codereview.appspot.com/30529004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1090 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoMake Libyuv work with Chromium Git checkouts
kjellander@google.com [Tue, 23 Sep 2014 11:13:29 +0000 (11:13 +0000)]
Make Libyuv work with Chromium Git checkouts

This is very similar to the changes in
https://code.google.com/p/webrtc/source/detail?r=6938

TESTED=gclient sync and runhooks on Mac and Linux + building successfully.
R=fbarchard@chromium.org

Review URL: https://webrtc-codereview.appspot.com/24619004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1089 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoDetect asimd as same as Neon for Arm features. Used on Juno aarch64 linux.
fbarchard@google.com [Mon, 22 Sep 2014 18:30:17 +0000 (18:30 +0000)]
Detect asimd as same as Neon for Arm features.  Used on Juno aarch64 linux.
BUG=361
TESTED=.\libyuv_unittest --gtest_filter=libyuvTest.TestLinuxNeon
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/31439004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1088 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoRoll chromium_revision 280149:291168 and remove sanitizer_options.cc hack.
kjellander@google.com [Sun, 21 Sep 2014 20:17:00 +0000 (20:17 +0000)]
Roll chromium_revision 280149:291168 and remove sanitizer_options.cc hack.

This is a temporary solution to fix the compile error in preparation
for moving the bots over to recipes so that
https://review.webrtc.org/24619004/ can be landed.

TBR=fbarchard@google.com
TESTED=passing local compile on Linux.

Review URL: https://webrtc-codereview.appspot.com/28549004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1087 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoadd stride to pointer in C and pass as register to inline.
fbarchard@google.com [Fri, 19 Sep 2014 22:51:39 +0000 (22:51 +0000)]
add stride to pointer in C and pass as register to inline.
BUG=357
TESTED=clang on ios
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/29489004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1086 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agochange vector range notation to a list of registers for clang compatibility. break...
fbarchard@google.com [Mon, 15 Sep 2014 23:39:43 +0000 (23:39 +0000)]
change vector range notation to a list of registers for clang compatibility. break compare into 2 neon files for consistency with other neon64 files.
BUG=357
TESTED=local ios build
R=harryjin@google.com

Review URL: https://webrtc-codereview.appspot.com/30379004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1085 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoChange branch notation to clang compatible b dot cc
fbarchard@google.com [Mon, 15 Sep 2014 22:45:32 +0000 (22:45 +0000)]
Change branch notation to clang compatible b dot cc
BUG=357
TESTED=local ios a64 build
R=yunqingwang@google.com

Review URL: https://webrtc-codereview.appspot.com/25549004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1084 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoChange ifdefs for arm 32 and 64 bit so there will only be 32 bit in legacy mode.
fbarchard@google.com [Mon, 15 Sep 2014 22:05:01 +0000 (22:05 +0000)]
Change ifdefs for arm 32 and 64 bit so there will only be 32 bit in legacy mode.
BUG=357
TESTED=ios arm64 build
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/29429004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1083 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoscale16 api use LIBYUV_API
fbarchard@google.com [Mon, 15 Sep 2014 22:01:43 +0000 (22:01 +0000)]
scale16 api use LIBYUV_API
BUG=358
TESTED=local build
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/22669004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1082 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoadd TransposeWx8_NEON's aarch64 implementation
zhongwei.yao@arm.com [Fri, 12 Sep 2014 08:11:20 +0000 (08:11 +0000)]
add TransposeWx8_NEON's aarch64 implementation

BUG=319
TESTED=libyuv_unittest
R=fbarchard@chromium.org, fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/20259004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1081 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoFix the build failure for arm64
ashok.bhat@gmail.com [Thu, 11 Sep 2014 14:49:31 +0000 (14:49 +0000)]
Fix the build failure for arm64

TESTED=libyuv_unittest
BUG=357
R=fbarchard@google.com

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1080 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoFix the build failure for arm64
ashok.bhat@gmail.com [Thu, 11 Sep 2014 14:43:34 +0000 (14:43 +0000)]
Fix the build failure for arm64

TESTED=libyuv_unittest
BUG=357
R=fbarchard@google.com

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1079 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoRotate ARM64 NEON implementation - TransposeUVWx8_NEON
yang.zhang@arm.com [Wed, 10 Sep 2014 06:02:55 +0000 (06:02 +0000)]
Rotate ARM64 NEON implementation - TransposeUVWx8_NEON

BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Change-Id: I1dc89b35d4c4bf011cd04b549aaf9d777b1acc65

Review URL: https://webrtc-codereview.appspot.com/23399004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1078 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoUpdate GN build to refer to ppapi target. This allows the inclusion of the pp_macros...
fbarchard@google.com [Mon, 8 Sep 2014 23:40:37 +0000 (23:40 +0000)]
Update GN build to refer to ppapi target. This allows the inclusion of the pp_macros header when running in gn's header check mode.
BUG=none
TESTED=untested
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/26389004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1077 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoexpect avx2 compiler support means one of the avx2 functions exists.
fbarchard@google.com [Mon, 8 Sep 2014 18:29:46 +0000 (18:29 +0000)]
expect avx2 compiler support means one of the avx2 functions exists.
BUG=none
TESTED=try bots
R=bcornell@google.com

Review URL: https://webrtc-codereview.appspot.com/22299004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1076 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoadd gyp define to enable svn version check. defaults to off so tests built outside...
fbarchard@google.com [Fri, 5 Sep 2014 00:33:53 +0000 (00:33 +0000)]
add gyp define to enable svn version check.  defaults to off so tests built outside of svn will build/run with a warning but not error.
BUG=356
TESTED=set GYP_DEFINES=target_arch=ia32 libyuv_disable_jpeg=1 libyuv_enable_svn=1
R=thorcarpenter@google.com

Review URL: https://webrtc-codereview.appspot.com/17329004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1075 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoAdd a test that indicates the compiler is able to generate avx2 code.
fbarchard@google.com [Thu, 4 Sep 2014 00:25:19 +0000 (00:25 +0000)]
Add a test that indicates the compiler is able to generate avx2 code.
BUG=none
TESTED=out\release_x64\libyuv_unittest --gtest_filter=libyuvTest.TestCompilerHasAVX2
R=tpsiaki@google.com

Review URL: https://webrtc-codereview.appspot.com/24439004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1074 16f28f9a-4ce2-e073-06de-1de4eb20be90

2 months agoAdd a placeholder file for ARM64 Rotate Neon implementation
zhongwei.yao@arm.com [Mon, 1 Sep 2014 08:50:49 +0000 (08:50 +0000)]
Add a placeholder file for ARM64 Rotate Neon implementation

BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com

Review URL: https://webrtc-codereview.appspot.com/18189004

git-svn-id: http://libyuv.googlecode.com/svn/trunk@1073 16f28f9a-4ce2-e073-06de-1de4eb20be90