This is the mail archive of the
mailing list for the GCC project.
Re: dangerous cleverness? ppc int<->float conversions, subreg
- To: geoffk at geoffk dot org (Geoff Keating)
- Subject: Re: dangerous cleverness? ppc int<->float conversions, subreg
- From: Joern Rennecke <amylaar at onetel dot net dot uk>
- Date: Wed, 24 Oct 2001 01:06:48 +0100 (BST)
- Cc: zack at codesourcery dot com (Zack Weinberg), gcc at gcc dot gnu dot org
> The right way to do what you want to do is to change register
> allocation when this flag is specified, so that it only allocates a FP
> register as a last resort.
But that would pessimize fp-heavy code.
You still have the problem that fpregs usage might seep out of inlined
functions and never-actually-executed basic block into other basic blocks.
You'd need not only to make sure that REGISTER_MOVE_COST is high when it
involves int<->fp reg moves (it already does for the sparc, because it needs
secondary memory), but also to jack up MEMORY_MOVE_COST so that
mem -> fpreg -> mem moves won't be generated.
And fix all the bugs and imperfect heuristics in the compiler that can cause
it to use fpregs even if the costs say it's not a good choice.
Joern Rennecke | gcc expert for hire
firstname.lastname@example.org | send enquiries to: email@example.com