aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/torture/pr91812.c
blob: ebc67a01e33f9c0aa3ff83026e38d1b2a9ab0c16 (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
/* { dg-do compile } */
/* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
/* { dg-options "-fdump-tree-optimized-blocks" } */

unsigned register1;
unsigned register2;

void busy_wait_for_register (int x)
{
  volatile unsigned* ptr;
  switch(x) {
    case 0x1111:
    ptr = &register1;
    break;

    case 0x2222:
    ptr = &register2;
    break;

    default:
    return;
  }
  while (*ptr) {}
}

/* { dg-final { scan-tree-dump "loop depth 1" "optimized" } } */