- 15 May, 2017 6 commits
-
-
Dave Laing authored
Test Plan: validate Reviewers: austin, bgamari, simonmar, mpickering Reviewed By: mpickering Subscribers: mpickering, rwbarton, thomie GHC Trac Issues: #12610 Differential Revision: https://phabricator.haskell.org/D3584
-
Ben Gamari authored
-
niteria authored
This reverts commit 7fea7121. It turns out that on a newly added MultiLayerModules test case it gets very expensive to union the transitive module sets while preserving determinism. Fortunately, we can just sort to restore determinism when converting imp_dep_mods to a list. Test Plan: ./validate Reviewers: simonmar, austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3577
-
niteria authored
I'm optimizing a case that is well approximated by multiple layers of modules where every module in a layer imports all the modules in the layer below. It turns out I regressed performance on such cases in 7fea7121. I'm adding a test case to track improvements and prevent future regressions. Test Plan: ./validate Reviewers: simonmar, austin, bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3575
-
niteria authored
I'm optimizing a case that is well approximated by multiple layers of modules where every module in a layer imports all the modules in the layer below. It turns out I regressed performance on such cases in 7fea7121. I'm adding a test case to track improvements and prevent future regressions. Test Plan: ./validate Reviewers: simonmar, austin, bgamari Reviewed By: simonmar Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3575
-
- 14 May, 2017 5 commits
-
-
Sergei Trofimovich authored
GHC build fails for powerpc-unknown-linux-gnu and hppa-unknown-linux-gnu targets as: rts_dist_HC rts/dist/build/RtsStartup.o rts/linker/ElfTypes.h:23:4: error: error: #error "Unsupported arch!" Before the change code tried to whitelist architectures and classify them into ELF32/ELF64. It does not work for UNREG arches like 'hppa', 'sparc64', 'm68k', 'mips'. It is nuanced for things like mips64 and x86_64: 'mips64-unknown-linux-gnu-gcc -mabi=64' is ELFCLASS64 'mips64-unknown-linux-gnu-gcc' is ELFCLASS32 'x86_64-pc-linux-gnu-gcc' is ELFCLASS64 'x86_64-pc-linux-gnu-gcc -mx32' is ELFCLASS32 Here it's not enough to know HOST_ARCH. We really need to know ABI. The change uses '__LP64__' as a proxy for ELFCLASS64. Signed-off-by:
Sergei Trofimovich <slyfox@gentoo.org> Reviewers: angerman, simonmar, austin, bgamari, erikd Reviewed By: angerman, bgamari, erikd Subscribers: rwbarton, thomie GHC Trac Issues: #13696 Differential Revision: https://phabricator.haskell.org/D3583
-
Sergei Trofimovich authored
Fixes gcc-7.1.0 warnings of form: rts/sm/Scav.c:559:9: error: error: this statement may fall through [-Werror=implicit-fallthrough=] scavenge_fun_srt(info); ^~~~~~~~~~~~~~~~~~~~~~ Many of places are indeed unobvious and some are already annotated by comments. Signed-off-by:
Sergei Trofimovich <slyfox@gentoo.org>
-
Sergei Trofimovich authored
Found by gcc-7.1 which reported build error as: rts/ProfilerReportJson.c:23:16: error: error: comparison between pointer and zero character constant [-Werror=pointer-compare] for (; str != '\0' && len > 0; str++) { ^~ | 23 | for (; str != '\0' && len > 0; str++) { | ^ Unfixed code in context: ```c static void escapeString(char const* str, char *out, int len) { len--; // reserve character in output for terminating NUL for (; str != '\0' && len > 0; str++) { char c = *str; ``` The intent here is to process 'len' (if positive) or '\0'-terminator in 'str' but dereference was missing. Signed-off-by:
Sergei Trofimovich <slyfox@gentoo.org>
-
Ben Gamari authored
-
Sergei Trofimovich authored
Signed-off-by:
Sergei Trofimovich <slyfox@gentoo.org>
-
- 13 May, 2017 2 commits
-
-
David Feuer authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #12600 Differential Revision: https://phabricator.haskell.org/D3580
-
David Feuer authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #11272 Differential Revision: https://phabricator.haskell.org/D3561
-
- 12 May, 2017 10 commits
-
-
Ben Gamari authored
This partially reverts commit 37299536 as it doesn't actually fix #13594. Namely it does not revert the mkPrefixFunRhs refactoring since this is rather independent from the functional changes. Going to try again with a whole working patch
-
Ben Gamari authored
Fixes lazy IO bug
-
Rufflewind authored
Test Plan: validate Reviewers: austin, bgamari, rwbarton Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13664 Differential Revision: https://phabricator.haskell.org/D3549
-
Lennart Spitzner authored
Rename isModuleInterpreted to moduleIsBootOrNotObjectLinkable because a) there already is a moduleIsInterpreted function in the same module b) I have no idea if the (new) semantic of the bool returned matches some understanding of "is interpreted".
-
David Feuer authored
Instead of excluding `isAnyInlinePragma`, just exclude `isInlinePragma`. This makes GHC behave as documented; the user's guide only indicates that GHC does not automatically add SCCs to `INLINE` bindings. Fixes #12962. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: DemiMarie, osa1, Mikolaj, simonpj, rwbarton, thomie GHC Trac Issues: #12962 Differential Revision: https://phabricator.haskell.org/D3550
-
Ryan Scott authored
This issue was only ever present in the GHC 8.0.1 release candidates, but let's add a regression test for it just to be safe.
-
Ryan Scott authored
Commit a7ee2d4c fixed #11966. Here's a regression test for it.
-
Ryan Scott authored
Summary: Commit 0c9d9dec (the fix for #13271) fixed the programs in #12083. This adds regression tests for them. Test Plan: make test TEST="T12083a T12083b" Reviewers: austin, bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #12083 Differential Revision: https://phabricator.haskell.org/D3573
-
Gabor Greif authored
-
Ben Gamari authored
-
- 11 May, 2017 17 commits
-
-
Matthew Pickering authored
Summary: Lots of refactoring in RnEnv to reduce code duplication. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13545 Differential Revision: https://phabricator.haskell.org/D3507
-
Ben Gamari authored
-
Ben Gamari authored
This adds the GHCi variant of the failing program in #13594. Also, I inadvertently changed the T13594 test previously introduced in a way that made it no longer faithfully test the ticket as written. Fix this.
-
Ben Gamari authored
-
Ben Gamari authored
This requirement was introduced around 7.8 but was never documented. Resolves #9287.
-
Ben Gamari authored
This ended up being quite simple. Reviewers: austin, goldfire, mpickering Subscribers: rwbarton, shlevy, thomie GHC Trac Issues: #13688 Differential Revision: https://phabricator.haskell.org/D3571
-
Ryan Scott authored
`collect_lpat` was missing a case for `HsSplicedPat`, which caused incorrect renaming of TH-spliced pattern variables. Fixes #13473. Test Plan: make test TEST=T13473 Reviewers: facundominguez, austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13473 Differential Revision: https://phabricator.haskell.org/D3572
-
Ryan Scott authored
Fixes #13677 by parenthesizing equalities in a sufficiently high pretty-printing context. Test Plan: make test TEST=T13677 Reviewers: goldfire, austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13677 Differential Revision: https://phabricator.haskell.org/D3570
-
Matthew Pickering authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3565
-
Matthew Pickering authored
Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3564
-
Ben Gamari authored
StgCRunAsm.S provides StgCRun on powerpc64le platforms when registerised. However, in the unregisterised setting we use the mini-interpreter and consequently shouldn't build StgCRunAsm.S lest we get duplicate symbols. Test Plan: Build unregisterised compiler on AIX. Reviewers: hvr, trommler, austin, simonmar Reviewed By: trommler, simonmar Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3560
-
AaronFriel authored
Adds a check in `rnStmt`, in sub-expr `getFailFunction`, to determine if the pattern of a bind statement is irrefutible. If so, skip looking up the `fail` name. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13649 Differential Revision: https://phabricator.haskell.org/D3553
-
mrkgnao authored
Given multiple in-scope constructors with the same name, say `A`, and a function of type `A -> Int`, say, the compiler reports both a "type `A` is not in scope" and (incorrectly) an ambiguity error. The latter shouldn't be there if `DataKinds` isn't enabled. This issue was recommended to me by @mpickering as a suitable first task, and the fix was also outlined in the original Trac ticket. It involved a simple reordering of the steps taken in `lookup_demoted` in `RnEnv.hs`. The fix is to make the `DataKinds` check happen earlier, ensuring that the ambiguity check doesn't happen at all if we know the constructors couldn't have been promoted. Signed-off-by:
Soham Chowdhury <chow.soham@gmail.com> Reviewers: mpickering, austin, bgamari Reviewed By: mpickering, bgamari Subscribers: rwbarton, thomie GHC Trac Issues: #13568 Differential Revision: https://phabricator.haskell.org/D3547
-
Ben Gamari authored
Doug Wilson astutely noticed that the pattern match checker was spending a significant amount of time in mkPmId. It turns out that it was producing Ids with OccNames that were generated from a Unique, which are non-trivial to render. Since Var is strict in Name, Name in OccName, and OccName in its FastString all of this encoding work was being done despite the fact that it was (as far as I can tell) never actually needed. Test Plan: Validate, note allocations of `T11195` Reviewers: austin, gkaracha Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3568
-
Ryan Scott authored
Commit e7985ed2 happened to fix #12850, so let's add a regression test for the program reported in #12850.
-
Moritz Angermann authored
This reverts commit 8d4bce42.
-
Moritz Angermann authored
we do the same for the rts already. And using the configure script should be more robust than hand-picking the OSs here. Reviewers: austin, bgamari Reviewed By: bgamari Subscribers: rwbarton, thomie Differential Revision: https://phabricator.haskell.org/D3563
-