new testcase for PR2094. The inline asms should not pin allocas to the
authorChris Lattner <sabre@nondot.org>
Tue, 29 Apr 2008 05:53:29 +0000 (05:53 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 29 Apr 2008 05:53:29 +0000 (05:53 +0000)
stack anymore.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50397 91177308-0d34-0410-b5e6-96231b3b80d8

test/CFrontend/inline-asm-mrv.c [new file with mode: 0644]

diff --git a/test/CFrontend/inline-asm-mrv.c b/test/CFrontend/inline-asm-mrv.c
new file mode 100644 (file)
index 0000000..6d1df67
--- /dev/null
@@ -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;
+}