Thorkil Naur wrote:
Hello,

In the current HEAD, mk/build.mk.sample has:

# -------- 1. A Performance/Distribution
build--------------------------------
ifeq "$(BuildFlavour)" "perf"

SRC_HC_OPTS   = -H32m -O2
GhcHcOpts     = -Rghc-timing
GhcLibHcOpts  =
GhcLibWays    = p

endif


If this is used (by copying mk/build.mk.sample to mk/build.mk and uncommenting the

#BuildFlavour = perf

with no other changes), I understand things so that the GhcLibHcOpts will end up empty. The default GhcLibHcOpts from mk/config.mk[.in] is:

GhcLibHcOpts=-O -Rghc-timing -fgenerics

Since the default optimization option () is -O0, this is the optimization level used for the libraries in such a build.

It seems that "GhcLibHcOpts =" is hardly ever the desired choice for a performance/distribution build. And, in fact, http://hackage.haskell.org/trac/ghc/wiki/Building/Hacking has:

Full optimisation

To turn up everything to the max, for running performance tests for example,
try these:
SRC_HC_OPTS = -H64m -O2 GhcLibHcOpts = -O2
  SplitObjs    = YES

Comments would be most welcome.

SRC_HC_OPTS is overriden by GhcLibHcOpts, so in fact the setting for GhcLibHcOpts above is superfluous. I'll change it to match the one in build.mk.sample.

Cheers,
        Simon

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to