basic.ll 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. ; RUN: opt < %s -domtree -analyze | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-OLDPM
  2. ; RUN: opt < %s -disable-output -passes='print<domtree>' 2>&1 | FileCheck %s -check-prefix=CHECK -check-prefix=CHECK-NEWPM
  3. define void @test1() {
  4. ; CHECK-OLDPM-LABEL: 'Dominator Tree Construction' for function 'test1':
  5. ; CHECK-NEWPM-LABEL: DominatorTree for function: test1
  6. ; CHECK: [1] %entry
  7. ; CHECK-NEXT: [2] %a
  8. ; CHECK-NEXT: [2] %c
  9. ; CHECK-NEXT: [3] %d
  10. ; CHECK-NEXT: [3] %e
  11. ; CHECK-NEXT: [2] %b
  12. entry:
  13. br i1 undef, label %a, label %b
  14. a:
  15. br label %c
  16. b:
  17. br label %c
  18. c:
  19. br i1 undef, label %d, label %e
  20. d:
  21. ret void
  22. e:
  23. ret void
  24. }
  25. define void @test2() {
  26. ; CHECK-OLDPM-LABEL: 'Dominator Tree Construction' for function 'test2':
  27. ; CHECK-NEWPM-LABEL: DominatorTree for function: test2
  28. ; CHECK: [1] %entry
  29. ; CHECK-NEXT: [2] %a
  30. ; CHECK-NEXT: [3] %b
  31. ; CHECK-NEXT: [4] %c
  32. ; CHECK-NEXT: [5] %d
  33. ; CHECK-NEXT: [5] %ret
  34. entry:
  35. br label %a
  36. a:
  37. br label %b
  38. b:
  39. br i1 undef, label %a, label %c
  40. c:
  41. br i1 undef, label %d, label %ret
  42. d:
  43. br i1 undef, label %a, label %ret
  44. ret:
  45. ret void
  46. }