- 27 Mar, 2014 2 commits
-
-
Simon Marlow authored
-
Simon Marlow authored
-
- 26 Mar, 2014 1 commit
-
-
tibbe authored
This adds -fmax-inline-memcpy-insns and -fmax-inline-memset-insns. These flags control when we inline calls to memcpy/memset with statically known arguments. The flag naming style is taken from GCC and the same limit is used by both GCC and LLVM.
-
- 25 Mar, 2014 5 commits
-
-
Gabor Greif authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
I've added detailed comments with Note [Decomposing the left-hand side of a RULE] The result is a noticeable improvement. Previously * we rejected a perfectly decent SPECIALISE (Trac #8848) * and for something like f :: (Eq a) => b -> a -> a {-# SPECIALISE f :: b -> [Int] -> [Int] #-} we ended up with RULE f ($fdEqList $dfEqInt) = f_spec whereas we wanted RULES forall (d:Eq [Int]). f d = f_spec
-
- 24 Mar, 2014 12 commits
-
-
Simon Peyton Jones authored
This patch makes the simplifier eliminate a redundant seq like case x of y -> ...y.... where y is used strictly. GHC used to do this, but I made it less aggressive in commit 28d9a032 (Jan 2013) However #8900 shows that doing so sometimes loses good transformations; and the transformation is valid according to "A semantics for imprecise exceptions". So I'm restoring the old behaviour. See Note [Eliminating redundant seqs]
-
Austin Seipp authored
Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
Trac #8912 pointed out that GHC 7.4 and 7.6 have omitted this test, although 7.2 and earlier had it. This patch puts the test back in, and refactors a little.
-
Simon Peyton Jones authored
There was a special case in rewriteEvidence, looking like: = return (Just (if ctEvPred old_ev `tcEqType` new_pred then old_ev else old_ev { ctev_pred = new_pred })) But this was wrong: old_pred and new_pred might differ in the kind of a TyVar occurrence, in which case tcEqType would not notice, but we really, really want new_pred. This caused Trac #8913. I solved this by dropping the whole test, and instead making the flattener preserve type synonyms. This was easy because TcEvidence has TcTyConAppCo which (unlike) Coercion, handles synonyms.
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This change makes the code for canIrred markedly simpler (and more efficient) See Note [Equalities with incompatible kinds]. I don't think there was really a bug here, but I came across it when fixing Trac #8913
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This wasn't showing up as a bug, but it was definitely wrong.
-
Austin Seipp authored
It causes a failure on Windows right now. This reverts commit 045b2803.
-
Austin Seipp authored
See #8827 - for now, we're making GND unsafe again. This also fixes the tests since they were originally not using the new unicode quote style we're using. This reverts commit a8a01e74.
-
- 23 Mar, 2014 13 commits
-
-
Gabor Greif authored
-
Gabor Greif authored
-
Gabor Greif authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This patch is really a fix to the big commint 73c08ab1 Re-work the naming story for the GHCi prompt (Trac #8649) which introduced the 'interactive' package See Note [The interactive package] in HscTypes The original commit set both (a) The tcg_mod field of TcGblEnv to 'interactive:Ghci4' (say) (b) The thisPackage field of DynFlags to 'interactive' But the second step interacts badly with linking. :loaded modules are in the package set by 'thisPackage' (usually 'main'); if you change that, then we try to link package 'main', but can't find it, and that is what happened in #8831. The fix was simple: do (a) but not (b). I changed Note [The interactive package] in HscTypes to describe this.
-
Simon Peyton Jones authored
I've elaboated Note [Unify kinds in deriving] to explain what is going on here. The change fixes Trac #8893.
-
Herbert Valerio Riedel authored
This unbreaks the GHC build if a non-UTF8 locale such as LANG=C is active See also haskell/cabal#1721 and haskell/haddock#286 Signed-off-by:
Herbert Valerio Riedel <hvr@gnu.org>
-
Herbert Valerio Riedel authored
This should help contribute content to https://ghc.haskell.org/trac/ghc/wiki/WorkingConventions/Git/SubmodulesSigned-off-by:
Herbert Valerio Riedel <hvr@gnu.org>
-
kgardas authored
The patch provided by Christian Maeder <Christian.Maeder@dfki.de> Signed-off-by:
Karel Gardas <karel.gardas@centrum.cz> Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
Austin Seipp authored
This adds a simple Vagrantfile to the root directory, which you can use to easily spin up RHEL/Debian/Ubuntu virtual machine in seconds to test GHC. For example, from the root of the GHC tree, you can say: $ vagrant up ubuntu1204-amd64 $ vagrant ssh ubuntu1204-amd64 This will give you access to a provisioned Ubuntu 12.04 virtual machine with all the necessary GHC dependencies installed (modulo a few things). Debian 7/CentOS 6.5/Ubuntu 12.04 only for now, in amd64/i386 configurations. In the future I plan to at least add FreeBSD and NixOS boxes where possible. Improvements are necessary of course. By default a box is given 4GB of RAM and 2 cores, and resolves DNS entries by routing through the host DNS configuration. Do not run 'vagrant up' unless you have lots of RAM as it will spawn *every* virtual machine. Hopefully, this should make it far easier for contributors to get started eventually. Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
kgardas authored
Both --with-ar and --with-ranlib are usable on non-GNU/Linux systems where GNU tools are usually installed (or possible to install), but not into standard location nor with standard name. Tested on Solaris 10. Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
fw authored
Before this change, the END actions were executed even if the code throws an exception using "die". This resulted in very confusing error reporting when an invalid command line option was specified. Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
- 22 Mar, 2014 7 commits
-
-
eir@cis.upenn.edu authored
FamInstEnv.normaliseTcApp should normalise arguments even when the top-level tycon isn't a type family. This was a regression from 7.6 -- not sure when it happened, but it was probably my fault. Fixed now, in any case.
-
eir@cis.upenn.edu authored
-
eir@cis.upenn.edu authored
Previously, the closed type family compatibility check was done even when type-checking an interface file. But interface files now store compatibility info, so this check was redundant.
-
eir@cis.upenn.edu authored
-
Mikhail Glushenkov authored
Signed-off-by:
Austin Seipp <austin@well-typed.com>
-
tibbe authored
The fix was to ghc-prim.
-
tibbe authored
-