2007-01-16 18:08:22 +00:00
|
|
|
; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
|
|
|
|
; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
|
|
|
|
; RUN: diff %t1.ll %t2.ll
|
|
|
|
|
|
|
|
%myty = type i55
|
|
|
|
%myfn = type float (i55,double,i55,i16)
|
|
|
|
type i55(%myfn*)
|
|
|
|
type i55(i55)
|
|
|
|
type i55(i55(i55)*)
|
|
|
|
|
|
|
|
%thisfuncty = type i55 (i55) *
|
|
|
|
|
2007-01-26 08:25:06 +00:00
|
|
|
declare void @F(%thisfuncty, %thisfuncty, %thisfuncty)
|
2007-01-16 18:08:22 +00:00
|
|
|
|
|
|
|
; This function always returns zero
|
2007-01-26 08:25:06 +00:00
|
|
|
define i55 @zarro(i55 %Func)
|
2007-01-16 18:08:22 +00:00
|
|
|
begin
|
|
|
|
Startup:
|
|
|
|
add i55 0, 10
|
|
|
|
ret i55 0
|
|
|
|
end
|
|
|
|
|
2007-01-26 08:25:06 +00:00
|
|
|
define i55 @test(i55)
|
2007-01-16 18:08:22 +00:00
|
|
|
begin
|
2007-01-26 08:25:06 +00:00
|
|
|
call void @F(%thisfuncty @zarro, %thisfuncty @test, %thisfuncty @foozball)
|
2007-01-16 18:08:22 +00:00
|
|
|
ret i55 0
|
|
|
|
end
|
|
|
|
|
2007-01-26 08:25:06 +00:00
|
|
|
define i55 @foozball(i55)
|
2007-01-16 18:08:22 +00:00
|
|
|
begin
|
|
|
|
ret i55 0
|
|
|
|
end
|
|
|
|
|