llvm-6502/test/Transforms/GlobalOpt/2009-02-15-ResolveAlias.ll
Duncan Sands 7a154cf228 Teach GlobalOpt to delete aliases with internal linkage (after
forwarding any uses).  GlobalDCE can also do this, but is only
run at -O3.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@90850 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-08 10:10:20 +00:00

25 lines
324 B
LLVM

; RUN: opt < %s -globalopt -S | FileCheck %s
define internal void @f() {
; CHECK-NOT: @f
; CHECK: define void @a
ret void
}
@a = alias void ()* @f
define void @g() {
call void()* @a()
ret void
}
@b = alias internal void ()* @g
; CHECK-NOT: @b
define void @h() {
call void()* @b()
; CHECK: call void @g
ret void
}