re PR target/85456 (PowerPC: Using -mabi=ieeelongdouble calls wrong function for...
authorMichael Meissner <meissner@linux.ibm.com>
Fri, 20 Apr 2018 21:27:08 +0000 (21:27 +0000)
committerMichael Meissner <meissner@gcc.gnu.org>
Fri, 20 Apr 2018 21:27:08 +0000 (21:27 +0000)
commit661eb8f9e5270df79c21601273219e2a8e282204
tree0177db3daa9c272dc9903521a296e8daf574d0ed
parent8833e667be9d960a556b53bfd25101165b92a0b5
re PR target/85456 (PowerPC: Using -mabi=ieeelongdouble calls wrong function for __builtin_powi.)

[libgcc]
2018-04-20  Michael Meissner  <meissner@linux.ibm.com>

PR target/85456
* config/rs6000/_powikf2.c: New file.  Add support for the
__builtin_powil function when long double is IEEE 128-bit floating
point.
* config/rs6000/float128-ifunc.c (__powikf2_resolve): Add
__powikf2 support.
(__powikf2): Likewise.
* config/rs6000/quad-float128.h (__powikf2_sw): Likewise.
(__powikf2_hw): Likewise.
(__powikf2): Likewise.
* config/rs6000/t-float128 (fp128_ppc_funcs): Likewise.
* config/rs6000/t-float128-hw (fp128_hw_func): Likewise.
(_powikf2-hw.c): Likewise.

[gcc]
2018-04-20  Michael Meissner  <meissner@linux.ibm.com>

PR target/85456
* config/rs6000/rs6000.c (init_float128_ieee): Add support to call
__powikf2 when long double is IEEE 128-bit.

[gcc/testsuite]
2018-04-20  Michael Meissner  <meissner@linux.ibm.com>

PR target/85456
* gcc.target/powerpc/pr85456.c: New test.

From-SVN: r259533
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/pr85456.c [new file with mode: 0644]
libgcc/ChangeLog
libgcc/config/rs6000/_powikf2.c [new file with mode: 0644]
libgcc/config/rs6000/float128-ifunc.c
libgcc/config/rs6000/quad-float128.h
libgcc/config/rs6000/t-float128
libgcc/config/rs6000/t-float128-hw