[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