ghc-hetmet.git
13 years agoRefactoring and tidyup of HscMain and related things (also fix #1666)
Simon Marlow [Wed, 27 Oct 2010 12:11:32 +0000 (12:11 +0000)]
Refactoring and tidyup of HscMain and related things (also fix #1666)
While trying to fix #1666 (-Werror aborts too early) I decided to some
tidyup in GHC/DriverPipeline/HscMain.

 - The GhcMonad overloading is gone from DriverPipeline and HscMain
   now.  GhcMonad is now defined in a module of its own, and only
   used in the top-level GHC layer.  DriverPipeline and HscMain
   use the plain IO monad and take HscEnv as an argument.

 - WarnLogMonad is gone.  printExceptionAndWarnings is now called
   printException (the old name is deprecated).  Session no longer
   contains warnings.

 - HscMain has its own little monad that collects warnings, and also
   plumbs HscEnv around.  The idea here is that warnings are collected
   while we're in HscMain, but on exit from HscMain (any function) we
   check for warnings and either print them (via log_action, so IDEs
   can still override the printing), or turn them into an error if
   -Werror is on.

 - GhcApiCallbacks is gone, along with GHC.loadWithLogger.  Thomas
   Schilling told me he wasn't using these, and I don't see a good
   reason to have them.

 - there's a new pure API to the parser (suggestion from Neil Mitchell):
      parser :: String
             -> DynFlags
             -> FilePath
             -> Either ErrorMessages (WarningMessages,
                                      Located (HsModule RdrName))

13 years agofollow changes in the GHC API
Simon Marlow [Wed, 27 Oct 2010 11:10:03 +0000 (11:10 +0000)]
follow changes in the GHC API

13 years agotweaks
Simon Marlow [Wed, 13 Oct 2010 18:43:22 +0000 (18:43 +0000)]
tweaks

13 years agocomment
Simon Marlow [Wed, 13 Oct 2010 18:43:00 +0000 (18:43 +0000)]
comment

13 years agoWarn (not error) for SPECIALISE pragmas without INLINE
simonpj@microsoft.com [Wed, 27 Oct 2010 16:29:22 +0000 (16:29 +0000)]
Warn (not error) for SPECIALISE pragmas without INLINE

See Note [SPECIALISE pragmas] in TcBinds.  Fixes Trac #444.

13 years agofix stage1_libs pseudo-target
Simon Marlow [Tue, 26 Oct 2010 12:29:06 +0000 (12:29 +0000)]
fix stage1_libs pseudo-target

13 years agoFix #4424. Allow `-hide-all-packages` to be set dynamically.
Thomas Schilling [Thu, 21 Oct 2010 17:04:32 +0000 (17:04 +0000)]
Fix #4424.  Allow `-hide-all-packages` to be set dynamically.

13 years agoFix whitespace and layout in PrelRules.
Michal Terepeta [Sun, 24 Oct 2010 17:41:34 +0000 (17:41 +0000)]
Fix whitespace and layout in PrelRules.

13 years agoFix for #4318 (Linker failure on OS X 10.6)
gwright@antiope.com [Tue, 26 Oct 2010 13:51:53 +0000 (13:51 +0000)]
Fix for #4318 (Linker failure on OS X 10.6)

This patch fixes two bugs in the Mach-O linker and adds debugging statements
to the same. The bugs:

1. The test for symbol->n_value == 0 is removed and replaced by a test of the
flag field.  Checking the n_value field was just wrong; the value of a
symbol should only be examined when allocating space for a common block,
in which case the n_value field gives the size of the block.  This bug
led to an infrequently occuring linker crash.

I believe the behavior of the linker now agrees with the intent of the
sketchy Apple documentation.

2. Jump islands were being filled with garbage instead of the the location
of the referenced symbol. This caused relocations of type X86_64_RELOC_GOT and
X86_64_RELOC_GOT_LOAD to eventually lead to crashes.  The fix is simply to
look up the symbol.

Enough debug statements have been added to follow the operation of the Mach-O
linker while it loads modules.  They are not yet as informative and well
organized as for ELF.  Improving the debug statements will require some
reorganization of the code -- the Mach-O linker seems basically sound, but
is crying out for some refactoring and commenting.

13 years agoUse removeDups to find top-level duplicate names
Ian Lynagh [Tue, 26 Oct 2010 21:15:46 +0000 (21:15 +0000)]
Use removeDups to find top-level duplicate names
findDupsEq is quadratic, whereas removeDups is n log n.
Fixes T1969 regression.

13 years agoRemove unnecessary imports
Ian Lynagh [Tue, 26 Oct 2010 19:19:06 +0000 (19:19 +0000)]
Remove unnecessary imports

13 years agoAdd NoFoo form to the extensions list that dummy-ghc generates
Ian Lynagh [Tue, 26 Oct 2010 14:54:45 +0000 (14:54 +0000)]
Add NoFoo form to the extensions list that dummy-ghc generates

13 years agoFix a long-standing bug the float-out pass
simonpj@microsoft.com [Tue, 26 Oct 2010 11:15:47 +0000 (11:15 +0000)]
Fix a long-standing bug the float-out pass

We were failing to float out a binding that could be floated,
because of a confusion in the Lam case of floatExpr.

In investigating this I also discoverd that there is really
no point at all in giving a different level to variables in
a binding group, so I've now given them all the same (in
SetLevels.lvlLamBndrs

The overall difference is quite minor in a nofib run:

        Program           Size    Allocs   Runtime   Elapsed
-------------------------------------------------------------
            Min          +0.0%     -8.5%    -28.4%    -28.7%
            Max          +0.0%     +0.7%     -0.7%     -1.1%
 Geometric Mean          +0.0%     -0.0%    -11.6%    -11.8%

I don't trust those runtimes, but smaller is good!  The 8.5%
improvement in allocation in fulsom, and seems real.  The
0.7% allocation increase only happens in programs with
very small allocation.  I tracked one down to a call of this form

  GHC.IO.Handle.Internals.mkDuplexHandle5
    = \ args -> GHC.IO.Handle.Internals.openTextEncoding1
                  mb_codec ha_type
                  (\mb_encoder mb_decoder -> blah)

With the new floater the argument of openTextEncoding1 becomes

     (let lvl = .. in \mb_encoder mb_decoder -> blah)

And rightly so.  However in fact this argument is a continuation
and hence is called once, so the floating is fruitless.

Roll on one-shot-function analysis (which I know how to do
but fail to get to!).

13 years agoComments only
simonpj@microsoft.com [Tue, 31 Aug 2010 08:50:01 +0000 (08:50 +0000)]
Comments only

13 years agoFix initialisation of strictness in the demand analyser
simonpj@microsoft.com [Tue, 26 Oct 2010 08:17:57 +0000 (08:17 +0000)]
Fix initialisation of strictness in the demand analyser

Previously, the demand analyser assumed that every binder
starts off with no strictness info.  But now that we are
preserving strictness on nesting bindings in interface files,
that assumption is no longer correct, because an inlined function
might have a nested binding with strictness set.

So we need to know when we are in the initial sweep, so that we can
set the strictness to 'bottom'.

See Note [Initialising strictness]

13 years agoDon't look through SCC in exprIsConApp_maybe
simonpj@microsoft.com [Tue, 26 Oct 2010 08:07:54 +0000 (08:07 +0000)]
Don't look through SCC in exprIsConApp_maybe

By not taking account of SCC notes we were inadvertently
discarding some, which led to mis-counted entries with -O

Should fix (part of) Trac #4414

13 years agoMake isIrrefutableHsPat say True for existentials; fixes Trac #4439
simonpj@microsoft.com [Tue, 26 Oct 2010 07:04:05 +0000 (07:04 +0000)]
Make isIrrefutableHsPat say True for existentials; fixes Trac #4439

At last. A bug that is really easy to fix.

13 years agoSerialise nested unfoldings across module boundaries
simonpj@microsoft.com [Mon, 25 Oct 2010 15:28:17 +0000 (15:28 +0000)]
Serialise nested unfoldings across module boundaries

As Roman reported in #4428, nested let-bindings weren't
being recorded with their unfoldings.  Needless to say,
fixing this had more knock-on effects than I expected.

13 years agoDo not (ever) use substExprSC in the simplifier
simonpj@microsoft.com [Mon, 25 Oct 2010 15:26:22 +0000 (15:26 +0000)]
Do not (ever) use substExprSC in the simplifier

"Short-cut" substitution means "do nothing if the substitution
is empty". We *never* want do to that in the simplifier because
even though the substitution is empty, the in-scope set has
useful information:

 * We get up-to-date unfoldings; and that in turn may
   reduce the number of iterations of the simplifier

 * We avoid space leaks, because failing to substitute may
   hang on to old Ids from a previous iteration

(This is what was causing the late inlining of foo in
Trac #4428.)

13 years agoUse new showMultiLineString to fix Trac #4436
simonpj@microsoft.com [Mon, 25 Oct 2010 15:12:36 +0000 (15:12 +0000)]
Use new showMultiLineString to fix Trac #4436

There is an accompanying patch for libraries
    base
    template-haskell

13 years agoFor a non-recursive let, make sure we extend the value environment
simonpj@microsoft.com [Mon, 25 Oct 2010 14:31:08 +0000 (14:31 +0000)]
For a non-recursive let, make sure we extend the value environment

This has been wrong for a long time.  Fixes Trac #4431.

13 years agoinstance Outputable IntMap
simonpj@microsoft.com [Mon, 25 Oct 2010 14:07:04 +0000 (14:07 +0000)]
instance Outputable IntMap

13 years agoMake the ffi.h->ffitarget.h dep a proper dep, rather than an order-only dep
Ian Lynagh [Sun, 24 Oct 2010 13:40:52 +0000 (13:40 +0000)]
Make the ffi.h->ffitarget.h dep a proper dep, rather than an order-only dep

13 years agolibffi: missing dependency on ffitarget.h
pho@cielonegro.org [Sun, 17 Oct 2010 11:33:21 +0000 (11:33 +0000)]
libffi: missing dependency on ffitarget.h
dist-install/build/ffi.h should have a dependency on ffitarget.h as *_stub.c requires it during the stage-2 build.

13 years agoRemove the need to explicitly flatten the dynflags
Ian Lynagh [Sat, 23 Oct 2010 21:04:42 +0000 (21:04 +0000)]
Remove the need to explicitly flatten the dynflags

13 years agoFollow GHC.Bool/GHC.Types merge
Ian Lynagh [Sat, 23 Oct 2010 16:54:22 +0000 (16:54 +0000)]
Follow GHC.Bool/GHC.Types merge

13 years agoDon't build packages that need TH if we are making a profiling compiler
Ian Lynagh [Sat, 23 Oct 2010 14:56:00 +0000 (14:56 +0000)]
Don't build packages that need TH if we are making a profiling compiler
You can't use TH with a profiling compiler.

13 years agoOS X uninstaller: Pass create-links its argument
Ian Lynagh [Sat, 23 Oct 2010 12:44:00 +0000 (12:44 +0000)]
OS X uninstaller: Pass create-links its argument

13 years agoTweak the OS X installer uninstaller script
Ian Lynagh [Sat, 23 Oct 2010 00:09:51 +0000 (00:09 +0000)]
Tweak the OS X installer uninstaller script

13 years agoImprove the OS X installer
Ian Lynagh [Fri, 22 Oct 2010 22:31:04 +0000 (22:31 +0000)]
Improve the OS X installer
Major changes are:
* Version number now includes full GHC version and arch
* Uninstaller copes with multiple versions

13 years agoOptimised the representation of Inert Sets to use Maps to get to the relevant inert...
dimitris@microsoft.com [Fri, 22 Oct 2010 12:58:40 +0000 (12:58 +0000)]
Optimised the representation of Inert Sets to use Maps to get to the relevant inert constraint faster.

13 years agoAdd rebindable syntax for if-then-else
simonpj@microsoft.com [Fri, 22 Oct 2010 14:34:00 +0000 (14:34 +0000)]
Add rebindable syntax for if-then-else

There are two main changes

 * New LANGUAGE option RebindableSyntax, which implies NoImplicitPrelude

 * if-the-else becomes rebindable, with function name "ifThenElse"
   (but case expressions are unaffected)

Thanks to Sam Anklesaria for doing most of the work here

13 years agoLint should check for duplicate top-level bindings with same qualified name
simonpj@microsoft.com [Fri, 22 Oct 2010 07:24:05 +0000 (07:24 +0000)]
Lint should check for duplicate top-level bindings with same qualified name

This would have produced a more civilised error for Trac #4396

13 years agoFix unused import warning on OS X
Ian Lynagh [Fri, 22 Oct 2010 13:40:24 +0000 (13:40 +0000)]
Fix unused import warning on OS X

13 years agoSwitch more uniqFromSupply+splitUniqSupply's to takeUniqFromSupply
Ian Lynagh [Thu, 21 Oct 2010 14:28:24 +0000 (14:28 +0000)]
Switch more uniqFromSupply+splitUniqSupply's to takeUniqFromSupply

13 years agoWhitespace only
Ian Lynagh [Thu, 21 Oct 2010 13:55:51 +0000 (13:55 +0000)]
Whitespace only

13 years agoWhitespace only
Ian Lynagh [Thu, 21 Oct 2010 13:44:04 +0000 (13:44 +0000)]
Whitespace only

13 years agoWhitespace only
Ian Lynagh [Thu, 21 Oct 2010 13:41:33 +0000 (13:41 +0000)]
Whitespace only

13 years agoWindows installer improvements from Claus
Ian Lynagh [Thu, 21 Oct 2010 12:29:42 +0000 (12:29 +0000)]
Windows installer improvements from Claus
- add link to inno setup docs, so readers don't have to guess what
  ghc.iss might be

- add Task section, and associated most Registry actions with separate
  (sub)tasks, so that file associations, default action, and PATH
  setting can be optional

- copy license file into doc directory

- install icon file again, so that DefaultIcon is no longer a dangling
  pointer (#4352)

- only delete ghc_haskell key if empty (in case there were other tools
  using it)

- add versioned GHCi to right-click menu (to allow for multiple tool installs)

13 years agoFix Trac #4396, by localising pattern binders in the desugarer
simonpj@microsoft.com [Thu, 21 Oct 2010 17:03:24 +0000 (17:03 +0000)]
Fix Trac #4396, by localising pattern binders in the desugarer

See Note [Localise pattern binders]

13 years agoWhite space only
simonpj@microsoft.com [Thu, 21 Oct 2010 17:02:32 +0000 (17:02 +0000)]
White space only

13 years agoAdd an assertion
simonpj@microsoft.com [Thu, 21 Oct 2010 17:02:22 +0000 (17:02 +0000)]
Add an assertion

13 years agoUse takeUniqFromSupply in ByteCodeGen
Ian Lynagh [Thu, 21 Oct 2010 12:14:54 +0000 (12:14 +0000)]
Use takeUniqFromSupply in ByteCodeGen

13 years agoFix some whitespace
Ian Lynagh [Thu, 21 Oct 2010 12:10:59 +0000 (12:10 +0000)]
Fix some whitespace

13 years agoUse takeUniqFromSupply in emitProcWithConvention
Ian Lynagh [Thu, 21 Oct 2010 12:08:53 +0000 (12:08 +0000)]
Use takeUniqFromSupply in emitProcWithConvention
We were using the supply's unique, and then passing the same supply to
initUs_, which sounds like a bug waiting to happen.

13 years agoUse takeUniqFromSupply in IfaceEnv
Ian Lynagh [Thu, 21 Oct 2010 12:03:04 +0000 (12:03 +0000)]
Use takeUniqFromSupply in IfaceEnv
This is a little nicer than having to explicitly split supplies and
throw half of them away.

13 years agoDefine takeUniqFromSupply
Ian Lynagh [Thu, 21 Oct 2010 11:58:22 +0000 (11:58 +0000)]
Define takeUniqFromSupply

13 years agoRemove some extraneous whitespace
Ian Lynagh [Thu, 21 Oct 2010 11:56:00 +0000 (11:56 +0000)]
Remove some extraneous whitespace

13 years agoAdd a comment on why some seq's are done
Ian Lynagh [Thu, 21 Oct 2010 11:34:04 +0000 (11:34 +0000)]
Add a comment on why some seq's are done

13 years agoTidy up RuntimeUnkSkols a bit more
simonpj@microsoft.com [Thu, 21 Oct 2010 10:06:40 +0000 (10:06 +0000)]
Tidy up RuntimeUnkSkols a bit more

13 years agoFix haddock markup
simonpj@microsoft.com [Thu, 21 Oct 2010 08:54:20 +0000 (08:54 +0000)]
Fix haddock markup

13 years agoImprove rule checking, to fix panic Trac #4398
simonpj@microsoft.com [Thu, 21 Oct 2010 08:54:02 +0000 (08:54 +0000)]
Improve rule checking, to fix panic Trac #4398

Lots of comments with decomposeRuleLhs

13 years agoImprove the simple expression optimiser so it does simple beta reduction
simonpj@microsoft.com [Thu, 21 Oct 2010 08:50:30 +0000 (08:50 +0000)]
Improve the simple expression optimiser so it does simple beta reduction

13 years agoTemplate Haskell: add view patterns (Trac #2399)
Reiner Pope [Sun, 10 Oct 2010 13:17:20 +0000 (13:17 +0000)]
Template Haskell: add view patterns (Trac #2399)

13 years agoTidy-up sweep, following the Great Skolemisation Simplification
simonpj@microsoft.com [Thu, 21 Oct 2010 07:08:37 +0000 (07:08 +0000)]
Tidy-up sweep, following the Great Skolemisation Simplification

13 years agoFix haddock markup
Ian Lynagh [Wed, 20 Oct 2010 15:19:52 +0000 (15:19 +0000)]
Fix haddock markup

13 years agoTweak the haddock rules; no functional change
Ian Lynagh [Wed, 20 Oct 2010 15:16:36 +0000 (15:16 +0000)]
Tweak the haddock rules; no functional change

13 years agoDon't seq unfoldings
Ian Lynagh [Wed, 20 Oct 2010 14:37:10 +0000 (14:37 +0000)]
Don't seq unfoldings
We generate intermediate unfoldings which are just thrown away, so
evaluating them is a waste of time.

13 years agoAvoid hanging on to old unfoldings; fixes #4367 (compiler space regression)
Ian Lynagh [Wed, 20 Oct 2010 13:15:39 +0000 (13:15 +0000)]
Avoid hanging on to old unfoldings; fixes #4367 (compiler space regression)

13 years agoComments and layout only
simonpj@microsoft.com [Wed, 20 Oct 2010 13:24:38 +0000 (13:24 +0000)]
Comments and layout only

13 years agoLook for sources in Cabal's autogen directory too
Ian Lynagh [Wed, 20 Oct 2010 10:47:59 +0000 (10:47 +0000)]
Look for sources in Cabal's autogen directory too

13 years agoFollow Cabal change: Use usedExtensions rather than extensions
Ian Lynagh [Wed, 20 Oct 2010 10:47:39 +0000 (10:47 +0000)]
Follow Cabal change: Use usedExtensions rather than extensions

13 years agofix markup
Simon Marlow [Wed, 20 Oct 2010 12:31:16 +0000 (12:31 +0000)]
fix markup

13 years agoremove xref to hasktags
Simon Marlow [Wed, 20 Oct 2010 12:31:06 +0000 (12:31 +0000)]
remove xref to hasktags

13 years agoUpdate the documentation on using DLL's from Windows, fixing several errors, in parti...
Neil Mitchell [Sun, 10 Oct 2010 10:07:09 +0000 (10:07 +0000)]
Update the documentation on using DLL's from Windows, fixing several errors, in particular those relating to bug 3605

13 years ago(1) More lenient kind checking, (2) Fixed orientation problems and avoiding double...
dimitris@microsoft.com [Wed, 20 Oct 2010 11:55:26 +0000 (11:55 +0000)]
(1) More lenient kind checking, (2) Fixed orientation problems and avoiding double unifications, (3) Comments

13 years agoMidstream changes to deal with spontaneous solving and flatten skolem equivalence...
dimitris@microsoft.com [Tue, 19 Oct 2010 17:15:14 +0000 (17:15 +0000)]
Midstream changes to deal with spontaneous solving and flatten skolem equivalence classes

13 years agohasktags was dropped in GHC 6.12, remove it from the docs
Simon Marlow [Mon, 18 Oct 2010 08:44:01 +0000 (08:44 +0000)]
hasktags was dropped in GHC 6.12, remove it from the docs

13 years agoRefactor, plus fix Trac #4418
simonpj@microsoft.com [Wed, 20 Oct 2010 09:09:46 +0000 (09:09 +0000)]
Refactor, plus fix Trac #4418

We weren't doing fundeps for derived superclasses

13 years agoAdd a comment, connecting the seq to the test (#4367) that shows its usefulness
simonpj@microsoft.com [Wed, 20 Oct 2010 07:59:41 +0000 (07:59 +0000)]
Add a comment, connecting the seq to the test (#4367) that shows its usefulness

13 years agoDefine setIdUnfoldingLazily, and use it in Vectorise
Ian Lynagh [Tue, 19 Oct 2010 20:15:37 +0000 (20:15 +0000)]
Define setIdUnfoldingLazily, and use it in Vectorise
Fixes a loop in the compiler, when running the dph tests

13 years agoEvaluate the results in coreToStgApp
Ian Lynagh [Tue, 19 Oct 2010 17:05:32 +0000 (17:05 +0000)]
Evaluate the results in coreToStgApp

13 years agoRetab CoreToStg, and remove trailing whitespace
Ian Lynagh [Tue, 19 Oct 2010 15:55:30 +0000 (15:55 +0000)]
Retab CoreToStg, and remove trailing whitespace

13 years agoseq the unfolding in setUnfoldingInfo
Ian Lynagh [Tue, 19 Oct 2010 15:45:52 +0000 (15:45 +0000)]
seq the unfolding in setUnfoldingInfo
Contrary to the comment, for the module in #4367 at least, it is a big
improvement. Without it we get a huge spike of drag.

13 years agoComments only
simonpj@microsoft.com [Tue, 19 Oct 2010 15:35:31 +0000 (15:35 +0000)]
Comments only

13 years agoFix debugger
simonpj@microsoft.com [Tue, 19 Oct 2010 15:35:22 +0000 (15:35 +0000)]
Fix debugger

A bit yukky; see Note [Runtime skolems] in TcErrors.
But it works, and the debugger just is yukky in places.

13 years agoFix IPRun by fixing the inferred quantification mechanism
simonpj@microsoft.com [Tue, 19 Oct 2010 09:02:20 +0000 (09:02 +0000)]
Fix IPRun by fixing the inferred quantification mechanism

13 years agoRecover after an error in an implication constraint
simonpj@microsoft.com [Tue, 19 Oct 2010 09:02:02 +0000 (09:02 +0000)]
Recover after an error in an implication constraint

13 years agoReject programs with equality superclasses for now
simonpj@microsoft.com [Tue, 19 Oct 2010 09:01:40 +0000 (09:01 +0000)]
Reject programs with equality superclasses for now

13 years agoLayout and tiny refactoring only
simonpj@microsoft.com [Tue, 19 Oct 2010 09:01:24 +0000 (09:01 +0000)]
Layout and tiny refactoring only

13 years agoClean up the debugger code
simonpj@microsoft.com [Tue, 19 Oct 2010 09:01:00 +0000 (09:01 +0000)]
Clean up the debugger code

In particular there is much less fiddly skolemisation now
Things are not *quite* right (break001 and 006 still fail),
but they are *much* better than before.

13 years agoAdd new VarEnv functions minusVarEnv, intersectsVarEnv, unionInScope
simonpj@microsoft.com [Tue, 19 Oct 2010 08:56:09 +0000 (08:56 +0000)]
Add new VarEnv functions minusVarEnv, intersectsVarEnv, unionInScope

13 years agoMajor pass through type checker:(1) prioritizing equalities, (2) improved Derived...
dimitris@microsoft.com [Mon, 18 Oct 2010 15:15:10 +0000 (15:15 +0000)]
Major pass through type checker:(1) prioritizing equalities, (2) improved Derived mechanism, (3) bugfixes

13 years ago(1) Caching FD improvements for efficiency, (2) preventing cascading deriveds from...
dimitris@microsoft.com [Fri, 15 Oct 2010 16:44:21 +0000 (16:44 +0000)]
(1) Caching FD improvements for efficiency, (2) preventing cascading deriveds from entering the inert, (3) Fixing bugs in the creation of FlexiTcS variables

13 years agoMidstream changes for performance improvement related to superclasses and functional...
dimitris@microsoft.com [Thu, 14 Oct 2010 14:38:11 +0000 (14:38 +0000)]
Midstream changes for performance improvement related to superclasses and functional dependencies.

13 years agoMinor
dimitris@microsoft.com [Tue, 12 Oct 2010 08:09:51 +0000 (08:09 +0000)]
Minor

13 years agoCommentary changes
dimitris@microsoft.com [Mon, 11 Oct 2010 14:22:35 +0000 (14:22 +0000)]
Commentary changes

13 years agoKind checking bugfix (#4356) and preventing wanteds from rewriting wanteds
dimitris@microsoft.com [Fri, 8 Oct 2010 17:37:00 +0000 (17:37 +0000)]
Kind checking bugfix (#4356) and preventing wanteds from rewriting wanteds

13 years agoFix a retainer profiling segfault
Ian Lynagh [Tue, 19 Oct 2010 13:27:27 +0000 (13:27 +0000)]
Fix a retainer profiling segfault
The bitmap type wasn't big enough to hold large bitmaps on 64 bit
platforms. Profiling GHC was segfaulting when retainStack was handling a
size 33 bitmap.

13 years agoFix -auto-all: Add SCCs to IDs which have a monotype too
Ian Lynagh [Mon, 18 Oct 2010 15:39:57 +0000 (15:39 +0000)]
Fix -auto-all: Add SCCs to IDs which have a monotype too

13 years agoDefine SpecConstrAnnotation in GHC.Exts, and import it from there
simonpj@microsoft.com [Mon, 18 Oct 2010 13:57:46 +0000 (13:57 +0000)]
Define SpecConstrAnnotation in GHC.Exts, and import it from there

Reason: avoid having to link the entire ghc package in modules
that use compile-time annotations:

     import GHC.Exts( SpecConstrAnnotation )
     {-# ANN type T ForceSpecConstr #-}

It's a kind of bug that the package exporting SpecConstrAnnotation
is linked even though it is only needed at compile time, but putting
the data type declaration in GHC.Exts is a simple way to sidestep
the problem

See See Note [SpecConstrAnnotation] in SpecConstr

13 years agoFix warnings in AsmCodeGen
David Terei [Thu, 7 Oct 2010 14:35:59 +0000 (14:35 +0000)]
Fix warnings in AsmCodeGen

13 years agoLLVM: Fix compilation of writebarrier, #4308
David Terei [Mon, 4 Oct 2010 15:38:43 +0000 (15:38 +0000)]
LLVM: Fix compilation of writebarrier, #4308

13 years agoChange how the OS X installer's create-links finds the versin number
Ian Lynagh [Sun, 17 Oct 2010 12:23:52 +0000 (12:23 +0000)]
Change how the OS X installer's create-links finds the versin number
It now gets created by configure, rather than trying to work out the
version number at runtime.

13 years agoAdd more quoting to distrib/MacOS/installer-scripts/create-links
Ian Lynagh [Sun, 17 Oct 2010 11:26:48 +0000 (11:26 +0000)]
Add more quoting to distrib/MacOS/installer-scripts/create-links

13 years agochange os x installer to allow multiple installed versions
Evan Laforge [Wed, 29 Sep 2010 23:45:38 +0000 (23:45 +0000)]
change os x installer to allow multiple installed versions
This puts the ghc version into the package name so they are considered separate
packages.

13 years agoOnly put the boot packages in the haddock contents/index
Ian Lynagh [Sat, 16 Oct 2010 18:00:31 +0000 (18:00 +0000)]
Only put the boot packages in the haddock contents/index
We don't install dph etc, so don't put them in the doc index.

13 years agoCorrect the regexp used to search for extra packages
Ian Lynagh [Sat, 16 Oct 2010 12:34:21 +0000 (12:34 +0000)]
Correct the regexp used to search for extra packages
We weren't ignoring comment lines

13 years agoNew member "archiveMemberName" for struct _ObjectCode
pho@cielonegro.org [Mon, 27 Sep 2010 22:41:45 +0000 (22:41 +0000)]
New member "archiveMemberName" for struct _ObjectCode

struct _ObjectCode should be able to retain the name of archive members.
Though currently the only use of those names are for debugging outputs.

13 years agoAdd a -fghci-sandbox flag so that we can en/disable the ghci sandbox
Ian Lynagh [Fri, 15 Oct 2010 17:27:46 +0000 (17:27 +0000)]
Add a -fghci-sandbox flag so that we can en/disable the ghci sandbox
It's on by default (which matches the previous behaviour).

Motivation:
GLUT on OS X needs to run on the main thread. If you
try to use it from another thread then you just get a
white rectangle rendered. For this, or anything else
with such restrictions, you can turn the GHCi sandbox off
and things will be run in the main thread.