[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 21 commits: Fix requirements on T25240
Marge Bot (@marge-bot)
gitlab at gitlab.haskell.org
Mon Dec 9 14:34:35 UTC 2024
Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC
Commits:
090fc7c1 by Peter Trommler at 2024-12-07T03:41:21-05:00
Fix requirements on T25240
T25240 doesn't need RTS linker, GHCi is sufficient and GHCi can also be
dynamically linked.
- - - - -
3fb5d399 by Peter Trommler at 2024-12-07T03:41:21-05:00
Fix requirements for T25155
Loading C objects requires RTS linker.
- - - - -
4c58bdf6 by Leary at 2024-12-07T03:42:07-05:00
TH: Add typed variants of dataToExpQ and liftData
This commit introduces to template-haskell (via ghc-internal) two
functions `dataToCodeQ` and `liftDataTyped`, typed variants of
`dataToExpQ` and `liftData` respectively.
Tested in: `dataToCodeQUnit`.
- - - - -
63027593 by Serge S. Gulin at 2024-12-08T13:52:05+03:00
JS: Basic cleanup for unused stuff to simplify things.
1. Make `staticInitStat`, `staticDeclStat`, `allocUnboxedConStatic`, `allocateStaticList`, `jsStaticArg` local to modules.
2. Remove unused `hdRawStr`, `hdStrStr` from Haskell and JavaScript (`h$pstr`, `h$rstr`, `h$str`).
3. Introduce a special type `StaticAppKind` enumeration and `StaticApp` to represent boxed scalar static applications. Originally, StaticThunk supported to pass Maybe when it became Nothing for initializied thunks in an alternatie way but it is not used anymore.
- - - - -
a9f8f1fb by Serge S. Gulin at 2024-12-08T14:10:45+03:00
JS: Add trivial optimizations for `unpackCString` and `unpackCStringUtf8`.
It became possible due of introduction strings unfloating at Sinker pass (#13185). Earns few more bytes at optimizations.
- - - - -
b519c06b by Serge S. Gulin at 2024-12-08T15:50:26+03:00
JS: Specialize unpackCString# CAFs (fixes #24744)
Code analysis shown that such optimization would be possible out of the box if `cachedIdentForId` allowed to do that for Haskell `Id`s which are represented by few JavaScript `Ident`s. It is a usual for strings which are represented at JavaScript as a pair of 2 values: the string content and the offset where to start reading actual string from the full content. Usually offset is 0 but technically we need to allow such complex structures to be treated as "global".
Enabling it there shown that `genToplevelRhs` and `globalOccs` had inaccuracies in their implementations:
1. `globalOccs` operated over JavaScript's `Ident`s but for complex structures it didn't pay attention to the fact that different Idents actually could be pointed to same Id. Now the algo is changed to calculate occurencies for Ids.
2. `genToplevelRhs` didn't assume that different Idents pointed to same Id can have mixed order of occurence. But actually the order is important. Strings are encoded into 2 variables where first is content and second is offset and their order are not interchangeable. It is fixed by regeneration Idents from collected Ids which is fine because all Idents generation is passed through the Cache and they are quasi-stable.
- - - - -
2c278245 by Ben Gamari at 2024-12-09T09:34:23-05:00
testsuite: Unmark T14028 as broken on FreeBSD
This now appears to pass on FreeBSD 14.
Closes #19723.
- - - - -
86fa07cc by Ben Gamari at 2024-12-09T09:34:23-05:00
gitlab-ci: Migrate FreeBSD runner tag to FreeBSD 14
- - - - -
547cf62d by Ben Gamari at 2024-12-09T09:34:23-05:00
gitlab-ci: Reintroduce FreeBSD 14 job
- - - - -
75371106 by Ben Gamari at 2024-12-09T09:34:23-05:00
gitlab-ci: Allow use of newer cabal-install bindists
Newer cabal-install bindists have internal directory structure.
Here we detect and account for the presence of such structure.
- - - - -
6fca0f91 by Ben Gamari at 2024-12-09T09:34:23-05:00
gitlab-ci: Enable documentation build on FreeBSD 14
- - - - -
639ed0a4 by Ben Gamari at 2024-12-09T09:34:23-05:00
configure: Implement ld override whitelist
Bring `configure` into alignment with `ghc-toolchain`, ensuring that the
ld-override logic will only take effect on Linux and Windows.
Fixes #25501.
- - - - -
864fa9a0 by Ben Gamari at 2024-12-09T09:34:24-05:00
gitlab-ci: Use system libffi on FreeBSD
- - - - -
d7674243 by Ben Gamari at 2024-12-09T09:34:24-05:00
testsuite: Mark linker_unload as broken on FreeeBSD
Due to #25491.
- - - - -
82153d2e by Ben Gamari at 2024-12-09T09:34:24-05:00
gitlab-ci: Prefer system toolchain on FreeBSD
It's not uncommon to find machines with gcc installed via ports. We
should be using the system's default clang-based toolchain instead.
- - - - -
24bfdf9e by Ben Gamari at 2024-12-09T09:34:24-05:00
testsuite: Mark T21969 as broken on FreeBSD
Due to #25512.
- - - - -
6c978d77 by Ben Gamari at 2024-12-09T09:34:24-05:00
testsuite: Mark RestartEventLogging as broken on FreeBSD
I am seeing this fail quite reproducibly.
Due to #19724.
- - - - -
1db925ef by Ben Gamari at 2024-12-09T09:34:24-05:00
testsuite: Mark T16180 as "broken" on FreeBSD
Sadly we in fact need to skip it as it merely times out during
compilation.
See #14012.
- - - - -
7ae70fa6 by Ben Gamari at 2024-12-09T09:34:24-05:00
testsuite: Skip T16992 unless in slow speed
This test has extraordinary memory requirements and tests a rather
niche aspect of the compact region mechanism. It has been suggested
multiple times that we shouldn't run it in the default testsuite
configuration. Finally implement this.
See #21890.
See #21892.
- - - - -
6e93245e by Ben Gamari at 2024-12-09T09:34:24-05:00
gitlab/ci: Don't clobber RUNTEST_ARGS
Previously the logic handling `IGNORE_PERF_FAILURES` clobbered the
user's `RUNTEST_ARGS`. Fix this.
- - - - -
de0304c9 by Rodrigo Mesquita at 2024-12-09T09:34:24-05:00
Revert mapMG renaming
We had previously renamed this function for consistency, but that caused unnecessary breakage
- - - - -
30 changed files:
- .gitlab/ci.sh
- .gitlab/generate-ci/gen_ci.hs
- .gitlab/jobs.yaml
- compiler/GHC.hs
- compiler/GHC/StgToJS/Apply.hs
- compiler/GHC/StgToJS/Arg.hs
- compiler/GHC/StgToJS/CodeGen.hs
- compiler/GHC/StgToJS/Expr.hs
- compiler/GHC/StgToJS/Ids.hs
- compiler/GHC/StgToJS/Linker/Linker.hs
- compiler/GHC/StgToJS/Monad.hs
- compiler/GHC/StgToJS/Object.hs
- compiler/GHC/StgToJS/Symbols.hs
- compiler/GHC/StgToJS/Types.hs
- compiler/GHC/Unit/Module/Graph.hs
- libraries/ghc-compact/tests/all.T
- libraries/ghc-internal/CHANGELOG.md
- libraries/ghc-internal/src/GHC/Internal/TH/Lift.hs
- libraries/template-haskell/changelog.md
- libraries/template-haskell/tests/all.T
- + libraries/template-haskell/tests/dataToCodeQUnit.hs
- + libraries/template-haskell/tests/dataToCodeQUnit.stdout
- m4/find_ld.m4
- rts/js/string.js
- testsuite/driver/testlib.py
- testsuite/tests/concurrent/should_run/all.T
- testsuite/tests/ghci/linking/T25240/all.T
- testsuite/tests/ghci/linking/all.T
- testsuite/tests/interface-stability/template-haskell-exports.stdout
- testsuite/tests/javascript/Makefile
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4b79d862e13e50943130f525c403c7ecd7b9459b...de0304c9e844ee29fd4d2d9dea99b94950fdc4e6
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4b79d862e13e50943130f525c403c7ecd7b9459b...de0304c9e844ee29fd4d2d9dea99b94950fdc4e6
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20241209/317e1fce/attachment-0001.html>
More information about the ghc-commits
mailing list