This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Optimizations on long long multiply/divide on PowerPC32 don't work
At 10:14 10.12.2001, Richard Henderson wrote:
>On Mon, Dec 10, 2001 at 12:54:44AM -0800, Richard Henderson wrote:
> > GCC knows how to do this. It will do this if the target supports
> > all of these operations on 64 bit data types and it considers them
> > to be cheap enough.
>
>How irritating. I do not like the taste of crow.
>
>While the above is true, powerpc apparently has a rather cheap 32-bit
>divide instruction which throws off the heuristics in this case.
Ah, now that is nice, I always wondered which codepath produced the
signeddivide64-by-exactlog2constant to shift conversion on x86, but
couldn't find anything in i386.md :-(. I'll try that one on 3.0.3pre and
see if the FAT FS compiles again (I wonder if my ashrdi3_nopower pattern
will get used then?).
Despite the missing GCC optimization, I always wondered if the FAT FS
really relies the roundup happening with a signed divide, or if we could
simply replace the "/512" with ">>9" without any ill effects? At least I
couldn't find anything documented in the code...
Franz.