summaryrefslogtreecommitdiff
path: root/libavcodec/aarch64/neon.S
Commit message (Collapse)AuthorAge
* lavc/aarch64: move transpose_4x8H to neon.SMikhail Nitenko2021-08-21
| | | | | | | | transpose_4x8H was declared in vp9lpf_16bpp_neon, however this macro is not unique to vp9 and could be used elsewhere. Signed-off-by: Mikhail Nitenko <mnitenko@gmail.com> Signed-off-by: Martin Storsjö <martin@martin.st>
* Merge commit 'cdb1665f70def544ddab3e3ed3763ef99c8b3873'Derek Buitenhuis2016-04-24
|\ | | | | | | | | | | | | * commit 'cdb1665f70def544ddab3e3ed3763ef99c8b3873': aarch64: Make transpose_4x4H do a regular transpose Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * aarch64: Make transpose_4x4H do a regular transposeMartin Storsjö2016-03-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, ff_h264_idct_add_neon (originally in the arm version) used a non-regular transpose in order to be able to use more instructions that deal with registers as 128 bit register pairs. The aarch64 translation doesn't do it to the same extent, but brought along the same structure since it was a straight translation. This reshuffles ff_h264_idct_add_neon, bringing it closer to the C implementation, making the transpose_4x4H macro do a regular transpose, usable for other algorithms as well. Previously, the third and fourth output from transpose_4x4H were swapped, and prior to cc29d96d5a, the same inputs as well. In addition to just swapping the outputs, also renumber the intermediate registers for better readability (making the register order match transpose_4x8B). This runs with the same number of cycles as before. Signed-off-by: Martin Storsjö <martin@martin.st>
| * arm64: fix inverted register order in transpose_4x4HJanne Grunau2015-12-21
| | | | | | | | | | | | Fix related register order issue in ff_h264_idct_add_neon. Found-by: zjh8890 <243186085@qq.com>
* | avcodec/arm64: fix inverted register order in transpose_4x4HJanne Grunau2015-12-19
| | | | | | | | | | | | | | | | Fix related register order issue in ff_h264_idct_add_neon. Found-by: zjh8890 <243186085@qq.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Revert "avcodec/aarch64/neon.S: Update neon.s for transpose_4x4H"Michael Niedermayer2015-12-17
| | | | | | | | | | | | The change was not correct and broke H264 This reverts commit cd83f899c94f691b045697d12efa21f83eb2329f.
* | avcodec/aarch64/neon.S: Update neon.s for transpose_4x4Hzjh88902015-12-12
| | | | | | | | | | The transpose_4x4H is wrong which cost me much time to find this bug. The orders of r2 and r3 are wrong, this bug waste me much time while I make aarch64 arm instruction which used the function.
* | Merge commit '36e3b1f2fd262028834a9d7b1eb533c1218ee6c2'Michael Niedermayer2014-01-15
|\| | | | | | | | | | | | | * commit '36e3b1f2fd262028834a9d7b1eb533c1218ee6c2': aarch64: h264 loop filter NEON optimizations Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aarch64: h264 loop filter NEON optimizationsJanne Grunau2014-01-15
| | | | | | | | Ported from ARMv7 NEON.
* | Merge commit 'd5dd8c7bf0f0d77c581db3236e0d938f06fd5591'Michael Niedermayer2014-01-15
|\| | | | | | | | | | | | | * commit 'd5dd8c7bf0f0d77c581db3236e0d938f06fd5591': aarch64: h264 qpel NEON optimizations Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * aarch64: h264 qpel NEON optimizationsJanne Grunau2014-01-15
| | | | | | | | Ported from ARMv7 NEON.
* | Merge commit '8438b3f09f6b225d0886cc385117c38eb44ca0c1'Michael Niedermayer2014-01-15
|/ | | | | | | * commit '8438b3f09f6b225d0886cc385117c38eb44ca0c1': aarch64: h264 idct NEON assembler optimizations Merged-by: Michael Niedermayer <michaelni@gmx.at>
* aarch64: h264 idct NEON assembler optimizationsJanne Grunau2014-01-15
Ported from ARMv7 NEON.