- 20 Feb, 2011 1 commit
-
-
chak@cse.unsw.edu.au. authored
- Added a pragma {-# VECTORISE var = exp #-} that prevents the vectoriser from vectorising the definition of 'var'. Instead it uses the binding '$v_var = exp' to vectorise 'var'. The vectoriser checks that the Core type of 'exp' matches the vectorised Core type of 'var'. (It would be quite complicated to perform that check in the type checker as the vectorisation of a type needs the state of the VM monad.) - Added parts of a related VECTORISE SCALAR pragma - Documented -ddump-vect - Added -ddump-vt-trace - Some clean up
-
- 19 Feb, 2011 2 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
-
- 14 Feb, 2011 1 commit
-
-
gwright@antiope.com authored
This is a corrected fix for ticket #4867, "ghci displays negative floats incorrectly". The previous patch sometimes gave incorrect offset to values in the __const section of the __TEXT segment. The new patch arranges a zero fixup for non-external, not-global offset table signed relocations. This is apparently what is required, though documentation on this point is scarce. With this change Doubles are negated properly, because the sign bit mask is loaded from the correct offset. This was tested both on HEAD and the 7.0 branch.
-
- 16 Feb, 2011 1 commit
-
-
batterseapower authored
-
- 17 Feb, 2011 4 commits
-
-
simonpj@microsoft.com authored
-
simonpj@microsoft.com authored
-
simonpj@microsoft.com authored
This is just a program that exploits overlapping instances in a delicate way. The fix makes GHC a bit more friendly towards such programs. See Note [Overlap and deriving] in TcSimplify
-
simonpj@microsoft.com authored
When we spot an equality arising from a functional dependency, we now use that equality (a "wanted") to rewrite the work-item constraint right away. This avoids two dangers Danger 1: If we send the original constraint on down the pipeline it may react with an instance declaration, and in delicate situations (when a Given overlaps with an instance) that may produce new insoluble goals: see Trac #4952 Danger 2: If we don't rewrite the constraint, it may re-react with the same thing later, and produce the same equality again --> termination worries. To achieve this required some refactoring of FunDeps.lhs (nicer now!). This patch also contains a couple of unrelated improvements * A bad bug in TcSMonad.nestImplicTcS whereby the Tcs tyvars of an outer implication were not untouchable inside * Improved logging machinery for the type constraint solver; use -ddump-cs-trace (probably with a wider default line width -dppr-cols=200 or something)
-
- 15 Feb, 2011 3 commits
-
-
simonpj@microsoft.com authored
Now that exprIsDupable is less aggressive, test MethSharing wasn't doing enough inlining. Increasing the threshold fixes the problem but the real fix is in Trac #4960.
-
simonpj@microsoft.com authored
This bug was causing a Lint error on the stable branch. For some reason it doesn't show up in HEAD, but it's still worth fixing. The point is that ((f `cast` co) a) is cheap if f has arity>1. This was being gratuitously missed before.
-
simonpj@microsoft.com authored
(This was part of an experiment I abandoned.)
-
- 14 Feb, 2011 2 commits
-
-
simonpj@microsoft.com authored
It turns out that exprIsDupable would return True for an expression of *arbitrary* size, provide it was a nested bunch of applications in which no function had more than three arguments. That was never the intention, and could give rise to massive code duplication. This patch makes it much less aggressive.
-
simonpj@microsoft.com authored
The ThunkSplitting idea in WorkWrap wasn't working at all, leading to Trac #4957. The culprit is really the simplifier which was combining the wrong case continuations. See Note [Fusing case continuations] in Simplify.
-
- 15 Feb, 2011 1 commit
-
-
keller@.cse.unsw.edu.au authored
-
- 14 Feb, 2011 2 commits
-
-
keller@.cse.unsw.edu.au authored
-
keller@cse.unsw.edu.au authored
-
- 09 Feb, 2011 1 commit
-
-
keller@cse.unsw.edu.au authored
-
- 02 Feb, 2011 2 commits
-
-
keller@cse.unsw.edu.au authored
No commit message
-
keller@cse.unsw.edu.au authored
-
- 01 Feb, 2011 1 commit
-
-
keller@cse.unsw.edu.au authored
-
- 14 Feb, 2011 3 commits
-
-
Simon Marlow authored
This was a bug in 6.12.3. I think the problem no longer occurs due to the way sparks are treated as weak pointers, but it doesn't hurt to test for tagged pointers anyway: better to do the test than have a subtle invariant.
-
simonpj@microsoft.com authored
Local let binders in IfaceExpr never used to have unfoldings, but lately they can (becuase they can have an INLINE pragma). We must take account of the variables mentioned in the pragma when computing the fingerprint.
-
simonpj@microsoft.com authored
-
- 13 Feb, 2011 1 commit
-
-
dterei authored
The old llvm mangler was horrible! Very slow due to bad design and code. New version is linear complexity as it should be and far lower coefficients. This fixes trac 4838.
-
- 11 Feb, 2011 5 commits
-
-
Ian Lynagh authored
In a bindist, we generate files like the hsc2hs wrapper. This means we need to have the right values for the variables like CONF_GCC_LINKER_OPTS_STAGE1 which in turn means we need to know what platform we're on.
-
simonpj@microsoft.com authored
This fixes Trac #4935. See Note [Preparing inert set for implications]. Lots of comments, but not a lot of code is changed!
-
simonpj@microsoft.com authored
-
simonpj@microsoft.com authored
This resulted in double unifications. Fix is trivial.
-
simonpj@microsoft.com authored
This patch just adds an assert error.
-
- 10 Feb, 2011 2 commits
-
-
Ian Lynagh authored
-
Ian Lynagh authored
Now that we've stopped trying to support 64bit OS X 10.5, the DTrace problems there don't matter.
-
- 12 Jan, 2011 1 commit
-
-
kgardas authored
-
- 09 Feb, 2011 1 commit
-
-
gwright@antiope.com authored
This patch fixes the erroneous relocations that caused the bug in ticket #4867. External addresses and global offset table entries were relocated correctly, but all other relocations were incorrectly calculated. This caused, for example, bad references to constants stored in the __const section of the __TEXT segment. This bug only affected OS X on 64-bit platforms.
-
- 01 Feb, 2011 1 commit
-
-
pumpkin authored
Fix Array sizeof primops to use the correct offset (which happens to be 0, so it worked before anyway). Makes us more future-proof, at least
-
- 26 Jan, 2011 1 commit
-
-
pumpkin authored
-
- 10 Feb, 2011 2 commits
-
-
Simon Marlow authored
-
Simon Marlow authored
-
- 08 Feb, 2011 1 commit
-
-
Simon Marlow authored
There might be more simplification to do.
-
- 10 Feb, 2011 1 commit
-
-
Ian Lynagh authored
-