1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2 ; RUN: llc -mtriple=x86_64-linux < %s | FileCheck %s
4 declare dso_local ptr @foo()
6 define dereferenceable(8) ptr @test1() nounwind {
9 ; CHECK-NEXT: jmp foo # TAILCALL
10 %ret = tail call ptr @foo()
14 define ptr @test2() nounwind {
17 ; CHECK-NEXT: jmp foo # TAILCALL
18 %ret = tail call dereferenceable(8) ptr @foo()
22 define dereferenceable_or_null(8) ptr @test3() nounwind {
25 ; CHECK-NEXT: jmp foo # TAILCALL
26 %ret = tail call ptr @foo()
30 define ptr @test4() nounwind {
33 ; CHECK-NEXT: jmp foo # TAILCALL
34 %ret = tail call dereferenceable_or_null(8) ptr @foo()
38 define align 8 ptr @test5() nounwind {
41 ; CHECK-NEXT: jmp foo # TAILCALL
42 %ret = tail call ptr @foo()
46 define ptr @test6() nounwind {
49 ; CHECK-NEXT: jmp foo # TAILCALL
50 %ret = tail call align 8 ptr @foo()
55 define noundef ptr @test7() nounwind {
58 ; CHECK-NEXT: jmp foo # TAILCALL
59 %ret = tail call ptr @foo()
63 define ptr @test8() nounwind {
66 ; CHECK-NEXT: jmp foo # TAILCALL
67 %ret = tail call noundef ptr @foo()