<div dir="ltr">I reported this in <a href="https://ghc.haskell.org/trac/ghc/ticket/13604">https://ghc.haskell.org/trac/ghc/ticket/13604</a></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Aug 3, 2017 at 4:32 PM Evan Laforge <<a href="mailto:qdunkan@gmail.com">qdunkan@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">My program uses the GHC API to provide a REPL, and upgrading to 8.2.1<br>
broke that... well, just made it really slow.  Where it used to<br>
quickly load the compiled files, it now wants to recompile everything<br>
as bytecode which makes 1s startup time go to 1m.  The reason was it<br>
now thinks flags have changed.  I tracked it down to changes in<br>
FlagChecker.hs, documented with<br>
<a href="https://ghc.haskell.org/trac/ghc/ticket/11798" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc/ticket/11798</a> and<br>
<a href="https://ghc.haskell.org/trac/ghc/ticket/10923" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc/ticket/10923</a>, which add -fhpc and -O<br>
to the tracked flags.  -fhpc means loading tests in ghci can never<br>
work, because ghci rejects the -fhpc flag, and likewise -O means ghci<br>
can never load optimized files for the same reason.<br>
<br>
It seems like the easiest solution might be to just have ghci not<br>
reject -fhpc and -O.  Of course we could also revert those changes,<br>
but they're justified in the trac tickets.<br>
<br>
Of course this means I'm loading optimized code together with bytecode<br>
compiled code and maybe that's a bad thing (or for tests, -fhpc with<br>
non-hpc).  But I've been doing this for something like 7 years and<br>
it's been fine.<br>
<br>
<br>
Unrelatedly, I was hoping compiles would get faster, but they seem a<br>
bit slower, from around 3m20s to around 4m :(  I can track down<br>
per-file timing changes if it would be interesting to someone.<br>
<br>
Also thanks to whoever put trac tickets in the comments, it makes it<br>
really easy to find out why a change was made.<br>
_______________________________________________<br>
Glasgow-haskell-users mailing list<br>
<a href="mailto:Glasgow-haskell-users@haskell.org" target="_blank">Glasgow-haskell-users@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users</a><br>
</blockquote></div>