[Bug target/71869] __builtin_isgreater raises an invalid exception on PPC64 using __float128 inputs.
meissner at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jul 27 04:46:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71869
--- Comment #2 from Michael Meissner <meissner at gcc dot gnu.org> ---
Author: meissner
Date: Wed Jul 27 04:45:59 2016
New Revision: 238779
URL: https://gcc.gnu.org/viewcvs?rev=238779&root=gcc&view=rev
Log:
[gcc]
2016-07-26 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/71869
* config/rs6000/rs6000.c (rs6000_generate_compare): Rework
__float128 support when we don't have hardware support, so that
the IEEE built-in functions like isgreater, first call __unordkf3
to make sure neither operand is a NaN, and if both operands are
ordered, do the normal comparison.
[gcc/testsuite]
2016-07-26 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/71869
* gcc.target/powerpc/float128-cmp.c: New test to make sure that
IEEE built-in functions handle quiet and signalling NaNs
correctly.
Added:
trunk/gcc/testsuite/gcc.target/powerpc/float128-cmp.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list