ghc-hetmet.git
15 years agoSlight refactoring
Roman Leshchinskiy [Tue, 1 Jul 2008 02:52:27 +0000 (02:52 +0000)]
Slight refactoring

15 years agoRename *NDP* -> *DPH*
Roman Leshchinskiy [Tue, 1 Jul 2008 02:45:59 +0000 (02:45 +0000)]
Rename *NDP* -> *DPH*

15 years agoParametrise vectoriser with DPH package
Roman Leshchinskiy [Tue, 1 Jul 2008 02:45:15 +0000 (02:45 +0000)]
Parametrise vectoriser with DPH package

15 years agoDon't use DPH backend directly in vectoriser
Roman Leshchinskiy [Tue, 1 Jul 2008 02:14:36 +0000 (02:14 +0000)]
Don't use DPH backend directly in vectoriser

15 years agoMake dph-seq and dph-par wired-in packages
Roman Leshchinskiy [Tue, 1 Jul 2008 02:02:14 +0000 (02:02 +0000)]
Make dph-seq and dph-par wired-in packages

15 years agoFIX #2313 do not include BFD symbols in RTS when the BFD library is not available...
Karel Gardas [Wed, 28 May 2008 09:31:39 +0000 (09:31 +0000)]
FIX #2313 do not include BFD symbols in RTS when the BFD library is not available for linking

15 years agoAdd --slow (and --fast) options to validate
Ian Lynagh [Tue, 1 Jul 2008 17:59:27 +0000 (17:59 +0000)]
Add --slow (and --fast) options to validate
slow mode is 14% slower than normal. It uses -DDEBUG for the stage 2
compiler, and -XGenerics for the stage 2 compiler and the libraries.
I believe that most of the slowdown is actually caused by -XGenerics
rather than -DDEBUG.

15 years agoFix Trac #2307: need to nub bad fundep reports
simonpj@microsoft.com [Tue, 1 Jul 2008 16:58:30 +0000 (16:58 +0000)]
Fix Trac #2307: need to nub bad fundep reports

15 years agoEasy fix for Trac #2409
simonpj@microsoft.com [Tue, 1 Jul 2008 16:37:22 +0000 (16:37 +0000)]
Easy fix for Trac #2409

Yurgh. See Note [Desugaring seq (3)]

15 years agoMake a "validate --hpc"; shows how much of the compiler the testsuite tests
Ian Lynagh [Tue, 1 Jul 2008 12:45:15 +0000 (12:45 +0000)]
Make a "validate --hpc"; shows how much of the compiler the testsuite tests
Currently it causes a load of ghci-debugger tests to fail and takes
63% longer.

15 years agoAllow the exact HPC tix filename to be given in the HPCTIXFILE env var
Ian Lynagh [Tue, 1 Jul 2008 12:43:20 +0000 (12:43 +0000)]
Allow the exact HPC tix filename to be given in the HPCTIXFILE env var

15 years agoarray is now warning-free
Ian Lynagh [Mon, 30 Jun 2008 20:41:26 +0000 (20:41 +0000)]
array is now warning-free

15 years agoSeveral fixes to 'deriving' including Trac #2378
simonpj@microsoft.com [Tue, 1 Jul 2008 12:09:08 +0000 (12:09 +0000)]
Several fixes to 'deriving' including Trac #2378

This patch collects several related things together.

* Refactor TcDeriv so that the InstInfo and the method bindings are renamed
  together.  This was messy before, and is cleaner now.  Fixes a bug caused
  by interaction between the "auxiliary bindings" (which were given
  Original names before), and stand-alone deriving (which meant that those
  Original names came from a different module). Now the names are purely
  local an ordinary.

  To do this, InstInfo is parameterised like much else HsSyn stuff.

* Improve the location info in a dfun, which in turn improves location
  info for error messages, e.g. overlapping instances

* Make sure that newtype-deriving isn't used for Typeable1 and friends.
  (Typeable was rightly taken care of, but not Typeable1,2, etc.)

* Check for data types in deriving Data, so that you can't do, say,
  deriving instance Data (IO a)

* Decorate the derived binding with location info from the *instance*
  rather than from the *tycon*.  Again, this really only matters with
  standalone deriving, but it makes a huge difference there.

I think that's it.  Quite a few error messages change slightly.

If we release 6.8.4, this should go in if possible.

15 years agoFollow Cabal changes
Ian Lynagh [Sun, 29 Jun 2008 21:16:33 +0000 (21:16 +0000)]
Follow Cabal changes

15 years agoRename cabal to cabal-bin
Ian Lynagh [Sun, 29 Jun 2008 11:00:03 +0000 (11:00 +0000)]
Rename cabal to cabal-bin
Avoids conflicts with the Cabal library on case-insensitive filesystems

15 years agomkdirhier.sh now accepts -q, which makes it be quiet
Ian Lynagh [Fri, 27 Jun 2008 23:35:28 +0000 (23:35 +0000)]
mkdirhier.sh now accepts -q, which makes it be quiet

15 years agoUpdate .darcs-boring
Ian Lynagh [Fri, 27 Jun 2008 18:14:10 +0000 (18:14 +0000)]
Update .darcs-boring

15 years agoUpdate darcs-boring
Ian Lynagh [Fri, 27 Jun 2008 15:41:42 +0000 (15:41 +0000)]
Update darcs-boring

15 years agoUpdate .darcs-boring
Ian Lynagh [Fri, 27 Jun 2008 14:56:33 +0000 (14:56 +0000)]
Update .darcs-boring

15 years agoFollow Cabal changes
Ian Lynagh [Thu, 26 Jun 2008 20:27:49 +0000 (20:27 +0000)]
Follow Cabal changes

15 years agoAbsolutify a path
Ian Lynagh [Thu, 26 Jun 2008 18:11:34 +0000 (18:11 +0000)]
Absolutify a path
When building ghc-prim/Setup we weren't putting the hi files in the
right place.

15 years agoRemove fgl from extralibs
Ian Lynagh [Thu, 26 Jun 2008 11:27:39 +0000 (11:27 +0000)]
Remove fgl from extralibs

15 years agoUse a program similar to cabal-install to build the libraries
Ian Lynagh [Thu, 26 Jun 2008 11:25:11 +0000 (11:25 +0000)]
Use a program similar to cabal-install to build the libraries
This means that we don't have to make a Setup program for each library
individually, and also simplifies the build system a bit.

15 years agoFix Trac #2394: test for non-algebraic types in standalone deriving
simonpj@microsoft.com [Wed, 25 Jun 2008 16:02:04 +0000 (16:02 +0000)]
Fix Trac #2394: test for non-algebraic types in standalone deriving

15 years ago() is now in ghc-prim:GHC.Unit
Ian Lynagh [Tue, 24 Jun 2008 14:48:49 +0000 (14:48 +0000)]
() is now in ghc-prim:GHC.Unit

15 years agoGenerate a warning-free GHC.PrimopWrappers. ghc-prim is now -Wall clean.
Ian Lynagh [Tue, 24 Jun 2008 12:25:29 +0000 (12:25 +0000)]
Generate a warning-free GHC.PrimopWrappers. ghc-prim is now -Wall clean.

15 years agoFix some inconsistencies in the code and docs of primitives
Ian Lynagh [Mon, 23 Jun 2008 22:34:54 +0000 (22:34 +0000)]
Fix some inconsistencies in the code and docs of primitives
We were inconsistent about whether to use the name "MutArr#" or
"MutableArray#". Likewise ByteArr#/ByteArray# and
MutByteArr#/MutableByteArray#.

15 years agoFix the build with GHC 6.4
Ian Lynagh [Mon, 23 Jun 2008 14:44:26 +0000 (14:44 +0000)]
Fix the build with GHC 6.4

15 years agoDon't rebuild things with the stage2 compiler
Ian Lynagh [Sun, 22 Jun 2008 13:46:13 +0000 (13:46 +0000)]
Don't rebuild things with the stage2 compiler
It leads to annoying rebuilding when working in a built tree.
We'll handle this differently for 6.10.

15 years agoeditline is now warning-free
Ian Lynagh [Fri, 20 Jun 2008 21:21:10 +0000 (21:21 +0000)]
editline is now warning-free

15 years agoRemove special handling for character types of characters >= 128, <= 255
Ian Lynagh [Sat, 21 Jun 2008 17:11:00 +0000 (17:11 +0000)]
Remove special handling for character types of characters >= 128, <= 255
Many of the character types were wrong. Now the asc* names really do mean
ASCII, rather than latin-1.

15 years agoRemove code that isn't used now that we assume that GHC >= 6.4
Ian Lynagh [Fri, 20 Jun 2008 19:30:03 +0000 (19:30 +0000)]
Remove code that isn't used now that we assume that GHC >= 6.4

15 years agoNow that we require GHC >= 6.4.2, System.IO.Error is always available
Ian Lynagh [Fri, 20 Jun 2008 19:10:59 +0000 (19:10 +0000)]
Now that we require GHC >= 6.4.2, System.IO.Error is always available

15 years agohpc is -Wall clean
Ian Lynagh [Fri, 20 Jun 2008 14:20:58 +0000 (14:20 +0000)]
hpc is -Wall clean

15 years agofilepath is now warning-free
Ian Lynagh [Fri, 20 Jun 2008 13:56:52 +0000 (13:56 +0000)]
filepath is now warning-free

15 years agopretty is now -Wall clean
Ian Lynagh [Fri, 20 Jun 2008 13:53:35 +0000 (13:53 +0000)]
pretty is now -Wall clean

15 years agoprocess is now -Wall clean
Ian Lynagh [Fri, 20 Jun 2008 01:18:32 +0000 (01:18 +0000)]
process is now -Wall clean

15 years agodirectory is now -Wall clean
Ian Lynagh [Fri, 20 Jun 2008 01:13:35 +0000 (01:13 +0000)]
directory is now -Wall clean

15 years agointeger-gmp is warning-free
Ian Lynagh [Thu, 19 Jun 2008 23:59:25 +0000 (23:59 +0000)]
integer-gmp is warning-free

15 years agopackedstring is now -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 23:56:12 +0000 (23:56 +0000)]
packedstring is now -Wall clean

15 years agoold-time is now warning-free
Ian Lynagh [Thu, 19 Jun 2008 23:31:27 +0000 (23:31 +0000)]
old-time is now warning-free

15 years agoold-locale is now warning-free
Ian Lynagh [Thu, 19 Jun 2008 23:21:52 +0000 (23:21 +0000)]
old-locale is now warning-free

15 years agorandom is now -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 14:02:11 +0000 (14:02 +0000)]
random is now -Wall clean

15 years agodocument some RTS options I added a while ago: -qm, -qw
Simon Marlow [Thu, 19 Jun 2008 12:12:27 +0000 (12:12 +0000)]
document some RTS options I added a while ago: -qm, -qw

15 years agoDocument the change to +RTS -S/-s/-t
Simon Marlow [Thu, 19 Jun 2008 12:12:01 +0000 (12:12 +0000)]
Document the change to +RTS -S/-s/-t

15 years agodocument paralel GC option: +RTS -g
Simon Marlow [Thu, 19 Jun 2008 12:11:11 +0000 (12:11 +0000)]
document paralel GC option: +RTS -g

15 years ago+RTS -S -RTS now sends output to stderr (also -s)
Simon Marlow [Thu, 19 Jun 2008 11:33:29 +0000 (11:33 +0000)]
+RTS -S -RTS now sends output to stderr (also -s)
Previously +RTS -Sstderr -RTS was required to send output to stderr,
but this is the most common usage and I got tired of typing "stderr".
The old default behaviour of sending output to <prog>.stat is now gone
(I don't think we use it anywhere).

Temporarily we allowed +RTS -S- -RTS to mean stderr; there were
objections to this, so it is now also gone.

15 years agobytestring is -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 01:07:02 +0000 (01:07 +0000)]
bytestring is -Wall clean

15 years agoCabal is -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 01:04:36 +0000 (01:04 +0000)]
Cabal is -Wall clean

15 years agoThe haskell98 library is -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 01:01:24 +0000 (01:01 +0000)]
The haskell98 library is -Wall clean

15 years agotemplate-haskell is now -Wall clean
Ian Lynagh [Thu, 19 Jun 2008 00:58:11 +0000 (00:58 +0000)]
template-haskell is now -Wall clean

15 years agocontainers is now -Wall clean
Ian Lynagh [Wed, 18 Jun 2008 23:36:51 +0000 (23:36 +0000)]
containers is now -Wall clean

15 years agofix a tiny bug spotted by gcc 4.3
Simon Marlow [Thu, 19 Jun 2008 10:09:04 +0000 (10:09 +0000)]
fix a tiny bug spotted by gcc 4.3

15 years agoFix up inlines for gcc 4.3
Simon Marlow [Thu, 19 Jun 2008 10:08:49 +0000 (10:08 +0000)]
Fix up inlines for gcc 4.3
gcc 4.3 emits warnings for static inline functions that its heuristics
decided not to inline.  The workaround is to either mark appropriate
functions as "hot" (a new attribute in gcc 4.3), or sometimes to use
"extern inline" instead.

With this fix I can validate with gcc 4.3 on Fedora 9.

15 years agofix warnings with gcc 4.3
Simon Marlow [Wed, 18 Jun 2008 14:43:07 +0000 (14:43 +0000)]
fix warnings with gcc 4.3

15 years agoit's time to retire ghcprof & friends
Simon Marlow [Wed, 18 Jun 2008 14:02:28 +0000 (14:02 +0000)]
it's time to retire ghcprof & friends

15 years agoMake the wired-in packages code handle ndp mapping to ndp-seq or ndp-par
Ian Lynagh [Wed, 18 Jun 2008 16:22:33 +0000 (16:22 +0000)]
Make the wired-in packages code handle ndp mapping to ndp-seq or ndp-par
It's getting a bit crufty - could probably do with a rewrite.

15 years agoPut the infrastructure in place for getting the libraries -Wall clean
Ian Lynagh [Tue, 17 Jun 2008 02:01:45 +0000 (02:01 +0000)]
Put the infrastructure in place for getting the libraries -Wall clean
libraries/Makefile.local now lists those for which we need to pass -w
(currently this is every library).

15 years agoutils/Digraph doesn't need -fglasgow-exts passed specially
Ian Lynagh [Mon, 16 Jun 2008 22:59:49 +0000 (22:59 +0000)]
utils/Digraph doesn't need -fglasgow-exts passed specially

15 years agoFix Trac #2321: bug in SAT
simonpj@microsoft.com [Mon, 16 Jun 2008 20:17:00 +0000 (20:17 +0000)]
Fix Trac #2321: bug in SAT
  This is a fairly substantial rewrite of the Static Argument Transformatoin,
  done by Max Bolingbroke and reviewed and modified by Simon PJ.

  * Fix a subtle scoping problem; see Note [Binder type capture]
  * Redo the analysis to use environments
  * Run gentle simlification just before the transformation

15 years agodefine NeedVarargsPrototypes to avoid segfault on x86_64
Simon Marlow [Wed, 18 Jun 2008 13:21:16 +0000 (13:21 +0000)]
define NeedVarargsPrototypes to avoid segfault on x86_64

15 years agoFix an example where we weren't doing case-of-case when we should
Simon Marlow [Tue, 17 Jun 2008 12:35:10 +0000 (12:35 +0000)]
Fix an example where we weren't doing case-of-case when we should
That's 1 line of new code and 38 lines of new comments

15 years agofix gcc warnings for printf formats on 32-bit
Simon Marlow [Wed, 18 Jun 2008 09:40:18 +0000 (09:40 +0000)]
fix gcc warnings for printf formats on 32-bit

15 years agoFIX BUILD on Windows
Simon Marlow [Wed, 18 Jun 2008 09:47:00 +0000 (09:47 +0000)]
FIX BUILD on Windows

15 years agoSort the mi_deps into a canonical ordering before fingerprinting.
Simon Marlow [Tue, 17 Jun 2008 15:21:17 +0000 (15:21 +0000)]
Sort the mi_deps into a canonical ordering before fingerprinting.
This may help do a little less recompilation with make (GHC's --make
is unaffected).

15 years agoFix another "urk! lookup local fingerprint" in nofib/real/bspt/GeomNum.lhs
Simon Marlow [Tue, 17 Jun 2008 15:15:30 +0000 (15:15 +0000)]
Fix another "urk! lookup local fingerprint" in nofib/real/bspt/GeomNum.lhs

15 years agosmall interpreter fix
Simon Marlow [Tue, 17 Jun 2008 13:46:51 +0000 (13:46 +0000)]
small interpreter fix

15 years agofix some printf formats for 64 bits
Simon Marlow [Tue, 17 Jun 2008 10:11:02 +0000 (10:11 +0000)]
fix some printf formats for 64 bits

15 years ago64-bit fixes
Simon Marlow [Tue, 17 Jun 2008 10:10:45 +0000 (10:10 +0000)]
64-bit fixes

15 years agodon't try to parallelise marking GC (yet)
Simon Marlow [Mon, 16 Jun 2008 07:31:11 +0000 (07:31 +0000)]
don't try to parallelise marking GC (yet)

15 years agoanother stableptr003 fix
Simon Marlow [Mon, 9 Jun 2008 19:17:22 +0000 (19:17 +0000)]
another stableptr003 fix

15 years agoExperimental "mark-region" strategy for the old generation
Simon Marlow [Mon, 9 Jun 2008 17:49:43 +0000 (17:49 +0000)]
Experimental "mark-region" strategy for the old generation
Sometimes better than the default copying, enabled by +RTS -w

15 years agothreadStackUnderflow: fix up the bd->free pointers in the split blocks
Simon Marlow [Mon, 9 Jun 2008 17:16:17 +0000 (17:16 +0000)]
threadStackUnderflow: fix up the bd->free pointers in the split blocks

15 years agofix allocated blocks calculation, and add more sanity checks
Simon Marlow [Sun, 8 Jun 2008 07:37:54 +0000 (07:37 +0000)]
fix allocated blocks calculation, and add more sanity checks

15 years agoPut the contents of Evac.c-inc back in Evac.c, and just compile the file twice
Simon Marlow [Tue, 3 Jun 2008 07:31:19 +0000 (07:31 +0000)]
Put the contents of Evac.c-inc back in Evac.c, and just compile the file twice
Similarly for Scav.c/Scav.c-inc.

15 years ago+RTS -N also sets +RTS -g
Simon Marlow [Tue, 3 Jun 2008 07:27:01 +0000 (07:27 +0000)]
+RTS -N also sets +RTS -g

15 years agoDECLARE_GCT for when we have no register variable
Simon Marlow [Tue, 3 Jun 2008 07:26:08 +0000 (07:26 +0000)]
DECLARE_GCT for when we have no register variable

15 years agocomment updates
Simon Marlow [Tue, 3 Jun 2008 07:25:27 +0000 (07:25 +0000)]
comment updates

15 years agofix some types for 64-bit platforms
Simon Marlow [Tue, 3 Jun 2008 03:26:25 +0000 (03:26 +0000)]
fix some types for 64-bit platforms

15 years ago+RTS -S- is the same as +RTS -Sstderr
Simon Marlow [Tue, 3 Jun 2008 03:25:57 +0000 (03:25 +0000)]
+RTS -S- is the same as +RTS -Sstderr

15 years agomove the spinlock counts inside +RTS -S
Simon Marlow [Tue, 3 Jun 2008 03:25:34 +0000 (03:25 +0000)]
move the spinlock counts inside +RTS -S

15 years agoFIX #2164: check for ThreadRelocated in isAlive()
Simon Marlow [Wed, 28 May 2008 06:39:04 +0000 (06:39 +0000)]
FIX #2164: check for ThreadRelocated in isAlive()

15 years agoFIX the compacting GC again
Simon Marlow [Thu, 24 Apr 2008 20:58:29 +0000 (20:58 +0000)]
FIX the compacting GC again

15 years agoFIX #2185: sparks should not be treated as roots by the GC
Simon Marlow [Thu, 24 Apr 2008 20:58:13 +0000 (20:58 +0000)]
FIX #2185: sparks should not be treated as roots by the GC

16 years agoturn off the usleep() in the GC thread idle loop (tmp, for portability)
Simon Marlow [Thu, 17 Apr 2008 22:02:21 +0000 (22:02 +0000)]
turn off the usleep() in the GC thread idle loop (tmp, for portability)

16 years agodeclare the GC thread register variable more portably
Simon Marlow [Thu, 17 Apr 2008 22:01:57 +0000 (22:01 +0000)]
declare the GC thread register variable more portably

16 years agoremove EVACUATED: store the forwarding pointer in the info pointer
Simon Marlow [Thu, 17 Apr 2008 21:27:07 +0000 (21:27 +0000)]
remove EVACUATED: store the forwarding pointer in the info pointer

16 years agotso->link is now tso->_link (fix after merge with HEAD)
Simon Marlow [Thu, 17 Apr 2008 18:00:16 +0000 (18:00 +0000)]
tso->link is now tso->_link  (fix after merge with HEAD)

16 years agoDon't look at all the threads before each GC.
Simon Marlow [Wed, 16 Apr 2008 23:44:46 +0000 (23:44 +0000)]
Don't look at all the threads before each GC.
We were looking at all the threads for 2 reasons:
 1. to catch transactions that might be looping as a
    result of seeing an inconsistent view of memory.
 2. to catch threads with blocked exceptions that are
    themselves blocked.
For (1) we now check for this case whenever a thread yields, and for
(2) we catch these threads in the GC itself and send the exceptions
after GC (see performPendingThrowTos).

16 years agoDon't traverse the entire list of threads on every GC (phase 1)
Simon Marlow [Wed, 16 Apr 2008 23:44:20 +0000 (23:44 +0000)]
Don't traverse the entire list of threads on every GC (phase 1)
Instead of keeping a single list of all threads, keep one per step
and only look at the threads belonging to steps that we are
collecting.

16 years agooptimisation for isAlive()
Simon Marlow [Wed, 16 Apr 2008 23:43:49 +0000 (23:43 +0000)]
optimisation for isAlive()

16 years agorefactoring
Simon Marlow [Wed, 16 Apr 2008 23:43:24 +0000 (23:43 +0000)]
refactoring

16 years agoadd [] to foreign calls
Simon Marlow [Wed, 16 Apr 2008 23:42:34 +0000 (23:42 +0000)]
add [] to foreign calls

16 years agoremove GRAN/PAR code
Simon Marlow [Wed, 16 Apr 2008 23:41:35 +0000 (23:41 +0000)]
remove GRAN/PAR code

16 years agobugfix for traverseBlackHoleQueue
Simon Marlow [Wed, 16 Apr 2008 23:40:42 +0000 (23:40 +0000)]
bugfix for traverseBlackHoleQueue

16 years agoAdd a write barrier to the TSO link field (#1589)
Simon Marlow [Wed, 16 Apr 2008 23:39:51 +0000 (23:39 +0000)]
Add a write barrier to the TSO link field (#1589)

16 years agofix trace
Simon Marlow [Wed, 16 Apr 2008 23:39:22 +0000 (23:39 +0000)]
fix trace

16 years agotmp: alloc one block at a time
Simon Marlow [Wed, 16 Apr 2008 23:38:30 +0000 (23:38 +0000)]
tmp: alloc one block at a time

16 years agoadd debugging code to check for fragmentation
Simon Marlow [Wed, 16 Apr 2008 23:30:58 +0000 (23:30 +0000)]
add debugging code to check for fragmentation

16 years agodo a better job of re-using partial blocks in subsequent GCs
Simon Marlow [Wed, 16 Apr 2008 23:29:49 +0000 (23:29 +0000)]
do a better job of re-using partial blocks in subsequent GCs