summaryrefslogtreecommitdiff
path: root/support/regression/tests/gcc-torture-execute-pr85582-1.c
blob: 2a0506a2152733ac1256616da9a1f79bc64d1596 (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
28
29
/*
   pr85582-1.c from the execute part of the gcc torture tests.
 */

#include <testfwk.h>

/* PR target/85582 */

int a, b, d = 2, e;
long long c = 1;

void
testTortureExecute (void)
{
#if !defined(__SDCC_pdk13) && !defined(__SDCC_pdk14) && !(defined(__SDCC_pdk15) && defined(__SDCC_STACK_AUTO)) // Lack of memory
  int g = 6;
L1:
  e = d;
  if (a)
    goto L1;
  g--;
  int i = c >> ~(~e | ~g);
L2:
  c = (b % c) * i;
  if (!e)
    goto L2;
  return;
#endif
}