1*9880d681SAndroid Build Coastguard Worker; RUN: llvm-as %s -o /dev/null 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; Should assemble without error. 4*9880d681SAndroid Build Coastguard Worker 5*9880d681SAndroid Build Coastguard Workerdeclare void @similar_param_ptrty_callee(i8*) 6*9880d681SAndroid Build Coastguard Workerdefine void @similar_param_ptrty(i32*) { 7*9880d681SAndroid Build Coastguard Worker musttail call void @similar_param_ptrty_callee(i8* null) 8*9880d681SAndroid Build Coastguard Worker ret void 9*9880d681SAndroid Build Coastguard Worker} 10*9880d681SAndroid Build Coastguard Worker 11*9880d681SAndroid Build Coastguard Workerdeclare i8* @similar_ret_ptrty_callee() 12*9880d681SAndroid Build Coastguard Workerdefine i32* @similar_ret_ptrty() { 13*9880d681SAndroid Build Coastguard Worker %v = musttail call i8* @similar_ret_ptrty_callee() 14*9880d681SAndroid Build Coastguard Worker %w = bitcast i8* %v to i32* 15*9880d681SAndroid Build Coastguard Worker ret i32* %w 16*9880d681SAndroid Build Coastguard Worker} 17*9880d681SAndroid Build Coastguard Worker 18*9880d681SAndroid Build Coastguard Workerdeclare x86_thiscallcc void @varargs_thiscall(i8*, ...) 19*9880d681SAndroid Build Coastguard Workerdefine x86_thiscallcc void @varargs_thiscall_thunk(i8* %this, ...) { 20*9880d681SAndroid Build Coastguard Worker musttail call x86_thiscallcc void (i8*, ...) @varargs_thiscall(i8* %this, ...) 21*9880d681SAndroid Build Coastguard Worker ret void 22*9880d681SAndroid Build Coastguard Worker} 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Workerdeclare x86_fastcallcc void @varargs_fastcall(i8*, ...) 25*9880d681SAndroid Build Coastguard Workerdefine x86_fastcallcc void @varargs_fastcall_thunk(i8* %this, ...) { 26*9880d681SAndroid Build Coastguard Worker musttail call x86_fastcallcc void (i8*, ...) @varargs_fastcall(i8* %this, ...) 27*9880d681SAndroid Build Coastguard Worker ret void 28*9880d681SAndroid Build Coastguard Worker} 29*9880d681SAndroid Build Coastguard Worker 30*9880d681SAndroid Build Coastguard Workerdefine x86_thiscallcc void @varargs_thiscall_unreachable(i8* %this, ...) { 31*9880d681SAndroid Build Coastguard Worker unreachable 32*9880d681SAndroid Build Coastguard Worker} 33*9880d681SAndroid Build Coastguard Worker 34*9880d681SAndroid Build Coastguard Workerdefine x86_thiscallcc void @varargs_thiscall_ret_unreachable(i8* %this, ...) { 35*9880d681SAndroid Build Coastguard Worker musttail call x86_thiscallcc void (i8*, ...) @varargs_thiscall(i8* %this, ...) 36*9880d681SAndroid Build Coastguard Worker ret void 37*9880d681SAndroid Build Coastguard Workerbb1: 38*9880d681SAndroid Build Coastguard Worker ret void 39*9880d681SAndroid Build Coastguard Worker} 40