236
|
1 ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --function-signature --check-attributes
|
150
|
2 ; RUN: opt -S -passes=function-attrs < %s | FileCheck %s
|
|
3
|
|
4 @i = global i32 0
|
|
5
|
|
6 define void @foo() {
|
236
|
7 ; CHECK: Function Attrs: nofree nosync nounwind
|
|
8 ; CHECK-LABEL: define {{[^@]+}}@foo
|
|
9 ; CHECK-SAME: () #[[ATTR0:[0-9]+]] {
|
|
10 ; CHECK-NEXT: store i32 1, ptr @i, align 4
|
|
11 ; CHECK-NEXT: call void @bar()
|
|
12 ; CHECK-NEXT: ret void
|
|
13 ;
|
|
14 store i32 1, ptr @i
|
150
|
15 call void @bar()
|
|
16 ret void
|
|
17 }
|
|
18
|
|
19 define void @bar() {
|
236
|
20 ; CHECK: Function Attrs: nofree nosync nounwind
|
|
21 ; CHECK-LABEL: define {{[^@]+}}@bar
|
|
22 ; CHECK-SAME: () #[[ATTR0]] {
|
|
23 ; CHECK-NEXT: [[I:%.*]] = load i32, ptr @i, align 4
|
|
24 ; CHECK-NEXT: call void @foo()
|
|
25 ; CHECK-NEXT: ret void
|
|
26 ;
|
|
27 %i = load i32, ptr @i
|
150
|
28 call void @foo()
|
|
29 ret void
|
|
30 }
|