[OpenMP][NFC] Refresh stale entry-layout comments in mapper codegen test
The per-element entry list described the pre-attach-style codegen: it
listed four entries instead of five, ordered the combined entry before
the s2.z one, used MEMBER_OF(N+1) where MEMBER_OF(N+2) is emitted, and
marked the s1p->x/y entries PTR_AND_OBJ. It also carried a FIXME asking
for the attach-style codegen that is now in place.
Update it to the entries actually emitted, verified against the IR and
the test's own CHECK lines, and drop the obsolete FIXME. Also fix the
comment in foo(), which listed a single top-level entry when there are
two (the mapped array plus its ATTACH entry, per .offload_maptypes).
Comments only; no functional change.
tailscale: update to 1.102.1
- tailscaled_serve_outbound_bytes_total and
tailscaled_serve_inbound_bytes_total client metrics report bytes
sent to and received from peers on Tailscale Serve connections for
Tailscale Services.
- The tailscale get CLI command returns the current node's
preferences.
- The tailscale whoami CLI command displays information about the
current user and device.
- The tailscale service list CLI command displays Tailscale Services
visible to the current node.
- Node additions and removals are processed in constant time,
significantly reducing CPU usage on large tailnets.
- Tailscale Funnel domains use TLS-ALPN-01 for faster HTTPS
certificate renewals.
- Deprecated formats for 4via6 MagicDNS names are no longer available
to use.
- TLS certificates on idle servers proactively auto-renew in the
[48 lines not shown]
[SPARC] Do not use the unimp struct-return convention for zero-sized types (#213733)
GCC has special handling for an `sret` of a zero-sized type, match that
handling.
https://godbolt.org/z/Tcraao7rT
It seems unlikely someone is actually relying on this, so I haven't
added the abi compatibility logic. Rust however uses zero-sized types
quite heavily, so having this work correctly is useful there.
[flang][OpenMP] Use 'linear-step' instead of 'step-simple-modifier' in 5.1-
These two modifiers are structurally identical, but the latter has an
exclusive property whereas the former does not.
Also, this allows diagnostics to use the modifier name that appears in
the spec that corresponds to the version in -fopenmp-version.
[SLP]Flatten add/sub and fadd/fsub chains into one reassociated node
A peeled subtract keeps the column sign for its first operand and flips
it for the second, so mixed add/sub (fadd/fsub with reassoc) chains
linearize into positive and negative operand columns combining as
sum(positive) - sum(negative), with subtrahend columns reordered by
value family. nuw is now also dropped on non-exact combines when a
negated leaf exists, since a regrouped subtrahend sum can exceed the
original running total.
Reviewers: RKSimon, bababuck, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/213544
18296 pcitool_get_intr() leaks the nexus devi lock when queried about unused vectors
Reviewed by: Dan Cross <cross at oxidecomputer.com>
Reviewed by: Jason King <jason.brian.king+illumos at gmail.com>
Approved by: Robert Mustacchi <rm+illumos at fingolfin.org>
[clang][test] Add test for stack_protector_ignore in system macros (#213770)
d3184bc6c6a8 ("[clang] Don't warn on stack_protector_ignore in system
macros") added SuppressInSystemMacro to
warn_stack_protection_ignore_attribute but only added an LLVM CodeGen
test for the stack-protector metadata, so the diagnostic change itself
was untested.
Add a test using the self-include system_header idiom: the attribute
from a system header macro does not warn under -fstack-protector-all,
while one written in user code still does.
rdar://183962985
x11-themes/classiclooks: Attempt to fix build on CURRENT
unzip seems to fail extracting successfully due to insecure
symlink errors. Using tar instead seems to work fine.
Reported by: J.R. Oldroyd <fbsd at opal.com> (maintainer, via e-mail)
Reported by: pkg-fallout
Approved by: osa, vvd (Mentors, implicit)
ixl: enforce the assigned VF MAC address
When allow-set-mac is disabled, the MAC filter validation condition
rejects the assigned VF unicast address while allowing any different
unicast address. The equality test was accidentally inverted when this
code moved to the boolean address helper.
Accept multicast and the assigned unicast address, and reject other
unicast addresses as intended.
Fixes: 7d4dceec1030 ("ixl(4): Fix VLAN HW filtering")
(cherry picked from commit d2309d9d6dc6d5a9141314652d6c96ab46a9a62c)
ixl: enforce the assigned VF MAC address
When allow-set-mac is disabled, the MAC filter validation condition
rejects the assigned VF unicast address while allowing any different
unicast address. The equality test was accidentally inverted when this
code moved to the boolean address helper.
Accept multicast and the assigned unicast address, and reject other
unicast addresses as intended.
Fixes: 7d4dceec1030 ("ixl(4): Fix VLAN HW filtering")
(cherry picked from commit d2309d9d6dc6d5a9141314652d6c96ab46a9a62c)
[NFC][Cuda][test] Fix CHECK-NOT patterns matching the build directory (#213799)
`cuda-omp-unsupported-debug-options.cu`'s COMMON-NOT: ...|lldb|... can
match against the build directory path that may contain `lldb` in the
pathname. Change the test to check the exact cc1 arguments.
rdar://183501558
[SLP]Vectorize single-user instructions as the last-attempt seeds
Instructions with the single user cost one extract per lane, so they are
vectorized after all other roots in the function are exhausted, grouped by
the key/subkey pairs. Loads, addresses, compares and the operations, folded
away or contracted into the scalar FMA, are excluded. The rejected bundles
and the members of the priced minimal nodes are not retried, unless the
tree was dropped by the repacking overhead rather than by the members.
Reviewers: hiraditya, RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/212579
[lldb][Python] Inline `lldb_iter` for better type inference (#214000)
Currently, the `lldb_iter` helper is used for providing `__iter__` in
the Python bindings:
```python
def lldb_iter(obj, getsize, getelem):
"""A generator adaptor to support iteration for lldb container objects."""
size = getattr(obj, getsize)
elem = getattr(obj, getelem)
for i in range(size()):
yield elem(i)
```
A type checker or LSP can't see through this function. Currently, that's
no problem, because it doesn't know the return type of any Swig wrapper,
but when we add type annotations (hopefully with Swig 4.5 in #213463),
`__iter__` remains untyped. So iterating through the wrappers won't show
the correct type.
As the functionality is fairly simple, it's easier to inline it. That's
what this PR does. Then a type checker can infer the return type.
[CostModel][X86] getArithmeticReductionCost - ensure we test the vXi1 reductions types before legalisation (#211043)
Pre-AVX512 these will be legalized to wider vector types and might match
against other reductions tables.
Noticed while working on improving logic reductions, but hit a case
with/without popcnt for bool sum reduction patterns - I've added a AVX2
test pass to check the (corrected) costs are still working
[NFC][CIR] Propagate SymbolTables better (#213972)
This came up during self-build, we are spending a lot of time in some
cases looking up using the global symbol table, which does no caching.
Previously we'd propagated this in a few places, but this patch removes
all uses of SymbolTable::lookup and adds the cache everywhere.
This involved changing the tablegen to include it in each of our
rewriters, plus the CirAttr lowering everywhere.
The only thing we have to take care of is to make sure we invalidate the
cache/update the cache whenever we add something with a name (see
createLLVMFuncOpIfNotExist).
This is NFC, as it isn't observable, other than being a build time
improvement.
[RISCV] Fix Xqci Fusions with Frame Indexes (#213815)
Pre-RA, the ADDI can contain a frame index rather than a register, which
causes `getReg()` to assert. These were missing the `CheckIsRegOperand`
that most other fusions have.
Merge tag 'locking-urgent-2026-08-04' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull futex fix from Ingo Molnar:
- Fix a robust futexes exit race (Keno Fischer)
* tag 'locking-urgent-2026-08-04' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
futex: Prevent robust futex exit race some more
[CIR] Lower variadic calls in CallConvLowering for x86_64 (#213315)
CallConvLowering classified each function once from its declared
signature and reused that classification at every call site. An argument
passed through an ellipsis has no entry in the callee's parameter list,
so on x86_64 an ellipsis argument that needed an extension attribute, a
register coercion, or a byval slot was emitted unchanged whenever the
callee's declared parameters happened to need no rewrite, and reported
NYI when they did.
An ellipsis argument competes for the same registers as a declared one,
so the same two-eightbyte record goes in a register pair early in the
list and byval once the integer registers are gone. Variadic call sites
under the x86_64 driver are now classified from the call's own operand
types, and the declared parameter count reaches
`llvm::abi::FunctionInfo::create` as its `NumRequired` argument, which
is what lets the classifier tell a named argument from one passed
through the ellipsis. Today that flag only decides whether a large
vector goes in a register, and the CIR type bridge admits no vector
[25 lines not shown]