[Ffmpeg-devel] sse sigsegv and libavcodec/wmadec.c
Michael Niedermayer
michaelni
Wed Dec 6 16:37:07 CET 2006
Hi
On Wed, Dec 06, 2006 at 04:29:44PM +0100, Benjamin Larsson wrote:
> Michael Niedermayer skrev:
> >Hi
> >
> >On Wed, Dec 06, 2006 at 02:35:16PM +0100, Benjamin Larsson wrote:
> >
> >>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 ?
> >>
> >
> >why exactly does gcc on windows fail to provide the specified alignment
> >while
> >it works on linux? are all gcc versions affected?
> >if its just gcc 3 then id say drop official gcc 3 support for windows
> >
> >[...]
> >
>
> It fails to respect the align attribute in structs, so when properly
> aligning a codec context with malloc the actual struct members don't get
> aligned properly. I don't know exactly what versions are affected, but
> this is causing problems for gcc 2.95 on BeOS also.
order struct members so that correct alignment is provided if everything
gets packed
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
If you really think that XML is the answer, then you definitly missunderstood
the question -- Attila Kinali
More information about the ffmpeg-devel
mailing list