-
50188615
by Ian Duncan at 2026-05-14T13:45:07+02:00
AArch64: use ASR not LSR for MO_U_Shr at W8/W16
The unsigned right shift (MO_U_Shr) for sub-word widths (W8, W16)
with a variable shift amount was emitting ASR (arithmetic/signed shift
right) after zero-extending with UXTB/UXTH. This should be LSR
(logical/unsigned shift right). After zero-extension the upper bits
happen to be 0 so ASR produces the same result, but it is semantically
wrong and would break if the zero-extension were ever optimized away.
Includes assembly output test (grep for lsr) and runtime test
verifying unsigned right shift of Word8 and Word16 values.
-
28666fbf
by Vladislav Zavialov at 2026-05-19T12:44:05-04:00
Add type families: Tuple, Constraints, Tuple#, Sum# (#27179)
These type families map tuples of types to the corresponding Tuple<N>,
Tuple<N>#, CTuple<N>, and Sum<N># types. Some examples at N=2:
Tuple (Int, Bool) = Tuple2 Int Bool
Constraints (Show a, Eq a) = CTuple2 (Show a) (Eq a)
Tuple# (Int#, Float#) = Tuple2# Int# Float#
Sum# (Int#, Float#) = Sum2# Int# Float#
See GHC Proposal #145 "Non-punning list and tuple syntax".
To make the Sum# instance at N=64 possible, this patch also introduces
the Sum64# constructor declaration and bumps mAX_SUM_SIZE from 63 to 64.
Metric Increase:
ghc_experimental_dir
-
41c2448b
by Wen Kokke at 2026-05-19T12:44:53-04:00
rts: Add IPE event class for -l
This commit adds a new IPE event class to the -l RTS flag.
Previously, IPE events were enabled unconditionally.
However, the IPE events can easily grow to hundreds or thousands of megabytes.
With the new event class you can pass, e.g., -l-I to disable IPE events.
-
62536551
by Wen Kokke at 2026-05-19T12:44:53-04:00
ghc-internal: Add TraceFlags.traceIPE
-
e45312d1
by Wen Kokke at 2026-05-19T12:44:53-04:00
testsuite: Add test for TraceFlags.traceIpe
-
4768d9aa
by Wen Kokke at 2026-05-19T12:44:53-04:00
ghc-internal: Add DebugFlags.ipe
-
bc1b5c69
by Wen Kokke at 2026-05-19T12:44:53-04:00
testsuite: Add test for DebugFlags.ipe
-
0da1543f
by Duncan Coutts at 2026-05-19T12:45:37-04:00
Document removal of the signal-based interval timer
Update mentions within the RTS section of the users guide.
Add a changelog entry.
-
b2911514
by Duncan Coutts at 2026-05-19T12:45:37-04:00
Fix section for an recent changelog entry
-
d6d76a7a
by David Eichmann at 2026-05-19T12:46:19-04:00
ghc-toolchain: implement llvm program versioning logic
-
2dd36fa3
by Wolfgang Jeltsch at 2026-05-20T04:49:52-04:00
Turn `Trustworthy` into `Safe` in `base` where possible
-
f4399dd1
by Wolfgang Jeltsch at 2026-05-20T04:50:37-04:00
Make the current `base` buildable with GHC 10.0
-
2b7c1a4f
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Disable hiding of imported SIMD operations for GHC 9.14
-
e0a5fc72
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Disable some imports into `GHC.Base` for GHC 9.14
-
27d4dc85
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Make `thenM` available with GHC 9.14
-
239ac5a5
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Disable separate `ArrowLoop` import for GHC 9.14
-
29c8acbe
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Make `thenA` available with GHC 9.14
-
c1158bd3
by Wolfgang Jeltsch at 2026-05-20T12:13:33+03:00
Disable `GHC.Internal.STM` import for GHC 9.14
-
acc1a370
by Wolfgang Jeltsch at 2026-05-20T12:13:34+03:00
Add `hGetNewlineMode` for GHC 9.14
-
328a292d
by Wolfgang Jeltsch at 2026-05-20T12:13:34+03:00
Add alternative `fixIO` import for GHC 9.14
-
09053b49
by Wolfgang Jeltsch at 2026-05-20T12:13:34+03:00
Disable `GHC.Internal.Unicode.Version` import for GHC 9.14
-
5a4b3727
by Wolfgang Jeltsch at 2026-05-20T12:13:34+03:00
Disable GHC 9.14 `printToHandleFinalizerExceptionHandler`
-
5fb4cea6
by Wolfgang Jeltsch at 2026-05-20T12:13:34+03:00
Disable some imports into `Prelude` for GHC 9.14
-
384cbad0
by Wolfgang Jeltsch at 2026-05-20T12:14:45+03:00
Add alternative `unsafeCodeCoerce` import for GHC 9.14
-
4e6af24b
by Wolfgang Jeltsch at 2026-05-20T12:14:48+03:00
Disable `GHC.Internal.TH.Monad` import for GHC 9.14
-
869e5020
by Wolfgang Jeltsch at 2026-05-20T12:14:48+03:00
Use `getFileHash` from `ghc-internal` on GHC 9.14
-
32ea087c
by Wolfgang Jeltsch at 2026-05-20T12:14:48+03:00
Disable translation of `IoManagerFlagPoll` for GHC 9.14
-
ec9be274
by Wolfgang Jeltsch at 2026-05-20T12:14:48+03:00
Strengthen the Safe-Haskell annotation of `GHC.IO.Handle`