diff options
author | Christophe Gisquet <christophe.gisquet@gmail.com> | 2012-05-11 11:17:36 +0200 |
---|---|---|
committer | Janne Grunau <janne-libav@jannau.net> | 2014-02-07 22:51:59 +0100 |
commit | 2bd44cb705340c4f7bd7e459a1efed5074bf45fc (patch) | |
tree | 6b628e195347f7ac49f71e2882cd57a1a5c1fed4 /libavcodec/dcadsp.h | |
parent | e3fec3f095ab5ea08ee662942d98526aaf5e3635 (diff) | |
download | ffmpeg-2bd44cb705340c4f7bd7e459a1efed5074bf45fc.tar.gz |
dcadsp: add int8x8_fmul_int32 to dsp context
It is currently declared as a macro who is set to inlinable functions,
among which a Neon and a default C implementations.
Add a DSP parameter to each inline function, unused except by the
default C implementation which calls a function from the DSP context.
On an Arrandale CPU, gain for an inlined SSE2 function vs. a call:
- Win32: 29 to 26 cycles
- Win64: 25 to 23 cycles
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Diffstat (limited to 'libavcodec/dcadsp.h')
-rw-r--r-- | libavcodec/dcadsp.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/dcadsp.h b/libavcodec/dcadsp.h index ec88be71f0..0f79dd643e 100644 --- a/libavcodec/dcadsp.h +++ b/libavcodec/dcadsp.h @@ -31,6 +31,7 @@ typedef struct DCADSPContext { int *synth_buf_offset, float synth_buf2[32], const float window[512], float *samples_out, float raXin[32], float scale); + void (*int8x8_fmul_int32)(float *dst, const int8_t *src, int scale); } DCADSPContext; void ff_dcadsp_init(DCADSPContext *s); |