mirror of
https://github.com/Stichting-MINIX-Research-Foundation/pkgsrc-ng.git
synced 2025-09-28 06:26:12 -04:00
52 lines
719 B
C
52 lines
719 B
C
$NetBSD$
|
|
|
|
--- gcc/testsuite/gcc.c-torture/execute/pr49161.c.orig Wed May 21 19:48:58 2014
|
|
+++ gcc/testsuite/gcc.c-torture/execute/pr49161.c
|
|
@@ -0,0 +1,46 @@
|
|
+/* PR tree-optimization/49161 */
|
|
+
|
|
+extern void abort (void);
|
|
+
|
|
+int c;
|
|
+
|
|
+__attribute__((noinline, noclone)) void
|
|
+bar (int x)
|
|
+{
|
|
+ if (x != c++)
|
|
+ abort ();
|
|
+}
|
|
+
|
|
+__attribute__((noinline, noclone)) void
|
|
+foo (int x)
|
|
+{
|
|
+ switch (x)
|
|
+ {
|
|
+ case 3: goto l1;
|
|
+ case 4: goto l2;
|
|
+ case 6: goto l3;
|
|
+ default: return;
|
|
+ }
|
|
+l1:
|
|
+ goto l4;
|
|
+l2:
|
|
+ goto l4;
|
|
+l3:
|
|
+ bar (-1);
|
|
+l4:
|
|
+ bar (0);
|
|
+ if (x != 4)
|
|
+ bar (1);
|
|
+ if (x != 3)
|
|
+ bar (-1);
|
|
+ bar (2);
|
|
+}
|
|
+
|
|
+int
|
|
+main ()
|
|
+{
|
|
+ foo (3);
|
|
+ if (c != 3)
|
|
+ abort ();
|
|
+ return 0;
|
|
+}
|