[Git][ghc/ghc][wip/js-th] 6 commits: JS: implement TH support

Sylvain Henry (@hsyl20) gitlab at gitlab.haskell.org
Wed Jun 14 14:00:56 UTC 2023



Sylvain Henry pushed to branch wip/js-th at Glasgow Haskell Compiler / GHC


Commits:
8b24618c by Sylvain Henry at 2023-06-14T16:06:20+02:00
JS: implement TH support

- Add ghc-interp.js bootstrap script for the JS interpreter
- Interactively link and execute iserv code from the ghci package
- Incrementally load and run JS code for splices into the running iserv

Co-authored-by: Luite Stegeman <stegeman at gmail.com>

- - - - -
9c7dacaa by Sylvain Henry at 2023-06-14T16:06:20+02:00
Don't use getKey

- - - - -
3a92443d by Sylvain Henry at 2023-06-14T16:06:20+02:00
Stg: return imported FVs

This is used to determine what to link when using the interpreter.
For now it's only used by the JS interpreter but it could easily be used
by the native interpreter too (instead of extracting names from compiled BCOs).

- - - - -
f7558e4b by Sylvain Henry at 2023-06-14T16:06:20+02:00
Fix some recompilation avoidance tests

- - - - -
d5fa0666 by Sylvain Henry at 2023-06-14T16:06:20+02:00
TH_import_loop is now broken as expected

- - - - -
ffe3e5c1 by Sylvain Henry at 2023-06-14T16:06:20+02:00
JS: always recompile when TH is enabled (cf #23013)

- - - - -


30 changed files:

- compiler/GHC.hs
- compiler/GHC/Builtin/Names.hs
- compiler/GHC/Driver/Main.hs
- compiler/GHC/Driver/Make.hs
- compiler/GHC/Driver/Pipeline.hs
- compiler/GHC/Iface/Recomp.hs
- compiler/GHC/Linker/Loader.hs
- compiler/GHC/Runtime/Context.hs
- compiler/GHC/Runtime/Interpreter.hs
- + compiler/GHC/Runtime/Interpreter/JS.hs
- + compiler/GHC/Runtime/Interpreter/Process.hs
- compiler/GHC/Runtime/Interpreter/Types.hs
- + compiler/GHC/Runtime/Utils.hs
- compiler/GHC/Stg/FVs.hs
- compiler/GHC/Stg/Pipeline.hs
- compiler/GHC/StgToJS/CodeGen.hs
- compiler/GHC/StgToJS/Deps.hs
- compiler/GHC/StgToJS/Linker/Linker.hs
- compiler/GHC/StgToJS/Linker/Types.hs
- compiler/GHC/StgToJS/Object.hs
- compiler/GHC/StgToJS/Types.hs
- compiler/GHC/Tc/Gen/Splice.hs
- compiler/GHC/Utils/Misc.hs
- compiler/ghc.cabal.in
- + ghc-interp.js
- hadrian/src/Base.hs
- hadrian/src/Rules/Generate.hs
- libraries/ghci/GHCi/Run.hs
- libraries/ghci/ghci.cabal.in
- libraries/template-haskell/tests/all.T


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/525a94473c4b0e6e572ecbe8a178972fa1b127e0...ffe3e5c1e3868bb23bc1ce24dd671729d387f723

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/525a94473c4b0e6e572ecbe8a178972fa1b127e0...ffe3e5c1e3868bb23bc1ce24dd671729d387f723
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/20230614/c4e507e4/attachment.html>


More information about the ghc-commits mailing list