[FFmpeg-cvslog] r16488 - in trunk: configure libavutil/mem.c

Måns Rullgård mans
Mon Jan 12 22:23:39 CET 2009


Michael Niedermayer <michaelni at gmx.at> writes:

> On Sun, Jan 11, 2009 at 06:57:21PM +0000, M?ns Rullg?rd wrote:
>> Uoti Urpala <uoti.urpala at pp1.inet.fi> writes:
>> 
>> > On Sun, 2009-01-11 at 17:37 +0000, M?ns Rullg?rd wrote:
>> >> Ramiro Polla <ramiro at lisha.ufsc.br> writes:
>> >> > The purpose is that a plain ./configure with gcc 2.95 should work or at 
>> >> > least warn the user that he'll encounter problems with SSE code. It used 
>> >> > to be silently disabled in cpuid.c, now it'll be explicit.
>> >> 
>> >> The problem, as I've understood it, is not with SSE as such, but that
>> >> certain functions in libavcodec, which happen to use SSE, don't work
>> >> correctly when built with gcc 2.95.
>> >> 
>> >> Either way, checking the value of __GNUC__ in configure is just silly.
>> >> It can just as easily be done in the code.
>> >
>> > Where in the code? If you mean adding a check to every function that
>> > uses SSE, or manually inspecting them all and placing checks in some of
>> > them, that can certainly not be done as easily and not without
>> > cluttering the code.
>> 
>> What is the specific feature this code requires which gcc 2.95 doesn't
>> provide?
>
> I suspect aligning variables on the stack

In that case, any functions requiring aligned stack should be disabled
when the compiler cannot provide this, not all SSE code.  It is
certainly possible to write SSE code that doesn't require an aligned
stack (in general, no necessarily these specific functions).

-- 
M?ns Rullg?rd
mans at mansr.com




More information about the ffmpeg-cvslog mailing list