[DAGCombiner] Add target hook function to decide folding (mul (add x, c1), c2)
[llvm-project.git] / llvm / test / Transforms / Inline / internal-scc-members.ll
blobc12ff6cfdc58b2f7fa47ab88539b569e3df0b568
1 ; Test that the inliner can handle deleting functions within an SCC while still
2 ; processing the calls in that SCC.
4 ; RUN: opt < %s -S -inline | FileCheck %s
5 ; RUN: opt < %s -S -passes=inline | FileCheck %s
6 ; RUN: opt < %s -S -passes=inliner-wrapper | FileCheck %s
8 ; CHECK-LABEL: define internal void @test1_scc0()
9 ; CHECK-NOT: call
10 ; CHECK: call void @test1_scc0()
11 ; CHECK-NOT: call
12 ; CHECK: ret
13 define internal void @test1_scc0() {
14 entry:
15   call void @test1_scc1()
16   ret void
19 ; CHECK-NOT: @test1_scc1
20 define internal void @test1_scc1() {
21 entry:
22   call void @test1_scc0()
23   ret void
26 ; CHECK-LABEL: define void @test1()
27 ; CHECK: call void @test1_scc0()
28 define void @test1() {
29 entry:
30   call void @test1_scc0() noinline
31   ret void