Use fmadd for multiply-and-add instructions.
This commit is contained in:
parent
e19850b114
commit
064d1a5d5d
|
@ -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…
Reference in a new issue