1 /* { dg-do compile { target ia32 } } */ 2 /* { dg-options "-O2" } */ 3 4 #define ADVANCE_AND_DISPATCH() goto *addresses[*pc++] 5 6 void Interpret(const unsigned char * pc)7Interpret(const unsigned char *pc) 8 { 9 static const void *const addresses[] = { 10 &&l0, &&l1, &&l2 11 }; 12 13 l0: 14 ADVANCE_AND_DISPATCH(); 15 16 l1: 17 ADVANCE_AND_DISPATCH(); 18 19 l2: 20 return; 21 } 22 23 /* { dg-final { scan-assembler-not "jmp\[ \t\]*.%eax" } } */ 24