diff options
author | Kenneth Zadeck <zadeck@naturalbridge.com> | 2014-05-09 12:21:23 +0000 |
---|---|---|
committer | Kenneth Zadeck <zadeck@gcc.gnu.org> | 2014-05-09 12:21:23 +0000 |
commit | b8d29c66597d6ff2a41ca6a190c0bd52126f491d (patch) | |
tree | f019b5811e7b62c0b3fe208ae9c32691d36d255e /gcc | |
parent | 04e137a19fc64c90072544fc63eb5d14c94dee8b (diff) | |
download | gcc-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/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fold-const.c | 2 |
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) { |