This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: dangerous cleverness? ppc int<->float conversions, subreg
- To: Zack Weinberg <zack at codesourcery dot com>
- Subject: Re: dangerous cleverness? ppc int<->float conversions, subreg
- From: Dale Johannesen <dalej at apple dot com>
- Date: Fri, 26 Oct 2001 12:40:00 -0700
- Cc: Dale Johannesen <dalej at apple dot com>, David Edelsohn <dje at watson dot ibm dot com>, gcc at gcc dot gnu dot org
On Friday, October 26, 2001, at 12:14 PM, Zack Weinberg wrote:
> On Fri, Oct 26, 2001 at 12:55:14PM -0400, David Edelsohn wrote:
>> Zack,
>>
>> Have you looked into my comment about move_by_pieces?
>>
>> The problem is how to discourage GCC from using FPRs for DImode.
>> GCC only uses FPRs for DImode to move blocks of memory and float->int
>> conversions.
We've noticed this on Darwin too. I'm not sure anybody's mentioned
this point: the alignment requirements for "double" memrefs can be
more restrictive than those for (non-double-containing) structs. A
misaligned FP load/store may be much slower than two int load/stores,
or may fail completely. I don't think there's anyplace in the code
that's checking this.