Commit fc06d7aa by Richard Kenner

(simplify_and_const_int): Never consider bits outside of MODE.

From-SVN: r3398
parent 89352663
......@@ -5899,8 +5899,11 @@ simplify_and_const_int (x, mode, varop, constop)
if (GET_CODE (varop) == CONST_INT)
return GEN_INT (constop & INTVAL (varop));
/* See what bits may be nonzero in VAROP. */
nonzero = nonzero_bits (varop, mode);
/* See what bits may be nonzero in VAROP. Unlike the general case of
a call to nonzero_bits, here we don't care about bits outside
MODE. */
nonzero = nonzero_bits (varop, mode) & GET_MODE_MASK (mode);
/* Turn off all bits in the constant that are known to already be zero.
Thus, if the AND isn't needed at all, we will have CONSTOP == NONZERO_BITS
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment