- Jan 04, 2017
-
-
Ben Gamari authored
-
Sergei Trofimovich authored
This reverts f48f5a9e The prefixing does not work as comma is stripped by $(addprefix) macro: The following call $$(addprefix -optl-Wl, $$($1_$2_$3_ALL_LD_OPTS)) prefixes options with "-optl-Wl" not with "-optl-Wl," The simplest breakage can be seen by adding SRC_LD_OPTS += -O1 to mk/build.mk: <no location info>: error: Warning: Couldn't figure out linker information! Make sure you're using GNU ld, GNU gold or the built in OS X linker, etc. gcc: error: unrecognized command line option '-Wl-O1' Another problem with original change is loss of ability to pass options to gcc as a linker driver, for example: SRC_LD_OPTS += -flto Signed-off-by:
Sergei Trofimovich <siarheit@google.com> (cherry picked from commit a6657bd0)
- Dec 23, 2016
-
-
Currently uniques are 32-bits wide. 8 of these bits are for the unique class, leaving only 24 for the unique number itself. This seems dangerously small for a large project. Let's use the full range of the native machine word. We also add (now largely unnecessary) overflow check to ensure that the unique number doesn't overflow. Test Plan: Validate Reviewers: simonmar, austin, niteria Reviewed By: niteria Subscribers: mpickering, thomie Differential Revision: https://phabricator.haskell.org/D2844 GHC Trac Issues: #12944 (cherry picked from commit 0d213c18)
-
Ben Gamari authored
This reverts commit 6a5d13c4 due to breakage on PPC AIX while compiling unordered-containers. See #13033.
-
- Dec 18, 2016
-
-
Sergei Trofimovich authored
There is two types of options passed directly to 'ld' (and not to 'gcc' driver): - CONF_LD_LINKER_OPTS_STAGE$4 - EXTRA_LD_OPTS This changedoes two things: - split 'EXTRA_LD_OPTS' into two variables: - EXTRA_LD_OPTS (accepts 'gcc' wrapper options) - EXTRA_LD_LINKER_OPTS (accepts raw 'ld' options) - wraps all LD_LINKER options as '-Wl,' when passed to 'gcc' driver. Fixes https://phabricator.haskell.org/D2776 Signed-off-by:
Sergei Trofimovich <siarheit@google.com> (cherry picked from commit 87c3b1d4)
-
- Dec 17, 2016
-
-
Ben Gamari authored
This reverts commit 9d9eaeca due to #12993.
-
GHC uses gcc, not ld, for linking. Consequently all flags to be interpreted by ld need to be prefixed by -optl,-Wl on the GHC command line. Test Plan: Validate on OpenBSD Reviewers: austin, rwbarton Reviewed By: rwbarton Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2776 (cherry picked from commit f48f5a9e)
-
- Dec 16, 2016
-
-
Ben Gamari authored
(cherry picked from commit 54706738cd452717c7ec1a91927c3941c8037c7b)
-
- Dec 15, 2016
-
-
Sergei Trofimovich authored
Before the change result of expression ArchSupportsSMP="$(if $(filter $(ARM_ISA),ARMv5 ARMv6),NO,YES)" to evaluate to ArchSupportsSMP="YES" After the change it's ArchSupportsSMP=YES Thanks to orion for the fix! Fixes Trac #12981 Signed-off-by:
Sergei Trofimovich <siarheit@google.com> (cherry picked from commit 52c5e553)
-
Ryan Scott authored
Summary: We mentioned that there were "some programs" that failed to typecheck due to #12784, but given how surprisingly common this issue has been, it'd be prudent to at least give one example of the bug in the release notes. Reviewers: simonpj, bgamari, austin, rwbarton Reviewed By: rwbarton Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2786 GHC Trac Issues: #12784 (cherry picked from commit eec02ab7)
-
- Dec 13, 2016
-
-
Ben Gamari authored
The test associated with this has given us too much trouble. It's not worth the pain for a minor release. This reverts commit fb0f4cf6.
-
Ben Gamari authored
-
Ben Gamari authored
-
- Dec 02, 2016
-
-
When rts is forked it doesn't update toplevel handler, so UserInterrupt exception is sent to Thread1 that doesn't exist in forked process. We install toplevel handler when fork so signal will be delivered to the new main thread. Fixes #12903 Reviewers: simonmar, austin, erikd, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2770 GHC Trac Issues: #12903 (cherry picked from commit 895a131f)
-
select() is limited to 1024 file descriptors. This actually blew up in a very hard-to-debug way in our production system when using the hinotify package. Test Plan: libraries/tests pass, paricularly hGetBuf001 which exercises this code. Reviewers: niteria, erikd, austin, hvr, bgamari Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2785 GHC Trac Issues: #12912 (cherry picked from commit f46369b8)
-
Ryan Scott authored
Test Plan: Read it, commit it, merge it, ship it Reviewers: goldfire, bgamari, austin, hvr, simonpj Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2774 GHC Trac Issues: #12907 (cherry picked from commit a452c6e5)
-
Gabor Greif authored
(cherry picked from commit be8a47f5)
-
(cherry picked from commit 36e36227)
-
Simon Peyton Jones authored
When we had f :: ( _ ) => blah we were failing to call growThetaTyVars, as we do in the no-type-signature case, and that meant that we weren't generalising over the right type variables. I'm quite surprised this didn't cause problems earlier. Anyway Trac #12844 showed it up and this patch fixes it (cherry picked from commit 1bfff60f)
-
- Nov 29, 2016
-
-
Ryan Scott authored
Summary: Resolves #12881. Test Plan: Read it, commit it, merge it, ship it Reviewers: hvr, simonpj, austin, bgamari Reviewed By: simonpj Subscribers: simonpj, thomie Differential Revision: https://phabricator.haskell.org/D2760 GHC Trac Issues: #12881 (cherry picked from commit abd4a4c1)
-
- Nov 20, 2016
-
-
Strangely my previous attempts at resolving this all seemed to end in perplexing segmentation faults in the GHC testsuite (including some rather recent attempts). Somehow this attempt miraculously works. However, there was one wrinkle that I still need to work out fully: we need to consider Lits as non-trivial in cpeArg. Failure to do this means that we would transform something like, $trModule = TrModule "HelloWorld"# into $trModule = case "HelloWorld"# of x { __DEFAULT -> TrModule x } Which then fails the consistentStgInfo check in CoreToStg for reasons that I am still trying to work out. Mark T12757 as fixed Reviewers: simonmar, simonpj, austin Reviewed By: simonpj Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2666 GHC Trac Issues: #11158 (cherry picked from commit 967dd5c9)
-
- Nov 19, 2016
-
-
Test Plan: Validate, expected to fail Reviewers: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2665 GHC Trac Issues: #12757 (cherry picked from commit b5460dd6)
-
- Nov 18, 2016
-
-
Ben Gamari authored
-
Test Plan: `validate --slow` Reviewers: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2536 GHC Trac Issues: #12019 (cherry picked from commit d1b4fec1)
-
- Nov 17, 2016
-
-
Edward Z. Yang authored
This is a stopgap fix for GHC 8.0 bug #12485: in particular, it relaxes need for -package-db flags to be given in dependency order. The trade-off is that we are a lot more unsafe when there are packages with duplicate 'id's in the database stack: the new code will not do an ABI compatibility check: if two packages have the same 'id', they are assumed to be ABI compatible. If this is not true, GHC may build segfaulting executables. Missing test updates, but I'm putting it up so people can take a look. In GHC 8.2, we'll record ABIs for all dependencies, allowing GHC to make better decisions about shadowing. Signed-off-by:
Edward Z. Yang <ezyang@cs.stanford.edu> Test Plan: validate Reviewers: austin, niteria, bgamari, simonmar Reviewed By: simonmar Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2613 GHC Trac Issues: #12485
-
It turned out that finalizers were run too early and information resulting from simplifying constraints was not available. This patch runs finalizers after a first call to simplifyTop, and then calls simplifyTop a second time to deal with constraints that could result from running the finalizers. Fixes T12777 Test Plan: ./validate Reviewers: goldfire, simonpj, bgamari, austin Reviewed By: simonpj Subscribers: mpickering, mboes, thomie Differential Revision: https://phabricator.haskell.org/D2659 GHC Trac Issues: #12777 (cherry picked from commit 231a3ae1)
-
- Nov 16, 2016
-
-
Ben Gamari authored
-
- Nov 15, 2016
-
-
Ben Gamari authored
-
- Nov 14, 2016
-
-
Ben Gamari authored
-
Sylvain Henry authored
This patch makes the RTS linker skip 64-bit symbol table entries. See https://mail.haskell.org/pipermail/ghc-devs/2016-November/013210.html Test Plan: validate Reviewers: austin, erikd, simonmar, bgamari Reviewed By: bgamari Subscribers: osa1, thomie Differential Revision: https://phabricator.haskell.org/D2697 GHC Trac Issues: #12827 (cherry picked from commit 1b336d90)
-
On architectures with weak memory consistency a write barrier is needed before the write to the pointer array. Fixes #12469 Test Plan: rebuilt Stackage nightly twice on powerpc64le Reviewers: hvr, rrnewton, erikd, austin, simonmar, bgamari Reviewed By: erikd, bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2525 GHC Trac Issues: #12469 (cherry picked from commit 2cb8cc26)
-
It seems like GCC versions prior to 4.8 exit with code 0 when faced with an unrecognized flag. Silly compilers. Test Plan: Validate Reviewers: hvr, austin, ggreif Reviewed By: ggreif Subscribers: thomie, erikd Differential Revision: https://phabricator.haskell.org/D2707 GHC Trac Issues: #12759 (cherry picked from commit 011af2bf)
-
Ben Gamari authored
-
As reported in #12812, the runtime system fails to build when linked with gold due to a missing dependency on libpthread. Additionally, rts/package.conf.in uses the WORD_SIZE_IN_BITS macro defined by MachDeps.h, which it does not #include. Fix this. Test Plan: Validate with gold linker Reviewers: hsyl20, austin, erikd, simonmar Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2695 GHC Trac Issues: #12816 (cherry picked from commit 2cfbee89)
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
- Nov 11, 2016
-
-
Otherwise we end up looking in the wrong place for dynamic libraries on Windows. This addresses a regression introduced by D2611. See #12479. Test Plan: validate across platforms Reviewers: austin Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2640 GHC Trac Issues: #12479 (cherry picked from commit 75e69edb498511cf2b28dec4e14e6d11232f3e32)
-
David Feuer authored
Instead of pulling a token and looking for `'('` or `')'`, just look for the character itself. This prevents us from lexing every single item twice, once to see if it's a left parenthesis and once to actually parse it. Partially fixes #12665 Test Plan: Validate Reviewers: austin, bgamari, hvr Reviewed By: bgamari Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2623 GHC Trac Issues: #12665
-