FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
diracdsp_mmx.c File Reference
#include "libavutil/x86/cpu.h"
#include "dsputil_x86.h"
#include "diracdsp_mmx.h"
#include "fpel.h"

Go to the source code of this file.

Macros

#define HPEL_FILTER(MMSIZE, EXT)
 
#define PIXFUNC(PFX, IDX, EXT)
 
#define DIRAC_PIXOP(OPNAME2, OPNAME, EXT)
 

Functions

void ff_put_rect_clamped_mmx (uint8_t *dst, int dst_stride, const int16_t *src, int src_stride, int width, int height)
 
void ff_put_rect_clamped_sse2 (uint8_t *dst, int dst_stride, const int16_t *src, int src_stride, int width, int height)
 
void ff_put_signed_rect_clamped_mmx (uint8_t *dst, int dst_stride, const int16_t *src, int src_stride, int width, int height)
 
void ff_put_signed_rect_clamped_sse2 (uint8_t *dst, int dst_stride, const int16_t *src, int src_stride, int width, int height)
 
void ff_put_dirac_pixels16_sse2 (uint8_t *dst, const uint8_t *src[5], int stride, int h)
 
void ff_avg_dirac_pixels16_sse2 (uint8_t *dst, const uint8_t *src[5], int stride, int h)
 
void ff_put_dirac_pixels32_sse2 (uint8_t *dst, const uint8_t *src[5], int stride, int h)
 
void ff_avg_dirac_pixels32_sse2 (uint8_t *dst, const uint8_t *src[5], int stride, int h)
 
void ff_diracdsp_init_mmx (DiracDSPContext *c)
 

Macro Definition Documentation

#define HPEL_FILTER (   MMSIZE,
  EXT 
)
Value:
void ff_dirac_hpel_filter_v_ ## EXT(uint8_t *, const uint8_t *, int, int); \
void ff_dirac_hpel_filter_h_ ## EXT(uint8_t *, const uint8_t *, int); \
\
static void dirac_hpel_filter_ ## EXT(uint8_t *dsth, uint8_t *dstv, uint8_t *dstc, \
const uint8_t *src, int stride, int width, int height) \
{ \
while( height-- ) \
{ \
ff_dirac_hpel_filter_v_ ## EXT(dstv-MMSIZE, src-MMSIZE, stride, width+MMSIZE+5); \
ff_dirac_hpel_filter_h_ ## EXT(dsth, src, width); \
ff_dirac_hpel_filter_h_ ## EXT(dstc, dstv, width); \
\
dsth += stride; \
dstv += stride; \
dstc += stride; \
src += stride; \
} \
}

Definition at line 31 of file diracdsp_mmx.c.

#define PIXFUNC (   PFX,
  IDX,
  EXT 
)
Value:
/*MMXDISABLEDc->PFX ## _dirac_pixels_tab[0][IDX] = ff_ ## PFX ## _dirac_pixels8_ ## EXT;*/ \
c->PFX ## _dirac_pixels_tab[1][IDX] = ff_ ## PFX ## _dirac_pixels16_ ## EXT; \
c->PFX ## _dirac_pixels_tab[2][IDX] = ff_ ## PFX ## _dirac_pixels32_ ## EXT

Definition at line 56 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init_mmx().

#define DIRAC_PIXOP (   OPNAME2,
  OPNAME,
  EXT 
)
Value:
void ff_ ## OPNAME2 ## _dirac_pixels8_ ## EXT(uint8_t *dst, const uint8_t *src[5], int stride, int h)\
{\
if (h&3)\
ff_ ## OPNAME2 ## _dirac_pixels8_c(dst, src, stride, h);\
else\
OPNAME ## _pixels8_ ## EXT(dst, src[0], stride, h);\
}\
void ff_ ## OPNAME2 ## _dirac_pixels16_ ## EXT(uint8_t *dst, const uint8_t *src[5], int stride, int h)\
{\
if (h&3)\
ff_ ## OPNAME2 ## _dirac_pixels16_c(dst, src, stride, h);\
else\
OPNAME ## _pixels16_ ## EXT(dst, src[0], stride, h);\
}\
void ff_ ## OPNAME2 ## _dirac_pixels32_ ## EXT(uint8_t *dst, const uint8_t *src[5], int stride, int h)\
{\
if (h&3) {\
ff_ ## OPNAME2 ## _dirac_pixels32_c(dst, src, stride, h);\
} else {\
OPNAME ## _pixels16_ ## EXT(dst , src[0] , stride, h);\
OPNAME ## _pixels16_ ## EXT(dst+16, src[0]+16, stride, h);\
}\
}

Definition at line 61 of file diracdsp_mmx.c.

Function Documentation

void ff_put_rect_clamped_mmx ( uint8_t dst,
int  dst_stride,
const int16_t *  src,
int  src_stride,
int  width,
int  height 
)
void ff_put_rect_clamped_sse2 ( uint8_t dst,
int  dst_stride,
const int16_t *  src,
int  src_stride,
int  width,
int  height 
)
void ff_put_signed_rect_clamped_mmx ( uint8_t dst,
int  dst_stride,
const int16_t *  src,
int  src_stride,
int  width,
int  height 
)

Referenced by ff_diracdsp_init_mmx().

void ff_put_signed_rect_clamped_sse2 ( uint8_t dst,
int  dst_stride,
const int16_t *  src,
int  src_stride,
int  width,
int  height 
)

Referenced by ff_diracdsp_init_mmx().

void ff_put_dirac_pixels16_sse2 ( uint8_t dst,
const uint8_t src[5],
int  stride,
int  h 
)

Definition at line 90 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init_mmx().

void ff_avg_dirac_pixels16_sse2 ( uint8_t dst,
const uint8_t src[5],
int  stride,
int  h 
)

Definition at line 97 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init_mmx().

void ff_put_dirac_pixels32_sse2 ( uint8_t dst,
const uint8_t src[5],
int  stride,
int  h 
)

Definition at line 104 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init_mmx().

void ff_avg_dirac_pixels32_sse2 ( uint8_t dst,
const uint8_t src[5],
int  stride,
int  h 
)

Definition at line 113 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init_mmx().

void ff_diracdsp_init_mmx ( DiracDSPContext c)

Definition at line 123 of file diracdsp_mmx.c.

Referenced by ff_diracdsp_init().