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)8void busy_wait_for_register (int x) 9 { 10 volatile unsigned* ptr; 11 switch(x) { 12 case 0x1111: 13 ptr = ®ister1; 14 break; 15 16 case 0x2222: 17 ptr = ®ister2; 18 break; 19 20 default: 21 return; 22 } 23 while (*ptr) {} 24 } 25 26 /* { dg-final { scan-tree-dump "loop depth 1" "optimized" } } */ 27