Commit Graph

36 Commits

Author SHA1 Message Date
Justin Ruggles 98db4e2a4e PPC: Move types_altivec.h and util_altivec.h from libavcodec to libavutil
This will allow for easier implementation of Altivec functions in libraries
other than libavcodec.
2012-06-08 13:14:38 -04:00
Mans Rullgard 6cbf2420b9 PPC: use Altivec IMDCT only for supported sizes
The Altivec IMDCT works with size 32 and higher only.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-05 16:01:56 +01:00
Alex Converse 187a537904 Convert some undefined 1<<31 shifts into 1U<<31.
According to ISO 9899:1999 S 6.5.7/4:

The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits
are filled with zeros. If E1 has an unsigned type, the value of the
result is E1× 2^E2, reduced modulo one more than the maximum value
representable in the result type. If E1 has a signed type and
nonnegative value, and E1× 2^E2 is representable in the result type, then
that is the resulting value; otherwise, the behavior is undefined.
2011-04-11 21:47:42 -07:00
Mans Rullgard 2912e87a6c Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-19 13:33:20 +00:00
Måns Rullgård a46b84d120 PPC: convert Altivec FFT to pure assembler
On PPC a leaf function has a 288-byte red zone below the stack pointer,
sparing these functions the chore of setting up a full stack frame.

When a function call is disguised within an inline asm block, the
compiler might not adjust the stack pointer as required before a
function call, resulting in the red zone being clobbered.

Moving the entire function to pure asm avoids this problem and also
results in somewhat better code.

Originally committed as revision 24044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 18:33:47 +00:00
Måns Rullgård a075902f3d PPC: add _interleave versions of fft{4,6,16}_altivec
This removes the need for a post-swizzle with the small FFTs.

Originally committed as revision 24025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-03 18:36:10 +00:00
Måns Rullgård 9bbb50648d PPC: fix build on OSX without gas-preprocessor
Originally committed as revision 23962 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-02 00:20:26 +00:00
Loren Merritt cf61994a17 PPC: Altivec IMDCT
Patch by Loren Merritt

Originally committed as revision 23959 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:49 +00:00
Måns Rullgård 588d28ac08 Remove vestiges of radix-2 FFT
Patch (mostly) by Loren Merritt

Originally committed as revision 23957 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:42 +00:00
Måns Rullgård bf7ba15372 PPC: Altivec split-radix FFT
1.8x faster than altivec radix-2 on a G4
8% faster vorbis decoding

Patch (mostly) by Loren Merritt

Originally committed as revision 23956 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-01 23:21:39 +00:00
Måns Rullgård 2829ce4b40 Remove PPC perf counter support
This functionality is better accessed through tools like oprofile.

Originally committed as revision 23808 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-26 22:23:35 +00:00
Måns Rullgård ddb8c2c0f1 PPC: move prototypes to headers and make some functions static
Originally committed as revision 22267 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 22:37:14 +00:00
Måns Rullgård 1429224b04 Move FFT parts from dsputil.h to fft.h
Originally committed as revision 22235 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 14:34:46 +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
Diego Biurrun 7a709548a7 Remove unnecessary gcc_fixes.h #include.
Originally committed as revision 18384 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-09 11:54:13 +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
Luca Barbato d89eae6f1a Remove stray code
Originally committed as revision 16358 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-27 11:30:30 +00:00
Diego Biurrun e3905ce0af cosmetics: Reformat PPC code in libavcodec according to style guidelines.
This includes indentation changes, comment reformatting, consistent brace
placement and some prettyprinting.

Originally committed as revision 14316 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-07-20 18:58:30 +00:00
Diego Biurrun 245976da2a Use full path for #includes from another directory.
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-09 11:56:36 +00:00
Luca Barbato 89523beea4 Sanitize altivec code so it can be built with runtime check properly
Originally committed as revision 10640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-02 11:39:32 +00:00
Ronald S. Bultje b550bfaa61 Add libavcodec to compiler include flags in order to simplify header
include paths in the source files.
mostly from a patch by Ronald S. Bultje, rbultje ronald.bitfreak net

Originally committed as revision 9034 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-16 09:51:45 +00:00
Luca Barbato d9d2f88def Simplify
Originally committed as revision 6932 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-07 12:45:29 +00:00
Luca Barbato b420448e38 removing ALTIVEC_USE_REFERENCE_C_CODE, since has no use anymore
Originally committed as revision 6606 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-09 18:29:46 +00:00
Diego Biurrun b78e7197a8 Change license headers to say 'FFmpeg' instead of 'this program/this library'
and fix GPL/LGPL version mismatches.

Originally committed as revision 6577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 15:30:46 +00:00
Diego Biurrun 5509bffa88 Update licensing information: The FSF changed postal address.
Originally committed as revision 4842 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-01-12 22:43:26 +00:00
Diego Biurrun bb270c0896 COSMETICS: tabs --> spaces, some prettyprinting
Originally committed as revision 4764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-22 01:10:11 +00:00
Diego Biurrun 115329f160 COSMETICS: Remove all trailing whitespace.
Originally committed as revision 4749 to svn://svn.ffmpeg.org/ffmpeg/trunk
2005-12-17 18:14:38 +00:00
Gildas Bazin 68951ecf0c fft_*() renamed into ff_fft_*() patch by (Gildas Bazin <gbazin at altern dot org>)
Originally committed as revision 2882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2004-03-13 21:43:24 +00:00
Romain Dolbeau e45a2872fa 1) remove TBL support in PPC performance. It's much more useful to use the
PMCs, and with Apple's CHUD it's fairly easy too. No reason to keep useless
    code around
2) make the PPC perf stuff a configure option
3) make put_pixels16_altivec a bit faster by unrolling the loop by 4
patch by (Romain Dolbeau <dolbeau at irisa dot fr>)

Originally committed as revision 2022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-07-09 20:18:13 +00:00
Michael Niedermayer a9a07762b8 altivec gcc-3 fixes by (Magnus Damm <damm at opensource dot se>)
Originally committed as revision 1896 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-05-21 17:50:57 +00:00
Romain Dolbeau 3b991c54eb Altivec on non darwin systems patch by Romain Dolbeau
Originally committed as revision 1509 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-26 22:29:47 +00:00
Romain Dolbeau 35e5fb067e PPC perf, PPC clear_block, AltiVec put_pixels8_xy2 patch by (Romain Dolbeau <dolbeau at irisa dot fr>)
Originally committed as revision 1476 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-19 19:00:45 +00:00
Michael Niedermayer db40a39aba AltiVec perf (take 2), plus a couple AltiVec functions by (Romain Dolbeau <dolbeau at irisa dot fr>)
Originally committed as revision 1464 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-16 21:54:55 +00:00
Romain Dolbeau e629ab68a7 altivec jumbo patch by (Romain Dolbeau <dolbeaur at club-internet dot fr>)
Originally committed as revision 1448 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-11 20:51:03 +00:00
Fabrice Bellard 4013fcf4af altivec patches by Romain Dolbeau
Originally committed as revision 1423 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-08 18:47:49 +00:00
Fabrice Bellard 8d268a7d4c fft altivec by Romain Dolbeau - simplified patch, test it on PPC with fft-test and wma decoding
Originally committed as revision 1417 to svn://svn.ffmpeg.org/ffmpeg/trunk
2003-01-07 18:15:48 +00:00