On Wed, Aug 22, 2012 at 12:50:18PM +0100, Måns Rullgård wrote:
> Mans Rullgard <m...@mansr.com> writes:
> 
> > GCC 4.3 and later do the right thing with the plain C code.  Earlier
> > versions in 32-bit mode generate one extra instruction, needlessly
> > zeroing what would be the high half of the shifted value.  At least
> > two gcc configurations miscompile the inline asm in some situations.
> >
> > In 64-bit mode, all gcc versions generate imul r64, r64 followed by
> > shr.  On Intel i7 and later, this imul is faster 32-bit mul.  On
> > older Intel and all AMD, it is slightly slower.  On Atom it is much
> > slower.
> >
> > Considering where the FASTDIV macro is used, any overall negative
> > performance impact of this change should be negligible.  If anyone
> > cares, they should file a bug against gcc and get the instruction
> > selection fixed.
> >
> > Signed-off-by: Mans Rullgard <m...@mansr.com>
> > ---
> >  libavutil/intmath.h     |  2 --
> >  libavutil/x86/intmath.h | 37 -------------------------------------
> >  2 files changed, 39 deletions(-)
> >  delete mode 100644 libavutil/x86/intmath.h
> 
> ping

no objections so it should be OK
I'm in favour of this patch.
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to