diff options
author | Haochen Gui <guihaoc@gcc.gnu.org> | 2024-08-15 11:21:08 +0800 |
---|---|---|
committer | Haochen Gui <guihaoc@gcc.gnu.org> | 2024-08-15 11:27:11 +0800 |
commit | d2e90c7d65749a02a20aca717ac47d02ef0b5d81 (patch) | |
tree | c4b9e7cc1f4ee06badcda65b8c777bc4c3dee8a1 /gcc/fortran/frontend-passes.cc | |
parent | b1d21582bafa1954db3a62f0972ae3a2e3bc0b48 (diff) | |
download | gcc-d2e90c7d65749a02a20aca717ac47d02ef0b5d81.zip gcc-d2e90c7d65749a02a20aca717ac47d02ef0b5d81.tar.gz gcc-d2e90c7d65749a02a20aca717ac47d02ef0b5d81.tar.bz2 |
Value Range: Add range op for builtin isnormal
The former patch adds optab for builtin isnormal. Thus builtin isnormal
might not be folded at front end. So the range op for isnormal is needed
for value range analysis. This patch adds range op for builtin isnormal.
gcc/
* gimple-range-op.cc (class cfn_isfinite): New.
(op_cfn_finite): New variables.
(gimple_range_op_handler::maybe_builtin_call): Handle
CFN_BUILT_IN_ISFINITE.
* value-range.h (class frange): Declear known_isnormal and
known_isdenormal_or_zero.
(frange::known_isnormal): Define.
(frange::known_isdenormal_or_zero): Define.
gcc/testsuite/
* gcc.dg/tree-ssa/range-isnormal.c: New test.
Diffstat (limited to 'gcc/fortran/frontend-passes.cc')
0 files changed, 0 insertions, 0 deletions