Add a testcase (PR middle-end/88758).
authorMartin Liska <mliska@suse.cz>
Fri, 11 Jan 2019 13:20:01 +0000 (14:20 +0100)
committerMartin Liska <marxin@gcc.gnu.org>
Fri, 11 Jan 2019 13:20:01 +0000 (13:20 +0000)
2019-01-11  Martin Liska  <mliska@suse.cz>

PR middle-end/88758
* g++.dg/lto/pr88758_0.C: New test.
* g++.dg/lto/pr88758_1.C: New test.

From-SVN: r267840

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/lto/pr88758_0.C [new file with mode: 0644]
gcc/testsuite/g++.dg/lto/pr88758_1.C [new file with mode: 0644]

index 5fbeb1e..a3de38e 100644 (file)
@@ -1,3 +1,9 @@
+2019-01-11  Martin Liska  <mliska@suse.cz>
+
+       PR middle-end/88758
+       * g++.dg/lto/pr88758_0.C: New test.
+       * g++.dg/lto/pr88758_1.C: New test.
+
 2019-01-11  Jan Beulich  <jbeulich@suse.com>
 
        * gcc.target/i386/avx512f-vcvtsd2si-1.c,
diff --git a/gcc/testsuite/g++.dg/lto/pr88758_0.C b/gcc/testsuite/g++.dg/lto/pr88758_0.C
new file mode 100644 (file)
index 0000000..eccbf63
--- /dev/null
@@ -0,0 +1,7 @@
+// { dg-lto-do link }
+// { dg-require-effective-target fpic }
+// { dg-require-effective-target shared }
+// { dg-lto-options { { -O3 -fPIC -flto -shared } } }
+
+void PreEvaluate(void);
+int main() { PreEvaluate(); return 0; }
diff --git a/gcc/testsuite/g++.dg/lto/pr88758_1.C b/gcc/testsuite/g++.dg/lto/pr88758_1.C
new file mode 100644 (file)
index 0000000..64ff57a
--- /dev/null
@@ -0,0 +1,9 @@
+extern int a[];
+int b;
+int c;
+
+void PreEvaluate(void) {
+  b = 0;
+  for (; b < 8; b++)
+    a[b] = c * (b > 0 ? b - 1 : 0);
+}