1*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as < %s | llvm-dis > %t1.ll 2*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll 3*9880d681SAndroid Build Coastguard Worker; RUN: diff %t1.ll %t2.ll 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Worker%myty = type i32 6*9880d681SAndroid Build Coastguard Worker%myfn = type float (i32,double,i32,i16) 7*9880d681SAndroid Build Coastguard Worker%0 = type i32(%myfn*) 8*9880d681SAndroid Build Coastguard Worker%1 = type i32(i32) 9*9880d681SAndroid Build Coastguard Worker%2 = type i32(i32(i32)*) 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Worker %thisfuncty = type i32 (i32) * 12*9880d681SAndroid Build Coastguard Worker 13*9880d681SAndroid Build Coastguard Workerdeclare void @F(%thisfuncty, %thisfuncty, %thisfuncty) 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerdefine i32 @zarro(i32 %Func) { 16*9880d681SAndroid Build Coastguard WorkerStartup: 17*9880d681SAndroid Build Coastguard Worker add i32 0, 10 ; <i32>:0 [#uses=0] 18*9880d681SAndroid Build Coastguard Worker ret i32 0 19*9880d681SAndroid Build Coastguard Worker} 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Workerdefine i32 @test(i32) { 22*9880d681SAndroid Build Coastguard Worker call void @F( %thisfuncty @zarro, %thisfuncty @test, %thisfuncty @foozball ) 23*9880d681SAndroid Build Coastguard Worker ret i32 0 24*9880d681SAndroid Build Coastguard Worker} 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Workerdefine i32 @foozball(i32) { 27*9880d681SAndroid Build Coastguard Worker ret i32 0 28*9880d681SAndroid Build Coastguard Worker} 29*9880d681SAndroid Build Coastguard Worker 30