------- Additional Comments From rth at redhat dot com  2004-01-23 08:24 -------
Subject: Re: PR 13722 candidate fix

On Thu, Jan 22, 2004 at 11:43:40PM -0800, Zack Weinberg wrote:
> +         out[0] = adjust_automodify_address
> +           (in, DImode, gen_rtx_POST_INC (Pmode, base), 0);
> +
> +         if (GET_CODE (XEXP (offset, 1)) == REG)
> +           {
> +             rtx reg = XEXP (offset, 1);
> +             /* Tweak the index register, then emit the first move as
> +                a POST_INC and the second as the original POST_MODIFY.  */
> +             emit_insn (GEN_FCN (add_optab->handlers[GET_MODE 
> (reg)].insn_code)
> +                        (reg, reg, GEN_INT (-8)));

You can't modify the POST_MODIFY operand.
You need to modify the address register a third time, ie.

        ld8     x = [a], 8
        ld8     y = [a], -8
        add     a = r, a
or
        ld8     x = [a], 8
        ld8     y = [a], r
        adds    a = -8, a



r~


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13722

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


Reply via email to