summaryrefslogtreecommitdiff
path: root/test/Transforms/GlobalOpt/alias-resolve.ll
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2013-12-22 00:04:03 +0000
committerDimitry Andric <dim@FreeBSD.org>2013-12-22 00:04:03 +0000
commitf8af5cf600354830d4ccf59732403f0f073eccb9 (patch)
tree2ba0398b4c42ad4f55561327538044fd2c925a8b /test/Transforms/GlobalOpt/alias-resolve.ll
parent59d6cff90eecf31cb3dd860c4e786674cfdd42eb (diff)
Diffstat (limited to 'test/Transforms/GlobalOpt/alias-resolve.ll')
-rw-r--r--test/Transforms/GlobalOpt/alias-resolve.ll35
1 files changed, 27 insertions, 8 deletions
diff --git a/test/Transforms/GlobalOpt/alias-resolve.ll b/test/Transforms/GlobalOpt/alias-resolve.ll
index 845117987391f..32f4bf8ebe255 100644
--- a/test/Transforms/GlobalOpt/alias-resolve.ll
+++ b/test/Transforms/GlobalOpt/alias-resolve.ll
@@ -1,19 +1,38 @@
+; We use a temporary file so that the test fails when opt crashes.
+
; RUN: opt < %s -globalopt -S > %t
-; RUN: cat %t | grep foo1 | count 1
-; RUN: cat %t | grep foo2 | count 4
-; RUN: cat %t | grep bar1 | count 1
-; RUN: cat %t | grep bar2 | count 4
+; RUN: FileCheck %s < %t
@foo1 = alias void ()* @foo2
+; CHECK: @foo1 = alias void ()* @foo2
+
@foo2 = alias weak void()* @bar1
+; CHECK: @foo2 = alias weak void ()* @bar2
+
@bar1 = alias void ()* @bar2
+; CHECK: @bar1 = alias void ()* @bar2
declare void @bar2()
+; CHECK: declare void @bar2()
define void @baz() {
entry:
- call void @foo1()
- call void @foo2()
- call void @bar1()
- ret void
+ call void @foo1()
+; CHECK: call void @foo2()
+
+ call void @foo2()
+; CHECK: call void @foo2()
+
+ call void @bar1()
+; CHECK: call void @bar2()
+
+ ret void
+}
+
+@foo3 = alias void ()* @bar3
+; CHECK-NOT: bar3
+
+define internal void @bar3() {
+ ret void
}
+;CHECK: define void @foo3