Use fmadd for multiply-and-add instructions.
This commit is contained in:
		
							parent
							
								
									e19850b114
								
							
						
					
					
						commit
						064d1a5d5d
					
				
					 1 changed files with 8 additions and 0 deletions
				
			
		|  | @ -711,6 +711,14 @@ PATTERNS | ||||||
|     FPU4R(DIVF.F, "fdivs") |     FPU4R(DIVF.F, "fdivs") | ||||||
|     FPU8R(DIVF.D, "fdiv") |     FPU8R(DIVF.D, "fdiv") | ||||||
| 
 | 
 | ||||||
|  |     out:(double)reg = ADDF.D(MULF.D(m1:(double)reg, m2:(double)reg), m3:(double)reg) | ||||||
|  |         emit "fmadd %out, %m1, %m2, %m3" | ||||||
|  |         cost 4; | ||||||
|  | 
 | ||||||
|  |     out:(double)reg = ADDF.D(m3:(double)reg, MULF.D(m1:(double)reg, m2:(double)reg)) | ||||||
|  |         emit "fmadd %out, %m1, %m2, %m3" | ||||||
|  |         cost 4; | ||||||
|  | 
 | ||||||
|     out:(float)reg = NEGF.F(left:(float)reg) |     out:(float)reg = NEGF.F(left:(float)reg) | ||||||
|         emit "fneg %out, %left" |         emit "fneg %out, %left" | ||||||
|         cost 4; |         cost 4; | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue