#include "libavcodec/dsputil.h"#include "util_altivec.h"#include "types_altivec.h"#include "dsputil_altivec.h"Go to the source code of this file.
Defines | |
| #define | IDCT_START |
| #define | IDCT_1D(ADD, SHIFT) |
| #define | NOP(a) a |
| #define | ADD8(a) vec_add(a, eight) |
| #define | SHIFT4(a) vec_sra(a, four) |
| #define | PUT(a) |
| #define | ADD(a) |
Functions | |
| static vec_s16 | M15 (vec_s16 a, vec_s16 C) |
| static vec_s16 | M16 (vec_s16 a, vec_s16 C) |
| void | ff_vp3_idct_altivec (DCTELEM block[64]) |
| void | ff_vp3_idct_put_altivec (uint8_t *dst, int stride, DCTELEM block[64]) |
| void | ff_vp3_idct_add_altivec (uint8_t *dst, int stride, DCTELEM block[64]) |
Variables | |
| static const vec_s16 | constants |
| static const vec_u8 | interleave_high |
| #define ADD | ( | a | ) |
| #define ADD8 | ( | a | ) | vec_add(a, eight) |
Definition at line 107 of file vp3dsp_altivec.c.
Referenced by ff_vp3_idct_add_altivec(), ff_vp3_idct_altivec(), and ff_vp3_idct_put_altivec().
| #define IDCT_1D | ( | ADD, | |||
| SHIFT | ) |
Definition at line 67 of file vp3dsp_altivec.c.
Referenced by ff_vp3_idct_add_altivec(), ff_vp3_idct_altivec(), and ff_vp3_idct_put_altivec().
| #define IDCT_START |
Value:
vec_s16 A, B, C, D, Ad, Bd, Cd, Dd, E, F, G, H;\ vec_s16 Ed, Gd, Add, Bdd, Fd, Hd;\ vec_s16 eight = vec_splat_s16(8);\ vec_u16 four = vec_splat_u16(4);\ \ vec_s16 C1 = vec_splat(constants, 1);\ vec_s16 C2 = vec_splat(constants, 2);\ vec_s16 C3 = vec_splat(constants, 3);\ vec_s16 C4 = vec_splat(constants, 4);\ vec_s16 C5 = vec_splat(constants, 5);\ vec_s16 C6 = vec_splat(constants, 6);\ vec_s16 C7 = vec_splat(constants, 7);\ \ vec_s16 b0 = vec_ld(0x00, block);\ vec_s16 b1 = vec_ld(0x10, block);\ vec_s16 b2 = vec_ld(0x20, block);\ vec_s16 b3 = vec_ld(0x30, block);\ vec_s16 b4 = vec_ld(0x40, block);\ vec_s16 b5 = vec_ld(0x50, block);\ vec_s16 b6 = vec_ld(0x60, block);\ vec_s16 b7 = vec_ld(0x70, block);
Definition at line 31 of file vp3dsp_altivec.c.
Referenced by ff_vp3_idct_add_altivec(), ff_vp3_idct_altivec(), and ff_vp3_idct_put_altivec().
| #define NOP | ( | a | ) | a |
Definition at line 106 of file vp3dsp_altivec.c.
Referenced by ff_vp3_idct_add_altivec(), ff_vp3_idct_altivec(), and ff_vp3_idct_put_altivec().
| #define PUT | ( | a | ) |
| #define SHIFT4 | ( | a | ) | vec_sra(a, four) |
Definition at line 108 of file vp3dsp_altivec.c.
Referenced by ff_vp3_idct_add_altivec(), ff_vp3_idct_altivec(), and ff_vp3_idct_put_altivec().
| void ff_vp3_idct_add_altivec | ( | uint8_t * | dst, | |
| int | stride, | |||
| DCTELEM | block[64] | |||
| ) |
Definition at line 156 of file vp3dsp_altivec.c.
| void ff_vp3_idct_altivec | ( | DCTELEM | block[64] | ) |
Definition at line 110 of file vp3dsp_altivec.c.
| void ff_vp3_idct_put_altivec | ( | uint8_t * | dst, | |
| int | stride, | |||
| DCTELEM | block[64] | |||
| ) |
Definition at line 128 of file vp3dsp_altivec.c.
| static vec_s16 M15 | ( | vec_s16 | a, | |
| vec_s16 | C | |||
| ) | [inline, static] |
| static vec_s16 M16 | ( | vec_s16 | a, | |
| vec_s16 | C | |||
| ) | [inline, static] |
Definition at line 62 of file vp3dsp_altivec.c.
const vec_s16 constants [static] |
Initial value:
{0, 64277, 60547, 54491, 46341, 36410, 25080, 12785}
Definition at line 26 of file vp3dsp_altivec.c.
const vec_u8 interleave_high [static] |
Initial value:
{0, 1, 16, 17, 4, 5, 20, 21, 8, 9, 24, 25, 12, 13, 28, 29}
Definition at line 28 of file vp3dsp_altivec.c.
Referenced by M15().
1.5.8