35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			LLVM
		
	
	
	
| ; RUN: llc -O2 < %s | FileCheck %s
 | |
| target datalayout = "e-m:e-i64:64-n32:64"
 | |
| target triple = "powerpc64le-unknown-linux-gnu"
 | |
| 
 | |
| ; Check that the conditional return block of fmax_double3.exit was not
 | |
| ; duplicated into the if.then.i block
 | |
| ; CHECK: # %if.then.i
 | |
| ; CHECK: xxlxor
 | |
| ; CHECK: stxvd2x
 | |
| ; CHECK-NOT: bclr
 | |
| ; CHECK: {{^}}.LBB{{[0-9_]+}}:
 | |
| ; CHECK-SAME: # %fmax_double3.exit
 | |
| ; CHECK: bclr
 | |
| ; CHECK: # %if.then
 | |
| ; Function Attrs: nounwind
 | |
| define void @__fmax_double3_3D_exec(<2 x double>* %input6, i1 %bool1, i1 %bool2) #0 {
 | |
| entry:
 | |
|   br i1 %bool1, label %if.then.i, label %fmax_double3.exit
 | |
| 
 | |
| if.then.i:                                        ; preds = %entry
 | |
|   store <2 x double> zeroinitializer, <2 x double>* %input6, align 32
 | |
|   br label %fmax_double3.exit
 | |
| 
 | |
| fmax_double3.exit:                                ; preds = %if.then.i, %entry
 | |
|   br i1 %bool2, label %if.then, label %do.end
 | |
| 
 | |
| if.then:                                          ; preds = %fmax_double3.exit
 | |
|   unreachable
 | |
| 
 | |
| do.end:                                           ; preds = %fmax_double3.exit
 | |
|   ret void
 | |
| }
 | |
| 
 | |
| attributes #0 = { nounwind }
 |