diff options
Diffstat (limited to 'test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll')
-rw-r--r-- | test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll b/test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll new file mode 100644 index 000000000000..5f784e065fb1 --- /dev/null +++ b/test/Transforms/GlobalOpt/2004-10-10-CastStoreOnce.ll @@ -0,0 +1,17 @@ +; RUN: llvm-as < %s | opt -globalopt + +@V = global float 1.200000e+01 ; <float*> [#uses=1] +@G = internal global i32* null ; <i32**> [#uses=2] + +define i32 @user() { + %P = load i32** @G ; <i32*> [#uses=1] + %Q = load i32* %P ; <i32> [#uses=1] + ret i32 %Q +} + +define void @setter() { + %Vi = bitcast float* @V to i32* ; <i32*> [#uses=1] + store i32* %Vi, i32** @G + ret void +} + |