ghc-hetmet.git
15 years agoAdd (a) CoreM monad, (b) new Annotations feature
simonpj@microsoft.com [Thu, 30 Oct 2008 12:51:08 +0000 (12:51 +0000)]
Add (a) CoreM monad, (b) new Annotations feature

This patch, written by Max Bolingbroke,  does two things

1.  It adds a new CoreM monad (defined in simplCore/CoreMonad),
    which is used as the top-level monad for all the Core-to-Core
    transformations (starting at SimplCore).  It supports
       * I/O (for debug printing)
       * Unique supply
       * Statistics gathering
       * Access to the HscEnv, RuleBase, Annotations, Module
    The patch therefore refactors the top "skin" of every Core-to-Core
    pass, but does not change their functionality.

2.  It adds a completely new facility to GHC: Core "annotations".
    The idea is that you can say
       {#- ANN foo (Just "Hello") #-}
    which adds the annotation (Just "Hello") to the top level function
    foo.  These annotations can be looked up in any Core-to-Core pass,
    and are persisted into interface files.  (Hence a Core-to-Core pass
    can also query the annotations of imported things.)  Furthermore,
    a Core-to-Core pass can add new annotations (eg strictness info)
    of its own, which can be queried by importing modules.

The design of the annotation system is somewhat in flux.  It's
designed to work with the (upcoming) dynamic plug-ins mechanism,
but is meanwhile independently useful.

Do not merge to 6.10!

15 years agoFix Trac #2674: in TH reject empty case expressions and function definitions
simonpj@microsoft.com [Thu, 30 Oct 2008 09:45:28 +0000 (09:45 +0000)]
Fix Trac #2674: in TH reject empty case expressions and function definitions

15 years agoChange naming conventions for compiler-generated dictionaries and type functions
simonpj@microsoft.com [Wed, 29 Oct 2008 14:08:58 +0000 (14:08 +0000)]
Change naming conventions for compiler-generated dictionaries and type functions

Up to now, the data constructor dictionary for class C as been called
":DC". But there is no reason for the colon to be at the front; indeed
it confuses the (simple-minded) pretty-printer for types.  So this
patch changes it to be "D:C".  This makes Core a lot easier to read.
Having a colon in the middle ensures that it can't clash with a user-written
data type.

Similarly I changed

  T:C     Data type corresponding a class dictionary (was :TC)
  D:C    Data constructor for class dictionary (was :DC)

  NTCo:T   Coercion mapping from a newtype T to its representation type
(was :CoT)

  TFCo:R   Coercion mapping from a data family to its respresentation type R
(was :CoFR)

  Rn:T     The n'th respresentation data type for a data type T
(was :RnT)

Do not merge to 6.10.

HEADS-UP: you'll need to recompile libraries from scratch.

ROMAN: you could do the same for OccName.mkVectTyConOcc etc, if you wanted.

15 years agoFix tcrun031: yet more tidying up in TcDeriv
simonpj@microsoft.com [Wed, 29 Oct 2008 13:01:55 +0000 (13:01 +0000)]
Fix tcrun031: yet more tidying up in TcDeriv

15 years agoAdd Outputable instance for CoercionI
simonpj@microsoft.com [Wed, 29 Oct 2008 13:01:14 +0000 (13:01 +0000)]
Add Outputable instance for CoercionI

15 years agoFix Trac #2720: inlining and casts
simonpj@microsoft.com [Tue, 28 Oct 2008 14:08:28 +0000 (14:08 +0000)]
Fix Trac #2720: inlining and casts

The issue here is what happens when we have

(f |> co) x

where f is itself marked INLINE.  We want callSiteInline to "see"
the fact that the function is applied, and hence have some incentive
to inline.  I've done this by extending CoreUnfold.CallCtxt with
ValAppCtxt.  I think that should catch this case without messing up
any of the others.

15 years agoClarify documentatoin
simonpj@microsoft.com [Tue, 28 Oct 2008 13:30:09 +0000 (13:30 +0000)]
Clarify documentatoin

15 years agoUpdate library version numbers in the release notes
Ian Lynagh [Thu, 23 Oct 2008 14:40:18 +0000 (14:40 +0000)]
Update library version numbers in the release notes

15 years agovarious updates to the release notes
Simon Marlow [Tue, 7 Oct 2008 15:16:47 +0000 (15:16 +0000)]
various updates to the release notes

15 years agoAdd library release notes
Ian Lynagh [Sat, 20 Sep 2008 15:57:22 +0000 (15:57 +0000)]
Add library release notes

15 years agoAdd release notes for the compiler
Ian Lynagh [Sat, 20 Sep 2008 11:48:57 +0000 (11:48 +0000)]
Add release notes for the compiler

15 years agoDoc fix
Ian Lynagh [Tue, 28 Oct 2008 15:05:34 +0000 (15:05 +0000)]
Doc fix

15 years agoRename some variables in docs
Ian Lynagh [Tue, 28 Oct 2008 15:04:47 +0000 (15:04 +0000)]
Rename some variables in docs

15 years agoFix typos
Ian Lynagh [Tue, 28 Oct 2008 14:46:55 +0000 (14:46 +0000)]
Fix typos

15 years agoMostly-fix Trac #2595: updates for existentials
simonpj@microsoft.com [Tue, 28 Oct 2008 11:54:27 +0000 (11:54 +0000)]
Mostly-fix Trac #2595: updates for existentials

Ganesh wanted to update records that involve existentials.  That
seems reasonable to me, and this patch covers existentials, GADTs,
and data type families.

The restriction is that
  The types of the updated fields may mention only the
  universally-quantified type variables of the data constructor

This doesn't allow everything in #2595 (it allows 'g' but not 'f' in
the ticket), but it gets a lot closer.

Lots of the new lines are comments!

15 years agoFix Trac #2723: keep track of record field names in the renamer
simonpj@microsoft.com [Tue, 28 Oct 2008 11:04:45 +0000 (11:04 +0000)]
Fix Trac #2723: keep track of record field names in the renamer

The idea here is that with -XNamedFieldPuns and -XRecordWildCards we don't
want to report shadowing errors for
let fld = <blah> in C { .. }
But to suppress such shadowing errors, the renamer needs to know that
'fld' *is* a record selector.  Hence the new NameSet in
TcRnFypes.RecFieldEnv

15 years agoRemove dead code
simonpj@microsoft.com [Tue, 28 Oct 2008 07:46:39 +0000 (07:46 +0000)]
Remove dead code

15 years agoFix Trac #2713: refactor and tidy up renaming of fixity decls
simonpj@microsoft.com [Mon, 27 Oct 2008 22:27:38 +0000 (22:27 +0000)]
Fix Trac #2713: refactor and tidy up renaming of fixity decls

In fixing #2713, this patch also eliminates two almost-unused
functions from RnEnv (lookupBndr and lookupBndr_maybe).  The
net lines of code is prety much unchanged, but more of them
are comments!

15 years agoFix Trac #2701: make deriving check better for unlifted args
simonpj@microsoft.com [Sat, 25 Oct 2008 17:12:11 +0000 (17:12 +0000)]
Fix Trac #2701: make deriving check better for unlifted args

Getting the automatic deriving mechanism to work really smoothly
is surprisingly hard.  I keep finding myself in TcDeriv!

Anyway, this is a nice clean fix to Trac #2701.

15 years agoUse pdflatex rather than latex for building
Ian Lynagh [Fri, 24 Oct 2008 11:24:00 +0000 (11:24 +0000)]
Use pdflatex rather than latex for building
The Windows builder is having problems running ps2pdf, so this works
aroudn the problem.

15 years agoRemove an unmatched } in core.tex
Ian Lynagh [Fri, 24 Oct 2008 11:17:50 +0000 (11:17 +0000)]
Remove an unmatched } in core.tex

15 years agoAdd a usepackage{url}
Ian Lynagh [Fri, 24 Oct 2008 11:14:58 +0000 (11:14 +0000)]
Add a usepackage{url}

15 years agoUpdate ANNOUNCE
Ian Lynagh [Wed, 22 Oct 2008 16:44:23 +0000 (16:44 +0000)]
Update ANNOUNCE

15 years agoFix a bug in the new scheduler
Simon Marlow [Thu, 23 Oct 2008 15:50:17 +0000 (15:50 +0000)]
Fix a bug in the new scheduler
If the current thread blocks, we should yield the Capability
immediately, because the thread and hence possibly the current Task
are now owned by someone else.  This worked in the old scheduler, but
we moved where the yield happens in the new scheduler which broke it.

15 years agoadd an assertion
Simon Marlow [Thu, 23 Oct 2008 15:45:51 +0000 (15:45 +0000)]
add an assertion

15 years agofix a warning
Simon Marlow [Thu, 23 Oct 2008 08:22:13 +0000 (08:22 +0000)]
fix a warning

15 years agotraverse the spark pools only once during GC rather than twice
Simon Marlow [Wed, 22 Oct 2008 11:52:33 +0000 (11:52 +0000)]
traverse the spark pools only once during GC rather than twice

15 years agoRefactoring and reorganisation of the scheduler
Simon Marlow [Wed, 22 Oct 2008 09:27:44 +0000 (09:27 +0000)]
Refactoring and reorganisation of the scheduler

Change the way we look for work in the scheduler.  Previously,
checking to see whether there was anything to do was a
non-side-effecting operation, but this has changed now that we do
work-stealing.  This lead to a refactoring of the inner loop of the
scheduler.

Also, lots of cleanup in the new work-stealing code, but no functional
changes.

One new statistic is added to the +RTS -s output:

  SPARKS: 1430 (2 converted, 1427 pruned)

lets you know something about the use of `par` in the program.

15 years agoWork stealing for sparks
berthold@mathematik.uni-marburg.de [Mon, 15 Sep 2008 13:28:46 +0000 (13:28 +0000)]
Work stealing for sparks

   Spark stealing support for PARALLEL_HASKELL and THREADED_RTS versions of the RTS.

  Spark pools are per capability, separately allocated and held in the Capability
  structure. The implementation uses Double-Ended Queues (deque) and cas-protected
  access.

  The write end of the queue (position bottom) can only be used with
  mutual exclusion, i.e. by exactly one caller at a time.
  Multiple readers can steal()/findSpark() from the read end
  (position top), and are synchronised without a lock, based on a cas
  of the top position. One reader wins, the others return NULL for a
  failure.

  Work stealing is called when Capabilities find no other work (inside yieldCapability),
  and tries all capabilities 0..n-1 twice, unless a theft succeeds.

  Inside schedulePushWork, all considered cap.s (those which were idle and could
  be grabbed) are woken up. Future versions should wake up capabilities immediately when
  putting a new spark in the local pool, from newSpark().

Patch has been re-recorded due to conflicting bugfixes in the sparks.c, also fixing a
(strange) conflict in the scheduler.

15 years agoinclude an elapsed time table
Simon Marlow [Thu, 23 Oct 2008 08:06:48 +0000 (08:06 +0000)]
include an elapsed time table

15 years agogenerate a valid summary for older GHC versions too
Simon Marlow [Thu, 23 Oct 2008 08:06:29 +0000 (08:06 +0000)]
generate a valid summary for older GHC versions too

15 years agoFix Trac #2714 (a minor wibble)
simonpj@microsoft.com [Wed, 22 Oct 2008 14:51:38 +0000 (14:51 +0000)]
Fix Trac #2714 (a minor wibble)

In boxy_match (which is a pure function used by preSubType) we can
encounter TyVars not just TcTyVars; this patch takes account of that.

15 years agoReject programs with superclass equalities for now
Manuel M T Chakravarty [Tue, 21 Oct 2008 13:17:21 +0000 (13:17 +0000)]
Reject programs with superclass equalities for now
- The current implementation of type families cannot properly deal
  with superclass equalities.  Instead of making a half-hearted attempt at
  supporting them, which mostly ends in cryptic error message, rejecting
  right away with an appropriate message.

  MERGE TO 6.10

15 years agoFix doc syntax
Ian Lynagh [Tue, 21 Oct 2008 18:33:17 +0000 (18:33 +0000)]
Fix doc syntax

15 years agoDon't put the README file in the Windows installer; fixes trac #2698
Ian Lynagh [Tue, 21 Oct 2008 16:25:43 +0000 (16:25 +0000)]
Don't put the README file in the Windows installer; fixes trac #2698
The README file talks about getting and building the sources, which
doesn't make sense for the installer.

15 years agoComments and parens only
simonpj@microsoft.com [Tue, 21 Oct 2008 15:14:01 +0000 (15:14 +0000)]
Comments and parens only

15 years agoDo proper cloning in worker/wrapper splitting
simonpj@microsoft.com [Tue, 21 Oct 2008 14:31:56 +0000 (14:31 +0000)]
Do proper cloning in worker/wrapper splitting

See Note [Freshen type variables] in WwLib.  We need to clone type
variables when building a worker/wrapper split, else we simply get
bogus code, admittedly in rather obscure situations.  I can't quite
remember what program showed this up, unfortunately, but there
definitely *was* one!  (You get a Lint error.)

15 years agoDon't float an expression wrapped in a cast
simonpj@microsoft.com [Tue, 21 Oct 2008 14:30:19 +0000 (14:30 +0000)]
Don't float an expression wrapped in a cast

There is no point in floating out an expression wrapped in a coercion;
If we do we'll transform
lvl = e |> co [_$_]
to
lvl' = e; lvl = lvl' |> co
and then inline lvl.  Better just to float out the payload (e).

15 years agoFix Trac #2668, and refactor TcDeriv
simonpj@microsoft.com [Tue, 21 Oct 2008 14:29:22 +0000 (14:29 +0000)]
Fix Trac #2668, and refactor TcDeriv

TcDeriv deals with both standalone and ordinary 'deriving';
and with both data types and 'newtype deriving'.  The result
is really rather compilcated and ad hoc.  Ryan discovered
#2668; this patch fixes that bug, and makes the internal interfces
#more uniform.  Specifically, the business of knocking off
type arguments from the instance type until it matches the kind of the
class, is now done by derivTyData, not mkNewTypeEqn, because the
latter is shared with standalone derriving, whree the trimmed
type application is what the user wrote.

15 years agoSpelling error in comment
simonpj@microsoft.com [Sun, 19 Oct 2008 23:35:11 +0000 (23:35 +0000)]
Spelling error in comment

15 years agoWhite space only
simonpj@microsoft.com [Sun, 19 Oct 2008 23:33:52 +0000 (23:33 +0000)]
White space only

15 years agoComments to explain strict overlap checking for type family instances
simonpj@microsoft.com [Sun, 19 Oct 2008 18:42:08 +0000 (18:42 +0000)]
Comments to explain strict overlap checking for type family instances

15 years agoAllow type families to use GADT syntax (and be GADTs)
simonpj@microsoft.com [Tue, 23 Sep 2008 14:05:35 +0000 (14:05 +0000)]
Allow type families to use GADT syntax (and be GADTs)

We've always intended to allow you to use GADT syntax for
data families:
data instance T [a] where
  T1 :: a -> T [a]
and indeed to allow data instances to *be* GADTs
data intsance T [a] where
  T1 :: Int -> T [Int]
  T2 :: a -> b -> T [(a,b)]

This patch fixes the renamer and type checker to allow this.

15 years agoImprove crash message from applyTys and applyTypeToArgs
simonpj@microsoft.com [Tue, 23 Sep 2008 13:54:19 +0000 (13:54 +0000)]
Improve crash message from applyTys and applyTypeToArgs

15 years agoWibble to ungrammatical error message
simonpj@microsoft.com [Sat, 20 Sep 2008 23:22:56 +0000 (23:22 +0000)]
Wibble to ungrammatical error message

15 years agoComments only: replace ":=:" by "~" (notation for equality predicates)
simonpj@microsoft.com [Sat, 20 Sep 2008 23:20:24 +0000 (23:20 +0000)]
Comments only: replace ":=:" by "~" (notation for equality predicates)

15 years agoFIX #2693
Manuel M T Chakravarty [Tue, 21 Oct 2008 12:01:07 +0000 (12:01 +0000)]
FIX #2693
- As long as the first reduceContext in tcSimplifyRestricted potentially
  performs improvement, we need to zonk again before the second reduceContext.
  It would be better to prevent the improvement in the first place, but given
  the current situation zonking is definitely the right thing to do.

  MERGE TO 6.10

15 years agoRestore the terminal attributes even if ghci does not exit normally.
Judah Jacobson [Mon, 20 Oct 2008 16:41:09 +0000 (16:41 +0000)]
Restore the terminal attributes even if ghci does not exit normally.

15 years agoFIX #2688
Manuel M T Chakravarty [Tue, 21 Oct 2008 04:42:13 +0000 (04:42 +0000)]
FIX #2688
- Change in TcSimplify.reduceContext:

     We do *not* go around for new extra_eqs.  Morally, we should,
     but we can't without risking non-termination (see #2688).  By
     not going around, we miss some legal programs mixing FDs and
     TFs, but we never claimed to support such programs in the
     current implementation anyway.

  MERGE TO 6.10

15 years agoMove documentation within 80 column boundary.
Thomas Schilling [Tue, 14 Oct 2008 13:40:16 +0000 (13:40 +0000)]
Move documentation within 80 column boundary.

15 years agoImprove haddock documentation for 'GHC.topSortModuleGraph'.
Thomas Schilling [Tue, 14 Oct 2008 13:38:33 +0000 (13:38 +0000)]
Improve haddock documentation for 'GHC.topSortModuleGraph'.

15 years agoImprove haddock documentation for HsExpr module.
Thomas Schilling [Tue, 14 Oct 2008 13:37:40 +0000 (13:37 +0000)]
Improve haddock documentation for HsExpr module.

15 years agoImprove Haddock-markup for HsDecls module.
Thomas Schilling [Tue, 14 Oct 2008 13:35:56 +0000 (13:35 +0000)]
Improve Haddock-markup for HsDecls module.

15 years agoRun Haddock with compacting GC and show RTS statistics.
Thomas Schilling [Mon, 20 Oct 2008 11:14:10 +0000 (11:14 +0000)]
Run Haddock with compacting GC and show RTS statistics.

15 years agoFIX (partially) #2703: bug in stack overflow handling when inside block
Simon Marlow [Mon, 20 Oct 2008 12:11:03 +0000 (12:11 +0000)]
FIX (partially) #2703: bug in stack overflow handling when inside block
As a result of a previous ticket (#767) we disabled the generation of
StackOverflow exceptions when inside a Control.Exception.block, on the
grounds that StackOverflow is like an asynchronous exception.  Instead
we just increase the stack size.  However, the stack size calculation
was wrong, and ended up not increasing the size of the stack, with the
result that the runtime just kept re-allocating the stack and filling
up memory.

15 years agoRe-export Located(..) and related functions
Simon Marlow [Mon, 20 Oct 2008 10:24:22 +0000 (10:24 +0000)]
Re-export Located(..) and related functions
So that clients don't need to import SrcLoc

15 years agowhitespace fix
Simon Marlow [Mon, 20 Oct 2008 10:12:41 +0000 (10:12 +0000)]
whitespace fix

15 years agoFIX #2691: Manually reset the terminal to its initial settings; works around a bug...
Judah Jacobson [Thu, 16 Oct 2008 02:48:38 +0000 (02:48 +0000)]
FIX #2691: Manually reset the terminal to its initial settings; works around a bug in libedit.

15 years agoEliminate duplicate flags in the tab completion of ghci's :set command.
Judah Jacobson [Thu, 16 Oct 2008 01:57:21 +0000 (01:57 +0000)]
Eliminate duplicate flags in the tab completion of ghci's :set command.

15 years agoAdd dph haddock docs to the doc index
Ian Lynagh [Sun, 19 Oct 2008 13:32:08 +0000 (13:32 +0000)]
Add dph haddock docs to the doc index

15 years agoClean the bootstrapping extensible-exceptions package
Ian Lynagh [Fri, 17 Oct 2008 19:59:42 +0000 (19:59 +0000)]
Clean the bootstrapping extensible-exceptions package

15 years agoFix trac #2687
Ian Lynagh [Wed, 15 Oct 2008 16:34:12 +0000 (16:34 +0000)]
Fix trac #2687
OtherPunctuation, ConnectorPunctuation and DashPunctuation are now
treated as symbols, rather than merely graphic characters.

15 years agoFix trac #2680; avoid quadratic behaviour from (++)
Ian Lynagh [Wed, 15 Oct 2008 16:32:35 +0000 (16:32 +0000)]
Fix trac #2680; avoid quadratic behaviour from (++)

15 years agoFix the build when the bootstrapping compiler has a newer Cabal than us
Ian Lynagh [Wed, 15 Oct 2008 14:40:23 +0000 (14:40 +0000)]
Fix the build when the bootstrapping compiler has a newer Cabal than us
We need to forcibly use the in-tree Cabal, or we get version mismatch errors

15 years agoFix the name of prologue.txt when making bindists
Ian Lynagh [Tue, 14 Oct 2008 11:47:14 +0000 (11:47 +0000)]
Fix the name of prologue.txt when making bindists

15 years agoComments only
simonpj@microsoft.com [Wed, 15 Oct 2008 08:45:01 +0000 (08:45 +0000)]
Comments only

15 years agoFix Trac #2497; two separate typos in Lexer.x
simonpj@microsoft.com [Wed, 15 Oct 2008 08:43:44 +0000 (08:43 +0000)]
Fix Trac #2497; two separate typos in Lexer.x

The patch to switch on lexing of 'forall' inside a RULES pragma
wasn't working.  This fixes it so that it does.

15 years agoUpdate manual: tidy up instances, say more about type families in instance decls
simonpj@microsoft.com [Wed, 15 Oct 2008 08:05:09 +0000 (08:05 +0000)]
Update manual: tidy up instances, say more about type families in instance decls

15 years agoMake tags work on Unices, too.
Thomas Schilling [Tue, 14 Oct 2008 21:12:36 +0000 (21:12 +0000)]
Make tags work on Unices, too.

15 years agoUndefine __PIC__ before defining it to work around "multiple definitions of __PIC__...
Clemens Fruhwirth [Tue, 14 Oct 2008 14:32:06 +0000 (14:32 +0000)]
Undefine __PIC__ before defining it to work around "multiple definitions of __PIC__" warnings

15 years agoAdd "dyn" to GhcRTSWays when compiling --enable-shared
Clemens Fruhwirth [Tue, 14 Oct 2008 12:51:23 +0000 (12:51 +0000)]
Add "dyn" to GhcRTSWays when compiling --enable-shared

15 years agoFill out the ghc package's cabal file
Ian Lynagh [Mon, 13 Oct 2008 23:58:17 +0000 (23:58 +0000)]
Fill out the ghc package's cabal file

15 years agoPatching libffi so it can be built as DLL
Clemens Fruhwirth [Tue, 14 Oct 2008 10:34:59 +0000 (10:34 +0000)]
Patching libffi so it can be built as DLL

libffi-dllize-3.0.6.patch should be pushed upstream

15 years agoAdd 'etags' makefile target.
Thomas Schilling [Mon, 13 Oct 2008 17:09:27 +0000 (17:09 +0000)]
Add 'etags' makefile target.

This only works with stage2 since `ghctags' is built against stage1
but not against the bootstrapping compiler.  Also note that all of GHC
must typecheck for this target to succeed.  Perhaps we should not
overwrite the old TAGS file by default then.

15 years agoUse cabal information to get GHC's flags to `ghctags'.
Thomas Schilling [Mon, 13 Oct 2008 17:06:58 +0000 (17:06 +0000)]
Use cabal information to get GHC's flags to `ghctags'.

By giving the dist-directory to ghctags we can get all the GHC API
flags we need in order to load the required modules.  The flag name
could perhaps be improved, but apart from that it seems to work well.

15 years agoVersion bump for libffi to 3.0.6
Clemens Fruhwirth [Tue, 14 Oct 2008 08:13:00 +0000 (08:13 +0000)]
Version bump for libffi to 3.0.6

15 years agoEncode shared/static configuration into stamps to do the right thing when rebuilding
Clemens Fruhwirth [Mon, 13 Oct 2008 22:15:30 +0000 (22:15 +0000)]
Encode shared/static configuration into stamps to do the right thing when rebuilding

15 years agoAdd a link to the GHC API docs from the library haddock index
Ian Lynagh [Mon, 13 Oct 2008 19:59:43 +0000 (19:59 +0000)]
Add a link to the GHC API docs from the library haddock index

15 years agoLink to the GHC API documentation from the main doc page
Ian Lynagh [Mon, 13 Oct 2008 20:09:27 +0000 (20:09 +0000)]
Link to the GHC API documentation from the main doc page

15 years agoWhitespace only in docs/index.html
Ian Lynagh [Mon, 13 Oct 2008 20:06:25 +0000 (20:06 +0000)]
Whitespace only in docs/index.html

15 years agoTweak gen_contents_index
Ian Lynagh [Mon, 13 Oct 2008 19:25:48 +0000 (19:25 +0000)]
Tweak gen_contents_index
It now works again after it has been installed, as well as while it is
in a source tree.
After it's been installed it filters out the ghc package, as that
currently swamps everything else in the index.

15 years agoBuild fixes for DLLized rts
Clemens Fruhwirth [Mon, 13 Oct 2008 20:16:08 +0000 (20:16 +0000)]
Build fixes for DLLized rts

15 years agoDo not filter the rts from linked libraries in linkDynLib as Windows does not allow...
Clemens Fruhwirth [Mon, 13 Oct 2008 20:14:26 +0000 (20:14 +0000)]
Do not filter the rts from linked libraries in linkDynLib as Windows does not allow unresolved symbols

15 years agoAdd HsFFI.o to INSTALL_LIBS
Clemens Fruhwirth [Mon, 13 Oct 2008 20:09:45 +0000 (20:09 +0000)]
Add HsFFI.o to INSTALL_LIBS

15 years agoRename symbol macros to a consistant naming scheme
Clemens Fruhwirth [Mon, 13 Oct 2008 16:24:33 +0000 (16:24 +0000)]
Rename symbol macros to a consistant naming scheme

15 years agoFix #2685: two Bool arguments to tidyTypeEnv were the wrong way around
Simon Marlow [Mon, 13 Oct 2008 12:13:39 +0000 (12:13 +0000)]
Fix #2685: two Bool arguments to tidyTypeEnv were the wrong way around
So -XTemplateHaskell was behaving like -fomit-interface-file-pragmas,
and vice versa.

15 years agoSimplify the "is $bindir in $PATH" test
Ian Lynagh [Sat, 11 Oct 2008 19:10:08 +0000 (19:10 +0000)]
Simplify the "is $bindir in $PATH" test

15 years agoCorrect the "is $bindir in $PATH" test
Ian Lynagh [Sat, 11 Oct 2008 19:10:30 +0000 (19:10 +0000)]
Correct the "is $bindir in $PATH" test
We were testing neq instead of eq

15 years agoFix a typo which was causing ghci to quit on commands errors
pepe [Sat, 11 Oct 2008 11:47:20 +0000 (11:47 +0000)]
Fix a typo which was causing ghci to quit on commands errors

15 years agoDrop libm from the linker dependencies for libffi
Clemens Fruhwirth [Sat, 11 Oct 2008 07:45:24 +0000 (07:45 +0000)]
Drop libm from the linker dependencies for libffi

15 years agoDo not generate haddock documentation when running install-docs in libffi
Clemens Fruhwirth [Fri, 10 Oct 2008 19:23:18 +0000 (19:23 +0000)]
Do not generate haddock documentation when running install-docs in libffi

15 years agoWhen waking up thread blocked on TVars, wake oldest first (#2319)
Josef Svenningsson [Fri, 10 Oct 2008 15:03:22 +0000 (15:03 +0000)]
When waking up thread blocked on TVars, wake oldest first (#2319)
StgTVarWatchQueue contains the threads blocked on a TVar in order
youngest first. The list has to be traversed backwards to unpark the threads
oldest first.

This improves the fairness when using STM in some situations.

15 years agoadd readTVarIO :: TVar a -> IO a
Simon Marlow [Fri, 10 Oct 2008 13:15:45 +0000 (13:15 +0000)]
add readTVarIO :: TVar a -> IO a

15 years agofix #2636: throw missing module errors as SourceErrors, not ErrMsg
Simon Marlow [Fri, 10 Oct 2008 13:15:35 +0000 (13:15 +0000)]
fix #2636: throw missing module errors as SourceErrors, not ErrMsg

15 years agoatomicModifyIORef: use a local cas() instead of the global lock
Simon Marlow [Wed, 8 Oct 2008 15:47:02 +0000 (15:47 +0000)]
atomicModifyIORef: use a local cas() instead of the global lock
This should improve scaling when using atomicModifyIORef

15 years agoDelay building libffi until package.conf is created and fix bindist
Clemens Fruhwirth [Fri, 10 Oct 2008 07:31:06 +0000 (07:31 +0000)]
Delay building libffi until package.conf is created and fix bindist

15 years agoInstall a versioned ghc-pkg script; fixes trac #2662
Ian Lynagh [Thu, 9 Oct 2008 16:49:46 +0000 (16:49 +0000)]
Install a versioned ghc-pkg script; fixes trac #2662

15 years agoFix bindist creation: Only the main RTS was being put in the bindists
Ian Lynagh [Thu, 9 Oct 2008 16:34:51 +0000 (16:34 +0000)]
Fix bindist creation: Only the main RTS was being put in the bindists

15 years agopushAtom: add missing case for MachNullAddr (#2589)
Simon Marlow [Thu, 9 Oct 2008 09:11:18 +0000 (09:11 +0000)]
pushAtom: add missing case for MachNullAddr (#2589)

15 years agoundo incorrect assertion, and fix comments
Simon Marlow [Thu, 9 Oct 2008 08:51:18 +0000 (08:51 +0000)]
undo incorrect assertion, and fix comments