Diego Biurrun
17337f54c0
x86: Split inline and external assembly #ifdefs
2012-08-31 01:53:25 +02:00
Diego Biurrun
cdaec0b240
avfilter: x86: Use more precise compile template names
2012-08-30 18:51:51 +02:00
Loren Merritt
7a1944b907
vf_hqdn3d: x86 asm
...
13% faster on penryn, 16% on sandybridge, 15% on bulldozer
Not simd; a compiler should have generated this, but gcc didn't.
2012-08-26 10:49:14 +00:00
Martin Storsjö
1d9c2dc89a
Don't include common.h from avutil.h
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-15 22:32:06 +03:00
Mans Rullgard
480178a295
x86: yadif: fix asm with suncc
...
Under some circumstances, suncc will use a single register for the
address of all memory operands, inserting lea instructions loading
the correct address prior to each memory operand being used in the
code. In the yadif code, the branch in the asm block bypasses such
an lea instruction, causing an incorrect address to be used in the
following load.
This patch replaces the tmpX arrays with a single array and uses a
register operand to hold its address. Although this prevents using
offsets from the stack pointer to access these locations, the code
still builds as 32-bit PIC even with old compilers.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 14:51:52 +01:00
Mans Rullgard
c318626ce2
x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
...
This puts x86-specific things in the x86/ subdirectory where they
belong.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 00:58:20 +01:00
Diego Biurrun
239fdf1b4a
x86: build: replace mmx2 by mmxext
...
Refactoring mmx2/mmxext YASM code with cpuflags will force renames.
So switching to a consistent naming scheme beforehand is sensible.
The name "mmxext" is more official and widespread and also the name
of the CPU flag, as reported e.g. by the Linux kernel.
2012-08-03 22:51:05 +02:00
Diego Biurrun
d1505db067
x86: yadif: Mark mmxext optimizations as such
...
The yadif mmx optimizations contain the pmaxsw and pmaxub mmxext
instructions, causing sigills on CPUs that do not support mmxext.
2012-07-31 13:54:06 +02:00
Ronald S. Bultje
3124886554
lavfi: place x86 inline assembly under HAVE_INLINE_ASM.
...
This allows compiling this code using compilers that do not understand
gcc-style inline assembly.
2012-07-22 19:44:06 -07:00
Mans Rullgard
fb93e61e2b
x86: lavfi: fix gradfun/yadif build with mmx/sse disabled
...
These functions are defined conditionally so any uses need to have
preprocessor guards.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-03 14:14:13 +01:00
Mans Rullgard
a87b17f328
vf_yadif: move x86 init code to x86/yadif.c
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-02 01:16:37 +01:00
Mans Rullgard
2f0accf103
vf_gradfun: move x86 init code to x86/gradfun.c
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-02 01:16:37 +01:00
Janne Grunau
456d3e4fb5
yadif: specify array size outside DECLARE_ALIGNED
2012-02-09 21:28:37 +01:00
Diego Biurrun
0bba26466f
cosmetics: Delete empty lines at end of file.
2012-02-09 12:26:45 +01:00
Loren Merritt
082768f0b1
vf_gradfun: relicense x86 asm to LGPL
...
Actually I gave permission for LGPL long ago, but the original import
failed to update the license header.
2011-07-04 00:01:47 +00:00
Michael Niedermayer
233ed6b314
Change yadif to not use out of picture lines.
...
Fixes issue2272.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-03 08:46:19 +02: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
Janne Grunau
2c3589bfda
consolidate .gitignore patters into a single file
...
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-18 21:32:05 +01:00
Janne Grunau
348b8218f7
convert svn:ignore properties to .gitignore files
...
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-17 15:50:14 +01:00
Nolan L
d5f187fd33
Add gradfun filter, ported from MPlayer.
...
Patch by Nolan L nol888 <=> gmail >=< com.
See thread:
Subject: [FFmpeg-devel] [PATCH] Port gradfun to libavfilter (GCI)
Date: Mon, 29 Nov 2010 07:18:14 -0500
Originally committed as revision 25942 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-12 17:59:10 +00:00
Baptiste Coudurier
90f1f3bf00
In yadif filter, declare asm constants directly to avoid dependency on libavcodec
...
Originally committed as revision 25895 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-06 00:14:15 +00:00
Baptiste Coudurier
1ef64490e1
yadif sse2/ssse3 optimizations
...
Originally committed as revision 25874 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-12-04 05:23:44 +00:00
İsmail Dönmez
5ef42826d2
yadif: Explicit wordlength for compare. Fixes compile with clang.
...
Patch by İsmail Dönmez: ismail at namtrac dot org
Originally committed as revision 25328 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-10-03 20:01:36 +00:00
Alexander Strange
5ba24e4982
Fix compile on Darwin (FATE). Compile error:
...
yadif.c:226: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
yadif.c:220: error: 'asm' operand has impossible constraints
Patch by Alexander Strange <astrange ithinksw com>.
Originally committed as revision 25251 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-29 12:34:01 +00:00
Aurelien Jacobs
fa6f4ebc08
use a Makefile in x86 subdir
...
Originally committed as revision 25234 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-27 21:50:26 +00:00
Michael Niedermayer
acbac56789
yadif filter, based on stefanos port of my yadif from mplayer.
...
Compared to stefanos, 2 frame output works with ffplay.
Originally committed as revision 25196 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-25 16:43:42 +00:00