re PR target/71241 ([x86] Missing built-in functions for float128 NaNs)
authorUros Bizjak <uros@gcc.gnu.org>
Sun, 12 Jun 2016 17:22:16 +0000 (19:22 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Sun, 12 Jun 2016 17:22:16 +0000 (19:22 +0200)
commitaa8fdb441fe94e5527ec527b9cd752e67e040bdc
tree44f30b6b04720ade2d2ce3bbb6de39e816c62170
parenta543674d471542144274ecb561f60f50cee1915c
re PR target/71241 ([x86] Missing built-in functions for float128 NaNs)

PR target/71241
* config/i386/i386.i386-builtin-types.def (CONST_STRING):
New primitive type.
(FLOAT128_FTYPE_CONST_STRING): New function type.
* config/i386/i386.c (enum ix86_builtins) [IX86_BUILTIN_NANQ]: New.
[IX86_BUILTIN_NANSQ]: Ditto.
(ix86_fold_builtin): Handle IX86_BUILTIN_NANQ and IX86_BUILTIN_NANSQ.
(ix86_init_builtin_types) Declare const_string_type_node.
Add __builtin_nanq and __builtin_nansq builtin functions.
(ix86_expand_builtin): Handle IX86_BUILTIN_NANQ and IX86_BUILTIN_NANSQ.
* doc/extend.texi (x86 Built-in Functions): Document
__builtin_nanq and __builtin_nansq.

testsuite/ChangeLog:

PR target/71241
* testsuite/gcc.dg/torture/float128-nan.c: New test.

From-SVN: r237338
gcc/ChangeLog
gcc/config/i386/i386-builtin-types.def
gcc/config/i386/i386.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/float128-nan.c [new file with mode: 0644]