[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 6 commits: testsuite: Add test for atomicSwapIORef
Marge Bot (@marge-bot)
gitlab at gitlab.haskell.org
Tue May 9 18:49:16 UTC 2023
Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC
Commits:
b970e64f by Ben Gamari at 2023-05-09T08:41:33-04:00
testsuite: Add test for atomicSwapIORef
- - - - -
81cfefd2 by Ben Gamari at 2023-05-09T08:41:53-04:00
compiler: Implement atomicSwapIORef with xchg
As requested by @treeowl in CLC#139.
- - - - -
6b29154d by Ben Gamari at 2023-05-09T08:41:53-04:00
Make atomicSwapMutVar# an inline primop
- - - - -
43bd5308 by doyougnu at 2023-05-09T14:49:08-04:00
JS: add GHC.JS.Optimizer, remove RTS.Printer, add Linker.Opt
This MR changes some simple optimizations and is a first step in re-architecting
the JS backend pipeline to add the optimizer. In particular it:
- removes simple peep hole optimizations from `GHC.StgToJS.Printer` and removes that module
- adds module `GHC.JS.Optimizer`
- defines the same peep hole opts that were removed only now they are `Syntax -> Syntax` transformations rather than `Syntax -> JS code` optimizations
- hooks the optimizer into code gen
- adds FuncStat and ForStat constructors to the backend.
Working Ticket:
- #22736
Related MRs:
- MR !10142
- MR !10000
-------------------------
Metric Decrease:
CoOpt_Read
ManyAlternatives
PmSeriesS
PmSeriesT
PmSeriesV
T10421
T12707
T13253
T13253-spj
T15164
T17516
T18140
T18282
T18698a
T18698b
T18923
T1969
T19695
T20049
T3064
T5321FD
T5321Fun
T783
T9198
T9233
T9630
-------------------------
- - - - -
05efe298 by Krzysztof Gogolewski at 2023-05-09T14:49:09-04:00
Add a regression test for #21050
- - - - -
d412b167 by Ben Gamari at 2023-05-09T14:49:10-04:00
nonmoving: Account for mutator allocations in bytes_allocated
Previously we failed to account direct mutator allocations into the
nonmoving heap against the mutator's allocation limit and
`cap->total_allocated`. This only manifests during CAF evaluation (since
we allocate the CAF's blackhole directly into the nonmoving heap).
Fixes #23312.
- - - - -
30 changed files:
- compiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/JS/Make.hs
- + compiler/GHC/JS/Optimizer.hs
- compiler/GHC/JS/Ppr.hs
- compiler/GHC/JS/Syntax.hs
- compiler/GHC/JS/Transform.hs
- compiler/GHC/JS/Unsat/Syntax.hs
- compiler/GHC/StgToCmm/Prim.hs
- compiler/GHC/StgToJS/Apply.hs
- compiler/GHC/StgToJS/CodeGen.hs
- compiler/GHC/StgToJS/Expr.hs
- compiler/GHC/StgToJS/Linker/Linker.hs
- compiler/GHC/StgToJS/Printer.hs → compiler/GHC/StgToJS/Linker/Opt.hs
- compiler/GHC/StgToJS/Object.hs
- compiler/GHC/StgToJS/Prim.hs
- compiler/GHC/StgToJS/Rts/Rts.hs
- compiler/ghc.cabal.in
- libraries/base/GHC/IORef.hs
- + libraries/base/tests/AtomicSwapIORef.hs
- + libraries/base/tests/AtomicSwapIORef.stdout
- libraries/base/tests/all.T
- rts/include/Cmm.h
- rts/sm/NonMovingAllocate.c
- rts/sm/Storage.c
- rts/sm/Storage.h
- + testsuite/tests/javascript/opt/all.T
- + testsuite/tests/javascript/opt/deadCodeElim.hs
- + testsuite/tests/javascript/opt/deadCodeElim.stdout
- testsuite/tests/linters/notes.stdout
- + testsuite/tests/th/T21050.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/f7c1e9eba9a5597bcee3914637dfe77cedd4dda8...d412b16742d187ad3e3f3a97dc3e2954c2abbb49
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/f7c1e9eba9a5597bcee3914637dfe77cedd4dda8...d412b16742d187ad3e3f3a97dc3e2954c2abbb49
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/20230509/014ceb95/attachment.html>
More information about the ghc-commits
mailing list