Skip to content

Commit 74225b6

Browse files
committed
Additional test with a call to library function without NoCallback
1 parent 6e0bbc2 commit 74225b6

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --check-attributes --version 5
2+
; RUN: opt < %s -passes="lto<O2>" -S | FileCheck %s
3+
4+
@.str = private unnamed_addr constant [7 x i8] c"Hello \00", align 1
5+
6+
; Function Attrs: nofree noinline nounwind uwtable vscale_range(1,16)
7+
define internal void @bob() local_unnamed_addr #0 {
8+
; CHECK: Function Attrs: nofree noinline norecurse nounwind uwtable
9+
; CHECK-LABEL: define internal fastcc void @bob(
10+
; CHECK-SAME: ) unnamed_addr #[[ATTR0:[0-9]+]] {
11+
; CHECK-NEXT: [[TMP1:%.*]] = tail call i32 (ptr, ...) @printf(ptr noundef nonnull dereferenceable(1) @.str)
12+
; CHECK-NEXT: ret void
13+
;
14+
%1 = tail call i32 (ptr, ...) @printf(ptr noundef nonnull dereferenceable(1) @.str)
15+
ret void
16+
}
17+
18+
; Function Attrs: nofree nounwind
19+
declare noundef i32 @printf(ptr nocapture noundef readonly, ...) local_unnamed_addr #1
20+
21+
; Function Attrs: nofree norecurse nounwind uwtable vscale_range(1,16)
22+
define dso_local noundef i32 @main() local_unnamed_addr #2 {
23+
; CHECK: Function Attrs: nofree norecurse nounwind uwtable
24+
; CHECK-LABEL: define dso_local noundef i32 @main(
25+
; CHECK-SAME: ) local_unnamed_addr #[[ATTR2:[0-9]+]] {
26+
; CHECK-NEXT: tail call fastcc void @bob()
27+
; CHECK-NEXT: ret i32 0
28+
;
29+
tail call void @bob()
30+
ret i32 0
31+
}
32+
33+
34+
attributes #0 = { nofree noinline nounwind uwtable }
35+
attributes #1 = { nofree nounwind }
36+
attributes #2 = { nofree norecurse nounwind uwtable }

0 commit comments

Comments
 (0)