LLVM/project 02da539llvm/include/llvm/CodeGen MachineRegisterInfo.h, llvm/lib/CodeGen ModuloSchedule.cpp MachinePipeliner.cpp

CodeGen: Add getDefBlock helper (#216182)

A reasonable number of places check getVRegDef just to
return the parent block, so introduce a helper for it.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+4-5llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp
+3-4llvm/lib/CodeGen/LiveVariables.cpp
+7-0llvm/include/llvm/CodeGen/MachineRegisterInfo.h
+2-2llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
+2-2llvm/lib/CodeGen/MachinePipeliner.cpp
+1-2llvm/lib/CodeGen/ModuloSchedule.cpp
+19-154 files not shown
+23-1910 files

OPNSense/ports 59f5174opnsense/filterlog-go Makefile distinfo

opnsense/filterlog-go: update to 0.11.0
DeltaFile
+5-5opnsense/filterlog-go/distinfo
+1-1opnsense/filterlog-go/Makefile
+6-62 files

LLVM/project 3387214llvm/lib/CodeGen/SelectionDAG LegalizeFloatTypes.cpp, llvm/test/CodeGen/NVPTX fp128-conv-no-libcall-error.ll

DAG: Gracefully diagnose missing FP conversion libcalls when softening (#215765)

Diagnose the missing libcall and return poison instead.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+70-0llvm/test/CodeGen/NVPTX/fp128-conv-no-libcall-error.ll
+46-14llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
+116-142 files

LLVM/project 4cd50b4mlir/cmake/modules MLIRCheckHardwareFeatures.cmake, mlir/test/Integration/Dialect/Linalg/CPU/ArmSME pack-unpack-mmt4d.mlir

[mlir][ArmSME] Enable native ArmSME integration testing on Darwin (#215296)

`MLIR_RUN_ARM_SME_TESTS=ON` could not exercise ArmSME integration tests
on real Apple Silicon SME hardware:

1. `check_hwcap` only detects CPU features via Linux's
`getauxval()`/`hwcap.h`, so it always required an emulator on Darwin,
even with real SME hardware present.
2. With `+sve` enabled, LLVM lowers `vector.vscale` to a bare
`cntd`/`cntb`, illegal outside streaming mode. Apple Silicon doesn't
expose base (non-streaming) SVE at EL0, so this traps (see #204853).
3. Some functions computing `vector.vscale` directly had no (or an
incorrectly unprefixed) streaming attribute, which is required for legal
`vscale` codegen and is silently dropped during `func.func` to
`llvm.func` conversion unless `llvm.`-prefixed (see #190864).
4. 6 tests force a specific streaming vector length via
`setArmSVLBits`/`setArmVLBits`, which isn't possible on real hardware
(SVL is fixed per core).


    [22 lines not shown]
DeltaFile
+35-1mlir/cmake/modules/MLIRCheckHardwareFeatures.cmake
+4-4mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/pack-unpack-mmt4d.mlir
+2-2mlir/test/Integration/Dialect/Vector/CPU/ArmSME/ssve.mlir
+2-2mlir/test/Integration/Dialect/Vector/CPU/ArmSME/load-store-128-bit-tile.mlir
+1-1mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-ops.mlir
+1-1mlir/test/Integration/Dialect/Vector/CPU/ArmSME/vector-load-store.mlir
+45-1116 files not shown
+66-2222 files

LLVM/project 08d3ff7llvm/lib/Target/LoongArch LoongArchISelLowering.cpp LoongArchLateBranchOpt.cpp, llvm/test/CodeGen/LoongArch jr-without-ra.ll branch-opt.ll

[LoongArch] Add late branch optimization pass

The patch adds a late optimization pass that replaces conditional
branches that can be statically evaluated with an unconditinal branch.

This pass is inspired by RISC-V's RISCVLateBranchOpt pass.
DeltaFile
+43-308llvm/test/CodeGen/LoongArch/branch-opt.ll
+122-0llvm/lib/Target/LoongArch/LoongArchLateBranchOpt.cpp
+46-72llvm/test/CodeGen/LoongArch/jr-without-ra.ll
+17-23llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.nogenerated.expected
+17-23llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/loongarch_generated_funcs.ll.generated.expected
+14-0llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
+259-4266 files not shown
+275-43612 files

LLVM/project 51045a7llvm/test/CodeGen/LoongArch branch-opt.ll

[LoongArch][NFC] Add tests for constant branch optimization
DeltaFile
+408-0llvm/test/CodeGen/LoongArch/branch-opt.ll
+408-01 files

LLVM/project 17adf57llvm/lib/Target/LoongArch LoongArchFloat32InstrInfo.td, llvm/test/CodeGen/LoongArch pr215935.ll

[LoongArch] Fix selection of BRCOND with constant conditions (#216027)

LoongArch DAG instruction selection could fail to select
`LoongArchISD::BRCOND` when its condition was a constant integer. Add
patterns to lower constant zero and one conditions to `BEQZ` and `BNEZ`.

Co-authored-by: wanglei <wanglei at loongson.cn>
Fixes: https://github.com/llvm/llvm-project/issues/215935
DeltaFile
+50-0llvm/test/CodeGen/LoongArch/pr215935.ll
+3-0llvm/lib/Target/LoongArch/LoongArchFloat32InstrInfo.td
+53-02 files

OpenBSD/ports q83b5rdx11/xfce4/libxfce4windowing Makefile distinfo

   x11/xfce4/libxfce4windowing: update to 4.20.7
VersionDeltaFile
1.7+2-2x11/xfce4/libxfce4windowing/distinfo
1.9+1-1x11/xfce4/libxfce4windowing/Makefile
+3-32 files

LLVM/project fa23198llvm/include/llvm/IR PassInstrumentation.h IRUnitRef.h, llvm/include/llvm/Passes StandardInstrumentations.h

[PassInstrumentation] Replace llvm::Any with a tagged IRUnitRef. (NFC) (#215341)

llvm::Any currently requires heap allocations on every construction,
which is quite expensive for the use in PassInstrumentation.

Replace llvm::Any with a hand-rolled IRUnitRef wrapper that uses
PointerIntPair on platforms with 64 bit (or larger) pointers or a pair
of Kind/pointer on other platforms.

Unfortunately I don't think alignas(8) would work for Function (or any
Value*), as it uses `HungOffOperandsAllocMarker`.

Follow-up to https://github.com/llvm/llvm-project/pull/215120.

It further improves compile-time:

 * stage1-O3: -0.09%
 * stage1-ReleaseThinLTO: -0.09%
 * stage1-ReleaseLTO-g: -0.08%

    [4 lines not shown]
DeltaFile
+95-102llvm/lib/Passes/StandardInstrumentations.cpp
+103-0llvm/include/llvm/IR/IRUnitRef.h
+25-31llvm/unittests/IR/PassBuilderCallbacksTest.cpp
+20-27llvm/include/llvm/IR/PassInstrumentation.h
+23-22llvm/include/llvm/Passes/StandardInstrumentations.h
+14-21llvm/unittests/IR/DroppedVariableStatsIRTest.cpp
+280-20312 files not shown
+327-26818 files

HardenedBSD/src 9d13f14lib/libifconfig libifconfig_internal.h, sys/net/route route_tables.c

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/pledge
DeltaFile
+9-9sys/net/route/route_tables.c
+1-1lib/libifconfig/libifconfig_internal.h
+10-102 files

HardenedBSD/src 72f7d8flib/libifconfig libifconfig_internal.h, sys/net/route route_tables.c

Merge branch 'freebsd/current/main' into hardened/current/master
DeltaFile
+9-9sys/net/route/route_tables.c
+1-1lib/libifconfig/libifconfig_internal.h
+10-102 files

HardenedBSD/ports 685c09eaudio/mac distinfo, audio/strawberry distinfo

Merge branch 'freebsd/main' into hardenedbsd/main
DeltaFile
+17-17devel/py-ty/distinfo
+7-7devel/py-ty/Makefile.crates
+14-0cad/librecad/files/patch-librecad_src_src.pro
+5-5devel/jjui/distinfo
+3-3audio/strawberry/distinfo
+3-3audio/mac/distinfo
+49-35829 files not shown
+888-714835 files

LLVM/project b77c0b1llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv float-round-conv.ll

[RISCV] Don't fold vector (fp_to_sint (ceil/floor/round/etc X)) if the inner op has multiple uses. (#216137)

If the inner operation needs to write FRM and the folded operation
does too, combining them may require another pair of FRM writes
unless we can get rid of the inner operation.

This may be expensive on CPUs without FRM renaming support.

Assisted-by: Claude
DeltaFile
+170-0llvm/test/CodeGen/RISCV/rvv/float-round-conv.ll
+7-0llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+177-02 files

LLVM/project f6242fcmlir/python/mlir/dialects/transform structured.py, mlir/test/python/dialects transform_structured_ext.py

[mlir][python] Fix tile interchange ArrayAttr dispatch (#215996)

Dispatch `ArrayAttr` interchange values through `DynamicIndexList`.
DeltaFile
+22-5mlir/python/mlir/dialects/transform/structured.py
+21-0mlir/test/python/dialects/transform_structured_ext.py
+43-52 files

OpenBSD/src G4VXgBbsys/dev/pci if_em_hw.h if_em.c

   add a mac type for Meteor Lake

   needed for generation specific workarounds
   ok jmatthew@
VersionDeltaFile
1.126+15-2sys/dev/pci/if_em_hw.c
1.383+3-1sys/dev/pci/if_em.c
1.100+2-1sys/dev/pci/if_em_hw.h
+20-43 files

OpenBSD/src xafYjIysys/dev/pci if_em.c if_em_hw.h

   simplify mac type tests

   Reduces the number of places to change when adding mac types.
   Tested by bluhm@ in a machine full of em(4) cards, ok jmatthew@
VersionDeltaFile
1.125+12-65sys/dev/pci/if_em_hw.c
1.99+2-6sys/dev/pci/if_em_hw.h
1.382+2-3sys/dev/pci/if_em.c
+16-743 files

HardenedBSD/ports 1ac2439audio/mac Makefile distinfo

audio/mac: Update to 13.25

Changes: https://www.monkeysaudio.com/versionhistory.html
DeltaFile
+3-3audio/mac/distinfo
+1-1audio/mac/Makefile
+4-42 files

FreeBSD/ports 5209470audio/strawberry Makefile distinfo

audio/strawberry: Update to 1.2.27

https://github.com/strawberrymusicplayer/strawberry/releases/tag/1.2.27
DeltaFile
+3-3audio/strawberry/distinfo
+1-1audio/strawberry/Makefile
+4-42 files

FreeBSD/ports 1ac2439audio/mac Makefile distinfo

audio/mac: Update to 13.25

Changes: https://www.monkeysaudio.com/versionhistory.html
DeltaFile
+3-3audio/mac/distinfo
+1-1audio/mac/Makefile
+4-42 files

HardenedBSD/ports 5209470audio/strawberry Makefile distinfo

audio/strawberry: Update to 1.2.27

https://github.com/strawberrymusicplayer/strawberry/releases/tag/1.2.27
DeltaFile
+3-3audio/strawberry/distinfo
+1-1audio/strawberry/Makefile
+4-42 files

LLVM/project 668df40libc/src/__support common.h, libc/src/string/memory_utils/aarch64 inline_memcpy.h

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+21-21libc/src/string/memory_utils/x86_64/inline_memcpy.h
+16-12libc/src/string/memory_utils/arm/inline_memcpy.h
+10-7libc/src/string/memory_utils/generic/aligned_access.h
+10-1libc/src/__support/common.h
+5-3libc/src/string/memory_utils/aarch64/inline_memcpy.h
+3-4libc/src/string/memory_utils/generic/byte_per_byte.h
+65-485 files not shown
+83-5711 files

LLVM/project 6470314llvm/include/llvm/DWARFLinker AddressesMap.h, llvm/lib/DWARFLinker/Classic DWARFLinker.cpp

[DWARFLinker] Constrain a function's high_pc to its own symbol

Mach-O objects built with .subsections_via_symbols make every symbol an
independently placeable atom, and the linker packs atoms without
preserving the spacing they had in the object file.

I have an example where the compiler describes such a subprogram as
extending past its own atom. While it's debatable whether that's a good
idea, it's not invalid in the object file. However, once linked, it is
invalid.

We can make dsymutil resilient against this by looking at the size of
the symbol in the debug map and adjusting the end_pc. I'm doing so
conservatively so that only a collision is repaired. Already
overlapping/invalid ranges remain untouched.

rdar://184768778
DeltaFile
+76-0llvm/test/tools/dsymutil/Inputs/subprogram-high-pc-past-symbol.s
+72-0llvm/test/tools/dsymutil/Inputs/subprogram-high-pc-past-symbol-dwarf2.s
+57-0llvm/test/tools/dsymutil/subprogram-high-pc-past-symbol.test
+33-8llvm/include/llvm/DWARFLinker/AddressesMap.h
+25-6llvm/tools/dsymutil/DwarfLinkerForBinary.h
+21-2llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
+284-162 files not shown
+309-208 files

LLVM/project bcfd83flldb/source/Core DynamicLoader.cpp, lldb/source/Plugins/ObjectFile/Mach-O ObjectFileMachO.cpp

Address Jason's feedback
DeltaFile
+6-4lldb/source/Core/DynamicLoader.cpp
+3-2lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+9-62 files

LLVM/project 9c90656lldb/include/lldb/Symbol SymbolLocator.h, lldb/source/Core DynamicLoader.cpp

[lldb] Search for a corefile's images before loading any of them

A userland or kernel corefile can list hundreds of images, and searching for
one can shell out to a symbol server or fetch over the network. Searching for
them one at a time is where loading such a corefile spends its time.

Add a batch form of SymbolLocator::Locate that runs the searches on the
debugger's thread pool, gated on target.parallel-module-load. Results come
back in the order the requests were given, since that order decides the
Target's module order. Only the results are ordered, and anything a search
reports to the user arrives in whatever order the searches finish in.

Only the plugin searches run concurrently, so a platform hook does not have to
be thread safe to take part, and reading a binary's UUID out of memory stays
on the calling thread.

Setting up a platform binary can replace the Target's platform and dynamic
loader, and now happens for every image before any of them is searched for, so
the platform a corefile asks for is the one all of its images are searched

    [4 lines not shown]
DeltaFile
+141-4lldb/unittests/Symbol/SymbolLocatorTest.cpp
+78-63lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+76-11lldb/source/Symbol/SymbolLocator.cpp
+32-20lldb/source/Core/DynamicLoader.cpp
+25-0lldb/test/API/macosx/lc-note/multiple-binary-corefile/TestMultipleBinaryCorefile.py
+19-0lldb/include/lldb/Symbol/SymbolLocator.h
+371-986 files

LLVM/project 2317574llvm/include/llvm/ExecutionEngine/Orc/Shared OrcRTBridge.h, llvm/lib/ExecutionEngine/Orc/Shared OrcRTBridge.cpp

[ORC] Drop SimpleExecutorMemoryManagerSymbolNames struct (#216231)

Remove the SimpleExecutorMemoryManagerSymbolNames struct and the
orc_rt_SimpleNativeMemoryMapSPSSymbols global. The sps::MemMgr*CIName
constants in GenericMemoryManagerProxySpecs.h are now the single source
of truth for the SimpleNativeMemoryMap controller-interface names, used
by both the controller-side proxies and the executor-side
SimpleExecutorMemoryManager bootstrap registration (as
OrcRTBootstrap.cpp already does for the memory-access wrappers).

No functional change: the name strings are identical to those previously
held in orc_rt_SimpleNativeMemoryMapSPSSymbols.
DeltaFile
+0-15llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
+8-6llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp
+7-6llvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp
+0-9llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
+15-364 files

FreeBSD/ports 39cacf2devel/libgit2 Makefile distinfo

devel/libgit2: update to 1.9.7

Changes:        https://github.com/libgit2/libgit2/releases
(cherry picked from commit 265edfbeec88c7f67d81559b06fb1d51cfd63cdb)
DeltaFile
+3-3devel/libgit2/distinfo
+1-1devel/libgit2/Makefile
+4-42 files

HardenedBSD/ports 265edfbdevel/libgit2 Makefile distinfo

devel/libgit2: update to 1.9.7

Changes:        https://github.com/libgit2/libgit2/releases
DeltaFile
+3-3devel/libgit2/distinfo
+1-1devel/libgit2/Makefile
+4-42 files

FreeBSD/ports 265edfbdevel/libgit2 Makefile distinfo

devel/libgit2: update to 1.9.7

Changes:        https://github.com/libgit2/libgit2/releases
DeltaFile
+3-3devel/libgit2/distinfo
+1-1devel/libgit2/Makefile
+4-42 files

LLVM/project 4054122clang/docs/analyzer checkers.md, clang/docs/analyzer/developer-docs InitializerLists.md

[docs][clang] Finish MyST migration for analyzer docs
DeltaFile
+210-198clang/docs/analyzer/user-docs/Annotations.md
+32-33clang/docs/analyzer/developer-docs/InitializerLists.md
+21-22clang/docs/analyzer/user-docs/CommandLineUsage.md
+15-16clang/docs/analyzer/user-docs/CrossTranslationUnit.md
+12-13clang/docs/analyzer/checkers.md
+5-6clang/docs/analyzer/user-docs/UsingWithXCode.md
+295-2889 files not shown
+311-31315 files

LLVM/project 885e914llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/AMDGPU/GlobalISel legalize-load-private.mir legalize-load-local.mir

Merge branch 'main' into users/schrodingerzhu/libc-use-tlsf-freestore
DeltaFile
+10,726-10,582llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-global.mir
+13,767-6,856llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-sve-instructions.s
+9,385-9,006llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+8,247-8,223llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-local.mir
+6,797-6,814llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-load-private.mir
+13,068-0llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-max-min-umax-umin.ll
+61,990-41,48118,054 files not shown
+1,136,473-690,03718,060 files