mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Cygwin's mangling by Felix Buenemann <atmosfear@users.sourceforge.net>
Originally committed as revision 273 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
7f56a52795
commit
4bdd9157cc
@ -4,7 +4,7 @@
|
||||
#define FFMPEG_VERSION_INT 0x000406
|
||||
#define FFMPEG_VERSION "0.4.6"
|
||||
|
||||
#if defined(WIN32) && !defined(__MINGW32__)
|
||||
#if defined(WIN32) && !defined(__MINGW32__) && !defined(__CYGWIN__)
|
||||
#define CONFIG_WIN32
|
||||
#endif
|
||||
|
||||
|
@ -18,6 +18,7 @@
|
||||
|
||||
#include <inttypes.h>
|
||||
#include "../dsputil.h"
|
||||
#include "../mangle.h"
|
||||
|
||||
#define C0 23170 //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5
|
||||
#define C1 22725 //cos(i*M_PI/16)*sqrt(2)*(1<<14) + 0.5
|
||||
@ -345,7 +346,7 @@ static inline void idct(int16_t *block)
|
||||
"movq " #src4 ", %%mm1 \n\t" /* R6 R2 r6 r2 */\
|
||||
"movq " #src1 ", %%mm2 \n\t" /* R3 R1 r3 r1 */\
|
||||
"movq " #src5 ", %%mm3 \n\t" /* R7 R5 r7 r5 */\
|
||||
"movq wm1010, %%mm4 \n\t"\
|
||||
"movq "MANGLE(wm1010)", %%mm4 \n\t"\
|
||||
"pand %%mm0, %%mm4 \n\t"\
|
||||
"por %%mm1, %%mm4 \n\t"\
|
||||
"por %%mm2, %%mm4 \n\t"\
|
||||
@ -419,7 +420,7 @@ static inline void idct(int16_t *block)
|
||||
"jmp 2f \n\t"\
|
||||
"1: \n\t"\
|
||||
"pslld $16, %%mm0 \n\t"\
|
||||
"#paddd d40000, %%mm0 \n\t"\
|
||||
"#paddd "MANGLE(d40000)", %%mm0 \n\t"\
|
||||
"psrad $13, %%mm0 \n\t"\
|
||||
"packssdw %%mm0, %%mm0 \n\t"\
|
||||
"movq %%mm0, " #dst " \n\t"\
|
||||
@ -453,7 +454,7 @@ COL_IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
|
||||
"movq " #src4 ", %%mm1 \n\t" /* R6 R2 r6 r2 */\
|
||||
"movq " #src1 ", %%mm2 \n\t" /* R3 R1 r3 r1 */\
|
||||
"movq " #src5 ", %%mm3 \n\t" /* R7 R5 r7 r5 */\
|
||||
"movq wm1010, %%mm4 \n\t"\
|
||||
"movq "MANGLE(wm1010)", %%mm4 \n\t"\
|
||||
"pand %%mm0, %%mm4 \n\t"\
|
||||
"por %%mm1, %%mm4 \n\t"\
|
||||
"por %%mm2, %%mm4 \n\t"\
|
||||
@ -527,7 +528,7 @@ COL_IDCT( 24(%1), 88(%1), 56(%1), 120(%1), 12(%0),/nop, 20)
|
||||
"jmp 2f \n\t"\
|
||||
"1: \n\t"\
|
||||
"pslld $16, %%mm0 \n\t"\
|
||||
"paddd d40000, %%mm0 \n\t"\
|
||||
"paddd "MANGLE(d40000)", %%mm0 \n\t"\
|
||||
"psrad $13, %%mm0 \n\t"\
|
||||
"packssdw %%mm0, %%mm0 \n\t"\
|
||||
"movq %%mm0, " #dst " \n\t"\
|
||||
|
2
libavcodec/mangle.h
Normal file
2
libavcodec/mangle.h
Normal file
@ -0,0 +1,2 @@
|
||||
#include "../mangle.h"
|
||||
|
18
mangle.h
Normal file
18
mangle.h
Normal file
@ -0,0 +1,18 @@
|
||||
/* mangle.h - This file has some CPP macros to deal with different symbol
|
||||
* mangling across binary formats.
|
||||
* (c)2002 by Felix Buenemann <atmosfear at users.sourceforge.net>
|
||||
* File licensed under the GPL, see http://www.fsf.org/ for more info.
|
||||
*/
|
||||
|
||||
#ifndef __MANGLE_H
|
||||
#define __MANGLE_H
|
||||
|
||||
/* Feel free to add more to the list, eg. a.out IMO */
|
||||
#if defined(__CYGWIN__)
|
||||
#define MANGLE(a) "_" #a
|
||||
#else
|
||||
#define MANGLE(a) #a
|
||||
#endif
|
||||
|
||||
#endif /* !__MANGLE_H */
|
||||
|
Loading…
Reference in New Issue
Block a user