Commits

Show all
Author Commit Message Labels Comments Date
simonmar
Fix crash in biographical heap profiling (#2576)
Tags
2 tags
simonmar
Fix retainer profiling (#2576)
simonmar
Fix some bugs in the stack-reducing code (#2571)
Tim Chevalier
ext-core library: Add dead code eliminator for Core Added code for dead code elimination to the ext-core library. This can be used in concert with Language.Core.Merge to produce a single self-contained module without unnecessary cruft.
Tim Chevalier
ext-core library: expose some more modules
Tim Chevalier
ext-core library: Change syntax for primitive coercions Changed the ext-core syntax to include primitive coercions (left, right, sym, trans, etc.) as syntax rather than referring them to their names as in GHC. (I hope I updated the docs to reflect this...)
Tim Chevalier
ext-core library: Export a lot more things from Prims See comments for details.
Tim Chevalier
ext-core library: Extend Core preprocessor See comments for details.
Tim Chevalier
ext-core library: Export a bunch more stuff from the parser
Tim Chevalier
ext-core library: Fix performance bug isUtupleTy was implemented inefficiently (and is called a lot by the typechecker). Replaced with uglier but faster code.
Tim Chevalier
ext-core library: Remove some cruft
Tim Chevalier
ext-core library: Add code for merging multiple Core modules into a single module I added a new module, Merge, to the ext-core library that combines a list of ext-core modules into a new, uniquely renamed module. See comments in Merge.hs for more details.
Ian Lynagh
Use OSThreadProcAttr for workerStart
Ian Lynagh
Include docs in the bindists
Ian Lynagh
Don't install pwd
Ian Lynagh
In stgReallocForGMP, we need to copy min(old_size,new_size) We used to always copy old_size
Ian Lynagh
Tell perl to autoflush output in darcs-all. Suggested by Claus Reinke
simonpj@microsoft.com
Remove dataConInstOrigDictsAndArgTys This suspicious function had just one call, in BuildTyCl.mkNewTyConRhs. I've done it another way now, which is tidier.
Ian Lynagh
We always install stage2, so we need to always put stage2 into bindists
Ian Lynagh
Add a do-nothing install-docs rule in ext-core/ when LATEX_DOCS=NO
Ian Lynagh
Link to core.pdf, not core.ps.gz
simonpj@microsoft.com
Fix debug message formatting on Windows
simonpj@microsoft.com
Check the *right* set of type variables for escape! I did the wrong checkSigTyVars, which (happily) triggered an ASSERT failure. This should fix it.
simonpj@microsoft.com
More refactoring of instance declarations (fixes Trac #2572) In refactoring instance declarations I'd taken a short cut over scoped type variables, but it wasn't right as #2572 shows. Fixing it required a significant chunk of further refactoring, alas. But it's done! Quite tidily as it turns out. The main issue is that when typechecking a default method, we need two sets of type variables in scope class C a where op :: forall b. ... op = e In '…
simonpj@microsoft.com
Fix Trac #2581: inlining of record selectors Bryan discovered that a non-trivial record selector (non-trivial in the sense that it has to reconstruct the result value because of UNPACK directives) weren't being inlined. The reason was that the unfolding generated by MkId.mRecordSelId was never being optimised *at all*, and hence looked big, and hence wasn't inlined. (The out-of-line version *is* put into the code of the module and *is* op…
simonpj@microsoft.com
Fix Trac #2573; and explanatory comment
simonpj@microsoft.com
Fix the zonking of HsWrappers HsWrappers are horribly inconsistent at the moment. I intended that WpLam, WpApp are for evidence abstraction/application WpTyLam, WpTyApp are for type abstraction/application But when we zonk (WpApp co), where co is a coercion variable, we get a *coercion* not a coercion *variable*. So for now I'm making it into a WpTyApp, which the desugarer handles perfectly well. (I'd forgotten to…
simonpj@microsoft.com
Add newDictOcc, newDictOccs
simonpj@microsoft.com
Layout and type synonyms only
simonpj@microsoft.com
Robustify the setting of implied flags When setting implied flags, do so recursively. So if -Xa implies -Xb, and -Xb implies -Xc, we do the right thing. I thought we needed this, but we don't. But it seems like a good idea anyway.
  1. Prev
  2. Next