James Zern
b6277a47c7
Merge changes from topic '8bit-hbd-idct'
...
* changes:
*idct*_neon.c: add missing rtcd include
idct,msa/neon: exclude idct files from hbd build
*rtcd_defs.pl: remove empty specialize calls
2016-09-30 19:36:08 +00:00
James Zern
1396d12103
*idct*_neon.c: add missing rtcd include
...
+ correct declarations as necessary
BUG=webm:1294
Change-Id: I719602df9a56e79188a78e7f8b31257c6d3cc11d
2016-09-30 11:41:26 -07:00
Linfeng Zhang
8c744fd978
Merge "Unify loopfilter function names"
2016-09-30 15:58:08 +00:00
Linfeng Zhang
c435b7fbdd
Merge "Refine vpx convolve8 NEON intrinsics optimization"
2016-09-30 15:56:31 +00:00
Linfeng Zhang
7f1f35183a
Unify loopfilter function names
...
Rename vpx_lpf_horizontal_edge_8() to vpx_lpf_horizontal_16().
Rename vpx_lpf_horizontal_edge_16() to vpx_lpf_horizontal_16_dual().
Change-Id: I798ca8fbbd657d06d3db2bfb0fb3321168f49e52
2016-09-29 16:25:42 -07:00
Linfeng Zhang
85a9e48d25
Refine vpx_convolve_copy_neon() and vpx_convolve_avg_neon()
...
BUG=webm:1290
Change-Id: Ia27e58521eba5a4852b50381c56746fa5767f6d6
2016-09-29 16:19:39 -07:00
Linfeng Zhang
b3cb065ee4
Refine vpx convolve8 NEON intrinsics optimization
...
BUG=webm:1290
Change-Id: I5d7fce62270f9d76ef9ce98b3d188ad11fb21873
2016-09-29 12:48:59 -07:00
Urvang Joshi
0aa3e2564f
Add compiler warning flag -Wextra and fix related warnings.
...
Note: some of these warnings are enabled by a combination of -Wunused
(added earlier) and -Wextra.
Cherry-picked from AOM 4790a69faaec8f03d65f64ff070f6ab4307dbb16
Expands use of (void)x; on unused variables. AOM only supports one codec
in codec_factory.h
Does not include changes to HandleDecodeResult. AOM removed
invalid_file_test.cc which does use the video parameter.
Does not enable -Wextra yet. There are more issues to fix.
BUG=webm:1069
Change-Id: I322a1366bd4fd6c0dec9e758c2d5e88e003b1cbf
2016-09-27 12:05:01 -07:00
Linfeng Zhang
b46243d7ff
Merge "Refactor lpf (size 4 and 8) NEON intrinsics optimization"
2016-09-26 16:11:12 +00:00
James Zern
e372bfd5ac
variance_neon: sync variance*() w/c,sse2
...
removes some unnecessary casts and adds a few explicit uint32 ones for
larger sizes to quiet -Wshorten-64-to-32 warnings
Change-Id: I63c5fce8e62c426d5cf5c10a66a113c119a43518
2016-09-21 18:04:45 -07:00
Linfeng Zhang
761e5ec2f6
Refactor lpf (size 4 and 8) NEON intrinsics optimization
...
Also check in 8x8 8-bit transpose NEON intrinsics optimization
transpose_u8_8x8()
Change-Id: I32d321cf97ea21eab158ac4896990fc9a51681c4
2016-09-19 16:41:37 -07:00
James Zern
aa0eb67bf7
loopfilter_mb_neon: remove unused load_8x8()
...
quiets a -Wunused-function warning for arm targets
Change-Id: I293a7e3d3d7d61d6af2fbedad5e8c25126c418b6
2016-09-17 11:00:31 -07:00
Linfeng Zhang
8107368000
Refactor lpf (size 16) NEON intrinsics optimization
...
Extract shared code so later lpf size 4 and 8 functions can reuse.
Change-Id: Ibb43ef1fd8651bd2e32fcc4c56cf6fa7ca237401
2016-09-16 09:12:13 -07:00
Linfeng Zhang
bee7d837ab
Update NEON transpose functions.
...
Unify coding style.
Change-Id: I5826f40c02c882df7353391e0c9dd6cef6bd4b97
2016-08-31 14:58:40 -07:00
Linfeng Zhang
f7cbfed682
Update vpx_lpf_vertical_16_dual_neon() intrinsics
...
Process 16 samples together.
Change-Id: If6ee8e3377aa2786417f2fc411ba7d87ea8b6799
2016-08-30 11:17:33 -07:00
Linfeng Zhang
4916515511
Update vpx_lpf_horizontal_edge_16_neon() intrinsics
...
Process 16 samples together.
Change-Id: I9cfbe04c9d25d8b89f63f48f519e812746db754d
2016-08-27 14:47:48 -07:00
Linfeng Zhang
f9efbad392
NEON asm of vpx_lpf_{horizontal,vertical}_8_dual_neon()
...
Also expose the NEON intrinsics version.
BUG=webm:1261, webm:1266.
Change-Id: I8c4ae658467dcf66ebf7a75982b2ef712dbb4535
2016-08-16 08:50:57 -07:00
Linfeng Zhang
f09b5a3328
NEON intrinsics for 4 loopfilter functions
...
New NEON intrinsics functions:
vpx_lpf_horizontal_edge_8_neon()
vpx_lpf_horizontal_edge_16_neon()
vpx_lpf_vertical_16_neon()
vpx_lpf_vertical_16_dual_neon()
BUG=webm:1262, webm:1263, webm:1264, webm:1265.
Change-Id: I7a2aff2a358b22277429329adec606e08efbc8cb
2016-08-12 09:58:17 -07:00
Johann Koenig
57f49db81f
Merge changes I6ef79702,Id332c641,I354b5d22,I84438013
...
* changes:
Use common transpose for vpx_idct32x32_1024_add_neon
Use common transpose for vpx_idct8x8_[12|64]_add_neon
Use common transpose for vp9_iht8x8_add_neon
Use common transpose for vpx_idct16x16_[10|256]_add_neon
2016-08-04 22:30:47 +00:00
Johann Koenig
17720b60bb
Merge "Remove armv6 target"
2016-08-04 22:21:13 +00:00
Johann
0325b95938
Use common transpose for vpx_idct32x32_1024_add_neon
...
Change-Id: I6ef7970206d588761ebe80005aecd35365ec50ff
2016-08-04 20:13:18 +00:00
Johann
f4e4ce7549
Use common transpose for vpx_idct8x8_[12|64]_add_neon
...
Change-Id: Id332c641f05336ef9a45e17493ff149fd0a168f0
2016-08-04 20:13:12 +00:00
Johann
8619203ddc
Use common transpose for vpx_idct16x16_[10|256]_add_neon
...
Change-Id: I84438013f483e82084d33ba9a63c33273d35fcaa
2016-08-04 20:12:53 +00:00
Johann Koenig
b757d89ff9
Merge "Extract neon transpose for re-use"
2016-08-04 20:12:38 +00:00
Johann
d55724fae9
Remove armv6 target
...
Change-Id: I1fa81cc9cabf362a185fc3a53f1e58de533a41e5
2016-08-04 12:55:06 -07:00
Johann
377cfa31f0
Extract neon transpose for re-use
...
Change-Id: I5e1c7f4c80d1c6f7fd582ac468c6eaaa3603a06c
2016-08-04 19:04:25 +00:00
Johann
df69c751a7
Don't expand to Q register for 4x4 intrapred
...
The code was expanding to Q registers so that vqrshn could be used, for
vector quad round shift and narrow. If 4 values are added together,
there is a shift by 2. If 8 values, a shift by 3. Since this accounts
for any possibility of overflow, we can skip the narrowing shift.
This allows keeping the values in D registers and casting the 16 bit
value to 8 bits.
Change-Id: I8d9cfa07176271f492c116ffa6a7b351af0b8751
2016-08-04 18:51:46 +00:00
Min Chen
407c2e2974
replace by VSTM/VLDM to reduce one of VST1/VLD1
...
Change-Id: I596567570580babb1a52925541d1fd1045c352f5
2016-07-28 23:01:38 +00:00
clang-format
099bd7f07e
vpx_dsp: apply clang-format
...
Change-Id: I3ea3e77364879928bd916f2b0a7838073ade5975
2016-07-25 14:14:19 -07:00
Johann
c516dd67bc
neon hadamard 16x16
...
Runs about twice as fast as C
BUG=webm:1027
Change-Id: I6760d99f4e22259439ca35d746194b12a81bfa71
2016-06-14 19:23:38 +00:00
Johann
9b54e812f7
neon hadamard 8x8
...
Runs about 30% faster than the C
BUG=webm:1021
Change-Id: I6809d6d84c3077ab619c53298296950e976bdaba
2016-05-16 11:58:02 -07:00
Johann
2f5840de3e
vpx_minmax_8x8_neon and test
...
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1156
Change-Id: Ief0ad8d6255b0ef0f233cda153799e3c72d3dbc6
2016-04-21 21:40:25 -07:00
James Zern
1b519fb666
split vpx_lpf_horizontal_16 in two
...
replace with vpx_lpf_horizontal_edge_16 and vpx_lpf_horizontal_edge_8 to
avoid passing a count parameter
Change-Id: I848c95c02a3c6ebaa6c2bdf0983dce05cd645271
2016-02-16 22:57:45 -08:00
James Zern
b1e97c6a25
vpx_lpf_horizontal_4: remove unused count param
...
Change-Id: Iec7d8eda343991f7d7d46931dca17af23c821d11
2016-02-16 22:57:27 -08:00
James Zern
bd5a5bb561
vpx_lpf_horizontal_8: remove unused count param
...
Change-Id: I48741e167a7b09b7c9ad3bfc1c4b88ef1029ae46
2016-02-16 22:54:40 -08:00
James Zern
109a47b342
vpx_lpf_vertical_4: remove unused count param
...
Change-Id: I43a191cb3d42e51e7bca266adfa11c6239a8064c
2016-02-16 14:59:00 -08:00
James Zern
37225744db
vpx_lpf_vertical_8: remove unused count param
...
Change-Id: Ic69406da00afb0f06588e8c0deb2b043952b078c
2016-02-16 14:59:00 -08:00
James Zern
d36659cec7
move vp9_avg to vpx_dsp
...
Change-Id: I7bc991abea383db1f86c1bb0f2e849837b54d90f
2015-12-14 14:42:12 -08:00
Scott LaVarnway
fa47212933
VPX: removed step checks from neon convolve code
...
The check is handled by the predictor table.
Change-Id: I42479f843e77a2d40cdcdfc9e2e6c48a05a36561
2015-08-12 16:46:53 -07:00
Jingning Han
08a453b9de
Replace vp9_ prefix with vpx_ prefix in vpx_dsp function names
...
This commit clears the function naming convention in vpx_dsp. It
replaces vp9_ prefix of global functions with vpx_ prefix. It also
removes the vp9_ prefix from static functions.
Change-Id: I6394359a63b71a51dda01342eec6a3cc08dfeedf
2015-08-04 13:46:11 -07:00
Jingning Han
6eabf229e2
Remove vp9_common.h from idct16x16_neon.c
...
Change-Id: I3df35a99900ef8ce549d315866849a10db1a4c7b
2015-08-02 09:57:25 -07:00
Jingning Han
e8b133c79c
Factor inverse transform functions into vpx_dsp
...
This commit moves the module inverse transform functions from vp9
to vpx_dsp folder. The hybrid transform wrapper functions stay in
the vp9 folder, since it involves codec-specific data structures.
Change-Id: Ib066367c953d3d024c73ba65157bbd70a95c9ef8
2015-07-31 16:21:00 -07:00
Zoe Liu
7186a2dd86
Code refactor on InterpKernel
...
It in essence refactors the code for both the interpolation
filtering and the convolution. This change includes the moving
of all the files as well as the changing of the code from vp9_
prefix to vpx_ prefix accordingly, for underneath architectures:
(1) x86;
(2) arm/neon; and
(3) mips/msa.
The work on mips/drsp2 will be done in a separate change list.
Change-Id: Ic3ce7fb7f81210db7628b373c73553db68793c46
2015-07-31 10:27:33 -07:00
Hui Su
4cbf36b105
Merge "Replace prefix vp9_ with vpx_ for intra prediction functions"
2015-07-29 00:38:48 +00:00
Jingning Han
d12a4a825c
Merge "Replace vp9_ prefix in 2D-DCT functions with vpx_"
2015-07-29 00:07:31 +00:00
Jingning Han
fc18cf7a11
Merge "Move DC only forward 2D-DCT functions to vpx_dsp"
2015-07-29 00:06:37 +00:00
Jingning Han
4b5109cd73
Replace vp9_ prefix in 2D-DCT functions with vpx_
...
Clean up the forward 2D-DCT function names in vpx_dsp.
Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
2015-07-28 16:06:44 -07:00
Jingning Han
d19033fa4e
Move DC only forward 2D-DCT functions to vpx_dsp
...
This completes the forward transform functions layout refactoring.
Change-Id: I996fb0fb795f41e2040f7b21db985774098aedbd
2015-07-28 14:52:30 -07:00
Hui Su
fe7cabe8b6
Merge "Move intra prediction functions from vp9/common/ to vpx_dsp/"
2015-07-28 20:41:01 +00:00
hui su
4013645353
Replace prefix vp9_ with vpx_ for intra prediction functions
...
Change-Id: I8ae6fb586f8d5d018ace228df11714f82b085076
2015-07-27 13:42:06 -07:00