Commit 04894c5a by Dale Johannesen Committed by Richard Henderson

re PR rtl-optimization/5269 (loop unroller fails to pull the right number of copies out)

        PR optimization/5269
        * unroll.c (precondition_loop_p): Make *increment be the correct
        sign when n_iterations known, to avoid confusing caller.

From-SVN: r48752
parent adc9fe67
2002-01-10 Dale Johannesen <dalej@apple.com>
PR optimization/5269
* unroll.c (precondition_loop_p): Make *increment be the correct
sign when n_iterations known, to avoid confusing caller.
2002-01-10 Kazu Hirata <kazu@hxi.com>
* doc/extend.texi (deprecated): Fix a typo.
......
......@@ -1392,9 +1392,18 @@ precondition_loop_p (loop, initial_value, final_value, increment, mode)
if (loop_info->n_iterations > 0)
{
*initial_value = const0_rtx;
*increment = const1_rtx;
*final_value = GEN_INT (loop_info->n_iterations);
if (INTVAL (loop_info->increment) > 0)
{
*initial_value = const0_rtx;
*increment = const1_rtx;
*final_value = GEN_INT (loop_info->n_iterations);
}
else
{
*initial_value = GEN_INT (loop_info->n_iterations);
*increment = constm1_rtx;
*final_value = const0_rtx;
}
*mode = word_mode;
if (loop_dump_stream)
......
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