[Bug tree-optimization/34027] [4.3 regression] -Os code size nearly doubled
rguenther at suse dot de
gcc-bugzilla@gcc.gnu.org
Fri Nov 9 12:20:00 GMT 2007
------- Comment #3 from rguenther at suse dot de 2007-11-09 12:20 -------
Subject: Re: [4.3 regression] -Os code size
nearly doubled
On Fri, 9 Nov 2007, jakub at gcc dot gnu dot org wrote:
> ------- Comment #2 from jakub at gcc dot gnu dot org 2007-11-09 12:15 -------
> I think whether the modulus will be bigger or smaller is terribly hard to
> estimate. Really, if you file -Os regressions, you should at least compile the
> whole kernel and compare whether the resulting sizes, rather than cherry
> picking one example. E.g. on ppc64 computing modulus rather than doing the
> loop
> is definitely much shorter.
> IMHO if the kernel wants to avoid using modulus, it should just say so
> unsigned long long foobar(unsigned long long ns)
> {
> while(ns >= 1000000000L) {
> ns -= 1000000000L;
> asm ("" : "=r" (ns) : "0" (ns));
> }
> return ns;
> }
> will do that just fine.
Yes, just that at the moment we don't procude the modulus but use
a division, a multiplication and a subtraction.
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34027
More information about the Gcc-bugs
mailing list