[Ffmpeg-devel] sse sigsegv and libavcodec/wmadec.c

Benjamin Larsson banan
Wed Dec 6 14:35:16 CET 2006


Michael Niedermayer skrev:
> Hi
>
> On Fri, Dec 01, 2006 at 10:40:53PM +0100, Franz Bakan wrote:
>   
>> Hi,
>>
>> wmadec.c line 720 and 1110 :
>>  DECLARE_ALIGNED_16()
>> does not work for stack-variables inside functions.
>> (at least not for GCC 331 on OS/2) but IIRC this is a
>> cross-platform-restriction.
>> If I move the two declarations to the top of the file
>> I get rid of these nasty SIGSEGVs on my PIII computer.
>>
>> Please patch
>>     
>
> patch rejected not thread safe
>
> furthermore if the compiler cannot gurantee the specfied alignment then it
> has to fail hard not randomly provide less alignemnt, this is a compiler bug
> (= generates invalid code)
>
> [...]
>   

Hi, do you have any good suggestion how this can be fixed without fixing 
the compiler. This affects all codecs that needs aligned float buffers 
when using sse on windows (and other platforms). We could try to 
manually align the contexts (hacky but could work) or should we disable 
sse on platforms with broken compilers ?

MvH
Benjamin Larsson




More information about the ffmpeg-devel mailing list