#include "libavutil/common.h"
#include "libavcodec/dsputil.h"
#include "mmx.h"
Go to the source code of this file.
Defines | |
#define | ATTR_ALIGN(align) __attribute__ ((__aligned__ (align))) |
#define | ROW_SHIFT 11 |
#define | COL_SHIFT 6 |
#define | round(bias) ((int)(((bias)+0.5) * (1<<ROW_SHIFT))) |
#define | rounder(bias) {round (bias), round (bias)} |
#define | mmxext_table(c1, c2, c3, c4, c5, c6, c7) |
#define | mmx_table(c1, c2, c3, c4, c5, c6, c7) |
#define | T1 13036 |
#define | T2 27146 |
#define | T3 43790 |
#define | C4 23170 |
#define | declare_idct(idct, table, idct_row_head, idct_row, idct_row_tail, idct_row_mid) |
Functions | |
static void | mmxext_row_head (int16_t *const row, const int offset, const int16_t *const table) |
static void | mmxext_row (const int16_t *const table, const int32_t *const rounder) |
static void | mmxext_row_tail (int16_t *const row, const int store) |
static void | mmxext_row_mid (int16_t *const row, const int store, const int offset, const int16_t *const table) |
static void | mmx_row_head (int16_t *const row, const int offset, const int16_t *const table) |
static void | mmx_row (const int16_t *const table, const int32_t *const rounder) |
static void | mmx_row_tail (int16_t *const row, const int store) |
static void | mmx_row_mid (int16_t *const row, const int store, const int offset, const int16_t *const table) |
static void | idct_col (int16_t *const col, const int offset) |
static const int32_t rounder0[] | ATTR_ALIGN (8) |
void | ff_mmx_idct (DCTELEM *block) |
void | ff_mmxext_idct (DCTELEM *block) |
void | ff_mmxext_idct (int16_t *const block) |
void | ff_mmx_idct (int16_t *const block) |
#define ATTR_ALIGN | ( | align | ) | __attribute__ ((__aligned__ (align))) |
Definition at line 28 of file idct_mmx.c.
#define C4 23170 |
#define COL_SHIFT 6 |
Definition at line 31 of file idct_mmx.c.
#define declare_idct | ( | idct, | |||
table, | |||||
idct_row_head, | |||||
idct_row, | |||||
idct_row_tail, | |||||
idct_row_mid | ) |
Definition at line 563 of file idct_mmx.c.
#define mmx_table | ( | c1, | |||
c2, | |||||
c3, | |||||
c4, | |||||
c5, | |||||
c6, | |||||
c7 | ) |
#define mmxext_table | ( | c1, | |||
c2, | |||||
c3, | |||||
c4, | |||||
c5, | |||||
c6, | |||||
c7 | ) |
#define round | ( | bias | ) | ((int)(((bias)+0.5) * (1<<ROW_SHIFT))) |
#define rounder | ( | bias | ) | {round (bias), round (bias)} |
Definition at line 34 of file idct_mmx.c.
Referenced by ff_simple_idct_add_vis(), and ff_simple_idct_put_vis().
#define ROW_SHIFT 11 |
Definition at line 30 of file idct_mmx.c.
#define T1 13036 |
Referenced by ff_jpegls_quantize(), and idct_col().
#define T2 27146 |
Referenced by ff_jpegls_quantize(), and idct_col().
#define T3 43790 |
Referenced by ff_jpegls_quantize(), and idct_col().
static const int32_t rounder0 [] ATTR_ALIGN | ( | 8 | ) | [static] |
void ff_mmx_idct | ( | int16_t *const | block | ) |
Definition at line 604 of file idct_mmx.c.
void ff_mmx_idct | ( | DCTELEM * | block | ) |
void ff_mmxext_idct | ( | int16_t *const | block | ) |
Definition at line 601 of file idct_mmx.c.
void ff_mmxext_idct | ( | DCTELEM * | block | ) |
static void idct_col | ( | int16_t *const | col, | |
const int | offset | |||
) | [inline, static] |
Definition at line 395 of file idct_mmx.c.
static void mmx_row | ( | const int16_t *const | table, | |
const int32_t *const | rounder | |||
) | [inline, static] |
Definition at line 223 of file idct_mmx.c.
static void mmx_row_head | ( | int16_t *const | row, | |
const int | offset, | |||
const int16_t *const | table | |||
) | [inline, static] |
Definition at line 203 of file idct_mmx.c.
static void mmx_row_mid | ( | int16_t *const | row, | |
const int | store, | |||
const int | offset, | |||
const int16_t *const | table | |||
) | [inline, static] |
Definition at line 287 of file idct_mmx.c.
static void mmx_row_tail | ( | int16_t *const | row, | |
const int | store | |||
) | [inline, static] |
Definition at line 263 of file idct_mmx.c.
static void mmxext_row | ( | const int16_t *const | table, | |
const int32_t *const | rounder | |||
) | [inline, static] |
Definition at line 105 of file idct_mmx.c.
static void mmxext_row_head | ( | int16_t *const | row, | |
const int | offset, | |||
const int16_t *const | table | |||
) | [inline, static] |
Definition at line 88 of file idct_mmx.c.
static void mmxext_row_mid | ( | int16_t *const | row, | |
const int | store, | |||
const int | offset, | |||
const int16_t *const | table | |||
) | [inline, static] |
Definition at line 163 of file idct_mmx.c.
static void mmxext_row_tail | ( | int16_t *const | row, | |
const int | store | |||
) | [inline, static] |
Definition at line 145 of file idct_mmx.c.