Commit 2c74fb2b by Andreas Schwab Committed by Jeff Law

loop.c (check_dbra_loop): While reversing the loop...

        * loop.c (check_dbra_loop): While reversing the loop, if the
        comparison value has a VOID mode use the mode of the other operand
        to compute the mask.

From-SVN: r24444
parent ff381587
1998-12-30 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* loop.c (check_dbra_loop): While reversing the loop, if the
comparison value has a VOID mode use the mode of the other operand
to compute the mask.
Wed Dec 30 22:24:00 1998 Michael Meissner <meissner@cygnus.com> Wed Dec 30 22:24:00 1998 Michael Meissner <meissner@cygnus.com>
* rs6000.md ({save,restore}_stack_function): Take 2 operands to * rs6000.md ({save,restore}_stack_function): Take 2 operands to
......
...@@ -6857,8 +6857,12 @@ check_dbra_loop (loop_end, insn_count, loop_start, loop_info) ...@@ -6857,8 +6857,12 @@ check_dbra_loop (loop_end, insn_count, loop_start, loop_info)
add_val = INTVAL (bl->biv->add_val); add_val = INTVAL (bl->biv->add_val);
comparison_value = XEXP (comparison, 1); comparison_value = XEXP (comparison, 1);
comparison_const_width if (GET_MODE (comparison_value) == VOIDmode)
= GET_MODE_BITSIZE (GET_MODE (XEXP (comparison, 1))); comparison_const_width
= GET_MODE_BITSIZE (GET_MODE (XEXP (comparison, 0)));
else
comparison_const_width
= GET_MODE_BITSIZE (GET_MODE (comparison_value));
if (comparison_const_width > HOST_BITS_PER_WIDE_INT) if (comparison_const_width > HOST_BITS_PER_WIDE_INT)
comparison_const_width = HOST_BITS_PER_WIDE_INT; comparison_const_width = HOST_BITS_PER_WIDE_INT;
comparison_sign_mask comparison_sign_mask
......
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