[SLP]Reduce logical and/or reductions in the wide leaf type
Logical and/or reductions on i1 with booleanized wide leaves (truncs
of same-op chains, zero-tests of values from [0, 1]) are performed in
the wide type, exposing the underlying consecutive values to the tree;
bit 0 of the result is the final value. Fixes the fragmented reduction
and the gather-of-scalars regression for compile-time-expanded Boolean
reductions.
Fixes #221167
Reviewers: RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/221321
[NFC][ModuleUtils] Move externalize() from module splitting utilities (#221181)
`SplitModule.cpp` and `AMDGPUSplitModule.cpp` each carry an identical
static `externalize()` helper that promotes local-linkage globals to
external + hidden visibility and assigns a stable name to unnamed
entities, so they are named consistently across module partitions.
This patch removes the duplication by moving the helper into
`ModuleUtils` as `llvm::externalize`, and updates both users to call the
shared implementation. No functional changes are intended.
This also prepares for upcoming module splitting utilities to reuse a
single, canonical implementation.
Development of this patch was assisted by AI and reviewed by me.
vault: upgrade go-limiter package
The old version of the go-limiter dependency is not compatible with
current Go versions, as it accesses internal runtime details.
This also needs a few other dependency updates.
[OpenMP] Add definitions for REDUCTION_KIND and SHIFT clauses (#222745)
This is a barebones change to introduce the enum identifiers for these
clauses.
uart.4: Conicalize sections a bit better
Sections are in all caps, and subsections are in title case. Sections
also have a standard order. This manual could certainly be reformatted
more to conform further to our conventions, but this is a step in the
right direction. While here, remove the stray hyphen from the beginning
of this document.
Event: EuroBSDcon 2026
MFC after: 3 days
[OpenMP] Change association of some directives from "none" to "explicit" (#222703)
Certain declarative directives are associated with base language
declarations by having the declared entities explicitly listed as
arguments.
Previously these had "none" in OMP.td. Change them to "explicit" to be
consistent with the spec. The existing code does not require any
changes, since the only potentially affected code would be that which
checked the assocation for "none", and the only such cases were applied
to executable directives.
[SelectionDAG] Remove unused float promotion in DAGTypeLegalizer (NFC) (#223219)
This patch removes PromotedFloats along with GetPromotedFloat and
SetPromotedFloat. The Mapped bitmask in PerformExpensiveChecks is
adjusted accordingly, shifting the bit for SoftPromotedHalfs.
The last uses of DAGTypeLegalizer::GetPromotedFloat and
DAGTypeLegalizer::SetPromotedFloat were removed on January 26, 2026 in
commit a7d48bd305ef3aa4bd543da6f4cd8682a3d35c32 when TypePromoteFloat
and its associated DAG machinery were removed.
With these accessors gone, DAGTypeLegalizer::PromotedFloats is no longer
populated.
Assisted-by: Antigravity
[Support] Fix the return type of AddOverflow, SubOverflow, and MulOverflow (#223217)
This patch fixes the return type of the 3-argument overloads of
AddOverflow, SubOverflow, and MulOverflow to bool.
Without this patch, these functions are declared with a return type
of T:
template <typename T>
std::enable_if_t<std::is_signed_v<T>, T> AddOverflow(T X, T Y, T
&Result);
even though they return a boolean indicating whether an overflow
occurred, as stated in the comment:
/// Add two signed integers, computing the two's complement truncated
result,
/// returning true if overflow occurred.
Assisted-by: Antigravity
Pull up the following, requested by kre in ticket #1339:
external/public-domain/tz/dist/CONTRIBUTING up to 1.1.1.11
external/public-domain/tz/dist/Makefile up to 1.7
external/public-domain/tz/dist/NEWS up to 1.9
external/public-domain/tz/dist/README up to 1.4
external/public-domain/tz/dist/TZDATA_VERSION up to 1.47
external/public-domain/tz/dist/asia up to 1.17
external/public-domain/tz/dist/backward up to 1.13
external/public-domain/tz/dist/backzone up to 1.5
external/public-domain/tz/dist/northamerica up to 1.8
external/public-domain/tz/dist/southamerica up to 1.6
external/public-domain/tz/dist/theory.html up to 1.7
external/public-domain/tz/dist/version up to 1.20
external/public-domain/tz/dist/zone.tab up to 1.7
external/public-domain/tz/dist/zone1970.tab up to 1.8
external/public-domain/tz/dist/zonenow.tab up to 1.9
doc/3RDPARTY (apply patch)
Updated tzdata to 2026d (via local 2026dgtz).
[AMDGPU][GlobalISel] Reject guaranteed tail calls in call lowering (#216260)
The FPDiff immediate was being written to the wrong operand, corrupting
the callee GlobalAddress
Reject required tail calls like SelectionDAG does, and fix the stale
index for the one path that still needs it (cs.chain lowering)
Pull up following revision(s) (requested by bouyer in ticket #1338):
sys/arch/xen/xen/xbdback_xenbus.c: revision 1.109
Fix a brain-o in a KASSERT that could cause a guest to panic a DIAGNOSTIC
kernel: to assert that an I/O is already in flight we want
xbdi_pendingreqs > 0, not xbdi_pendingreqs > 1
While there, fix an error path that could also cause a KASSERT to fire
or a state corruption: reset xio_need_bounce to 0 before calling
xbdback_io_error() when the bounce buffer is not fully set up.