LLVM/project 3e6d593clang/include/clang/Basic Attr.td

[Clang] Add C++11/C23-style spellings for Swift import attributes (#183484)

Swift interop attributes such as `swift_name`, `swift_attr`, and
`swift_private` previously only supported GNU-style spelling. Add the
missing `[[]]` attribute spellings for C++11 and C23 compatibility,
bringing them in line with other Clang attributes.
DeltaFile
+11-0clang/include/clang/Basic/Attr.td
+11-01 files

FreeNAS/freenas bb3ab33src/middlewared/middlewared/api/base/server doc.py, src/middlewared/middlewared/pytest/unit/api/base/server test_api_dumper_job_flag.py

NAS-141910 / 27.0.0-BETA.1 / add job flag to json schema (#19384)

Same idea as adding `--keep-refs`. The team working on MCP doesn't have
an easy way to determine if an endpoint is a job and so they're having
to parse the text in the api description. This adds a `job` boolean so
it becomes much easier to programmatically determine if the API endpoint
is a job. Output looks something like
```
{
  "name": "pool.scrub.run",
  "roles": ["..."],
  "doc": "...\n\nThis method is a job.",
  "schemas": { "accepts": { ... }, "returns": { ... } },
  "removed_in": null,
  "job": true,
  "input_pipes": false,
  "output_pipes": false,
  "check_pipes": true
}
```
DeltaFile
+78-0src/middlewared/middlewared/pytest/unit/api/base/server/test_api_dumper_job_flag.py
+2-0src/middlewared/middlewared/api/base/server/doc.py
+80-02 files

LLVM/project be34b47mlir/lib/Dialect/Math/IR MathOps.cpp, mlir/test/Dialect/Math canonicalize.mlir

[mlir][math] Fold FPowIOp with square-and-multiply to match powi expansion (#210982)

Fold math.fpowi using the base's own floating-point semantics via
iterative
square-and-multiply, matching the multiply sequence ExpandPowI builds in
SelectionDAGBuilder. The prior pow/powf-based fold computed in
float/double
and rounded differently from the runtime expansion, disagreeing with
x**n by ~1 ULP.
DeltaFile
+18-12mlir/lib/Dialect/Math/IR/MathOps.cpp
+16-4mlir/test/Dialect/Math/canonicalize.mlir
+34-162 files

LLVM/project a9a25dfllvm/include/llvm/CodeGen RegisterClassInfo.h, llvm/test/CodeGen/AMDGPU llvm.amdgcn.smfmac.gfx950.ll llvm.amdgcn.mfma.gfx950.ll

[CodeGen] Add MachineRegisterClassInfo analysis pass (#210826)

Which is a wrapper of RegisterClassInfo.

This can cache the result of RegisterClassInfo and hence
we can reduce compile time.

Supercedes https://github.com/llvm/llvm-project/pull/120690,
https://github.com/llvm/llvm-project/pull/164877

---------

Co-authored-by: Wang Pengcheng <wangpengcheng.pp at bytedance.com>
Co-authored-by: Patrick Simmons <patrick.simmons at amd.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
DeltaFile
+370-370llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
+306-306llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
+230-230llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
+226-230llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
+72-72llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
+43-0llvm/include/llvm/CodeGen/RegisterClassInfo.h
+1,247-1,20892 files not shown
+1,658-1,27698 files

LLVM/project ba2b555mlir/test/CAPI rewrite.c

[mlir-c] Fix pattern-set leak in rewrite.c materialization tests

The materialization tests added in #208934 freeze their MlirRewritePatternSet
but never destroy it. mlirFreezeRewritePattern only moves the patterns out of
the heap-allocated RewritePatternSet; the container itself must still be freed
with mlirRewritePatternSetDestroy (as testConversionTargetDynamicLegality
already does). The leak was caught by LeakSanitizer on the aarch64 HWASan
bootstrap bot (builder 55).
DeltaFile
+2-0mlir/test/CAPI/rewrite.c
+2-01 files

FreeBSD/src 4db3872secure/libexec Makefile, secure/libexec/ssh-sk-helper Makefile

Only build secure/libexec/ssh-sk-helper if MK_USB == no

The ssh-sk-helper utility only functions if/when MK_USB == yes.
Installing it on systems where MK_USB == no doesn't make sense.

Differential Revision:  https://reviews.freebsd.org/D58246
DeltaFile
+1-4secure/libexec/ssh-sk-helper/Makefile
+3-1secure/libexec/Makefile
+2-0tools/build/mk/OptionalObsoleteFiles.inc
+6-53 files

LLVM/project 255d001flang/lib/Lower/OpenMP OpenMP.cpp, flang/test/Lower/OpenMP implicit-map-flat-allocatable-no-mapper.f90 defaultmap.f90

[flang][OpenMP] Don't emit implicit default mapper for flat allocatable derived types (#209645)

An allocatable or pointer capture of a derived type in a `target` region
triggers
synthesis of an implicit default declare mapper for the type. The gate
keyed only on
whether the captured *variable* was allocatable, not on whether the
*type* needs a
mapper:

```cpp
if (!isPointer && (hasDefaultMapper || isAllocatable)) {
```

For a flat type -- all components trivially mappable, no
allocatable/pointer/nested
record members -- the mapper is unnecessary. The object maps as a plain
bulk copy.
Emitting a mapper anyway lowers to a per-element, per-component mapper

    [68 lines not shown]
DeltaFile
+23-0flang/test/Lower/OpenMP/implicit-map-flat-allocatable-no-mapper.f90
+7-1flang/lib/Lower/OpenMP/OpenMP.cpp
+4-1flang/test/Lower/OpenMP/defaultmap.f90
+2-2flang/test/Lower/OpenMP/derived-type-map.f90
+2-0flang/test/Lower/OpenMP/implicit-map-pointer-no-default-mapper.f90
+38-45 files

FreeNAS/freenas a30a77dsrc/middlewared/middlewared/api/base/server doc.py

add job flag to json schema
DeltaFile
+2-0src/middlewared/middlewared/api/base/server/doc.py
+2-01 files

FreeNAS/freenas e9dd239src/middlewared/debian control

NAS-141903 / 27.0.0-BETA.1 / Depend on openipmi explicitly (#19381)

## Problem
The IPMI plugin starts the `openipmi` systemd service on any system with
a real BMC (`ipmi.py` setup, gated on dmidecode `has-ipmi`), and that
unit — which loads the `ipmi_si`/`ipmi_devintf` kernel modules that
create `/dev/ipmi0` — is shipped by the Debian `openipmi` package. We
only declared `ipmitool` in Depends though, and openipmi rode in purely
as `ipmitool`'s `Recommends:`. Once truenas_build disabled
`install_recommends` by default, openipmi silently stopped being
installed, so on IPMI-capable hardware the service start fails,
`/dev/ipmi0` never appears, and all IPMI LAN/user configuration breaks.

## Solution
Add `openipmi` to middlewared's `Depends`. Same fix as the websockify
case — it's a genuine hard runtime dependency that was only surviving as
a recommend, so declaring it explicitly makes it independent of the
build's recommends setting.
DeltaFile
+1-0src/middlewared/debian/control
+1-01 files

OPNSense/core 5023639src/opnsense/mvc/app/controllers/OPNsense/Base UserInformationalException.php UserWarningException.php

mvc: style sweep
DeltaFile
+1-2src/opnsense/mvc/app/controllers/OPNsense/Base/UserInformationalException.php
+1-2src/opnsense/mvc/app/controllers/OPNsense/Base/UserWarningException.php
+2-42 files

FreeNAS/freenas d3154besrc/middlewared/middlewared/apps webshell_app.py, src/middlewared/middlewared/utils os.py

webshell: fix sessions hanging with a blank terminal

login(1) hangs up and reopens its tty at session start, so reads on
the pty master transiently fail with EIO. The reader thread treated
any read error as fatal and exited silently: the UI showed
"connected" but the terminal stayed blank while the shell kept
running with nobody forwarding its output. Treat EIO as fatal only
when the shell child is gone (50ms retry, 5s cap).

Also harden the worker teardown:

- abort() closed master_fd while the reader/writer threads still
  used the fd number; it now only signals and kills the child, and
  run() reaps, joins, then closes under try/finally.
- terminate_pid(use_pgid=True) before the child's setsid() resolved
  to middlewared's own process group and could kill the daemon;
  signal the pid directly when the group is the caller's own.
- Bound every teardown wait: WNOHANG reap (D-state child), 30s
  websocket send (stalled client). Catch BaseException so thread

    [2 lines not shown]
DeltaFile
+126-68src/middlewared/middlewared/apps/webshell_app.py
+49-0tests/api2/test_webshell_io.py
+8-3src/middlewared/middlewared/utils/os.py
+183-713 files

LLVM/project 57f9d6fllvm/lib/Target/AMDGPU SIInstrInfo.cpp, llvm/test/CodeGen/AMDGPU packed-fp64.ll

[AMDGPU] Fix legalization of V_PK_*64 SGPR to VGPR change

Special case for V_PK_*64 instructions: these do not have OPSEL but SGPR
sources behave like OPSEL is set replicating low 64-bits into high. VGPR
sources in turn read actual 4 registers. To move operand from an SGPR to
a VGPR we need to replicate low half.
DeltaFile
+122-0llvm/test/CodeGen/AMDGPU/packed-fp64.ll
+26-1llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+148-12 files

FreeNAS/freenas adfa7desrc/middlewared/middlewared/plugins/kmip zfs_keys.py

NAS-141882 / 26.0.0-RC.1 / Fix `clear_sync_pending_zfs_keys` (#19362)

The bug — zfs_keys.py:164: clear_sync_pending_zfs_keys called
datastore.update('storage.encrypteddataset', {'kmip_uid': None}),
passing the update data dict into the id_or_filters position and leaving
the required data argument unfilled. Any dataset that still held a local
encryption_key triggered TypeError: DatastoreService.update() missing 1
required positional argument: 'data', which aborted the whole function —
so the sibling datastore.delete on line 167 never ran and orphan rows
were left behind.
DeltaFile
+1-1src/middlewared/middlewared/plugins/kmip/zfs_keys.py
+1-11 files

FreeNAS/freenas 22adeeasrc/middlewared/middlewared/plugins/kmip zfs_keys.py

NAS-141883 / 26.0.0-RC.1 / Fix KMIP in-memory cache being wiped after every push (#19363)

zfs_keys.py:102 (and the same in pull) — {k: v for k, v in
store.zfs_keys.items() if k in existing_datasets} compares dataset names
against a list of dicts, so it always evaluates false and wipes the
in-memory cache after every push. That's why kmip_sync_pending stays
true after a successful push, which is what forces several tests to use
force_clear.
DeltaFile
+4-2src/middlewared/middlewared/plugins/kmip/zfs_keys.py
+4-21 files

FreeNAS/freenas 6afb569src/middlewared/middlewared/plugins/kmip connection.py

NAS-141884 / 26.0.0-RC.1 / Fix `kmip_connection` error handling (#19364)

PyKMIP re-raises the bare ConnectionRefusedError, which isn't in the
caught tuple.
DeltaFile
+1-2src/middlewared/middlewared/plugins/kmip/connection.py
+1-21 files

FreeNAS/freenas 58b62ddsrc/middlewared/middlewared main.py, src/middlewared/middlewared/api/base/server doc.py

NAS-141908 / 27.0.0-BETA.1 / add --keep-refs to --dump-api (#19383)

This is needed for the MCP feature since they're using the dump-api
command to generate typescript interfaces from our json schemas. Should
be no change in functionality, just an extra argument.
DeltaFile
+143-0src/middlewared/middlewared/pytest/unit/api/base/server/test_api_dumper_keep_refs.py
+24-3src/middlewared/middlewared/api/base/server/doc.py
+13-5src/middlewared/middlewared/main.py
+180-83 files

LLVM/project 5431603llvm/lib/Transforms/Utils SimplifyCFG.cpp, llvm/test/Transforms/SimplifyCFG switch-simplify-default.ll

Revert "[SimplifyCFG] Simplify switch default branch when branch proves operand value" (#211341)

Reverts llvm/llvm-project#206597

Causes verifier issues:
https://github.com/llvm/llvm-project/pull/206597#issuecomment-5049789740
DeltaFile
+0-297llvm/test/Transforms/SimplifyCFG/switch-simplify-default.ll
+0-41llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+0-3382 files

LLVM/project 6f2ba12lldb/source/Plugins/SymbolFile/DWARF SymbolFileWasm.cpp, lldb/test/Shell/SymbolFile/DWARF wasm-data-symbol.yaml

[lldb] Synthesize data symbols for plain C globals on WebAssembly (#211301)

The Wasm name section names functions but not data, so LLDB recovers
data symbols from the DWARF. It only did so for variables with a linkage
name, such as a C++ vtable, so a plain C global, which has only a
DW_AT_name, got no symbol and its address did not resolve back to a
name. Use the source name when there is no linkage name.
DeltaFile
+84-0lldb/test/Shell/SymbolFile/DWARF/wasm-data-symbol.yaml
+22-12lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.cpp
+106-122 files

FreeNAS/freenas 83e1b55src/middlewared/middlewared main.py

get rid of messy line
DeltaFile
+3-4src/middlewared/middlewared/main.py
+3-41 files

FreeNAS/freenas 3fd2b22tests/api2 test_snapshot_task_crud.py test_snapshot_task_run.py

ruff
DeltaFile
+53-13tests/api2/test_snapshot_task_crud.py
+14-3tests/api2/test_snapshot_task_run.py
+11-3tests/api2/test_snapshot_task_attachment.py
+78-193 files

LLVM/project b47174dllvm/lib/Transforms/Vectorize VPlanTransforms.cpp LoopVectorizationPlanner.h

[VPlan] Add createWiden{Load,Store} VPBuilder members (NFC) (#210543)

Add member functions to create wide load/store and migrate various sites
to use them.

It also updates makeMemOpWideningDecisions to use it. For consistency,
ReplaceWith has been updated to always require inserted recipes.

PR: https://github.com/llvm/llvm-project/pull/210543
DeltaFile
+20-20llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+21-0llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+8-10llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+49-303 files

LLVM/project 8ae7803mlir/include/mlir/Dialect/EmitC/IR EmitC.td, mlir/lib/Dialect/EmitC/IR EmitC.cpp

[mlir][emitc] Add compound assignment ops (#210233)
DeltaFile
+84-0mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
+48-11mlir/lib/Target/Cpp/TranslateToCpp.cpp
+22-11mlir/lib/Dialect/EmitC/IR/EmitC.cpp
+18-0mlir/test/Target/Cpp/common-cpp.mlir
+17-0mlir/test/Dialect/EmitC/invalid_ops.mlir
+17-0mlir/test/Dialect/EmitC/ops.mlir
+206-226 files

LLVM/project 63c04a4clang/include/clang/Basic TargetInfo.h, clang/lib/AST ASTContext.cpp

convert to exec-charset inside getPredefinedStringLiteralFromCache, test __builtin_FILE()
DeltaFile
+10-0clang/lib/AST/ASTContext.cpp
+4-0clang/test/CodeGen/systemz-charset.cpp
+3-0clang/lib/Basic/TargetInfo.cpp
+2-1clang/lib/Lex/TextEncoding.cpp
+2-0clang/include/clang/Basic/TargetInfo.h
+21-15 files

LLVM/project 2e2da39clang/docs LanguageExtensions.md, clang/include/clang/Options Options.td

Enable driver changes for fexec-charset
DeltaFile
+14-6clang/lib/Driver/ToolChains/Clang.cpp
+14-4clang/include/clang/Options/Options.td
+11-3clang/test/Driver/clang_f_opts.c
+10-0llvm/lib/Support/TextEncoding.cpp
+4-3clang/test/Driver/cl-options.c
+3-3clang/docs/LanguageExtensions.md
+56-193 files not shown
+60-199 files

LLVM/project 0af40d3clang/lib/AST ASTContext.cpp, clang/lib/Lex TextEncoding.cpp

Convert the key before cache lookup to prevent encoding differences
DeltaFile
+9-9clang/lib/AST/ASTContext.cpp
+1-1clang/lib/Lex/TextEncoding.cpp
+10-102 files

LLVM/project 1e7dca8clang/include/clang/Options Options.td, clang/lib/Driver/ToolChains Clang.cpp

address comments
DeltaFile
+3-3clang/include/clang/Options/Options.td
+1-1clang/lib/Driver/ToolChains/Clang.cpp
+4-42 files

LLVM/project 674d440clang/lib/AST PrintfFormatString.cpp ScanfFormatString.cpp

change char literals to u8'' to preserve behaviour in the case the
compiler is compiled with a different fexec-charset
DeltaFile
+44-44clang/lib/AST/PrintfFormatString.cpp
+28-28clang/lib/AST/ScanfFormatString.cpp
+28-27clang/lib/AST/FormatString.cpp
+100-993 files

FreeNAS/freenas d3cb889src/middlewared/middlewared/apps webshell_app.py, src/middlewared/middlewared/utils os.py

webshell: fix silent reader/writer thread death and fd lifecycle

login(1) hangs up and reopens its tty at session start: pty_close()
of the vhangup'd slave sets TTY_OTHER_CLOSED on the master and wakes
its readers, so os.read() returned EIO until pty_open() cleared the
flag on reopen. The reader treated any read error as fatal and
exited; the shell kept running with no output forwarded. Treat
read/write EIO as fatal only when the child is gone; retry with 50ms
backoff.

abort() closed master_fd while the reader/writer threads still used
the fd number, so a recycled number (e.g. the next session's
forkpty) could receive their I/O. abort() now only signals and kills
the child; run() reaps it, joins both threads, then closes
master_fd. A post-fork check covers abort() racing the fork.

Catch BaseException in both threads: a BaseException propagated
through Future.result() (SystemExit, or asyncio.CancelledError via
asyncio's exception conversion) escaped except Exception, killing

    [33 lines not shown]
DeltaFile
+177-106src/middlewared/middlewared/apps/webshell_app.py
+49-0tests/api2/test_webshell_io.py
+9-3src/middlewared/middlewared/utils/os.py
+235-1093 files

LLVM/project 8c55656llvm/lib/Transforms/Scalar LowerMatrixIntrinsics.cpp, llvm/test/Transforms/LowerMatrixIntrinsics phi.ll

[Matrix] Use incoming terminator as insert point in visitPHI. (#211211)

For some instructions, like invoke, getInsertionPointAfterDef may return
an std::nullopt. Using the insert point after the phi is then incorrect.
Use the incoming terminator as default insert point to fix a crash in
the added test cases.

PR: https://github.com/llvm/llvm-project/pull/211211
DeltaFile
+74-0llvm/test/Transforms/LowerMatrixIntrinsics/phi.ll
+3-3llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
+77-32 files

LLVM/project 4e833e2libc/src/__support/FPUtil FEnvImpl.h, libc/test/UnitTest FEnvSafeTest.cpp

[libc] Add missing functions in FEnvImpl.h under LIBC_MATH_USE_SYSTEM_FENV config. (#211303)
DeltaFile
+6-11libc/test/UnitTest/FEnvSafeTest.cpp
+14-0libc/src/__support/FPUtil/FEnvImpl.h
+2-5libc/test/src/math/RoundToIntegerTest.h
+2-5libc/test/src/math/smoke/RIntTest.h
+2-5libc/test/src/math/RIntTest.h
+1-4libc/test/src/math/smoke/NextTowardTest.h
+27-308 files not shown
+29-4914 files