[AArch64][MTE] Tag dynamic allocas in AArch64StackTagging
Instrument dynamic allocas in the memtag-stack pass, more or less
following the the way AddressSanitizer does: by instrumenting
stackrestore to un(poison/tag) allocas when free'd.
- Dynamic allocas are given 16-byte alignment and padded to 16-bytes.
- At lifetime.start (or at the alloca if no lifetimes), the dynamic
alloca is tagged.
- The most recently executed dynamic alloca is tracked in an extra
per-func static alloca. The address of this static alloca is used
as the bottom (highest address) of the dynamic alloca section of
the frame, while the value stored there is treated as the current
top (lowest address) of the frame.
- At llvm.stackrestores, memory is untagged from the restored sp
to the last executed dynamic alloca.
- At function returns, memory is untagged from the last executed
dynamic alloca to the bottom of the (dynamic alloca section of) the
frame.
[2 lines not shown]
Take the FreeBSD kexts from nextbsd-kernel-extensions
IntelWiFi and IntelEthernet now build in the new nextbsd-kernel-extensions
and ship as freebsd-kexts-amd64.tar.gz (nextbsd/nextbsd#554); fetch that
instead of the two Intel tarballs from the graphics repo.
Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
[AArch64][MTE] Tag dynamic allocas in AArch64StackTagging
Instrument dynamic allocas in the memtag-stack pass, more or less
following the the way AddressSanitizer does: by instrumenting
stackrestore to un(poison/tag) allocas when free'd.
- Dynamic allocas are given 16-byte alignment and padded to 16-bytes.
- At lifetime.start (or at the alloca if no lifetimes), the dynamic
alloca is tagged.
- The most recently executed dynamic alloca is tracked in an extra
per-func static alloca. The address of this static alloca is used
as the bottom (highest address) of the dynamic alloca section of
the frame, while the value stored there is treated as the current
top (lowest address) of the frame.
- At llvm.stackrestores, memory is untagged from the restored sp
to the last executed dynamic alloca.
- At function returns, memory is untagged from the last executed
dynamic alloca to the bottom of the (dynamic alloca section of) the
frame.
[2 lines not shown]
Use nextbsd-kernel-extensions-graphics, failing loudly (#590)
nextbsd-kernel-extensions is now nextbsd-kernel-extensions-graphics
(nextbsd/nextbsd#551). Fetch the kexts and the Raspberry Pi 5 overlays
from the new name before the old one is reused, and fail when any of
them is missing instead of shipping an image without it
(nextbsd/nextbsd#552). README and issue refs follow.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[libc++] Make detect-changepoints much faster (#236245)
The permutation test used to find changepoints was the bottleneck of the
LNT refinement job. This patch makes the test much cheaper in two ways
without changing the algorithm:
- Compute the best split of a segment only once, when the segment is
created.
- Scoring every split of a segment only needs the sums of distances
within the first t points and between the first t points and the whole
segment. The latter doesn't depend on the order of the points, so it is
computed once per segment.
This was measured to be roughly 10x faster as the previous algorithm,
and gives the same results.
Assisted by Claude
Fix a typo (share/locale/Makefile.locale)
While in an actual Makefile variable assigmnent, this value seems
not to be used (the LANGUAGE_XX variables appear to be never used),
so the typo was completely benign. Note that there is no "au" in
the LANGUAGE list.
Fix it for consistency, and so no-one else ever needs to wonder
what is going on here (for which the answer is "nothing").
[libc][CODEOWNERS] Route math reviews to lntue (#236204)
Math, FPUtil, and complex entrypoints require specialised domain
expertise and clutter the review dashboard for the rest of the libc
team.
Route these directories to lntue rather than reviewers-libc.
Assisted-by: Automated tooling, human reviewed.
devel/libabigail: update to 2.10, recent upstream
Release notes at
https://sourceware.org/pipermail/libabigail/2026q2/006484.html
This isn't the latest release (which is 3.0) because that one
needs a lot more work -- there's new dependencies, multi-threading
that needs to be sorted out with those dependencies, etc.
devel/libabigail: update to 2.10, recent upstream
Release notes at
https://sourceware.org/pipermail/libabigail/2026q2/006484.html
This isn't the latest release (which is 3.0) because that one
needs a lot more work -- there's new dependencies, multi-threading
that needs to be sorted out with those dependencies, etc.
Use nextbsd-kernel-extensions-graphics, failing loudly
nextbsd-kernel-extensions is now nextbsd-kernel-extensions-graphics
(nextbsd/nextbsd#551). Fetch the kexts and the Raspberry Pi 5 overlays
from the new name before the old one is reused, and fail when any of
them is missing instead of shipping an image without it
(nextbsd/nextbsd#552). README and issue refs follow.
Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
lang/gcc/16: stop putting jump tables in the text section on powerpc64
From Brad Smith, original message:
The OpenBSD powerpc64 target header defined JUMP_TABLES_IN_TEXT_SECTION,
which emits switch jump tables inline in .text. OpenBSD maps text
execute-only, so code that loads from a jump table faults. This showed
up as NumPy crashing on import on powerpc64.
Drop the override so jump tables go in .rodata like other targets.
While here, also remove a powerpc64 build workaround in tree-vect-loop.cc
that is no longer necessary.