[llvm-objcopy] [COFF] Test absolute symbols wrt --strip-unneeded and --discard-all...
[llvm-complete.git] / test / Analysis / CFLAliasAnalysis / Steensgaard / opaque-call-alias.ll
bloba03b104778bdfb1d3e412fc2d024d40da83ac612
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
5 ; RUN: opt < %s -disable-basicaa -cfl-steens-aa -aa-eval -print-all-alias-modref-info -disable-output 2>&1 | FileCheck %s
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
11 define 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
19 declare void @set_thepointer(i8* %P)
20 declare i8* @get_thepointer()