Commit Graph

523 Commits

Author SHA1 Message Date
Loren Merritt
b313e8159c avg_pixels4_mmx2
Originally committed as revision 11829 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-03 17:04:33 +00:00
Loren Merritt
6c01d0069d use mmx2/3dnow avg functions in avg_qpel*_mc00
Originally committed as revision 11828 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-03 16:19:37 +00:00
Loren Merritt
ed5d7a531c ff_h264_idct8_add_sse2.
compared to mmx, 217->126 cycles on core2, 262->220 on k8.

Originally committed as revision 11826 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-03 07:05:11 +00:00
Loren Merritt
51f0ac65df remove some movq in ff_h264_idct8_add_mmx. 225->217 cycles on core2.
Originally committed as revision 11825 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-02-03 03:21:47 +00:00
Baptiste Coudurier
066e0cc50d add parenthesis, fix warning: i386/dsputil_mmx.c:2618: warning: suggest parentheses around arithmetic in operand of |
Originally committed as revision 11673 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-30 23:54:59 +00:00
Baptiste Coudurier
afa4778989 fix prototypes, remove warning: i386/dsputil_mmx.c:3594: warning: assignment from incompatible pointer type
Originally committed as revision 11672 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-30 23:52:42 +00:00
Reimar Döffinger
766324fc49 Add and use DECLARE_ASM_CONST for constants used in assembler code.
Should make it easier to work around compilation problems with e.g. ICC.

Originally committed as revision 11641 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-27 20:50:16 +00:00
Reimar Döffinger
038f0f9b34 Use DECLARE_ALIGNED in yet another place
Originally committed as revision 11640 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-27 20:45:49 +00:00
Reimar Döffinger
6a1a2fa0fe Use DECLARE_ALIGNED and remove unneeded attribute_used
Originally committed as revision 11639 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-27 19:59:11 +00:00
Reimar Döffinger
27215c6bf4 Use DECLARE_ALIGNED
Originally committed as revision 11630 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-27 14:46:56 +00:00
Diego Biurrun
426d18b85b Rename illegal identifiers, _ followed by capital is reserved for the system.
Originally committed as revision 11541 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-16 21:21:30 +00:00
Christophe Gisquet
28748a9128 Factorize some duplicated code from CAVS and H.264 into a common file.
patch by Christophe Gisquet, christophe.gisquet free fr

Originally committed as revision 11504 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-11 08:29:58 +00:00
Christophe Gisquet
ae904fd028 Fix issue #301:
summary of changes:
- Use MANGLE when loading some constants into MMX registers.
- Convert those constants to non-static and thus add ff_ prefix.
- Remove last parameter of MSPEL_FILTER13_CORE (was constant).
- Use of "+r" instead of stricter but unnecessary "+g".
- Use of REG_c and direct loading of some of the above.
patch by Christophe GISQUET, christophe.gisquet free fr
Subject: [FFmpeg-devel] [PATCH] Roundup issue #301
Date: Fri, 28 Dec 2007 19:22:18 +0100

Originally committed as revision 11376 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-02 19:24:42 +00:00
Christophe Gisquet
9fa3572903 add MMX version for put_no_rnd_h264_chroma_mc8_c, used in VC-1 decoding.
patch by Christophe GISQUET %christophe P gisquet A free P fr%
original thread:
date: Nov 25, 2007 12:35 AM
subject: Re: [FFmpeg-devel] MMX version for put_no_rnd_h264_chroma_mc8_c

Originally committed as revision 11298 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-21 23:11:22 +00:00
Diego Biurrun
9fbd14acb8 Fix typo in macro name: WARPER8_16_SQ --> WRAPPER8_16_SQ.
Originally committed as revision 11296 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-21 12:38:41 +00:00
Aurelien Jacobs
407c50a024 move FLAC mmx dsp to its own file
Originally committed as revision 11244 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-16 22:20:47 +00:00
Reimar Döffinger
15c57ced2f Add 'l' suffix where it is necessary because type can not always be
inferred from arguments. Fixes compilation with Intel compiler

Originally committed as revision 11227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-15 23:08:15 +00:00
Aurelien Jacobs
1b77e87756 add required include to make this file self-contained
Originally committed as revision 11211 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-12 22:45:03 +00:00
Diego Biurrun
571bf37f6d typo/clarification
Originally committed as revision 11201 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-11 18:47:04 +00:00
Diego Biurrun
56cc85a068 Misc spelling fixes, prefer American over British English.
Originally committed as revision 11126 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-02 15:43:08 +00:00
Vitor Sessak
52b541ad79 spelling
Originally committed as revision 11122 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-12-01 22:21:04 +00:00
Aurelien Jacobs
bb6cc730e5 remove some unused ff_p* vars from dsputil
Originally committed as revision 11106 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:57:26 +00:00
Aurelien Jacobs
dbb5fdbdc8 remove useless #ifdef around extern declaration
Originally committed as revision 11105 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:56:15 +00:00
Aurelien Jacobs
7c35b55111 cosmetics: indentation
Originally committed as revision 11104 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:54:46 +00:00
Aurelien Jacobs
51ac88228a convert some #ifdef CONFIG_ to if(ENABLE_
Originally committed as revision 11103 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:54:18 +00:00
Aurelien Jacobs
5b67ce2afa build vc1dsp_mmx.c in its own compilation unit
Originally committed as revision 11102 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:42:55 +00:00
Aurelien Jacobs
43de50659b use ff_ prefix for extern vars
Originally committed as revision 11101 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:36:15 +00:00
Aurelien Jacobs
182f56cb0c make ff_p* vars extern so that they can be used in various *_mmx.c files
Originally committed as revision 11100 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-27 22:23:34 +00:00
Christophe Gisquet
ac40ce4244 Typo fix. Previous version had some picture error building up until next keyframe.
Now MMX version decodes 1:1 what the C version does
patch by Christophe GISQUET %christophe P gisquet A free P fr%

Originally committed as revision 11090 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-25 09:43:35 +00:00
Christophe Gisquet
d3a9c44e1d Strip debug stuff from vc1dsp_mmx.c, patch by Christophe GISQUET %hristophe P gisquet A free P fr%
Original thread:
date: Nov 24, 2007 3:09 PM
subject: [FFmpeg-devel] [PATCH] Strip debug stuff from vc1dsp_mmx.c

Originally committed as revision 11088 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-24 14:34:25 +00:00
Christophe Gisquet
82821c913b add VC-1 MMX DSP functions, under MIT license.
patch by Christophe GISQUET %christophe P gisquet A free P fr%
original thread:
date: Jul 7, 2007 12:52 PM
subject: [FFmpeg-devel] [PATCH] VC-1 MMX DSP functions

Originally committed as revision 11074 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-21 22:41:31 +00:00
Michael Niedermayer
02d361919a tring to workaround gcc 2.95 bug which causes random failures
Originally committed as revision 11003 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-12 02:04:01 +00:00
Diego Biurrun
deb43f0bd8 Explain why there are no multiple inclusion guards in these header files.
Originally committed as revision 10771 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 22:29:13 +00:00
Aurelien Jacobs
ab54bff20a Remove wrong multiple inclusion guards.
Those files are really meant to be included several times.

Originally committed as revision 10766 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 11:19:42 +00:00
Diego Biurrun
5b21bdabe4 Add FFMPEG_ prefix to all multiple inclusion guards.
Originally committed as revision 10765 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 09:37:46 +00:00
Diego Biurrun
31b2c1446f Add missing multiple inclusion guards.
Originally committed as revision 10763 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-17 09:31:06 +00:00
Shane
bdb273564c Fix intended order of operations for 4 assert() checks.
Patch by Shane, gnome42 T gmail O com

Originally committed as revision 10711 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-10-11 22:18:38 +00:00
Loren Merritt
6810b93a81 sse2 version of compute_autocorr().
4x faster than c (somehow, even though doubles only allow 2x simd).
overal flac encoding: 15-50% faster on core2, 4-11% on k8, 3-13% on p4.

Originally committed as revision 10621 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-09-29 22:31:18 +00:00
Reimar Döffinger
eafa1c90e5 Replace complicated and currently broken manual alignment code by
DECLARE_ALIGNED_16. Fixes crash in ff_snow_horizontal_compose97i_sse2

Originally committed as revision 10261 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-30 11:41:58 +00:00
Michael Niedermayer
267b9479ac typo
Originally committed as revision 10250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-27 10:39:31 +00:00
Ramiro Polla
7bcc1d5b66 CONFIG_7REGS has been renamed to HAVE_7REGS
Originally committed as revision 10237 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 16:10:53 +00:00
Michael Niedermayer
90e9e94d0f workaround gcc bug, untested as my gcc is not complaining
Originally committed as revision 10236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 12:34:22 +00:00
Michael Niedermayer
cefa599953 optimize the first vertical lifting step, this also prevents another
overflow, the last known possible overflow

Originally committed as revision 10234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 11:16:23 +00:00
Michael Niedermayer
c90762766a optimize 1st horizontal lifting step
Originally committed as revision 10231 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 08:31:55 +00:00
Michael Niedermayer
1104bf2b20 typo
Originally committed as revision 10230 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 08:03:23 +00:00
Michael Niedermayer
8b5029295d get rid of totally senseless "m" + read in register we have enough
registers to keep everything in registers

Originally committed as revision 10229 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 06:51:51 +00:00
Michael Niedermayer
bc1e78d896 simplify senselessly complex addressing
Originally committed as revision 10228 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 02:02:14 +00:00
Michael Niedermayer
25bb359f73 cosmetics
remove brain amputated mmx wrappers around sse2 macros
fix name of ..._sub macro to match ..._add naming

Originally committed as revision 10227 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 01:20:09 +00:00
Michael Niedermayer
629750290f avoid overflow in the 3rd lifting step, this now needs mmx2 at minimum
(patch for plain mmx support is welcome ...)

Originally committed as revision 10226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-26 01:11:02 +00:00
Michael Niedermayer
b696a4c91d avoid an overflow in the 1 horizontal lifting step
Originally committed as revision 10225 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 19:04:33 +00:00
Michael Niedermayer
9caa1cccb9 prevent one overflow in the first vertical lifting step
Originally committed as revision 10224 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 16:28:45 +00:00
Michael Niedermayer
3e0f7126b5 update mmx code to latest snow changes
note, the code likely can overflow and thus needs some more changes
sse2 updated too but disabled as it is untested

Originally committed as revision 10223 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 15:20:56 +00:00
Michael Niedermayer
d593e32983 use 16bit IDWT (a SIMD implementation of it should be >2x faster then with
the old 32bit code)
disable mmx/sse2 optimizations as they need a rewrite now

Originally committed as revision 10218 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-25 03:00:51 +00:00
Michael Niedermayer
ce611a27be Change rounding of the horizontal DWT to match the vertical one.
This allows some simplifications and optimizations and should
not have any effect on quality.

Originally committed as revision 10172 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-21 16:29:40 +00:00
Michael Niedermayer
30cd3e66bd remove code which become unused by the previous changes
Originally committed as revision 10166 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-21 00:05:30 +00:00
Michael Niedermayer
72dee89b5d Simplify and optimize the 4th vertical lifting step of the SSE2 code (untested)
This also reduces the needed headroom in that step by 1 bit

Originally committed as revision 10165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-21 00:03:18 +00:00
Michael Niedermayer
d0dae46a90 Simplify and optimize the 4th vertical lifting step of the MMX code
This also reduces the needed headroom in that step by 1 bit

Originally committed as revision 10164 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-21 00:02:19 +00:00
Michael Niedermayer
1ffbbef217 Simplify and speedup code, reduce needed headroom by 2 bits in the 3rd
vertical lifting step of the SSE2 code (untested)

Originally committed as revision 10163 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 23:59:20 +00:00
Michael Niedermayer
4bf1790421 simplify, speedup and reduce needed headroom by 2 bits in the 3rd
vertical lifting step

Originally committed as revision 10162 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 23:54:49 +00:00
Michael Niedermayer
dd30437bbe replace <<1 by add for SSE2 (untested)
Originally committed as revision 10161 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 23:11:05 +00:00
Michael Niedermayer
7e665a3943 replace <<1 by add
Originally committed as revision 10160 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 23:09:39 +00:00
Michael Niedermayer
eee649d3b5 slightly change horizontal lift3 so it needs 1 bit less headroom
Originally committed as revision 10159 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 23:02:59 +00:00
Michael Niedermayer
be3b22f9ca remove idiotc double subtraction from the sse2 code (untested, no sse2 here)
Originally committed as revision 10158 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 22:41:47 +00:00
Michael Niedermayer
8510c519e7 fixme note
Originally committed as revision 10157 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 22:34:42 +00:00
Michael Niedermayer
3a9f44d5d5 and of course the unneeded double subtractions were blindly put in the
mmx code
this also makes the affected code 4% faster

Originally committed as revision 10156 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-20 22:29:21 +00:00
Aurelien Jacobs
73f51a4d3e help some gcc version to optimize out those functions
Originally committed as revision 9785 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-24 08:54:56 +00:00
Aurelien Jacobs
674eeb5f57 cosmetics: indentation
Originally committed as revision 9582 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-10 20:27:50 +00:00
Aurelien Jacobs
eb75a69818 Avoid linking with h263.c functions when the relevant codecs
are not compiled in.

Originally committed as revision 9581 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-10 20:23:08 +00:00
Måns Rullgård
a00177a952 make arguments to ssd_int8_vs_int16() const
Originally committed as revision 9548 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-08 23:15:00 +00:00
Diego Biurrun
09a6682648 typos
Originally committed as revision 9486 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 12:06:02 +00:00
Diego Biurrun
e5a389a1b7 license header consistency cosmetics
Originally committed as revision 9484 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 10:40:25 +00:00
Diego Biurrun
7b94177e37 Group all copyright and author notices together.
Originally committed as revision 9483 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-05 10:37:29 +00:00
Guillaume Poirier
efb775777f add a comment to indicate which #endif belong to which #define
Originally committed as revision 9356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-17 18:59:28 +00:00
Måns Rullgård
699b3f99d0 add multiple inclusion guards to headers
Originally committed as revision 9345 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-17 00:01:30 +00:00
Måns Rullgård
8657d5e549 correct type for {put,avg}_h264_chroma_mc2_mmx2
Originally committed as revision 9333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-16 14:51:57 +00:00
Diego Biurrun
90b5b51eab misc typo fixes
Originally committed as revision 9291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 18:50:50 +00:00
Diego Biurrun
755bfeabcc misc spelling fixes
Originally committed as revision 9289 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-12 09:29:25 +00:00
Graham Booker
ee387b57fd work around issues with the old version of Gnu Assembler shipped on
Intel / OSX 10.4.9
patch by Graham Booker % gbooker A cod3r P com %
Original thread:
Date: May 25, 2007 11:51 PM
Subject: [FFmpeg-devel] r9017 breaks WMA decoding on Intel Macs
The patch:
Date: Jun 3, 2007 4:37 PM
Subject: Re: [FFmpeg-devel] r9017 breaks WMA decoding on Intel Macs

Originally committed as revision 9260 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-08 20:35:30 +00:00
Diego Biurrun
34933442ac Preprocessor #defines starting with __ are reserved for the system.
Originally committed as revision 9251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 17:19:37 +00:00
Ronald S. Bultje
3d4e3e560f Use FFmpeg-specific CPU feature definitions.
taken from a patch by Ronald S. Bultje, rbultje ronald.bitfreak net
Date: Thu, 07 Jun 2007 08:57:46 -0400
Subject: Re: [FFmpeg-devel] [PATCH] Coremake support - ffmpeg_nommx.patch (1/1)
 - ffmpeg-nommx.patch (1/1) - ff-cputest-noavconfig.patch (1/1)

Originally committed as revision 9250 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 17:18:01 +00:00
Carl Eugen Hoyos
154e30f6c2 rename attribute_unused to av_unused and moves its declaration to common.h
patch by Carl Eugen Hoyos cehoyos chez ag or at
original thread: [FFmpeg-devel] [PATCH] attribute_unused -> av_unused
date: 05/29/2007 01:23 PM

Originally committed as revision 9155 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-30 09:32:25 +00:00
Zuxy Meng
663deb54af Remove incorrect comment; MMX2 is preferred over 3DNow! on Athlon
Originally committed as revision 9079 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-20 05:07:44 +00:00
Zuxy Meng
038bfcf9d6 3DNow! and SSSE3 optimization to QNS DSP functions; use pmulhrw/pmulhrsw instead of pmulhw
Originally committed as revision 9053 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-18 08:18:56 +00:00
Aurelien Jacobs
5b0b7054b4 better separation of vp3dsp functions from dsputil_mmx.c
Originally committed as revision 9039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-16 23:23:45 +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
Panagiotis Issaris
9b5dc86746 Make vp3dsp*.c compilation optional.
Originally committed as revision 9025 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-14 14:28:13 +00:00
Reimar Döffinger
e36d79c837 Change some leftover __attribute__((unused)) and __attribute__((used)) to
attribute_unused and attribute_used respectively to ease compiling on non-gcc.

Originally committed as revision 9024 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-14 14:07:50 +00:00
Zuxy Meng
25e4f8aaee Faster SSE FFT/MDCT, patch by Zuxy Meng %zuxy P meng A gmail P com%
unrolls some loops, utilizing all 8 xmm registers. fft-test
shows ~10% speed up in (I)FFT and ~8% speed up in (I)MDCT on Dothan

Originally committed as revision 9017 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-13 16:32:32 +00:00
Loren Merritt
ff506a906e sse2 & ssse3 versions of dct_quantize.
core2: mmx2=154 sse2=73 ssse3=66 (cycles)
k8: mmx2=179 sse2=149
p4: mmx2=284 sse2=194

Originally committed as revision 9003 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 05:55:09 +00:00
Loren Merritt
1edbfe1994 factor sum_abs_dctelem out of dct_sad, and simd it.
sum_abs_dctelem_* alone:
core2: c=186 mmx2=39 sse2=21 ssse3=13 (cycles)
k8: c=163 mmx2=33 sse2=31
p4: c=370 mmx2=60 sse2=60
 dct_sad including sum_abs_dctelem_*:
core2: c=405 mmx2=258 sse2=240 ssse3=232
k8: c=624 mmx2=394 sse2=392
p4: c=849 mmx2=556 sse2=556

Originally committed as revision 9001 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 02:41:25 +00:00
Loren Merritt
561f940c03 sse2 & ssse3 versions of hadamard. unroll and inline diff_pixels.
core2: before mmx2=193 cycles. after mmx2=174 sse2=122 ssse3=115 (cycles).
k8: before mmx2=205. after mmx2=184 sse2=180.
p4: before mmx2=342. after mmx2=314 sse2=309.

Originally committed as revision 9000 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-12 01:16:06 +00:00
Loren Merritt
ba53071acb 10l, r8991 broke mmx1 sad
Originally committed as revision 8993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-11 03:29:06 +00:00
Loren Merritt
72946825fa sse2 version of fullpel sad.
16% faster on core2, 5% faster on p4. 10% slower (and thus disabled) on k8.

Originally committed as revision 8992 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-11 01:11:45 +00:00
Loren Merritt
164d75ebf3 tweak mmx2 sad.
40% faster on core2, 18% faster on k8, 5% faster on p4.

Originally committed as revision 8991 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-11 00:45:07 +00:00
Loren Merritt
eca3810e31 tweak mmx2 sad.
6% faster on core2 and k8, no change on p4.

Originally committed as revision 8984 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-10 22:24:19 +00:00
Loren Merritt
7c3a9fe2a3 sse2 version of fdct_col.
k8: 72->61 cycles, core2: 51->26 cycles.

Originally committed as revision 8966 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-10 03:13:41 +00:00
Loren Merritt
5adf43e47e cosmetics: remove code duplication in hadamard8_diff_mmx
Originally committed as revision 8946 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-09 01:46:33 +00:00
Loren Merritt
bba5293bb7 cosmetics: remove duplicate transpose macro
Originally committed as revision 8939 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-05-08 17:55:56 +00:00
Reimar Döffinger
a1ce61108b Fix parts missed in clip -> av_clip rename
Originally committed as revision 8760 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-19 16:12:06 +00:00
Diego Biurrun
fe0372296a typos
Originally committed as revision 8642 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-07 14:10:02 +00:00
Loren Merritt
5900637219 mmx 16-bit ssd. 2.3x faster svq1 encoding.
Originally committed as revision 8559 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-30 19:15:31 +00:00
Diego Biurrun
d42f88025a Fix wrong conditional, Snow decoding, not encoding, was SIMD-accelerated.
Originally committed as revision 8116 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-24 11:58:52 +00:00
Michael Niedermayer
58e31fb1d5 reorder a few more paddws to reduce dependancy chains
chroma mc4 put 2480 -> 2460 dezicyles on duron

Originally committed as revision 8098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-23 15:44:56 +00:00
Michael Niedermayer
b4fe97696c reorder paddws to reduce dependancy chain
put_h264_chroma_mc2_mmx2() 927 -> 902 dezicyles on duron

Originally committed as revision 8097 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-23 15:28:35 +00:00
Michael Niedermayer
0c67082e02 shortening dependancy chain in chroma mc2
Originally committed as revision 8095 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-23 15:03:30 +00:00
Michael Niedermayer
af26516261 remove now wrong comment
Originally committed as revision 8094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-23 14:29:59 +00:00
Michael Niedermayer
61240ae556 fix chroma mc2 bug, this is based on a patch by (Oleg Metelitsa oleg hitron co kr)
and does slow the mc2 chroma put down, avg interrestingly seems unaffected speedwise on duron
this of course should be rather done in a way which doesnt slow it down but its better a few %
slower but correct then incorrect

Originally committed as revision 8093 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-23 14:29:13 +00:00
Michael Niedermayer
470d2d03cc gcc 2.95 fix
Originally committed as revision 8059 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-22 00:04:36 +00:00
Måns Rullgård
459022f504 fix for x86-64
Originally committed as revision 8022 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-18 20:00:05 +00:00
Michael Niedermayer
b21e0b6dfc rewrite H264_CHROMA_MC4_TMPL (20% faster)
Originally committed as revision 8012 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-17 23:43:02 +00:00
Michael Niedermayer
2a115873af add a few asserts to ensure alignment
Originally committed as revision 7994 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:22:53 +00:00
Michael Niedermayer
00e210ddbb prevent h.264 MC related functions from being inlined (yes this is much faster the code just doesnt fit in the code cache otherwise)
Originally committed as revision 7993 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-16 21:21:07 +00:00
Reimar Döffinger
392b76ca93 Minor AMD64 compilation fix
Originally committed as revision 7907 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-10 13:33:08 +00:00
Michael Niedermayer
9bc0d3ef3e maybe fix x86_64 (untested)
Originally committed as revision 7906 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-10 03:56:49 +00:00
Michael Niedermayer
7c4fd7eb0c factor out common subexprssion (gcc of course is too stupid to do this ...)
5% faster avg_h264_chroma_mc2_mmx2()
10% faster put_h264_chroma_mc2_mmx2()

Originally committed as revision 7898 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-09 12:37:38 +00:00
Michael Niedermayer
9301a0b4a9 merge asm fragments in H264_CHROMA_MC2_TMPL()
10% faster avg_h264_chroma_mc2_mmx2()
5% faster put_h264_chroma_mc2_mmx2()

Originally committed as revision 7897 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-09 12:24:22 +00:00
Panagiotis Issaris
9dd6c80453 Add the const specifier as needed to reduce the number of warnings.
Originally committed as revision 7764 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-30 10:31:34 +00:00
Diego Biurrun
9688979c51 Fix some more license headers.
Originally committed as revision 7637 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-22 01:16:42 +00:00
Guillaume Poirier
5a5c770d5a Add SSSE3 (Core2 aka Conroe/Merom/Woodcrester new instructions) detection
Originally committed as revision 7332 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-18 22:43:09 +00:00
Måns Rullgård
849f10351d rename always_inline to av_always_inline and move to common.h
Originally committed as revision 7256 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-12-08 00:35:08 +00:00
Måns Rullgård
486497e07b revert bad checkin
Originally committed as revision 7044 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:18:09 +00:00
Måns Rullgård
be6ed6fff4 move some CFLAGS settings away from config.* writing section
Originally committed as revision 7043 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-14 03:12:29 +00:00
Måns Rullgård
7466ed2f02 zigzag_direct_noperm doesn't exist, remove declaration
Originally committed as revision 6998 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 23:35:49 +00:00
Måns Rullgård
36cd306907 rename inverse -> ff_inverse
Originally committed as revision 6990 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 18:49:36 +00:00
Måns Rullgård
bb54f6ab62 adding more static keywords
Originally committed as revision 6976 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-12 03:34:12 +00:00
Michael Niedermayer
079e61db5d ensure alignment (no speed change)
Originally committed as revision 6891 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 16:54:05 +00:00
Michael Niedermayer
f5a9e8f33d merging mov & and (no speedchange)
Originally committed as revision 6889 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 16:02:18 +00:00
Michael Niedermayer
e80cf125a7 2 instructions less (same speed)
Originally committed as revision 6888 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 15:40:57 +00:00
Michael Niedermayer
9347118237 comment about failed optimization
Originally committed as revision 6887 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 15:17:36 +00:00
Michael Niedermayer
38cfdc83f0 move luma tc0 related init into asm
5% faster filter_mb_fast() on P3

Originally committed as revision 6884 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 14:28:30 +00:00
Michael Niedermayer
25225c3773 2 instructions less in h264_loop_filter_luma_mmx2()
Originally committed as revision 6882 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 12:07:53 +00:00
Michael Niedermayer
bda2203d56 preempt possible overflow
Originally committed as revision 6881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 11:07:35 +00:00
Michael Niedermayer
5a1553dee3 1 instruction less
Originally committed as revision 6880 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 09:59:15 +00:00
Michael Niedermayer
e9f1885c21 optimize H264_DEBLOCK_P0_Q0
2.5% faster filter_mb_fast() on P3

Originally committed as revision 6877 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-03 02:03:56 +00:00
Diego Biurrun
7c428ea681 Put libmpeg2 IDCT functions under CONFIG_GPL, fixes link failure
with --disable-opts.

Originally committed as revision 6691 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-14 17:04:50 +00:00
Diego Biurrun
c26abfa541 Rename ABS macro to FFABS.
Originally committed as revision 6666 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-11 23:17:58 +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
ade6e7f3ae Compilation fix, printf gets redefined to please_use_av_log.
Originally committed as revision 6574 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-07 11:30:24 +00:00
Diego Biurrun
0eb59ddba4 Switch idct_mmx_xvid.c from GPL to LGPL as permitted by the
author, Peter Ross (pross xvid org).

Originally committed as revision 6557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-05 00:23:24 +00:00
Loren Merritt
2833fc4646 approximate qpel functions: sacrifice some quality for some decoding speed. enabled on B-frames with -lavdopts fast.
Originally committed as revision 6412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-10-01 21:25:17 +00:00
Måns Rullgård
62bb489b13 add some #ifdef CONFIG_ENCODERS/DECODERS
Originally committed as revision 6356 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-27 19:54:07 +00:00
Loren Merritt
a4eb118a41 cosmetics (indentation)
Originally committed as revision 6313 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-21 17:43:09 +00:00
Loren Merritt
f469094c9b tweak ff_imdct_calc_3dn2
Originally committed as revision 6312 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-21 17:42:23 +00:00
Loren Merritt
ebbafcb454 sse implementation of imdct.
patch mostly by Zuxy Meng (zuxy dot meng at gmail dot com)

Originally committed as revision 6311 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-21 16:37:39 +00:00
Luca Barbato
99aed7c8fc New single instruction math operation header
Originally committed as revision 6291 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-19 22:22:29 +00:00
Aurelien Jacobs
2a2311bee3 disable vp3 mmx idct for theora files to avoid artifacts
(see theora-a4_v6-k250-s0_2.ogg)

Originally committed as revision 6253 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-14 22:13:23 +00:00
Diego Biurrun
7f889a76ad Remove the LGPL exception clause as discussed on ffmpeg-devel
and move the dependent code under CONFIG_GPL.

Originally committed as revision 6248 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-14 00:38:03 +00:00
Aurelien Jacobs
1dac8fea05 Enables back the mmx/sse optimized version of the vp3 idct.
It generates different md5sum than the reference C implementation,
but no visual difference, so enabled only when bitexact is not set.

Originally committed as revision 6241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-12 20:58:17 +00:00
Diego Biurrun
04d7f60143 Add official LGPL license headers to the files that were missing them.
Originally committed as revision 6219 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-10 14:02:42 +00:00
Måns Rullgård
0e176c3eb5 remove redundant declarations
Originally committed as revision 6153 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-09-02 23:10:28 +00:00