]> git.ipfire.org Git - thirdparty/gcc.git/commit
Tidy up the range normalization code.
authorAldy Hernandez <aldyh@redhat.com>
Thu, 15 Jun 2023 15:28:21 +0000 (17:28 +0200)
committerAldy Hernandez <aldyh@redhat.com>
Thu, 29 Jun 2023 16:49:27 +0000 (18:49 +0200)
commit27a0f014170db29ae423b4bf7f9b630ccc6a5973
treef82ec547d767cae0438568ea8d68571f16653cc6
parentc41332abe7da981abdc23440e7e859b92ba065ec
Tidy up the range normalization code.

There's a few spots where a range is being altered in-place, but we
fail to call normalize the range.  This patch makes sure we always
call normalize_kind(), and that normalize_kind in turn calls
verify_range to make sure verything is canonical.

gcc/ChangeLog:

* value-range.cc (frange::set): Do not call verify_range.
(frange::normalize_kind): Verify range.
(frange::union_nans): Do not call verify_range.
(frange::union_): Same.
(frange::intersect): Same.
(irange::irange_single_pair_union): Call normalize_kind if
necessary.
(irange::union_): Same.
(irange::intersect): Same.
(irange::set_range_from_nonzero_bits): Verify range.
(irange::set_nonzero_bits): Call normalize_kind if necessary.
(irange::get_nonzero_bits): Tweak comment.
(irange::intersect_nonzero_bits): Call normalize_kind if
necessary.
(irange::union_nonzero_bits): Same.
* value-range.h (irange::normalize_kind): Verify range.
gcc/value-range.cc
gcc/value-range.h