xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGen/2004-03-15-SimpleIndirectGoto.c (revision b5e2faaaaf60a8b9a02f8d72f64caa56a87eb312)
1 // RUN: %clang_cc1 -emit-llvm %s  -o /dev/null
2 
3 int code[]={0,0,0,0,1};
4 void foo(int x) {
5   volatile int b;
6   b = 0xffffffff;
7 }
8 void bar(int *pc) {
9   static const void *l[] = {&&lab0, &&end};
10 
11   foo(0);
12   goto *l[*pc];
13  lab0:
14   foo(0);
15   pc++;
16   goto *l[*pc];
17  end:
18   return;
19 }
20 int main() {
21   bar(code);
22   return 0;
23 }
24