simonpj@microsoft.com [Mon, 31 May 2010 14:53:32 +0000 (14:53 +0000)]
Robustify the treatement of DFunUnfolding
See Note [DFun unfoldings] in CoreSyn. The issue here is that
you can't tell how many dictionary arguments a DFun needs just
from looking at the Arity of the DFun Id: if the dictionary is
represented by a newtype the arity might include the dictionary
and value arguments of the (single) method.
So we need to record the number of arguments need by the DFun
in the DFunUnfolding itself. Details in
Note [DFun unfoldings] in CoreSyn
simonpj@microsoft.com [Mon, 14 Jun 2010 13:22:59 +0000 (13:22 +0000)]
Fix spelling in comment
simonpj@microsoft.com [Mon, 14 Jun 2010 07:48:01 +0000 (07:48 +0000)]
Update docs on view patterns
Ian Lynagh [Sun, 13 Jun 2010 15:48:38 +0000 (15:48 +0000)]
Fix printing of splices; part of #4124
Just putting parens around non-atomic expressions isn't sufficient
for splices, as only the $x and $(e) forms are valid input.
Ian Lynagh [Sun, 13 Jun 2010 13:46:27 +0000 (13:46 +0000)]
In ghci, catch IO exceptions when calling canonicalizePath
We now get an exception if the path doesn't exist
Ian Lynagh [Sat, 12 Jun 2010 21:31:19 +0000 (21:31 +0000)]
Whitespace only
Ian Lynagh [Sat, 12 Jun 2010 16:54:50 +0000 (16:54 +0000)]
Whitespace only
Ian Lynagh [Sat, 12 Jun 2010 16:22:50 +0000 (16:22 +0000)]
Update ghci example output in user guide; patch from YitzGale in #4111
benl@ouroborus.net [Fri, 11 Jun 2010 04:46:14 +0000 (04:46 +0000)]
Fix #4131 missing UNTAG_CLOSURE in messageBlackHole()
Simon Marlow [Thu, 10 Jun 2010 08:06:36 +0000 (08:06 +0000)]
messageBlackHole: fix deadlock bug caused by a missing 'volatile'
Simon Marlow [Fri, 4 Jun 2010 08:32:14 +0000 (08:32 +0000)]
Pass --no-tmp-comp-dir to Haddock (see comment)
Roman Leshchinskiy [Mon, 7 Jun 2010 05:29:03 +0000 (05:29 +0000)]
Track changes to DPH libs
Roman Leshchinskiy [Mon, 7 Jun 2010 01:26:42 +0000 (01:26 +0000)]
Track changes to DPH libs
Ian Lynagh [Sun, 6 Jun 2010 16:17:26 +0000 (16:17 +0000)]
In ghc-pkg, send warnings to stderr
Ian Lynagh [Wed, 2 Jun 2010 18:07:37 +0000 (18:07 +0000)]
Re-add newlines to enable layout for multi-line input.
Patch from Adam Vogt <vogt.adam@gmail.com>
Partial fix for #3984
simonpj@microsoft.com [Fri, 4 Jun 2010 11:01:43 +0000 (11:01 +0000)]
Don't use unnecessary parens when printing types (Fix Trac 4107)
f :: Eq a => a -> a
rather than
f :: (Eq a) => a -> a
Roman Leshchinskiy [Fri, 4 Jun 2010 00:57:28 +0000 (00:57 +0000)]
Track DPH library changes
Simon Marlow [Thu, 3 Jun 2010 12:54:59 +0000 (12:54 +0000)]
fix --source-entity option passed to Haddock: we needed to escape a #
Simon Marlow [Wed, 2 Jun 2010 09:14:19 +0000 (09:14 +0000)]
__stg_EAGER_BLACKHOLE_INFO -> __stg_EAGER_BLACKHOLE_info (#4106)
Simon Marlow [Wed, 2 Jun 2010 09:01:01 +0000 (09:01 +0000)]
Add xhtml package (a new dependency of Haddock; not installed/shipped)
Simon Marlow [Wed, 2 Jun 2010 08:23:45 +0000 (08:23 +0000)]
Use UserInterrupt rather than our own Interrupted exception (#4100)
Simon Marlow [Wed, 2 Jun 2010 08:22:33 +0000 (08:22 +0000)]
Add the global package DB to ghc --info (#4103)
Marco Túlio Gontijo e Silva [Fri, 28 May 2010 11:56:12 +0000 (11:56 +0000)]
rts/sm/GC.c: resize_generations(): Remove unneeded check of number of generations.
This "if" is inside another "if" which checks for RtsFlags.GcFlags.generations
> 1, so testing this again is redundant, assuming the number of generations
won't change during program execution.
Marco Túlio Gontijo e Silva [Wed, 26 May 2010 20:58:39 +0000 (20:58 +0000)]
rts/sm/BlockAlloc.c: Small comment correction.
Marco Túlio Gontijo e Silva [Wed, 26 May 2010 20:57:07 +0000 (20:57 +0000)]
rts/sm/GC.c: Annotate constants.
Marco Túlio Gontijo e Silva [Wed, 26 May 2010 20:46:15 +0000 (20:46 +0000)]
includes/rts/storage/GC.h: generation_: n_words: Improve comment.
Ian Lynagh [Tue, 1 Jun 2010 20:42:11 +0000 (20:42 +0000)]
Add PPC_RELOC_LOCAL_SECTDIFF support; patch from PHO in #3654
Ian Lynagh [Tue, 1 Jun 2010 17:33:25 +0000 (17:33 +0000)]
powerpc-apple-darwin now supports shared libs
pho@cielonegro.org [Sat, 8 May 2010 14:39:00 +0000 (14:39 +0000)]
PIC support for PowerPC
PPC.CodeGen.getRegister was not properly handling PicBaseReg.
It seems working with this patch, but I'm not sure this change is correct.
Roman Leshchinskiy [Tue, 1 Jun 2010 04:56:30 +0000 (04:56 +0000)]
Vectoriser: only treat a function as scalar if it actually computes something
Ian Lynagh [Sun, 30 May 2010 17:11:17 +0000 (17:11 +0000)]
Add a release notes file for 6.14.1
Ian Lynagh [Sun, 30 May 2010 17:10:43 +0000 (17:10 +0000)]
Check dblatex actually creates the files we tell it to
If it fails, it still exits successfully.
Ian Lynagh [Sat, 29 May 2010 14:50:16 +0000 (14:50 +0000)]
Add darwin to the list of OSes for which we use mmap
Patch from Barney Stratford
Ian Lynagh [Sat, 29 May 2010 14:49:29 +0000 (14:49 +0000)]
Simplify the CPP logic in rts/Linker.c
Ian Lynagh [Sat, 29 May 2010 15:47:26 +0000 (15:47 +0000)]
Fix validate on OS X
Ian Lynagh [Sat, 29 May 2010 12:24:40 +0000 (12:24 +0000)]
OS X x86_64 fix from Barney Stratford
Ian Lynagh [Fri, 28 May 2010 23:49:35 +0000 (23:49 +0000)]
OS X 64 installer fixes from Barney Stratford
Simon Marlow [Tue, 25 May 2010 15:58:12 +0000 (15:58 +0000)]
fix warning
Simon Marlow [Tue, 25 May 2010 15:57:28 +0000 (15:57 +0000)]
Fix doc bugs (#4071)
Simon Marlow [Tue, 25 May 2010 15:04:35 +0000 (15:04 +0000)]
Make sparks into weak pointers (#2185)
The new strategies library (parallel-2.0+, preferably 2.2+) is now
required for parallel programming, otherwise parallelism will be lost.
Simon Marlow [Tue, 25 May 2010 08:53:01 +0000 (08:53 +0000)]
If you say 'make' or 'make stage=2' here, pretend we're in the ghc dir
Simon Marlow [Tue, 25 May 2010 15:43:13 +0000 (15:43 +0000)]
Another attempt to get these #defines right
Apparently on Solaris it is an error to omit _ISOC99_SOURCE when using
_POSIX_C_SOURCE==200112L.
Ian Lynagh [Tue, 25 May 2010 22:16:16 +0000 (22:16 +0000)]
Add configure flags for the location of GMP includes/library; fixes #4022
simonpj@microsoft.com [Tue, 25 May 2010 15:31:26 +0000 (15:31 +0000)]
Refactor pretty printing of TyThings to fix Trac #4015
Ian Lynagh [Tue, 25 May 2010 14:58:30 +0000 (14:58 +0000)]
When haddocking, we need the dependencies to have been built
as haddock loads the .hi files with the GHC API.
Ian Lynagh [Tue, 25 May 2010 11:12:17 +0000 (11:12 +0000)]
Fix profiling output; spotted by jlouis
We were outputing the number of words allocated in a column titled "bytes".
simonpj@microsoft.com [Tue, 25 May 2010 11:40:45 +0000 (11:40 +0000)]
Improve printing of TyThings; fixes Trac #4087
simonpj@microsoft.com [Tue, 25 May 2010 11:40:01 +0000 (11:40 +0000)]
Spelling in comments
simonpj@microsoft.com [Tue, 25 May 2010 11:39:10 +0000 (11:39 +0000)]
Refactor (again) the handling of default methods
This patch fixes Trac #4056, by
a) tidying up the treatment of default method names
b) removing the 'module' argument to newTopSrcBinder
The details aren't that interesting, but the result
is much tidier. The original bug was a 'nameModule' panic,
caused by trying to find the module of a top-level name.
But TH quotes generate Internal top-level names that don't
have a module, and that is generally a good thing.
Fixing that in turn led to the default-method refactoring,
which also makes the Name for a default method be handled
in the same way as other derived names, generated in BuildTyCl
via a call newImplicitBinder. Hurrah.
simonpj@microsoft.com [Tue, 25 May 2010 11:28:07 +0000 (11:28 +0000)]
Don't do SpecConstr on NOINLINE things (Trac #4064)
Since the RULE from specialising gets the same Activation as
the inlining for the Id itself there's no point in specialising
a NOINLINE thing, because the rule will be permanently switched
off.
See Note [Transfer activation] in SpecConstr
and Note [Auto-specialisation and RULES] in Specialise.
Simon Marlow [Mon, 24 May 2010 10:58:28 +0000 (10:58 +0000)]
Change our #defines to work on FreeBSD too
With glibc, things like _POSIX_C_SOURCE and _ISOC99_SOURCE are
additive, but on FreeBSD they are mutually exclusive. However, it
turns out we only need to define _POSIX_C_SOURCE and _XOPEN_SOURCE to
get all the C99 stuff we need too, so there's no need for any #ifdefs.
Submitted by: Gabor PALI <pgj@FreeBSD.org>
Simon Marlow [Mon, 24 May 2010 10:55:47 +0000 (10:55 +0000)]
Add a missing UNTAG_CLOSURE, causing bus errors on Sparc
We just about got away with this on x86 which isn't
alignment-sensitive. The result of the memory load is compared
against a few different values, but there is a fallback case that
happened to be the right thing when the pointer was tagged. A good
bug to find, nonetheless.
Simon Marlow [Thu, 20 May 2010 09:59:53 +0000 (09:59 +0000)]
Add wiki links
Simon Marlow [Thu, 20 May 2010 10:44:55 +0000 (10:44 +0000)]
the 'stage=0' trick to disable all compiler builds stopped working; fix it
benl@ouroborus.net [Mon, 24 May 2010 01:40:21 +0000 (01:40 +0000)]
Comments and formatting only
Ian Lynagh [Sat, 22 May 2010 22:50:48 +0000 (22:50 +0000)]
Core prettyprinter fixes. Patch from Tim Chevalier. Fixes #4085
pho@cielonegro.org [Sat, 8 May 2010 15:11:55 +0000 (15:11 +0000)]
Correct install-name for dynamic Darwin rts
Ian Lynagh [Sat, 22 May 2010 16:31:27 +0000 (16:31 +0000)]
Fix the RTS debug_p build
Ian Lynagh [Fri, 21 May 2010 16:50:05 +0000 (16:50 +0000)]
Unset $CFLAGS for "GNU non-executable stack" configure test; fixes #3889
With gcc 4.4 we get
Error: can't resolve `.note.GNU-stack' {.note.GNU-stack section} - `.Ltext0' {.text section}
when running gcc with the -g flag. To work around this we unset
CFLAGS when running the test.
Ian Lynagh [Thu, 20 May 2010 16:29:18 +0000 (16:29 +0000)]
Don't run "set -o igncr" before configuring libffi
It used to make the build work on cygwin, but now it breaks it instead:
config.status: creating include/Makefile
gawk: ./confLqjohp/subs.awk:1: BEGIN {\r
gawk: ./confLqjohp/subs.awk:1: ^ backslash not last character on line
config.status: error: could not create include/Makefile
make[2]: *** [libffi/stamp.ffi.configure-shared] Error 1
make[1]: *** [all] Error 2
Ian Lynagh [Thu, 20 May 2010 15:40:03 +0000 (15:40 +0000)]
Stop passing -Wl,-macosx_version_min to gcc
Fixes a build failure on OS X 10.6. When linking
rts/dist/build/libHSrts-ghc6.13.
20100519.dylib
we got
ld: symbol dyld_stub_binding_helper not defined (usually in crt1.o/dylib1.o/bundle1.o)
collect2: ld returned 1 exit status
Ian Lynagh [Wed, 19 May 2010 14:05:52 +0000 (14:05 +0000)]
Fix build on FreeBSD; patch from Gabor PALI
Simon Marlow [Wed, 19 May 2010 10:46:17 +0000 (10:46 +0000)]
Fix package shadowing order (#4072)
Later packages are supposed to shadow earlier ones in the stack,
unless the ordering is overriden with -package-id flags.
Unfortunately an earlier fix for something else had sorted the list of
packages so that it was in lexicographic order by installedPackageId,
and sadly our test (cabal/shadow) didn't pick this up because the
lexicographic ordering happened to work for the test. I've now fixed
the test so it tries both orderings.
Ian Lynagh [Tue, 18 May 2010 18:50:14 +0000 (18:50 +0000)]
Set more env variables when configuring libffi
We now tell it where to find ld, nm and ar
Ian Lynagh [Tue, 18 May 2010 18:15:56 +0000 (18:15 +0000)]
Set the location of ar to be the in-tree ar on Windows
Ian Lynagh [Tue, 18 May 2010 17:20:15 +0000 (17:20 +0000)]
Change another / to </> to avoid building paths containing \/
This will hopefully fix #2889.
Simon Marlow [Tue, 18 May 2010 11:32:14 +0000 (11:32 +0000)]
Fix #4074 (I hope).
1. allow multiple threads to call startTimer()/stopTimer() pairs
2. disable the timer around fork() in forkProcess()
A corresponding change to the process package is required.
Simon Marlow [Thu, 1 Apr 2010 10:23:51 +0000 (10:23 +0000)]
we don't have a gcc-lib in LIB_DIR any more
Ian Lynagh [Mon, 17 May 2010 20:06:54 +0000 (20:06 +0000)]
In validate, use gmake if available; based on a patch from Gabor PALI
Ian Lynagh [Sun, 16 May 2010 14:12:06 +0000 (14:12 +0000)]
Remove duplicate "./configure --help" output; fixes #4075
Ian Lynagh [Sun, 16 May 2010 12:26:09 +0000 (12:26 +0000)]
Update various 'sh boot's to 'perl boot'
Spotted by Marco Túlio Gontijo e Silva
Simon Marlow [Fri, 14 May 2010 09:49:43 +0000 (09:49 +0000)]
add missing initialisation for eventBufMutex
Simon Marlow [Thu, 13 May 2010 14:20:17 +0000 (14:20 +0000)]
Undo part of #4003 patch
We still need the workaround for when compiling HEAD with 6.12.2
pho@cielonegro.org [Fri, 7 May 2010 14:07:07 +0000 (14:07 +0000)]
Fix makefile loop (#4050)
The libtool creates "libffi.dylib" and "libffi.5.dylib" but not "libffi.5.0.9.dylib". Having it in libffi_DYNAMIC_LIBS causes an infinite makefile loop.
Simon Marlow [Mon, 10 May 2010 15:19:34 +0000 (15:19 +0000)]
fix !TABLES_NEXT_TO_CODE
Simon Marlow [Mon, 10 May 2010 09:47:41 +0000 (09:47 +0000)]
looksLikeModuleName: allow apostrophe in module names (#4051)
Simon Marlow [Thu, 6 May 2010 12:21:18 +0000 (12:21 +0000)]
add the proper library dependencies for GhcProfiled=YES
simonpj@microsoft.com [Tue, 11 May 2010 07:50:26 +0000 (07:50 +0000)]
Fix Trac #4003: fix the knot-tying in checkHiBootIface
I had incorrectly "optimised" checkHiBootIface so that it forgot
to update the "knot-tied" type environment.
This patch fixes the HEAD
simonpj@microsoft.com [Mon, 10 May 2010 13:33:33 +0000 (13:33 +0000)]
Re-engineer the derived Ord instance generation code (fix Trac #4019)
As well as fixing #4019, I rejigged the way that Ord instances are
generated, which should make them faster in general. See the
Note [Generating Ord instances].
I tried to measure the performance difference from this change, but
the #4019 fix only removes one conditional branch per iteration, and
I couldn't measure a consistent improvement. But still, tihs is
better than before.
simonpj@microsoft.com [Mon, 10 May 2010 13:30:05 +0000 (13:30 +0000)]
Make arity of INLINE things consistent
We eta-expand things with INLINE pragmas;
see Note [Eta-expanding INLINE things].
But I eta-expanded it the wrong amount when the function
was overloaded. Ooops.
Simon Marlow [Mon, 10 May 2010 08:23:25 +0000 (08:23 +0000)]
Compacting GC fix, we forgot to thread the new bq field of StgTSO.
Ian Lynagh [Sun, 9 May 2010 17:50:51 +0000 (17:50 +0000)]
Add version constraints for the boot packages; fixes trac #3852
When using the bootstrapping compiler, we now explicitly constrain
the version of boot packages (Cabal, extensible-exceptions, etc) to the
in-tree version, so that the build system is less fragile should the
user have a newer version installed for the bootstrapping compiler.
Ian Lynagh [Sun, 9 May 2010 13:05:11 +0000 (13:05 +0000)]
Don't include inter-package dependencies when compiling with stage 0; #4031
This fixes a problem when building with GHC 6.12 on Windows, where
dependencies on stage 0 (bootstrapping compiler) packages have absolute
paths c:/ghc/..., and make gets confused by the colon.
Ian Lynagh [Sat, 8 May 2010 22:39:11 +0000 (22:39 +0000)]
Add a ghc.mk for bindisttest/
Ian Lynagh [Sat, 8 May 2010 21:24:05 +0000 (21:24 +0000)]
Move some make variables around so they are available when cleaning
Ian Lynagh [Sat, 8 May 2010 20:20:06 +0000 (20:20 +0000)]
Optimise checkremove a bit
Ian Lynagh [Sat, 8 May 2010 19:54:50 +0000 (19:54 +0000)]
Improve the bindisttest Makefile
Ian Lynagh [Sat, 8 May 2010 19:41:05 +0000 (19:41 +0000)]
Add tools to test that cleaning works properly
Ian Lynagh [Sat, 8 May 2010 12:58:15 +0000 (12:58 +0000)]
Tweak the ghc-pkg finding code
It now understand the ghc-stage[123] names we use in-tree, and it won't
go looking for any old ghc-pkg if it can't find the one that matches
ghc.
Ian Lynagh [Sat, 8 May 2010 12:24:38 +0000 (12:24 +0000)]
Add a way to show what cleaning would be done, without actually doing it
Ian Lynagh [Sat, 8 May 2010 11:57:45 +0000 (11:57 +0000)]
Tidy up the "rm" flags in the build system
Simon Marlow [Fri, 7 May 2010 09:32:22 +0000 (09:32 +0000)]
Fix crash in nested callbacks (#4038)
Broken by "Split part of the Task struct into a separate struct
InCall".
Simon Marlow [Wed, 28 Apr 2010 20:52:41 +0000 (20:52 +0000)]
Add $(GhcDynamic) knob, set to YES to get stage2 linked with -dynamic
Default currently NO.
Validate passed with GhcDynamic=YES on x86/Linux here.
The compiler is currently slower on x86 when linked -dynamic,
because the GC inner loop has been adversely affected by -fPIC, I'm
looking into how to fix it.
Simon Marlow [Wed, 28 Apr 2010 20:49:14 +0000 (20:49 +0000)]
omit "dyn" from the way appended to the __stginit label
When GHCi is linked dynamically, we still want to be able to load
non-dynamic object files.
Simon Marlow [Thu, 6 May 2010 11:54:27 +0000 (11:54 +0000)]
improvements to findPtr(), a neat hack for browsing the heap in gdb
Simon Marlow [Thu, 6 May 2010 11:07:39 +0000 (11:07 +0000)]
Fix +RTS -G1
Ian Lynagh [Thu, 6 May 2010 17:53:51 +0000 (17:53 +0000)]
Enable the "redundant specialise pragmas" warning; fixes trac #3855
simonpj@microsoft.com [Thu, 6 May 2010 16:41:35 +0000 (16:41 +0000)]
Find the correct external ids when there's a wrapper
We were failing to externalise the wrapper id for a function
that had one.
simonpj@microsoft.com [Thu, 6 May 2010 16:40:27 +0000 (16:40 +0000)]
Add a comment about pattern coercions
simonpj@microsoft.com [Thu, 6 May 2010 16:38:29 +0000 (16:38 +0000)]
Comments only