diff options
Diffstat (limited to 'test/Transforms/GlobalOpt/alias-resolve.ll')
-rw-r--r-- | test/Transforms/GlobalOpt/alias-resolve.ll | 35 |
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 |