LLVM/project 804c034flang/lib/Semantics check-omp-loop.cpp, flang/test/Semantics/OpenMP linear-clause01.f90 clause-validity01.f90

[flang][OpenMP] Fix LINEAR clause validation to report all errors (#175938)

Fixes #175688 

After #175383 was merged, test failures occurred because removing the
early return exposed additional errors that tests weren't expecting.

This PR comprehensively fixes the issue by:

1. **Removes the early return** in check-omp-loop.cpp (line 767) after
detecting a modifier error on DO/SIMD directives. Previously, when a
modifier error was found, the function would return immediately without
checking other restrictions like the scalar requirement. Now all
applicable errors are reported, improving diagnostics.

2. **Updates linear-clause01.f90** to expect both the modifier error AND
the scalar error for Case 1 and Case 2, where arrays are used
incorrectly in LINEAR clauses.


    [8 lines not shown]
DeltaFile
+3-5flang/test/Semantics/OpenMP/linear-clause01.f90
+2-2flang/test/Semantics/OpenMP/clause-validity01.f90
+1-1flang/lib/Semantics/check-omp-loop.cpp
+6-83 files

FreeNAS/freenas 56d4dafsrc/middlewared/middlewared/alert/source gpu_isolation.py, src/middlewared/middlewared/plugins/system reboot.py

Add boot-time validation for isolated GPU PCI IDs
DeltaFile
+83-0src/middlewared/middlewared/plugins/system_advanced/gpu.py
+14-0src/middlewared/middlewared/alert/source/gpu_isolation.py
+5-1src/middlewared/middlewared/plugins/system/reboot.py
+102-13 files

LLVM/project bc9fce7mlir/lib/Dialect/Vector/IR VectorOps.cpp, mlir/test/Dialect/Vector canonicalize.mlir

[MLIR][Vector] Add a pattern that folds consecutive extract_strided_strided_slice ops (#175738)

A slice of a slice is just a slice.
DeltaFile
+66-3mlir/lib/Dialect/Vector/IR/VectorOps.cpp
+42-0mlir/test/Dialect/Vector/canonicalize.mlir
+108-32 files

LLVM/project 802ca04flang/test/Lower array-user-def-assignments.f90 array-temp.f90

[flang][NFC] Converted five tests from old lowering to new lowering (part 6) (#175485)

Modified the following tests: array-elemental-calls-2.f90,
array-expression-assumed-size.f90, array-temp.f90,
array-user-def-assignments.f90, array.f90
DeltaFile
+165-644flang/test/Lower/array-user-def-assignments.f90
+76-353flang/test/Lower/array-temp.f90
+73-286flang/test/Lower/array-expression-assumed-size.f90
+216-105flang/test/Lower/array-elemental-calls-2.f90
+80-67flang/test/Lower/array.f90
+610-1,4555 files

LLVM/project 1f2d10ellvm/include/llvm/IR IRBuilder.h

[NFC][IRBuilder] Reuse CreateGEP for helpers (#175979)

Many helper functions for single index GEP exist, but each implement the
same logic to then create the GetElementPtrInst. Refactoring to call a
single function.
This is some groundwork to prepare the SGEP implementation.
DeltaFile
+8-40llvm/include/llvm/IR/IRBuilder.h
+8-401 files

LLVM/project 43e46f2llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-minimumnum.ll simplify-demanded-fpclass-maximumnum.ll

InstCombine: Handle multiple uses for min/max in SimplifyDemandedFPClass
DeltaFile
+127-91llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+4-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
+4-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
+4-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
+4-4llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
+143-1075 files

LLVM/project cd0df23llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-minimum.ll simplify-demanded-fpclass-minimumnum.ll

InstCombine: Improve SimplifyDemandedFPClass min/max handling

Refine handling of minimum/maximum and minimumnum/maximumnum. The
previous folds to input were based on sign bit checks. This was too
conservative with 0s. This can now consider -0 as less than or equal
to +0 as appropriate, account for nsz. It additionally can handle
cases like one half is known positive normal and the other subnormal.
DeltaFile
+32-61llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+23-58llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
+22-52llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
+23-46llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
+22-44llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
+122-2615 files

LLVM/project 541734dllvm/test/Transforms/InstCombine simplify-demanded-fpclass-maximum.ll simplify-demanded-fpclass-minimum.ll

InstCombine: Add more tests for min/max SimplifyDemandedFPClass

Test some more refined cases, such as ordering with 0s and within
known positive and known negative cases.
DeltaFile
+490-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
+489-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
+488-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
+488-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
+1,955-04 files

LLVM/project c5e95afclang/docs index.rst, clang/docs/ScalableStaticAnalysisFramework SummaryExtraction.rst Framework.rst

[clang][ssaf][docs] Document the Summary Extraction pipeline (#172876)

This patch adds some documentation about the design of the Scalable
Static Analysis Framework (SSAF) Summary Extraction part.

This mainly focuses on how the custom FrontendAction would load
different analyses (their extraction part), and the different formats it
should export into.
Each FrontendAction call would process a single TU by extracting
summaries from them and serializing the results into a file in the
desired format.

The details are not polished yet, but I think it's still beneficial to
have some guidance on how the upcoming components would fit together,
hence this document.
I'll come back to this document to keep it up-to-date as we proceed with
the upstreaming.
DeltaFile
+81-0clang/docs/ScalableStaticAnalysisFramework/SummaryExtraction.rst
+13-0clang/docs/ScalableStaticAnalysisFramework/Framework.rst
+1-0clang/docs/index.rst
+95-03 files

OPNSense/core af9c810src/opnsense/scripts/firmware update.sh

firmware: doesn't work either; time to call it a day
DeltaFile
+0-8src/opnsense/scripts/firmware/update.sh
+0-81 files

LLVM/project cfefd3ellvm/test/CodeGen/PowerPC milicode64.ll milicode32.ll

[NFC][PowerPC] add  test cases for milicode (#175559)

In this PR, we do the following:

1. Simplify the test case for the millicode function  `___memmove`.
2. Add test cases for the millicode functions `___memcpy` ,
`____memset`, `____memmove` which are supported in the patch
https://reviews.llvm.org/D143997.
3. Add pre-commit test cases for the functions `___strstr`,
`___memccpy`, `___strcmp`
DeltaFile
+257-42llvm/test/CodeGen/PowerPC/milicode64.ll
+179-33llvm/test/CodeGen/PowerPC/milicode32.ll
+436-752 files

LLVM/project 58a9dc0clang/lib/CodeGen CGExpr.cpp CGExprScalar.cpp, clang/test/CodeGenHLSL/BasicFeatures MatrixSingleSubscriptGetter.hlsl MatrixSingleSubscriptSetter.hlsl

[HLSL][Matrix] Add type conversions to support bool matrix single subscript operators (#175633)

Fixes #172711

Fixes the type mismatch issues preventing single matrix subscript
getters and setters from working with boolean matrices.

The changes from this PR also happens to make matrix splats work for
boolean matrices, but adding tests for that and (re)introducing
boolean-matrix-specific sema will be relegated to its own PR.
DeltaFile
+65-0clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
+63-0clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
+14-0clang/lib/CodeGen/CGExpr.cpp
+2-2clang/lib/CodeGen/CGExprScalar.cpp
+144-24 files

LLVM/project ada4d3allvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

InstCombine: Handle fdiv in SimplifyDemandedFPClass
DeltaFile
+127-148llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
+130-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+46-0llvm/lib/Support/KnownFPClass.cpp
+3-33llvm/lib/Analysis/ValueTracking.cpp
+10-0llvm/include/llvm/Support/KnownFPClass.h
+316-1825 files

LLVM/project 7ac1f11llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fdiv.ll

InstCombine: Add baseline fdiv SimplifyDemandedFPClass tests
DeltaFile
+2,321-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
+2,321-01 files

LLVM/project 0431b71llvm/lib/Target/SPIRV SPIRVLegalizePointerCast.cpp, llvm/test/CodeGen/SPIRV/pointers store-to-array-first-element.ll

[SPIR-V] Fix store to first element array (#175546)

The IR can store to the first element of an array the same way it stores
to the first element of a struct by specifying the base pointer. This
commit fixes the pointercast legalization pass to support this.
DeltaFile
+20-0llvm/test/CodeGen/SPIRV/pointers/store-to-array-first-element.ll
+2-3llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
+22-32 files

FreeBSD/ports 9f4df04devel/rubygem-daemon_controller distinfo Makefile

devel/rubygem-daemon_controller: update: 3.0.0 -> 3.0.2

Sponsored by:   tipi.work
DeltaFile
+3-3devel/rubygem-daemon_controller/distinfo
+1-1devel/rubygem-daemon_controller/Makefile
+4-42 files

LLVM/project 91f5d73llvm/lib/Target/AArch64 AArch64SRLTDefineSuperRegs.cpp, llvm/test/CodeGen/AArch64 sve-streaming-mode-fixed-length-int-shifts.ll sve-streaming-mode-fixed-length-int-extends.ll

[AArch64] Add new pass after VirtRegRewriter to add implicit-defs (#174188)

When SubRegister Liveness Tracking (SRLT) is enabled, this pass adds
extra implicit-def's to instructions that define the low N bits of a
GPR/FPR register to represent that the top bits are written, because all
AArch64 instructions that write the low bits of a GPR/FPR also
implicitly zero the top bits.

These semantics are originally represented in the MIR using
`SUBREG_TO_REG`, but during register coalescing this information is lost
and when rewriting virtual -> physical registers the implicit-defs are
not added to represent the the top bits are written.

There have been several attempts to fix this in the coalescer (#168353),
but each iteration has exposed new bugs and the patch had to be
reverted. Additionally, the concept of adding 'implicit-def' of a
virtual register during the register allocation process is particularly
fragile and many places don't expect it (for example in
`X86::commuteInstructionImpl` the code only looks at specific operands

    [9 lines not shown]
DeltaFile
+6-318llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
+102-165llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-extends.ll
+248-0llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
+40-90llvm/test/CodeGen/AArch64/arm64-addrmode.ll
+107-0llvm/test/CodeGen/AArch64/subreg-liveness-fix-subreg-to-reg-implicit-def.mir
+14-42llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
+517-61530 files not shown
+584-73436 files

LLVM/project b5cc456mlir/test/Target/LLVMIR openmp-todo.mlir

[NFC][MLIR] Remove obsolete target device test from openmp-todo.mlir (#175894)

Remove the target device test from openmp-todo.mlir since MLIR-to-LLVM
IR lowering for the OpenMP target device clause is now implemented
(#173509, #174665).
DeltaFile
+0-9mlir/test/Target/LLVMIR/openmp-todo.mlir
+0-91 files

LLVM/project 5a4eee3llvm/lib/Target/AArch64 AArch64InstrInfo.cpp AArch64PrologueEpilogue.cpp, llvm/test/CodeGen/AArch64 sign-return-address-pauthlr-slh.ll

[AArch64] Mark X16 as clobbered in PAUTH_EPILOGUE for hint-based PAuthLR

When users request branch protection with PAuthLR on targets that do not
support the PAuthLR instructions, the PAUTH_EPILOGUE falls back to using
hint-space instructions. This fallback sequence uses X16 as a temporary
register, but X16 was not listed in the clobber set.

Because Speculative Load Hardening uses X16, this omission made SLH
incompatible with this PAUTH_EPILOGUE path.

Mark X16 as clobbered so the compiler does not assume X16 is preserved across
the epilogue, restoring compatibility with Speculative Load Hardening and
avoiding incorrect register liveness assumptions. The clobber is added in C++
rather than TableGen, as X16 is only clobbered when PAuthLR is requested as a
branch protection variation and should not be treated as clobbered
unconditionally.
DeltaFile
+103-0llvm/test/CodeGen/AArch64/sign-return-address-pauthlr-slh.ll
+13-3llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
+2-5llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
+6-0llvm/lib/Target/AArch64/AArch64InstrInfo.h
+1-2llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
+3-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+128-106 files

OPNSense/core 0fd0daesrc/opnsense/scripts/firmware update.sh

firmware: typo

(cherry picked from commit eef31ec6c064abd68ce5e641af989b3e62006d4d)
DeltaFile
+1-1src/opnsense/scripts/firmware/update.sh
+1-11 files

OPNSense/core eef31ecsrc/opnsense/scripts/firmware update.sh

firmware: typo
DeltaFile
+1-1src/opnsense/scripts/firmware/update.sh
+1-11 files

OPNSense/core 12fa856src/opnsense/scripts/firmware update.sh

firmware: park this code here instead as it should work better
DeltaFile
+8-0src/opnsense/scripts/firmware/update.sh
+8-01 files

LLVM/project 8099e12llvm/lib/Target/AMDGPU VOPInstructions.td VOP2Instructions.td, llvm/test/MC/Disassembler/AMDGPU gfx908_mai.txt gfx11_dasm_vop3_dpp8_from_vop1.txt

[AMDGPU] Ignore unused VALU src0/1/2 fields when disassembling (#175182)

This enables a future patch to change the default encoding of these
fields, which are mostly ignored by hardware.
DeltaFile
+41-41llvm/lib/Target/AMDGPU/VOPInstructions.td
+12-12llvm/lib/Target/AMDGPU/VOP2Instructions.td
+5-5llvm/lib/Target/AMDGPU/VOPCInstructions.td
+8-0llvm/test/MC/Disassembler/AMDGPU/gfx908_mai.txt
+3-3llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+4-0llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
+73-6112 files not shown
+110-6218 files

FreeBSD/src 9c4a41dshare/man/man4 mca.4 Makefile

mca(4): Add man page

Reviewed by:    markj
Sponsored by:   Netflix
Differential Revision:  https://reviews.freebsd.org/D54115
DeltaFile
+277-0share/man/man4/mca.4
+2-0share/man/man4/Makefile
+279-02 files

LLVM/project cf23746llvm/lib/Target/AMDGPU SIInstrInfo.cpp, llvm/test/CodeGen/AMDGPU s_cmp_0.ll fshl.ll

[AMDGPU] Invert scc uses to delete s_cmp_eq* (#167382)

Delete s_cmp_eq* instructions by inverting instructions that use scc.

---------

Signed-off-by: John Lu <John.Lu at amd.com>
DeltaFile
+75-9llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+36-5llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
+6-12llvm/test/CodeGen/AMDGPU/fshl.ll
+3-7llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
+2-3llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
+2-3llvm/test/CodeGen/AMDGPU/optimize-compare.mir
+124-391 files not shown
+129-397 files

FreeNAS/freenas 2049943src/middlewared/middlewared/common/listen __init__.py

NAS-139196 / 25.10.2 / Standardize repr output for listen delegates (by Qubad786) (#18024)

## Problem

The output of the `repr` method in the **port listen delegate** is not
standardized.
As a result, **attachment delegates** can produce two different output
formats. Since the **Pydantic model** supports only a single output
structure, this inconsistency leads to **validation errors**.

## Solution

Standardize the output of the **listen delegate** so it always matches
the expected **Pydantic model**, ensuring consistent behaviour and
preventing validation errors.


Original PR: https://github.com/truenas/middleware/pull/18022

Co-authored-by: M. Rehan <mrehanlm93 at gmail.com>
DeltaFile
+1-1src/middlewared/middlewared/common/listen/__init__.py
+1-11 files

LLVM/project a4244f2llvm/lib/Target/AMDGPU GCNRegPressure.cpp, llvm/test/CodeGen/AMDGPU machine-scheduler-sink-trivial-remats-attr.mir

[Review] discussion with lrami
DeltaFile
+18-18llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.mir
+6-8llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
+24-262 files

LLVM/project ce6dd8bflang/include/flang/Optimizer/OpenACC Passes.td, flang/lib/Optimizer/OpenACC/Transforms ACCUseDeviceCanonicalizer.cpp CMakeLists.txt

[flang][acc] Add ACCUseDeviceCanonicalizer pass (#175228)

This pass canonicalizes the use_device clause on acc.host_data
constructs to enable simpler runtime lowering. For use_device operands
that are box types or references to boxes, the pass:

1. Extracts the host base address for mapping to a device address using
acc.use_device
2. Creates a new boxed descriptor with the device address as the base
address for use inside the host_data region

The pass also removes unused use_device clauses to reduce runtime calls.

This canonicalization hoists load/box_addr patterns out of the host_data
region so they are applied to the host variable before acc.use_device,
ensuring the device pointer is used directly inside the region.

Example transformation for a reference to a box (!fir.ref<!fir.box<>>):


    [23 lines not shown]
DeltaFile
+400-0flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
+96-0flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
+21-0flang/include/flang/Optimizer/OpenACC/Passes.td
+10-2mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
+12-0mlir/test/Dialect/OpenACC/invalid.mlir
+3-0flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
+542-22 files not shown
+544-38 files

LLVM/project d96ba8bllvm/include/llvm/Support KnownFPClass.h, llvm/lib/Analysis ValueTracking.cpp

InstCombine: Handle fsub in SimplifyDemandedFPClass

alive2 fails on some of the tests, but this is due to existing
folds in instsimplify and https://github.com/AliveToolkit/alive2/issues/1273
DeltaFile
+55-73llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.ll
+19-60llvm/lib/Analysis/ValueTracking.cpp
+21-0llvm/lib/Support/KnownFPClass.cpp
+11-4llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+5-0llvm/include/llvm/Support/KnownFPClass.h
+111-1375 files

LLVM/project d670efcllvm/include/llvm/Support KnownFPClass.h, llvm/lib/Support KnownFPClass.cpp

Implement as fadd+fneg
DeltaFile
+1-16llvm/lib/Support/KnownFPClass.cpp
+6-0llvm/include/llvm/Support/KnownFPClass.h
+7-162 files