diff options
author | Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2022-09-01 22:49:49 +0200 |
---|---|---|
committer | Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> | 2023-07-20 10:48:17 +0200 |
commit | 34cf27a64e7af949538e65bc266963c24f8da458 (patch) | |
tree | 2b6a08c8d6cd5973424ec90803599a20e8286423 /gcc/combine.cc | |
parent | bb42f05d0738bddc721e838ebe9993df39ff2e0f (diff) | |
download | gcc-34cf27a64e7af949538e65bc266963c24f8da458.zip gcc-34cf27a64e7af949538e65bc266963c24f8da458.tar.gz gcc-34cf27a64e7af949538e65bc266963c24f8da458.tar.bz2 |
Add __builtin_iseqsig()
iseqsig() is a C2x library function, for signaling floating-point
equality checks. Provide a GCC-builtin for it, which is folded to
a series of comparisons.
2022-09-01 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR middle-end/77928
gcc/
* doc/extend.texi: Document iseqsig builtin.
* builtins.cc (fold_builtin_iseqsig): New function.
(fold_builtin_2): Handle BUILT_IN_ISEQSIG.
(is_inexpensive_builtin): Handle BUILT_IN_ISEQSIG.
* builtins.def (BUILT_IN_ISEQSIG): New built-in.
gcc/c-family/
* c-common.cc (check_builtin_function_arguments):
Handle BUILT_IN_ISEQSIG.
gcc/testsuite/
* gcc.dg/torture/builtin-iseqsig-1.c: New test.
* gcc.dg/torture/builtin-iseqsig-2.c: New test.
* gcc.dg/torture/builtin-iseqsig-3.c: New test.
Diffstat (limited to 'gcc/combine.cc')
0 files changed, 0 insertions, 0 deletions