PR target/84226
[official-gcc.git] / gcc / testsuite / gcc.target / avr / pr71676.c
blob7737c1e5390ae026999b26cfe519e51a044fbebc
1 /* { dg-do run } */
2 /* { dg-options "-Os -fno-tree-switch-conversion" } */
4 #include "exit-abort.h"
6 volatile unsigned char y;
8 __attribute__((noinline,noclone))
9 unsigned char foo (unsigned long x)
11 switch (x)
13 case 0: y = 67; break;
14 case 1: y = 20; break;
15 case 2: y = 109; break;
16 case 3: y = 33; break;
17 case 4: y = 44; break;
18 case 5: y = 37; break;
19 case 6: y = 10; break;
20 case 7: y = 98; break;
22 return y;
25 int main (void)
27 if (0 != foo (7L + 0x10000L))
28 abort();
29 return 0;