- 20 Nov, 2017 6 commits
-
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Moritz Angermann authored
The boot script generates lots of .mk files for the make based build system. This change adds a `--hadrian` flag to `boot`, which skips the `.mk` file generation. Reviewers: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4211
-
Moritz Angermann authored
Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4210
-
- 19 Nov, 2017 1 commit
-
-
Moritz Angermann authored
Reviewers: bgamari, erikd Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4209
-
- 18 Nov, 2017 6 commits
-
-
Andrew Martin authored
-
Moritz Angermann authored
Overlap with commit 2f463873, resulted in `hooks/LongGCSync.c` missing from the `rts.cabal.in` file. As the `rts.cabal` file is only used by hadrian, this did not trigger with the make base build system which can do globbing. Also ignore the `rts.cabal` file, as it's generated by configure from the `rts.cabal.in`.
-
Moritz Angermann authored
GHC and the binary distribution that's produced is not relocatable outside of Windows. This diff tries to address this for at least Linux and macOS. Reviewers: austin, hvr, bgamari, erikd, goldfire, Phyx Reviewed By: bgamari Subscribers: duog, rwbarton, thomie, erikd Differential Revision: https://phabricator.haskell.org/D4121
-
Moritz Angermann authored
Stop the GHC.Prim madness with `virtual-module` support from cabal. Needs https://github.com/haskell/cabal/pull/4875. Bumps submodule libraries/Cabal to include the necessary logic for `virtual-module`. Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4179
-
Moritz Angermann authored
Summary: When building the rts with ghc (e.g. using ghc as a c compiler), ghc's "Value Add"[1] is, it includes adding `-include /path/to/ghcversion.h`. For this it looksup the rts package in the package database, which--if empty--fails. Thus to allow compiling C files with GHC, we add the `-ghc-version` flag, which takes the path to the `ghcversion.h` file. A `-no-ghc-version` flag was omitted, as at that point it becomes questionable why one would use ghc to compile c if one doesn't any of the added value. -- [1] from `compiler/main/DriverPipeline.hs` > -- add package include paths even if we're just compiling .c > -- files; this is the Value Add(TM) that using ghc instead of > -- gcc gives you :) Reviewers: bgamari, geekosaur, austin Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4135
-
- 16 Nov, 2017 3 commits
-
-
Ben Gamari authored
This is a regression affecting Windows introduced by 3bed4aa7.
-
Ben Gamari authored
-
Simon Marlow authored
Summary: GC sync is the time between a GC being intiated and all the mutator threads finally stopping so that the GC can start. Problems that cause the GC sync to be delayed are hard to find and can cause dramatic slowdowns for heavily parallel programs. The new flag --long-gc-sync=<time> helps by emitting a warning and calling a user-overridable hook when the GC sync time exceeds the specified threshold. A debugger can be used to set a breakpoint when this happens and inspect the stacks of threads to find the culprit. Test Plan: ``` $ ./inplace/bin/ghc-stage2 +RTS --long-gc-sync=0.0000001 -S Alloc Copied Live GC GC TOT TOT Page Flts bytes bytes bytes user elap user elap 1135856 51144 153736 0.000 0.000 0.002 0.002 0 0 (Gen: 0) 1034760 94704 188752 0.000 0.000 0.002 0.002 0 0 (Gen: 0) 1038888 134832 228888 0.009 0.009 0.011 0.011 0 0 (Gen: 1) 1025288 90128 235184 0.000 0.000 0.012 0.012 0 0 (Gen: 0) 1049088 130080 333984 0.000 0.000 0.013 0.013 0 0 (Gen: 0) Warning: waited 0us for GC sync 1034424 73360 331976 0.000 0.000 0.013 0.013 0 0 (Gen: 0) ``` Also tested on a real production problem. Reviewers: niteria, bgamari, erikd Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4193
-
- 15 Nov, 2017 14 commits
-
-
Andrey Mokhov authored
Merge commit 'c1fcd9b3'
-
Andrey Mokhov authored
fa3771fe hadrian: Disable -Wno-undef in files which include ffi.h (#459) f15e851c Do not run configure by default (#458) 5baa8db6 Fix AppVeyor cache failure (#456) 94dbe9d7 Fix ghc-cabal build (#455) a6797641 Fix CI scripts (#454) 06ec241e Widen bounds on Cabal (#452) git-subtree-dir: hadrian git-subtree-split: fa3771fe
-
Niklas Hambüchen authored
Reviewers: bgamari, angerman Reviewed By: angerman Subscribers: angerman, rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4200
-
Andreas Klebinger authored
When sorting by the Ord instance put DEFAULT before other constructors. This is in line with what the core linter requests allowing the use of the instance for putting alternatives in the correct order. This implements #14464. Reviewers: bgamari, simonpj Reviewed By: simonpj Subscribers: simonpj, rwbarton, thomie GHC Trac Issues: #14464 Differential Revision: https://phabricator.haskell.org/D4198
-
Moritz Angermann authored
Adding cabal files to `unlit`, `touchy` and `hp2ps`, allows us to treat them uniformally across the build system. In particular Hadrian will use these. Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4192
-
Moritz Angermann authored
Reviewers: bgamari, simonmar Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4187
-
Douglas Wilson authored
We were accumulating the gc times of the previous gc. `stats.gc.{cpu,elappsed}_ns` were being accumulated into `stats.gc_{cpu,elapsed}_ns` before they were set. There is also a change in that heap profiling will no longer cause gc events to be emitted. Reviewers: bgamari, erikd, simonmar Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #14257, #14445 Differential Revision: https://phabricator.haskell.org/D4184
-
Ben Gamari authored
This allows you to use `-ddump-to-file -ddump-timings` for more useful dump output. Test Plan: Try it Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4195
-
Ben Gamari authored
Reviewers: simonmar Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4188
-
Ben Gamari authored
Test Plan: Validate Reviewers: trommler, simonmar Reviewed By: trommler Subscribers: rwbarton, thomie GHC Trac Issues: #14454 Differential Revision: https://phabricator.haskell.org/D4182
-
Peter Trommler authored
The update of GHC's in-tree libffi causes warnings about undefined macros and hence validate fails. Also mark broken tests that have a ticket. Fixes #14353 Test Plan: ./validate (on AIX and powerpc if possible) Reviewers: bgamari, hvr, erikd, simonmar Reviewed By: bgamari Subscribers: snowleopard, rwbarton, thomie GHC Trac Issues: #14353, #11259, #14455, #11261 Differential Revision: https://phabricator.haskell.org/D4181
-
Moritz Angermann authored
This is in preparation for cabalification of the `rts`. To be actually able to parse this file, a rather recent Cabal is required. One after commit 357d49d of haskell/cabal. The relevant PR to support the new `asm-sources` and `cmm-sources` is haskell/cabal/pull/4857. Not that this does *not* allow cabal to build the RTS. It does however provide enough information such that cabal can `copy` and `register` the package properly in the package database, if all the build artifacts have been build properly. As such it does not require any custom handling of the `rts` package. As the rts as well as all the other packages built by the GHC built system are built outside of cabal anyway. Reviewers: bgamari, hvr, erikd, simonmar Reviewed By: bgamari Subscribers: rwbarton, thomie, erikd Differential Revision: https://phabricator.haskell.org/D4174
-
Facundo Domínguez authored
* Document requirement to use the same binaries. * Fix some code comments. Test Plan: ./validate Reviewers: bgamari, mboes, hvr Reviewed By: bgamari, mboes Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4172
-
John Ky authored
This adds support for the bit deposit and extraction operations provided by the BMI and BMI2 instruction set extensions on modern amd64 machines. Test Plan: Validate Reviewers: austin, simonmar, bgamari, hvr, goldfire, erikd Reviewed By: bgamari Subscribers: goldfire, erikd, trommler, newhoggy, rwbarton, thomie GHC Trac Issues: #14206 Differential Revision: https://phabricator.haskell.org/D4063
-
- 14 Nov, 2017 3 commits
-
-
Alan Zimmerman authored
Further progress on implementing Trees that Grow on hsSyn AST. See https://ghc.haskell.org/trac/ghc/wiki/ImplementingTreesThatGrow Trees that grow extension points are added for - Rest of HsExpr.hs Updates haddock submodule Test Plan: ./validate Reviewers: bgamari, shayan-najd, goldfire Subscribers: goldfire, rwbarton, thomie, mpickering Differential Revision: https://phabricator.haskell.org/D4186
-
Simon Peyton Jones authored
-
Simon Peyton Jones authored
A year ago I gave up on trying to rigorously separate TyVars from TcTyVars, and instead allowed TyVars to appear rather more freely in types examined by the constraint solver: commit 18d0bdd3 Author: Simon Peyton Jones <simonpj@microsoft.com> Date: Wed Nov 23 16:00:00 2016 +0000 Allow TyVars in TcTypes See Note [TcTyVars in the typechecker] in TcType. However, TcFlatten.flatten_tyvar1 turned out to treat a TyVar specially, and implicitly assumed that it could not have an equality constraint in the inert set. Wrong! This caused Trac #14450. Fortunately it is easily fixed, by deleting code.
-
- 11 Nov, 2017 6 commits
-
-
Alan Zimmerman authored
See https://ghc.haskell.org/trac/ghc/wiki/ImplementingTreesThatGrow Trees that grow extension points are added for - HsExpr Updates haddock submodule Test Plan: ./validate Reviewers: bgamari, goldfire Subscribers: rwbarton, thomie, shayan-najd, mpickering Differential Revision: https://phabricator.haskell.org/D4177
-
Herbert Valerio Riedel authored
This is a follow-up to ba2ae2c8 which started relying on a new Cabal feature requiring the the cabal spec version declaration to be updated accordingly.
-
Ben Gamari authored
It appears that our jobs generally run on VMs with 2 vCPUs. Consequently running with 8 jobs will completely oversubscribe the machine. I suspect this is the cause of #14453. Let's bump this down to 3 for now. Ideally we would determine this from the environment.
-
Moritz Angermann authored
Reviewers: bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4175
-
Moritz Angermann authored
Bumps Cabal submodule. Reviewers: bgamari, hvr Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D4176
-
Tamar Christina authored
GHC 8.4 is expected to ship with an updated GCC bindist based on GCC 7.2. I am however at this time not updating the crt due to an issue introduced in September. https://sourceforge.net/p/mingw-w64/mailman/message/36085637/ Unless a favorable fix comes out of the discussion I will just ship the old crt with GHC 8.4. Test Plan: ./validate Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: thomie, rwbarton Differential Revision: https://phabricator.haskell.org/D4125
-
- 10 Nov, 2017 1 commit
-
-
Ben Gamari authored
5ebb69ae Drop GccLtXX flags, require GCC > 4.7 and up (#450) git-subtree-dir: hadrian git-subtree-split: 5ebb69ae
-