ghc-hetmet.git
16 years agoNew flag: -ddump-simpl-phases
Roman Leshchinskiy [Thu, 13 Dec 2007 04:06:44 +0000 (04:06 +0000)]
New flag: -ddump-simpl-phases

This outputs the core after each simplifier phase (i.e., it produces less
information that -ddump-simpl-iterations).

16 years agoDon't dump simplifier iterations with -dverbose-core2core
Roman Leshchinskiy [Thu, 13 Dec 2007 03:46:35 +0000 (03:46 +0000)]
Don't dump simplifier iterations with -dverbose-core2core

SimonPJ says this is the correct behaviour. We still have
-ddump-simpl-iterations.

16 years ago"list --simple-output" should be quiet when there are no packages to list
Simon Marlow [Wed, 12 Dec 2007 10:22:30 +0000 (10:22 +0000)]
"list --simple-output" should be quiet when there are no packages to list

Previously:

$ ghc-pkg list --user --simple-output
ghc-pkg: no matches
$

Now:

$ ghc-pkg list --user --simple-output
$

16 years agoFix vectorisation bug
Roman Leshchinskiy [Thu, 6 Dec 2007 23:30:15 +0000 (23:30 +0000)]
Fix vectorisation bug

16 years agoVectorisation-related built ins
Roman Leshchinskiy [Thu, 6 Dec 2007 04:08:29 +0000 (04:08 +0000)]
Vectorisation-related built ins

16 years agoTeach vectorisation about some temporary conversion functions
Roman Leshchinskiy [Thu, 6 Dec 2007 03:25:47 +0000 (03:25 +0000)]
Teach vectorisation about some temporary conversion functions

16 years agoVectorise case of unit correctly
Roman Leshchinskiy [Wed, 5 Dec 2007 22:13:05 +0000 (22:13 +0000)]
Vectorise case of unit correctly

16 years agoTeach vectorisation about singletonP
Roman Leshchinskiy [Wed, 5 Dec 2007 22:12:40 +0000 (22:12 +0000)]
Teach vectorisation about singletonP

16 years agoOptimise desugaring of parallel array comprehensions
Roman Leshchinskiy [Wed, 5 Dec 2007 22:12:13 +0000 (22:12 +0000)]
Optimise desugaring of parallel array comprehensions

16 years agoTeach vectorisation about tuple datacons
Roman Leshchinskiy [Wed, 5 Dec 2007 05:02:21 +0000 (05:02 +0000)]
Teach vectorisation about tuple datacons

16 years agoTrack additions to package ndp
Roman Leshchinskiy [Wed, 5 Dec 2007 04:26:49 +0000 (04:26 +0000)]
Track additions to package ndp

16 years agoTrack changes to package ndp
Roman Leshchinskiy [Wed, 5 Dec 2007 03:38:59 +0000 (03:38 +0000)]
Track changes to package ndp

16 years agoImprove pretty-printing of InstDecl
simonpj@microsoft.com [Mon, 10 Dec 2007 08:30:53 +0000 (08:30 +0000)]
Improve pretty-printing of InstDecl

Fixes Trac #1966.

16 years agoComments only
Pepe Iborra [Sat, 8 Dec 2007 20:48:15 +0000 (20:48 +0000)]
Comments only

16 years agoRefactoring only
Pepe Iborra [Sat, 8 Dec 2007 19:52:22 +0000 (19:52 +0000)]
Refactoring only

Suspensions in the Term datatype used for RTTI
always get assigned a Type, so there is no reason
to juggle around with a (Maybe Type) anymore.

16 years agoChange the format used by :print to show the content of references
Pepe Iborra [Sat, 8 Dec 2007 19:30:13 +0000 (19:30 +0000)]
Change the format used by :print to show the content of references

    This comes as result of the short discussion linked below.

    http://www.haskell.org/pipermail/cvs-ghc/2007-December/040049.html

16 years agoHelp the user when she tries to do :history without :trace
Pepe Iborra [Sat, 8 Dec 2007 18:09:18 +0000 (18:09 +0000)]
Help the user when she tries to do :history without :trace

Teach GHCi to show a "perhaps you forgot to use :trace?" when
it finds that the user is trying to retrieve an empty :history

16 years agoPrevent the binding of unboxed things by :print
Pepe Iborra [Sat, 8 Dec 2007 18:18:30 +0000 (18:18 +0000)]
Prevent the binding of unboxed things by :print

16 years agoCoercions from boxy splitters must be sym'ed in pattern matches
Manuel M T Chakravarty [Sat, 8 Dec 2007 10:50:18 +0000 (10:50 +0000)]
Coercions from boxy splitters must be sym'ed in pattern matches

16 years agoProperly keep track of whether normalising given or wanted dicts
Manuel M T Chakravarty [Fri, 7 Dec 2007 07:13:02 +0000 (07:13 +0000)]
Properly keep track of whether normalising given or wanted dicts
- The information of whether given or wanted class dictionaries where
  normalised by rewriting wasn't always correctly propagated in TcTyFuns,
  which lead to malformed dictionary bindings.
- Also fixes a bug in TcPat.tcConPat where GADT equalities where emitted in
  the wrong position in case bindings (which led to CoreLint failures).

16 years agoTcPat.tcConPat uses equalities instead of GADT refinement
Manuel M T Chakravarty [Tue, 20 Nov 2007 07:12:08 +0000 (07:12 +0000)]
TcPat.tcConPat uses equalities instead of GADT refinement
* This patch implements the use of equality constraints instead of GADT
  refinements that we have been discussing for a while.
* It just changes TcPat.tcConPat.  It doesn't have any of the simplification
  and dead code removal that is possible due to this change.
* At the moment, this patch breaks a fair number of GADT regression tests.

16 years agoUse installPackage for register --inplace as well as installing
Ian Lynagh [Fri, 7 Dec 2007 23:46:52 +0000 (23:46 +0000)]
Use installPackage for register --inplace as well as installing
We also need to do the GHC.Prim hack when registering inplace or the
tests that use it fail.

16 years agoFix the libraries Makefile
Ian Lynagh [Wed, 5 Dec 2007 12:50:15 +0000 (12:50 +0000)]
Fix the libraries Makefile
    x && y
is not the same as
    if x; then y; fi
as the latter doesn't fail when x fails

16 years agoCopy hscolour.css into dist/... so it gets installed with the library docs
Ian Lynagh [Wed, 5 Dec 2007 01:37:03 +0000 (01:37 +0000)]
Copy hscolour.css into dist/... so it gets installed with the library docs

16 years agoAdd the hscolour.css from hscolour 1.8
Ian Lynagh [Wed, 5 Dec 2007 01:17:33 +0000 (01:17 +0000)]
Add the hscolour.css from hscolour 1.8

16 years agoBIN_DIST_INST_SUBDIR Needs to be defined in config.mk so ./Makefile can see it
Ian Lynagh [Fri, 7 Dec 2007 12:13:17 +0000 (12:13 +0000)]
BIN_DIST_INST_SUBDIR Needs to be defined in config.mk so ./Makefile can see it

16 years ago#include ../includes/MachRegs.h rather than just MachRegs.h
Ian Lynagh [Wed, 5 Dec 2007 17:03:35 +0000 (17:03 +0000)]
#include ../includes/MachRegs.h rather than just MachRegs.h
This fixes building on NixOS. I'm not sure why it worked everywhere else,
but not on NixOS, before.

16 years agoFix bindist creation: readline/config.mk is gone
Ian Lynagh [Mon, 3 Dec 2007 12:30:31 +0000 (12:30 +0000)]
Fix bindist creation: readline/config.mk is gone

16 years agoFIX #1843: Generate different instructions on PPC
Ian Lynagh [Mon, 3 Dec 2007 12:32:37 +0000 (12:32 +0000)]
FIX #1843: Generate different instructions on PPC
The old ones caused lots of
    unknown scattered relocation type 4
errors. Patch from Chris Kuklewicz.

16 years agoRefactor gen_contents_index
Ian Lynagh [Fri, 7 Dec 2007 18:35:38 +0000 (18:35 +0000)]
Refactor gen_contents_index
Also fixes it with Solaris's sh, spotted by Christian Maeder

16 years agoUse GHC.Exts rather than GHC.Prim
Ian Lynagh [Sun, 2 Dec 2007 23:42:22 +0000 (23:42 +0000)]
Use GHC.Exts rather than GHC.Prim

16 years agoAlter the base:GHC.Prim hack in installPackage, following changes in base
Ian Lynagh [Sun, 2 Dec 2007 21:57:19 +0000 (21:57 +0000)]
Alter the base:GHC.Prim hack in installPackage, following changes in base

16 years agoRemove debug warning, and explain why
simonpj@microsoft.com [Fri, 7 Dec 2007 17:05:07 +0000 (17:05 +0000)]
Remove debug warning, and explain why

16 years agocomment only
Simon Marlow [Thu, 6 Dec 2007 09:24:22 +0000 (09:24 +0000)]
comment only

16 years agocomment typo
Simon Marlow [Thu, 6 Dec 2007 09:24:12 +0000 (09:24 +0000)]
comment typo

16 years agoadd Outputable instance for OccIfaceEq
Simon Marlow [Thu, 6 Dec 2007 09:24:03 +0000 (09:24 +0000)]
add Outputable instance for OccIfaceEq

16 years agoWorkaround for #1959: assume untracked names have changed
Simon Marlow [Thu, 6 Dec 2007 09:23:49 +0000 (09:23 +0000)]
Workaround for #1959: assume untracked names have changed
This fixes the 1959 test, but will do more recompilation than is
strictly necessary (but only when -O is on).  Still, more
recompilation is better than segfaults, link errors or other random
breakage.

16 years agoFIX part of #1959: declaration versions were not being incremented correctly
Simon Marlow [Thu, 6 Dec 2007 08:45:56 +0000 (08:45 +0000)]
FIX part of #1959: declaration versions were not being incremented correctly
We were building a mapping from ModuleName to [Occ] from the usage
list, using the usg_mod field as the key.  Unfortunately, due to a
very poor naming decision, usg_mod is actually the module version, not
the ModuleName.  usg_name is the ModuleName.  Since Version is also an
instance of Uniquable, there was no type error: all that happened was
lookups in the map never succeeded.  I shall rename the fields of
Usage in a separate patch.

This doesn't completely fix #1959, but it gets part of the way there.

I have to take partial blame as the person who wrote this fragment of
code in late 2006 (patch "Interface file optimisation and removal of
nameParent").

16 years agomove FP_FIND_ROOT after the "GHC is required" check
Simon Marlow [Wed, 5 Dec 2007 10:18:14 +0000 (10:18 +0000)]
move FP_FIND_ROOT after the "GHC is required" check

16 years agoFIX #1110: hackery also needed when running gcc for CPP
Simon Marlow [Wed, 5 Dec 2007 15:02:30 +0000 (15:02 +0000)]
FIX #1110: hackery also needed when running gcc for CPP

16 years agoTeach :print to follow references (STRefs and IORefs)
Pepe Iborra [Tue, 4 Dec 2007 10:55:11 +0000 (10:55 +0000)]
Teach :print to follow references (STRefs and IORefs)

Prelude Data.IORef> :p l
l = (_t4::Maybe Integer) : (_t5::[Maybe Integer])
Prelude Data.IORef> p <- newIORef l
Prelude Data.IORef> :p p
p = GHC.IOBase.IORef (GHC.STRef.STRef {((_t6::Maybe Integer) :
                                        (_t7::[Maybe Integer]))})
Prelude Data.IORef> :sp p
p = GHC.IOBase.IORef (GHC.STRef.STRef {(_ : _)})

I used braces to denote the contents of a reference.
Perhaps there is a more appropriate notation?

16 years agorefactoring only
Pepe Iborra [Sun, 2 Dec 2007 12:54:00 +0000 (12:54 +0000)]
refactoring only

16 years agoChange --shared to -shared in Win32 DLL docs
simonpj@microsoft.com [Tue, 4 Dec 2007 15:40:23 +0000 (15:40 +0000)]
Change --shared to -shared in Win32 DLL docs

16 years agoprotect console handler against concurrent access (#1922)
Simon Marlow [Tue, 4 Dec 2007 15:39:18 +0000 (15:39 +0000)]
protect console handler against concurrent access (#1922)

16 years agoMake eta reduction check more carefully for bottoms (fix Trac #1947)
simonpj@microsoft.com [Tue, 4 Dec 2007 14:58:03 +0000 (14:58 +0000)]
Make eta reduction check more carefully for bottoms (fix Trac #1947)

Eta reduction was wrongly transforming
f = \x. f x
to
f = f

Solution: don't trust f's arity information; instead look at its
unfolding.  See Note [Eta reduction conditions]

Almost all the new lines are comments!

16 years agoImprove inlining for INLINE non-functions
simonpj@microsoft.com [Tue, 4 Dec 2007 11:49:55 +0000 (11:49 +0000)]
Improve inlining for INLINE non-functions

(No need to merge to 6.8, but no harm if a subsequent patch needs it.)

The proximate cause for this patch is to improve the inlining for INLINE
things that are not functions; this came up in the NDP project.  See
Note [Lone variables] in CoreUnfold.

This caused some refactoring that actually made things simpler.  In
particular, more of the inlining logic has moved from SimplUtils to
CoreUnfold, where it belongs.

16 years agofix race conditions in sandboxIO (#1583, #1922, #1946)
Simon Marlow [Tue, 4 Dec 2007 11:44:44 +0000 (11:44 +0000)]
fix race conditions in sandboxIO (#1583, #1922, #1946)
using the new block-inheriting forkIO (#1048)

16 years ago:cd with no argument goes to the user's home directory
Simon Marlow [Tue, 4 Dec 2007 11:39:45 +0000 (11:39 +0000)]
:cd with no argument goes to the user's home directory
Seems better than getting a confusing 'cannot find directory' exception.

16 years agoforkIO starts the new thread blocked if the parent is blocked (#1048)
Simon Marlow [Tue, 4 Dec 2007 11:09:47 +0000 (11:09 +0000)]
forkIO starts the new thread blocked if the parent is blocked (#1048)

16 years agoImprove eta reduction, to reduce Simplifier iterations
simonpj@microsoft.com [Mon, 3 Dec 2007 15:00:39 +0000 (15:00 +0000)]
Improve eta reduction, to reduce Simplifier iterations

I finally got around to investigating why the Simplifier was sometimes
iterating so often.  There's a nice example in Text.ParserCombinators.ReadPrec,
which produced:

NOTE: Simplifier still going after 3 iterations; bailing out.  Size = 339
NOTE: Simplifier still going after 3 iterations; bailing out.  Size = 339
NOTE: Simplifier still going after 3 iterations; bailing out.  Size = 339

No progress is being made.  It turned out that an interaction between
eta-expansion, casts, and eta reduction was responsible. The change is
small and simple, in SimplUtils.mkLam: do not require the body to be
a Lam when floating the cast outwards.

I also discovered a missing side condition in the same equation, so fixing
that is good too.  Now there is no loop when compiling ReadPrec.

Should do a full nofib run though.

16 years agoDon't default to stripping binaries when installing
Ian Lynagh [Sun, 2 Dec 2007 19:58:17 +0000 (19:58 +0000)]
Don't default to stripping binaries when installing

16 years agoImprove pretty-printing for Insts
simonpj@microsoft.com [Wed, 28 Nov 2007 17:31:25 +0000 (17:31 +0000)]
Improve pretty-printing for Insts

16 years agoReorganise TcSimplify (again); FIX Trac #1919
simonpj@microsoft.com [Wed, 28 Nov 2007 17:31:46 +0000 (17:31 +0000)]
Reorganise TcSimplify (again); FIX Trac #1919

This was a bit tricky.  We had a "given" dict like (d7:Eq a); then it got
supplied to reduceImplication, which did some zonking, and emerged with
a "needed given" (d7:Eq Int). That got everything confused.

I found a way to simplify matters significantly.  Now reduceContext
- first deals with methods/literals/dictionaries
- then deals with implications
Separating things in this way not only made the bug go away, but
eliminated the need for the recently-added "needed-givens" results returned
by checkLoop.  Hurrah.

It's still a swamp.  But it's a bit better.

16 years agoFIX #1914: GHCi forgot all the modules that were loaded before an error
Simon Marlow [Fri, 30 Nov 2007 13:07:34 +0000 (13:07 +0000)]
FIX #1914: GHCi forgot all the modules that were loaded before an error

16 years agoFIX #1744: ignore the byte-order mark at the beginning of a file
Simon Marlow [Fri, 30 Nov 2007 10:11:00 +0000 (10:11 +0000)]
FIX #1744: ignore the byte-order mark at the beginning of a file

16 years agoFIX Trac #1935: generate superclass constraints for derived classes
simonpj@microsoft.com [Wed, 28 Nov 2007 15:05:41 +0000 (15:05 +0000)]
FIX Trac #1935: generate superclass constraints for derived classes

This bug only reports a problem with phantom types, but actually
there was quite a long-standing and significant omission in the
constraint generation for derived classes.  See
Note [Superclasses of derived instance] in TcDeriv.

The test deriving-1935 tests both cases.

16 years agoPrint a bit more info in VarBinds (no need to merge)
simonpj@microsoft.com [Wed, 28 Nov 2007 15:03:54 +0000 (15:03 +0000)]
Print a bit more info in VarBinds (no need to merge)

16 years agoCheck for duplicate bindings in CoreLint
simonpj@microsoft.com [Wed, 28 Nov 2007 15:02:14 +0000 (15:02 +0000)]
Check for duplicate bindings in CoreLint

16 years agoadd comment
Simon Marlow [Wed, 28 Nov 2007 11:14:17 +0000 (11:14 +0000)]
add comment

16 years agoFIX #1916: don't try to convert float constants to int in CMM optimizer
Bertram Felgenhauer [Thu, 22 Nov 2007 09:55:13 +0000 (09:55 +0000)]
FIX #1916: don't try to convert float constants to int in CMM optimizer

16 years agogive a more useful message when the static flags have not been initialised (#1938)
Simon Marlow [Tue, 27 Nov 2007 13:54:35 +0000 (13:54 +0000)]
give a more useful message when the static flags have not been initialised (#1938)

16 years agoRebuild utils with the stage1 compiler when making a bindist; fixes trac #1860
Ian Lynagh [Tue, 27 Nov 2007 20:39:59 +0000 (20:39 +0000)]
Rebuild utils with the stage1 compiler when making a bindist; fixes trac #1860
This is a bit unpleasant, as "make binary-dist" really shouldn't actually
build anything, but it works.

16 years agoRemove the --print-docdir flag
Ian Lynagh [Tue, 27 Nov 2007 19:56:05 +0000 (19:56 +0000)]
Remove the --print-docdir flag
It wasn't doing the right thing for bindists. Let's rethink...

16 years agoFIX #1925: the interpreter was not maintaining tag bits correctly
Simon Marlow [Tue, 27 Nov 2007 12:26:14 +0000 (12:26 +0000)]
FIX #1925: the interpreter was not maintaining tag bits correctly
See comment for details

16 years agoadd missing instruction: ALLOC_AP_NOUPD
Simon Marlow [Tue, 27 Nov 2007 12:26:04 +0000 (12:26 +0000)]
add missing instruction: ALLOC_AP_NOUPD

16 years agoCheck tag bits on the fun pointer of a PAP
Simon Marlow [Mon, 26 Nov 2007 16:04:20 +0000 (16:04 +0000)]
Check tag bits on the fun pointer of a PAP

16 years agocanonicalise the path to HsColour
Simon Marlow [Mon, 26 Nov 2007 14:16:14 +0000 (14:16 +0000)]
canonicalise the path to HsColour

16 years agoConsistently put www. on the front of haskell.org in URLs
Ian Lynagh [Mon, 26 Nov 2007 21:52:56 +0000 (21:52 +0000)]
Consistently put  on the front of haskell.org in URLs

16 years agoFix some more URLs
Ian Lynagh [Mon, 26 Nov 2007 21:41:47 +0000 (21:41 +0000)]
Fix some more URLs

16 years agoTweak some URLs
Ian Lynagh [Mon, 26 Nov 2007 19:41:48 +0000 (19:41 +0000)]
Tweak some URLs

16 years agoFix some links
Ian Lynagh [Mon, 26 Nov 2007 18:44:06 +0000 (18:44 +0000)]
Fix some links

16 years agoCopy gmp stamps into bindists, so we don't try and rebuild gmp
Ian Lynagh [Sun, 25 Nov 2007 21:19:19 +0000 (21:19 +0000)]
Copy gmp stamps into bindists, so we don't try and rebuild gmp

16 years agoOn Windows, Delete the CriticalSection's we Initialize
Ian Lynagh [Sun, 25 Nov 2007 12:58:45 +0000 (12:58 +0000)]
On Windows, Delete the CriticalSection's we Initialize

16 years agoOn Windows, add a start menu link to the flag reference
Ian Lynagh [Sun, 25 Nov 2007 12:44:29 +0000 (12:44 +0000)]
On Windows, add a start menu link to the flag reference

16 years agoRemove html/ from the paths we put in the start menu on Windows
Ian Lynagh [Sun, 25 Nov 2007 12:41:50 +0000 (12:41 +0000)]
Remove html/ from the paths we put in the start menu on Windows

16 years agoMERGED: Make ":" in GHCi repeat the last command
Ian Lynagh [Sun, 25 Nov 2007 12:20:20 +0000 (12:20 +0000)]
MERGED: Make ":" in GHCi repeat the last command
Ian Lynagh <igloo@earth.li>**20071124231857
 It used to be a synonym for ":r" in 6.6.1, but this wasn't documented or
 known about by the developers. In 6.8.1 it was accidentally broken.
 This patch brings it back, but as "repeat the last command", similar to
 pressing enter in gdb. This is almost as good for people who want it to
 reload, and means that it can also be used to repeat commands like :step.

16 years agoMERGED: Put library docs in a $pkg, rather than $pkgid, directory; fixes trac #1864
Ian Lynagh [Sat, 24 Nov 2007 21:23:05 +0000 (21:23 +0000)]
MERGED: Put library docs in a $pkg, rather than $pkgid, directory; fixes trac #1864
Ian Lynagh <igloo@earth.li>**20071124171220

16 years agoDon't make a library documentation prologue
Ian Lynagh [Sat, 24 Nov 2007 21:19:43 +0000 (21:19 +0000)]
Don't make a library documentation prologue
It's far too large now, and no-one complained when 6.8.1 didn't have one.

16 years agoDon't put package version numbers in links in index.html
Ian Lynagh [Sat, 24 Nov 2007 21:16:29 +0000 (21:16 +0000)]
Don't put package version numbers in links in index.html

16 years agoDefine install-strip in Makefile
Ian Lynagh [Sat, 24 Nov 2007 20:50:37 +0000 (20:50 +0000)]
Define install-strip in Makefile

16 years agoDefine install-strip in distrib/Makefile
Ian Lynagh [Sat, 24 Nov 2007 20:48:03 +0000 (20:48 +0000)]
Define install-strip in distrib/Makefile

16 years agoInstall gmp from bindists; fixes trac #1848
Ian Lynagh [Sat, 24 Nov 2007 18:52:40 +0000 (18:52 +0000)]
Install gmp from bindists; fixes trac #1848

16 years ago(native gen) fix code generated for GDTOI on x86_32
Bertram Felgenhauer [Wed, 21 Nov 2007 06:39:42 +0000 (06:39 +0000)]
(native gen) fix code generated for GDTOI on x86_32
See trac #1910.

16 years agoCopy the INSTALL hack from mk/config.mk.in into distrib/Makefile-bin-vars.in
Ian Lynagh [Sat, 24 Nov 2007 16:30:28 +0000 (16:30 +0000)]
Copy the INSTALL hack from mk/config.mk.in into distrib/Makefile-bin-vars.in
configure will set INSTALL to ./install-sh if it can't find it in the path,
so we need to replace the . with the path to our root.

16 years agoMake install-sh executable /before/ we try to find it
Ian Lynagh [Sat, 24 Nov 2007 16:24:50 +0000 (16:24 +0000)]
Make install-sh executable /before/ we try to find it

16 years agoDocument --info in the +RTS -? help
Ian Lynagh [Fri, 23 Nov 2007 20:43:52 +0000 (20:43 +0000)]
Document --info in the +RTS -? help

16 years agoMERGED: If we have hscolour then make source code links in teh haddock docs
Ian Lynagh [Fri, 23 Nov 2007 23:31:13 +0000 (23:31 +0000)]
MERGED: If we have hscolour then make source code links in teh haddock docs
Fri Nov 23 13:15:59 PST 2007  Ian Lynagh <igloo@earth.li>

16 years agoTidy and trim the type environment in mkBootModDetails
simonpj@microsoft.com [Fri, 23 Nov 2007 15:35:19 +0000 (15:35 +0000)]
Tidy and trim the type environment in mkBootModDetails

Should fix Trac #1833

We were failing to trim the type envt in mkBootModDetails, so several
functions all called (*), for example, were getting into the interface.
Result chaos.  It only actually bites when we do the retyping-loop thing,
which is why it's gone so long without a fix.

16 years agorefactor: HscNothing and boot modules do not need desugaring
Simon Marlow [Fri, 23 Nov 2007 13:52:37 +0000 (13:52 +0000)]
refactor: HscNothing and boot modules do not need desugaring

16 years agoFIX #1910: fix code generated for GDTOI on x86_32
Bertram Felgenhauer [Wed, 21 Nov 2007 10:26:27 +0000 (10:26 +0000)]
FIX #1910: fix code generated for GDTOI on x86_32

16 years agoProperly ppr InstEqs in wanteds of implication constraints
Manuel M T Chakravarty [Thu, 22 Nov 2007 09:30:02 +0000 (09:30 +0000)]
Properly ppr InstEqs in wanteds of implication constraints

16 years agoFIX #1910: fix code generated for GDTOI on x86_32
Bertram Felgenhauer [Wed, 21 Nov 2007 10:26:27 +0000 (10:26 +0000)]
FIX #1910: fix code generated for GDTOI on x86_32

16 years agoAdd built-in Double operations to vectorisation
Roman Leshchinskiy [Thu, 22 Nov 2007 00:25:17 +0000 (00:25 +0000)]
Add built-in Double operations to vectorisation

16 years agoTeach vectorisation about Double
Roman Leshchinskiy [Wed, 21 Nov 2007 05:49:32 +0000 (05:49 +0000)]
Teach vectorisation about Double

16 years agoVectorise polyexprs with notes
Roman Leshchinskiy [Wed, 21 Nov 2007 05:31:02 +0000 (05:31 +0000)]
Vectorise polyexprs with notes

16 years agoMake rebindable do-notation behave as advertised
simonpj@microsoft.com [Wed, 21 Nov 2007 17:49:14 +0000 (17:49 +0000)]
Make rebindable do-notation behave as advertised

Adopt Trac #1537.  The patch ended up a bit bigger than I expected,
so I suggest we do not merge this into the 6.8 branch.  But there
is no funadamental reason why not.

With this patch, rebindable do-notation really does type as if you
had written the original (>>) and (>>=) operations in desguared form.

I ended up refactoring some of the (rather complicated) error-context
stuff in TcUnify, by pushing an InstOrigin into tcSubExp and its
various calls. That means we could get rid of tcFunResTy, and the
SubCtxt type.  This should improve error messages slightly
in complicated situations, because we have an Origin to hand
to instCall (in the (isSigmaTy actual_ty) case of tc_sub1).

Thanks to Pepe for the first draft of the patch.

16 years agoAdd DEBUG-only flag -dsuppress-uniques to suppress printing of uniques
simonpj@microsoft.com [Fri, 16 Nov 2007 15:24:46 +0000 (15:24 +0000)]
Add DEBUG-only flag -dsuppress-uniques to suppress printing of uniques

This is intended only for debugging use: it makes it easier to
compare two variants without the variations between uniques mattering.

(Of course, you can't actually feed the output to the C compiler
or assembler and expect anything sensible to happen!)

16 years agoAdd -dcore-lint when validating libraries
simonpj@microsoft.com [Mon, 5 Nov 2007 16:47:33 +0000 (16:47 +0000)]
Add -dcore-lint when validating libraries

16 years agoFix Trac #1913: check data const for derived types are in scope
simonpj@microsoft.com [Wed, 21 Nov 2007 15:14:28 +0000 (15:14 +0000)]
Fix Trac #1913: check data const for derived types are in scope

When deriving an instance, the data constructors should all be in scope.
This patch checks the condition.

16 years agoFix Trac #1909: type of map in docs
simonpj@microsoft.com [Tue, 20 Nov 2007 16:01:52 +0000 (16:01 +0000)]
Fix Trac #1909: type of map in docs