On 30/09/14 3:50 PM, James Almer wrote: > av_cold void ff_mlpdsp_init_x86(MLPDSPContext *c) > { > -#if HAVE_7REGS && HAVE_INLINE_ASM && HAVE_INLINE_ASM_NONLOCAL_LABELS > int cpu_flags = av_get_cpu_flags(); > +#if HAVE_7REGS && HAVE_INLINE_ASM && HAVE_INLINE_ASM_NONLOCAL_LABELS > if (INLINE_MMX(cpu_flags)) > c->mlp_filter_channel = mlp_filter_channel_x86; > #endif > + if (ARCH_X86_64 && EXTERNAL_SSE4(cpu_flags)) > + c->mlp_rematrix_channel = ff_mlp_rematrix_channel_sse4; > + if (ARCH_X86_64 && EXTERNAL_AVX2(cpu_flags) && cpu_flags & > AV_CPU_FLAG_BMI2) > + c->mlp_rematrix_channel = ff_mlp_rematrix_channel_avx2_bmi2; > }
I didn't write an x86_32 version because seven gprs for a function like this would need more work (what with eleven parameters, accum being 64 bits, etc). I may give it a go later if i feel in the mood, but if someone else wants to do it instead then that'd be great. _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel