Commit ccf7aef4 by Richard Henderson Committed by Richard Henderson

combine.c (force_to_mode): Handle FLOAT_MODE destinations for CONST_INT.

        * combine.c (force_to_mode): Handle FLOAT_MODE destinations
        for CONST_INT.

From-SVN: r57634
parent d454e75a
2002-09-29 Richard Henderson <rth@redhat.com>
* combine.c (force_to_mode): Handle FLOAT_MODE destinations
for CONST_INT.
2002-09-29 David Edelsohn <edelsohn@gnu.org>
* real.h (ibm_extended_format): Declare.
......
......@@ -6817,12 +6817,20 @@ force_to_mode (x, mode, mask, reg, just_select)
/* If none of the bits in X are needed, return a zero. */
if (! just_select && (nonzero & mask) == 0)
return const0_rtx;
x = const0_rtx;
/* If X is a CONST_INT, return a new one. Do this here since the
test below will fail. */
if (GET_CODE (x) == CONST_INT)
return gen_int_mode (INTVAL (x) & mask, mode);
{
if (SCALAR_INT_MODE_P (mode))
return gen_int_mode (INTVAL (x) & mask, mode);
else
{
x = GEN_INT (INTVAL (x) & mask);
return gen_lowpart_common (mode, x);
}
}
/* If X is narrower than MODE and we want all the bits in X's mode, just
get X in the proper mode. */
......
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