fix PR4963: folding insertvalue would sometimes turn a packed struct into
[llvm/avr.git] / test / Transforms / GlobalDCE / 2002-08-17-FunctionDGE.ll
blob766c227460e6d310c1626f99d82d00dd4d09af95
1 ; Make sure that functions are removed successfully if they are referred to by
2 ; a global that is dead.  Make sure any globals they refer to die as well.
4 ; RUN: opt < %s -globaldce -S | not grep foo
6 ;; Unused, kills %foo
7 @b = internal global i32 ()* @foo               ; <i32 ()**> [#uses=0]
9 ;; Should die when function %foo is killed
10 @foo.upgrd.1 = internal global i32 7            ; <i32*> [#uses=1]
12  ;; dies when %b dies.
13 define internal i32 @foo() {
14         %ret = load i32* @foo.upgrd.1           ; <i32> [#uses=1]
15         ret i32 %ret