- 11 Aug, 2005 4 commits
-
-
simonpj authored
Further wibbles to moving dependency analysis back to renamer; fixes ghci failures
-
simonpj authored
Wibble; fixes TH failures
-
simonpj authored
Fix bogon in reporting of duplicate sigs; make mod68 work again
-
simonpj authored
Do 'tidying' on Kinds before printing them. This avoids printing stuff like 'k_43b' in user error messages. To do this, I ended up adding an OccName to Kind.KindVar. Even then the implementation is a bit of hack (see comments with Type.tidyKind). Still, it's a highly localised hack, whereas the "right thing" entails making KindVar into a flavour of Var, which seems like an uncomfortably big change. I think this change can merge to the stable branch
-
- 10 Aug, 2005 5 commits
-
-
simonpj authored
Rename exprIsValue to exprIsHNF, which is more accurate
-
simonpj authored
It turned out that doing all binding dependency analysis in the typechecker meant that the renamer's unused-binding error messages got worse. So now I've put the first dep anal back into the renamer, while the second (which is specific to type checking) remains in the type checker. I've also made the pretty printer sort the decls back into source order before printing them (except with -dppr-debug). Fixes rn041.
-
simonmar authored
-Wall cleaning and dead code removal
-
simonpj authored
Fix a bug caused by the change in representation for NPats; the pattern-overlap checker didn't know about the change, and so treated +1 and -1 as equal... MERGE to STABLE
-
simonpj authored
Fix pretty-printing bug for NPat; MERGE to STABLE
-
- 09 Aug, 2005 5 commits
-
-
simonpj authored
Wibble to loadHomeInterface for TH quoting; MERGE to STABLE
-
simonpj authored
Comments
-
simonpj authored
Correct attribution of existential types; MERGE to STABLE
-
simonpj authored
Add notes about Typable restrictions; merge to stable
-
simonmar authored
mapUFM was strict in the structure of the tree, perhaps accidentally. In any case, this interacted badly with the use of mapVarEnv in SimplEnv.mkCoreSubst, which assumed that the map was lazy. mapUFM is now lazy in the structure of the tree, which matches the behaviour of FiniteMap.mapFM. This fixes some long compilation times, in particular HTMLMonad98.hs from WASH used to take 2 mins to compile without optimisation, now takes less than 20 seconds.
-
- 04 Aug, 2005 3 commits
-
-
simonmar authored
callSiteInline: consider inlining even the once-in-one-branch occurrences. See comment for details.
-
simonmar authored
preInlineUnconditionally: replace exprIsValue call with home-grown version to fix loss-of-sharing that arises because exprIsValue doesn't necessarily mean "ok to inline inside a lambda". Fixes last night's 10queens test failures.
-
wolfgang authored
Check for RTLD_DEFAULT in dlfcn.h and use it if it is available. (On Mac OS X its value is -2, and using NULL instead does not work.) MERGE TO STABLE
-
- 03 Aug, 2005 6 commits
-
-
simonmar authored
fix bogus #ifdef in defaultHscTarget
-
simonmar authored
Patch from SimonPJ (slightly tweaked by me after checking performance results): Fix occasional O(n^2) behaviour in the simplifier. There was a possibility that by inlining a binding, we could re-simplify an arbitrary sized expression. This patch fixes it by moving the inlining of arbitrary-sized expressiong to the binding site (preInlineUnconditionally), so the decision to inline happens before simplifying the RHS. To do this, we have to collect more information during the occurrence analysis phase. We still make inlining decisions at the call site, but they are always size-limited, so we can't get quadratic blowup.
-
simonmar authored
Fix the location of _stub.o files when compiling with -odir. The comment from the source: -- The _stub.c file is derived from the haskell source file (but stored -- in hscStubCOutName in the dflags for some reason, probably historical). -- Consequently, we derive the _stub.o filename from the haskell object -- filename. -- -- This isn't necessarily the same as the object filename we -- would get if we just compiled the _stub.c file using the pipeline. -- For example: -- -- ghc src/A.hs -odir obj -- -- results in obj/A.o, and src/A_stub.c. If we compile src/A_stub.c with -- -odir obj, we would get obj/src/A_stub.o, which is wrong; we want -- obj/A_stub.o.
-
simonmar authored
Update documentation for ghc-pkg list and ghc-pkg latest.
-
simonmar authored
Tidyup, and make all the commands that take a package identifier behave the same. Previously, naming a package without a version number only matched the same package identifier, if you wanted to match multiple packages you had to say P-*. However, the new list and latest commands behave differently, which was inconsistent. I believe the previous behaviour was for backwards compatibility with packages that had no version number. However, it's unlikely that this is ever useful, so I've changed the semantics so that a package name on its own matches all versions of that package.
-
simonmar authored
- Add "ghc-pkg list <pkg>" to list packages matching <pkg> - Add "ghc-pkg latest <pkg>" to show the latest version of <pkg> - Add --simple-output option to produce a more easily slurpable output from ghc-pkg list. Patch from Lennart Kolmodin <kolmodin at dtek.chalmers.se>
-
- 02 Aug, 2005 11 commits
-
-
simonmar authored
small tidyup for memInventory
-
simonmar authored
Fix up GC debugging output
-
simonmar authored
Fix tiny debugging output bug
-
simonmar authored
- move instance Show FastString into FastString module - instance Outputable FastString should use ftext instead of unpackFS
-
simonmar authored
A little bit of strictness (doesn't actually help much)
-
simonmar authored
Fix an SCC
-
simonmar authored
Annotate foreign calls with volatile registers to reduce the amount of saving that needs to be done.
-
simonmar authored
save + restore caller-saves registers around foreign calls
-
simonmar authored
Add callerSaveVolatileRegs for saving registers around C calls
-
simonmar authored
Add a ToDo
-
simonmar authored
Allow an empty list of volatile regs on a call
-
- 01 Aug, 2005 3 commits
- 29 Jul, 2005 1 commit
-
-
sof authored
win32/AsyncIO.c:onIOComplete(), awaitRequests(): Avoid completion table overflow through the use of a semaphore. Worker threads (the producers) wait for a free event slot to appear, the RTS thread (consumer) signal slot availability once the completion event has been de-queued and processed. This bug only manifests itself in 'massively concurrent' code (>200 threads), where the threads simultaneously engage in IO through the async IO layer. conc023 and conc036 in the regression test suite are examples of such. Merge to STABLE.
-
- 28 Jul, 2005 2 commits