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
76301c9329
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
2014-10-06 19:34:22 +00:00
fbarchard@google.com
b720049a54
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
2014-10-03 21:11:37 +00:00
ashok.bhat@gmail.com
147bbede9d
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
2014-10-03 18:10:05 +00:00
fbarchard@google.com
d1a0e7e71a
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
2014-10-03 18:03:10 +00:00
fbarchard@google.com
d83f63a3b4
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
2014-10-03 17:37:11 +00:00
fbarchard@google.com
0c603fbca3
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
2014-10-02 20:55:22 +00:00
fbarchard@google.com
69966593d6
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
2014-10-02 19:44:10 +00:00
fbarchard@google.com
455ae94c60
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
2014-10-02 17:56:48 +00:00
fbarchard@google.com
044f914c29
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
2014-10-01 01:16:04 +00:00
fbarchard@google.com
9c4c82181b
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
2014-09-30 18:53:34 +00:00
fbarchard@google.com
bb5cc129e5
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
2014-09-30 01:35:56 +00:00
fbarchard@google.com
1fb68cda67
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
2014-09-30 00:39:41 +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
ashok.bhat@gmail.com
c379d17195
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
2014-09-29 18:10:20 +00:00
ashok.bhat@gmail.com
824d9071d7
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
2014-09-29 09:40:37 +00:00
brettw@google.com
a7735b9ab3
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
2014-09-26 21:46:47 +00:00
ashok.bhat@gmail.com
fc5ca9280f
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
2014-09-26 12:40:57 +00:00
ashok.bhat@gmail.com
c8a34d2e5b
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
2014-09-26 09:16:48 +00:00
kjellander@google.com
093fd4842f
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
2014-09-23 13:34:34 +00:00
kjellander@google.com
2114d196f8
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
2014-09-23 12:53:42 +00:00
kjellander@google.com
77ba1546f2
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
2014-09-23 11:13:29 +00:00
fbarchard@google.com
c52d66d7da
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
2014-09-22 18:30:17 +00:00
kjellander@google.com
9e430982a1
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
2014-09-21 20:17:00 +00:00
fbarchard@google.com
aec76f2e30
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
2014-09-19 22:51:39 +00:00
fbarchard@google.com
f7d9b9fb13
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
2014-09-15 23:39:43 +00:00
fbarchard@google.com
a62a97f142
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
2014-09-15 22:45:32 +00:00
fbarchard@google.com
8cbfc5d41f
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
2014-09-15 22:05:01 +00:00
fbarchard@google.com
82365e0bcd
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
2014-09-15 22:01:43 +00:00
zhongwei.yao@arm.com
60ccea47d9
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
2014-09-12 08:11:20 +00:00
ashok.bhat@gmail.com
44c4d0f3b0
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
2014-09-11 14:49:31 +00:00
ashok.bhat@gmail.com
21cadac909
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
2014-09-11 14:43:34 +00:00
yang.zhang@arm.com
c386168c76
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
2014-09-10 06:02:55 +00:00
fbarchard@google.com
fefc694ee9
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
2014-09-08 23:40:37 +00:00
fbarchard@google.com
d4fbd60169
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
2014-09-08 18:29:46 +00:00
fbarchard@google.com
accefc4191
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
2014-09-05 00:33:53 +00:00
fbarchard@google.com
3224e43e25
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
2014-09-04 00:25:19 +00:00
zhongwei.yao@arm.com
4667addfb8
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
2014-09-01 08:50:49 +00:00
zhongwei.yao@arm.com
686e9d0247
implement ARM64 ScaleARGBRowDownEven and ScaleARGBRowDownEvenBox
...
TESTED=libyuv_unittest
BUG=319
R=fbarchard@chromium.org , fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/19099004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1072 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-09-01 08:17:36 +00:00
yang.zhang@arm.com
90f971fc5e
Scale ARM64 NEON implementation - ScaleRowDown38
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com
Add the following functions:
- ScaleRowDown38_NEON
- ScaleRowDown38_2_Box_NEON
- ScaleRowDown38_3_Box_NEON
I find that these functions aren't tracked in the gtest.
So that I write the test case myself.
Change-Id: Ie70a00d7f708450dc786dfb388386ff748a21508
Review URL: https://webrtc-codereview.appspot.com/15229004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1071 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-09-01 03:55:19 +00:00
yang.zhang@arm.com
5497af0ba7
Scale ARM64 NEON implementation - ScaleRowDown34
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@chromium.org , fbarchard@google.com
Add the following functions:
- ScaleRowDown34_NEON
- ScaleRowDown34_0_Box_NEON
- ScaleRowDown34_1_Box_NEON
Change-Id: If3fe96de602b77033ec67252ef755ef3f88f33aa
Review URL: https://webrtc-codereview.appspot.com/20209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1070 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-09-01 03:48:10 +00:00
ashok.bhat@gmail.com
2df5743bd4
Row AArch64 Neon implementation - Part 6
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com
Change-Id: I5d93eb184ba873d5e7637a3b5a830be39a967c6f
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/15239004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1069 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-29 08:12:51 +00:00
zhongwei.yao@arm.com
4d5c3f3498
implement ARM64 ScaleRowDown4 and ScaleRowDown4Box
...
TESTED=libyuv_unittest
BUG=319
R=fbarchard@chromium.org , fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/21279004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1068 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-28 06:43:18 +00:00
fbarchard@google.com
3389f8efa4
disable mips assembly for __mips_isa_rev 6
...
BUG=355
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/22229004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1067 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-27 18:14:58 +00:00
zhongwei.yao@arm.com
4e4396313a
Add function ScaleFilterRows_NEON for ARM64 Scale Neon implementation
...
TESTED=libyuv_unittest
BUG=319
R=fbarchard@chromium.org , fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/22439004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1066 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-27 09:41:54 +00:00
ashok.bhat@gmail.com
218ebde886
Row AArch64 Neon implementation - Part 7
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@chromium.org , fbarchard@google.com
Change-Id: Idfad43af3d637596678a35f733d76dec29778af2
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/22459004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1065 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-26 10:28:14 +00:00
zhongwei.yao@arm.com
298dbf2dc3
implement ScaleRowDown2_NEON && ScaleRowDown2Box_NEON
...
TESTED=libyuv_unit_test
BUG=319
R=fbarchard@chromium.org , fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/15269004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1064 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-26 02:50:41 +00:00
zhongwei.yao@arm.com
15d1af1574
implement ScaleARGBRowDown2 && ScaleARGBRowDown2Box
...
TESTED=libyuv_unit_test
BUG=319
R=fbarchard@chromium.org , fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/17199004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1063 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-26 02:45:14 +00:00
fbarchard@google.com
6fb3ed37f5
move lto condition into existing condition statement.
...
BUG=354
TESTED=gclient runhooks
R=fdegans@chromium.org
Review URL: https://webrtc-codereview.appspot.com/17209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1062 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-25 19:12:50 +00:00
fbarchard@google.com
c2a78ebf45
Add LTO support for Android Chromium.
...
BUG=354
This is to add support for a Link-Time Optimizations experiment in Android
Chromium. As it is disabled by default, it won't change anything for most
configurations.
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/21329004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1061 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-25 18:01:50 +00:00