[FFmpeg-devel] [RFC] remove lrintf fallback implementation

Måns Rullgård mans
Sun Oct 21 13:51:19 CEST 2007

Rich Felker <dalias at aerifal.cx> writes:

> On Sun, Oct 21, 2007 at 12:24:39PM +0200, Benjamin Larsson wrote:
>> Hi.
>> Diego Biurrun wrote:
>> > However, I think this is the wrong approach.  If you are going to
>> > implement llrint(), do it in Cygwin, not in FFmpeg.  It is the right
>> > place to fix the issue instead of working around it and will give you
>> > better karma by helping many other projects, not just FFmpeg.
>> > 
>> > See this thread I started on the Cygwin mailing list (and ignore the
>> > flamage):
>> > 
>> > http://thread.gmane.org/gmane.os.cygwin/92561
>> > 
>> > All you have to do is add llrint() to newlib, Cygwin will pick it up
>> > from there.  Alternatively you can wait for the next gcc upgrade in
>> > Cygwin, which will reportedly carry along llrint().
>> > 
>> > All in all I am against this patch.  We should be removing
>> > platform-specific workarounds, not adding more of them.  If you cannot
>> > wait for this to get fixed by the gcc upgrade, address the problem in
>> > the right place, i.e. patch Cygwin, not FFmpeg.
>> > 
>> > Diego
>> If I never see another mail complaining about missing llrint and a
>> broken patch which try to implement it I'm actually in favour of this patch.
> I'm against optimized cpu-specific implementations to work around
> broken systems with missing llrint, but is there something wrong with
> just implementing it as (long long)rint(x) ?? llrint is a C99 feature
> and C99 math features are notoriously poorly supported...

rint() raises the inexact floating-point exception if the argument
isn't an integer.  nearbyint() does not raise the exception, but is
also a C99 feature IIRC.

M?ns Rullg?rd
mans at mansr.com

More information about the ffmpeg-devel mailing list