aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/frontend-passes.cc
diff options
context:
space:
mode:
authorHaochen Gui <guihaoc@gcc.gnu.org>2024-08-15 11:21:08 +0800
committerHaochen Gui <guihaoc@gcc.gnu.org>2024-08-15 11:27:11 +0800
commitd2e90c7d65749a02a20aca717ac47d02ef0b5d81 (patch)
treec4b9e7cc1f4ee06badcda65b8c777bc4c3dee8a1 /gcc/fortran/frontend-passes.cc
parentb1d21582bafa1954db3a62f0972ae3a2e3bc0b48 (diff)
downloadgcc-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