[FFmpeg-devel] [PATCH] avutil: merge avpriv_float_dsp_init into avpriv_float_dsp_alloc
James Almer
jamrial at gmail.com
Wed Oct 14 02:04:38 CEST 2015
On 10/13/2015 8:48 PM, Andreas Cadhalpun wrote:
> Also replace the last two usages of avpriv_float_dsp_init with
> avpriv_float_dsp_alloc.
>
> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
> ---
> libavutil/float_dsp.c | 47 ++++++++++++++++++++++++++---------------------
> libavutil/float_dsp.h | 9 ---------
> 2 files changed, 26 insertions(+), 30 deletions(-)
>
> diff --git a/libavutil/float_dsp.c b/libavutil/float_dsp.c
> index 337708e..c1430f0 100644
> --- a/libavutil/float_dsp.c
> +++ b/libavutil/float_dsp.c
> @@ -116,8 +116,12 @@ float avpriv_scalarproduct_float_c(const float *v1, const float *v2, int len)
> return p;
> }
>
> -av_cold void avpriv_float_dsp_init(AVFloatDSPContext *fdsp, int bit_exact)
> +av_cold AVFloatDSPContext *avpriv_float_dsp_alloc(int bit_exact)
> {
> + AVFloatDSPContext *fdsp = av_mallocz(sizeof(AVFloatDSPContext));
> + if (!fdsp)
> + return NULL;
> +
> fdsp->vector_fmul = vector_fmul_c;
> fdsp->vector_fmac_scalar = vector_fmac_scalar_c;
> fdsp->vector_fmul_scalar = vector_fmul_scalar_c;
> @@ -138,14 +142,7 @@ av_cold void avpriv_float_dsp_init(AVFloatDSPContext *fdsp, int bit_exact)
> ff_float_dsp_init_x86(fdsp);
> if (ARCH_MIPS)
> ff_float_dsp_init_mips(fdsp);
> -}
> -
> -av_cold AVFloatDSPContext *avpriv_float_dsp_alloc(int bit_exact)
> -{
> - AVFloatDSPContext *ret = av_mallocz(sizeof(AVFloatDSPContext));
> - if (ret)
> - avpriv_float_dsp_init(ret, bit_exact);
> - return ret;
> + return fdsp;
> }
>
>
> @@ -386,7 +383,7 @@ int main(int argc, char **argv)
> {
> int ret = 0, seeded = 0;
> uint32_t seed;
> - AVFloatDSPContext fdsp, cdsp;
> + AVFloatDSPContext *fdsp, *cdsp;
> AVLFG lfg;
>
> LOCAL_ALIGNED(32, float, src0, [LEN]);
> @@ -430,29 +427,37 @@ int main(int argc, char **argv)
> fill_double_array(&lfg, dbl_src0, LEN);
> fill_double_array(&lfg, dbl_src1, LEN);
>
> - avpriv_float_dsp_init(&fdsp, 1);
> + fdsp = avpriv_float_dsp_alloc(1);
> av_force_cpu_flags(0);
> - avpriv_float_dsp_init(&cdsp, 1);
> + cdsp = avpriv_float_dsp_alloc(1);
> +
> + if (!fdsp || !cdsp) {
> + ret = 1;
> + goto end;
> + }
This could go above the av_log or av_lfg_init lines, to avoid pointlessly
running all the array filling code when the test is going to fail anyway.
LGTM nonetheless.
More information about the ffmpeg-devel
mailing list