forked from OSchip/llvm-project
				
			
		
			
				
	
	
		
			19 lines
		
	
	
		
			504 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			19 lines
		
	
	
		
			504 B
		
	
	
	
		
			LLVM
		
	
	
	
| ; Test merging of blocks with phi nodes.
 | |
| ;
 | |
| ; RUN: opt < %s -simplifycfg -S | not grep N:
 | |
| ;
 | |
| 
 | |
| define i32 @test(i1 %a) {
 | |
| Q:
 | |
|         br i1 %a, label %N, label %M
 | |
| N:              ; preds = %Q
 | |
|         br label %M
 | |
| M:              ; preds = %N, %Q
 | |
|         ; It's ok to merge N and M because the incoming values for W are the
 | |
|         ; same for both cases...
 | |
|         %W = phi i32 [ 2, %N ], [ 2, %Q ]               ; <i32> [#uses=1]
 | |
|         %R = add i32 %W, 1              ; <i32> [#uses=1]
 | |
|         ret i32 %R
 | |
| }
 | |
| 
 |