LLVM/project 4bc1cd9.github/workflows release-binaries.yml

workflows/release-binaries: Fix yaml error (#199735)

This was introduced by: 25294a2fffcf40cbd8b6743d78524badeded7446
DeltaFile
+5-5.github/workflows/release-binaries.yml
+5-51 files

LLVM/project 460556allvm/lib/ExecutionEngine/Orc/Shared SimpleRemoteEPCUtils.cpp

[ORC] Shutdown the socket FD before closing it in FDSimpleRemoteEPCTransport (#196835)

It is totally possible that when
`FDSimpleRemoteEPCTransport::disconnect` is called,
`FDSimpleRemoteEPCTransport::listenLoop` is still reading on the socket
FD the former is closing. On Linux, closing a socket FD when it is being
read by another thread is an undefined behavior I believe. And on modern
kernels, the reading thread will not be waken up, so `listenLoop` will
be blocked forever and preventing the process from exiting.

This patch fixes this issue by calling `shutdown(2)` on the socket FDs
before closing them.
DeltaFile
+14-0llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp
+14-01 files

LLVM/project 1869d99llvm/docs LangRef.rst, llvm/include/llvm/IR Intrinsics.td

Update `memset.inline` third argument documentation (#199725)

Similar to `memcpy.inline`, `memset.inline`'s size argument doesn't need
to be a constant. Checked by the test

Transforms/PreISelIntrinsicLowering/X86/memset-inline-non-constant-len.ll.
DeltaFile
+1-1llvm/docs/LangRef.rst
+0-1llvm/include/llvm/IR/Intrinsics.td
+1-22 files

LLVM/project bacd876lld/MachO BPSectionOrderer.cpp, lld/test/MachO eh-frame-ordering.s

[lld][MachO] Preserve __eh_frame ordering during BP section sorting (#191412)

The Balanced Partitioning section orderer collects all live
`ConcatInputSection`s as candidates for content-similarity reordering.
This includes `__eh_frame` CIE and FDE records, which have internal
ordering constraints: each FDE contains a backward-relative 32-bit
offset to its parent CIE, requiring CIEs to precede their FDEs.

When the BP orderer assigns priorities to `__eh_frame` subsections and
`Writer.cpp` sorts by those priorities, FDEs can end up before their
parent CIEs. The resulting CIE-pointer offsets resolve correctly with
32-bit wrapping arithmetic but underflow with 64-bit pointer arithmetic,
causing DWARF consumers (crash reporters, debuggers) to silently lose
unwind data.

## Fix

Have the BP orderer skip the Mach-O `__TEXT,__eh_frame` section
explicitly before collecting candidate subsections, preserving the

    [72 lines not shown]
DeltaFile
+107-0lld/test/MachO/eh-frame-ordering.s
+4-0lld/MachO/BPSectionOrderer.cpp
+111-02 files

LLVM/project b395ca7llvm/lib/Target/SPIRV SPIRVLegalizePointerCast.cpp, llvm/test/CodeGen/SPIRV/llvm-intrinsics matrix-transpose.ll

[SPIR-V] Fix legalized load of single-element vector from array (#198330)
DeltaFile
+12-8llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll
+10-0llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
+22-82 files

LLVM/project 80a5207llvm/lib/Transforms/Vectorize VPlanRecipes.cpp VPlanAnalysis.cpp, llvm/unittests/Transforms/Vectorize VPlanTest.cpp VPDomTreeTest.cpp

[VPlan] Thread scalar types through VPInstruction and VPPhi. (NFC) (#199378)

Update VPInstruction and VPPhi to populate VPSingleDefValue's scalar
type. For most opcodes, the scalar type is determine from the operands,
via computeScalarTypeForInstruction, which roughly matches to removed
inference code. For some opcodes, like FirstActiveLane, the type must be
provided explicitly.

PR: https://github.com/llvm/llvm-project/pull/199378
DeltaFile
+112-28llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+3-121llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
+58-32llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
+18-12llvm/lib/Transforms/Vectorize/VPlan.h
+18-7llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+13-6llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
+222-2064 files not shown
+244-21710 files

FreeBSD/src 2ca9d92lib/libc/gen nlist.3

nlist.3: Add discouraged use notice

It is a relic from a.out days and is poorly specified. Although ELF
support was added to nlist, there are better ways to access ELF data.

Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57078

(cherry picked from commit 94b7a335683abcbcd76e8b67d37e21271d81590c)
(cherry picked from commit be2da08e0b5b82329e36a6cf3b98f9099c6184ce)
DeltaFile
+4-0lib/libc/gen/nlist.3
+4-01 files

FreeBSD/src 5083252lib/libc/gen nlist.3

nlist.3: Clarify which symbol table is used

nlist() requires section headers, and currently fetches symbol names
only from SHT_SYMTAB,

Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57065

(cherry picked from commit cd6bf930eafe850dc631feeaf8332832601f4225)
(cherry picked from commit e25366d46bf5cdd840d2827524f9ed29e2fcbc66)
DeltaFile
+5-3lib/libc/gen/nlist.3
+5-31 files

FreeBSD/src fea07b7lib/libc/gen nlist.3

nlist.3: Replace a.out(5) Xref with elf(5)

ELF support was added to nlist() in 1997, and a.out support was removed
in 2020.  The man page was not updated for either of these changes.

Fixes: 77909f597881 ("Initial elf nlist support, ...")
Fixes: 86cfa7e70b2b ("nlist: retire long-obsolete aout support")
Sponsored by: The FreeBSD Foundation

(cherry picked from commit 876a17321c896427d70de94101df4d888a19189b)

struct nlist is documented in both a.out(5) and stab(5), so add an Xref
to the latter.

(cherry picked from commit 762e451b318c8cbfddbcaaa92a218e8b45306eb9)
(cherry picked from commit 9d9651c49575e27f2873c10bb7fe855be29ff48a)
DeltaFile
+4-5lib/libc/gen/nlist.3
+4-51 files

FreeBSD/src 9d9651clib/libc/gen nlist.3

nlist.3: Replace a.out(5) Xref with elf(5)

ELF support was added to nlist() in 1997, and a.out support was removed
in 2020.  The man page was not updated for either of these changes.

Fixes: 77909f597881 ("Initial elf nlist support, ...")
Fixes: 86cfa7e70b2b ("nlist: retire long-obsolete aout support")
Sponsored by: The FreeBSD Foundation

(cherry picked from commit 876a17321c896427d70de94101df4d888a19189b)

struct nlist is documented in both a.out(5) and stab(5), so add an Xref
to the latter.

(cherry picked from commit 762e451b318c8cbfddbcaaa92a218e8b45306eb9)
DeltaFile
+4-3lib/libc/gen/nlist.3
+4-31 files

FreeBSD/src e25366dlib/libc/gen nlist.3

nlist.3: Clarify which symbol table is used

nlist() requires section headers, and currently fetches symbol names
only from SHT_SYMTAB,

Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57065

(cherry picked from commit cd6bf930eafe850dc631feeaf8332832601f4225)
DeltaFile
+5-3lib/libc/gen/nlist.3
+5-31 files

FreeBSD/src be2da08lib/libc/gen nlist.3

nlist.3: Add discouraged use notice

It is a relic from a.out days and is poorly specified. Although ELF
support was added to nlist, there are better ways to access ELF data.

Reviewed by:    kib
Sponsored by:   The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57078

(cherry picked from commit 94b7a335683abcbcd76e8b67d37e21271d81590c)
DeltaFile
+4-0lib/libc/gen/nlist.3
+4-01 files

LLVM/project 2f99897clang/lib/CIR/Dialect/Transforms LoweringPrepare.cpp, clang/test/SemaCXX cxx2c-decomposition.cpp

Merge branch 'main' into revert-197745-jn/clang-avoid-casts
DeltaFile
+198-313lld/MachO/ConcatOutputSection.cpp
+263-0llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
+251-0llvm/test/CodeGen/AArch64/sve-fixed-length-fp-compares.ll
+24-78llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
+91-10clang/test/SemaCXX/cxx2c-decomposition.cpp
+92-5clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+919-406213 files not shown
+1,919-1,212219 files

LLVM/project 990e35eutils/bazel/llvm-project-overlay/mlir BUILD.bazel

[Bazel] Fixes 44da860 (#199723)

This fixes 44da8601d71ea712b92589bc83f498d6e952c4f9.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
DeltaFile
+2-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+2-01 files

LLVM/project a917c00libcxx/include/__algorithm unique_copy.h partial_sort_copy.h, libcxx/include/__memory uninitialized_algorithms.h ranges_uninitialized_algorithms.h

[libc++] Use __in_out_result in the remaining appropriate algorithms (#198156)

We've already switched some algorithms to use `__in_out_result` instead
of `pair` as the return type. This updates the remaining appropriate
algorithms.
DeltaFile
+11-10libcxx/include/__memory/uninitialized_algorithms.h
+8-8libcxx/include/__algorithm/unique_copy.h
+4-9libcxx/include/__memory/ranges_uninitialized_algorithms.h
+5-4libcxx/include/__algorithm/partial_sort_copy.h
+4-3libcxx/include/__algorithm/copy_if.h
+2-5libcxx/include/__algorithm/ranges_unique_copy.h
+34-392 files not shown
+38-478 files

LLVM/project b2e7358llvm/lib/Target/AMDGPU AMDGPURegBankCombiner.cpp, llvm/test/CodeGen/AMDGPU global-saddr-load.ll

PR feedback, fix tests
DeltaFile
+24-90llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
+12-14llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
+36-1042 files

LLVM/project b87d14fllvm/lib/Target/AMDGPU AMDGPURegBankCombiner.cpp, llvm/test/CodeGen/AMDGPU/GlobalISel load-d16.ll

[AMDGPU][True16] Add regbank combiner cases to fix regression around G_SEXTLOAD
DeltaFile
+63-165llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
+17-2llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
+80-1672 files

LLVM/project 2134808llvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

Refactor comment, make explicit legalizer rules for True16
DeltaFile
+1-5llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+1-51 files

LLVM/project ca86462llvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

Update comment around destination reg size for clarity
DeltaFile
+5-1llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+5-11 files

LLVM/project 0b16014llvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

[AMDGPU][True16] Legalize extloads into 16-bit registers

Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>
DeltaFile
+2-2llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+2-21 files

LLVM/project 93e567allvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

Revert isLoadStoreSizeLegal change, make explicit legalizer rules for True16
DeltaFile
+23-19llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+23-191 files

LLVM/project 90bcafallvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp

Update comment around destination reg size for clarity
DeltaFile
+5-1llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+5-11 files

LLVM/project 3a490c7llvm/lib/Target/AMDGPU AMDGPURegBankLegalizeRules.cpp, llvm/test/CodeGen/AMDGPU global-saddr-load.ll

Add legalize rules and fix tests
DeltaFile
+165-63llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
+90-24llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
+6-9llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
+7-2llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
+268-984 files

LLVM/project 4881ad6llvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp, llvm/test/CodeGen/AMDGPU flat-saddr-load.ll

[AMDGPU][True16] Legalize extloads into 16-bit registers

Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>
DeltaFile
+80-38llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
+2-2llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+82-402 files

LLVM/project e526b20llvm/test/Transforms/SLPVectorizer/RISCV get-vec-element-size.ll

[SLP] Add new tests for instrinsics in getVectorElementSize() (#199612)

More tests for additions to #199129.
DeltaFile
+263-0llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
+263-01 files

FreeNAS/freenas 40d7cf8src/middlewared/middlewared/plugins/jbof crud.py

NAS-141173 / jbof: recover drive slots missing from fabric discovery

After hardwire_host succeeds, query the NVMe-oF discovery log from
each controller's configured fabric paths and compare to the BMC's
drive list. Any slot reported by the BMC as Enabled with an Endpoint,
but absent from at least one controller's discovery output, is
power-cycled via Drive.Reset (ForceOff then On) before attach_drives
runs.

HA-aware: the active controller queries discovery locally and via
failover.call_remote against the standby, unioning the missing-NQN
set so a slot only visible to the standby's view is still recovered.
Recovery actions run on the active only; Drive.Reset is global to the
slot so both controllers see the re-registered NQN on the next
attach_drives.

Adds four private methods:
  - list_drive_slots_with_endpoints
  - reset_drive_slot

    [8 lines not shown]
DeltaFile
+158-0src/middlewared/middlewared/plugins/jbof/crud.py
+158-01 files

FreeNAS/freenas 215b801src/middlewared/middlewared/plugins/jbof crud.py

NAS-141173 / jbof: retry hardwire_host with fabric-card reset on failure

When jbof.create or jbof.update cannot validate communication with the
expansion shelf on the first attempt, parallel-reset both IOMs' fabric
cards via the Oem NetworkAdapter.Reset Redfish action and retry
hardwire_host once.

Each reset returns when the BMC reports the restart complete (~28s
each, issued in parallel). A 30-second post-reset settle is added to
give the fabric data plane time to start answering ARP/NDP before the
retry validates again.

The retry path is gated on at least one initiator-side path having
failed to validate. On hosts that succeed on the first attempt, the
reset code is not reached and behavior is unchanged.

HA: the retry runs once on whichever controller invoked the create.
The fabric-card reset is global to the IOM, so a single reset benefits
both controllers' paths to that IOM.

    [2 lines not shown]
DeltaFile
+55-5src/middlewared/middlewared/plugins/jbof/crud.py
+55-51 files

FreeNAS/freenas 76f405csrc/middlewared/middlewared/plugins sysdataset.py

Fix
DeltaFile
+44-19src/middlewared/middlewared/plugins/sysdataset.py
+44-191 files

FreeNAS/freenas 543835bsrc/middlewared/middlewared/plugins sysdataset.py, src/middlewared/middlewared/plugins/system_dataset mount.py

Improve system dataset moves

* Use FD-based mount APIs for moving around system datasets
* Use zfs send/recv for shifting system datasets between pools
* Use mounting beneath + unmounting on top combined with
  stopping / starting services to ensure that we're as close as
  possible to being atomic with these moves.
DeltaFile
+570-437src/middlewared/middlewared/plugins/sysdataset.py
+437-0tests/unit/test_system_dataset.py
+178-0src/middlewared/middlewared/plugins/system_dataset/mount.py
+88-2tests/api2/test_system_dataset.py
+1,273-4394 files

FreeNAS/freenas 255679fsrc/middlewared/middlewared/plugins/system_dataset mount.py

Fix
DeltaFile
+7-4src/middlewared/middlewared/plugins/system_dataset/mount.py
+7-41 files