1; We previously had a case where we would put results from a no-args call in 2; its own stratified set. This would make cases like the one in @test say that 3; nothing (except %Escapes and %Arg) can alias 4 5; RUN: opt < %s -disable-basic-aa -cfl-steens-aa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s 6 7; CHECK: Function: test 8; CHECK: NoAlias: i8* %Arg, i8* %Escapes 9; CHECK: MayAlias: i8* %Arg, i8* %Retrieved 10; CHECK: MayAlias: i8* %Escapes, i8* %Retrieved 11define void @test(i8* %Arg) { 12 %Noalias = alloca i8 13 %Escapes = alloca i8 14 call void @set_thepointer(i8* %Escapes) 15 %Retrieved = call i8* @get_thepointer() 16 ret void 17} 18 19declare void @set_thepointer(i8* %P) 20declare i8* @get_thepointer() 21