diff options
author | Michael Roitzsch <mroi@users.sourceforge.net> | 2004-07-21 14:38:29 +0000 |
---|---|---|
committer | Michael Roitzsch <mroi@users.sourceforge.net> | 2004-07-21 14:38:29 +0000 |
commit | 2e73a5e69f0227f15c6049ef805a9b8c20166e2b (patch) | |
tree | a76597e387b3748bb06290e7980e432711d72670 /src/post/goom/mmx.h | |
parent | 5ef0b5f10d0ee154a8add83c7c19d8557898226f (diff) | |
download | xine-lib-2e73a5e69f0227f15c6049ef805a9b8c20166e2b.tar.gz xine-lib-2e73a5e69f0227f15c6049ef805a9b8c20166e2b.tar.bz2 |
new goom2k4-dev18 includes almost all of my warning fixes
(the goom team is quite fast in applying my patches :) )
some files are still slightly patched from the release version, but I will
get this sorted out so we will soon use a completely unmodified version
of goom
it compiles almost warningless now (the remaining warnings are introduced by
lex/yacc and I plan to simply ignore them)
the Makefile.am distclean-hack is also obsolete now, since the offending
files have been renamed
CVS patchset: 6828
CVS date: 2004/07/21 14:38:29
Diffstat (limited to 'src/post/goom/mmx.h')
-rwxr-xr-x | src/post/goom/mmx.h | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/post/goom/mmx.h b/src/post/goom/mmx.h index fe095de12..53c1cc5d9 100755 --- a/src/post/goom/mmx.h +++ b/src/post/goom/mmx.h @@ -27,6 +27,8 @@ #ifndef _MMX_H #define _MMX_H +#include "goom_graphic.h" + /* Warning: at this writing, the version of GAS packaged with most Linux distributions does not handle the parallel AND operation mnemonic correctly. If the @@ -58,7 +60,7 @@ typedef union { /* Function to test if multimedia instructions are supported... */ -inline extern int +static int mm_support(void) { /* Returns 1 if MMX instructions are supported, @@ -223,13 +225,25 @@ mm_support(void) /* Function to test if mmx instructions are supported... */ -inline extern int +static inline int mmx_ok(void) { /* Returns 1 if MMX instructions are supported, 0 otherwise */ return ( mm_support() & 0x1 ); } +int mmx_supported (void); +int xmmx_supported (void); + + +/* MMX optimized implementations */ +void draw_line_mmx (Pixel *data, int x1, int y1, int x2, int y2, int col, int screenx, int screeny); +void draw_line_xmmx (Pixel *data, int x1, int y1, int x2, int y2, int col, int screenx, int screeny); +void zoom_filter_mmx (int prevX, int prevY, Pixel *expix1, Pixel *expix2, + int *brutS, int *brutD, int buffratio, int precalCoef[16][16]); +void zoom_filter_xmmx (int prevX, int prevY, Pixel *expix1, Pixel *expix2, + int *lbruS, int *lbruD, int buffratio, int precalCoef[16][16]); + /* Helper functions for the instruction macros that follow... (note that memory-to-register, m2r, instructions are nearly |