This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Code gen error on PowerPC
- To: Franz Sirl <Franz dot Sirl-kernel at lauterbach dot com>
- Subject: Re: Code gen error on PowerPC
- From: Jeffrey A Law <law at hurl dot cygnus dot com>
- Date: Tue, 02 Mar 1999 00:30:18 -0700
- cc: Richard Henderson <rth at cygnus dot com>, Gary Thomas <gdt at linuxppc dot org>, egcs-ppc at egcs dot cygnus dot com, egcs-bugs at egcs dot cygnus dot com
- Reply-To: law at cygnus dot com
In message <4.2.0.25.19990302025929.0370ae50@mail.lauterbach.com>you write:
> Hmm, I think this giv is setup by this hunk of code in find_mem_givs:
>
> case MEM:
> {
> rtx src_reg;
> rtx add_val;
> rtx mult_val;
> int benefit;
>
> benefit = general_induction_var (XEXP (x, 0),
> &src_reg, &add_val, &mult_val);
>
> /* Don't make a DEST_ADDR giv with mult_val == 1 && add_val == 0.
> Such a giv isn't useful. */
> if (benefit > 0 && (mult_val != const1_rtx || add_val != const0_rtx
> ))
> {
> /* Found one; record it. */
> struct induction *v
> = (struct induction *) oballoc (sizeof (struct induction));
>
> record_giv (v, insn, src_reg, addr_placeholder, mult_val,
> add_val, benefit, DEST_ADDR, not_every_iteration,
> &XEXP (x, 0), loop_start, loop_end);
>
> v->mem_mode = GET_MODE (x);
> }
> }
> return;
>
> But it's too late now and I'm not sure about anything :-) I'll continue
> debugging tomorrow or wednesday.
Could be. There's a call to general_induction_var, so it is a likely
candidate.
jeff