llvm-for-llvmta/test/Transforms/GlobalOpt/deadglobal.ll

29 lines
521 B
LLVM

; RUN: opt < %s -globalopt -S | FileCheck %s
@G1 = internal global i32 123 ; <i32*> [#uses=1]
@A1 = internal alias i32, i32* @G1
; CHECK-NOT: @G1
; CHECK: @G2
; CHECK-NOT: @G3
; CHECK-NOT: @A1
define void @foo1() {
; CHECK: define void @foo
; CHECK-NEXT: ret
store i32 1, i32* @G1
ret void
}
@G2 = linkonce_odr constant i32 42
define void @foo2() {
; CHECK-LABEL: define void @foo2(
; CHECK-NEXT: store
store i32 1, i32* @G2
ret void
}
@G3 = linkonce_odr constant i32 42