[FFmpeg-devel] [PATCH] use 'l' asm suffix to make icc happy
Sat Dec 15 23:48:30 CET 2007
On Sat, Dec 15, 2007 at 10:34:31PM +0000, M?ns Rullg?rd wrote:
> Trent Piepho <xyzzy at speakeasy.org> writes:
> > On Sat, 15 Dec 2007, Reimar [iso-8859-1] D?ffinger wrote:
> >> the operands to dec in these two cases can be a memory address, so the
> >> assembler can not really infer the size, and icc fails to compile.
> >> Attached patch fixes it.
> > Is it possible that the l suffix will be wrong on x86-64, e.g. addl %rax?
> > gcc has a percent code for generating the operand size suffix that can be
> > used in this case.
> GCC seems to use 32-bit registers for int and unsigned int type data.
Here the 'l' suffix is correct, we operate on 32 bit data (either
register or memory, but in both cases 32 bit).
The 'l' suffix only causes problems on 64 bit if we operate on pointers
or long data type.
In most cases no suffix is needed because at least one argument is
guaranteed to be in a register, and it is IMO better not to specify a
suffix in those cases.
More information about the ffmpeg-devel