Home | History | Annotate | Download | only in CFLAliasAnalysis
      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-basicaa -cfl-aa -aa-eval -print-may-aliases -disable-output 2>&1 | FileCheck %s
      6 
      7 ; CHECK:     Function: test
      8 ; CHECK:     MayAlias: 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
     17 }
     18 
     19 declare void @set_thepointer(i8* %P)
     20 declare i8* @get_thepointer()
     21