libavcodec/x86/dct32_sse.c File Reference

#include <stdint.h>
#include "libavutil/x86_cpu.h"
#include "libavutil/mem.h"
#include "libavcodec/dsputil.h"
#include "fft.h"

Go to the source code of this file.

Defines

#define BUTTERFLY(a, b, c, tmp)
#define BUTTERFLY0(val, mask, cos, tmp, shuf)
 * Same as BUTTERFLY when vectors a and b overlap */
#define BUTTERFLY2(val, mask, cos, tmp)   BUTTERFLY0(val, mask, cos, tmp, $0x1b)
#define BUTTERFLY3(val, mask, cos, tmp)   BUTTERFLY0(val, mask, cos, tmp, $0xb1)

Functions

 DECLARE_ALIGNED (16, static const float, b1)[]
 DECLARE_ALIGNED (16, static const int32_t, smask)[4]
void ff_dct32_float_sse (FFTSample *out, const FFTSample *in)


Define Documentation

#define BUTTERFLY ( a,
b,
c,
tmp   ) 

Value:

"movaps  %%" #a    ", %%" #tmp  "             \n\t" \
    "subps   %%" #b    ", %%" #a    "             \n\t" \
    "addps   %%" #tmp  ", %%" #b    "             \n\t" \
    "mulps     " #c    ", %%" #a    "             \n\t"

Definition at line 46 of file dct32_sse.c.

Referenced by ff_dct32_float_sse().

#define BUTTERFLY0 ( val,
mask,
cos,
tmp,
shuf   ) 

Value:

"movaps  %%" #val  ", %%" #tmp  "             \n\t"                  \
    "shufps    " #shuf ", %%" #val  ",%%" #val "  \n\t"                  \
    "xorps   %%" #mask ", %%" #tmp  "             \n\t" /* flip signs */ \
    "addps   %%" #tmp  ", %%" #val  "             \n\t"                  \
    "mulps   %%" #cos  ", %%" #val  "             \n\t"
* Same as BUTTERFLY when vectors a and b overlap */

Definition at line 53 of file dct32_sse.c.

#define BUTTERFLY2 ( val,
mask,
cos,
tmp   )     BUTTERFLY0(val, mask, cos, tmp, $0x1b)

Definition at line 60 of file dct32_sse.c.

#define BUTTERFLY3 ( val,
mask,
cos,
tmp   )     BUTTERFLY0(val, mask, cos, tmp, $0xb1)

Definition at line 61 of file dct32_sse.c.

Referenced by ff_dct32_float_sse().


Function Documentation

DECLARE_ALIGNED ( 16  ,
static const   int32_t,
smask   
)

DECLARE_ALIGNED ( 16  ,
static const   float,
b1   
)

void ff_dct32_float_sse ( FFTSample out,
const FFTSample in 
)

Definition at line 63 of file dct32_sse.c.


Generated on Mon May 2 19:50:24 2011 for FFmpeg by  doxygen 1.5.6