[FFmpeg-devel] [PATCH] EA TGQ video fixes

Måns Rullgård mans
Thu Apr 16 20:03:17 CEST 2009


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

> On Thu, Apr 16, 2009 at 07:46:38PM +0200, Vitor Sessak wrote:
>> Reimar D?ffinger wrote:
>> >> > -    DCTELEM block[6][64];
>> >> > +    DECLARE_ALIGNED_8(DCTELEM, block[6][64]);
>> >> >  
>> >> >      mode = bytestream_get_byte((const uint8_t**)bs);
>> >> >      if (mode>buf_end-*bs) {
>> > 
>> > Moving it into the context instead should be more reliable.
>> 
>> Why?
>
> Because you are declaring a stack variable as aligned which only works
> up to the value that the stack is already aligned usually which in the
> past on e.g. Windows usually meant it wouldn't be aligned.
> The situation should be better now but I doubt it is flawless and I also
> don't really see a point in keeping the variable on the stack anyway.

Very few platforms are capable of aligning stack variables to 16 bytes
or more.  It's pretty much only gcc on x86, and then only if main()
was also compiled by gcc using the right flags.  IMO FFmpeg should be
more portable than that.

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



More information about the ffmpeg-devel mailing list