FreeNAS/freenas 45e86cd — src/middlewared/middlewared main.py, src/middlewared/middlewared/plugins/account_ privilege_crud.py privilege_admins.py

Address review
DeltaFile
+12-12src/middlewared/middlewared/plugins/account_/privilege_roles.py
+0-9src/middlewared/middlewared/plugins/account_/privilege_constants.py
+7-0src/middlewared/middlewared/utils/privilege.py
+5-1src/middlewared/middlewared/main.py
+1-2src/middlewared/middlewared/plugins/account_/privilege_admins.py
+1-1src/middlewared/middlewared/plugins/account_/privilege_crud.py
+26-252 files not shown
+27-278 files

LLVM/project effccaf — flang/lib/Lower ConvertCall.cpp, flang/lib/Optimizer/CodeGen TargetRewrite.cpp CodeGen.cpp

[flang][cuda] Allocate descriptors in managed memory only when the device reads them (#234579)

Example:
```fortran
subroutine s(x)
  real, device :: x(:)
end subroutine

real, device, allocatable :: a(:)
allocate(a(8))
do i = 1, n
  call s(a)
end do
```

In this code, each `call s(a)` builds a temporary descriptor for `a`.
Codegen stores a temporary descriptor either in an `alloca` or, when
`isDeviceAllocation` says the data is device-resident, in managed memory
from `CUFAllocDescriptor`. A managed descriptor may be read by an

    [16 lines not shown]
DeltaFile
+39-124flang/lib/Optimizer/CodeGen/CodeGen.cpp
+103-24flang/test/Fir/CUDA/cuda-code-gen.mlir
+45-0flang/test/Lower/CUDA/cuda-bindc-call-data-attr.cuf
+45-0flang/test/Fir/target-rewrite-call-attrs.fir
+34-2flang/lib/Lower/ConvertCall.cpp
+26-5flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
+292-1552 files not shown
+299-1578 files

LLVM/project 281a0db — flang/test/Integration/OpenMP map-types-and-sizes.f90, mlir/lib/Target/LLVMIR/Dialect/OpenMP OpenMPToLLVMIRTranslation.cpp

[Flang][OpenMP] Fix OpenMP data-mapping stride calculation (#225653)

The calculation of strides when mapping individual sub-arrays from
multi-dimensional array, the calcuation of the stride was missing such
that when mapping all of the multi-dim array only a fraction was
actually mapped.

---------

Signed-off-by: Dominik Adamski <dominik.adamski at amd.com>
Co-authored-by: Dominik Adamski <dominik.adamski at amd.com>
Co-authored-by: Claude Opus 4 (1M context) <noreply at anthropic.com>
DeltaFile
+69-29mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+63-0offload/test/offloading/fortran/target-enter-data-single-element-multidim.f90
+40-0mlir/test/Target/LLVMIR/omptarget-array-section-single-element-host.mlir
+14-10flang/test/Integration/OpenMP/map-types-and-sizes.f90
+6-2mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
+1-1mlir/test/Target/LLVMIR/omptarget-nested-ptr-record-type-mapping-host.mlir
+193-426 files

LLVM/project df4dc78 — llvm/lib/Bitcode/Writer BitcodeWriter.cpp, llvm/test/ThinLTO/X86 distributed_indexes.ll

[ThinLTO] Write distributed index summaries in GUID order (#234322)

The writer emitted each module's summaries in DenseMap order, which
depends on insertion order. Adding or changing an unrelated module can
change that order, so an unchanged module's .thinlto.bc gets different
bytes even though its contents are the same. Build systems that cache
backend compiles by input bytes then rerun them for nothing.

Sort the summaries by GUID before writing, as the full-index path
already does.

Assisted by Opus 5.5
DeltaFile
+101-0llvm/unittests/Bitcode/BitReaderTest.cpp
+24-9llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
+4-3llvm/test/ThinLTO/X86/distributed_indexes.ll
+129-123 files

pkgng/pkgng dbebcb1 — . NEWS, libpkg/repo/binary query.c

rwhich: resolve the directory index only once

The file listing of a repository starts with a dictionary of all the
directories it references, which can hold close to a million entries for
the ports repository.

Empty lines delimit both the dictionary from the packages and the packages
from each other, so the code looking up the requested directory in the
dictionary was run again for every package.  When the directory is not
found, whole dictionary was scanned once per package.

Look the directory up only once, when the dictionary has been parsed.
DeltaFile
+13-5libpkg/repo/binary/query.c
+2-0NEWS
+15-52 files

LLVM/project de64e64 — libc/src/__support/math exp_double_utils.h exp_double_eval.h

Remove redundant typename from non-dependent type aliases.
DeltaFile
+2-2libc/src/__support/math/exp_utils.h
+1-1libc/src/__support/math/exp_double_utils.h
+1-1libc/src/__support/math/exp_double_eval.h
+1-1libc/src/__support/math/exp2_double_eval.h
+1-1libc/src/__support/math/exp2_accurate_128.h
+6-65 files

LLVM/project fdf249f — libc/src/__support/math exp2_accurate_128.h exp_double_eval.h, libc/test/src/math exp_test.cpp

[libc][math] Optimize exp and share double-precision evaluation with exp2.

Refactor double-precision exp to share most of the computations with exp2,
and adding support for `LIBC_MATH_HAS_SMALL_TABLES` and
`LIBC_MATH_HAS_SKIP_ACCURATE_PASS`.

Assisted by: Gemini is used for performance and code size analysis and refactoring.
DeltaFile
+13-433libc/src/__support/math/exp.h
+155-91libc/test/src/math/exp_test.cpp
+85-79libc/src/__support/math/exp_utils.h
+153-0libc/src/__support/math/exp_double_eval.h
+83-44libc/test/src/math/smoke/exp_test.cpp
+50-13libc/src/__support/math/exp2_accurate_128.h
+539-66010 files not shown
+705-71616 files

LLVM/project a4fc575 — libc/src/__support/math exp_utils.h

Update hi range comment on exp2_eval.
DeltaFile
+7-1libc/src/__support/math/exp_utils.h
+7-11 files

LLVM/project 09ac575 — llvm/lib/Transforms/InstCombine InstCombineInternal.h InstCombineCasts.cpp, llvm/test/Transforms/InstCombine load-cmp.ll

[InstCombine] support trunc to i1 cond in foldCmpLoadFromIndexedGlobal (#234284)

proof: https://alive2.llvm.org/ce/z/km3mx_
DeltaFile
+29-0llvm/test/Transforms/InstCombine/load-cmp.ll
+12-11llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
+9-0llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
+2-1llvm/lib/Transforms/InstCombine/InstCombineInternal.h
+52-124 files

LLVM/project 97ea3c5 — flang/docs C++style.md

[flang][docs] Relax {}-initialization rule for objects declared with auto

See RFC at
https://discourse.llvm.org/t/rfc-relaxing-coding-standard-rule-for-initialization/92443

This relaxed the rule for objects declared with auto as per the agreement
made in the Flang community call on Wed, Oct 21, 2026.
DeltaFile
+2-1flang/docs/C++style.md
+2-11 files

LLVM/project aea0e45 — llvm/include/llvm/ExecutionEngine/Orc Core.h

[ORC] Remove declarations without definitions (NFC) (#234496)

The definitions of JITDylib::transferEmittedNodeDependencies and
JITDylib::addDependencies were removed on January 31, 2024 in commit
ebe8733a11e735bb9f5ca45ec752c2a416380c8d, leaving the declarations
behind.

Assisted-by: Antigravity
DeltaFile
+0-7llvm/include/llvm/ExecutionEngine/Orc/Core.h
+0-71 files

LLVM/project bb8f8ed — clang/test/ClangScanDeps logging-two-threads.c

[clang][ClangScanDeps] Match pcm file names in logging-two-threads.c (#234319)

The test's patterns for A's and B's pcms were too coarse: they match any
line whose path contains `A-` or `B-`, not just the pcm files. Some CI
environments have such paths, and there the TSA count (added in
0db95253f939, #210587) also counts B's line, and fails when both threads
validate A.

This PR matches the modules by their pcm file names (e.g.
"/A-<hash>.pcm").

rdar://190466150
Assisted-by: Claude Opus 5.5
DeltaFile
+18-16clang/test/ClangScanDeps/logging-two-threads.c
+18-161 files

LLVM/project 9e392a7 — llvm/lib/Transforms/Vectorize VPlanRecipes.cpp

Add to switch cases
DeltaFile
+2-0llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+2-01 files

LLVM/project 49eb5f9 — llvm/test/Transforms/InstCombine insert-val-extract-elem.ll

[InstCombine] Generate test checks (NFC) (#234648)
DeltaFile
+29-16llvm/test/Transforms/InstCombine/insert-val-extract-elem.ll
+29-161 files

LLVM/project ed0624e — flang/lib/Semantics check-cuda.cpp, flang/test/Semantics/CUDA cuf-hostdevice-return-guard.cuf cuf-hostdevice-generic-diagnostics.cuf

[flang][CUDA] Clarify host and device call diagnostics (#232850)

Report the callee's CUDA attribute and the calling context in CUDA
procedure-call diagnostics. Retain both the referenced generic name and
the selected specific procedure name when they differ, and report actual
attributes such as GRID_GLOBAL instead of inferring the callee kind from
the caller.

For example, a call to a HOST procedure from an unguarded HOST,DEVICE
procedure reports:

```text
'foo', a procedure with the HOST attribute, may not be called from HOST,DEVICE code
```

Use lowercase `host` and `device` for individual calling contexts and
uppercase `HOST,DEVICE` for the combined context. Keep attribute names
uppercase. The message does not prescribe an ON_DEVICE() guard, since
some rejected calls occur in specification expressions where an IF guard

    [7 lines not shown]
DeltaFile
+35-35flang/test/Semantics/CUDA/cuf-hostdevice-expression-context.cuf
+69-0flang/test/Semantics/CUDA/cuf-call-diagnostics.cuf
+53-0flang/test/Semantics/CUDA/cuf-call-callee-kind.cuf
+20-20flang/test/Semantics/CUDA/cuf-hostdevice-return-guard.cuf
+20-20flang/test/Semantics/CUDA/cuf-hostdevice-generic-diagnostics.cuf
+21-13flang/lib/Semantics/check-cuda.cpp
+218-889 files not shown
+252-12215 files

LLVM/project 57ce1e7 — 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…"

This reverts commit 60f47a7aa5af49a5a590e6547b80cdd6036eb6b1.
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 a6d825f — llvm/test/Transforms/LoopVectorize/WebAssembly/CostModel int-mac-reduction-costs.ll luma_dominant.ll

[NFC][WebAssembly] Precommit tests (#234647)

Cost model tests for the loop vectorizer.
DeltaFile
+638-0llvm/test/Transforms/LoopVectorize/WebAssembly/CostModel/variance-8x16.ll
+279-0llvm/test/Transforms/LoopVectorize/WebAssembly/CostModel/luma_dominant.ll
+218-0llvm/test/Transforms/LoopVectorize/WebAssembly/CostModel/int-mac-reduction-costs.ll
+1,135-03 files

LLVM/project 02a1978 — clang/lib/CIR/CodeGen CIRGenFunction.h CIRGenFunction.cpp, clang/test/CIR/CodeGenCoroutines coro-await.cpp

[CIR] Support CoawaitExpr in emitLValue (#232280)

In `CIRGenFunction::emitLValue`, `Expr::CoawaitExprClass` previously
called `errorNYI`. When a coroutine awaits an expression whose
`await_resume()` returns an lvalue reference (for example, `int &x =
co_await awaiter;` or `(co_await awaiter) = 42;`), Clang evaluates the
`CoawaitExpr` as an lvalue.

This patch:
- Routes `Expr::CoawaitExprClass` to `emitCoawaitLValue` in
`CIRGenFunction::emitLValue`.
- Refactors `emitCoawaitLValue` and `emitCoyieldLValue` into a shared
`emitSuspendLValue` helper.
- Handles resume expressions in try/catch (where `tmpResumeLValAddr` is
null) by asserting `isResumeExprInTryCatch` and returning a null pointer
lvalue.
- Adds FileCheck tests in
`clang/test/CIR/CodeGenCoroutines/coro-await.cpp`, including test
coverage with C++ exceptions enabled.

Fixes #232232.
DeltaFile
+75-0clang/test/CIR/CodeGenCoroutines/coro-await.cpp
+41-23clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
+1-2clang/lib/CIR/CodeGen/CIRGenFunction.cpp
+1-0clang/lib/CIR/CodeGen/CIRGenFunction.h
+118-254 files

LLVM/project 7f8590c — llvm/lib/Target/AArch64 AArch64SVEInstrInfo.td AArch64ISelLowering.cpp

fixup! [AArch64][llvm] Combine SVE AND-NOT operations into BIC for _m forms

Select merging AND-NOT operations with TableGen patterns instead of the C++ combine. Preserve the first operand in inactive lanes and use an unpredicated BIC when both predicates are all-active.
DeltaFile
+0-33llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+20-0llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
+20-332 files

LLVM/project 1e33a72 — llvm/lib/Target/AArch64 AArch64ISelLowering.cpp, llvm/test/CodeGen/AArch64 sve-intrinsics-and-not.ll

[AArch64][llvm] Combine SVE AND-NOT operations into BIC for _m forms

Replace NOT followed by merging AND with BIC for expressions such as:

  return svand_u32_m(pg, a, svnot_u32_x(pg, b));

Combine when NOT is the second operand and its predicate matches the AND
predicate or is all-active.

Use predicated BIC to preserve the AND's first operand in inactive
lanes. Use unpredicated BIC when the AND predicate is all-active.

Do not commute merging AND operands, since this would change inactive
results. Leave pairs with incompatible predicates unchanged.

This applies to all integer element widths. Update the pre-commit LLVM
expectations, including cases where combining would change the
result.
DeltaFile
+12-48llvm/test/CodeGen/AArch64/sve-intrinsics-and-not.ll
+33-0llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+45-482 files

LLVM/project 612d979 — polly/ci polly-x86_64-linux.py polly-x86_64-linux-plugin.py

[Polly][CI] Disable CIR (#234667)

The workers do not have sufficient memory to build CIR
DeltaFile
+2-0polly/ci/polly-x86_64-linux-test-suite.cmake
+1-0polly/ci/polly-x86_64-linux.py
+1-0polly/ci/polly-x86_64-linux-plugin.py
+4-03 files

LLVM/project 9bded32 — libc/src/unistd/linux CMakeLists.txt execlp.cpp

[libc] Deduplicate va_list to argv extraction using exec_with_arg_list (#234581)

Deduplicate the `va_list` to `argv` VLA extraction logic across `execl`,
`execle`, and `execlp` into a shared `internal::exec_with_arg_list`
helper in `libc/src/unistd/linux/exec_utils.h`.

Follow-up to #232901 suggested by @labath.
DeltaFile
+35-0libc/src/unistd/linux/exec_utils.h
+7-23libc/src/unistd/linux/execl.cpp
+6-23libc/src/unistd/linux/execlp.cpp
+7-22libc/src/unistd/linux/execle.cpp
+2-3libc/src/unistd/linux/CMakeLists.txt
+57-715 files

LLVM/project 96015be — llvm/lib/Target/AArch64 AArch64SVEInstrInfo.td

fixup! [AArch64][llvm] Combine SVE AND-NOT operations into BIC for _x forms

Remove the extra AND_U patterns for all-active NOT, ordinary LLVM NOT
and register AND fallback. The C++ helper lowers ordinary cases to
AND and retains matching-predicate AND-NOT pairs for the remaining BIC
pattern.
DeltaFile
+0-14llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
+0-141 files

LLVM/project e0f04bf — libc/hdr/func CMakeLists.txt, libc/hdr/types CMakeLists.txt

Revert "[libc] Remove full header dependencies from proxy header targets (#23…"

This reverts commit a31ede812af71c660347413af1d55164c5dbde87.
DeltaFile
+70-1libc/hdr/types/CMakeLists.txt
+4-4libc/hdr/func/CMakeLists.txt
+0-6libc/test/src/sys/select/CMakeLists.txt
+1-3libc/test/src/sys/select/select_ui_test.cpp
+1-3libc/test/src/sys/select/select_failure_test.cpp
+1-1libc/test/src/unistd/faccessat_test.cpp
+77-183 files not shown
+78-219 files

LLVM/project 6f66159 — llvm/lib/Target/SPIRV SPIRVNonSemanticDebugHandler.h SPIRVNonSemanticDebugHandler.cpp

[SPIRV] Emit each debug scope from getOrCreateDebugScope.

Handlers return the opcode and the operands. getOrCreateDebugScope writes that instruction with a fresh id.
DeltaFile
+167-173llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
+123-93llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
+290-2662 files

LLVM/project a5a718d — libc/cmake/modules LLVMLibCTestRules.cmake, libc/test/src/math CMakeLists.txt

[libc][cmake] Unify test suite creation and hierarchy in add_libc_testsuite. (#234465)

- Expand `add_libc_testsuite` to unconditionally create `<suite_name>`
and `<suite_name>-build` and wire them into `<parent_suite>` and
`<parent_suite>-build` (defaulting to `libc-tests` unless `ROOT` or
`PARENT <parent_suite>` is specified).
- Remove lazy test suite creation.
- Folding `add_libc_exhaustive_testsuite`,
`add_libc_long_running_testsuite`, and `add_libc_integration_test_suite`
into `add_libc_testsuite`.
- Consolidate `NO_RUN_POSTBUILD` and exhaustive suites into a single
`BUILD_ONLY` option across `add_libc_testsuite` and `add_libc_test`,
naming executables `*.__build_only__` so Lit ignores them during
`check-libc` while keeping `<fq_target_name>` runner targets for manual
invocation.
- Migrate all test suite definitions across `libc/test/` and
`libc/benchmarks/gpu/` to `add_libc_testsuite` and standardize suite
names on `libc-*-tests` and `libc-*-integration-tests`.

Assisted-by: Gemini
DeltaFile
+282-285libc/test/src/math/CMakeLists.txt
+69-96libc/cmake/modules/LLVMLibCTestRules.cmake
+51-101libc/test/src/math/exhaustive/CMakeLists.txt
+70-70libc/test/src/unistd/CMakeLists.txt
+59-59libc/test/src/wchar/CMakeLists.txt
+32-63libc/test/src/mathvec/exhaustive/CMakeLists.txt
+563-674112 files not shown
+1,109-1,310118 files

LLVM/project 7ece04a — libc/src/__support/OSUtil/linux/syscall_wrappers CMakeLists.txt epoll_ctl.h, libc/src/sys/epoll/linux CMakeLists.txt epoll_ctl.cpp

[libc] Use a syscall wrapper for `epoll_ctl` (#234572)

This PR move `epoll_ctl` behind the centralized syscall wrappers,
following `libc/docs/dev/syscall_wrapper_refactor.md`.
DeltaFile
+36-0libc/src/__support/OSUtil/linux/syscall_wrappers/epoll_ctl.h
+17-1utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+5-11libc/src/sys/epoll/linux/epoll_ctl.cpp
+13-0libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
+4-2libc/src/sys/epoll/linux/CMakeLists.txt
+75-145 files

LLVM/project b51f04f — llvm/docs AMDGPUUsage.rst, llvm/test/CodeGen/NVPTX store-sm60.ll load-sm70.ll

[libc++][docs] Merge main into feature table rewrite

LLM-aided
DeltaFile
+22,584-0llvm/test/CodeGen/NVPTX/load-sm90.ll
+0-22,223llvm/docs/AMDGPUUsage.rst
+21,644-0llvm/test/CodeGen/NVPTX/store-sm90.ll
+20,068-0llvm/test/CodeGen/NVPTX/load-sm60.ll
+19,684-0llvm/test/CodeGen/NVPTX/load-sm70.ll
+19,088-0llvm/test/CodeGen/NVPTX/store-sm60.ll
+103,068-22,2232,609 files not shown
+286,825-86,4552,615 files

LLVM/project bf4ec75 — llvm/docs AMDGPUUsage.rst, llvm/test/CodeGen/NVPTX store-sm60.ll load-sm70.ll

[libc++][docs] Merge main into feature table renames

LLM-aided
DeltaFile
+22,584-0llvm/test/CodeGen/NVPTX/load-sm90.ll
+0-22,223llvm/docs/AMDGPUUsage.rst
+21,644-0llvm/test/CodeGen/NVPTX/store-sm90.ll
+20,068-0llvm/test/CodeGen/NVPTX/load-sm60.ll
+19,684-0llvm/test/CodeGen/NVPTX/load-sm70.ll
+19,088-0llvm/test/CodeGen/NVPTX/store-sm60.ll
+103,068-22,2232,609 files not shown
+286,825-86,4552,615 files

LLVM/project acc6ec3 — llvm/lib/Transforms/IPO MemProfContextDisambiguation.cpp, llvm/test/Transforms/MemProfContextDisambiguation inlined3.ll trimmed-context-recursive.ll

[MemProf] Honor trimmed contexts when assigning callsite clones to function clones (#230351)

Contexts trimmed at a callsite's frame are on that node's callee edges
but not its caller edges, so when the node (or one below it on their
path) is cloned for another allocation's contexts, the clone gets no
edge to the callee nodes the trimmed contexts flow through. Function
assignment then placed such clones without regard to them, possibly in a
function clone calling the wrong version of the callee for the trimmed
contexts, which are caller-agnostic and apply to the clone equally (see
trimmed-context-clone.ll: top1's path loses the cold hint for leafA).

Handle this in assignFunctions (new method assignImplicitCallers):
trimmed ids are collected up front, and after a callsite's clones are
assigned, clones of a caller that have no edge to the callsite's clones
but that the trimmed contexts on the caller's edge would have reached
(checked up the caller chain) are implicit callers requiring the same
callee version. If unassigned, they get the caller's function clone; if
in a function clone without a clone of the callsite, that call follows
the caller's (the required clone is recorded with one of its trimmed ids

    [13 lines not shown]
DeltaFile
+525-63llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
+212-0llvm/test/Transforms/MemProfContextDisambiguation/trimmed-context-clone.ll
+168-0llvm/test/Transforms/MemProfContextDisambiguation/trimmed-context-respecialized.ll
+145-0llvm/test/Transforms/MemProfContextDisambiguation/trimmed-context-respecialized-alloc.ll
+139-0llvm/test/Transforms/MemProfContextDisambiguation/trimmed-context-recursive.ll
+22-7llvm/test/Transforms/MemProfContextDisambiguation/inlined3.ll
+1,211-701 files not shown
+1,223-747 files