2003-12-12 03:16:30 +08:00
|
|
|
; This testcase consists of alias relations which should be completely
|
|
|
|
; resolvable by basicaa, but require analysis of getelementptr constant exprs.
|
|
|
|
|
2012-04-24 17:15:38 +08:00
|
|
|
; RUN: opt < %s -basicaa -aa-eval -print-may-aliases -disable-output |& FileCheck %s
|
2003-12-12 03:16:30 +08:00
|
|
|
|
2008-02-14 14:56:27 +08:00
|
|
|
%T = type { i32, [10 x i8] }
|
2003-12-12 03:16:30 +08:00
|
|
|
|
2008-02-14 14:56:27 +08:00
|
|
|
@G = external global %T
|
2003-12-12 03:16:30 +08:00
|
|
|
|
2012-04-24 17:15:38 +08:00
|
|
|
; CHECK: Function: test
|
|
|
|
; CHECK-NOT: May:
|
|
|
|
|
2008-02-14 14:56:27 +08:00
|
|
|
define void @test() {
|
|
|
|
%D = getelementptr %T* @G, i64 0, i32 0
|
|
|
|
%E = getelementptr %T* @G, i64 0, i32 1, i64 5
|
|
|
|
%F = getelementptr i32* getelementptr (%T* @G, i64 0, i32 0), i64 0
|
|
|
|
%X = getelementptr [10 x i8]* getelementptr (%T* @G, i64 0, i32 1), i64 0, i64 5
|
2003-12-12 03:16:30 +08:00
|
|
|
|
|
|
|
ret void
|
|
|
|
}
|