1 // PR c++/16276 2 // { dg-do link } 3 // { dg-additional-sources " comdat4-aux.cc" } 4 // { dg-options "-O2" } 5 6 extern void 7 bar (int x); 8 9 inline void foo(int i)10foo (int i) 11 { 12 switch (i) 13 { 14 case 3: 15 case 5: 16 case 6: 17 case 9: 18 case 15: 19 bar (1); 20 break; 21 case 2: 22 case 4: 23 case 7: 24 case 10: 25 case 11: 26 case 12: 27 bar (2); 28 break; 29 case 0: 30 case 1: 31 case 8: 32 case 13: 33 case 16: 34 bar (3); 35 break; 36 case 14: 37 bar (4); 38 break; 39 default: 40 bar (5); 41 break; 42 } 43 } 44 45 void *fooaddr = (void *) foo; 46 47 void bar(int x)48bar (int x) 49 { 50 __asm __volatile ("" : : "r" (x)); 51 } 52 53 int main(void)54main (void) 55 { 56 return 0; 57 } 58