[FFmpeg-devel] [PATCH] avutil: merge avpriv_float_dsp_init into avpriv_float_dsp_alloc

Andreas Cadhalpun andreas.cadhalpun at googlemail.com
Wed Oct 21 00:32:54 CEST 2015


On 14.10.2015 02:04, James Almer wrote:
> 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.

Changed and pushed.

Best regards,
Andreas



More information about the ffmpeg-devel mailing list