[Git][ghc/ghc][wip/js-th] 77 commits: Merge libiserv with ghci
Sylvain Henry (@hsyl20)
gitlab at gitlab.haskell.org
Thu Jan 26 09:14:51 UTC 2023
Sylvain Henry pushed to branch wip/js-th at Glasgow Haskell Compiler / GHC
Commits:
31fda02b by Sylvain Henry at 2023-01-26T10:19:13+01:00
Merge libiserv with ghci
- - - - -
ff02c8f7 by Sylvain Henry at 2023-01-26T10:19:13+01:00
WIP: add support for a third TH runner for JS
- - - - -
0ba81e4d by Sylvain Henry at 2023-01-26T10:19:13+01:00
Install THRunner.js
- - - - -
4523033b by Sylvain Henry at 2023-01-26T10:19:13+01:00
Put JS interp in its own module
- - - - -
82784370 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Refactor a bit to make IServ and JSInterp more alike
- - - - -
7a7ede97 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Fix warning
- - - - -
8c298b13 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Add placeholders
- - - - -
fef0c35b by Sylvain Henry at 2023-01-26T10:19:13+01:00
Initialize JS interpreter
- - - - -
1cb32d49 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Interpret one dumb message :D
- - - - -
f3a1ead0 by Sylvain Henry at 2023-01-26T10:19:13+01:00
WIP: rts linking function
- - - - -
4eeac8de by Sylvain Henry at 2023-01-26T10:19:13+01:00
Spawn NodeJS
- - - - -
358c53cf by Sylvain Henry at 2023-01-26T10:19:13+01:00
WIP: start interacting with interpreter
Failing because we can't use readSync with stdin...
- - - - -
879f5f2d by Sylvain Henry at 2023-01-26T10:19:13+01:00
Load the RTS
- - - - -
2c89667c by Sylvain Henry at 2023-01-26T10:19:13+01:00
Implement MallocStrings
- - - - -
f80ca5c8 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Support InitLinker command
- - - - -
c66ae10c by Sylvain Henry at 2023-01-26T10:19:13+01:00
More commands
- - - - -
fe0b942d by Sylvain Henry at 2023-01-26T10:19:13+01:00
Pass jsLookupSymbol
- - - - -
5ac99b60 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Codegen CoreExpr into JS
- - - - -
b26b479e by Sylvain Henry at 2023-01-26T10:19:13+01:00
Correctly export symbol
- - - - -
02a09d8c by Sylvain Henry at 2023-01-26T10:19:13+01:00
Refactor computeLinkDepenencies
- Better input/output types
- Remove side-effects (ppr)
- Prepare for two-phase linking: plan, link
- Prepare for three-phase linking: plan, remove already linked, link
- - - - -
619673b6 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Rename LinkableUnit duplicated type into BlockRef
- - - - -
ed8fc947 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Implement two-phase linking: plan, link
- - - - -
951c08f2 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Rename JS Unit into Block for clarity.
Also add LocatedBlockInfo type instead of using tuple
- - - - -
09398255 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Always include global blocks in LinkPlan
- - - - -
1e2fbab0 by Sylvain Henry at 2023-01-26T10:19:13+01:00
Replace predicate with declarative list of blocks to link (easier to diff)
- - - - -
a10891bf by Sylvain Henry at 2023-01-26T10:19:14+01:00
Use sets instead of lists (easier to diff)
- - - - -
f3a90493 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Implement incremental linking
- - - - -
2c138bfe by Sylvain Henry at 2023-01-26T10:19:14+01:00
Ensure that we link all blocks
- - - - -
d1ffc8ce by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove useless link plan field and fix root symbol
- - - - -
1539575d by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove import
- - - - -
c7d269c9 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Link with implicit TH unit
- - - - -
3daf0cea by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove some debug info
- - - - -
a831e86e by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove unused iservmain.c
- - - - -
47ce4d63 by Sylvain Henry at 2023-01-26T10:19:14+01:00
WIP: use JS interp in runTH
- - - - -
dbc4dbfa by Sylvain Henry at 2023-01-26T10:19:14+01:00
Wire ghci unit
- - - - -
c122a928 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Load interpreter server
- - - - -
7f8702fc by Sylvain Henry at 2023-01-26T10:19:14+01:00
Renamed LinkSpec fields for clarity
- - - - -
5a6b121e by Sylvain Henry at 2023-01-26T10:19:14+01:00
Disable MkConInfoTable command and InfoTable module with JS
- - - - -
9cbba5ea by Sylvain Henry at 2023-01-26T10:19:14+01:00
Run the server!
- - - - -
66072010 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Pass some commands to the server
- - - - -
a8e939e2 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Reuse more of IServ for the JS interp
- - - - -
c6601727 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Fix fdGetMode
- - - - -
e68a7ac3 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Implement LoadJS iserv message
Still failing to find the h$loadJS function for some reason
- - - - -
b8beaf87 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Give access to h$loadJS to loaded code
- - - - -
af76f6a3 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Move log message into h$loadJS
- - - - -
4a368bb3 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Handle more messages
- - - - -
cecc2a61 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Replace HValue with Any
- - - - -
c8fa2d4c by Sylvain Henry at 2023-01-26T10:19:14+01:00
s/RemoteRef/HeapRef
- - - - -
eb01e331 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Implement LookupClosure message
- - - - -
8d01e3d6 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Don't forget to eval() the given string
- - - - -
6276429b by Sylvain Henry at 2023-01-26T10:19:14+01:00
HValue renaming leftovers
- - - - -
25bee0f9 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Implement RunModFinalizers
- - - - -
64c04cb7 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove delays
- - - - -
19c80e19 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Replace iservCall with sendMessage
- - - - -
b65a7a72 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Start making Iserv and JS interp closer
- - - - -
1e7020d3 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove useless/unused commands
- - - - -
2626e8bd by Sylvain Henry at 2023-01-26T10:19:14+01:00
More factorization
- - - - -
06855e02 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Cleanup
- - - - -
87a56d67 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove now useless HasInterpProcess class
- - - - -
cede5613 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Don't use Interp when we already have an interp instance
- - - - -
ec3c0dc9 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Refactor hptModulesBelow
- - - - -
d143c777 by Sylvain Henry at 2023-01-26T10:19:14+01:00
More refactoring
- - - - -
545cd3f1 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Add jsLinkObjects to prepare for loading home-unit objects
- - - - -
a567f23d by Sylvain Henry at 2023-01-26T10:19:14+01:00
Allow getDeps to update module info during its traversal
- - - - -
5416a40d by Sylvain Henry at 2023-01-26T10:19:14+01:00
Load home unit dependencies too
- - - - -
96927908 by Luite Stegeman at 2023-01-26T10:19:14+01:00
make thrunner stdin asynchronous, fixing macOS/Windows
warning: buffering very inefficient
- - - - -
47640308 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Testsuite: enable TH for the JS target
- - - - -
790b332f by Sylvain Henry at 2023-01-26T10:19:14+01:00
Disable verbose messages
- - - - -
5feeded8 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Simplify JS protocole a great deal (use strings)
- - - - -
53634447 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Revert "More refactoring"
This reverts commit 1942705b24f7c956a2dc15028daed41e24c9d31d.
- - - - -
47c7a05c by Sylvain Henry at 2023-01-26T10:19:14+01:00
Revert "Refactor hptModulesBelow"
This reverts commit 9840d044dec76cd3a6fb34af0bb6121d7ce933b8.
- - - - -
befd0c24 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Rename stuff
- - - - -
0dee506d by Sylvain Henry at 2023-01-26T10:19:14+01:00
Fix typo
- - - - -
a8cd3934 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Make whitespace linter happy
- - - - -
85a8d9ac by Sylvain Henry at 2023-01-26T10:19:14+01:00
Revert renamings
- - - - -
4c5831aa by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove mkFreshInterpSymbol
- - - - -
c4a0d803 by Sylvain Henry at 2023-01-26T10:19:14+01:00
Remove GhcjsEnv
Subsumed by incremental linker state
- - - - -
30 changed files:
- CODEOWNERS
- cabal.project-reinstall
- compiler/GHC.hs
- compiler/GHC/Driver/Main.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/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/Rts/Rts.hs
- compiler/GHC/StgToJS/Types.hs
- compiler/GHC/Tc/Gen/Splice.hs
- compiler/GHC/Unit/Types.hs
- compiler/ghc.cabal.in
- + ghc-interp.js
- hadrian/src/Base.hs
- hadrian/src/Packages.hs
- hadrian/src/Rules/Generate.hs
- hadrian/src/Settings/Default.hs
- hadrian/src/Settings/Packages.hs
- libraries/base/System/Posix/Internals.hs
- libraries/base/jsbits/base.js
- libraries/ghci/GHCi/Message.hs
- libraries/ghci/GHCi/RemoteTypes.hs
- libraries/ghci/GHCi/Run.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/00ed5505c8247c11cd6bc6420ddd2f6482eee823...c4a0d803082810e1459d1eda430eda4aa17b8444
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/00ed5505c8247c11cd6bc6420ddd2f6482eee823...c4a0d803082810e1459d1eda430eda4aa17b8444
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/20230126/0d00681f/attachment-0001.html>
More information about the ghc-commits
mailing list