; Basic test to check that DominatorTreeAnalysis is preserved by IPSCCP and
; the following analysis can re-use it. The test contains two trivial functions
; IPSCCP can simplify, so we can test the case where IPSCCP makes changes.

; RUN: opt -disable-verify -debug-pass-manager \
; RUN:     -passes='function(require<domtree>,require<postdomtree>),ipsccp,function(require<domtree>,require<postdomtree>)' -S  %s 2>&1 \
; RUN:     | FileCheck -check-prefixes='IR,NEW-PM' %s

; RUN: opt -passes='function(require<postdomtree>),ipsccp,function(verify<domtree>)' -S  %s | FileCheck -check-prefixes='IR' %s

; NEW-PM: Running analysis: DominatorTreeAnalysis on f1
; NEW-PM: Running analysis: PostDominatorTreeAnalysis on f1
; NEW-PM: Running analysis: DominatorTreeAnalysis on f2
; NEW-PM: Running analysis: PostDominatorTreeAnalysis on f2
; NEW-PM: Running pass: IPSCCPPass
; NEW-PM-DAG: Running analysis: AssumptionAnalysis on f1
; NEW-PM-DAG: Running analysis: AssumptionAnalysis on f2
; NEW-PM-NOT: Running analysis: AssumptionAnalysis

; IR-LABEL: @f1
; IR-LABEL: entry:
; IR-NEXT: br label %bb2
; IR-LABEL: bb2:
; IR-NEXT: undef

; IR-LABEL: @f2
; IR-NOT: icmp
; IR:    br label %bbtrue
; IR-LABEL: bbtrue:
; IR-NEXT:   ret i32 0
define internal i32 @f1() readnone {
entry:
  br i1 false, label %bb1, label %bb2
bb1:
  ret i32 10
bb2:
  ret i32 10
}

define i32 @f2(i32 %n) {
  %i = call i32 @f1()
  %cmp = icmp eq i32 %i, 10
  br i1 %cmp, label %bbtrue, label %bbfalse

bbtrue:
  ret i32 0

bbfalse:
  %res = add i32 %n, %i
  ret i32 %res
}
