[FFmpeg-devel] [PATCH] fix h264_deblock_sse2.asm segfaults on clang/x86-32

Måns Rullgård mans
Wed Sep 1 10:31:55 CEST 2010


Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:

> On Wed, Sep 01, 2010 at 02:08:35AM -0400, Alexander Strange wrote:
>> clang on linux/freebsd assumes 4-byte alignment, realigns to 16-byte
>> on entry with attribute_align_arg, but only attempts to retain
>> 4-byte alignment. So any callee code needing an aligned stack and
>> using clang on freebsd/linux needs to realign it themselves.
>
> My point is about 16-byte aligned stack variables.  We use those, and
> with that approach clang can only work either not at all or
> inefficiently with those which is why I am raising the question
> whether we should add possibly slower and more complex code when we
> maybe won't be able to make all of FFmpeg work anyway with that
> compiler.

We already have support for aligning things on the stack even when the
compiler will not do it.  See the LOCAL_ALIGNED macros.  It is
annoying to have to do it this way, but when an ABI doesn't require
aligned stack, it doesn't leave us much choice.

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



More information about the ffmpeg-devel mailing list