This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PowerPC] Fix pr25212
On Mon, Dec 05, 2005 at 10:03:41AM -0800, Ian Lance Taylor wrote:
> Alan Modra <amodra@bigpond.net.au> writes:
> > /src/gcc-current/gcc/libgcov.c:532: error: insn does not satisfy its constraints:
> > (insn:HI 658 1751 1752 69 /src/gcc-current/gcc/libgcov.c:368 (set (reg:DI 0 0 [403])
> > (zero_extend:DI (mem/s:SI (plus:DI (plus:DI (reg/v/f:DI 21 21 [orig:135 fi_ptr.728 ] [135])
> > (const_int 8 [0x8]))
> > (reg:DI 11 11 [401])) [3 <variable>.n_ctrs S4 A32]))) 14 {*zero_extendsidi2_internal1} (insn_list:REG_DEP_TRUE 656 (nil))
> > (nil))
> >
> > because that particular mem *hasn't* gone through find_reloads_address
> > prior to the point that constraints are matched. I guess this is a
> > bug, and reload should look inside zero_extend and suchlike..
>
> Hmmm, something must pass the address within the zero_extend to
> find_reloads_address, or I would expect other problems to arise.
Your comment here was nagging me. I checked, and the mem does indeed go
through find_reloads_address. I'm not sure now why I thought is hadn't.
Sorry for the noise.
--
Alan Modra
IBM OzLabs - Linux Technology Centre