Commit b1a22407 by Roger Sayle Committed by Roger Sayle

re PR rtl-optimization/19800 (mmix-knuth-mmixware broken, building newlib/libm/common/s_fmax.c)


	PR rtl-optimization/19800
	* simplify_rtx.c (simplify_relational_operaration_1): Explicitly
	call gen_lowpart_common and gen_lowpart_SUBREG instead of calling
	gen_lowpart.

From-SVN: r94691
parent 149056b0
2005-02-06 Roger Sayle <roger@eyesopen.com>
PR rtl-optimization/19800
* simplify_rtx.c (simplify_relational_operaration_1): Explicitly
call gen_lowpart_common and gen_lowpart_SUBREG instead of calling
gen_lowpart.
2005-02-07 Ralf Corsepius <ralf.corsepius@rtems.org>
* config/m68k/t-rtems (MULTILIB_MATCHES): Let m528x match m5200.
......
......@@ -2888,9 +2888,17 @@ simplify_relational_operation_1 (enum rtx_code code, enum machine_mode mode,
&& cmp_mode != VOIDmode
&& nonzero_bits (op0, cmp_mode) == 1
&& STORE_FLAG_VALUE == 1)
return GET_MODE_SIZE (mode) > GET_MODE_SIZE (cmp_mode)
? simplify_gen_unary (ZERO_EXTEND, mode, op0, cmp_mode)
: gen_lowpart (mode, op0);
{
rtx tmp;
if (GET_MODE_SIZE (mode) > GET_MODE_SIZE (cmp_mode))
return simplify_gen_unary (ZERO_EXTEND, mode, op0, cmp_mode);
tmp = gen_lowpart_common (mode, op0);
if (tmp)
return tmp;
if (GET_MODE (op0) != mode)
return gen_lowpart_SUBREG (mode, op0);
return op0;
}
return NULL_RTX;
}
......
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