Use float in e_sqrt.c
authorPaul Clarke <pc@us.ibm.com>
Tue, 5 Feb 2019 01:16:50 +0000 (19:16 -0600)
committerGabriel F. T. Gomes <gabriel@inconstante.eti.br>
Mon, 11 Feb 2019 14:03:23 +0000 (12:03 -0200)
commita51bc4fe9da9f2b97877beb6692f7043f6c14a16
treea64960fa4e31858e5d96bc9d7e943cd105212c6e
parentfb25b1356ae6a0b2d27a307091ad4f384814cc77
Use float in e_sqrt.c

The type used within e_sqrt.c(__slow_ieee754_sqrtf) was, unnecessarily and
likely inadvertently, double.  float is not only appropriate, but also
more efficient, avoiding the need for the compiler to emit a
round-to-single-precision instruction.

This is the difference in compiled code:
 0000000000000000 <__ieee754_sqrtf>:
    0:  2c 08 20 ec     fsqrts  f1,f1
-   4:  18 08 20 fc     frsp    f1,f1
-   8:  20 00 80 4e     blr
+   4:  20 00 80 4e     blr

(Found by Anton Blanchard.)
ChangeLog
sysdeps/powerpc/fpu/e_sqrtf.c