LLVM/project a8b0d14llvm/lib/Target/AArch64 AArch64InstrInfo.td AArch64ISelLowering.cpp, llvm/test/CodeGen/AArch64 clmul-fixed.ll

[AArch64] Improve v1i64/v2i64 clmulh. (#196694)

We can use pmull/pmull2 to compute the full product then take the high
half.

---------

Co-authored-by: Matthew Devereau <matthew.devereau at arm.com>
DeltaFile
+12-29llvm/test/CodeGen/AArch64/clmul-fixed.ll
+9-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+1-0llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+22-293 files

LLVM/project 2f84887clang-tools-extra/clang-tidy/modernize UseTrailingReturnTypeCheck.cpp

[clang-tidy][NFC] Use `std::array` instead of `SmallVector` in `UseTrailingReturnTypeCheck`

We know we have exactly 2 `Token` in the array. There is no need to use `SmallVector` here.
DeltaFile
+1-1clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
+1-11 files

LLVM/project d3f6795mlir/include/mlir/ExecutionEngine/SparseTensor File.h, mlir/lib/ExecutionEngine/SparseTensor Storage.cpp

[mlir][SparseTensor] Terminology cleanup PIV -> PCV (NFC) (#196707)

This PR standardizes terminology in the MLIR sparsifier by replacing the
PIV (Pointer, Index, Value) terminology with the PCV (Position,
Coordinate, Value) terminology established in
https://reviews.llvm.org/D144773. The changes include renaming template
parameters and error macros.
DeltaFile
+9-9mlir/lib/ExecutionEngine/SparseTensor/Storage.cpp
+4-4mlir/include/mlir/ExecutionEngine/SparseTensor/File.h
+13-132 files

LLVM/project fc25712lldb/include/lldb/Symbol SymbolContext.h, lldb/include/lldb/Target Language.h

[lldb] Rename GetInstanceVariableName to GetInstanceName (NFC) (#196453)

Based on Jim's comments
(https://github.com/llvm/llvm-project/pull/195187#discussion_r3205135577)
which highlights that it is incorrect to call this/self an "instance
variable".

I went with "instance name" to leave out the word "object", since not
all instances values are objects.
DeltaFile
+3-3lldb/include/lldb/Symbol/SymbolContext.h
+3-3lldb/source/Target/StackFrame.cpp
+2-2lldb/source/ValueObject/DILEval.cpp
+2-2lldb/source/Symbol/SymbolContext.cpp
+1-1lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h
+1-1lldb/include/lldb/Target/Language.h
+12-122 files not shown
+14-148 files

LLVM/project 515cb37clang/lib/CIR/CodeGen CIRGenBuiltin.cpp, llvm/include/llvm/IR Intrinsics.h

[LLVM] Add validation to check the number of intrinsic args (#196563)

Add validation to check the number of intrinsic args. In service of
that, extend `getIntrinsicInfoTableEntries` to return several things:
* ArrayRef to the Table (as a convenience).
* Number of arguments
* Does the intrinsic have variable arguments.

This avoids some code duplication at various callers of
`getIntrinsicInfoTableEntries`. To have `getIntrinsicInfoTableEntries`
correctly compute the number of arguments based on trip count of the
while loop, move parsing of element type for `IIT_SAME_VEC_WIDTH_ARG` to
a recursive call from `DecodeIITType`.
DeltaFile
+44-40llvm/lib/IR/Intrinsics.cpp
+11-4llvm/include/llvm/IR/Intrinsics.h
+2-10clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
+9-0llvm/test/Assembler/implicit-intrinsic-declaration-invalid4.ll
+66-544 files

LLVM/project 5f4ad01mlir/lib/Transforms/Utils CFGToSCF.cpp

fix
DeltaFile
+50-22mlir/lib/Transforms/Utils/CFGToSCF.cpp
+50-221 files

LLVM/project 0bc6312clang/lib/Driver/ToolChains HIPAMD.cpp

clang: Avoid some unnecessary uses of MakeArgString for hip (#196376)
DeltaFile
+13-16clang/lib/Driver/ToolChains/HIPAMD.cpp
+13-161 files

FreeNAS/freenas 32756c6src/middlewared/middlewared/plugins filesystem.py, src/middlewared/middlewared/plugins/filesystem_ utils.py acl.py

NAS-140915 / 27.0.0-BETA.1 / Add recursion for filesystem.set_zfs_attributes (#18906)

This commit expands the API for filesystem.set_zfs_attributes to include
options for recursion. Specifically, we can do non-recursive, recursive
on files only and recursive on directories only, or recursively on both
files and directories.

(cherry picked from commit 67210c8d06d459ed00b50d39df666f9439d218a4)
DeltaFile
+194-72src/middlewared/middlewared/plugins/filesystem_/utils.py
+155-1tests/api2/test_190_filesystem.py
+60-18src/middlewared/middlewared/plugins/filesystem.py
+15-16src/middlewared/middlewared/plugins/pool_/dataset_encryption_lock.py
+12-16src/middlewared/middlewared/plugins/filesystem_/acl.py
+11-10src/middlewared/middlewared/plugins/pool_/import_pool.py
+447-1336 files not shown
+482-14912 files

LLVM/project 254f21amlir/include/mlir/IR Dominance.h, mlir/lib/IR Dominance.cpp

[mlir] Add erase sub-region dominate tree logic in DominanceInfoBase::invalidate method (#192469)

Fix the issue: a region may contain nested sub-regions. When we remove
the dominate tree of a parent region and delete the region, the dominate
trees of its sub-regions should also be removed.
DeltaFile
+12-6mlir/lib/IR/Dominance.cpp
+4-1mlir/include/mlir/IR/Dominance.h
+16-72 files

LLVM/project 1d890bbclang/include/clang/Serialization ASTRecordReader.h, clang/lib/AST ASTContext.cpp Type.cpp

trivial changes
DeltaFile
+20-14clang/lib/Sema/SemaOpenMP.cpp
+18-14clang/lib/AST/ASTContext.cpp
+16-15clang/lib/Sema/SemaTemplate.cpp
+14-11clang/lib/AST/Type.cpp
+14-8clang/lib/AST/ASTDiagnostic.cpp
+11-6clang/include/clang/Serialization/ASTRecordReader.h
+93-6833 files not shown
+202-15239 files

FreeNAS/freenas 774d926tests/protocols pynfs_proto.py, tests/sharing_protocols/nfs test_nfs_change_attr.py

NAS-140946 / 26.0.0-RC.1 / Add basic NFSv4 change-attribute regression tests (by anodos325) (#18930)

This commit adds a variety of tests in which we validate the behavior
the the NFSv4 change-attribute FATTR4_CHANGE over a variety of NFS
operations that should advance it.

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

Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
DeltaFile
+269-0tests/sharing_protocols/nfs/test_nfs_change_attr.py
+89-0tests/protocols/pynfs_proto.py
+358-02 files

LLVM/project 273cbb4clang/include/clang/AST ASTContext.h, clang/lib/AST ASTContext.cpp ItaniumMangle.cpp

[clang] implement CWG2064: ignore value dependence for decltype

The 'decltype' for a value-dependent (but non-type-dependent) should be known,
so this patch makes them non-opaque instead.

This patch also implements what's neceessary to allow overloading
on pure differences in instantiation dependence, making `std::void_t`
usable for SFINAE purposes.

This also readds a few test cases from da98651, which was a previous attempt
at resolving CWG2064.

Fixes #8740
Fixes #61818
Fixes #190388
DeltaFile
+888-161clang/lib/AST/ASTContext.cpp
+328-12clang/test/SemaTemplate/instantiation-dependence.cpp
+176-96clang/lib/AST/ItaniumMangle.cpp
+100-98clang/lib/Sema/SemaCXXScopeSpec.cpp
+62-57clang/lib/AST/Type.cpp
+88-11clang/include/clang/AST/ASTContext.h
+1,642-43570 files not shown
+2,397-78876 files

LLVM/project 1919358mlir/lib/Transforms/Utils CFGToSCF.cpp

fix
DeltaFile
+22-1mlir/lib/Transforms/Utils/CFGToSCF.cpp
+22-11 files

FreeNAS/freenas 89a3a01tests/protocols pynfs_proto.py, tests/sharing_protocols/nfs test_nfs_change_attr.py

NAS-140946 / 27.0.0-BETA.1 / Add basic NFSv4 change-attribute regression tests (#18919)

This commit adds a variety of tests in which we validate the behavior
the the NFSv4 change-attribute FATTR4_CHANGE over a variety of NFS
operations that should advance it.

(cherry picked from commit 031c3f3292b5b872a5aa7553bdfa2cf9ba5d7430)
DeltaFile
+269-0tests/sharing_protocols/nfs/test_nfs_change_attr.py
+61-0tests/protocols/pynfs_proto.py
+330-02 files

LLVM/project 6288b77mlir/lib/Transforms/Utils CFGToSCF.cpp

[SCF][CF] Optimize cf to scf.if to avoid emitting redundant results
DeltaFile
+99-36mlir/lib/Transforms/Utils/CFGToSCF.cpp
+99-361 files

FreeNAS/freenas 4d68c89src/middlewared/middlewared/utils __init__.py

NAS-140960 / 27.0.0-BETA.1 / remove dead code (#18928)

Dead code, remove it.
DeltaFile
+4-15src/middlewared/middlewared/utils/__init__.py
+4-151 files

FreeNAS/freenas dd8547f

NAS-140868 / 26.0.0-RC.1 / Expand reporting tests (by anodos325) (#18931)

This fixes a schema field name typo for reporting disks (appears in API
docs, but does not change surfaced reporting.realtime event field names
-- typo only was in docs) in addition to adding explicit testing for
internal utilities as well as validating shape of returned
responses.

Original PR: https://github.com/truenas/middleware/pull/18870
DeltaFile
+0-00 files

LLVM/project 6fd79a2llvm/lib/Target/SPIRV SPIRVInstructionSelector.cpp SPIRVBuiltins.cpp, llvm/test/CodeGen/SPIRV select.ll select-invalid-vector-cond.ll

[SPIR-V] Reject OpSelect with scalar result and vector condition (#193745)

Per SPIR-V spec, scalar Result Type requires a scalar bool condition.
So, vector cond branches under a scalar result are unreachable
DeltaFile
+77-0llvm/test/CodeGen/SPIRV/select.ll
+16-0llvm/test/CodeGen/SPIRV/select-invalid-vector-cond.ll
+5-3llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
+6-0llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
+104-34 files

FreeNAS/freenas 2e48ca4src/middlewared/middlewared/api/v25_10_1 reporting.py, tests/api2 test_reporting_realtime.py

Expand reporting tests

This fixes a schema field name typo for reporting disks
(appears in API docs, but does not change surfaced
reporting.realtime event field names -- typo only was in
docs) in addition to adding explicit testing for internal
utilities as well as validating shape of returned
responses.

(cherry picked from commit ef8cd34a7bdb50fdb68730d9225ce00beaa9d125)
DeltaFile
+243-0tests/unit/test_realtime_reporting.py
+165-0tests/api2/test_reporting_realtime.py
+100-0tests/unit/test_metrics_arcstat.py
+65-0tests/unit/test_metrics_cpu_usage.py
+31-0tests/unit/test_metrics_pool_stats.py
+1-1src/middlewared/middlewared/api/v25_10_1/reporting.py
+605-14 files not shown
+609-510 files

FreeNAS/freenas b4df4c3tests/unit test_realtime_reporting.py

More ruff fixes

(cherry picked from commit ff869ccaff9ed12dae4059bd483c64aff6abaae0)
DeltaFile
+83-72tests/unit/test_realtime_reporting.py
+83-721 files

FreeNAS/freenas 5bf6286tests/protocols pynfs_proto.py, tests/sharing_protocols/nfs test_nfs_op_copy.py test_nfs_server_side_copy.py

NAS-140949 / 26.0.0-RC.1 / expand NFS tests for clone and copy ops (by anodos325) (#18927)

This commit expands and fixes server-side copy and clone tests for NFS
protocol.

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

---------

Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
DeltaFile
+502-80tests/protocols/pynfs_proto.py
+215-0tests/sharing_protocols/nfs/test_nfs_op_copy.py
+179-19tests/sharing_protocols/nfs/test_nfs_server_side_copy.py
+896-993 files

FreeNAS/freenas 16f01b3src/middlewared/middlewared/api/v25_10_0 reporting.py, tests/api2 test_reporting_realtime.py

NAS-140868 / 27.0.0-BETA.1 / Expand reporting tests (#18870)

This fixes a schema field name typo for reporting disks (appears in API
docs, but does not change surfaced reporting.realtime event field names
-- typo only was in docs) in addition to adding explicit testing for
internal utilities as well as validating shape of returned
responses.
DeltaFile
+254-0tests/unit/test_realtime_reporting.py
+165-0tests/api2/test_reporting_realtime.py
+100-0tests/unit/test_metrics_arcstat.py
+65-0tests/unit/test_metrics_cpu_usage.py
+31-0tests/unit/test_metrics_pool_stats.py
+1-1src/middlewared/middlewared/api/v25_10_0/reporting.py
+616-14 files not shown
+620-510 files

LLVM/project 33972d3compiler-rt/test/safestack sigaltstack.c

fix clang-format

Created using spr 1.3.7
DeltaFile
+2-2compiler-rt/test/safestack/sigaltstack.c
+2-21 files

DragonFlyBSD/src 99f0646gnu/usr.bin/gdb/kgdb trgt.c

refactor: remove dead i386/ILP32 code from kernel, userland, and tests (2)

* Put the platform fall-through test in kgdb back in, just removing
  the i386 part.
DeltaFile
+4-0gnu/usr.bin/gdb/kgdb/trgt.c
+4-01 files

LLVM/project 8d98bd4llvm/lib/Transforms/Vectorize VPlan.h

[VPlan] Avoid erroneously marking PredPHI as using scalars (#195511)

PredInstPHIRecipe can use wide values, and indeed, we have several tests
demonstrating this behavior. Strip the erroenous always-true usesScalars
member, falling back to usesFirstLaneOnly as usual.
DeltaFile
+0-7llvm/lib/Transforms/Vectorize/VPlan.h
+0-71 files

DragonFlyBSD/src 404aa64sbin/disklabel32 disklabel.c, sys/dev/misc/dcons dcons_os.c

refactor: remove dead i386/ILP32 code from kernel, userland, and tests

DragonFly is x86_64-only. Remove permanently dead #ifdef __i386__,
userland tools, and regression tests. The code is never compiled.
DeltaFile
+0-31sys/dev/misc/ppc/ppc.c
+0-27sbin/disklabel32/disklabel.c
+0-21sys/dev/misc/dcons/dcons_os.c
+0-18sys/dev/netif/sf/if_sfreg.h
+0-8tools/regression/lib/libm/test-exponential.c
+0-8tools/regression/lib/libm/test-lrint.c
+0-1137 files not shown
+1-15013 files

DragonFlyBSD/src 5ab6a11sys/dev/netif/ix if_ix.c, sys/dev/raid/dpt dpt_scsi.c

refactor: remove large #if 0 dead code blocks

Remove 3200+ lines of permanently dead code guarded by #if 0 across
kernel, drivers, VFS, and userland. Several blocks have author comments
explicitly requesting removal. Code can be inspected in git history.
DeltaFile
+0-845sys/dev/raid/dpt/dpt_scsi.c
+0-302sys/vfs/fuse/fuse_io.c
+0-227sys/vfs/hammer/hammer_btree.c
+0-173sys/platform/pc64/x86_64/npx.c
+0-172sys/platform/vkernel64/x86_64/npx.c
+0-164sys/dev/netif/ix/if_ix.c
+0-1,88311 files not shown
+0-3,27417 files

LLVM/project cbf814dclang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen/AArch64 neon-intrinsics.c v8.2a-neon-intrinsics.c

[CIR][AArch64] Lower vfmaq_v f32/f64 (#195602)

Lower `BI__builtin_neon_vfmaq_v` in CIR for the `vfmaq_f32` and
`vfmaq_f64` ACLE wrappers.

This is split out from the broader fused multiply-accumulate work and
only covers `BI__builtin_neon_vfmaq_v`. The related `vfma_v`,
`vfmaq_f16`, lane, laneq, and scalar forms remain outside this PR.

Tests move the existing `vfmaq_f32` and `vfmaq_f64` coverage from
`neon-intrinsics.c` into `neon/vfmaq.c`, preserve the original LLVM
checks, and add ClangIR coverage.

Validation: rebuilt `clang` and ran the focused `vfmaq.c` lit test.

Part of #185382
Split from feedback on #188190
DeltaFile
+67-0clang/test/CodeGen/AArch64/neon/fused-multiply.c
+47-0clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
+26-12clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+0-38clang/test/CodeGen/AArch64/neon-intrinsics.c
+0-19clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
+140-695 files

LLVM/project b018d3allvm/test/tools/llvm-objdump/Offloading nested-offload-binary.test, llvm/test/tools/llvm-objdump/Offloading/Inputs inner.yaml

[llvm][tools][llvm-objdump] Fix nested-offload-binary.test  (#196912)

In little endian systems the embedded image hex is incorrect and the
test fails on Solaris/sparcv9.
Switching to generate the inner image on the fly and patch the outer
image CONTENT field.
DeltaFile
+4-21llvm/test/tools/llvm-objdump/Offloading/nested-offload-binary.test
+16-0llvm/test/tools/llvm-objdump/Offloading/Inputs/inner.yaml
+20-212 files

LLVM/project 15af691llvm/test/CodeGen/AMDGPU srem.ll load-global-i8.ll

DAGCombiner: (srl/sra (add nuw/nsw X, c), d) --> (add nuw/nsw (srl/sra X, d), c >> d)

Additional precondition:
* The LSBs of c are 0; equivalently: c >> d is exact

Alive2 for
* unsigned case: https://alive2.llvm.org/ce/z/YcJ8qA
* signed case: https://alive2.llvm.org/ce/z/fgpvyE

We already canonicalize (shl (add ...) ...) to (add (shl ...) ...).

Restrict this combine to the single-use case to minimize risk for now.
The main target of this combine is a fan-out tree of `add`s that all end
up being shifted by the same amount at the leaves. This change happens to
improve a bunch of existing CodeGen tests in AMDGPU.

v2:
- remove a redundant check on the shift amount -- large shift amounts
  results in poison anyway

    [2 lines not shown]
DeltaFile
+2,123-2,126llvm/test/CodeGen/AMDGPU/srem.ll
+1,647-1,991llvm/test/CodeGen/AMDGPU/load-global-i8.ll
+1,469-1,786llvm/test/CodeGen/AMDGPU/load-global-i16.ll
+860-1,133llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
+743-910llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
+682-844llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
+7,524-8,79024 files not shown
+10,300-11,93430 files