ghc.git
7 years agoMerge branch 'newcg' of /home/simonmar/code-all/work/ghc-newcg into newcg
Simon Marlow [Sun, 19 Feb 2012 13:04:37 +0000 (13:04 +0000)] 
Merge branch 'newcg' of /home/simonmar/code-all/work/ghc-newcg into newcg

7 years agoremove some obsolete notes
Simon Marlow [Sun, 19 Feb 2012 13:04:34 +0000 (13:04 +0000)] 
remove some obsolete notes

7 years agoNew codegen: fix bad code for comparisons (see Note [case on bool])
Simon Marlow [Wed, 15 Feb 2012 12:57:24 +0000 (12:57 +0000)] 
New codegen: fix bad code for comparisons (see Note [case on bool])

7 years agoImprovements to the mini-inliner
Simon Marlow [Wed, 15 Feb 2012 12:56:38 +0000 (12:56 +0000)] 
Improvements to the mini-inliner

 - inline x = R1, even if x occurs many times
 - inline past a store, if the expression is not a load
   (we could further refine this of course, but the idea here
   is to get reasonable code for not much effort)

7 years agore-enable constant folding in the NCG, while cmmRewriteAssignments is off
Simon Marlow [Wed, 15 Feb 2012 11:11:18 +0000 (11:11 +0000)] 
re-enable constant folding in the NCG, while cmmRewriteAssignments is off

7 years agoMerge remote-tracking branch 'laptop/newcg' into newcg
Me at work [Tue, 14 Feb 2012 11:49:53 +0000 (11:49 +0000)] 
Merge remote-tracking branch 'laptop/newcg' into newcg

7 years agoDelete some done items
Simon Marlow [Tue, 14 Feb 2012 11:46:33 +0000 (11:46 +0000)] 
Delete some done items

7 years agokill some dead code
Simon Marlow [Tue, 14 Feb 2012 11:46:13 +0000 (11:46 +0000)] 
kill some dead code

7 years agoEliminate some redundant stack assignments and empty stack checks
Simon Marlow [Tue, 14 Feb 2012 11:46:02 +0000 (11:46 +0000)] 
Eliminate some redundant stack assignments and empty stack checks

7 years agotiny refactoring
Simon Marlow [Tue, 14 Feb 2012 11:45:25 +0000 (11:45 +0000)] 
tiny refactoring

7 years agoFix an SRT-related bug
Simon Marlow [Tue, 14 Feb 2012 11:44:55 +0000 (11:44 +0000)] 
Fix an SRT-related bug

We were using the SRT information generated by the computeSRTs pass to
decide whether to add a static link field to a constructor or not, and
this broke when I disabled computeSRTs for the new code generator.  So
I've hacked it for now to only rely on the SRT information generated
by CoreToStg.

7 years agoremove unused Conventions (Foreign, Private)
Simon Marlow [Mon, 13 Feb 2012 22:08:45 +0000 (22:08 +0000)] 
remove unused Conventions (Foreign, Private)

7 years agomerge fixes
Simon Marlow [Mon, 13 Feb 2012 21:54:09 +0000 (21:54 +0000)] 
merge fixes

7 years agodisable GADTs again (causes problems with no-let-generalisation)
Simon Marlow [Mon, 13 Feb 2012 21:28:55 +0000 (21:28 +0000)] 
disable GADTs again (causes problems with no-let-generalisation)

7 years agoMerge remote-tracking branch 'origin/master' into newcg
Simon Marlow [Mon, 13 Feb 2012 21:19:21 +0000 (21:19 +0000)] 
Merge remote-tracking branch 'origin/master' into newcg

Conflicts:
compiler/cmm/CmmLint.hs
compiler/cmm/OldCmm.hs
compiler/codeGen/CgMonad.lhs
compiler/main/CodeOutput.lhs

7 years agoRevert "Don't add a bad import to the saved context."
Simon Marlow [Mon, 13 Feb 2012 13:22:20 +0000 (13:22 +0000)] 
Revert "Don't add a bad import to the saved context."

This reverts commit e5272d9bf2a65b7da8364803fcafbd2012b7de97.

Reverting to fix validate regression, and pending a redesign of the
changes.

7 years agoRevert "Have :load work under -XSafe in GHCi."
Simon Marlow [Mon, 13 Feb 2012 13:21:42 +0000 (13:21 +0000)] 
Revert "Have :load work under -XSafe in GHCi."

This reverts commit 5e9e07a33e17da01245f0cea78e6a6f8a32ac77d.

Reverting to fix validate regression, and pending a redesign of the
changes.

7 years ago.cmm files need to depend on DerivedConstants.h
Simon Marlow [Mon, 13 Feb 2012 11:18:08 +0000 (11:18 +0000)] 
.cmm files need to depend on DerivedConstants.h

7 years agoAllocate pinned object blocks from the nursery, not the global
Simon Marlow [Mon, 13 Feb 2012 11:17:50 +0000 (11:17 +0000)] 
Allocate pinned object blocks from the nursery, not the global
allocator.

Prompted by a benchmark posted to parallel-haskell@haskell.org by
Andreas Voellmy <andreas.voellmy@gmail.com>.  This program exhibits
contention for the block allocator when run with -N2 and greater
without the fix:

{-# LANGUAGE MagicHash, UnboxedTuples, BangPatterns #-}
module Main where

import Control.Monad
import Control.Concurrent
import System.Environment
import GHC.IO
import GHC.Exts
import GHC.Conc

main = do
 [m] <- fmap (fmap read) getArgs
 n <- getNumCapabilities
 ms <- replicateM n newEmptyMVar
 sequence [ forkIO $ busyWorkerB (m `quot` n) >> putMVar mv () | mv <- ms ]
 mapM takeMVar ms

busyWorkerB :: Int -> IO ()
busyWorkerB n_loops = go 0
  where go !n | n >= n_loops = return ()
              | otherwise    =
          do p <- (IO $ \s ->
                    case newPinnedByteArray# 1024# s      of
                      { (# s', mbarr# #) ->
                           (# s', () #)
                      }
                  )
             go (n+1)

7 years agoMinor documentation fix
Simon Hengel [Wed, 8 Feb 2012 07:38:35 +0000 (08:38 +0100)] 
Minor documentation fix

Add a missing 'to' to the documentation of "Safe Haskell".

7 years agoImprove FreeBSD support in configure
Ian Lynagh [Sat, 11 Feb 2012 14:23:56 +0000 (14:23 +0000)] 
Improve FreeBSD support in configure

Patch from Sergei Trofimovich.

7 years agoAdd dragonfly support; based on a patch from Goetz Isenmann
Ian Lynagh [Sat, 11 Feb 2012 13:33:01 +0000 (13:33 +0000)] 
Add dragonfly support; based on a patch from Goetz Isenmann

7 years agoFix some more sh syntax in configure.ac
Ian Lynagh [Fri, 10 Feb 2012 19:38:51 +0000 (19:38 +0000)] 
Fix some more sh syntax in configure.ac

7 years agoFix equality testing for test(1) on FreeBSD
Gabor Pali [Wed, 8 Feb 2012 17:30:38 +0000 (17:30 +0000)] 
Fix equality testing for test(1) on FreeBSD

7 years agoHave :load work under -XSafe in GHCi.
David Terei [Thu, 9 Feb 2012 11:45:24 +0000 (03:45 -0800)] 
Have :load work under -XSafe in GHCi.

7 years agoDon't add a bad import to the saved context.
David Terei [Thu, 9 Feb 2012 02:35:54 +0000 (18:35 -0800)] 
Don't add a bad import to the saved context.

Importing an unsafe module in GHCi under -XSafe would fail
but still save that in the context so it would be retried
on every subsequent import.

7 years agoDon't allow implicit qualified imports in GHCi when -XSafe on.
David Terei [Thu, 9 Feb 2012 01:24:49 +0000 (17:24 -0800)] 
Don't allow implicit qualified imports in GHCi when -XSafe on.

It would be better to actually check the safety of the import but doing
that requires some significant refactoring of code so punting for
another day.

7 years agoAdd script for sending bug remilestoning e-mails
Ian Lynagh [Fri, 10 Feb 2012 16:12:21 +0000 (16:12 +0000)] 
Add script for sending bug remilestoning e-mails

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Fri, 10 Feb 2012 15:34:07 +0000 (15:34 +0000)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoComplete fix of #5820
Simon Peyton Jones [Fri, 10 Feb 2012 15:33:53 +0000 (15:33 +0000)] 
Complete fix of #5820

There are two related changes in here

a) Fix TcRnDriver.setInteractiveContext so that it initialises
   tcg_insts and tcg_fam_insts, as well as the corresponding
   tcg_inst_env and tcg_fam_inst_env fields.  Vital!

b) Fix FamInst.tcExtendLocalFamInstEnv for the GHCi case.
   It had a special HACK to allow family instances to be overridden
   in GHCi.  Fair enough, but
     * It was only affecting the tcg_fam_inst_env, not tcg_fam_insts
     * It overrode home-package instances as well as ones entered
       at the GHCi prompt, which probably wasn't intended.

   I fixed both of these, and also narrowed the scope of what it does
   to override only *identical* instances, rather than any ones that
   conflict.  If people yelp about this we can return to the question,
   but for now it narrows the range of the HACK

7 years agoDocument -fwarn-auto-orphans
Simon Peyton Jones [Fri, 10 Feb 2012 11:15:43 +0000 (11:15 +0000)] 
Document -fwarn-auto-orphans

7 years agoPut only local instances in the interactive context (fixes Trac #5820)
Simon Peyton Jones [Fri, 10 Feb 2012 10:46:16 +0000 (10:46 +0000)] 
Put only local instances in the interactive context (fixes Trac #5820)

In HscMain.hscDeclsWithLocaion, we were grabbing class instances from
the tcg_inst_env field of the TcGblEnv. But that's wrong: that field
contains all the *home-package* instances.  Instead we need the
tct_insts field, which has just the instances from the module being
compiled.

7 years agoDistinguish between normal and qualified unused imports
Trevor Elliott [Thu, 9 Feb 2012 19:53:34 +0000 (11:53 -0800)] 
Distinguish between normal and qualified unused imports

7 years agoFix the build on Windows
Ian Lynagh [Fri, 10 Feb 2012 01:23:10 +0000 (01:23 +0000)] 
Fix the build on Windows

WhatGccIsCalled was no longer being defined on Windows.
Spotted by Niklas Larsson.

7 years agoFix '-distrust-all-packages' flag.
David Terei [Thu, 9 Feb 2012 00:18:18 +0000 (16:18 -0800)] 
Fix '-distrust-all-packages' flag.

7 years agoa build system fix that is already on HEAD
Simon Marlow [Wed, 8 Feb 2012 15:49:50 +0000 (15:49 +0000)] 
a build system fix that is already on HEAD

7 years agojust comments
Simon Marlow [Wed, 8 Feb 2012 15:49:27 +0000 (15:49 +0000)] 
just comments

7 years agoPort the old CmmLint to the new Cmm representation
Simon Marlow [Wed, 8 Feb 2012 15:49:15 +0000 (15:49 +0000)] 
Port the old CmmLint to the new Cmm representation

7 years agoBuild info tables with the new stack layout code
Simon Marlow [Wed, 8 Feb 2012 15:48:34 +0000 (15:48 +0000)] 
Build info tables with the new stack layout code

7 years agofix a bug
Simon Marlow [Wed, 8 Feb 2012 15:47:28 +0000 (15:47 +0000)] 
fix a bug

7 years agoNew stack layout algorithm
Simon Marlow [Fri, 3 Feb 2012 15:03:06 +0000 (15:03 +0000)] 
New stack layout algorithm

Also:
 - improvements to code generation: push slow-call continuations
   on the stack instead of generating explicit continuations

 - remove unused CmmInfo wrapper type (replace with CmmInfoTable)

 - squash Area and AreaId together, remove now-unused RegSlot

 - comment out old unused stack-allocation code that no longer
   compiles after removal of RegSlot

7 years agoMERGE from 7.4 branch: Update dependencies
Ian Lynagh [Mon, 12 Dec 2011 21:20:08 +0000 (21:20 +0000)] 
MERGE from 7.4 branch: Update dependencies

7 years agoRemove a workaround for building with GHC 6.12.2
Ian Lynagh [Tue, 7 Feb 2012 21:30:35 +0000 (21:30 +0000)] 
Remove a workaround for building with GHC 6.12.2

7 years agoARM StgRun: Ensure r11 state is preserved
Ben Gamari [Mon, 30 Jan 2012 21:52:40 +0000 (16:52 -0500)] 
ARM StgRun: Ensure r11 state is preserved

7 years agoIgnore -C when not unregisterised (reported on ghc-users)
Simon Marlow [Tue, 7 Feb 2012 09:27:18 +0000 (09:27 +0000)] 
Ignore -C when not unregisterised (reported on ghc-users)

7 years agoavoid 32-bit integer overflow (#5831)
Simon Marlow [Thu, 2 Feb 2012 10:28:34 +0000 (10:28 +0000)] 
avoid 32-bit integer overflow (#5831)

7 years agoCheck that imported modules actually exist (#5836)
Simon Marlow [Wed, 1 Feb 2012 12:57:54 +0000 (12:57 +0000)] 
Check that imported modules actually exist (#5836)

7 years agocomments
Simon Marlow [Fri, 6 Jan 2012 22:01:53 +0000 (22:01 +0000)] 
comments

7 years agoMerge branch 'master' of http://darcs.haskell.org/ghc
Simon Peyton Jones [Mon, 6 Feb 2012 08:42:54 +0000 (08:42 +0000)] 
Merge branch 'master' of darcs.haskell.org/ghc

7 years agoRefactor tcUserStmt, to fix Trac #5829
Simon Peyton Jones [Mon, 6 Feb 2012 08:42:38 +0000 (08:42 +0000)] 
Refactor tcUserStmt, to fix Trac #5829

The problem was that the FunBind we we build in the expression case
didn't have the right free variables, and that tripped an ASSERT later.

7 years agoGive promoted DataCons a tyConArity and promoted TyCons a tyConKind
Simon Peyton Jones [Mon, 6 Feb 2012 08:40:44 +0000 (08:40 +0000)] 
Give promoted DataCons a tyConArity and promoted TyCons a tyConKind

..and fix up Core Lint.  (I was getting a bogus Core Lint failure.)

7 years agoRefactor HsDecls again, to put family instances in InstDecl
Simon Peyton Jones [Mon, 6 Feb 2012 08:38:59 +0000 (08:38 +0000)] 
Refactor HsDecls again, to put family instances in InstDecl

This continues the clean up of the front end.  Since they
were first invented, type and data family *instance* decls
have been in the TyClDecl data type, even though they always
treated separately.

This patch takes a step in the right direction
  * The InstDecl type now includes both class instances and
    type/data family instances

  * The hs_tyclds field of HsGroup now never has any family
    instance declarations in it

However a family instance is still a TyClDecl.  It should really
be a separate type, but that's the next step.

All this was provoked by fixing Trac #5792 in the HEAD.
(I did a less invasive fix on the branch.)

7 years agoadd mapSuccessors
Simon Marlow [Fri, 3 Feb 2012 15:02:05 +0000 (15:02 +0000)] 
add mapSuccessors

7 years agoSmall improvement to control-flow optimisation
Simon Marlow [Fri, 3 Feb 2012 15:01:53 +0000 (15:01 +0000)] 
Small improvement to control-flow optimisation

7 years agocomments
Simon Marlow [Fri, 3 Feb 2012 15:01:26 +0000 (15:01 +0000)] 
comments

7 years agoAdd a "tag" command to sync-all
Ian Lynagh [Thu, 2 Feb 2012 21:38:29 +0000 (21:38 +0000)] 
Add a "tag" command to sync-all

7 years agoDon't include Cabal in mkDocs
Ian Lynagh [Thu, 2 Feb 2012 19:21:20 +0000 (19:21 +0000)] 
Don't include Cabal in mkDocs

Cabal no longer has a userguide that we know how to build, so we
can't include it in our docs.

7 years agoWhen type-checking kinds, be sure to promote list and tuple syntax
Simon Peyton Jones [Wed, 1 Feb 2012 15:51:30 +0000 (15:51 +0000)] 
When type-checking kinds, be sure to promote list and tuple syntax

This fixes the ASSERT failure in Trac #5833 and type error in #5798

7 years agoImprove support for LLVM >= 3.0 write barrier. (#5814)
David Terei [Tue, 31 Jan 2012 02:24:01 +0000 (18:24 -0800)] 
Improve support for LLVM >= 3.0 write barrier. (#5814)

7 years agollvmGen: Use new fence instruction
Ben Gamari [Wed, 25 Jan 2012 00:56:35 +0000 (19:56 -0500)] 
llvmGen: Use new fence instruction

Signed-off-by: David Terei <davidterei@gmail.com>
7 years agoValidate fix: no cross compilation for bindists
Simon Marlow [Mon, 30 Jan 2012 14:43:53 +0000 (14:43 +0000)] 
Validate fix: no cross compilation for bindists

Maybe we could revisit whether we want to allow building bindists of
cross-compilers later, but for now I'm fixing validate by setting all
the cross-compilation settings to NO.

7 years agodon't inline foldExpDeep
Simon Marlow [Mon, 30 Jan 2012 13:00:04 +0000 (13:00 +0000)] 
don't inline foldExpDeep

7 years agomessage tweak
Simon Marlow [Mon, 30 Jan 2012 11:29:29 +0000 (11:29 +0000)] 
message tweak

7 years agoImprove support for cross-compilation
Simon Marlow [Mon, 30 Jan 2012 11:19:03 +0000 (11:19 +0000)] 
Improve support for cross-compilation

Patchset from Stephen Blackheath <stephen.blackheath@ipwnstudios.com>

7 years agoFix register clobber list in StgRun for ARM
Ben Gamari [Sat, 28 Jan 2012 21:55:04 +0000 (16:55 -0500)] 
Fix register clobber list in StgRun for ARM

The ARM implementation of StgRun does not claim that it clobbers r7-r12. As a
result, the compiler will sometimes put the returned RegTable in one of these
registers, resulting in an invalid RegTable to be returned. Hilarity ensues.

Signed-off-by: Ben Gamari <bgamari.foss@gmail.com>
7 years agoRemove bogus extra definition of $(dir)
Simon Marlow [Mon, 23 Jan 2012 10:23:36 +0000 (10:23 +0000)] 
Remove bogus extra definition of $(dir)

This was preventing things like 'cd compiler; make stage2/build/DynFlags.o'
from working.

7 years agoPass alex and happy locations to ghc-cabal; fixes #5579
Ian Lynagh [Sat, 28 Jan 2012 23:33:11 +0000 (23:33 +0000)] 
Pass alex and happy locations to ghc-cabal; fixes #5579

We only use --with-alex / --with-happy if we know where alex / happy
are. In particular, we don't need them when building from a source
tarball.

7 years agoStart on 7.6.1 release notes
Ian Lynagh [Sat, 28 Jan 2012 17:26:06 +0000 (17:26 +0000)] 
Start on 7.6.1 release notes

7 years agoFIX #5819: add -XDataKinds to the language options section of the user's guide
Jose Pedro Magalhaes [Fri, 27 Jan 2012 13:40:31 +0000 (14:40 +0100)] 
FIX #5819: add -XDataKinds to the language options section of the user's guide

7 years agoMove the 2nd control-flow optimisation pass
Simon Marlow [Fri, 27 Jan 2012 11:22:07 +0000 (11:22 +0000)] 
Move the 2nd control-flow optimisation pass

It was causing wrong info tables where it was; I'm not entirely sure
why.

7 years agoThread the UniqSupply around properly
Simon Marlow [Fri, 27 Jan 2012 10:03:46 +0000 (10:03 +0000)] 
Thread the UniqSupply around properly

7 years agoMake the old codegen run in constant space too
Simon Marlow [Fri, 27 Jan 2012 09:53:48 +0000 (09:53 +0000)] 
Make the old codegen run in constant space too

7 years agoDon't call computeSRTs when -fnew-codegen is on
Simon Marlow [Fri, 27 Jan 2012 09:52:04 +0000 (09:52 +0000)] 
Don't call computeSRTs when -fnew-codegen is on

7 years agode-tabbed the hs-boot files
Ian Lynagh [Wed, 25 Jan 2012 16:30:36 +0000 (16:30 +0000)] 
de-tabbed the hs-boot files

7 years agoRename polyKindsErr to dataKindsErr
Ian Lynagh [Wed, 25 Jan 2012 13:19:58 +0000 (13:19 +0000)] 
Rename polyKindsErr to dataKindsErr

7 years agoJust rename a local variable
Ian Lynagh [Wed, 25 Jan 2012 13:15:55 +0000 (13:15 +0000)] 
Just rename a local variable

7 years agoRemove accidentally commited 'trace' statements
David Terei [Thu, 26 Jan 2012 18:51:32 +0000 (10:51 -0800)] 
Remove accidentally commited 'trace' statements

7 years agoFix validation error, import only in GHCi
David Terei [Thu, 26 Jan 2012 18:51:10 +0000 (10:51 -0800)] 
Fix validation error, import only in GHCi

7 years agoRun the complete backend (Stg -> .S) incrementally on each StgBinding
Simon Marlow [Thu, 26 Jan 2012 16:01:04 +0000 (16:01 +0000)] 
Run the complete backend (Stg -> .S) incrementally on each StgBinding

This is so that we can process the Stg code in constant space.  Before
we were generating all the C-- up front, leading to a large space
leak.

I haven't converted the LLVM or C back ends to the incremental scheme,
but it's not hard to do.

7 years agoremove SCCs
Simon Marlow [Thu, 26 Jan 2012 14:58:21 +0000 (14:58 +0000)] 
remove SCCs

7 years agoImprove source documentation for Ghci stmt IO lifting
David Terei [Thu, 26 Jan 2012 09:54:00 +0000 (01:54 -0800)] 
Improve source documentation for Ghci stmt IO lifting

7 years agoFix mistake in previous commits.
David Terei [Thu, 26 Jan 2012 09:51:06 +0000 (01:51 -0800)] 
Fix mistake in previous commits.

7 years agoFix missing import in HscMain.
David Terei [Thu, 26 Jan 2012 09:50:44 +0000 (01:50 -0800)] 
Fix missing import in HscMain.

7 years agoFix warning in GhciMonad.
David Terei [Thu, 26 Jan 2012 09:49:44 +0000 (01:49 -0800)] 
Fix warning in GhciMonad.

7 years agoCode cleaning
David Terei [Thu, 26 Jan 2012 07:49:54 +0000 (23:49 -0800)] 
Code cleaning

7 years agoHave hscStmtWithLocation return (IO [HValue]).
David Terei [Thu, 26 Jan 2012 07:37:25 +0000 (23:37 -0800)] 
Have hscStmtWithLocation return (IO [HValue]).

7 years agoFormatting wibbles.
David Terei [Thu, 26 Jan 2012 02:37:40 +0000 (18:37 -0800)] 
Formatting wibbles.

7 years agoImprove source code documentation og GHCi main.
David Terei [Thu, 26 Jan 2012 02:17:16 +0000 (18:17 -0800)] 
Improve source code documentation og GHCi main.

7 years agoTabs -> Spaces
David Terei [Thu, 26 Jan 2012 02:43:09 +0000 (18:43 -0800)] 
Tabs -> Spaces

7 years agoRemove old dead safe haskell setting
David Terei [Wed, 25 Jan 2012 22:45:13 +0000 (14:45 -0800)] 
Remove old dead safe haskell setting

7 years agosmall refactor
Simon Marlow [Wed, 25 Jan 2012 14:49:48 +0000 (14:49 +0000)] 
small refactor

7 years agodelete some no-longer-relevant notes
Simon Marlow [Wed, 25 Jan 2012 14:49:29 +0000 (14:49 +0000)] 
delete some no-longer-relevant notes

7 years agoadd an SCC
Simon Marlow [Wed, 25 Jan 2012 13:16:52 +0000 (13:16 +0000)] 
add an SCC

7 years agoUse an ordered list for the work list, which is a bit quicker than IntSet
Simon Marlow [Wed, 25 Jan 2012 13:16:45 +0000 (13:16 +0000)] 
Use an ordered list for the work list, which is a bit quicker than IntSet

7 years agoDifferent implementation of MkGraph
Simon Marlow [Wed, 25 Jan 2012 10:08:20 +0000 (10:08 +0000)] 
Different implementation of MkGraph

7 years agoFurther optimisations to the fixpoint algorithm
Simon Marlow [Wed, 25 Jan 2012 10:07:38 +0000 (10:07 +0000)] 
Further optimisations to the fixpoint algorithm

7 years agooptimise OrdList
Simon Marlow [Wed, 25 Jan 2012 10:06:54 +0000 (10:06 +0000)] 
optimise OrdList

7 years agoUse Set instead of Map for CAFSet
Simon Marlow [Wed, 25 Jan 2012 10:06:40 +0000 (10:06 +0000)] 
Use Set instead of Map for CAFSet

7 years agooptimise foldExpDeep
Simon Marlow [Wed, 25 Jan 2012 10:06:12 +0000 (10:06 +0000)] 
optimise foldExpDeep

7 years agoAdd a missing newline in the ghci :h text; spotted by Alexander McPhail
Ian Lynagh [Tue, 24 Jan 2012 19:09:10 +0000 (19:09 +0000)] 
Add a missing newline in the ghci :h text; spotted by Alexander McPhail