This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [cft] rewrite of virtual register instantiation
On Wed, Apr 27, 2005 at 12:51:48PM -0700, David S. Miller wrote:
> On Wed, 27 Apr 2005 11:48:05 -0700
> Richard Henderson <rth@redhat.com> wrote:
>
> > I appear to have good results for i686, amd64, and ia64 linux. If
> > folks would try this on other targets, I'd appreciate it.
>
> Fails to bootstrap on sparc-*-linux:
>
> stage1/xgcc -Bstage1/ -B/usr/local/sparc-unknown-linux-gnu/bin/ -c -O2 -mcpu=\v8 -mtune=ultrasparc3 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -\Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-d\efinition -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../gcc/gcc -I..\/../gcc/gcc/. -I../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include ../\../gcc/gcc/sched-vis.c -o sched-vis.o
> ../../gcc/gcc/sched-vis.c: In function 'print_pattern':
> ../../gcc/gcc/sched-vis.c:613: error: insn does not satisfy its constraints:
> (insn 602 33 38 2 (set (reg:SI 1 %g1)
> (reg/f:SI 103 virtual-stack-vars)) 38 {*movsi_insn} (nil)
> (nil))
>
> Is this something we need to allow in Sparc's SI move patterns?
It depends on where this happened. I saw this symptom on ia64, where
a virtual reg escaped and we didn't fail until reload.
Gimme .i file and I'll look.
r~