blob: ed89cb56cfffe525b2b2211d44af847ea3c3ca22 [file] [log] [blame]
Dan Gohman1b4c27772009-09-08 16:50:01 +00001; RUN: opt %s -basicaa -gvn -instcombine |\
Tanya Lattnera695f012008-02-14 06:56:27 +00002; RUN: llvm-dis | grep {load i32\\* %A}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00003
Tanya Lattnera695f012008-02-14 06:56:27 +00004declare double* @useit(i32*)
Dan Gohmanf17a25c2007-07-18 16:29:46 +00005
Tanya Lattnera695f012008-02-14 06:56:27 +00006define i32 @foo(i32 %Amt) {
7 %A = malloc i32, i32 %Amt
8 %P = call double* @useit(i32* %A)
Dan Gohmanf17a25c2007-07-18 16:29:46 +00009
Tanya Lattnera695f012008-02-14 06:56:27 +000010 %X = load i32* %A
Dan Gohmanf17a25c2007-07-18 16:29:46 +000011 store double 0.0, double* %P
Tanya Lattnera695f012008-02-14 06:56:27 +000012 %Y = load i32* %A
13 %Z = sub i32 %X, %Y
14 ret i32 %Z
Dan Gohmanf17a25c2007-07-18 16:29:46 +000015}