This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: bootstrap on powerpc fails
- From: Peter Bergner <bergner at vnet dot ibm dot com>
- To: Andrew Pinski <pinskia at physics dot uc dot edu>
- Cc: Andreas Jaeger <aj at suse dot de>, gcc at gcc dot gnu dot org, bergner at rchmail dot rchland dot ibm dot com
- Date: Tue, 07 Nov 2006 23:36:00 -0600
- Subject: Re: bootstrap on powerpc fails
- References: <200611072230.kA7MUA1Y005603@localhost.localdomain>
On Tue, 2006-11-07 at 17:30 -0500, Andrew Pinski wrote:
> >
> > Bootstrap off the trunk on powerpc-linux fails currently with:
> >
> > /cvs/gcc-svn/trunk/gcc/libgcov.c: In function =E2=80=98__gcov_execl=E2=80=
> > =99:
> > /cvs/gcc-svn/trunk/gcc/libgcov.c:796: internal compiler error: RTL check: e=
> > xpected code 'set' or 'clobber', have 'parallel' in adjacent_mem_locations,=
> > at config/rs6000/rs6000.c:16955
> >
> > Is this already known or should I file a bugreport? I haven't tested
> > for over a week, so do not know when this was introduced...
>
> This was introduced by:
> 2006-11-01 Pete Steinmetz <steinmtz@us.ibm.com>
> Peter Bergner <bergner@vnet.ibm.com>
>
> * doc/invoke.texi: Add cpu_type power6x
>
> The function which we are crashing in is adjacent_mem_locations which is
> new with the above patch.
The parallel that is causing the ICE is a store with update RTL insn.
It seems like we should detect that and reach into the parallel and
grab the actual store insn. I'll look into adding that.
Peter
Breakpoint 5, adjacent_mem_locations (insn1=0x4040bf60,
insn2=0x4040bde0)
at /home/bergner/gcc/power6/gcc-mainline-power6/gcc/config/rs6000/rs6000.c:16955
16955 rtx a = SET_DEST (PATTERN (insn1));
(gdb) call debug_rtx (insn1)
(insn:HI 126 125 116
10 /home/bergner/gcc/power6/gcc-mainline-power6/gcc/libgcov.c:789
(parallel [
(set (mem:SI (plus:SI (reg/f:SI 1 1)
(reg:SI 182)) [0 S4 A32])
(reg:SI 181))
(set (reg/f:SI 1 1)
(plus:SI (reg/f:SI 1 1)
(reg:SI 182)))
]) 375 {movsi_update} (nil)
(nil))
(gdb) call debug_rtx (insn2)
(insn:HI 116 126 128
10 /home/bergner/gcc/power6/gcc-mainline-power6/gcc/libgcov.c:785 (set
(mem/s:SI (plus:SI (reg/f:SI 113 sfp) (const_int 12
[0xc])) [3 <variable>.overflow_arg_area+0 S4 A32])
(reg/f:SI 148 [ ap_I__overflow_arg_areaap_I_I_lsm.82 ])) 323
{*movsi_internal1} (nil)
(nil))