FastISel: Thread LibcallLoweringInfo through (#176799)
Boilerplate change to prepare to take LibcallLoweringInfo from
an analysis. For now, it just sets it from the copy inside of
TargetLowering.
mail/courier-imap: Fix inotify support on FreeBSD 15 and up
FreeBSD 15 introduced a native inotify implementation in libc; avoid
depending and linking libinotify on these relases, since it interferes
with the libc implementation.
MFH: 2026Q1
(cherry picked from commit c6a80d646d95392f13da873351a68c79d1c2efec)
sctp: improve compilation as module
When compiling SCTP as a module, don't compile sctp_crc32.c into
the module. This avoids code and variable duplication since
sctp_crc32.c is compiled into the kernel. In particular, the variable
system_base_info is not duplicated. This fixes the handling of the
statistic counters sctps_sendhwcrc and sctps_sendswcrc when using
sctp_delayed_cksum.
MFC after: 3 days
[flang][OpenMP] Allow ALLOC/RELEASE in place of STORAGE in 6.0 (#176810)
As per the 6.0 spec
> The value alloc may be used on map-entering constructs and the value
> release may be used on map-exiting constructs with identical meaning to
> the value storage.
HBSD: Disable WITNESS' checking of vnode locks
FreeBSD relatively recently changed how vnode locking works in the
kernel. There are a few places that still need to be updated.
HardenedBSD's use of filesystem extended attributes seems to trip
WITNESS vnode lock checking when ZFS is used. This causes a kernel
panic, which is more likely to be triggered during a package build.
So, for now, let's disable the vnode lock checks. I plan to revisit this
when I have more available time.
Signed-off-by: Shawn Webb <shawn.webb at hardenedbsd.org>
[flang][OpenMP] Allow assumed-size arrays on USE_DEVICE_ADDR clause
Assumed-size arrays do not present any issues here as they need to be
either already mapped into the device data environment, or otherwise
accessible on the target device.
mail/courier-imap: Fix inotify support on FreeBSD 15 and up
FreeBSD 15 introduced a native inotify implementation in libc; avoid
depending and linking libinotify on these relases, since it interferes
with the libc implementation.
MFH: 2026Q1
[libc++] Update `__cpp_lib_flat_set` to `202511L` according to P3567R2 (#176297)
The paper was already implemented in LLVM22 in cd13170aea2,
but the previous patch forgot to update `__cpp_lib_flat_set`.
Fixes #176232.
[LAA] Check if access is part of loop in isNoWrap.
blockNeedsPredication does not support blocks outside of the loop. Bail
out for users outside the loop.
Fixes https://github.com/llvm/llvm-project/issues/174760.
[libc++] define FTM __cpp_lib_ranges_zip (#176569)
P2321R2 has been implemented in various PRs. Based on the discussion
in #105169, the last bit in iterator.concept.winc doesn't require
any changes, so we can actually mark this as done.
Fixes #105169
DAG: Take LibcallLoweringInfo from analysis
Previously this was taking a duplicate copy of this information
from TargetLowering. This moves the bulk of libcall checks to use
the new analysis. There are still a few straggler uses in misc.
passes in a few backends (mainly AArch64 has some libcall emission
in FinalizeISel and PrologEpilogInserter).
FastISel: Thread LibcallLoweringInfo through
Boilerplate change to prepare to take LibcallLoweringInfo from
an analysis. For now, it just sets it from the copy inside of
TargetLowering.
databases/galera26: Update to 26.4.25
This release includes a patch that makes galera work on OpenZFS >= 2.3.0
PR: 291561
Approved by: maintainer timeout
[libc++][NFC] Use forward declarations in {in,}out_ptr.h (#176341)
This doesn't improve compile times currently, but it does make it clear
that we don't need the definition of `shared_ptr` or `unique_ptr` for
`{in,}out_ptr`. It also reduces compile times quite a bit if we ever use
these utilities in another header.
[libc++] Remove libc++'s <float.h> (#175849)
The existence of <float.h> in libc++ leads to difficulties with modules,
especially when it comes to supporting the various __need macros
supported by the Clang builtin headers.
Fortunately, libc++'s <float.h> only defines FLT_EVAL_METHOD and
DECIMAL_DIG, which are already defined by the Clang builtin headers in
C++11 mode. Hence, removing the header entirely should have no impact,
apart from not defining FLT_EVAL_METHOD and DECIMAL_DIG in C++03 mode.
However, that is arguably something that libc++ shouldn't be doing: if
the underlying C library doesn't want to provide these definitions, then
libc++ shouldn't force it to.
[LifetimeSafety] Track dereference operators behind a flag (#176794)
Add a parameter to `shouldTrackImplicitObjectArg` to differentiate
between lifetime safety analysis and statement-local analysis.
The statement-local analysis was experiencing false positives when
tracking dereference operators for GSL pointers, so this change allows
for more aggressive tracking in the full analysis while being more
conservative in the statement-local analysis.
- Added a `RunningUnderLifetimeSafety` boolean parameter to
`shouldTrackImplicitObjectArg` function to distinguish between lifetime
safety analysis and Sema's statement-local analysis
- Enhanced tracking of dereference operators for GSL pointers in STL:
- Now tracks both `operator*` and `operator->` when running under
lifetime safety analysis
- Avoids tracking these operators in statement-local analysis to prevent
false positives