aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorKenneth Zadeck <zadeck@naturalbridge.com>2014-05-09 12:21:23 +0000
committerKenneth Zadeck <zadeck@gcc.gnu.org>2014-05-09 12:21:23 +0000
commitb8d29c66597d6ff2a41ca6a190c0bd52126f491d (patch)
treef019b5811e7b62c0b3fe208ae9c32691d36d255e /gcc
parent04e137a19fc64c90072544fc63eb5d14c94dee8b (diff)
downloadgcc-b8d29c66597d6ff2a41ca6a190c0bd52126f491d.zip
gcc-b8d29c66597d6ff2a41ca6a190c0bd52126f491d.tar.gz
gcc-b8d29c66597d6ff2a41ca6a190c0bd52126f491d.tar.bz2
re PR middle-end/61111 (Infinite recursion between fold_build2_stat_loc and fold_binary_loc)
2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com> PR middle-end/61111 * fold-const.c (fold_binary_loc): Changed width of mask. From-SVN: r210274
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/fold-const.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 70614cf..ffe31f3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-05-06 Kenneth Zadeck <zadeck@naturalbridge.com>
+
+ PR middle-end/61111
+ * fold-const.c (fold_binary_loc): Changed width of mask.
+
2014-05-09 Georg-Johann Lay <avr@gjlay.de>
* config/avr/avr-fixed.md (round<mode>3): Use -1U instead of -1 in
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 831aaba..c5bf811 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -11358,7 +11358,7 @@ fold_binary_loc (location_t loc,
wide_int c3 = c1.and_not (c2);
for (w = BITS_PER_UNIT; w <= width; w <<= 1)
{
- wide_int mask = wi::mask (width - w, false,
+ wide_int mask = wi::mask (w, false,
TYPE_PRECISION (type));
if (((c1 | c2) & mask) == mask && c1.and_not (mask) == 0)
{