#include "libavcodec/dsputil.h"
Go to the source code of this file.
Defines | |
#define | INIT_IDCT |
#define | LOADSCALE(in) |
#define | LOAD(in) |
#define | TRANSPOSE |
#define | IDCT4ROWS |
#define | STOREROWS(out) |
#define | SCALEROWS |
#define | PUTPIXELSCLAMPED(dest) |
#define | ADDPIXELSCLAMPED(dest) |
#define | ADDROUNDER |
#define | ADDROUNDER "fpadd16 %%f28, %%f46, %%f28 \n\t" |
#define | ADDROUNDER |
#define | ADDROUNDER "fpadd16 %%f28, %%f46, %%f28 \n\t" |
Functions | |
static const | DECLARE_ALIGNED_8 (int16_t, coeffs[28]) |
static const | DECLARE_ALIGNED_8 (uint16_t, scale[4]) |
static const | DECLARE_ALIGNED_8 (uint16_t, rounder[4]) |
static const | DECLARE_ALIGNED_8 (uint16_t, expand[4]) |
void | ff_simple_idct_vis (DCTELEM *data) |
void | ff_simple_idct_put_vis (uint8_t *dest, int line_size, DCTELEM *data) |
void | ff_simple_idct_add_vis (uint8_t *dest, int line_size, DCTELEM *data) |
#define ADDPIXELSCLAMPED | ( | dest | ) |
#define ADDROUNDER "fpadd16 %%f28, %%f46, %%f28 \n\t" |
#define ADDROUNDER |
#define ADDROUNDER "fpadd16 %%f28, %%f46, %%f28 \n\t" |
#define ADDROUNDER |
#define IDCT4ROWS |
Definition at line 140 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
#define INIT_IDCT |
Value:
"ldd [%1], %%f32 \n\t"\ "ldd [%1+8], %%f34 \n\t"\ "ldd [%1+16], %%f36 \n\t"\ "ldd [%1+24], %%f38 \n\t"\ "ldd [%1+32], %%f40 \n\t"\ "ldd [%1+40], %%f42 \n\t"\ "ldd [%1+48], %%f44 \n\t"\ "ldd [%0], %%f46 \n\t"\ "fzero %%f62 \n\t"\
Definition at line 46 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
#define LOAD | ( | in | ) |
Value:
"ldd [" in "], %%f16 \n\t"\ "ldd [" in "+8], %%f18 \n\t"\ "ldd [" in "+16], %%f20 \n\t"\ "ldd [" in "+24], %%f22 \n\t"\ "ldd [" in "+32], %%f24 \n\t"\ "ldd [" in "+40], %%f26 \n\t"\ "ldd [" in "+48], %%f28 \n\t"\ "ldd [" in "+56], %%f30 \n\t"\
Definition at line 102 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
#define LOADSCALE | ( | in | ) |
Definition at line 57 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
#define PUTPIXELSCLAMPED | ( | dest | ) |
Value:
"fpack16 %%f48, %%f14 \n\t"\ "fpack16 %%f50, %%f12 \n\t"\ "fpack16 %%f16, %%f0 \n\t"\ "fpack16 %%f20, %%f2 \n\t"\ "fpack16 %%f24, %%f4 \n\t"\ "fpack16 %%f28, %%f6 \n\t"\ "fpack16 %%f54, %%f8 \n\t"\ "fpack16 %%f52, %%f10 \n\t"\ "st %%f0, [%3+" dest "] \n\t"\ "st %%f2, [%5+" dest "] \n\t"\ "st %%f4, [%6+" dest "] \n\t"\ "st %%f6, [%7+" dest "] \n\t"\ "st %%f8, [%8+" dest "] \n\t"\ "st %%f10, [%9+" dest "] \n\t"\ "st %%f12, [%10+" dest "] \n\t"\ "st %%f14, [%11+" dest "] \n\t"\
Definition at line 325 of file simple_idct_vis.c.
Referenced by ff_simple_idct_put_vis().
#define SCALEROWS |
Value:
"fmul8sux16 %%f46, %%f48, %%f48 \n\t"\ "fmul8sux16 %%f46, %%f50, %%f50 \n\t"\ "fmul8sux16 %%f46, %%f52, %%f52 \n\t"\ "fmul8sux16 %%f46, %%f54, %%f54 \n\t"\ "fmul8sux16 %%f46, %%f16, %%f16 \n\t"\ "fmul8sux16 %%f46, %%f20, %%f20 \n\t"\ "fmul8sux16 %%f46, %%f24, %%f24 \n\t"\ "fmul8sux16 %%f46, %%f28, %%f28 \n\t"\
Definition at line 315 of file simple_idct_vis.c.
Referenced by ff_simple_idct_vis().
#define STOREROWS | ( | out | ) |
Value:
"std %%f48, [" out "+112] \n\t"\ "std %%f50, [" out "+96] \n\t"\ "std %%f52, [" out "+80] \n\t"\ "std %%f54, [" out "+64] \n\t"\ "std %%f16, [" out "] \n\t"\ "std %%f20, [" out "+16] \n\t"\ "std %%f24, [" out "+32] \n\t"\ "std %%f28, [" out "+48] \n\t"\
Definition at line 305 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
#define TRANSPOSE |
Value:
"fpmerge %%f16, %%f24, %%f0 \n\t"\ "fpmerge %%f20, %%f28, %%f2 \n\t"\ "fpmerge %%f17, %%f25, %%f4 \n\t"\ "fpmerge %%f21, %%f29, %%f6 \n\t"\ "fpmerge %%f18, %%f26, %%f8 \n\t"\ "fpmerge %%f22, %%f30, %%f10 \n\t"\ "fpmerge %%f19, %%f27, %%f12 \n\t"\ "fpmerge %%f23, %%f31, %%f14 \n\t"\ \ "fpmerge %%f0, %%f2, %%f16 \n\t"\ "fpmerge %%f1, %%f3, %%f18 \n\t"\ "fpmerge %%f4, %%f6, %%f20 \n\t"\ "fpmerge %%f5, %%f7, %%f22 \n\t"\ "fpmerge %%f8, %%f10, %%f24 \n\t"\ "fpmerge %%f9, %%f11, %%f26 \n\t"\ "fpmerge %%f12, %%f14, %%f28 \n\t"\ "fpmerge %%f13, %%f15, %%f30 \n\t"\ \ "fpmerge %%f16, %%f17, %%f0 \n\t"\ "fpmerge %%f18, %%f19, %%f2 \n\t"\ "fpmerge %%f20, %%f21, %%f4 \n\t"\ "fpmerge %%f22, %%f23, %%f6 \n\t"\ "fpmerge %%f24, %%f25, %%f8 \n\t"\ "fpmerge %%f26, %%f27, %%f10 \n\t"\ "fpmerge %%f28, %%f29, %%f12 \n\t"\ "fpmerge %%f30, %%f31, %%f14 \n\t"\
Definition at line 112 of file simple_idct_vis.c.
Referenced by ff_simple_idct_add_vis(), ff_simple_idct_put_vis(), and ff_simple_idct_vis().
static const DECLARE_ALIGNED_8 | ( | uint16_t | , | |
expand | [4] | |||
) | [static] |
static const DECLARE_ALIGNED_8 | ( | uint16_t | , | |
rounder | [4] | |||
) | [static] |
static const DECLARE_ALIGNED_8 | ( | uint16_t | , | |
scale | [4] | |||
) | [static] |
static const DECLARE_ALIGNED_8 | ( | int16_t | , | |
coeffs | [28] | |||
) | [static] |
void ff_simple_idct_add_vis | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | data | |||
) |
void ff_simple_idct_put_vis | ( | uint8_t * | dest, | |
int | line_size, | |||
DCTELEM * | data | |||
) |
void ff_simple_idct_vis | ( | DCTELEM * | data | ) |