LLVM/project 1d2645fclang/lib/CIR/CodeGen CIRGenModule.cpp, clang/test/CIR/CodeGen global-replace-string-array.c

[CIR] Fix getNewInitValue on string-literal arrays

`getNewInitValue` in `CIRGenModule.cpp` rebuilds a global's initializer when
`replaceGlobal` fixes up references after a global's type changes -- for
example when an `extern` array is referenced while still incomplete and then
completed. Its `ConstArrayAttr` branch cast `getElts()` to an `mlir::ArrayAttr`,
but a `ConstArrayAttr` built from a string literal stores its elements as a
`StringAttr`. A struct global that both points at the replaced global and has a
`char` array member therefore aborted on a failed `cast<ArrayAttr>` during
CIRGen.

`ConstArrayAttr::verify` allows only two element kinds: an `ArrayAttr` or a
`StringAttr`. A `StringAttr` holds raw 8-bit bytes and references no globals, so
there is nothing to rewrite. The fix returns the initializer unchanged for the
`StringAttr` case and `cast`s on the `ArrayAttr` path, so a future third element
kind asserts rather than silently passing through.

This surfaced compiling CPython's deep-frozen module data (SPEC CPU 2026
714.cpython_r), where frozen objects cross-reference each other and carry string
payloads. The benchmark advances past this abort to a const-record type-identity
issue that is tracked separately.
DeltaFile
+21-0clang/test/CIR/CodeGen/global-replace-string-array.c
+9-1clang/lib/CIR/CodeGen/CIRGenModule.cpp
+30-12 files

LLVM/project f2ff9a5llvm/test/CodeGen/AMDGPU s-barrier-signal-var-gep.ll

[AMDGPU] Consolidate CHECK lines for barrier-gep test. NFC

Change-Id: I5d1e155cb02acba76bcdd8a1413d8e694b83ee83
DeltaFile
+172-197llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
+172-1971 files

FreeNAS/freenas bff0a5csrc/middlewared/middlewared/api/v27_0_0 filesystem.py update.py, src/middlewared/middlewared/plugins filesystem.py

NAS-141463 / 27.0.0-BETA.1 / Enable pydantic mypy plugin and fix some errors (#19165)
DeltaFile
+19-14src/middlewared/middlewared/utils/filesystem/stat_x.py
+17-6src/middlewared/middlewared/utils/filesystem/directory.py
+5-7src/middlewared/middlewared/api/v27_0_0/filesystem.py
+10-1src/middlewared/middlewared/utils/crypto.py
+5-4src/middlewared/middlewared/plugins/filesystem.py
+4-2src/middlewared/middlewared/api/v27_0_0/update.py
+60-3414 files not shown
+75-4120 files

LLVM/project 8ad161dllvm/lib/Target/AMDGPU AMDGPUISelLowering.cpp

No else after return

Change-Id: Iff2630b1ac15ff821eacb4a8c9339c85a876ddbc
DeltaFile
+6-5llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
+6-51 files

LLVM/project cf360fbllvm/include/llvm/ADT IntervalMap.h, llvm/lib/Support UnicodeNameToCodepoint.cpp

[LLVM] Avoid nested std::min and std::max. NFC. (#206982)
DeltaFile
+2-2llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
+2-2llvm/include/llvm/ADT/IntervalMap.h
+1-2llvm/lib/TextAPI/RecordsSlice.cpp
+1-2llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp
+1-1llvm/lib/Support/UnicodeNameToCodepoint.cpp
+1-1llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+8-106 files

FreeNAS/freenas 8cb27e7src/middlewared/middlewared/plugins/enclosure_ nvme2.py slot_mappings.py, src/middlewared/middlewared/pytest/unit/plugins/enclosure/test-cases/V260-NOJBODS mocked.json expected.json

NAS-141457 / 26.0.0-RC.1 / V-series rear-bay enclosure support via bifurcated NTG SES partition

Adds enclosure2.query support for V-series rear bays (V140, V160, V260,
V280) served by the bay-serving half of the bifurcated PEX89032 NTG
chip. The other half has no drives and is dropped from enclosure2.query
— discriminated by Array Device Slot descriptor labels ('slot01'..'slot04'
identifies the bay-serving partition; '<empty>' identifies the no-drives
half). Both halves share the same vendor / product / encid, so descriptor
labels are the only discriminator.

Changes:

- ses_enclosures2 adds _VSERIES_REAR_PRODUCTS, the
  _vseries_rear_partition_owns_bays discriminator, and
  _initialize_v_series_rear_enclosures (picks the bay-serving partition,
  tags it slot_designation='REAR', drops the no-drives partition).
  get_ses_enclosures grows a deferred_rear bucket and dispatches via the
  unified _initialize_v_series_enclosures wrapper.


    [21 lines not shown]
DeltaFile
+702-0src/middlewared/middlewared/pytest/unit/plugins/enclosure/test-cases/V260-NOJBODS/mocked.json
+606-0src/middlewared/middlewared/pytest/unit/plugins/enclosure/test-cases/V260-NOJBODS/expected.json
+0-101src/middlewared/middlewared/plugins/enclosure_/nvme2.py
+27-48src/middlewared/middlewared/plugins/enclosure_/slot_mappings.py
+58-10src/middlewared/middlewared/plugins/enclosure_/ses_enclosures2.py
+5-14src/middlewared/middlewared/plugins/enclosure_/enclosure_class.py
+1,398-1736 files

FreeNAS/freenas 603e1dbsrc/middlewared/middlewared/plugins/enclosure_ slot_mappings.py

drop V-series from get_nvme_slot_info

(cherry picked from commit 8010d68bf6d0c634a892835358a0e1acf163ee1a)
DeltaFile
+0-4src/middlewared/middlewared/plugins/enclosure_/slot_mappings.py
+0-41 files

FreeNAS/freenas fc3f25fsrc/middlewared/middlewared/plugins/enclosure_ sysfs_disks.py

remove fluffy comment

(cherry picked from commit ed7d00dc43712708889d2d49f3f98b13f1c99419)
DeltaFile
+0-4src/middlewared/middlewared/plugins/enclosure_/sysfs_disks.py
+0-41 files

FreeNAS/freenas cce9571src/middlewared/middlewared/plugins/enclosure_ ses_enclosures2.py constants.py

address further reviews

(cherry picked from commit 65d21ad881edb5b435a3ab82c14bb8a0548690cb)
DeltaFile
+12-17src/middlewared/middlewared/plugins/enclosure_/ses_enclosures2.py
+21-0src/middlewared/middlewared/plugins/enclosure_/constants.py
+5-3src/middlewared/middlewared/plugins/enclosure_/slot_mappings.py
+2-5src/middlewared/middlewared/plugins/enclosure_/sysfs_disks.py
+2-1src/middlewared/middlewared/plugins/enclosure_/enclosure_class.py
+42-265 files

FreeNAS/freenas 360869asrc/middlewared/middlewared/plugins/enclosure_ ses_enclosures2.py

remove _initialize_v_series_enclosures

(cherry picked from commit 94bfae0434590c6b599741283ade1b356ce29243)
DeltaFile
+4-14src/middlewared/middlewared/plugins/enclosure_/ses_enclosures2.py
+4-141 files

FreeNAS/freenas eb04c4fsrc/middlewared/middlewared/plugins/enclosure_ ses_enclosures2.py slot_mappings.py

NAS-141457 / 26.0.0-RC.1 / V-series V2xx front-bay enclosure support

Adds enclosure2.query support for V2xx (V260/V280) front-bay drives,
which are served by a single Broadcom PEX89088 PCIe switch chip
partitioned into two SES VirtualSES enclosures (replacing V1xx's dual
9600w-12i4e SAS HBAs).

Key V2xx differences handled here:

- The two PEX89088 SES partitions advertise the SAME encid (SAS
  address), so the V1xx encid-comparison disambiguation fails.
  ses_enclosures2 now falls back to inspecting Array Device Slot element
  descriptor labels ('slot01'..'slot12' identifies the NVME0 partition;
  'slot13'..'slot24' identifies NVME8).

- V2xx slot indexing differs from V1xx: each partition exposes its 12
  owned slots at libsg3 element keys 1-12 (NVME0) or 13-24 (NVME8),
  with sysfs slot files matching the key 1:1. slot_mappings now branches
  by enc.product so the V2xx table is picked for ECStream 4IXGA-SWp/s.

    [12 lines not shown]
DeltaFile
+82-20src/middlewared/middlewared/plugins/enclosure_/ses_enclosures2.py
+79-5src/middlewared/middlewared/plugins/enclosure_/slot_mappings.py
+24-2src/middlewared/middlewared/plugins/enclosure_/sysfs_disks.py
+19-1src/middlewared/middlewared/plugins/enclosure_/enclosure_class.py
+204-284 files

FreeBSD/ports 44d8278math/octave-forge-io distinfo Makefile

math/octave-forge-io: Update to 2.7.2.
DeltaFile
+3-3math/octave-forge-io/distinfo
+1-2math/octave-forge-io/Makefile
+4-52 files

LLVM/project 478acecllvm/lib/Target/AMDGPU AMDGPUISelLowering.cpp SIISelLowering.cpp, llvm/test/CodeGen/AMDGPU s-barrier-signal-var-gep.ll

[AMDGPU] Fold constant offsets into named barrier addresses

Allow isOffsetFoldingLegal to fold a constant offset into an LDS
named-barrier global, and include the node offset when materializing the
LDS address in LowerGlobalAddress. s_barrier_signal_var on a GEP'd named
barrier now selects the immediate form, matching a bare global and GlobalISel.
With object linking the offset folds into the relocation addend.

The barrier ID is derived from the address via (addr >> 4) & 0x3F, so a
byte offset that does not land on a 16-byte barrier boundary is still
valid: it simply selects the containing barrier. No alignment assertion
is needed, and such offsets must not crash the compiler (see the
misaligned test).

Change-Id: I639bc723eb001573585cc05d0ad19f2773054f21
Assisted-by: Cursor
DeltaFile
+8-6llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
+4-8llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
+8-0llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+20-143 files

LLVM/project ce8509fmlir/lib/Dialect/OpenACC/Transforms ACCRecipeMaterialization.cpp

[OpenACC] append triples when materializing reduction destroy recipes (#207034)

Append the triples if they exist when materializing the destroy region.
DeltaFile
+1-0mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
+1-01 files

LLVM/project d414713llvm/include/llvm/IR Intrinsics.td Intrinsics.h, llvm/lib/IR AutoUpgrade.cpp

[LLVM][Tablegen] Add Default arguments support for Intrinsics in TableGen (#198557)

This patch adds LLVM infrastructure to support default argument values
for intrinsics, modeled after C++ default arguments.
The motivation is to simplify the evolution of intrinsic signatures by
removing the hand-written AutoUpgrade boilerplate that intrinsic authors
must repeat for every new trailing parameter.

This feature extends the existing TableGen `ImmArg<>` property with an
optional `DefaultValue<V>`, written as `ImmArg<ArgIndex<N>,
DefaultValue<V>>`, so an intrinsic author can declare a default value
alongside an immediate argument. When older .ll or .bc IR is loaded,
AutoUpgrade fills in the missing trailing arguments from the
TableGen-generated default-value table ; no per-intrinsic hand-written
upgrade case is required.

Link to the RFC, where this feature will be discussed:

https://discourse.llvm.org/t/rfc-default-argument-support-for-llvm-intrinsics/90839
DeltaFile
+95-0llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
+94-0llvm/test/TableGen/intrinsic-default-args.td
+91-0llvm/lib/IR/AutoUpgrade.cpp
+75-0llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
+16-2llvm/include/llvm/IR/Intrinsics.td
+9-0llvm/include/llvm/IR/Intrinsics.h
+380-22 files not shown
+390-28 files

LLVM/project dd6d111clang/unittests/Basic CMakeLists.txt

Fix MSVC build after #206326 (#206993)

MSVC defaults to a non-utf8 encoding, and we added unicode characters in
some test files, which causes CI failures
DeltaFile
+1-0clang/unittests/Basic/CMakeLists.txt
+1-01 files

FreeBSD/src de68720cddl/lib/libzfs Makefile, cddl/lib/libzpool Makefile

zfs: fix SIMD defines to match OpenZFS HAVE_SIMD() macro

The OpenZFS merge 80aae8a3f8aa introduced HAVE_SIMD() which checks for
HAVE_TOOLCHAIN_* defines via simd_config.h.  The kernel module Makefile
was updated, but kern.pre.mk (static kernel build) and the libzpool/libzfs
Makefiles were missed, still using the old HAVE_SSE2 etc. names.  This
caused all vectorized raidz, fletcher, and blake3 implementations to be
compiled out.
DeltaFile
+5-3sys/conf/kern.pre.mk
+3-3cddl/lib/libzpool/Makefile
+3-2cddl/lib/libzfs/Makefile
+11-83 files

FreeBSD/doc eac263fdocumentation/content/en/books/fdp-primer/po-translations _index.adoc, documentation/content/en/books/fdp-primer/translations _index.adoc

books/fdp-primer: remove duplicate sentences

PR: 295678
DeltaFile
+3-3documentation/content/en/books/fdp-primer/po-translations/_index.adoc
+0-3documentation/content/en/books/fdp-primer/translations/_index.adoc
+3-62 files

FreeBSD/ports 1a3c52cdevel/glab distinfo Makefile

devel/glab: update to 1.106.0

Changes:        https://gitlab.com/gitlab-org/cli/-/releases
DeltaFile
+5-5devel/glab/distinfo
+2-2devel/glab/Makefile
+2-0devel/glab/pkg-plist
+9-73 files

FreeBSD/ports ae1cea4security/trivy distinfo Makefile

security/trivy: update to 0.72.0

Changes:        https://github.com/aquasecurity/trivy/releases
DeltaFile
+5-5security/trivy/distinfo
+1-1security/trivy/Makefile
+6-62 files

FreeBSD/ports 0b51336www/pydio-cells distinfo Makefile

www/pydio-cells: update to 5.0.2

Changelog: https://github.com/pydio/cells/releases/tag/v5.0.2
DeltaFile
+5-5www/pydio-cells/distinfo
+1-1www/pydio-cells/Makefile
+6-62 files

LLVM/project f298ab9llvm/lib/Target/AMDGPU SIFoldOperands.cpp, llvm/test/CodeGen/AMDGPU si-fold-reg-sequence.mir

[AMDGPU] Fix SIFoldOperands crash on REG_SEQUENCE with physical register (#206976)

The getRegSeqInit function crashes on REG_SEQUENCE instructions with
physical register inputs.

Since both optimizations that use getRegSeqInit do not need to handle
such REG_SEQUENCE instructions, this patch changes the function to
return nullptr which signals that the optimization should not happen.
DeltaFile
+21-0llvm/test/CodeGen/AMDGPU/si-fold-reg-sequence.mir
+2-0llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+23-02 files

LLVM/project a5864f9flang/lib/Lower/OpenMP Utils.cpp, flang/test/Lower/OpenMP non-rectangular-collapse.f90 non-rectangular-collapse2.f90

[Flang][OpenMP] Emit TODO for non-rectangular collapsed loop nests (#205558)

Non-rectangular loop nests (where an inner loop bound depends on an
outer IV) with collapse currently generate incorrect code that segfaults
at runtime, since OpenMPIRBuilder's collapseLoops assumes rectangular
iteration spaces.

Added a check during lowering to detect the non-rectangular case and
emit a clear "not yet implemented" error instead of silently producing
broken code.

minimal reproducer : 
```
program repro
implicit none
integer, parameter :: N = 10
integer :: arr(N,N), i, j

arr = 0

    [23 lines not shown]
DeltaFile
+32-0flang/lib/Lower/OpenMP/Utils.cpp
+23-0flang/test/Lower/OpenMP/non-rectangular-collapse.f90
+22-0flang/test/Lower/OpenMP/non-rectangular-collapse2.f90
+22-0flang/test/Lower/OpenMP/non-rectangular-collapse3.f90
+99-04 files

OpenBSD/src GOEIFzTusr.bin/tmux layout-set.c layout.c

   Change layout sets to build the layout using the new mechanics, from
   Dane Jensen.
VersionDeltaFile
1.37+151-173usr.bin/tmux/layout-set.c
1.84+23-16usr.bin/tmux/layout.c
1.355+4-4usr.bin/tmux/window.c
1.35+4-4usr.bin/tmux/layout-custom.c
1.1385+4-3usr.bin/tmux/tmux.h
1.43+2-2usr.bin/tmux/spawn.c
+188-2026 files

LLVM/project 9b3d68fclang/test/CodeGen atomic-auto-type.c

[Clang] Add FileCheck lines to atomic-auto-type codegen test (#206749)

Follow-up to #197874. The codegen test was missing FileCheck lines,
making it a no-op. Add checks that verify both __auto_type _Atomic and
_Atomic __auto_type produce correct allocas and stores.


Follow up to comment from:
https://github.com/llvm/llvm-project/pull/197874#discussion_r3496368126
DeltaFile
+40-10clang/test/CodeGen/atomic-auto-type.c
+40-101 files

OPNSense/core 10a2749src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes PortField.php, src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes PortFieldTest.php

mvc: PortField now rejects whitespaces in port ranges during validation (#10478)
DeltaFile
+31-19src/opnsense/mvc/app/models/OPNsense/Base/FieldTypes/PortField.php
+14-0src/opnsense/mvc/tests/app/models/OPNsense/Base/FieldTypes/PortFieldTest.php
+45-192 files

LLVM/project fe7e78cllvm/include/llvm/Support VersionTuple.h, llvm/unittests/Support VersionTupleTest.cpp

[Support] Fix VersionTuple DenseMapInfo conformance (#206872)

In C++ standard library (and many other programming languages standard
libraries), if two values are equal, they should return the same hash.
This requirement is pretty common so associative containers can quickly
find values that might be equal by calculating the hash, and if that
requirement is not hold, associative containers might not work as
expected.

The documentation of `DenseMapInfo` does not specify the same
requirement, as far as I can see, but its usage on `DenseMap` relies on
it, or objects that compare equal might end up in different buckets and
will not be correctly found.

`DenseMapInfo<VersionTuple>` implementation of `getHashValue` was
implementing its own logic for hashing, but delegating to `VersionTuple`
for equality. `VersionTuple` equality partially compares its scalar
member variables, skipping some boolean member variables, but the
`getHashValue` implementation was using those boolean member variables

    [11 lines not shown]
DeltaFile
+19-0llvm/unittests/Support/VersionTupleTest.cpp
+1-11llvm/include/llvm/Support/VersionTuple.h
+20-112 files

LLVM/project 39b92b2clang/lib/Driver/ToolChains CommonArgs.cpp, clang/test/Driver amdgpu-mcpu.cl hip-sanitize-options.hip

clang/AMDGPU: Stop passing redundant -target-cpu to cc1

Now that the exact target is encoded in the triple's subarch field,
-target-cpu is redundant. This avoids polluting the resultant IR with
unwanted "target-cpu" attributes. The net result is the desired codegen
when compiling libraries for a major subarch and linking it into a
program compiled for a specific arch. e.g., compiling for "gfx9-generic"
would pollute the IR with "target-cpu"="gfx9-generic", so codegen
would ultimately be performed for the generic target even after
linking into the concrete gfx9 cpu. The specialization will now be
achieved by merging the triples without the linker or optimization
passes needing to fixup function attributes.
DeltaFile
+62-62clang/test/Driver/amdgpu-mcpu.cl
+26-26clang/test/Driver/hip-sanitize-options.hip
+20-10clang/lib/Driver/ToolChains/CommonArgs.cpp
+12-16clang/test/Driver/hip-rdc-device-only.hip
+24-0clang/test/Preprocessor/amdgpu-subarch-cc1-target-cpu.cl
+10-10clang/test/Driver/amdgpu-xnack-sramecc-flags.c
+154-12427 files not shown
+214-21133 files

LLVM/project ea20fb2clang/lib/Basic/Targets AMDGPU.h AMDGPU.cpp, clang/test/Misc/target-invalid-cpu-note amdgcn.c

clang/AMDGPU: Validate -target-cpu in cc1 is valid for the subarch

Restrict the reported list of valid target-cpus based on the triple's
subarch. This is more consistent with how other targets validate the
target CPU name. Currently we have split handling validating the target
name for the triple in both the driver and here. The driver based diagnostic
seems to be an amdgpu-ism in 2 different places (though there is one arm
validation emitting the same diagnostic). In the future we could probably
drop those.
DeltaFile
+55-0clang/test/Misc/target-invalid-cpu-note/amdgcn.c
+6-5clang/lib/Basic/Targets/AMDGPU.h
+1-1clang/lib/Basic/Targets/AMDGPU.cpp
+62-63 files

LLVM/project f3a4a34llvm/test/CodeGen/AMDGPU directive-amdgcn-target-legacy-triples.ll directive-amdgcn-target.ll

AMDGPU: Migrate target id tests to use new subarch triples
DeltaFile
+239-0llvm/test/CodeGen/AMDGPU/directive-amdgcn-target-legacy-triples.ll
+0-239llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
+12-10llvm/test/CodeGen/AMDGPU/target-id-xnack-always-on.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-any.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-not-supported.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-off.ll
+284-2829 files not shown
+380-37815 files