Use the llvm-upgrade program to upgrade llvm assembly.
[oota-llvm.git] / test / CodeGen / CBackend / 2002-08-26-IndirectCallTest.ll
1 ; RUN: llvm-upgrade < %s | llvm-as | llc -march=c
2
3 ; Indirect function call test... found by Joel & Brian
4 ;
5
6 %taskArray = uninitialized global int*
7
8 void %test(int %X) {
9         %Y = add int %X, -1          ; <int>:1 [#uses=3]
10         %cast100 = cast int %Y to long          ; <uint> [#uses=1]
11         %gep100 = getelementptr int** %taskArray, long %cast100         ; <int**> [#uses=1]
12         %fooPtr = load int** %gep100            ; <int*> [#uses=1]
13         %cast101 = cast int* %fooPtr to void (int)*             ; <void (int)*> [#uses=1]
14         call void %cast101( int 1000 )
15         ret void
16 }