fbarchard@google.com
4ec55a21cf
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
2014-10-21 22:48:32 +00:00
fbarchard@google.com
a063a66de4
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
2014-10-21 19:02:06 +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
d81dddd3d0
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
2014-10-20 19:35:55 +00:00
fbarchard@google.com
055725b8fe
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
2014-10-20 18:39:21 +00:00
fbarchard@google.com
3dbaaf0032
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
2014-10-16 23:46:48 +00:00
fbarchard@google.com
e737688603
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
2014-10-16 22:21:48 +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
f6e495169c
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
2014-10-13 23:26:17 +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
zhongwei.yao@arm.com
0eb196f8db
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
2014-10-09 02:00:40 +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
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
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
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
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
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
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
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
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
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
ee43c95c51
fix memory leaks in *ToI420 functions.
...
BUG=352
TESTED=drmemory out\debug\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=**ToI420_Opt
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/21289004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1060 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-22 00:37:16 +00:00
fbarchard@google.com
6e95f6f7e1
ifdef headers to avoid intrinsics if built with gcc 64 bit on windows.
...
BUG=351
TESTED=untested
R=jzern@chromium.org
Review URL: https://webrtc-codereview.appspot.com/22419004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1058 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 22:44:49 +00:00
fbarchard@google.com
aaddd24ba0
ARGBToNV12 fix for memory leak on row_u_mem.
...
BUG=352
TESTED=libyuv_unittest
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/18209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1057 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 22:40:22 +00:00
ashok.bhat@gmail.com
c1155cb587
Row AArch64 Neon implementation - Part 3
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@google.com
Change-Id: Ia818ca62d4a84d76b0144f904983d82d41cab651
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/15149004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1056 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 19:13:37 +00:00
ashok.bhat@gmail.com
8f04ca5b9c
Row AArch64 Neon implementation - Part 5
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@chromium.org , fbarchard@google.com
Change-Id: Ia76096088ddd771388f01dd86110089db2faedfc
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/21189004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1055 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 10:07:11 +00:00
ashok.bhat@gmail.com
cb8be2fb2b
Row AArch64 Neon implementation - Part 4
...
BUG=319
TESTED=libyuv_unittest
R=fbarchard@chromium.org , fbarchard@google.com
Change-Id: If145660d999e95246efeedb64a45ba70bf0fe23e
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/13199004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1054 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 09:55:58 +00:00
fbarchard@google.com
720e3a247f
In Q420ToI420 the variable halfheight is initialized but not used. Change it to instantiate the variable but do not initialize it. It will be assigned conditionally later. This warning raised in xcode.
...
BUG=353
TESTED=local build still works
R=harryjin@google.com , noahric@chromium.org
Review URL: https://webrtc-codereview.appspot.com/13299004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1053 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-21 00:20:58 +00:00
zhongwei.yao@arm.com
0ce3733797
Add a placeholder file for ARM64 Scale Neon implementation
...
BUS=319
TESTED=libyuv_unit_test
R=fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/18179004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1051 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-20 02:54:59 +00:00
fbarchard@google.com
bf24367476
Mingw xgetbv use gcc assembly not visual c.
...
BUG=349
TESTED=c:\mingw64\bin\x86_64-w64-mingw32-c++.exe -m32 -I include source/cpu_id.cc -c -o cpu_id.o
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/17139004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1049 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-18 23:45:59 +00:00
fbarchard@google.com
5bd003f081
fix a lint warning about a space needed after && in ifdef
...
BUG=348
TESTED=cpplint.py --filter=-readability/casting source/*.cc include/libyuv/*.h
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/21209004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1048 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-18 23:22:20 +00:00
ashok.bhat@gmail.com
b8c4fc71c3
Row AArch64 Neon implementation - Part 2
...
BUG=319
TEST=libyuv_unittest
R=fbarchard@chromium.org , fbarchard@google.com
Change-Id: Ib1f824c5a7dc3938ff63991f08eafa08fc33f108
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/18109004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1047 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-18 08:42:56 +00:00
fbarchard@google.com
64455db9b1
cpuid include intrinsics header before using xgetbv
...
BUG=282
TESTED=vs2010sp1 build.
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/17109004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1046 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-15 01:23:54 +00:00
fbarchard@google.com
9e0f21af0b
fixes for blank line lint warnings
...
BUG=348
TESTED=cpplint.py --filter=-casting source/*.cc include/libyuv/*.h
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/18139004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1045 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-14 19:42:48 +00:00
ashok.bhat@gmail.com
de9fa43c60
Row AArch64 Neon implementation - Part 1
...
BUG=319
TEST=libyuv_unittest
R=fbarchard@google.com
Change-Id: I367ffa7bb0fd0337ab8486d3eb4fb94afea7400c
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/21149004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1044 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-13 08:33:17 +00:00
yang.zhang@arm.com
26f43db1ef
AArch64:add SumSquareError_NEON armv8 assembly version
...
BUG=none
TESTED=libyuv_unittest
R=fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/16259004/
the benckmarking result is as follows:
toolchain: gcc 4.9
hardware: A53
| count | C Times/NEON times |
| 16 | 3.35 |
| 128 | 6.63 |
| 512 | 7.47 |
| 1024 | 7.72 |
Change-Id: Ic10bf22d77d069a1a2074b68bd5a310c579ec490
Review URL: https://webrtc-codereview.appspot.com/21159004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1043 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-13 06:10:02 +00:00
zhongwei.yao@arm.com
1afdfb3da8
arm64 neon optimization building is enabled
...
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1042 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-13 03:45:11 +00:00
ashok.bhat@gmail.com
9453f7c494
Add a placeholder file for ARM64 Row Neon implementation
...
BUG=319
TEST=libyuv_unittest
R=fbarchard@google.com
Change-Id: I9fdc355d285062d32c11dba4e240d32f5b1bcb80
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Review URL: https://webrtc-codereview.appspot.com/16249004
Review URL: https://webrtc-codereview.appspot.com/16249004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1041 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-08-07 13:40:18 +00:00
ashok.bhat@gmail.com
c8f529a48f
Remove extra MEMACCESS
...
TESTED=libyuv_unittest
Change-Id: I25fae71200ea44846eea3604a55bf4a88ea593ce
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1039 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-29 18:32:59 +00:00
fbarchard@google.com
451a7541b7
Check number of functions available to cpuid before fetching function 7 results.
...
BUG=343
TESTED=local test on Windows.
R=brettw@chromium.org , tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/12969004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1035 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-14 17:48:35 +00:00
fbarchard@google.com
9ffb92fae0
Detect clang-cl compiler and disable assembly for now.
...
BUG=341
TESTED=clang-cl /W0 -c -Iinclude source/cpu_id.c
R=harryjin@google.com , rnk@chromium.org
Review URL: https://webrtc-codereview.appspot.com/12939004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1033 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-09 17:55:23 +00:00
fbarchard@google.com
65a324ed34
remove extern "C" from rotate function, since its built with extern "C" around full file.
...
BUG=341
TESTED=clang -c -Iinclude source/rotate.c
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/17919004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1031 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-08 22:06:56 +00:00
fbarchard@google.com
8798e04075
Port conversion functions to c.
...
BUG=303
TESTED=cl /c /TC /Iinclude source\convert_from.cc source\convert_argb.cc source\convert_from_argb.cc
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/17909004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1030 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-08 18:44:57 +00:00
fbarchard@google.com
a2fbf9dee6
convert source ported to c89.
...
BUG=303
TESTED=cl /c /TC /Iinclude source/convert.cc
R=harryjin@google.com
Review URL: https://webrtc-codereview.appspot.com/21849004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1029 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-07-07 19:05:45 +00:00
fbarchard@google.com
81ba94f58a
only enable mips assembly for old 32 bit abi. new 32 bit abi and 64 bit bit able remove t4 to t7 and add a4 to a7
...
BUG=337
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/20769005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1020 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-24 23:40:52 +00:00
fbarchard@google.com
1b9df4c5c8
Add nacl version check to enable Neon on M37 and bundles for X86 on M33
...
BUG=333
TESTED=nacl build and validate
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/20769004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1019 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-24 22:26:30 +00:00
fbarchard@google.com
e6dd1fa024
Port I420ToARGB to intrinsics for win64
...
BUG=336
TESTED=out\release_x64\libyuv_unittest --gunit_also_run_disabled_tests --gtest_filter=*I420To*B*
R=bryan.bernhart@intel.com , tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/15809005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1018 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-24 20:45:45 +00:00
fbarchard@google.com
f67b426bdf
Add some more bic's for scale nacl code
...
BUG=333
TESTED=ncval
R=thorcarpenter@google.com
Review URL: https://webrtc-codereview.appspot.com/20719004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1017 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-17 23:12:55 +00:00
fbarchard@google.com
4b7a04e864
port neon to arm64. the register names have changes from r0 to w0 or x0 depending on size. Passing them as parameters (e.g. %0) makes the code register name agnostic.
...
BUG=333
TESTED=32 bit build still works.
R=nfullagar@chromium.org
Review URL: https://webrtc-codereview.appspot.com/20669005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1016 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-17 18:16:29 +00:00
fbarchard@google.com
4e5e44e21e
scale neon nacl port
...
BUG=333
TESTED=ncval
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/18549004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1015 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-16 17:09:48 +00:00
fbarchard@google.com
b1df26dc27
rotate neon code port to nacl
...
BUG=333
TESTED=ncval
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/19759004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1014 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-13 23:02:10 +00:00
fbarchard@google.com
0bb310ebc4
Add bic instructions before each load or store for nacl
...
BUG=333
TESTED=validator
R=jfb@chromium.org
Review URL: https://webrtc-codereview.appspot.com/13669004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1013 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-13 17:20:52 +00:00
fbarchard@google.com
bf3b111147
MEMACCESS macro for NaCL Arm
...
BUG=333
TESTED=validator passes
R=jfb@chromium.org , tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/13649004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1012 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-12 00:19:38 +00:00
fbarchard@google.com
a9ff15b7bb
check copy has different address. If same, skip the copy to avoid valgrind error.
...
BUG=334
TESTED=unittests still pass
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/14679004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1011 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-11 00:16:59 +00:00
fbarchard@google.com
2a35da3912
Add ARGBToABGR and ARGBToBGRA as actual functions instead of macros.
...
BUG=334
TESTED=libyuv unittests pass
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/12659006
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1008 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-06-02 19:24:57 +00:00
fbarchard@google.com
37ad8b6507
Port libyuv neon to nacl - compare
...
BUG=333
TESTED=d:\src\nacl_sdk\pepper_canary\tools\ncval.exe newlib/Release/nacltest_arm.nexe
R=nfullagar@chromium.org
Review URL: https://webrtc-codereview.appspot.com/17599004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1006 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-05-21 19:04:15 +00:00
fbarchard@google.com
b18413e568
YUV scaling with 16 bit planes
...
BUG=331
TESTED=libyuv_unittest --gunit_also_run_disabled_tests --gtest_filter=**.ScaleFrom1280x720*
R=debargha@google.com , tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/17569004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1005 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-05-20 19:22:30 +00:00
fbarchard@google.com
8b857c0ac6
changes to accommodate libjpeg 9 interface.
...
BUG=327
TESTED=untested
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/15489005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@1004 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-05-13 19:00:01 +00:00
fbarchard@google.com
fdaaea0f83
Change r9 to a parameter which will map to x9 for arm64.
...
BUG=319
TESTED=untested
R=thorcarpenter@google.com , tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/11139004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@998 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-04-03 18:37:32 +00:00
kjellander@google.com
614c9fa853
Revert accidental checkin in r992
...
I dunno how this happened, since that file belonged
to a another gcl change that I use to test the trybots.
TBR=fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/10899005
git-svn-id: http://libyuv.googlecode.com/svn/trunk@993 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-28 19:40:39 +00:00
kjellander@google.com
d5a521cd23
Minor fixes to gyp_libyuv.py
...
Fixed invalid references left from
the copied gyp_webrtc.
This CL will also add svn:ignore on a
bunch of directories to speed up builds
(less unnecessary delete + redownload).
It also adds the executable bit to
gyp_libyuv.
R=fbarchard@google.com
Review URL: https://webrtc-codereview.appspot.com/10889004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@992 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-28 19:38:05 +00:00
fbarchard@google.com
a3cda5080c
Port format_conversion (bayer) to C
...
BUG=303
TESTED=cl /c /TC /Iinclude source/format_conversion.cc
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/10709004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@990 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-26 17:29:20 +00:00
fbarchard@google.com
91dc3eddeb
Fix C89 compile error for cpu detect. Make mips detection assume DSP if cpuinfo file can not be opened, so that if run in a sandbox, DSP is assumed true, like the arm version.
...
BUG=303
TESTED=cl /c /TC /Iinclude source/cpu_id.cc
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/10549004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@986 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-24 18:24:22 +00:00
fbarchard@google.com
efc5d9b930
Warning fix for implicite cast in scaling from int64 to int.
...
BUG=none
TESTED=local visual c build
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/10169004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@985 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-18 22:23:15 +00:00
fbarchard@google.com
398de7d0be
ARGBScale down bilinear clip to edge of image to avoid overread.
...
BUG=317
TESTED=drmemory out\debug\libyuv_unittest.exe --gtest_catch_exceptions=0 --gtest_filter=*ARGBScale*
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/10159004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@984 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-18 21:39:42 +00:00
fbarchard@google.com
6e618676dc
More wordy comments about Neon
...
BUG=315
TESTED=untested
R=wuwang@google.com
Review URL: https://webrtc-codereview.appspot.com/9599004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@982 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-08 00:23:04 +00:00
fbarchard@google.com
cb3344ae25
If libyuv built with Neon, assume Neon is present on CPU.
...
BUG=315
TESTED=untested
R=nfullagar@chromium.org
Review URL: https://webrtc-codereview.appspot.com/9589004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@980 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-03-07 21:17:24 +00:00
fbarchard@google.com
02ff4e77e5
clang compatibility ifdef
...
BUG=none
TEST=none
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/7809004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@978 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-31 00:27:40 +00:00
fbarchard@google.com
16ea9c816b
libyuv::MJPGToI420() and libyuv::MJPGToARGB() return failure if callback to JPeg fails.
...
BUG=309
TESTED=try bots still pass
R=braveyao@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/7709004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@976 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-28 03:08:59 +00:00
fbarchard@google.com
fa83188365
scale port to c. completes all scaling functions.
...
BUG=303
TESTED=cl /c /TC /Iinclude source/scale.cc
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/7319004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@974 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-18 01:30:58 +00:00
fbarchard@google.com
0283648407
ARGB Scale ported to C
...
BUG=303
TESTED=cl /c /TC /Iinclude source/scale_argb.cc
R=tpsiaki@google.com
Review URL: https://webrtc-codereview.appspot.com/7169004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@972 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-15 02:25:15 +00:00
fbarchard@google.com
2c8108e6c2
Detect pnacl and disable x86 specific code.
...
BUG=none
TESTED=untested
R=ryanpetrie@google.com
Review URL: https://webrtc-codereview.appspot.com/7099004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@968 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-14 00:36:31 +00:00
fbarchard@google.com
ae997018e5
Add extern c around jpeg header
...
BUG=305
TESTED=try bots
R=michaelbai@chromium.org
Review URL: https://webrtc-codereview.appspot.com/7069004
git-svn-id: http://libyuv.googlecode.com/svn/trunk@967 16f28f9a-4ce2-e073-06de-1de4eb20be90
2014-01-13 19:43:43 +00:00