chicken-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-hackers] Why isn't OPTIMIZE_FOR_SPEED the default?


From: Peter Bex
Subject: Re: [Chicken-hackers] Why isn't OPTIMIZE_FOR_SPEED the default?
Date: Mon, 3 Nov 2014 09:04:27 +0100
User-agent: Mutt/1.4.2.3i

On Mon, Nov 03, 2014 at 08:49:47AM +0100, Felix Winkelmann wrote:
> From: John Cowan <address@hidden>
> Subject: Re: [Chicken-hackers] Why isn't OPTIMIZE_FOR_SPEED the default?
> Date: Sun, 2 Nov 2014 17:38:39 -0500
> 
> > Peter Bex scripsit:
> > 
> >> Am I going completely mad and am I missing something obvious?  Is there
> >> a good reason why optimizing for speed isn't the default?  
> > 
> > It's no more than a guess, but historically -O2 and -O3 tickled bugs that
> > didn't appear at -O1.  Probably someone (Felix?) fell over such a bug
> > long ago, removed the -On argument, saw the bug go away, and left it
> > at that.  Ghu knows chicken's output is a torture test for C compilers.
> 
> That's indeed the case. -O3 is not always reliable and can trigger
> C-compiler bugs, depending on the exact make and version. I remember
> encountering at least one, some time ago.

I've also seen a GCC bug on NetBSD even without the optimization options.

> The produced C code is
> actually not that stressful (as compared to say, Gambit, which can
> produce huge C functions, which make register-allocation a tough job
> for the compiler). Nevertheless, the code produced by CHICKEN is not
> what C compilers usually see.

How about restoring the optimization option to the defaults and seeing
what breaks?  For me it was highly unexpected that CHICKEN was producing
completely unoptimized code, and I'm pretty sure I'm not the only one,
so if this doesn't break on too many systems, it's a saner default.
If it's too aggressive, we could try -O2 instead or even -O1.

Cheers,
Peter
-- 
http://www.more-magic.net



reply via email to

[Prev in Thread] Current Thread [Next in Thread]