Frank Barchard
73a603e120
clang-format 5.0 applied to libyuv
...
BUG=None
TEST=try bots and lint test
Change-Id: I1ab462adf2d309117862c5eb4b244a61ae202951
Reviewed-on: https://chromium-review.googlesource.com/450658
Commit-Queue: Frank Barchard <fbarchard@google.com>
Reviewed-by: Henrik Kjellander <kjellander@chromium.org>
2017-03-08 18:50:12 +00:00
Frank Barchard
e62309f259
clang-format libyuv
...
BUG=libyuv:654
R=kjellander@chromium.org
Review URL: https://codereview.chromium.org/2469353005 .
2016-11-07 17:37:23 -08:00
Frank Barchard
618149084e
Add MIPS SIMD Arch (MSA) optimized ARGBMirrorRow function
...
This patch adds MSA optimized ARGBMirrorRow function in libYUV project.
Performance gain ~3x
R=fbarchard@google.com
BUG=libyuv:634
Review URL: https://codereview.chromium.org/2368313003 .
2016-09-26 16:28:01 -07:00
Frank Barchard
3a3a89ccd4
rotate include and proto cleanup
...
R=harryjin@google.com
BUG=libyuv:468
Review URL: https://webrtc-codereview.appspot.com/55679005 .
2015-07-22 18:09:04 -07:00
yang.zhang@arm.com
63996ab7ca
Fix the bug (0 extension from int to int64) in ScaleARGBRowDownEven_NEON.
...
Reason of this bug is that ARM64 can't extend the sign bit of a 32-bit integer
to 64-bit integer automatically.
ScaleARGBRowDownEven_NEON is also enabled for ARM64.
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com
Change-Id: Ib8d30a05156239247296aa8bb4faa94b4f69a9c3
Review URL: https://webrtc-codereview.appspot.com/32949004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1273 16f28f9a-4ce2-e073-06de-1de4eb20be90
2015-02-10 06:04:12 +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
9dd083a512
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
2014-11-19 00:46:51 +00:00
fbarchard@google.com
f713691a6f
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
2014-10-16 20:47:22 +00:00
fbarchard@google.com
ca308327d2
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
2014-10-07 00:59:31 +00:00
fbarchard@google.com
d33bf86b25
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
2014-09-29 23:53:18 +00:00
fbarchard@google.com
e28b2084d7
Rotate functions ported to C. This completes all rotate functionality under c89, for overall 71% complete port.
...
BUG=303
TESTED=cl /c /TC /Iinclude source/rotate_argb.cc
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/6959004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@963 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-13 18:31:35 +00:00
fbarchard@google.com
db73518b19
use LIBYUV_BOOL instead of bool
...
BUG=303
TESTED=try
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/6519006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@953 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-07 03:59:31 +00:00
fbarchard@google.com
6b6eb8cd36
lint fixes
...
BUG=none
TEST=LINT
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/6409004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@929 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-27 02:09:58 +00:00
fbarchard@google.com
ae9a1388a7
Use malloc for row buffers in rotate
...
BUG=296
TESTED=rotate_test
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/6329004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@922 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-12-26 21:41:11 +00:00
fbarchard@google.com
6368c10c9c
Add __declspec(safebuffers) to functions with arrays on stack that have explicit checks to avoid a redundent compiler stack check.
...
BUG=none
TEST=unitests pass
R=ryanpetrie@google.com
Review URL: https://webrtc-codereview.appspot.com/3289004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@837 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-11-01 21:27:31 +00:00
fbarchard@google.com
d593876b16
Disable assembly for rotate and scale
...
BUG=253
TEST=validator
R=nfullagar@google.com
Review URL: https://webrtc-codereview.appspot.com/2034004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@760 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-08-14 18:45:16 +00:00
fbarchard@google.com
37c0e648d2
Fix crash on wide images
...
BUG=239
TEST=LIBYUV_WIDTH=10000 out\release\libyuv_unittest
R=changjun.yang@intel.com , johannkoenig@google.com
Review URL: https://webrtc-codereview.appspot.com/1586006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@712 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-05-31 16:55:27 +00:00
fbarchard@google.com
aa7988ff73
Enhanced Rep Mov String version of CopyRow for posix and use cpu detect for ERMS
...
BUG=213
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1306008
git-svn-id: http://libyuv.googlecode.com/svn/trunk@658 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-12 00:44:33 +00:00
fbarchard@google.com
9b4c00b908
Move vzeroupper to row functions to simplify caller and allow mix of avx2 and sse2. Impact reduced by row coalescing.
...
BUG=none
TEST=all tests pass with sde
Review URL: https://webrtc-codereview.appspot.com/1269009
git-svn-id: http://libyuv.googlecode.com/svn/trunk@641 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-04-04 05:54:59 +00:00
fbarchard@google.com
51398e0be5
ARGBMirror AVX2
...
BUG=none
TEST=out\release\libyuv_unittest --gtest_filter=*ARGBMirror*
Review URL: https://webrtc-codereview.appspot.com/1159005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@594 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-06 00:57:48 +00:00
fbarchard@google.com
2007dca6dc
Mirror
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/1162005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@592 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-03-05 22:40:55 +00:00
fbarchard@google.com
83a63e65a6
Change YUV_DISABLE_ASM to LIBYUV_DISABLE_NEON, LIBYUV_DISABLE_MIPS, LIBYUV_DISABLE_X86
...
BUG=189
TESTED=try
Review URL: https://webrtc-codereview.appspot.com/1113006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@582 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-02-27 00:20:29 +00:00
fbarchard@google.com
92352b7081
mips optimized copy for all functions using CopyRows.
...
BUG=176
TEST=try bots
Review URL: https://webrtc-codereview.appspot.com/1074010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@556 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-28 19:43:29 +00:00
fbarchard@google.com
cde587092f
Replace two spaces with one after .
...
BUG=none
TEST=lint
Review URL: https://webrtc-codereview.appspot.com/1063010
git-svn-id: http://libyuv.googlecode.com/svn/trunk@553 16f28f9a-4ce2-e073-06de-1de4eb20be90
2013-01-28 00:02:35 +00:00
fbarchard@google.com
cb5262dbc5
scale by even amounts using Neon
...
BUG=156
TEST=./libyuv_unittest --gtest_filter=*ARGBScale*
Review URL: https://webrtc-codereview.appspot.com/930019
git-svn-id: http://libyuv.googlecode.com/svn/trunk@492 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-16 01:41:35 +00:00
fbarchard@google.com
3e46444727
Mirror source to continuous destination with Neon
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/937020
git-svn-id: http://libyuv.googlecode.com/svn/trunk@488 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-11-14 02:03:49 +00:00
fbarchard@google.com
62a961bee7
Neon version of I420ToNV12 and I420ToNV21. NV21ToI420 added as function. CopyRow changed to vld4.8 to allow unaligned copy.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/922005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@435 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-22 17:24:50 +00:00
fbarchard@google.com
64ce0ab544
Move Neon source to its own files.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/860009
git-svn-id: http://libyuv.googlecode.com/svn/trunk@396 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-10-09 00:05:29 +00:00
fbarchard@google.com
fc7314e86b
Add exports to allow libyuv to be built as a shared lib.
...
BUG=99
TEST=shared lib builds without impact and unittests link against import lib.
Review URL: https://webrtc-codereview.appspot.com/844005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@379 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-27 02:17:51 +00:00
fbarchard@google.com
142f6c4ed5
Move row.h to include and remove rotate_priv.h
...
BUG=93
TESTED=try server
Review URL: https://webrtc-codereview.appspot.com/811004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@360 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-09-18 20:56:51 +00:00
fbarchard@google.com
b0c9797589
Update Copyright notice to follow new chromium conventions.
...
BUG=63
TEST=none
Review URL: https://webrtc-codereview.appspot.com/730004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@314 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-08-08 19:04:24 +00:00
fbarchard@google.com
d51c342521
Rotate ARGB using a scale function that reads with step, combining to form 16 bytes at a time.
...
BUG=none
TEST=none
Review URL: https://webrtc-codereview.appspot.com/674007
git-svn-id: http://libyuv.googlecode.com/svn/trunk@294 16f28f9a-4ce2-e073-06de-1de4eb20be90
2012-06-26 23:46:25 +00:00