[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / tools / llvm-extract / recursive.ll
blob7fa9eceba91eb4bd12b78b5ef3bc58a79e23f885
1 ; RUN: llvm-extract -func=a --recursive %s -S | FileCheck --check-prefix=CHECK-AB %s
2 ; RUN: llvm-extract -func=a --recursive --delete %s -S | FileCheck --check-prefix=CHECK-CD %s
3 ; RUN: llvm-extract -func=d --recursive %s -S | FileCheck --check-prefix=CHECK-CD %s
4 ; RUN: llvm-extract -func=e --recursive %s -S | FileCheck --check-prefix=CHECK-CD %s
6 ; CHECK-AB: define void @a
7 ; CHECK-AB: define void @b
8 ; CHECK-AB-NOT: define void @c
9 ; CHECK-AB-NOT: define void @d
11 ; CHECK-CD-NOT: define void @a
12 ; CHECK-CD-NOT: define void @b
13 ; CHECK-CD: define void @c
14 ; CHECK-CD: define void @d
16 define void @a() {
17   call void @b()
18   ret void
21 define void @b() {
22   ret void
25 define void @c() {
26   call void @d()
27   ret void
30 define void @d() {
31   call void @c()
32   ret void
35 define void @e() {
36   invoke void @c()
37   to label %L unwind label %L
39   ret void