#include "libavutil/common.h"#include "libavcodec/dsputil.h"#include "libavutil/x86_cpu.h"#include "dsputil_mmx.h"Go to the source code of this file.
Defines | |
| #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) |
| void | ff_mmxext_idct (int16_t *const block) |
| void | ff_mmx_idct (int16_t *const block) |
Variables | |
| static const int32_t | rounder0 [] |
| static const int32_t | rounder4 [] = rounder (0) |
| static const int32_t | rounder1 [] |
| static const int32_t | rounder7 [] |
| static const int32_t | rounder2 [] |
| static const int32_t | rounder6 [] |
| static const int32_t | rounder3 [] |
| static const int32_t | rounder5 [] |
| #define C4 23170 |
| #define COL_SHIFT 6 |
Definition at line 29 of file idct_mmx.c.
Referenced by idct_col().
| #define declare_idct | ( | idct, | ||
| table, | ||||
| idct_row_head, | ||||
| idct_row, | ||||
| idct_row_tail, | ||||
| idct_row_mid | ||||
| ) |
Definition at line 590 of file idct_mmx.c.
| #define mmx_table | ( | c1, | ||
| c2, | ||||
| c3, | ||||
| c4, | ||||
| c5, | ||||
| c6, | ||||
| c7 | ||||
| ) |
{ c4, c2, c4, c6, \
c4, c6, -c4, -c2, \
c1, c3, c3, -c7, \
c5, c7, -c1, -c5, \
c4, -c6, c4, -c2, \
-c4, c2, c4, -c6, \
c5, -c1, c7, -c5, \
c7, c3, c3, -c1 }
Definition at line 203 of file idct_mmx.c.
| #define mmxext_table | ( | c1, | ||
| c2, | ||||
| c3, | ||||
| c4, | ||||
| c5, | ||||
| c6, | ||||
| c7 | ||||
| ) |
{ c4, c2, -c4, -c2, \
c4, c6, c4, c6, \
c1, c3, -c1, -c5, \
c5, c7, c3, -c7, \
c4, -c6, c4, -c6, \
-c4, c2, c4, -c2, \
c5, -c1, c3, -c1, \
c7, c3, c7, -c5 }
Definition at line 77 of file idct_mmx.c.
| #define round | ( | bias | ) | ((int)(((bias)+0.5) * (1<<ROW_SHIFT))) |
Definition at line 31 of file idct_mmx.c.
Referenced by dequant(), encode_init(), normalize_double(), and vp8_init().
| #define rounder | ( | bias | ) | {round (bias), round (bias)} |
Definition at line 32 of file idct_mmx.c.
| #define ROW_SHIFT 11 |
Definition at line 28 of file idct_mmx.c.
Referenced by mmx_row(), mmx_row_mid(), mmx_row_tail(), mmxext_row(), mmxext_row_mid(), and mmxext_row_tail().
| #define T1 13036 |
Referenced by ff_jpegls_quantize().
| #define T2 27146 |
Referenced by ff_jpegls_quantize(), and sha256_transform().
| #define T3 43790 |
Referenced by ff_jpegls_quantize().
| void ff_mmx_idct | ( | int16_t *const | block | ) |
Definition at line 626 of file idct_mmx.c.
| void ff_mmxext_idct | ( | int16_t *const | block | ) |
Definition at line 625 of file idct_mmx.c.
| static void idct_col | ( | int16_t *const | col, | |
| const int | offset | |||
| ) | [inline, static] |
Definition at line 417 of file idct_mmx.c.
| static void mmx_row | ( | const int16_t *const | table, | |
| const int32_t *const | rounder | |||
| ) | [inline, static] |
Definition at line 235 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 212 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 305 of file idct_mmx.c.
| static void mmx_row_tail | ( | int16_t *const | row, | |
| const int | store | |||
| ) | [inline, static] |
Definition at line 278 of file idct_mmx.c.
| static void mmxext_row | ( | const int16_t *const | table, | |
| const int32_t *const | rounder | |||
| ) | [inline, static] |
Definition at line 106 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 86 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 169 of file idct_mmx.c.
| static void mmxext_row_tail | ( | int16_t *const | row, | |
| const int | store | |||
| ) | [inline, static] |
Definition at line 148 of file idct_mmx.c.
const int32_t rounder0[] [static] |
Definition at line 571 of file idct_mmx.c.
const int32_t rounder1[] [static] |
rounder (1.25683487303)
Definition at line 574 of file idct_mmx.c.
const int32_t rounder2[] [static] |
rounder (0.60355339059)
Definition at line 578 of file idct_mmx.c.
const int32_t rounder3[] [static] |
rounder (0.087788325588)
Definition at line 582 of file idct_mmx.c.
Definition at line 573 of file idct_mmx.c.
const int32_t rounder5[] [static] |
rounder (-0.441341716183)
Definition at line 584 of file idct_mmx.c.
const int32_t rounder6[] [static] |
rounder (-0.25)
Definition at line 580 of file idct_mmx.c.
const int32_t rounder7[] [static] |
rounder (-0.25)
Definition at line 576 of file idct_mmx.c.