aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Guenther <rguenther@suse.de>2011-01-12 15:21:59 +0000
committerRichard Biener <rguenth@gcc.gnu.org>2011-01-12 15:21:59 +0000
commitd559a7f87cb243acc9f80c716f3648186e2fe01f (patch)
tree8a2288e477174b937f8f65081795f0e8699ccf7f /gcc
parent4b18b3c25be70a76f65629d11d80a64d396a1a7a (diff)
downloadgcc-d559a7f87cb243acc9f80c716f3648186e2fe01f.zip
gcc-d559a7f87cb243acc9f80c716f3648186e2fe01f.tar.gz
gcc-d559a7f87cb243acc9f80c716f3648186e2fe01f.tar.bz2
re PR lto/47259 (LTO and global register variable)
2011-01-12 Richard Guenther <rguenther@suse.de> PR lto/47259 * gcc.dg/lto/pr47259_0.c: New testcase. * gcc.dg/lto/pr47259_1.c: Likewise. From-SVN: r168715
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gcc.dg/lto/pr47259_0.c13
-rw-r--r--gcc/testsuite/gcc.dg/lto/pr47259_1.c9
3 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 78dbf6e..451d643 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2011-01-12 Richard Guenther <rguenther@suse.de>
+
+ PR lto/47259
+ * gcc.dg/lto/pr47259_0.c: New testcase.
+ * gcc.dg/lto/pr47259_1.c: Likewise.
+
2011-01-12 Iain Sandoe <iains@gcc.gnu.org>
* objc-obj-c++-shared/Object1.h: Add copyright header, update
diff --git a/gcc/testsuite/gcc.dg/lto/pr47259_0.c b/gcc/testsuite/gcc.dg/lto/pr47259_0.c
new file mode 100644
index 0000000..b959478
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/lto/pr47259_0.c
@@ -0,0 +1,13 @@
+/* { dg-lto-do link } */
+/* { dg-skip-if "" { ! { x86_64-*-* } } { "*" } { "" } } */
+/* { dg-lto-options { { -O2 -flto -w } } } */
+/* { dg-require-effective-target lp64 } */
+
+register int r asm("esi");
+
+void foo(void)
+{
+ if (r)
+ __asm__("sar\t%0" : "+r" (r));
+ __asm__("sar\t%0" : "+r" (r));
+}
diff --git a/gcc/testsuite/gcc.dg/lto/pr47259_1.c b/gcc/testsuite/gcc.dg/lto/pr47259_1.c
new file mode 100644
index 0000000..03bf894
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/lto/pr47259_1.c
@@ -0,0 +1,9 @@
+/* { dg-options "-fno-lto" } */
+
+extern void foo(void);
+
+int main(void)
+{
+ foo();
+ return 0;
+}