summaryrefslogtreecommitdiff
path: root/vpx_dsp/arm
AgeCommit message (Collapse)Author
2016-09-26Merge "Refactor lpf (size 4 and 8) NEON intrinsics optimization"Linfeng Zhang
2016-09-21variance_neon: sync variance*() w/c,sse2James Zern
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-19Refactor lpf (size 4 and 8) NEON intrinsics optimizationLinfeng Zhang
Also check in 8x8 8-bit transpose NEON intrinsics optimization transpose_u8_8x8() Change-Id: I32d321cf97ea21eab158ac4896990fc9a51681c4
2016-09-17loopfilter_mb_neon: remove unused load_8x8()James Zern
quiets a -Wunused-function warning for arm targets Change-Id: I293a7e3d3d7d61d6af2fbedad5e8c25126c418b6
2016-09-16Refactor lpf (size 16) NEON intrinsics optimizationLinfeng Zhang
Extract shared code so later lpf size 4 and 8 functions can reuse. Change-Id: Ibb43ef1fd8651bd2e32fcc4c56cf6fa7ca237401
2016-08-31Update NEON transpose functions.Linfeng Zhang
Unify coding style. Change-Id: I5826f40c02c882df7353391e0c9dd6cef6bd4b97
2016-08-30Update vpx_lpf_vertical_16_dual_neon() intrinsicsLinfeng Zhang
Process 16 samples together. Change-Id: If6ee8e3377aa2786417f2fc411ba7d87ea8b6799
2016-08-27Update vpx_lpf_horizontal_edge_16_neon() intrinsicsLinfeng Zhang
Process 16 samples together. Change-Id: I9cfbe04c9d25d8b89f63f48f519e812746db754d
2016-08-16NEON asm of vpx_lpf_{horizontal,vertical}_8_dual_neon()Linfeng Zhang
Also expose the NEON intrinsics version. BUG=webm:1261, webm:1266. Change-Id: I8c4ae658467dcf66ebf7a75982b2ef712dbb4535
2016-08-12NEON intrinsics for 4 loopfilter functionsLinfeng Zhang
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-04Merge changes I6ef79702,Id332c641,I354b5d22,I84438013Johann Koenig
* 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-04Merge "Remove armv6 target"Johann Koenig
2016-08-04Use common transpose for vpx_idct32x32_1024_add_neonJohann
Change-Id: I6ef7970206d588761ebe80005aecd35365ec50ff
2016-08-04Use common transpose for vpx_idct8x8_[12|64]_add_neonJohann
Change-Id: Id332c641f05336ef9a45e17493ff149fd0a168f0
2016-08-04Use common transpose for vpx_idct16x16_[10|256]_add_neonJohann
Change-Id: I84438013f483e82084d33ba9a63c33273d35fcaa
2016-08-04Merge "Extract neon transpose for re-use"Johann Koenig
2016-08-04Remove armv6 targetJohann
Change-Id: I1fa81cc9cabf362a185fc3a53f1e58de533a41e5
2016-08-04Extract neon transpose for re-useJohann
Change-Id: I5e1c7f4c80d1c6f7fd582ac468c6eaaa3603a06c
2016-08-04Don't expand to Q register for 4x4 intrapredJohann
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-07-28replace by VSTM/VLDM to reduce one of VST1/VLD1Min Chen
Change-Id: I596567570580babb1a52925541d1fd1045c352f5
2016-07-25vpx_dsp: apply clang-formatclang-format
Change-Id: I3ea3e77364879928bd916f2b0a7838073ade5975
2016-06-14neon hadamard 16x16Johann
Runs about twice as fast as C BUG=webm:1027 Change-Id: I6760d99f4e22259439ca35d746194b12a81bfa71
2016-05-16neon hadamard 8x8Johann
Runs about 30% faster than the C BUG=webm:1021 Change-Id: I6809d6d84c3077ab619c53298296950e976bdaba
2016-04-21vpx_minmax_8x8_neon and testJohann
BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1156 Change-Id: Ief0ad8d6255b0ef0f233cda153799e3c72d3dbc6
2016-02-16split vpx_lpf_horizontal_16 in twoJames Zern
replace with vpx_lpf_horizontal_edge_16 and vpx_lpf_horizontal_edge_8 to avoid passing a count parameter Change-Id: I848c95c02a3c6ebaa6c2bdf0983dce05cd645271
2016-02-16vpx_lpf_horizontal_4: remove unused count paramJames Zern
Change-Id: Iec7d8eda343991f7d7d46931dca17af23c821d11
2016-02-16vpx_lpf_horizontal_8: remove unused count paramJames Zern
Change-Id: I48741e167a7b09b7c9ad3bfc1c4b88ef1029ae46
2016-02-16vpx_lpf_vertical_4: remove unused count paramJames Zern
Change-Id: I43a191cb3d42e51e7bca266adfa11c6239a8064c
2016-02-16vpx_lpf_vertical_8: remove unused count paramJames Zern
Change-Id: Ic69406da00afb0f06588e8c0deb2b043952b078c
2015-12-14move vp9_avg to vpx_dspJames Zern
Change-Id: I7bc991abea383db1f86c1bb0f2e849837b54d90f
2015-08-12VPX: removed step checks from neon convolve codeScott LaVarnway
The check is handled by the predictor table. Change-Id: I42479f843e77a2d40cdcdfc9e2e6c48a05a36561
2015-08-04Replace vp9_ prefix with vpx_ prefix in vpx_dsp function namesJingning Han
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-02Remove vp9_common.h from idct16x16_neon.cJingning Han
Change-Id: I3df35a99900ef8ce549d315866849a10db1a4c7b
2015-07-31Factor inverse transform functions into vpx_dspJingning Han
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-31Code refactor on InterpKernelZoe Liu
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-29Merge "Replace prefix vp9_ with vpx_ for intra prediction functions"Hui Su
2015-07-29Merge "Replace vp9_ prefix in 2D-DCT functions with vpx_"Jingning Han
2015-07-29Merge "Move DC only forward 2D-DCT functions to vpx_dsp"Jingning Han
2015-07-28Replace vp9_ prefix in 2D-DCT functions with vpx_Jingning Han
Clean up the forward 2D-DCT function names in vpx_dsp. Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
2015-07-28Move DC only forward 2D-DCT functions to vpx_dspJingning Han
This completes the forward transform functions layout refactoring. Change-Id: I996fb0fb795f41e2040f7b21db985774098aedbd
2015-07-28Merge "Move intra prediction functions from vp9/common/ to vpx_dsp/"Hui Su
2015-07-27Replace prefix vp9_ with vpx_ for intra prediction functionshui su
Change-Id: I8ae6fb586f8d5d018ace228df11714f82b085076
2015-07-27Move intra prediction functions from vp9/common/ to vpx_dsp/hui su
Change-Id: I64edc26cf4aab050c83f2d393df6250628ad43b8
2015-07-26Refactor vp9_idct.h fileJingning Han
Separate the common coefficient constant into vpx_dsp/txfm_common.h. Move the SSE2 macro definitions to vpx_dsp/x86/txfm_common_sse2.h. This clears the use case of vp9_idct.h in vpx_dsp folder. Change-Id: I319735a2abf42888e5080ac14cfbcde34be7b121
2015-07-22Factor forward 2D-DCT transforms into vpx_dspJingning Han
This commit factors the 4x4, 8x8, and 16x16 2D-DCT forward transform operations into vpx_dsp folder. Change-Id: I084b117b79c0925edcbcabb93f62b9f4bf8dbe7d
2015-07-17Rename loop filter function from vp9_ to vpx_Jingning Han
Change-Id: I6f424bb8daec26bf8482b5d75dd9b0e45c11a665
2015-07-16Migrate loop filter functions from vp9/ to vpx_dsp/Jingning Han
The various tap loop filter operations are common functions across codec. This commit moves them along with SIMD optimizations to vpx_dsp folder. Change-Id: Ia5fa0b2e5289cdb98467502a549c380b9c60e92c
2015-07-07Move sub pixel variance to vpx_dspJohann
Change-Id: I66bf6720c396c89aa2d1fd26d5d52bf5d5e3dff1
2015-07-06Move subtract functions from vp9 to vpx_dspJingning Han
Factor out the subtraction operator as common function. Change-Id: I526e703477c6a290e0e3e3c8898f8bb1ca82779b
2015-05-28variance_neon: add missing includeJames Zern
vpx_ports/mem.h is necessary for MSVC __builtin_prefetch compatibility macro Change-Id: I210fad6c6b4545df1874d028b31f42018490b029