LLVM/project d166cd9 — clang/include/clang/CIR/Dialect/IR CIRDialect.h CIRAttrs.td, clang/include/clang/CIR/Interfaces CIROpInterfaces.td

[CIR] Reduce the fenv interface to an accessor and fix the unit test

The interface now declares only getFenv() and shares getConstrainedFenv(); callers read effective field values through the FenvAttr helpers. The identity constBuilderCall moves onto CIR_DefaultValuedFenvAttr, the only place that needs it. FenvOpTest used fenv<> to mean constrained; it now sets a field and checks that the empty fenv has no effects.

Assisted-by: Claude Code (Opus 5.5).
DeltaFile
+12-29clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
+15-11clang/unittests/CIR/FenvOpTest.cpp
+3-3clang/include/clang/CIR/Dialect/IR/CIRDialect.h
+3-3clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+33-464 files

LLVM/project 94c1248 — libc/src/__support/threads/linux CMakeLists.txt, libc/src/__support/threads/linux/aarch64 CMakeLists.txt

Revert "[libc][cmake] Respect the configured optimization level for the Linux thread and TLS objects" (#236604)

Reverts llvm/llvm-project#234382

See discussion in the PR thread - removing `-O3` from TLS initialization
and thread exiting code leads to crashes (from callee functions that are
build with stack protection enabled, or from accessing the local
variables after the stack is unmapped).

Co-authored-by: Prabhu Rajasekaran <prabhukrllvm at gmail.com>
DeltaFile
+2-0libc/src/__support/threads/linux/CMakeLists.txt
+1-0libc/src/__support/threads/linux/x86_64/CMakeLists.txt
+1-0libc/src/__support/threads/linux/riscv/CMakeLists.txt
+1-0libc/src/__support/threads/linux/aarch64/CMakeLists.txt
+5-04 files

LLVM/project 53b41ce — offload/libompaccsupport device.cpp

fix conclict after rebase
DeltaFile
+2-2offload/libompaccsupport/device.cpp
+2-21 files

FreeBSD/ports fc6c8ed — textproc/aspell Makefile distinfo, textproc/aspell/files patch-Makefile.in patch-prog__checker_string.cpp

textproc/aspell: upgrade to 0.60.8.3

Changelog at http://aspell.net/man-html/ChangeLog.html

Security:       CVE-2026-75818
Security:       CVE-2026-75819
Security:       CVE-2026-75820
Security:       CVE-2026-103658
DeltaFile
+2-13textproc/aspell/files/patch-configure
+8-6textproc/aspell/pkg-plist
+0-10textproc/aspell/files/patch-prog__checker_string.cpp
+3-3textproc/aspell/distinfo
+2-2textproc/aspell/files/patch-Makefile.in
+1-1textproc/aspell/Makefile
+16-356 files

LLVM/project 75bf7e1 — clang/test/CodeGen/X86 inline-asm-complex-output.c

[Clang][CodeGen] Add testcases for "+r" in "asm goto" and mixed complex and scalar outputs
DeltaFile
+140-0clang/test/CodeGen/X86/inline-asm-complex-output.c
+140-01 files

LLVM/project a490155 — openmp/runtime/src kmp_os.h

[openmp] Disable affinity on WebAssembly Linux targets (#235840)

`KMP_AFFINITY_SUPPORTED` is turned off for WASI and Emscripten, but not
for clang's WebAssembly Linux target (`wasm32-unknown-linux-*`, WALI),
which defines `__linux__`. libomp then enables affinity there and the
build stops in `kmp_affinity.h`:

```
openmp/runtime/src/kmp_affinity.h:326:2: error: Unknown or unsupported architecture
```

because there are no `sched_{set,get}affinity` syscall numbers for
WebAssembly. WebAssembly has no way to pin a thread to a CPU on any of
these targets, so this change turns affinity off by architecture
(`KMP_ARCH_WASM32` / `KMP_ARCH_WASM64`) instead of by OS. WASI and
Emscripten are always WebAssembly, so nothing changes for them.

Testing:
- Built libomp for `wasm32-unknown-linux-musl` with upstream clang.

    [8 lines not shown]
DeltaFile
+1-1openmp/runtime/src/kmp_os.h
+1-11 files

LLVM/project 25121ed — clang/include/clang/CIR/Dialect/IR CIROps.td CIRAttrs.td, clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

[CIR] Simplify the fenv default and use the interface for complex ops

Spell the empty fenv inline in the default instead of adding a no-argument builder, and give the complex FP binary ops the fenv interface so their lowering uses getConstrainedFenv() like every other op.

Assisted-by: Claude Code (Opus 5.5).
DeltaFile
+2-9clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+2-2clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+2-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+6-123 files

LLVM/project 2c77364 — clang/lib/CodeGen CodeGenFunction.h CGStmt.cpp

[Clang][CodeGen] The predicate 'IsScalarOrAggregate' is always true

IsScalarOrAggregate checks whether *any* 'TEK_*' evaluation kind is set,
which it always will be. Go ahead and remove it and assume it's true.
DeltaFile
+1-6clang/lib/CodeGen/CGStmt.cpp
+0-4clang/lib/CodeGen/CodeGenFunction.h
+1-102 files

LLVM/project b2f77ac — llvm/lib/Target/AMDGPU SIFoldOperands.cpp, llvm/test/CodeGen/AMDGPU idot8s.ll integer-mad-patterns.ll

[AMDGPU] Select the op_sel version of v_mad_u16 on GFX9 (#236042)

On GFX9, select v_mad_u16 (V_MAD_U16_gfx9) for i16 multiply-add instead of
v_mad_legacy_u16, so that sources taken from the high half of a packed
register can be read with op_sel, as on GFX10+.

The legacy opcode is still selected when the result is zero-extended,
since it zero-fills the high 16 bits of the destination.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply at anthropic.com>
DeltaFile
+266-0llvm/test/CodeGen/AMDGPU/redundant-and.mir
+65-77llvm/test/CodeGen/AMDGPU/idot4u.ll
+68-68llvm/test/CodeGen/AMDGPU/idot8u.ll
+60-60llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
+36-36llvm/test/CodeGen/AMDGPU/idot8s.ll
+49-1llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+544-24212 files not shown
+629-34318 files

LLVM/project da5b9d9 — clang/include/clang/CIR/Dialect/IR CIRAttrs.td

[CIR] Drop comment on FenvAttr constBuilderCall

Assisted-by: Claude Code (Opus 5.5).
DeltaFile
+0-2clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+0-21 files

LLVM/project 6888747 — clang/lib/Sema SemaDeclCXX.cpp SemaOverload.cpp

[Clang][NFC] Don't create RecoveryExprs when checking CCE (#236631)

The previous fix seems a layer violation and we shouldn't let
RecoveryExprs sneak into BuildConvertedConstantExpression.

This reverts both fba1a4b1292 and 9472490520b while keeping their tests.
DeltaFile
+0-11clang/lib/Sema/SemaOverload.cpp
+1-1clang/lib/Sema/SemaDeclCXX.cpp
+1-122 files

LLVM/project bd9712a — mlir/cmake/modules AddMLIRPython.cmake

[mlir][Python] Use the existing package-prefix variable for stub generation

Read MLIR_PYTHON_PACKAGE_PREFIX from the caller's CMake scope instead of
introducing a separate add_mlir_python_modules argument.

Signed-off-by: Twice <twice at apache.org>
DeltaFile
+2-8mlir/cmake/modules/AddMLIRPython.cmake
+2-81 files

LLVM/project b4b69af — clang/test/CodeGen/X86 inline-asm-output-tbaa.c

Test the TBAA tag of a _Complex output's store

Assisted-by: Claude Opus 5.5
DeltaFile
+10-3clang/test/CodeGen/X86/inline-asm-output-tbaa.c
+10-31 files

LLVM/project 2945873 — clang/test/CodeGen/X86 inline-asm-output-store.c, clang/unittests/CIR ControlFlowTest.cpp

Merge branch 'users/void/asm-_Complex-bugs' into users/void/asm-goto-_Complext-types
DeltaFile
+129-88offload/libompaccsupport/device.cpp
+112-0llvm/test/CodeGen/AMDGPU/dpp_combine_gfx11.mir
+107-0libc/test/src/netinet/ether/ether_aton_r_test.cpp
+84-0clang/test/CodeGen/X86/inline-asm-output-store.c
+83-0llvm/test/Transforms/GlobalOpt/function-unnamed-addr.ll
+37-31clang/unittests/CIR/ControlFlowTest.cpp
+552-11931 files not shown
+1,108-22037 files

LLVM/project 848381b — clang/lib/CodeGen CGStmt.cpp, clang/test/CodeGen/AArch64 ls64-inline-asm.c

[Clang][CodeGen] Fix volatile and size of inline asm struct output stores

There are two issues fixed by this PR: one where 'volatile' is dropped
and the other where an output tied to a larger input is stored
out-of-bounds:

- Struct outputs returned as integers are stored through an unqualified
  integer lvalue. Two write to a volatile struct collapse into one
  non-volatile store at -O2.
- A tied input larger than the output makes the asm return the input's
  type, and the whole value is stored, resulting in an out-of-bounds
  write.

Fix these by propagating the 'volatile' qualifier correctly and storing
only the destination's bits instead of relying upon the input's size.

Assisted-by: Claude Opus 5.5
DeltaFile
+84-0clang/test/CodeGen/X86/inline-asm-output-store.c
+15-4clang/lib/CodeGen/CGStmt.cpp
+13-0clang/test/CodeGen/AArch64/ls64-inline-asm.c
+112-43 files

OPNSense/plugins 81a7c9c — . README.md LICENSE, net/netflector/src/opnsense/mvc/app/models/OPNsense/Netflector/FieldTypes ServiceTypeField.php

LICENSE/README: sync

Use real names instead of user handles where possible.
DeltaFile
+2-1LICENSE
+1-1net/netflector/src/opnsense/mvc/app/models/OPNsense/Netflector/FieldTypes/ServiceTypeField.php
+1-1README.md
+4-33 files

LLVM/project 0bf0c1f — llvm/lib/CodeGen/SelectionDAG LegalizeTypes.h LegalizeVectorTypes.cpp, llvm/test/CodeGen/X86 partial-reduction-scalarize-vecres.ll

[X86][SDAG] Fix result scalarization of <1 x ty> vectors for partial reductions (#236187)

Without custom lowering, we were crashing for <1 x ty> vector
scalarization for partial reduction results for the X86 backend. This
patch implements the necessary function to fix that, including when the
input type is wider than the accumulator/result type.
DeltaFile
+175-0llvm/test/CodeGen/X86/partial-reduction-scalarize-vecres.ll
+25-0llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
+1-0llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
+201-03 files

LLVM/project 1ef05d0 — libc/include/llvm-libc-types struct_sockaddr.h

[libc] Give struct sockaddr its full sa_data (#236518)

sa_data was one byte, with a comment saying it stood in for a longer
array, which made sizeof(struct sockaddr) four rather than sixteen. Code
sizes address buffers against that: the kernel's sockaddr_vm computes
its padding by subtracting the known fields from sizeof(struct
sockaddr), which underflowed to an array of 2^64 elements

A real address is passed as one of the per-family structures, so the
array only has to fix the size. Fourteen bytes is the size the kernel
and every other libc give it

AI disclosure: this patch was written with Claude Code. I reviewed the
change. There is no test since this is a type definition

Assisted-by: Claude
DeltaFile
+11-4libc/include/llvm-libc-types/struct_sockaddr.h
+11-41 files

OpenBSD/src IqIjGIH — sys/dev/ic bcmgenet.c

   Attach mbuf to the end-of-packet descriptor when sending packets and
   swap the DMA mapping accordingly.  This prevents a potential use-after-free
   by the DMA engine of the network interface discovered by Acts1631.
   Fix based on a suggested diff by Acts1631.

   ok mvs@
VersionDeltaFile
1.14+18-14sys/dev/ic/bcmgenet.c
+18-141 files

LLVM/project 6e17cb3 — clang/include/clang/CIR/Dialect/IR CIRAttrs.td CIROps.td, clang/include/clang/CIR/Interfaces CIROpInterfaces.td

[CIR] Default the fenv attribute and elide it when empty

Floating-point operations carried `fenv` as an optional attribute, so an
attached `#cir.fenv<>` that set no field still printed as `fenv<>` and
lowered to a constrained intrinsic. Make `fenv` a default-valued attribute
whose default is the empty `#cir.fenv<>`: it does not constrain the
operation and is not printed. Codegen always sets every field of the fenv
it attaches, so its output is unchanged. Verifiers, folding, memory effects
and lowering now use the new `getConstrainedFenv()` interface method, which
returns null for the empty attribute. The custom builders that only passed
an empty fenv are dropped; the generated ones default it.

Assisted-by: Claude Code (Opus 5.5).
DeltaFile
+20-47clang/include/clang/CIR/Dialect/IR/CIROps.td
+13-14clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
+25-0clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
+13-8clang/test/CIR/IR/fenv.cir
+9-9clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+5-5clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+85-836 files not shown
+106-10012 files

LLVM/project 17501a9 — clang/lib/CIR/Dialect/IR CIRDialect.cpp, clang/test/CIR/Transforms remove-dead-values-try.cir

[CIR] Fix cir.try successor regions (#231449)

`TryOp::getSuccessorRegions` sent every exit from the try region back to
the parent, so nothing led from the try region to the handlers. A
`cir.resume` ending the try region, left there once FlattenCFG has
flattened an inner cleanup scope, unwinds into a handler, and
`CIRTryOpFlattening` branches it to the handler dispatch block. Most
handlers are entered by an unwind out of a call in the try region
instead, which is not a region branch point, so the edges from the
parent and from every try-region exit stand in for it. Without them,
generic MLIR passes treat such a handler as dead, and `cir-opt
-remove-dead-values` empties it. Take this try:

```mlir
cir.try {
  cir.brcond %cond ^normal, ^unwind
^normal:
  cir.call @may_throw() : () -> ()
  cir.yield

    [28 lines not shown]
DeltaFile
+112-3clang/unittests/CIR/ControlFlowTest.cpp
+40-0clang/test/CIR/Transforms/remove-dead-values-try.cir
+21-9clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+173-123 files

LLVM/project 903e92e — clang/test/CodeGen/X86 inline-asm-output-tbaa.c

Remove the _Complex case from the TBAA test

_Complex outputs aren't returned by value until #236695.

Assisted-by: Claude Opus 5.5
DeltaFile
+3-10clang/test/CodeGen/X86/inline-asm-output-tbaa.c
+3-101 files

LLVM/project 0afcee3 — llvm/lib/Transforms/Vectorize VPlanTransforms.cpp

Remove auto
DeltaFile
+8-10llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+8-101 files

OpenBSD/src Tf6jWPS — usr.bin/tmux window-copy.c window-panes.c

   Show mode content in display-panes and do not resize when a pane is
   chosen, GitHub issue 5812.
VersionDeltaFile
1.7+31-8usr.bin/tmux/window-panes.c
1.444+4-1usr.bin/tmux/window-copy.c
+35-92 files

LLVM/project 67f914c — clang/lib/CIR/CodeGen CIRGenExprScalar.cpp CIRGenFixedPointBuilder.h, clang/test/CIR/CodeGen fixed-point-conversions.cpp fixed-point-arith.cpp

[CIR] Match classic codegen for saturating fixed-point negation and padded conversions

Three CIR fixed-point paths diverged from classic codegen. Unary minus on a
saturating fixed-point type emitted a plain subtraction instead of a
saturating 0 - x. With -fpadding-on-unsigned-fixed-point, float to unsigned
fixed-point conversion used fptoui and compared against 0 as unsigned, so the
clamp to 0 never fired; it now converts and clamps as signed, like
llvm::FixedPointBuilder. A saturating fixed-point conversion that kept the
width but changed signedness returned a value of the source CIR type, which
broke the cir.cmp verifier and needed a pointer bitcast to store; it now
casts to the destination type.

Assisted-by: Claude Code (Opus 5.5).
DeltaFile
+86-0clang/test/CIR/CodeGen/fixed-point-arith.cpp
+12-6clang/lib/CIR/CodeGen/CIRGenFixedPointBuilder.h
+14-0clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
+4-4clang/test/CIR/CodeGen/fixed-point-conversions.cpp
+116-104 files

LLVM/project 9c478a7 — mlir/lib/Conversion/TosaToLinalg TosaToLinalg.cpp, mlir/lib/Dialect/Tosa/IR TosaOps.cpp

[mlir][tosa] Move RESCALE zero-point value checks from the verifier to tosa-validate (#234443)

Part of #233457.

Move the RESCALE input/output zero-point value constraints out of
`RescaleOp::verify()` into the `ERROR_IF` checks in `tosa-validate`,
matching the TOSA specification, where these are conformance rules
rather
than dialect well-formedness requirements.

- `TosaOps.cpp`: drop the zp value checks from `RescaleOp::verify()`;
  type checks stay in the verifier.
- `TosaValidation.cpp`: add the same checks to `checkErrorIfRescale()`,
  reusing the op's verify helpers, gated on `strict-op-spec-alignment`.
  The accepted/rejected set and diagnostics are unchanged.
- `TosaToLinalg.cpp`: add a fail-closed backstop in `RescaleConverter`
so
  conversion without validation rejects invalid zps instead of silently
  lowering incorrect arithmetic.

    [5 lines not shown]
DeltaFile
+0-73mlir/test/Dialect/Tosa/invalid.mlir
+72-0mlir/test/Dialect/Tosa/error_if_check.mlir
+28-0mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
+11-2mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
+10-0mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
+0-8mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
+121-836 files

LLVM/project fbef828 — mlir/include/mlir/Dialect/Tosa/IR TosaProfileCompliance.h, mlir/lib/Dialect/Tosa/Transforms TosaProfileCompliance.cpp

[mlir][tosa] Avoid copying profile compliance metadata (#232774)

Return compliance maps by const reference and pass matching inputs
through ArrayRef to avoid copying entire maps and nested type signatures
during validation.
DeltaFile
+21-19mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
+13-8mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
+34-272 files

LLVM/project 2f2200d — offload/libompaccsupport device.cpp, offload/test/offloading teams_reduction_grid.c

[OpenMP][offload] Size only reductions that fill the device by their size

A cross-team reduction whose loop is too short for one block per compute
unit now gets the grid of a kernel without a reduction. In SPMD mode,
that is the low-trip-count rule, which lowers the number of threads per
block to spread the iterations over more compute units. Keeping all
threads made such reductions, e.g. one of 1792 iterations, up to 2.5x
slower on MI210.

Claude assisted with this patch.
DeltaFile
+30-11offload/test/offloading/teams_reduction_grid.c
+10-6offload/libompaccsupport/device.cpp
+6-4openmp/docs/design/Runtimes.md
+46-213 files

LLVM/project 7424338 — offload/libompaccsupport device.cpp, offload/test/offloading teams_reduction_grid.c

[OpenMP][offload] Size the grid of cross-team reductions by their size

Every block adds to the cost of combining the partial results of a
cross-team reduction. Launch one block per compute unit for reductions
that work with a reduction data size of more than 32 bytes, and enough
blocks for a per-device number of waves per compute unit (16 on AMDGPU)
for the smaller reduction data sizes, capped by the trip count. Such
kernels keep their number of threads: the low-trip-count reduction of
threads does not apply to them. libomptarget reads the number of compute
units and the platform backend of the device through liboffload, as part
of its geometry properties.

This is an upstream port of the corresponding downstream.

Claude assisted with this patch.
DeltaFile
+68-0offload/test/offloading/teams_reduction_grid.c
+60-0offload/libompaccsupport/device.cpp
+15-0openmp/docs/design/Runtimes.md
+143-03 files

LLVM/project a32d772 — clang/lib/CodeGen CGStmt.cpp, clang/test/CodeGen/X86 inline-asm-output-tbaa.c

[Clang][CodeGen] Update the TBAA info for potential aliases

The stores of a _Complex number were tagged as "unsigned long", but
loads were tagged as "float". TBAA reports no aliases if the store and
loads went through different pointers and GVN forwards a stale value.

Fix this by giving the "store" the "omnipotent char" tag, so that TBAA
treats it as aliasing every access to the destination's members. Using
that tag over "Dest.getTBAAInfo()" because it doesn't depend on how
CodeGenTBAA happens to tag struct and _Complex types.

Assisted-by: Claude for testcases.
DeltaFile
+28-0clang/test/CodeGen/X86/inline-asm-output-tbaa.c
+5-1clang/lib/CodeGen/CGStmt.cpp
+33-12 files