aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/compile/pr82337.c
blob: e6060e468d692d8e194f6f8ae2f02ed6ad1b6874 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/* PR82337: SLSR needs to prevent abnormal SSA names from
   serving as a basis. */
/* { dg-require-effective-target nonlocal_goto } */

char *a, *b, *c;

struct d {
  short e;
  char f[];
};

extern void j (void);

void
g() {
  struct d *h;
  char *i;
  int d;
  do {
    i = h->f + d;
    20 ? j() : 0;
    i = c;
    if (__builtin_setjmp (h))
      b = h->f + d;
    d = (int)(*i);
  } while (a);
}