Skip to content

Commit

Permalink
[dom] Add a basic dominator tree test.
Browse files Browse the repository at this point in the history
Correct, we have *zero* basic testing of the dominator tree in the
regression test suite. There is a single test that even prints it out,
and that test only checks a single line of the output. There are
a handful of tests that check post dominators, but all of those are
looking for bugs rather than just exercising the basic machinery.

This test is super boring and unexciting. But hey, it's something.
I needed there to be something so I could switch the basic test to run
with both the old and new pass manager.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@225936 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
chandlerc committed Jan 14, 2015
1 parent e928b40 commit d39ad60
Showing 1 changed file with 57 additions and 0 deletions.
57 changes: 57 additions & 0 deletions test/Analysis/Dominators/basic.ll
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
; RUN: opt < %s -domtree -analyze | FileCheck %s

define void @test1() {
; CHECK-LABEL: 'Dominator Tree Construction' for function 'test1':
; CHECK: [1] %entry
; CHECK-NEXT: [2] %a
; CHECK-NEXT: [2] %c
; CHECK-NEXT: [3] %d
; CHECK-NEXT: [3] %e
; CHECK-NEXT: [2] %b

entry:
br i1 undef, label %a, label %b

a:
br label %c

b:
br label %c

c:
br i1 undef, label %d, label %e

d:
ret void

e:
ret void
}

define void @test2() {
; CHECK-LABEL: 'Dominator Tree Construction' for function 'test2':
; CHECK: [1] %entry
; CHECK-NEXT: [2] %a
; CHECK-NEXT: [3] %b
; CHECK-NEXT: [4] %c
; CHECK-NEXT: [5] %d
; CHECK-NEXT: [5] %ret

entry:
br label %a

a:
br label %b

b:
br i1 undef, label %a, label %c

c:
br i1 undef, label %d, label %ret

d:
br i1 undef, label %a, label %ret

ret:
ret void
}

0 comments on commit d39ad60

Please sign in to comment.