Follow up to d0858bffa11, add missing REQUIRES x86
[llvm-project.git] / llvm / test / Transforms / Inline / call-site-attrs.ll
blob19b062e2b770df888534830cabacd614f721295d
1 ; RUN: opt < %s -passes=inline -S | FileCheck %s
2 ; RUN: opt < %s -passes='cgscc(inline)' -S | FileCheck %s
4 ; Always prefer call site attribute over function attribute
6 define internal i32 @inner1() {
7 ; CHECK: @inner1(
8   ret i32 1
11 define i32 @outer1() {
12 ; CHECK-LABEL: @outer1(
13 ; CHECK: call
15    %r = call i32 @inner1() noinline
16    ret i32 %r
19 define internal i32 @inner2() alwaysinline {
20 ; CHECK: @inner2(
21   ret i32 1
24 define i32 @outer2() {
25 ; CHECK-LABEL: @outer2(
26 ; CHECK: call
28    %r = call i32 @inner2() noinline
29    ret i32 %r
32 define i32 @inner3() alwaysinline {
33 ; CHECK: @inner3(
34   ret i32 1
37 define i32 @outer3() {
38 ; CHECK-LABEL: @outer3(
39 ; CHECK: call
41    %r = call i32 @inner3() noinline
42    ret i32 %r
45 define i32 @inner4() noinline {
46 ; CHECK: @inner4(
47   ret i32 1
50 define i32 @outer4() {
51 ; CHECK-LABEL: @outer4(
52 ; CHECK-NOT: call
53 ; CHECK: ret
55    %r = call i32 @inner4() alwaysinline
57    ret i32 %r