diff options
author | Jakub Jelinek <jakub@redhat.com> | 2024-06-04 15:52:09 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@redhat.com> | 2024-06-04 15:52:09 +0200 |
commit | 181861b072ff1ef650c1a9d0290a4a672b9e747c (patch) | |
tree | 35804e338ff7e7a3a6b4427c5c341d56cfdc2283 /gcc/fold-const.cc | |
parent | 7be37a9bd40862e6a4686105cacf22d393258848 (diff) | |
download | gcc-181861b072ff1ef650c1a9d0290a4a672b9e747c.zip gcc-181861b072ff1ef650c1a9d0290a4a672b9e747c.tar.gz gcc-181861b072ff1ef650c1a9d0290a4a672b9e747c.tar.bz2 |
fold-const: Handle CTZ like CLZ in tree_call_nonnegative_warnv_p [PR115337]
I think we can handle CTZ exactly like CLZ in tree_call_nonnegative_warnv_p.
Like CLZ, if it is UB at zero, the result range is [0, prec-1] and if it is
well defined at zero, the second argument provides the value at zero.
2024-06-04 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/115337
* fold-const.cc (tree_call_nonnegative_warnv_p): Handle
CASE_CFN_CTZ like CASE_CFN_CLZ.
Diffstat (limited to 'gcc/fold-const.cc')
-rw-r--r-- | gcc/fold-const.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fold-const.cc b/gcc/fold-const.cc index 048c654..92b048c 100644 --- a/gcc/fold-const.cc +++ b/gcc/fold-const.cc @@ -15250,6 +15250,7 @@ tree_call_nonnegative_warnv_p (tree type, combined_fn fn, tree arg0, tree arg1, return true; CASE_CFN_CLZ: + CASE_CFN_CTZ: if (arg1) return RECURSE (arg1); return true; |