[FFmpeg-devel] [PATCH] remove useless casting in asm "m" operand

matthieu castet castet.matthieu
Sat Mar 14 19:11:02 CET 2009


Hi,

this patch remove some useless casting (casting of the same type) in "m" 
operand of asm inline. This caused clang/llvm to produce error 
(http://llvm.org/bugs/show_bug.cgi?id=3788).

BTW if the type are of different size gcc produce an error, so the 
casting doesn't work [1]

Matthieu


[1]
$ cat /tmp/pp.c
int foo()
{
         int a;
         asm("nop"
                         :
                         : "m"((long)(a))
                         );
}

$ gcc -m64  /tmp/pp.c -c -o /tmp/p.o
/tmp/pp.c: In function 'foo':
/tmp/pp.c:4: error: memory input 0 is not directly addressable
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ffmpeg_asm_casting.diff
Type: text/x-patch
Size: 2089 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090314/7f446173/attachment.bin>



More information about the ffmpeg-devel mailing list