15 lines
		
	
	
		
			333 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			15 lines
		
	
	
		
			333 B
		
	
	
	
		
			LLVM
		
	
	
	
| ; RUN: opt < %s -reassociate -S | FileCheck %s
 | |
|  
 | |
| ; CHECK-LABEL: func
 | |
| ; CHECK:       fmul fast double
 | |
| ; CHECK-NEXT:  fmul fast double
 | |
| ; CHECK-NEXT:  ret
 | |
| 
 | |
| define double @func(double %a, double %b) {
 | |
| entry:
 | |
|   %mul1 = fmul fast double %a, %a
 | |
|   %mul2 = fmul fast double %b, %b
 | |
|   %mul3 = fmul fast double %mul1, %mul2
 | |
|   ret double %mul3
 | |
| }
 |