diff options
author | Martin Liska <mliska@suse.cz> | 2022-10-15 15:32:39 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2022-10-15 15:32:39 +0200 |
commit | 2c92cfe87d2bb8aa0eb78f3932fca16699cb35c9 (patch) | |
tree | b118381a0a883a762ddd56c0e91608d937ee8bdf /gcc/analyzer | |
parent | bd21c04269deded2c7476ceca1100a26f28ea526 (diff) | |
parent | baeec7cc83b19b46d1c73523f06efa7ea2b30390 (diff) | |
download | gcc-2c92cfe87d2bb8aa0eb78f3932fca16699cb35c9.zip gcc-2c92cfe87d2bb8aa0eb78f3932fca16699cb35c9.tar.gz gcc-2c92cfe87d2bb8aa0eb78f3932fca16699cb35c9.tar.bz2 |
Merge branch 'master' into devel/sphinx
Diffstat (limited to 'gcc/analyzer')
-rw-r--r-- | gcc/analyzer/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/analyzer/svalue.cc | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/analyzer/ChangeLog b/gcc/analyzer/ChangeLog index 33477da..f753d1a 100644 --- a/gcc/analyzer/ChangeLog +++ b/gcc/analyzer/ChangeLog @@ -1,3 +1,9 @@ +2022-10-13 David Malcolm <dmalcolm@redhat.com> + + PR analyzer/107210 + * svalue.cc (constant_svalue::maybe_fold_bits_within): Only + attempt to extract individual bits when tree_fits_uhwi_p. + 2022-10-07 David Malcolm <dmalcolm@redhat.com> PR analyzer/105783 diff --git a/gcc/analyzer/svalue.cc b/gcc/analyzer/svalue.cc index a0838c0..4b00a81 100644 --- a/gcc/analyzer/svalue.cc +++ b/gcc/analyzer/svalue.cc @@ -884,7 +884,8 @@ constant_svalue::maybe_fold_bits_within (tree type, if (bits.m_size_in_bits == 1 && TREE_CODE (m_cst_expr) == INTEGER_CST && type - && INTEGRAL_TYPE_P (type)) + && INTEGRAL_TYPE_P (type) + && tree_fits_uhwi_p (m_cst_expr)) { unsigned HOST_WIDE_INT bit = bits.m_start_bit_offset.to_uhwi (); unsigned HOST_WIDE_INT mask = (1 << bit); |