Commits on Source (3)
-
The lazy structure (a list) in a strict field in `DmdType` is not fully forced which leads to a very large thunk build-up. It seems there is likely still more work to be done here as it seems we may be trading space usage for work done. For now, this is the right choice as rather than using all the memory on my computer, compilation just takes a little bit longer. See #25196
3a5bebf8 -
We need to ensure that when we convert an `InvisP` (invisible type pattern) to a `Pat`, we parenthesize it (at precedence `appPrec`) so that patterns such as `@(a :: k)` will parse correctly when roundtripped back through the parser. Fixes #25209.
c2525e9e -
Andreas Klebinger authored
This commit adds `isByteArrayWeaklyPinned#` and `isMutableByteArrayWeaklyPinned#` primops. These check if a bytearray is *weakly* pinned. Which means it can still be explicitly moved by the user via compaction but won't be moved by the RTS. This moves us one more stop closer to nailing down #22255.
1453f6fb
Showing
- compiler/GHC/Builtin/primops.txt.pp 19 additions, 1 deletioncompiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/StgToCmm/Prim.hs 2 additions, 0 deletionscompiler/GHC/StgToCmm/Prim.hs
- compiler/GHC/StgToJS/Prim.hs 2 additions, 0 deletionscompiler/GHC/StgToJS/Prim.hs
- compiler/GHC/ThToHs.hs 1 addition, 1 deletioncompiler/GHC/ThToHs.hs
- compiler/GHC/Types/Demand.hs 1 addition, 1 deletioncompiler/GHC/Types/Demand.hs
- docs/users_guide/exts/ffi.rst 54 additions, 8 deletionsdocs/users_guide/exts/ffi.rst
- libraries/base/src/GHC/Base.hs 2 additions, 1 deletionlibraries/base/src/GHC/Base.hs
- libraries/base/src/GHC/Exts.hs 3 additions, 1 deletionlibraries/base/src/GHC/Exts.hs
- rts/PrimOps.cmm 17 additions, 0 deletionsrts/PrimOps.cmm
- rts/RtsSymbols.c 2 additions, 0 deletionsrts/RtsSymbols.c
- rts/include/stg/MiscClosures.h 2 additions, 0 deletionsrts/include/stg/MiscClosures.h
- testsuite/tests/rts/T13894.hs 8 additions, 0 deletionstestsuite/tests/rts/T13894.hs
- testsuite/tests/th/T25209.hs 9 additions, 0 deletionstestsuite/tests/th/T25209.hs
- testsuite/tests/th/T25209.stderr 6 additions, 0 deletionstestsuite/tests/th/T25209.stderr
- testsuite/tests/th/all.T 1 addition, 0 deletionstestsuite/tests/th/all.T
testsuite/tests/th/T25209.hs
0 → 100644
testsuite/tests/th/T25209.stderr
0 → 100644