-
ed09895d
by Andreas Klebinger at 2026-07-08T16:53:27-04:00
Fix a profiling race condition resulting in segfaults.
StgToCmm: Don't assume tagged FUN closures in closureCodeBody.
When entering a closure the self/node pointer might not be tagged in
some situations when a thunk is evaluated by multiple threads.
So we most AND away the tag bits rather than subtracting an expected tag.
Apply.cmm: Fix a race condition occuring when a thunk is mutated during GC.
In stg_ap_0_fast when might need to run GC before entering a thunk. If this happens
another thread or the GC itself might mutate the closure making entering it no longer
valid. We now check for this.
Add test and changelog for #27123 fixes.
-
67c03eb2
by Cheng Shao at 2026-07-08T16:54:09-04:00
ghc-heap: fix invalid srtlen returned by peekItbl when no-TNTC
This patch fixes the no-TNTC code path of `peekItbl` so that it looks
at the right memory address when reading the `srt` field from the
`StgInfoTable_` struct. Also adds a `T27465` regression test that
reproduces the bug on no-TNTC builds before the fix. Fixes #27465.
Co-authored-by: Codex <codex@openai.com>
-
2ecabb4f
by Zubin Duggal at 2026-07-09T09:23:25-04:00
hadrian: binary-dist-dir should not be the default target
Revert behaviour to pre 23c9b6c392f52ec9d7a8618b204ff6b885f5fba2
In 23c9b6c392f52ec9d7a8618b204ff6b885f5fba2, we applied the following behaviour change:
```
hadrian: Build stage 2 cross compilers
...
* hadrian: Make binary-dist-dir the default build target. This allows us
to have the logic in one place about which libraries/stages to build
with cross compilers. Fixes #24192
```
This is a major regression to development experience, a plain hadrian/build
--freeze1 now takes ages because we rebuild all docs (which need to go in the
binary dist dir).
`binary-dist-dir` is the wrong default target for regular GHC development work
Fixes #27445
-
e16388e3
by Zubin Duggal at 2026-07-09T09:23:25-04:00
.gitignore: Add the hadrian system.config introduced by commit 23c9b6c392f52ec9d7a8618b204ff6b885f5fba2
Since
commit 23c9b6c392f52ec9d7a8618b204ff6b885f5fba2
Author: Matthew Pickering <matthewtpickering@gmail.com>
Date: Thu Dec 21 16:17:41 2023 +0000
hadrian: Build stage 2 cross compilers
./configure produces /hadrian/cfg/system.config.{host,target}
Add these to .gitignore
-
7e8abf41
by Alan Zimmerman at 2026-07-09T09:24:12-04:00
EPA: Replace AnnListItem with simply [TrailingAnn]
Remove the unnecessary wrapper around a single field.
-
29032f17
by Zubin Duggal at 2026-07-09T09:24:58-04:00
testsuite: Keep real reason for fragile test failures
-
c34e03a7
by Zubin Duggal at 2026-07-09T09:24:58-04:00
testsuite: Fall back to the failure reason for empty JUnit bodies
-
409d40f0
by Zubin Duggal at 2026-07-09T09:24:58-04:00
testsuite: Show output diffs in JUnit output
Also refactor compare_outputs to return essentially a `Maybe Diff`
(`CompareOutput`) instead of a bool, but more pythonic. This
allows us to pass the diff through nice.
-
06fee1ab
by Zubin Duggal at 2026-07-09T09:24:58-04:00
perf notes: include stat deviation and acceptance window in notes so they show up in gitlab
-
3a4a66b6
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Keep binds and sigs together in HsValBindsLR
We combine them into a single list for GhcPs, wrapped in the
ValBind data type, which is the bind equivalent of ValD, having
constructors for binds and sigs.
This simplifies exact print processing, especially when using it to
update the contents of local binds, as we no longer need AnnSortKey
BindTag
-
cc4ddb5a
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
Keep decls together in ClassDecl
-
253bcf62
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: ClsInstDecl as list in GhcPs
-
9e0f416a
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedP from OverlapMode
-
c34d11a4
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedP from CType
-
6a59c189
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedP, last use in WarningTxt
-
c1083835
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedE from WarningCategory
-
edf7464d
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocateE from XCImport and XCExport
-
7a49677b
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedE from HsRecFields dot
-
d648cd22
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedE completely, last usage for pats
-
5d91cd73
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove AnnList (EpToken "where") usages
This is moving toward removing the parameter from AnnList completely
-
79d06d30
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA remove AnnList (EpToken "rec") usages
-
1c0baaf0
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove last parameterised AnnList usage (EpaLocation)
Also remove the parameter
-
58f8a373
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
TTG: Add extension points to BooleanFormula
They are currently unused, but will be used for exact print annotations next
-
ba591aff
by Alan Zimmerman at 2026-07-09T20:19:33+01:00
EPA: Remove LocatedBC / SrcSpanBF