1 /* Same test as built-in-setjmp.c. Includes the case where
2 the source block of a crossing fallthru edge ends with a call. */
3 /* { dg-require-effective-target freorder } */
4 /* { dg-options "-O2 -freorder-blocks-and-partition" } */
6 extern int strcmp(const char *, const char *);
7 extern char *strcpy(char *, const char *);
8 extern void abort(void);
13 void __attribute__((noinline
))
16 __builtin_longjmp (buf
, 1);
22 char *p
= (char *) __builtin_alloca (20);
26 if (__builtin_setjmp (buf
))
28 if (strcmp (p
, "test") != 0)
35 int *q
= (int *) __builtin_alloca (p
[2] * sizeof (int));
38 for (i
= 0; i
< p
[2]; i
++)