blob: 1edbb9fff56b113b1d7b533118f64c700ba5f98f [file] [log] [blame]
Chandler Carruth7b560d42015-09-09 17:55:00 +00001; RUN: opt < %s -disable-basicaa -cfl-aa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
Hal Finkel7529c552014-09-02 21:43:13 +00002; Derived from BasicAA/2010-09-15-GEP-SignedArithmetic.ll
3
4target datalayout = "e-p:32:32:32"
5
Daniel Berlin16f7a522015-01-26 17:31:17 +00006; FIXME: This could be PartialAlias but CFLAA can't currently prove it
7; CHECK: 1 may alias response
Hal Finkel7529c552014-09-02 21:43:13 +00008
Daniel Berlin16f7a522015-01-26 17:31:17 +00009define i32 @test(i32 %indvar) nounwind {
10 %tab = alloca i32, align 4
Hal Finkel7529c552014-09-02 21:43:13 +000011 %tmp31 = mul i32 %indvar, -2
12 %tmp32 = add i32 %tmp31, 30
David Blaikie79e6c742015-02-27 19:29:02 +000013 %t.5 = getelementptr i32, i32* %tab, i32 %tmp32
David Blaikiea79ac142015-02-27 21:17:42 +000014 %loada = load i32, i32* %tab
Hal Finkel7529c552014-09-02 21:43:13 +000015 store i32 0, i32* %t.5
David Blaikiea79ac142015-02-27 21:17:42 +000016 %loadb = load i32, i32* %tab
Hal Finkel7529c552014-09-02 21:43:13 +000017 %rval = add i32 %loada, %loadb
18 ret i32 %rval
19}