LLVM/project 75b8f98llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

[SLP] NFC. Change the comment to match the code execution. (#116022)

Make code execute like the comment will modify many tests and affect the
performance. As a result, we change the comment instead of the code.
DeltaFile
+1-1llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+1-11 files

LLVM/project 922282eclang/docs ReleaseNotes.rst, clang/include/clang/Basic Attr.td

[TargetVersion] Only enable on RISC-V and AArch64 (#115991)

Address https://github.com/llvm/llvm-project/issues/115000. 

This patch constrains the target_version feature to work only on RISC-V
and AArch64 to prevent crashes in Clang.

---------

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
DeltaFile
+4-0clang/test/Sema/attr-target-version-unsupported.c
+2-0clang/docs/ReleaseNotes.rst
+1-1clang/include/clang/Basic/Attr.td
+7-13 files

LLVM/project a432f11llvm/include/llvm/ExecutionEngine/JITLink aarch64.h, llvm/lib/ExecutionEngine/JITLink aarch64.cpp MachO_arm64.cpp

[JITLink][arm64] Support arm64e JIT'd code (initially enabled for MachO only).

Adds two new JITLink passes to create and populate a pointer-signing function
that can be called via an allocation-action attached to the LinkGraph:

* createEmptyPointerSigningFunction creates a pointer signing function in a
custome section, reserving sufficient space for the signing code. It should
be run as a post-prune pass (to ensure that memory is reserved prior to
allocation).
* lowerPointer64AuthEdgesToSigningFunction pass populates the signing function
by walking the graph, decoding the ptrauth info (encoded in the edge addend) and
writing an instruction sequence to sign all ptrauth fixup locations.

rdar://61956998
DeltaFile
+276-0llvm/lib/ExecutionEngine/JITLink/aarch64.cpp
+158-0llvm/test/ExecutionEngine/JITLink/AArch64/MachO_ptrauth-globals.s
+53-0llvm/include/llvm/ExecutionEngine/JITLink/aarch64.h
+33-3llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
+520-34 files

FreeNAS/freenas 7e08961tests/api2 test_smb_write_offset.py

Fix
DeltaFile
+1-1tests/api2/test_smb_write_offset.py
+1-11 files

LLVM/project 4d6e691clang/test/CodeGen math-libcalls-tbaa-indirect-args.c, clang/test/CodeGen/SystemZ zos-mixed-ptr-sizes.c

Add the initializes attribute inference (#117104)

reland https://github.com/llvm/llvm-project/pull/97373 after fixing
clang tests.

Confirmed with "ninja check-llvm" and "ninja check-clang"
DeltaFile
+572-0llvm/test/Transforms/FunctionAttrs/initializes.ll
+326-3llvm/lib/Transforms/IPO/FunctionAttrs.cpp
+52-52llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
+7-7clang/test/CodeGen/SystemZ/zos-mixed-ptr-sizes.c
+6-6clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
+5-5llvm/test/Transforms/FunctionAttrs/argmemonly.ll
+968-7327 files not shown
+1,022-12733 files

FreeNAS/freenas 3c09c1ctests/api2 test_smb_write_offset.py

Fix
DeltaFile
+1-0tests/api2/test_smb_write_offset.py
+1-01 files

FreeBSD/src ab540d4sys/dev/igc if_igc.c igc_regs.h

igc: sysctl for TCP flag handling during TSO

Add tso_tcp_flags_mask_first_segment, tso_tcp_flags_mask_middle_segment,
and tso_tcp_flags_mask_last_segment sysctl-variables to control the
handling of TCP flags during TSO.

This allows to change the masks appropriate for classical ECN and to
configure appropriate masks for accurate ECN.

MFC after:      3 days
Sponsored by:   Netflix
DeltaFile
+59-0sys/dev/igc/if_igc.c
+2-0sys/dev/igc/igc_regs.h
+61-02 files

LLVM/project ceb3dc6llvm/lib/Target/AMDGPU VOP3PInstructions.td SIInstrInfo.td

AMDGPU: Create InstrMapping from VGPR MFMA to equivalent AGPR instruction

This provides infrastructure for a future optimization.
DeltaFile
+10-5llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+9-0llvm/lib/Target/AMDGPU/SIInstrInfo.td
+5-0llvm/lib/Target/AMDGPU/SIInstrInfo.h
+24-53 files

LLVM/project 69cc3f0utils/bazel/llvm-project-overlay/mlir BUILD.bazel

Add mlir-query bazel rules (#116063)

I noticed there's no bazel query for `mlir-query`, unlike the other MLIR
tools, so adding one.
DeltaFile
+58-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+58-01 files

FreeBSD/src 90853dfsys/dev/e1000 if_em.c

e1000: sysctl for TCP flag handling during TSO

Add tso_tcp_flags_mask_first_segment, tso_tcp_flags_mask_middle_segment,
and tso_tcp_flags_mask_last_segment sysctl-variables to control the
handling of TCP flags during TSO.

This allows to change the masks appropriate for classical ECN and to
configure appropriate masks for accurate ECN.

Reviewed by:    rrs
MFC after:      3 days
Sponsored by:   Netflix
Differential Revision:  https://reviews.freebsd.org/D44259
DeltaFile
+56-0sys/dev/e1000/if_em.c
+56-01 files

LLVM/project 79c850dllvm/lib/Target/LoongArch LoongArchExpandPseudoInsts.cpp, llvm/test/CodeGen/LoongArch psabi-restricted-scheduling.ll tls-models.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.5-bogner
DeltaFile
+20-20llvm/test/CodeGen/LoongArch/psabi-restricted-scheduling.ll
+10-10llvm/test/CodeGen/LoongArch/tls-models.ll
+10-10llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
+5-5llvm/test/CodeGen/LoongArch/code-models.ll
+4-4llvm/test/CodeGen/LoongArch/expand-adjacency.ll
+1-1llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
+50-506 files

LLVM/project 5d38e6eflang/test/HLFIR bufferize-workshare.fir, flang/test/Integration/OpenMP workshare-scalar-array-mul.f90 workshare-axpy.f90

[flang] Introduce hlfir.elemental lowerings to omp.workshare_loop_nest (#104748)

This patch adds parallelization support for the following expression in OpenMP
workshare constructs:

* Elemental procedures in array expressions

(reapplied with linking fix)
DeltaFile
+162-0flang/test/Transforms/OpenMP/should-use-workshare-lowering.mlir
+65-0flang/test/Integration/OpenMP/workshare-scalar-array-mul.f90
+57-0flang/test/Integration/OpenMP/workshare-axpy.f90
+57-0flang/test/HLFIR/bufferize-workshare.fir
+45-0flang/test/Integration/OpenMP/workshare-scalar-array-assign.f90
+34-0flang/test/Integration/OpenMP/workshare-array-array-assign.f90
+420-03 files not shown
+431-49 files

FreeBSD/src d99eb82sys/dev/rtwn if_rtwnvar.h, sys/dev/rtwn/usb rtwn_usb_tx.c rtwn_usb_attach.c

rtwn: change the USB TX transfers to only do one pending transfer per endpoint

I found I was getting constant device timeouts when doing anything
more complicated than a single SSH on laptop with RTL8811AU.

After digging into it, i found a variety of fun situations, including
traffic stalls that would recover w/ a shorter (1 second) USB transfer
timeout.  However, the big one is a straight up hang of any TX endpoint
until the NIC was reset.  The RX side kept going just fine; only the
TX endpoints would hang.

Reproducing it was easy - just start up a couple of traffic streams
on different WME AC's - eg a best effort + bulk transfer, like
browsing the web and doing an ssh clone - throw in a ping -i 0.1
to your gateway, and it would very quickly hit device timeouts every
couple of seconds.

I put everything into a single TX EP and the hangs went away.
Well, mostly.

    [38 lines not shown]
DeltaFile
+82-18sys/dev/rtwn/usb/rtwn_usb_tx.c
+17-9sys/dev/rtwn/usb/rtwn_usb_attach.c
+17-6sys/dev/rtwn/usb/rtwn_usb_ep.c
+8-4sys/dev/rtwn/usb/rtwn_usb_var.h
+4-1sys/dev/rtwn/usb/rtwn_usb_tx.h
+1-1sys/dev/rtwn/if_rtwnvar.h
+129-396 files

LLVM/project 036cd27llvm/unittests/TargetParser RISCVISAInfoTest.cpp

[RISCV] Fix typo in RISCVISAInfoTest.cpp. NFC.

ExtsRV32G -> ExtsRV64G.
DeltaFile
+2-2llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+2-21 files

LLVM/project 5abf65amlir/lib/Transforms/Utils DialectConversion.cpp

[mlir][Transforms][NFC] Dialect conversion: Remove "finalize" phase (#116934)

The dialect conversion driver has three phases:
- **Create** `IRRewrite` objects as the IR is traversed.
- **Finalize** `IRRewrite` objects. During this phase, source
materializations for mismatching value types are created. (E.g., when
`Value` is replaced with a `Value` of different type, but there is a
user of the original value that was not modified because it is already
legal.)
- **Commit** `IRRewrite` objects. During this phase, all remaining IR
modifications are materialized. In particular, SSA values are actually
being replaced during this phase.

This commit removes the "finalize" phase. This simplifies the code base
a bit and avoids one traversal over the `IRRewrite` stack. Source
materializations are now built during the "commit" phase, right before
an SSA value is being replaced.

This commit also removes the "inverse mapping" of the conversion value

    [15 lines not shown]
DeltaFile
+72-112mlir/lib/Transforms/Utils/DialectConversion.cpp
+72-1121 files

LLVM/project cbc7802mlir/include/mlir/Dialect/Bufferization/Transforms Passes.td Bufferize.h, mlir/lib/Dialect/Bufferization/Transforms Bufferize.cpp

[mlir][bufferization] Remove `finalizing-bufferize` pass (#114154)

The dialect conversion-based bufferization passes have been migrated to
One-Shot Bufferize about two years ago. To clean up the code base, this
commit removes the `finalizing-bufferize` pass, one of the few remaining
parts of the old infrastructure. Most bufferization passes have already
been removed.

Note for LLVM integration: If you depend on this pass, migrate to
One-Shot Bufferize or copy the pass to your codebase.

Depends on #114152.
DeltaFile
+0-95mlir/test/Dialect/Bufferization/Transforms/finalizing-bufferize.mlir
+0-75mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
+0-16mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
+0-6mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
+0-4mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
+0-2mlir/lib/Dialect/SparseTensor/Pipelines/SparseTensorPipelines.cpp
+0-1986 files

NetBSD/pkgsrc-wip 863c3edriscv64-none-elf-xuantie-gcc distinfo Makefile

riscv64-none-elf-xuantie-gcc: use NEWLIBVER and remove DIST_SUBDIR
DeltaFile
+6-6riscv64-none-elf-xuantie-gcc/distinfo
+5-6riscv64-none-elf-xuantie-gcc/Makefile
+11-122 files

LLVM/project 258a5d4llvm/include/llvm/ExecutionEngine/Orc/Shared ExecutorAddress.h

[ORC][arm64e] Add PAC signing/stripping support to ExecutorAddr toPtr/fromPtr.

On arm64e, uses the "wrap" and "unwrap" operations introduced in f14cb494a34d to
sign and strip pointers by default. Signing / striping can be overriden at the
toPtr / fromPtr callside by passing an explicit wrap / unwrap operation.
DeltaFile
+31-0llvm/include/llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h
+31-01 files

LLVM/project 4056d93mlir/lib/Transforms/Utils DialectConversion.cpp

Revert "[mlir][Transforms][NFC] Dialect conversion: Remove "finalize" phase" (#117094)

Reverts llvm/llvm-project#116934

This commit broke the build.
DeltaFile
+112-72mlir/lib/Transforms/Utils/DialectConversion.cpp
+112-721 files

LLVM/project 1beeac3mlir/include/mlir/Dialect/Bufferization/Transforms Passes.td Bufferize.h, mlir/lib/Dialect/Bufferization/Transforms Bufferize.cpp

[mlir][bufferization] Remove `finalizing-bufferize` pass

The dialect conversion-based bufferization passes have been migrated to One-Shot Bufferize about two years ago. To clean up the code base, this commit removes the `finalizing-bufferize` pass, one of the few remaining parts of the old infrastructure. Most bufferization passes have already been removed.

Note for LLVM integration: If you depend on this pass, migrate to One-Shot Bufferize or copy the pass to your codebase.

Depends on #114152.
DeltaFile
+0-95mlir/test/Dialect/Bufferization/Transforms/finalizing-bufferize.mlir
+0-75mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
+0-16mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
+0-6mlir/include/mlir/Dialect/Bufferization/Transforms/Bufferize.h
+0-4mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
+0-2mlir/lib/Dialect/SparseTensor/Pipelines/SparseTensorPipelines.cpp
+0-1986 files

LLVM/project aa65473mlir/lib/Transforms/Utils DialectConversion.cpp

[mlir][Transforms][NFC] Dialect conversion: Remove "finalize" phase (#116934)

The dialect conversion driver has three phases:
- **Create** `IRRewrite` objects as the IR is traversed.
- **Finalize** `IRRewrite` objects. During this phase, source
materializations for mismatching value types are created. (E.g., when
`Value` is replaced with a `Value` of different type, but there is a
user of the original value that was not modified because it is already
legal.)
- **Commit** `IRRewrite` objects. During this phase, all remaining IR
modifications are materialized. In particular, SSA values are actually
being replaced during this phase.

This commit removes the "finalize" phase. This simplifies the code base
a bit and avoids one traversal over the `IRRewrite` stack. Source
materializations are now built during the "commit" phase, right before
an SSA value is being replaced.

This commit also removes the "inverse mapping" of the conversion value

    [15 lines not shown]
DeltaFile
+72-112mlir/lib/Transforms/Utils/DialectConversion.cpp
+72-1121 files

FreeBSD/src eea2e08sys/dev/ixgbe if_ix.c

ixgbe: sysctl for TCP flag handling during TSO

Add tso_tcp_flags_mask_first_segment, tso_tcp_flags_mask_middle_segment,
and tso_tcp_flags_mask_last_segment sysctl-variables to control the
handling of TCP flags during TSO.

This allows to fix the masks appropriate for classical ECN and to
configure appropriate masks for accurate ECN.

Michael notes emperically 82599 has an unexpected middle mask:
Chip  First Middle Last
82599 0xFF6 0xFF6  0xF7F

which should be fixed up to 0xF76 (RFC 3168) in a future commit.

Reviewed by:    rrs, rscheff
MFC after:      3 days
Sponsored by:   Netflix
Differential Revision:  https://reviews.freebsd.org/D44258
DeltaFile
+56-0sys/dev/ixgbe/if_ix.c
+56-01 files

LLVM/project 7b5b019llvm/lib/Target/X86 X86InstrInfo.cpp X86MachineFunctionInfo.cpp, llvm/test/CodeGen/X86 pr114265.mir

Revert "[X86] Recognize POP/ADD/SUB modifying rsp in getSPAdjust. (#114265) (#117089)

This reverts commit 6fb7cdff3d90c565b87a253ff7dbd36319879111.
DeltaFile
+0-94llvm/test/CodeGen/X86/pr114265.mir
+2-29llvm/lib/Target/X86/X86InstrInfo.cpp
+1-5llvm/lib/Target/X86/X86MachineFunctionInfo.cpp
+0-4llvm/lib/Target/X86/X86MachineFunctionInfo.h
+3-1324 files

LLVM/project 1de9bc1lld/MachO DriverUtils.cpp InputFiles.cpp, lld/test/MachO allowable-client.s

[lld][MachO] Respect dylibs linked with `-allowable_client` (#114638)

ld64.lld would previously allow you to link against dylibs linked with
`-allowable_client`, even if the client's name does not match any
allowed client.

This change fixes that. See #114146 for related discussion. 

The test binary `liballowable_client.dylib` was created on macOS with:

echo | clang -xc - -dynamiclib -mmacosx-version-min=10.11 -arch x86_64
-Wl,-allowable_client,allowed -o lib/liballowable_client.dylib
DeltaFile
+74-0lld/test/MachO/allowable-client.s
+20-0lld/MachO/DriverUtils.cpp
+14-0lld/MachO/InputFiles.cpp
+9-0lld/MachO/Driver.cpp
+1-2lld/MachO/Options.td
+1-0lld/MachO/Config.h
+119-22 files not shown
+120-28 files

FreeBSD/ports 1d66b89games/veloren-weekly distinfo Makefile

games/veloren-weekly: update to s20241120

Changes:        https://gitlab.com/veloren/veloren/-/compare/57ed7d762...dc22338d0
(cherry picked from commit b52bfa0cff5f445822f60f8a6617fb1cf083f4a6)
DeltaFile
+3-3games/veloren-weekly/distinfo
+2-2games/veloren-weekly/Makefile
+5-52 files

FreeBSD/ports ec08b81devel/sdbus-cpp distinfo Makefile

devel/sdbus-cpp: update to 2.1.0

Changes:        https://github.com/Kistler-Group/sdbus-cpp/releases/tag/v2.1.0
Reported by:    GitHub (watch releases)
DeltaFile
+3-3devel/sdbus-cpp/distinfo
+1-2devel/sdbus-cpp/Makefile
+4-52 files

FreeBSD/ports 9e67c6ddevel/sdbus-cpp pkg-plist Makefile

devel/sdbus-cpp: simplify plist updates
DeltaFile
+1-1devel/sdbus-cpp/pkg-plist
+1-0devel/sdbus-cpp/Makefile
+2-12 files

FreeBSD/ports 6390ecdnet/wayvnc distinfo Makefile

net/wayvnc: update to 0.9.1

Changes:        https://github.com/any1/wayvnc/releases/tag/v0.9.1
Reported by:    GitHub (watch releases)
DeltaFile
+3-5net/wayvnc/distinfo
+1-4net/wayvnc/Makefile
+4-92 files

FreeBSD/ports b4f448bnet/neatvnc distinfo Makefile

net/neatvnc: update to 0.9.1

Changes:        https://github.com/any1/neatvnc/releases/tag/v0.9.1
Reported by:    GitHub (watch releases)
DeltaFile
+2-2net/neatvnc/distinfo
+1-1net/neatvnc/Makefile
+3-32 files

FreeBSD/ports b52bfa0games/veloren-weekly distinfo Makefile

games/veloren-weekly: update to s20241120

Changes:        https://gitlab.com/veloren/veloren/-/compare/57ed7d762...dc22338d0
DeltaFile
+3-3games/veloren-weekly/distinfo
+2-2games/veloren-weekly/Makefile
+5-52 files