xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/tailcall-fastisel.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -mtriple=x86_64-apple-darwin -tailcallopt -fast-isel -fast-isel-abort=1 | FileCheck %s
2*9880d681SAndroid Build Coastguard Worker
3*9880d681SAndroid Build Coastguard Worker%0 = type { i64, i32, i8* }
4*9880d681SAndroid Build Coastguard Worker
5*9880d681SAndroid Build Coastguard Workerdefine fastcc i8* @"visit_array_aux<`Reference>"(%0 %arg, i32 %arg1) nounwind {
6*9880d681SAndroid Build Coastguard Workerfail:                                             ; preds = %entry
7*9880d681SAndroid Build Coastguard Worker  %tmp20 = tail call fastcc i8* @"visit_array_aux<`Reference>"(%0 %arg, i32 undef) ; <i8*> [#uses=1]
8*9880d681SAndroid Build Coastguard Worker; CHECK: jmp "_visit_array_aux<`Reference>" ## TAILCALL
9*9880d681SAndroid Build Coastguard Worker  ret i8* %tmp20
10*9880d681SAndroid Build Coastguard Worker}
11*9880d681SAndroid Build Coastguard Worker
12*9880d681SAndroid Build Coastguard Workerdefine i32 @foo() nounwind {
13*9880d681SAndroid Build Coastguard Workerentry:
14*9880d681SAndroid Build Coastguard Worker %0 = tail call i32 (...) @bar() nounwind       ; <i32> [#uses=1]
15*9880d681SAndroid Build Coastguard Worker ret i32 %0
16*9880d681SAndroid Build Coastguard Worker}
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Workerdeclare i32 @bar(...) nounwind
19