Commit Graph

497 Commits

Author SHA1 Message Date
Måns Rullgård
3132614305 ARMv6 optimised diff_pixels
Originally committed as revision 21702 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:41 +00:00
Måns Rullgård
f73a626ae4 ARMv6 optimised get_pixels
Originally committed as revision 21701 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:38 +00:00
Måns Rullgård
d2578ff9f1 ARMv6 optimised pix_abs8
Originally committed as revision 21700 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:34 +00:00
Måns Rullgård
74cc33c235 ARMv6 optimised pix_abs16_y2
Originally committed as revision 21699 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:31 +00:00
Måns Rullgård
39a760f678 ARMv6 optimised pix_abs16_x2
Originally committed as revision 21698 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:29 +00:00
Måns Rullgård
e6056a9008 ARMv6 optimised pix_abs16
Originally committed as revision 21697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:26 +00:00
Måns Rullgård
38e016a7c9 ARMv6 optimised put_pixels functions except xy2 variants
Originally committed as revision 21696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-09 16:13:21 +00:00
Måns Rullgård
1c6f46be03 Add missing guards and includes to arm/aac.h
Originally committed as revision 21247 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 15:54:01 +00:00
Måns Rullgård
798339fb46 AAC: ARM/NEON asm for VMUL2/4 functions
Originally committed as revision 21219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 02:58:24 +00:00
Måns Rullgård
c5d6cd5c81 ARM: 1l c&p fix: do not set pred16x16_plane for rv40
Originally committed as revision 20705 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-02 17:21:43 +00:00
Måns Rullgård
702b5885a1 ARM: NEON optimised H264 16x16, 8x8 pred
Originally committed as revision 20704 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-02 14:56:45 +00:00
Måns Rullgård
5dad039bf7 ARM: small tweak of NEON H264 IDCT
Originally committed as revision 20697 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-02 00:37:39 +00:00
Måns Rullgård
1025d19dd7 ARM: NEON 2xN chroma MC
Originally committed as revision 20696 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-02 00:37:36 +00:00
Måns Rullgård
04e7f6d2d0 ARM: NEON 16x16 and 8x8 avg qpel MC
Originally committed as revision 20695 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-12-02 00:37:33 +00:00
Måns Rullgård
0115b3eadb ARM: align stack in NEON h264 mc functions
A certain rotten fruit operating system doesn't provide the 8-byte stack
alignment required by the standard ARM ABI, so align it manually.

Originally committed as revision 20208 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-11 16:16:08 +00:00
Måns Rullgård
3e6015cc18 ARM: simplify movrel definition as CONFIG_PIC is now set for shared libs
Originally committed as revision 20204 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-11 10:15:48 +00:00
Måns Rullgård
12bf71b691 ARM: whitespace cosmetics
Originally committed as revision 20191 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-07 21:35:24 +00:00
Måns Rullgård
bef966e341 ARM: NEON avg_pixels8 and avg_h264_qpel8_mc00
Originally committed as revision 20190 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-07 21:35:19 +00:00
Måns Rullgård
2ad4c241c8 ARM: make function names all-lowercase
Originally committed as revision 20186 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 21:55:41 +00:00
Måns Rullgård
cf57bea6fb ARM: enable ARMv4 add_pixels_clamped
Somehow this function was never used.

Originally committed as revision 20185 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 21:55:37 +00:00
Måns Rullgård
153f49570f ARM: ARMv6 optimised add_pixels_clamped()
Originally committed as revision 20184 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 21:55:35 +00:00
Måns Rullgård
c8315e9186 ARM: whitespace cosmetics
Originally committed as revision 20183 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-06 21:55:30 +00:00
Måns Rullgård
55c0e1e6d2 ARM: add ff_ prefix to lots of functions
Originally committed as revision 20167 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-04 13:13:12 +00:00
Måns Rullgård
9abcc9a6f4 ARM: cosmetics
Originally committed as revision 20166 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-04 13:13:08 +00:00
Måns Rullgård
f67e0b824f ARM: replace some #if with if()
Originally committed as revision 20165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-04 13:13:06 +00:00
Måns Rullgård
701c618f7d ARM: clean up file/function naming conventions
Originally committed as revision 20164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-04 13:13:02 +00:00
Måns Rullgård
84d430f85a ARM: clean up dsputil initialisation
- Move v5 and v6 initialisation to separate files.
- Move NEON IDCT selection to ff_dsputil_init_neon()

Originally committed as revision 20163 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-04 13:12:55 +00:00
Måns Rullgård
1febba1e62 ARM: shorten some long macro names
Originally committed as revision 20159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-03 18:22:56 +00:00
Måns Rullgård
2e823300a6 ARM: update ldm/stm instructions to modern syntax
Originally committed as revision 20158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-03 18:22:52 +00:00
Måns Rullgård
abff992d36 ARM: whitespace cosmetics
Originally committed as revision 20157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-03 18:22:49 +00:00
Måns Rullgård
c61e40b728 ARM: use plain labels for pc-relative addressing
Originally committed as revision 20152 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-02 23:11:03 +00:00
Måns Rullgård
b44c6d8edb ARM: remove unnecessary .fpu neon directives
Originally committed as revision 20151 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-02 19:35:12 +00:00
Måns Rullgård
fd818a21c7 ARM: use undocumented .syntax directive to enable UAL syntax
Originally committed as revision 20150 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-02 19:35:07 +00:00
Måns Rullgård
e654b7c29e ARM: apply extern symbol prefix where needed
Originally committed as revision 20147 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-02 08:42:00 +00:00
Måns Rullgård
ec71a8e00b ARM: NEON optimised vector_fmul_add
Originally committed as revision 20063 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-27 16:52:05 +00:00
Måns Rullgård
f331cec47d ARM: NEON optimised vector_clipf
Originally committed as revision 20031 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-26 19:55:21 +00:00
Måns Rullgård
b9b1ad9cd8 ARM: NEON optimised vector_fmul_reverse
Originally committed as revision 20029 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-26 19:23:25 +00:00
Måns Rullgård
9bda7f3063 ARM: NEON optimised int32_to_float_fmul_scalar
Originally committed as revision 20000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-23 13:52:56 +00:00
Måns Rullgård
275cfd1501 ARM: NEON optimised scalarproduct_float
Originally committed as revision 19971 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-22 20:37:55 +00:00
Måns Rullgård
1dee3e97c6 ARM: NEON optimisations for some dsputil functions
NEON versions of the following functions are added:

  vector_fmul_scalar
  vector_fmul_sv_scalar
  sv_fmul_scalar
  butterflies_float

Originally committed as revision 19957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-22 00:48:48 +00:00
Måns Rullgård
d650574e68 ARM: merge two loops in ff_mdct_calc_neon
Originally committed as revision 19941 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 02:56:12 +00:00
Måns Rullgård
f7a3b6030c ARM: interleave cos/sin tables for improved NEON MDCT
Originally committed as revision 19940 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 02:56:09 +00:00
Måns Rullgård
3572b281c8 ARM: remove broken IPP support
Originally committed as revision 19935 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-21 01:40:08 +00:00
Måns Rullgård
01b2214758 Merge FFTContext and MDCTContext
Originally committed as revision 19931 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-20 17:30:20 +00:00
Måns Rullgård
d25130eb23 ARM: do not use movw/movt for relocatable values with PIC
Originally committed as revision 19886 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-16 19:20:48 +00:00
Måns Rullgård
f486321395 Move per-arch fft init bits into the corresponding subdirs
Originally committed as revision 19864 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-15 21:14:14 +00:00
Måns Rullgård
9ecc414195 ARM: 10l: fix large FFTs
Originally committed as revision 19846 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-14 21:37:41 +00:00
Måns Rullgård
edc0f5dcba ARM: NEON optimised MDCT
Originally committed as revision 19819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-11 02:24:22 +00:00
Måns Rullgård
750f5034cf ARM: faster NEON IMDCT
Originally committed as revision 19817 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-11 02:01:18 +00:00
Måns Rullgård
648d792042 ARM: NEON optimised FFT and MDCT
Vorbis and AC3 ~3x faster.

Parts by Naotoshi Nojiri, naonoj gmail

Originally committed as revision 19806 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-09-10 08:50:03 +00:00
Diego Biurrun
deb1b2b699 Add necessary #include for config.h.
Originally committed as revision 19692 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-24 10:59:14 +00:00
Måns Rullgård
9ae443f420 10L: remove instruction left over from debugging
Originally committed as revision 19638 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-14 01:05:48 +00:00
Måns Rullgård
e814015d69 ARM: NEON optimised vorbis_inverse_coupling
12% faster Vorbis decoding on Cortex-A8.

Originally committed as revision 19637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-14 01:02:06 +00:00
Måns Rullgård
341f394f0d ARM: cleaner selection of ELF-spefic assembler directives
Originally committed as revision 19522 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-27 22:55:55 +00:00
Martin Storsjö
e21a892163 Conditionally compile ELF-specific ARM assembly bits that fail on Windows CE.
patch by Martin Storsjö, martin martin st

Originally committed as revision 19514 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-27 12:53:44 +00:00
Diego Biurrun
7d90972c84 cosmetics: reindent/prettyprint after last commit
Originally committed as revision 19495 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:38:26 +00:00
Diego Biurrun
31cf61b447 Only compile in NEON optimizations for H.264 when the H.264 decoder is enabled.
Originally committed as revision 19494 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:33:33 +00:00
Diego Biurrun
99e5a9d1ea Do not redundantly check for both CONFIG_THEORA_DECODER and CONFIG_VP3_DECODER.
The Theora decoder depends on the VP3 decoder.

Originally committed as revision 19492 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:27:10 +00:00
Måns Rullgård
0a8958c849 ARM: handle VFP register arguments in ff_vector_fmul_window_neon()
Originally committed as revision 19475 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-20 22:30:27 +00:00
Måns Rullgård
ce742de22c ARM: check for VFP register arguments
Originally committed as revision 19474 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-20 22:30:24 +00:00
David Conrad
2483298ae2 ARM: NEON VP3 IDCT
15% faster VP3/Theora, 10% faster VP6

Originally committed as revision 19345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-04 20:41:11 +00:00
Måns Rullgård
2da4e5e3e1 ARM: slightly faster NEON H264 horizontal loop filter
Originally committed as revision 19216 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-06-17 22:33:04 +00:00
Måns Rullgård
c9311a12d5 ARM: add some PLD in NEON IDCT
Originally committed as revision 18972 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-28 17:19:28 +00:00
David Conrad
548a99742c ARM: actually add VP3 loop filter
Originally committed as revision 18917 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-23 18:47:26 +00:00
David Conrad
6db8697a39 ARM: NEON VP3 Loop Filter
Originally committed as revision 18916 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-23 18:36:20 +00:00
David Conrad
d647ed789f ARM: Use fewer register in NEON put_pixels _y2 and _xy2
Approved by Mans on IRC

Originally committed as revision 18713 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-29 11:38:09 +00:00
David Conrad
428bf2ac88 ARM: NEON put_pixels_clamped
Originally committed as revision 18712 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-29 11:31:43 +00:00
David Conrad
d8f3f340ad Add guaranteed alignment for loading dest pixels in avg_pixels16_neon
Originally committed as revision 18535 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-16 08:39:13 +00:00
David Conrad
cc2e555420 ARM: NEON optimized put_signed_pixels_clamped
Originally committed as revision 18333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-04 21:02:48 +00:00
Måns Rullgård
08e12b2240 ARM: NEON optimised add_pixels_clamped
Based on patch by David Conrad.

Originally committed as revision 18332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-04 20:18:58 +00:00
Måns Rullgård
35690321a7 ARM: disable inline asm for armcc
Originally committed as revision 17831 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-05 21:20:13 +00:00
Måns Rullgård
4cd19f6e78 ARM: fix missing MUL16() return type
Originally committed as revision 17679 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-01 12:11:02 +00:00
Måns Rullgård
fe7f149ed8 ARM: fix corner-case overflow in H.264 weighted prediction
Originally committed as revision 17657 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-28 13:48:54 +00:00
Måns Rullgård
e1f7cb7fa0 ARM: NEON optimised vector_fmul_window
Originally committed as revision 16868 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 23:13:19 +00:00
Måns Rullgård
dd927e2e62 ARM: NEON optimised vector_fmul
Originally committed as revision 16867 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-30 23:13:15 +00:00
Måns Rullgård
ca6532f620 ARM: remove some unused macro arguments
Originally committed as revision 16824 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:34:10 +00:00
Måns Rullgård
d8f9269dc6 ARM: reorder some instructions in put_pixels*_arm for speed gains
Originally committed as revision 16823 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:51 +00:00
Måns Rullgård
00c5727d90 ARM: replace jump tables with conditional branches
Originally committed as revision 16822 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:47 +00:00
Måns Rullgård
d9e68f5c1a ARM: replace explicit literal loads with ldr Rd, =lit
Originally committed as revision 16821 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:44 +00:00
Måns Rullgård
fc252eba02 ARM: change alignment of loops in put_pixels*_arm to 32
Originally committed as revision 16820 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:41 +00:00
Måns Rullgård
4f928a4d2d ARM: optimised mid_pred()
Originally committed as revision 16819 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:38 +00:00
Måns Rullgård
1214bd86dc ARM: allow register operands for shifts in MULL()
Originally committed as revision 16818 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 16:06:34 +00:00
Måns Rullgård
bd53b426b7 ARM: NEON optimised H.264 weighted prediction
Originally committed as revision 16771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-25 13:04:45 +00:00
Måns Rullgård
5a29589b81 ARM: NEON optimised H.264 biweighted prediction
Originally committed as revision 16770 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-25 13:04:41 +00:00
Diego Biurrun
406792e7b0 cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Måns Rullgård
77c4537313 ARM: simplify ff_put/avg_h264_chroma_mc4/8_neon definitions, no code change
Originally committed as revision 16677 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-18 20:43:11 +00:00
Aurelien Jacobs
49fb20cb8a replace all occurrence of ENABLE_ by the corresponding CONFIG_, HAVE_ or ARCH_
and remove all ENABLE_ definitions.

Originally committed as revision 16600 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-14 17:19:17 +00:00
Aurelien Jacobs
b250f9c66d Change semantic of CONFIG_*, HAVE_* and ARCH_*.
They are now always defined to either 0 or 1.

Originally committed as revision 16590 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-13 23:44:16 +00:00
Måns Rullgård
9a0cf9f8f8 ARM: use push/pop pseudo-instructions in simple_idct_armv6.S
Originally committed as revision 16570 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-12 20:37:49 +00:00
Måns Rullgård
e9497946bb ARM: simple_idct_armv6.S whitespace cosmetics
Originally committed as revision 16569 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-12 20:37:39 +00:00
Måns Rullgård
7f727ace2a ARM: clean up pc-relative references in simple_idct_armv6.S
Originally committed as revision 16568 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-12 20:37:33 +00:00
Måns Rullgård
3b16c71984 ARM: use rX register names in simple_idct_armv6.S
Originally committed as revision 16567 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-12 20:37:29 +00:00
Måns Rullgård
172a39d13c ARM: work around linker bug with movw/movt relocations in shared libs
Originally committed as revision 16395 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-30 03:13:52 +00:00
Måns Rullgård
77e2249e2f ARM: rename coefficient table in NEON IDCT
Originally committed as revision 16392 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-30 03:13:40 +00:00
Måns Rullgård
f23740d96f ARM: NEON optimised float_to_int16
Originally committed as revision 16352 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-26 19:52:52 +00:00
Måns Rullgård
760badc1df ARM: add new h264 idct functions
Originally committed as revision 16312 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-25 23:13:43 +00:00
Måns Rullgård
a2fc0f6a6d ARM: replace "armv4l" with "arm"
Originally committed as revision 16179 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-17 00:54:54 +00:00