- 03 Apr, 2015 7 commits
-
-
thomie authored
This is a followup to d4cf7051, which did the same for `expect_broken` tests. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D786
-
Dave Laing authored
Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D772 GHC Trac Issues: #10213
-
Ben Gamari authored
Reviewed By: hvr, austin Differential Revision: https://phabricator.haskell.org/D770
-
shiatsumat authored
Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D768 GHC Trac Issues: #10188
-
Peter Wortmann authored
While we want to reduce the amount of information generated into debug_info, it really doesn't make sense to remove block information for unwinding. This is a simple oversight introduced in 4ab57024, which severly reduces the usefulness of generated unwind data. Thanks to bitonic for spotting this! Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D792 GHC Trac Issues: #10236
-
Javran Cheng authored
According to https://phabricator.haskell.org/rGHC6e771fa19dbb7edc116b5974124229a2725103e8 Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D793
-
Peter Trommler authored
From the code it was not clear that `--no-as-needed` was not necessary on Windows. Add this fact and describe the fix for #10110 in a separate note. See audit for rGHC1b7f59769052fd8193c6acc561216e070d0ca335 raised by @thomie. Reviewed By: thomie Differential Revision: https://phabricator.haskell.org/D791 GHC Trac Issues: #10110
-
- 02 Apr, 2015 6 commits
-
-
thomie authored
-
Sergei Trofimovich authored
Got detected by gentoo's QA preinstall hook: * RWX --- --- usr/lib/ghc-7.10.1/rts/libffi.so.6.0.2 * RWX --- --- usr/lib/ghc-7.10.1/rts/libffi.so * RWX --- --- usr/lib/ghc-7.10.1/rts/libffi.so.6 * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_p.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_l.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_debug.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_thr.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_thr_debug.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_thr_l.a:win32.o * !WX --- --- usr/lib/ghc-7.10.1/rts/libCffi_thr_p.a:win32.o Signed-off-by:
Sergei Trofimovich <siarheit@google.com> Test Plan: built ghc-7.10.1 binary and checked stacks as NX Reviewers: rwbarton, hvr, austin Reviewed By: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D764 GHC Trac Issues: #10208
-
Dave Laing authored
Reviewed By: nomeata, thomie Differential Revision: https://phabricator.haskell.org/D760Signed-off-by:
Dave Laing <dave.laing.80@gmail.com>
-
thomie authored
The default validate settings currently disable some warnings in the libraries. This patch moves those settings to a new file called `mk/warnings.mk`, and applies them also to normal builds. Through uncommenting a line in build.mk, developers can now build with -Werror. -Werror is not the default, because: * We can not guarantee that the build is warning free on platforms we don't run regularly run validate (as part of continuous integration systems), and we still want the build to go through on those platforms. * quoting rwbarton on irc > "I think -Werror by default has come up in the past and the argument was that it is too annoying when you are doing nontrivial development" Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D785
-
thomie authored
On platforms that support -fasm, it is already the default, so we don't have to set it. Reviewed By: austin, erikd (tested on powerpc and armhf) Differential Revision: https://phabricator.haskell.org/D784
-
Oleg Grenrus authored
Reviewed By: simonpj, austin Differential Revision: https://phabricator.haskell.org/D741
-
- 01 Apr, 2015 5 commits
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
thomie authored
Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D783
-
thomie authored
Use same format for each build flavour, to make it easier to compare them. Refactoring only. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D782
-
thomie authored
`.hspp` and `.hscpp` are haskell files that have already been preprocessed. Treat `.hspp` and `.hscpp` as Haskellish sources again, as they were before commit a10e1990. This way, ghc --make will load their imports. Make sure that `.cmm` and `.cmmcpp` are still not treated as Haskellish, by moving them out of `haskell_src_suffixes` (but still keeping them in haskellish_suffixes, though I'm not sure what the purpose of that group is). Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D778
-
thomie authored
When running `make accept` on a directory in the testsuite, don't accept the output of tests that are marked as expect_broken. This makes it easier to review `git diff` after running `make accept`. When you change an error message in the compiler that shows up in the output of many tests, you can run `make accept` in the testsuite directory, and all expected test output will be updated. But since your change didn't magically fix all the other bugs in the compiler for which we have an expect_broken test, the output for those tests should probably not be updated. Before, the effect of running `make accept` could be that some tests would end up in the 'unexpected passes' group. [skip ci] Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D781
-
- 31 Mar, 2015 8 commits
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
thomie authored
This is a followup to a3d0a7a0. Reviewed by: Rufflewind Differential Revision: https://phabricator.haskell.org/D780
-
thomie authored
.hcr: external core .raw_s: direct output from the c compiler, back in the day Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D777
-
thomie authored
Just do nothing instead. This bug only shows up when using `-x hspp` in --make mode on registerised builds. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D776
-
thomie authored
Show a more descriptive error message. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D775
-
Rufflewind authored
Suppress the errors that appear in standard output when running gs on bad.ps since it's expected to fail anyway. Reviewed By: thomie, austin Differential Revision: https://phabricator.haskell.org/D773
-
Herbert Valerio Riedel authored
This completes what c774b28f (#9281) started. `integer-gmp-1.0` was added as an additional `libraries/integer-gmp2` folder while retaining the ability to configure GHC w/ the old `integer-gmp-0.5` to have a way back, and or the ability to easily switch between old/new `integer-gmp` for benchmark/debugging purposes. This commit removes the old `libraries/integer-gmp` folder and moves `libraries/integer-gmp2` into its place, while removing any mentions of "gmp2" as well as the to support two different `integer-gmp` packages in GHC's source-tree. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D769
-
Herbert Valerio Riedel authored
[skip ci]
-
- 30 Mar, 2015 5 commits
-
-
thomie authored
Version numbers are not allowed in the package name of a package-qualified import. Reviewed By: austin, ezyang Differential Revision: https://phabricator.haskell.org/D755
-
thomie authored
Differential Revision: https://phabricator.haskell.org/D774
-
Dave Laing authored
Differential Revision: https://phabricator.haskell.org/D765
-
Joachim Breitner authored
This re-implements the code generation for case expressions at the Stg → Cmm level, both for data type cases as well as for integral literal cases. (Cases on float are still treated as before). The goal is to allow for fancier strategies in implementing them, for a cleaner separation of the strategy from the gritty details of Cmm, and to run this later than the Common Block Optimization, allowing for one way to attack #10124. The new module CmmSwitch contains a number of notes explaining this changes. For example, it creates larger consecutive jump tables than the previous code, if possible. nofib shows little significant overall improvement of runtime. The rather large wobbling comes from changes in the code block order (see #8082, not much we can do about it). But the decrease in code size alone makes this worthwhile. ``` Program Size Allocs Runtime Elapsed TotalMem Min -1.8% 0.0% -6.1% -6.1% -2.9% Max -0.7% +0.0% +5.6% +5.7% +7.8% Geometric Mean -1.4% -0.0% -0.3% -0.3% +0.0% ``` Compilation time increases slightly: ``` -1 s.d. ----- -2.0% +1 s.d. ----- +2.5% Average ----- +0.3% ``` The test case T783 regresses a lot, but it is the only one exhibiting any regression. The cause is the changed order of branches in an if-then-else tree, which makes the hoople data flow analysis traverse the blocks in a suboptimal order. Reverting that gets rid of this regression, but has a consistent, if only very small (+0.2%), negative effect on runtime. So I conclude that this test is an extreme outlier and no reason to change the code. Differential Revision: https://phabricator.haskell.org/D720
-
Dave Laing authored
Test Plan: validate twice Reviewed by: thomie Differential Revision: https://phabricator.haskell.org/D771
-
- 29 Mar, 2015 1 commit
-
-
Edward Z. Yang authored
Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu>
-
- 28 Mar, 2015 1 commit
-
-
thomie authored
Reviewed By: kgardas Differential Revision: https://phabricator.haskell.org/D763
-
- 27 Mar, 2015 3 commits
-
-
thomie authored
Before: Cpp = Pre-process C Ccpp = Compile C++ Cobjcpp = Compile Objective-C++ CmmCpp = Pre-process Cmm Quite confusing! This commit renames `Ccpp` to `Ccplusplus`, and `Cobjcpp` to `Cobjcplusplus`. The two letters `p-p` keep standing for `pre-processing` throughout the compiler. Reviewed By: austin Differential Revision: https://phabricator.haskell.org/D756
-
rwbarton authored
Summary: The list was 14 years old, and there don't seem to be any problems with seq# or par#; the other par*# primops were not actually implemented at all and were removed in D758. Test Plan: validate; will also try to locally validate an unregisterised build in case there was some truth to the deleted comment Reviewers: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D759 GHC Trac Issues: #10191
-
rwbarton authored
Summary: An attempt to use these resulted in an error like: [1 of 1] Compiling Main ( p.hs, p.o ) ghc: panic! (the 'impossible' happened) (GHC version 7.8.4 for x86_64-unknown-linux): emitPrimOp: can't translate PrimOp parAt#{v} Test Plan: validate Reviewers: thomie, austin Reviewed By: thomie, austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D758
-
- 26 Mar, 2015 1 commit
-
-
Herbert Valerio Riedel authored
By mistake, the Git-commit-id detection was only enabled for `RELEASE=NO` (since the date-based GHC version computation is only active in that case). With this commit the commit-id detection is active regardless of the `RELEASE`-setting. This is a follow-up to 73e5e2f8
-
- 25 Mar, 2015 1 commit
-
-
Fumiaki Kinoshita authored
This was proposed a couple of times in the past, e.g. - https://mail.haskell.org/pipermail/libraries/2011-November/017153.html - https://mail.haskell.org/pipermail/libraries/2013-July/020446.html but its implementation had been blocked by the fact that `Monoid` wasn't in scope where the `Monad` class was defined. Since the AMP/FTP restructuring this is no longer the case.
-
- 24 Mar, 2015 2 commits
-
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
This is a minor refactoring, but it simplifies the code quite a bit * Decrease the number of variants of tcExtend in TcEnv * Remove "not_actually_free" from TcEnv.tc_extend_local_env2 * Simplify plumbingof the "closed" flag * Remove redundant scoping of wild-card variables
-