blob: d12709a84fbf4457e16962ea5c3d44af9ae83454 [file] [log] [blame]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001; This is a test case for the expression analysis code, not really indvars.
2; It was assuming any constant of int type was a ConstantInteger.
3;
Dan Gohman1b4c27772009-09-08 16:50:01 +00004; RUN: opt %s -indvars
Dan Gohmanf17a25c2007-07-18 16:29:46 +00005
Tanya Lattner4c4d0b82008-03-01 09:15:35 +00006@X = global i32 7 ; <i32*> [#uses=1]
Dan Gohmanf17a25c2007-07-18 16:29:46 +00007
Tanya Lattner4c4d0b82008-03-01 09:15:35 +00008define void @test(i32 %A) {
9; <label>:0
Dan Gohmanf17a25c2007-07-18 16:29:46 +000010 br label %Loop
Tanya Lattner4c4d0b82008-03-01 09:15:35 +000011
12Loop: ; preds = %Loop, %0
13 %IV = phi i32 [ %A, %0 ], [ %IVNext, %Loop ] ; <i32> [#uses=1]
14 %IVNext = add i32 %IV, ptrtoint (i32* @X to i32) ; <i32> [#uses=1]
Dan Gohmanf17a25c2007-07-18 16:29:46 +000015 br label %Loop
16}
Tanya Lattner4c4d0b82008-03-01 09:15:35 +000017