Home | History | Annotate | Download | only in MemorySSA
      1 ; RUN: opt -aa-pipeline=basic-aa -passes='print<memoryssa>,verify<memoryssa>' -disable-output < %s 2>&1 | FileCheck %s
      2 target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
      3 
      4 define void @test() {
      5 entry:
      6   br i1 undef, label %split1, label %split2
      7 
      8 split1:
      9   store i16 undef, i16* undef, align 2
     10  br label %merge
     11 split2:
     12  br label %merge
     13 forwardunreachable:
     14   br label %merge
     15 merge:
     16 ; The forwardunreachable block still needs an entry in the phi node,
     17 ; because it is reverse reachable, so the CFG still has it as a
     18 ; predecessor of the block
     19 ; CHECK:  3 = MemoryPhi({split1,1},{split2,liveOnEntry},{forwardunreachable,liveOnEntry})
     20   store i16 undef, i16* undef, align 2
     21   ret void
     22 }
     23 
     24