[commit: ghc] master: Allow users to ignore optimization changes (708ed9c)
git at git.haskell.org
git at git.haskell.org
Mon Dec 11 19:27:01 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/708ed9ca4dbf372817fe84a2fe486940123bddfb/ghc
>---------------------------------------------------------------
commit 708ed9ca4dbf372817fe84a2fe486940123bddfb
Author: David Feuer <david.feuer at gmail.com>
Date: Mon Dec 11 13:03:52 2017 -0500
Allow users to ignore optimization changes
* Add a new flag, `-fignore-optim-changes`, allowing them to avoid
recompilation if the only changes are to the `-O` level or to
flags controlling optimizations.
* When `-fignore-optim-changes` is *off*, recompile when optimization
flags (e.g., `-fno-full-laziness`) change. Previously, we ignored
these unconditionally when deciding whether to recompile a module.
Reviewers: austin, bgamari, simonmar
Reviewed By: simonmar
Subscribers: duog, carter, simonmar, rwbarton, thomie
GHC Trac Issues: #13604
Differential Revision: https://phabricator.haskell.org/D4123
>---------------------------------------------------------------
708ed9ca4dbf372817fe84a2fe486940123bddfb
compiler/iface/FlagChecker.hs | 67 ++++++++++++++++----
compiler/iface/LoadIface.hs | 2 +
compiler/iface/MkIface.hs | 45 ++++++++++++-
compiler/main/DynFlags.hs | 73 ++++++++++++++++++++--
compiler/main/HscTypes.hs | 15 ++++-
docs/users_guide/8.4.1-notes.rst | 6 ++
docs/users_guide/separate_compilation.rst | 17 +++++
ghc/Main.hs | 12 +++-
testsuite/tests/driver/Makefile | 14 +++++
testsuite/tests/driver/T13604.hs | 1 +
.../{retc003/retc003.stdout => T13604.stdout} | 2 -
testsuite/tests/driver/T13604a.hs | 1 +
.../{retc003/retc003.stdout => T13604a.stdout} | 2 -
testsuite/tests/driver/T13914/T13914.stdout | 4 +-
testsuite/tests/driver/all.T | 2 +
testsuite/tests/ghci/scripts/T9293.stdout | 8 +++
testsuite/tests/ghci/scripts/ghci024.stdout | 2 +
testsuite/tests/ghci/scripts/ghci057.stdout | 8 +++
testsuite/tests/hpc/T11798.stdout | 2 +-
19 files changed, 254 insertions(+), 29 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 708ed9ca4dbf372817fe84a2fe486940123bddfb
More information about the ghc-commits
mailing list