LLVM/project ca7b8dcllvm/lib/Target/SPIRV SPIRVPreLegalizer.cpp, llvm/test/CodeGen/SPIRV/GlobalISel prelegalizer-switch-case-shared-constant.ll prelegalizer-switch-case-constant.mir

[SPIRV] Fix compile abort on a switch case value shared with a module constant (#223548)

This fixes a failure I found when compiling shaders whose switch case
value is also emitted as a module constant. LLVM currently aborts with

```
Assertion `isCImm() && "Wrong MachineOperand accessor"' failed.
```

in `MachineOperand::getCImm`. Three shaders in
[BigWheels](https://github.com/google/bigwheels) and
[Vulkan-Samples](https://github.com/KhronosGroup/Vulkan-Samples) run
into this.

A case operand is a `G_CONSTANT` until the module emits a SPIR-V
constant for the same value, at which point the case register is
replaced with that constant. Both forms have to decode to the case
value, and only `G_CONSTANT` did. The other holds the type in operand 1,
which was read as a `ConstantInt`.

    [11 lines not shown]
DeltaFile
+62-0llvm/test/CodeGen/SPIRV/GlobalISel/prelegalizer-switch-case-constant.mir
+45-0llvm/test/CodeGen/SPIRV/GlobalISel/prelegalizer-switch-case-shared-constant.ll
+38-2llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
+145-23 files

LLVM/project c02e5demlir/docs Remarks.md, mlir/include/mlir/IR Remarks.h

[MLIR] Drain remarks in RemarkEmittingPolicyFinal::finalize() (#224607)

`RemarkEmittingPolicyFinal::finalize()` iterates `postponedRemarks`
without clearing it. `MlirOptMain` calls `finalize()` after printing the
module, and `~RemarkEngine` calls it again when the context is
destroyed, so a YAML or bitstream streamer serializes every remark
twice. With `mlir/test/Pass/remark-final.mlir` the YAML output file
holds 10 records for 5 remarks. The console path hides this because the
diagnostic handler is already gone when the destructor runs.

This change swaps the pending set into a local before emitting. A second
`finalize()` then emits only the remarks reported since the first one. A
consequence worth stating: a `RelatedTo` link resolves only between
remarks drained by the same call. Both behaviours are documented in the
header comment and in `Remarks.md`.

A follow-up will make the emission order of the final policy
deterministic; today it is `DenseSet` iteration order, which is why the
lit test keeps `CHECK-DAG`.

    [2 lines not shown]
DeltaFile
+96-0mlir/unittests/IR/RemarkTest.cpp
+16-10mlir/test/Pass/remark-final.mlir
+7-6mlir/include/mlir/IR/Remarks.h
+7-2mlir/lib/IR/Remarks.cpp
+4-2mlir/docs/Remarks.md
+130-205 files

FreeBSD/ports 8c2490dsysutils/czkawka Makefile Makefile.crates, sysutils/czkawka/files patch-cargo-crates_android-build-0.1.4_src_env__paths_find__android__sdk.rs

sysutils/czkawka: Update to 12.0.2

Changelogs:
https://github.com/qarmin/czkawka/releases/tag/12.0.1
https://github.com/qarmin/czkawka/releases/tag/12.0.2
DeltaFile
+879-813sysutils/czkawka/distinfo
+438-405sysutils/czkawka/Makefile.crates
+16-0sysutils/czkawka/files/patch-cargo-crates_android-build-0.1.4_src_env__paths_find__android__sdk.rs
+1-2sysutils/czkawka/Makefile
+1,334-1,2204 files

LLVM/project e6a7b7allvm/test/CodeGen/AArch64 abdu-neg.ll, llvm/test/CodeGen/PowerPC abdu-neg.ll

[LLVM][DAGCombiner] Relax requirements for "min(a,b)-max(a,b) -> -abd(a,b)". (#223725)

The combine "max(a,b)-min(a,b) -> abd(a,b)" has no legality check prior
to legalisation, but the matching "min(a,b)-max(a,b) -> -abd(a,b)"
combine does. This seems inconsistent and removing it does not look to
have any downsides.
DeltaFile
+313-361llvm/test/CodeGen/RISCV/abdu-neg.ll
+271-351llvm/test/CodeGen/RISCV/abds-neg.ll
+41-137llvm/test/CodeGen/PowerPC/abdu-neg.ll
+51-80llvm/test/CodeGen/X86/abdu-neg.ll
+53-72llvm/test/CodeGen/X86/abds-neg.ll
+18-30llvm/test/CodeGen/AArch64/abdu-neg.ll
+747-1,0312 files not shown
+767-1,0638 files

LLVM/project dbf4967llvm/lib/ExecutionEngine/MCJIT CMakeLists.txt

[MCJIT] Add dependencies on TargetParser and MC. (#224610)

https://github.com/llvm/llvm-project/pull/224547 added dependencies on
the TargetParser and MC libraries. Update CMakeLists to include the
dependencies, which should fix the link failures caused by PR224547.
DeltaFile
+2-0llvm/lib/ExecutionEngine/MCJIT/CMakeLists.txt
+2-01 files

LLVM/project 051fed3llvm/lib/Target/AMDGPU GCNSchedStrategy.cpp, llvm/test/CodeGen/AMDGPU machine-scheduler-sink-trivial-remats.mir coexec-hazardrec-preRA.mir

Remove convergent user check + feedback
DeltaFile
+838-712llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_copies.mir
+51-40llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_cost.mir
+24-19llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_diff_types.mir
+15-15llvm/test/CodeGen/AMDGPU/coexec-hazardrec-preRA.mir
+6-23llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
+9-15llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
+943-8241 files not shown
+944-8257 files

LLVM/project 4cd54e9llvm/lib/Transforms/Utils FlattenCFG.cpp, llvm/test/CodeGen/AMDGPU scalar-branch-missing-and-exec.ll

[FlattenCFG] Merge parallel conditions with logical and/or (#218441)

`FlattenParallelAndOr` merges a short-circuit branch pair into one
branch using a bitwise `or`/`and`. Those propagate poison from either
operand, so a condition the source only evaluated behind a guard ends up
feeding an unconditional branch. Emit a logical or/and instead.

`MergeIfRegion` is left alone: `GetIfCondition` only matches when the
second condition already executes on every path, so a poison operand
there is UB before the transform too.

The merged weights compose, but the branch's !prof has the same
staleness problem and longer chains need the product carried through, so
the select is marked explicitly unknown here and the derivation is a
follow-up.

AMDGPU is the only in-tree user. `scalar-branch-missing-and-exec.ll` was
relying on flatten-cfg to build its and-chain, and the select chain
lowers to `s_and_b64 s[0:1], s[0:1], exec` rather than the `s_xor_b64`

    [5 lines not shown]
DeltaFile
+66-0llvm/test/Transforms/Util/flatten-cfg.ll
+4-10llvm/test/CodeGen/AMDGPU/scalar-branch-missing-and-exec.ll
+7-3llvm/lib/Transforms/Utils/FlattenCFG.cpp
+77-133 files

FreeNAS/freenas d1b7cb1src/middlewared/middlewared/plugins sysdataset.py, src/middlewared/middlewared/plugins/container crud.py

Make `zfs.resource.destroy` raise exceptions
DeltaFile
+17-23src/middlewared/middlewared/plugins/zfs/destroy_impl.py
+11-19src/middlewared/middlewared/plugins/sysdataset.py
+27-2tests/api2/test_pool_dataset_delete.py
+17-0src/middlewared/middlewared/plugins/zfs/exceptions.py
+6-9src/middlewared/middlewared/plugins/zfs/resource_destroy.py
+8-6src/middlewared/middlewared/plugins/container/crud.py
+86-596 files not shown
+122-8212 files

FreeNAS/freenas 432615fsrc/middlewared/debian rules, src/middlewared/middlewared/pytest/unit/test/linter test_api_import_check.py test_etc_check.py

Check etc files syntax and imports in CI and on build

(cherry picked from commit 0db4e84f34052ce660e9348fc3ba8291fc54a5db)
DeltaFile
+254-0src/middlewared/middlewared/test/linter/etc_check.py
+150-0src/middlewared/middlewared/pytest/unit/test/linter/test_etc_check.py
+87-0src/middlewared/middlewared/test/linter/api_import_check.py
+48-0src/middlewared/middlewared/pytest/unit/test/linter/test_api_import_check.py
+2-0src/middlewared/debian/rules
+541-05 files

FreeNAS/freenas c7dc3b0src/middlewared/debian rules, src/middlewared/middlewared/pytest/unit/test/linter test_api_import_check.py test_etc_check.py

NAS-143927 / 27.0.0-BETA.1 / Check etc files syntax and imports in CI and on build (#19804)

https://github.com/truenas/middleware/pull/19801 would've been caught by
this check (instead, it is just logged to middleware log on runtime)

Also, legacy APIs are not imported by middleware, so any import-time
error there will only be detected when it crashes middleware on attempt
to access that API.
DeltaFile
+254-0src/middlewared/middlewared/test/linter/etc_check.py
+150-0src/middlewared/middlewared/pytest/unit/test/linter/test_etc_check.py
+87-0src/middlewared/middlewared/test/linter/api_import_check.py
+48-0src/middlewared/middlewared/pytest/unit/test/linter/test_api_import_check.py
+2-0src/middlewared/debian/rules
+541-05 files

FreeBSD/ports f1a9947www/ls-qpack/files patch-CMakeLists.txt

www/ls-qpack: Fix building with CMake 4

Approved by:    portmgr (fixit blanket)
DeltaFile
+11-0www/ls-qpack/files/patch-CMakeLists.txt
+11-01 files

LLVM/project b9b96c8libsycl/include/sycl/__impl queue.hpp, libsycl/src/detail queue_impl.cpp

[libsycl] Implement USM fill & memset queue API (#217933)
DeltaFile
+98-0libsycl/include/sycl/__impl/queue.hpp
+80-0libsycl/unittests/queue/fill.cpp
+59-0libsycl/unittests/queue/memset.cpp
+48-0libsycl/test/usm/Inputs/fill_memset_common.hpp
+28-11libsycl/src/detail/queue_impl.cpp
+34-0libsycl/test/usm/fill.cpp
+347-117 files not shown
+418-1213 files

LLVM/project eebfba9llvm/lib/Target/SPIRV SPIRVCallLowering.cpp, llvm/test/CodeGen/SPIRV/transcoding func_param_attr.ll

[SPIR-V] Emit NoCapture function parameter decoration for captures(none) args (#223694)
DeltaFile
+7-1llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
+7-0llvm/test/CodeGen/SPIRV/transcoding/func_param_attr.ll
+14-12 files

LLVM/project 44ed10dmlir/docs Remarks.md, mlir/include/mlir/IR Remarks.h

[MLIR][Remark] Emit final-policy remarks in deterministic order

RemarkEmittingPolicyFinal stores remarks in a DenseSet keyed on the
location pointer, so the output order depends on heap layout and changes
between runs. Twenty runs of mlir/test/Pass/remark-final.mlir gave
fourteen different orders, which is why the test uses CHECK-DAG.

Store remarks in a MapVector keyed by a new RemarkIdentity: location,
remark name, combined category name and kind, the same fields the
DenseSet compared. A repeated identity overwrites the stored remark in
place, so a remark is printed where its identity was first reported with
the content it last had. Root remarks come out in first-report order and
linked children still follow their parent. DenseMapInfo<Remark> is
removed; RemarkIdentity is now the one place that says what the final
policy treats as the same remark.

Behaviour change: order only. The identity is unchanged.

remark-final.mlir switches to ordered CHECK lines. New unit tests cover

    [5 lines not shown]
DeltaFile
+51-43mlir/include/mlir/IR/Remarks.h
+60-7mlir/unittests/IR/RemarkTest.cpp
+20-14mlir/test/Pass/remark-final.mlir
+15-9mlir/docs/Remarks.md
+4-4mlir/lib/IR/Remarks.cpp
+150-775 files

FreeBSD/ports 82038aaMk bsd.port.mk

Mk/bsd.port.mk: Fix indentation

As instructed by Tools/scripts/indent_make_if.pl.

Approved by:    portmgr (mat)
Sponsored by:   fme AG
DeltaFile
+4-4Mk/bsd.port.mk
+4-41 files

LLVM/project 35feca4llvm/utils/gn/secondary/llvm/lib/Support BUILD.gn

[gn build] Port e78fdeba3f9a (#224615)
DeltaFile
+0-1llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
+0-11 files

LLVM/project d569554libc/src/__support/OSUtil/linux/syscall_wrappers CMakeLists.txt fallocate.h, libc/src/fcntl fallocate.h

[libc] Implement fallocate (#222843)

Implement fallocate function by adding a syscall wrapper.

Assisted-by: gemini (for the tests and macros)
DeltaFile
+93-0libc/test/src/fcntl/linux/fallocate_test.cpp
+49-0libc/src/__support/OSUtil/linux/syscall_wrappers/fallocate.h
+34-0libc/src/fcntl/linux/fallocate.cpp
+26-0libc/src/fcntl/fallocate.h
+16-0libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
+15-0libc/test/src/fcntl/linux/CMakeLists.txt
+233-08 files not shown
+270-014 files

FreeBSD/ports 20f3328Mk bsd.port.mk

Mk/bsd.port.mk: Drop the strip parameter from PATCHFILES passed to do-fetch.sh

After recent changes to handling of do-fetch.sh in bsd.port.mk, the
strip parameters (e.g., ":-p1") are no longer dropped before do-fetch.sh
receives patch files.

As a result, a strip parameter of a patch file might be interpreted as a
group instead and get prepended to the patch file, resulting in warnings
like:

```
$ make makesum
===>  License MIT accepted by the user
=> e3efbb5923f638b38087a3f616906d9d4fdaf6f2.patch doesn't seem to exist in /var/cache/distfiles.
=> Attempting to fetch p1e3efbb5923f638b38087a3f616906d9d4fdaf6f2.patch
fetch: p1e3efbb5923f638b38087a3f616906d9d4fdaf6f2.patch: No such file or directory
```

Reviewed by:    mat

    [4 lines not shown]
DeltaFile
+1-1Mk/bsd.port.mk
+1-11 files

OpenBSD/src IJNVgfVusr.bin/ssh ssh-agent.1

   use Nm instead of Xr to self
VersionDeltaFile
1.89+3-3usr.bin/ssh/ssh-agent.1
+3-31 files

LLVM/project 6737b06clang/lib/AST/ByteCode State.h State.cpp

[clang][bytecode] Remove unused State::addNotes (#224599)
DeltaFile
+0-5clang/lib/AST/ByteCode/State.cpp
+0-3clang/lib/AST/ByteCode/State.h
+0-82 files

LLVM/project 747c011clang/test/Sema typo-correction-no-hang.cpp typo-correction.c

[clang][Sema][Tests] Add test coverage for function-like macro diagnostic edge cases and C++ (#223895)

Add C++ and edge-case test coverage for function-like macro diagnostic

Follow-up to #123495.

Adds regression tests covering cases not exercised by the original PR:
- Macro call with intervening comment/whitespace before '(', confirms
  findNextToken correctly skips these rather than misfiring
- Macro call with '(' across a line break
- Re-#define after #undef, confirms no stale state
- Array-size context (non-assignment expression)
- Variadic function-like macro
- New SemaCXX test confirming the diagnostic fires correctly in C++,
  since the implementation lives in shared SemaExpr.cpp

No behavior change, test coverage only.
DeltaFile
+34-0clang/test/Sema/typo-correction.c
+7-0clang/test/Sema/typo-correction-no-hang.cpp
+41-02 files

LLVM/project 7d65da4llvm/include/llvm/Support ConvertEBCDIC.h, llvm/lib/Support ConvertEBCDIC.cpp

[Support] Correct UTF-8 error handling in ConvertEBCDIC (#185176)

`ConverterEBCDIC::convertToEBCDIC()` previously decoded only ASCII and
UTF-8 sequences beginning with `C2` or `C3`. Consequently, an incomplete
three- or four-byte sequence was reported as
`std::errc::illegal_byte_sequence`, even though the `TextEncoding`
contract uses `std::errc::invalid_argument` for incomplete input.

Decode each UTF-8 sequence using LLVM's shared `convertUTF8Sequence()`
utility before checking whether the decoded code point is supported by
the EBCDIC-1047 conversion table.

The resulting error handling is:
- Incomplete prefixes that can still form valid UTF-8 return
`std::errc::invalid_argument`.
- Malformed UTF-8 returns `std::errc::illegal_byte_sequence`.
- Valid UTF-8 code points outside U+0000 through U+00FF return
`std::errc::illegal_byte_sequence`.


    [11 lines not shown]
DeltaFile
+53-24llvm/lib/Support/ConvertEBCDIC.cpp
+33-0llvm/unittests/Support/ConvertEBCDICTest.cpp
+9-0llvm/include/llvm/Support/ConvertEBCDIC.h
+95-243 files

HardenedBSD/src 3266825lib/libc/db/hash hash.c, lib/libc/tests/db db_hash_tamper_test.c

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/cross-dso-cfi
DeltaFile
+227-0lib/libc/tests/db/db_hash_tamper_test.c
+128-22sys/net/route/fib_algo.c
+71-0sys/dev/amdsmu/amdsmu.c
+35-12lib/libc/db/hash/hash.c
+27-7sys/dev/hyperv/netvsc/if_hn.c
+30-0sys/compat/linuxkpi/common/src/linux_page.c
+518-4118 files not shown
+670-7124 files

HardenedBSD/src 7800bd3lib/libc/db/hash hash.c, lib/libc/tests/db db_hash_tamper_test.c

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/pledge
DeltaFile
+227-0lib/libc/tests/db/db_hash_tamper_test.c
+128-22sys/net/route/fib_algo.c
+71-0sys/dev/amdsmu/amdsmu.c
+35-12lib/libc/db/hash/hash.c
+27-7sys/dev/hyperv/netvsc/if_hn.c
+30-0sys/compat/linuxkpi/common/src/linux_page.c
+518-4118 files not shown
+670-7124 files

HardenedBSD/src 9679c50libexec/rtld-elf rtld.c

Merge remote-tracking branch 'rad/hardened/15-stable/main' into hardened/15-stable/pledge
DeltaFile
+11-6libexec/rtld-elf/rtld.c
+11-61 files

HardenedBSD/src 9d955d1lib/libc/db/hash hash.c, lib/libc/tests/db db_hash_tamper_test.c

Merge branch 'freebsd/current/main' into hardened/current/master
DeltaFile
+227-0lib/libc/tests/db/db_hash_tamper_test.c
+128-22sys/net/route/fib_algo.c
+71-0sys/dev/amdsmu/amdsmu.c
+35-12lib/libc/db/hash/hash.c
+27-7sys/dev/hyperv/netvsc/if_hn.c
+30-0sys/compat/linuxkpi/common/src/linux_page.c
+518-4118 files not shown
+670-7124 files

HardenedBSD/src 0ebe4b8libexec/rtld-elf rtld.c

Merge branch 'freebsd/15-stable/main' into hardened/15-stable/main
DeltaFile
+11-6libexec/rtld-elf/rtld.c
+11-61 files

FreeBSD/ports 20ef592x11/pmenu distinfo Makefile, x11/pmenu/files patch-config.mk

x11/pmenu: Update to 3.1.1

Sponsored by:   fme AG
DeltaFile
+0-19x11/pmenu/files/patch-config.mk
+10-5x11/pmenu/Makefile
+7-3x11/pmenu/distinfo
+17-273 files

FreeBSD/src 1568e6bsys/dev/hyperv/netvsc if_hnvar.h if_hn.c

hn: Refresh VF RSS configuration after link recovery

A VF can finish initialization or reset recovery after hn's handoff-time
RSS query returned ENXIO.  In that case hn suppresses synthetic receive
hash metadata, but previously left it disabled even after the VF could
answer the queries again.

Queue an RSS refresh on a VF link-up notification, using the existing VF
worker in both transparent and non-transparent modes.  Revalidate the
association, active VF path, administrative state, and carrier under
hn_lock before querying and reconfiguring synthetic RSS.  Coalesce the
requests with an atomic flag and retain a request while capability
forwarding temporarily excludes the worker.  Keep the existing query
validity checks and unsupported-query fallback unchanged.

This is a one-shot refresh, not a readiness poll.  Recovery without a
link-up notification, or a query that still fails during the refresh,
does not trigger another retry by itself.  A later link-up or normal
handoff can query again.  Consuming the request while the VF path is

    [17 lines not shown]
DeltaFile
+27-7sys/dev/hyperv/netvsc/if_hn.c
+1-0sys/dev/hyperv/netvsc/if_hnvar.h
+28-72 files

HardenedBSD/src 1568e6bsys/dev/hyperv/netvsc if_hnvar.h if_hn.c

hn: Refresh VF RSS configuration after link recovery

A VF can finish initialization or reset recovery after hn's handoff-time
RSS query returned ENXIO.  In that case hn suppresses synthetic receive
hash metadata, but previously left it disabled even after the VF could
answer the queries again.

Queue an RSS refresh on a VF link-up notification, using the existing VF
worker in both transparent and non-transparent modes.  Revalidate the
association, active VF path, administrative state, and carrier under
hn_lock before querying and reconfiguring synthetic RSS.  Coalesce the
requests with an atomic flag and retain a request while capability
forwarding temporarily excludes the worker.  Keep the existing query
validity checks and unsupported-query fallback unchanged.

This is a one-shot refresh, not a readiness poll.  Recovery without a
link-up notification, or a query that still fails during the refresh,
does not trigger another retry by itself.  A later link-up or normal
handoff can query again.  Consuming the request while the VF path is

    [17 lines not shown]
DeltaFile
+27-7sys/dev/hyperv/netvsc/if_hn.c
+1-0sys/dev/hyperv/netvsc/if_hnvar.h
+28-72 files