brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 9b62365 Raw
39 lines · plain
1; RUN: llvm-as %s -o /dev/null2 3; Should assemble without error.4 5declare void @similar_param_ptrty_callee(ptr)6define void @similar_param_ptrty(ptr) {7  musttail call void @similar_param_ptrty_callee(ptr null)8  ret void9}10 11declare ptr @similar_ret_ptrty_callee()12define ptr @similar_ret_ptrty() {13  %v = musttail call ptr @similar_ret_ptrty_callee()14  ret ptr %v15}16 17declare x86_thiscallcc void @varargs_thiscall(ptr, ...)18define x86_thiscallcc void @varargs_thiscall_thunk(ptr %this, ...) {19  musttail call x86_thiscallcc void (ptr, ...) @varargs_thiscall(ptr %this, ...)20  ret void21}22 23declare x86_fastcallcc void @varargs_fastcall(ptr, ...)24define x86_fastcallcc void @varargs_fastcall_thunk(ptr %this, ...) {25  musttail call x86_fastcallcc void (ptr, ...) @varargs_fastcall(ptr %this, ...)26  ret void27}28 29define x86_thiscallcc void @varargs_thiscall_unreachable(ptr %this, ...) {30  unreachable31}32 33define x86_thiscallcc void @varargs_thiscall_ret_unreachable(ptr %this, ...) {34  musttail call x86_thiscallcc void (ptr, ...) @varargs_thiscall(ptr %this, ...)35  ret void36bb1:37  ret void38}39