diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2017-04-16 16:01:22 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2017-04-16 16:01:22 +0000 |
commit | 71d5a2540a98c81f5bcaeb48805e0e2881f530ef (patch) | |
tree | 5343938942df402b49ec7300a1c25a2d4ccd5821 /test/tools/llvm-extract/recursive.ll | |
parent | 31bbf64f3a4974a2d6c8b3b27ad2f519caf74057 (diff) |
Diffstat (limited to 'test/tools/llvm-extract/recursive.ll')
-rw-r--r-- | test/tools/llvm-extract/recursive.ll | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/test/tools/llvm-extract/recursive.ll b/test/tools/llvm-extract/recursive.ll new file mode 100644 index 000000000000..54813dba7968 --- /dev/null +++ b/test/tools/llvm-extract/recursive.ll @@ -0,0 +1,32 @@ +; RUN: llvm-extract -func=a --recursive %s -S | FileCheck --check-prefix=CHECK-AB %s +; RUN: llvm-extract -func=a --recursive --delete %s -S | FileCheck --check-prefix=CHECK-CD %s +; RUN: llvm-extract -func=d --recursive %s -S | FileCheck --check-prefix=CHECK-CD %s + +; CHECK-AB: define void @a +; CHECK-AB: define void @b +; CHECK-AB-NOT: define void @c +; CHECK-AB-NOT: define void @d + +; CHECK-CD-NOT: define void @a +; CHECK-CD-NOT: define void @b +; CHECK-CD: define void @c +; CHECK-CD: define void @d + +define void @a() { + call void @b() + ret void +} + +define void @b() { + ret void +} + +define void @c() { + call void @d() + ret void +} + +define void @d() { + call void @c() + ret void +} |