llvm/llvm/test/Transforms/SimpleLoopUnswitch/pr58719.ll

; RUN: opt -passes="require<globals-aa>,cgscc(instcombine),function(loop-mssa(loop-simplifycfg)),recompute-globalsaa,function(loop-mssa(simple-loop-unswitch<nontrivial>),print<memoryssa>)" -disable-output < %s

; Check that don't crash if the Alias Analysis returns better results than
; before when cloning loop's memoryssa.
define void @f(ptr %p) {
entry:
  %0 = load i16, ptr %p, align 1
  ret void
}

define void @g(i1 %tobool.not) {
entry:
  br label %for.cond

for.cond:                                         ; preds = %if.then, %for.cond, %entry
  br i1 %tobool.not, label %if.then, label %for.cond

if.then:                                          ; preds = %for.cond
  call void @f()
  br label %for.cond
}