[PING^3] Fix reloading of paradoxical subregs into even-only registers
Michael Matz
matz@suse.de
Wed Aug 20 15:32:00 GMT 2008
Hi,
On Wed, 20 Aug 2008, H.J. Lu wrote:
> >> +FAIL: gcc.dg/compat/scalar-by-value-6 c_compat_x_tst.o compile,
> >> (internal compiler error)
> >> +FAIL: gcc.dg/compat/scalar-return-3 c_compat_x_tst.o compile,
> >> (internal compiler error)
> >> +FAIL: gcc.dg/compat/struct-by-value-18 c_compat_x_tst.o compile,
> >> (internal compiler error)
> >
> > Lovely. The ia64 port disallows XFmode and XCmode in integer registers,
> > but nevertheless insists on putting such values into outgoing regs for
> > function calls (with stdarg/vararg). It expects that the movxf expander
>
> It is specified by ia64 psABI.
Yes, of course. The question simply is, why the backend even generates a
XCmode hardreg for outgoing args when HARD_REGNO_MODE_OK doesn't accept
this. That's what I meant with inconsistencies between that definition
and the backends use. It probably should have generated a PARALLEL of
four DImode regs or something.
Ciao,
Michael.
More information about the Gcc-patches
mailing list