Remove use of implementation keyword.
[oota-llvm.git] / test / Integer / forwardreftest_bt.ll
1 ; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
2 ; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
3 ; RUN: diff %t1.ll %t2.ll
4
5   %myty = type i55 
6   %myfn = type float (i55,double,i55,i16)
7   type i55(%myfn*)
8   type i55(i55)
9   type i55(i55(i55)*)
10
11   %thisfuncty = type i55 (i55) *
12
13 declare void @F(%thisfuncty, %thisfuncty, %thisfuncty)
14
15 ; This function always returns zero
16 define i55 @zarro(i55 %Func)
17 begin
18 Startup:
19     add i55 0, 10
20     ret i55 0 
21 end
22
23 define i55 @test(i55) 
24 begin
25     call void @F(%thisfuncty @zarro, %thisfuncty @test, %thisfuncty @foozball)
26     ret i55 0
27 end
28
29 define i55 @foozball(i55)
30 begin
31     ret i55 0
32 end
33