aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Wilson <bob.wilson@apple.com>2010-03-10 17:54:11 +0000
committerBob Wilson <bob.wilson@apple.com>2010-03-10 17:54:11 +0000
commitc81f0af6b768fbd08babc866d9b42ed949e2d2a6 (patch)
tree0ab794096f568c4dce3ce5a459415678da763e9f
parentea670df852cb33fff0d24ce3fa3b4d075ff93f1e (diff)
Testcase for pr6552. I changed the code to use "ip" instead of "fp" because
the "fp" register name is not valid on Darwin, and the "ip" register name was broken for all ARM targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98166 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/FrontendC/2010-03-10-arm-asmreg.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/FrontendC/2010-03-10-arm-asmreg.c b/test/FrontendC/2010-03-10-arm-asmreg.c
new file mode 100644
index 0000000000..70d3681ea4
--- /dev/null
+++ b/test/FrontendC/2010-03-10-arm-asmreg.c
@@ -0,0 +1,15 @@
+// RUN: %llvmgcc %s -S -O0 -o - | FileCheck %s
+// pr6552
+
+// XFAIL: *
+// XTARGET: arm
+
+extern void bar(unsigned int ip);
+
+// CHECK: mov r0, r12
+void foo(void)
+{
+ register unsigned int ip __asm ("ip");
+ bar(ip);
+}
+