1 /* { dg-do compile } */
2 /* { dg-skip-if "" { *-*-* } { "-fno-fat-lto-objects" } { "" } } */
3 /* { dg-options "-fdump-tree-optimized-blocks" } */
4 
5 unsigned register1;
6 unsigned register2;
7 
busy_wait_for_register(int x)8 void busy_wait_for_register (int x)
9 {
10   volatile unsigned* ptr;
11   switch(x) {
12     case 0x1111:
13     ptr = &register1;
14     break;
15 
16     case 0x2222:
17     ptr = &register2;
18     break;
19 
20     default:
21     return;
22   }
23   while (*ptr) {}
24 }
25 
26 /* { dg-final { scan-tree-dump "loop depth 1" "optimized" } } */
27