diff --git a/test/CFrontend/inline-asm-mrv.c b/test/CFrontend/inline-asm-mrv.c new file mode 100644 index 00000000000..6d1df67af1b --- /dev/null +++ b/test/CFrontend/inline-asm-mrv.c @@ -0,0 +1,12 @@ +// RUN: %llvmgcc -S %s -o - -O | not grep alloca +// PR2094 + +int sad16_sse2(void *v, unsigned char *blk2, unsigned char *blk1, + int stride, int h) { + int ret; + asm volatile( "%0 %1 %2 %3" + : "+r" (h), "+r" (blk1), "+r" (blk2) + : "r" ((long)stride)); + asm volatile("set %0 %1" : "=r"(ret) : "r"(blk1)); + return ret; +}