51 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			51 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			LLVM
		
	
	
	
| ; REQUIRES: asserts
 | |
| ; RUN: opt  < %s -passes='print<domfrontier>'  2>&1 | FileCheck %s
 | |
| 
 | |
| define void @a_linear_impl_fig_1() nounwind {
 | |
| 0:
 | |
|   br label %"1"
 | |
| 1:
 | |
|   br label %"2"
 | |
| 2:
 | |
|   br label %"3"
 | |
| 3:
 | |
|   br i1 1, label %"13", label %"4"
 | |
| 4:
 | |
|   br i1 1, label %"5", label %"1"
 | |
| 5:
 | |
|   br i1 1, label %"8", label %"6"
 | |
| 6:
 | |
|   br i1 1, label %"7", label %"4"
 | |
| 7:
 | |
|   ret void
 | |
| 8:
 | |
|   br i1 1, label %"9", label %"1"
 | |
| 9:
 | |
|   br label %"10"
 | |
| 10:
 | |
|   br i1 1, label %"12", label %"11"
 | |
| 11:
 | |
|   br i1 1, label %"9", label %"8"
 | |
| 13:
 | |
|   br i1 1, label %"2", label %"1"
 | |
| 12:
 | |
|    switch i32 0, label %"1" [ i32 0, label %"9"
 | |
|                               i32 1, label %"8"]
 | |
| }
 | |
| 
 | |
| ; CHECK: DominanceFrontier for function: a_linear_impl_fig_1
 | |
| ; CHECK-DAG:  DomFrontier for BB %"0" is:
 | |
| ; CHECK-DAG:  DomFrontier for BB %"11" is:   %"{{[8|9]}}" %"{{[8|9]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"1" is:    %"1"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"2" is:    %"{{[1|2]}}" %"{{[1|2]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"3" is:    %"{{[1|2]}}" %"{{[1|2]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"13" is:   %"{{[1|2]}}" %"{{[1|2]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"4" is:    %"{{[1|4]}}" %"{{[1|4]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"5" is:    %"{{[1|4]}}" %"{{[1|4]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"8" is:    %"{{[1|8]}}" %"{{[1|8]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"6" is:    %"4"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"7" is:
 | |
| ; CHECK-DAG:  DomFrontier for BB %"9" is:    %"{{[1|8|9]}}" %"{{[1|8|9]}}" %"{{[1|8|9]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"10" is:   %"{{[1|8|9]}}" %"{{[1|8|9]}}" %"{{[1|8|9]}}"
 | |
| ; CHECK-DAG:  DomFrontier for BB %"12" is:   %"{{[1|8|9]}}" %"{{[1|8|9]}}" %"{{[1|8|9]}}"
 |