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: amylaar at onetel dot net dot uk, zack at codesourcery dot com
- Subject: Re: dangerous cleverness? ppc int<->float conversions, subreg
- From: mike stump <mrs at windriver dot com>
- Date: Tue, 30 Oct 2001 10:06:15 -0800 (PST)
- Cc: gcc at gcc dot gnu dot org, rth at redhat dot com
> Date: Fri, 26 Oct 2001 12:24:47 -0700
> From: Zack Weinberg <zack@codesourcery.com>
> To: Joern Rennecke <amylaar@onetel.net.uk>
> Cc: Richard Henderson <rth@redhat.com>, gcc@gcc.gnu.org
> In addition to the block move issue, I need to figure out how to fix
> the old varargs implementation and sjlj eh so they don't touch
> floating point registers unless absolutely necessary. Clues in that
> direction would be appreciated too.
The best way I've come up with would be to test the FP_TASK bit from
the OS, and conditionally do the FP saves and restores if that is set.
If you alter the code that touchs the regs as dirty, that is the best
way.
The hope is that the performance loss that this would cause is less
than the performance loss due to making the task an FP_TASK. If it
isn't, then making all C++ tasks FP_TASKs might be preferable.