LLVM/project cb4e752compiler-rt/test lit.common.cfg.py, llvm/utils/lit/lit util.py LitConfig.py

[reland] [lit] [compiler-rt] Add llvm-lit global command cache to speed up test config (#196152)

Re-lands #195888

Fixes two issues:
- `date -Ins` is not available on older macOS versions (I think
pre-15.4). This caused the new `test_cache` test to fail. Switched to
just using `date` + a sleep (with a comment explaining why). Even if the
sleep is too long/short, the test should still pass.
- `functools.cache` is not available on Python 3.8. I've moved the
`_memoize` helper out of TestRunner.py into util.py, and switched to it
instead. I had to make a small change to the memoize helper to support
arbitrary args/kwargs.
DeltaFile
+93-0llvm/utils/lit/tests/unit/Util.py
+15-34compiler-rt/test/lit.common.cfg.py
+38-1llvm/utils/lit/lit/util.py
+16-0llvm/utils/lit/lit/LitConfig.py
+1-13llvm/utils/lit/lit/TestRunner.py
+163-485 files

LLVM/project c5bc0a2clang/test/Analysis/Scalable/ssaf-analyzer analyzer.test, clang/test/Analysis/Scalable/ssaf-analyzer/Inputs lu.json

[clang][ssaf] Add `clang-ssaf-analyzer` (#196124)

This patch introduces `clang-ssaf-analyzer`, a new SSAF tool that runs whole-program analyses over an `LUSummary` and writes the resulting `WPASuite` to an output file.
DeltaFile
+141-0clang/test/Analysis/Scalable/ssaf-analyzer/analyzer.test
+134-0clang/tools/clang-ssaf-analyzer/SSAFAnalyzer.cpp
+126-0clang/test/Analysis/Scalable/ssaf-analyzer/Inputs/lu.json
+90-0clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/all.json
+81-0clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/both.json
+70-0clang/test/Analysis/Scalable/ssaf-analyzer/Outputs/pairs.json
+642-016 files not shown
+935-022 files

LLVM/project 625cf40clang/docs ReleaseNotes.rst, clang/lib/AST MicrosoftMangle.cpp

[Clang] Produce deterministic hash for anonymous namespaces. (#194542)

This change adds a path substitution for the main module file during
anonymous namespace hash generation using the prefix map specified by
-fmacro-prefix-map option. That ensures deterministic symbol mangling
for reproducible builds.

---------

Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
DeltaFile
+12-0clang/test/AST/anon-ns-determ-hash.cpp
+7-1clang/lib/AST/MicrosoftMangle.cpp
+2-0clang/docs/ReleaseNotes.rst
+21-13 files

FreeNAS/freenas b4d9cfdsrc/middlewared/middlewared/plugins/system_dataset mount.py, tests/api2 test_system_dataset.py

Fix
DeltaFile
+476-0tests/unit/test_system_dataset.py
+30-63src/middlewared/middlewared/plugins/system_dataset/mount.py
+88-2tests/api2/test_system_dataset.py
+594-653 files

LLVM/project 7cac133llvm/lib/Target/AMDGPU/AsmParser AMDGPUAsmParser.cpp, llvm/test/MC/AMDGPU gfx1250_asm_vop3_err.s

[AMDGPU] Validate forced lit64() on VOP3 instructions

Lit64 cannot be used with VOP3* but we did not validate it
in case it can be encoded as lit32, but forced with the
operand modifier.
DeltaFile
+25-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+5-0llvm/test/MC/AMDGPU/gfx1250_asm_vop3_err.s
+30-82 files

FreeBSD/src 5df7daesys/kern subr_kobj.c

kobj: Use M_WAITOK in kobj_init

Blocking allocation is safe in all of the current callers of kobj_init
(most of them do a M_WAITOK malloc of the structure passed as the
first argument to kobj_init just before calling it).  kobj_init
doesn't return an error code but instead panics if the nested malloc
in kobj_class_compile1 fails, so using M_WAITOK here is more robust.

Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D56625
DeltaFile
+1-1sys/kern/subr_kobj.c
+1-11 files

FreeBSD/src 5a6e595sys/kern subr_kobj.c

kobj: Assert class passed to kobj_init_static is compiled

Inspired by discussion in
https://github.com/freebsd/freebsd-src/pull/2016

Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D56624
DeltaFile
+2-0sys/kern/subr_kobj.c
+2-01 files

FreeBSD/src bf636acsys/dev/mlx5/mlx5_en mlx5_en_hw_tls_rx.c

mlx5en: destroy TIR before DEK during TLS RX teardown

Reorder the TLS RX teardown sequence so the TIR is destroyed before
the DEK.  DESTROY_TIR for a TLS-enabled TIR issues a TRA RX fence
that drains all in-flight packets from the crypto pipeline.  If the
DEK is destroyed first, packets still in flight hit a TPT encryption
error (vendor syndrome 0x55) because the key they reference is
already gone.

Reviewed by:    kib
Sponsored by:   Nvidia networking
MFC after:      1 week
DeltaFile
+11-4sys/dev/mlx5/mlx5_en/mlx5_en_hw_tls_rx.c
+11-41 files

LLVM/project 1decc0ellvm/include/llvm/CodeGen MachineInstrBundle.h DwarfEHPrepare.h

[PassManager] Mark some codegen passes as required (#196172)

These are required for lowering but were accidentally added as optional.
DeltaFile
+4-4llvm/include/llvm/CodeGen/MachineInstrBundle.h
+1-1llvm/include/llvm/CodeGen/DwarfEHPrepare.h
+1-1llvm/include/llvm/CodeGen/GCMetadata.h
+1-1llvm/include/llvm/CodeGen/IndirectBrExpand.h
+1-1llvm/include/llvm/CodeGen/InlineAsmPrepare.h
+1-1llvm/include/llvm/CodeGen/JMCInstrumenter.h
+9-916 files not shown
+25-2522 files

LLVM/project c66d6a5llvm/include/llvm/Analysis Lint.h

[Lint] Mark pass as required (#196173)

Since it's a verification pass.
DeltaFile
+1-1llvm/include/llvm/Analysis/Lint.h
+1-11 files

LLVM/project f72a45aflang/lib/Optimizer/Transforms FIRToMemRef.cpp, flang/test/Transforms/FIRToMemRef coordinate-of.mlir

[flang][FIRToMemRef] lower `fir.coordinate_of` on static-extent arrays to indexed memref (#195404)

`fir.coordinate_of` on static array components (e.g. A%v(i)) was falling
back to a rank-0 scalar memref, losing index information and blocking
saffine parallelization. Lower these to a properly-shaped memref<dims x
T> with explicit indices. Dynamic arrays and struct-element arrays keep
the existing scalar fallback.
DeltaFile
+108-0flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
+97-0flang/test/Transforms/FIRToMemRef/coordinate-of.mlir
+205-02 files

LLVM/project ebb9a79clang/include/clang/DependencyScanning InProcessModuleCache.h, clang/lib/DependencyScanning InProcessModuleCache.cpp

[clang][modules] Fix UAF in `InProcessModuleCache` (#196117)

Writing to the module cache would invalidate the read buffer. If the
timing works out just right, this is a use-after-free bug. This PR
prevents that situation by using two buffers in the module cache entry,
and adds a unit test that would previously fail under address sanitizer.
DeltaFile
+71-0clang/unittests/DependencyScanning/InProcessModuleCacheTest.cpp
+15-10clang/lib/DependencyScanning/InProcessModuleCache.cpp
+4-2clang/include/clang/DependencyScanning/InProcessModuleCache.h
+1-0clang/unittests/DependencyScanning/CMakeLists.txt
+91-124 files

LLVM/project 4bae755openmp/device/include DeviceUtils.h, openmp/device/src Reduction.cpp Workshare.cpp

[OpenMP][NFC] Simplify rounding operations (#196155)

Summary:
There were a lot of these cases that did rounding up / down. Make
helpers for them and simplify.
DeltaFile
+5-7openmp/device/src/Reduction.cpp
+11-1openmp/device/include/DeviceUtils.h
+4-5openmp/device/src/Workshare.cpp
+4-4openmp/device/src/Mapping.cpp
+1-1openmp/device/src/Parallelism.cpp
+25-185 files

FreeNAS/freenas 1e36d7atests/protocols pynfs_proto.py, tests/sharing_protocols/nfs test_nfs_snapdir.py

Fix
DeltaFile
+8-2tests/protocols/pynfs_proto.py
+5-5tests/sharing_protocols/nfs/test_nfs_snapdir.py
+13-72 files

LLVM/project e85982eclang/lib/CIR/FrontendAction CIRGenAction.cpp, clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

[CIR][OpenMP][MLIR] Allow passing of vfs::FileSystem through ModuleTranslation (#195451)

This change optionally allows passing a pointer to a vfs::FileSystem
through ModuleTranslation down to the OpenMPToLLVMTranslation. This will
prevent IO sandbox errors when enabling OpenMP target regions in CIR,
since accessing the file system must go through the proper API.

Assisted-by: Cursor / claude-4.6-opus-high
DeltaFile
+22-25mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+14-3mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
+13-4mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
+8-1mlir/include/mlir/Target/LLVMIR/Export.h
+5-3clang/lib/CIR/FrontendAction/CIRGenAction.cpp
+5-3clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+67-391 files not shown
+72-407 files

LLVM/project 3fe311flldb/include/lldb/Target Policy.h, lldb/source/Target Policy.cpp CMakeLists.txt

[lldb] Add Policy infrastructure (#195762)

Add a generic thread-local policy stack and a Policy struct that
describes what view of the process a thread should see (private reality
vs public illusion) and what operations it is allowed to perform.

This is the infrastructure for replacing ad-hoc host thread identity
checks (CurrentThreadIsPrivateStateThread, IsOnThread, etc.) with a
unified, composable mechanism. No behavioral changes yet -- adoption
will follow in subsequent patches.

rdar://176223894

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
DeltaFile
+154-0lldb/unittests/Target/PolicyTest.cpp
+119-0lldb/include/lldb/Target/Policy.h
+33-0lldb/source/Target/Policy.cpp
+1-0lldb/source/Target/CMakeLists.txt
+1-0lldb/unittests/Target/CMakeLists.txt
+308-05 files

LLVM/project 983847bllvm/docs GettingInvolved.rst

Adding the Formal Semantics Working Group to regular syncs. (#196154)

Adding the Formal Semantics Working Group to regular syncs.
The meeting notes google document also includes the meeting link, meeting times (timezones) and link to RFC and discord channel.
DeltaFile
+4-0llvm/docs/GettingInvolved.rst
+4-01 files

NetBSD/pkgsrc T4FxZxbdoc CHANGES-2026

   doc: Updated editors/vim-share to 9.2.0449
VersionDeltaFile
1.2856+2-1doc/CHANGES-2026
+2-11 files

NetBSD/pkgsrc g7mINZceditors/vim-share distinfo version.mk, editors/vim-share/patches patch-popupwin.c patch-feature.h

   Update to version 9.2.449.

   Changes:
   - patch 9.2.0449: Make proto fails in non GTK builds
   - patch 9.2.0448: Vim9: dangling cmdline pointer after skip_expr_cctx()
   - patch 9.2.0447: cindent does not ignore comments
   - patch 9.2.0446: runtime(netrw): off-by-one bug in s:NetrwUnMarkFile()
   - patch 9.2.0445: win_fix_scroll() called before win_comp_pos() in command_height()
   - patch 9.2.0444: Cannot set 'path' option via modeline
   - patch 9.2.0443: GUI: cancelling save dialog overwrites or discards unnamed buffer
   - patch 9.2.0442: completion: i_CTRL-X_CTRL-V doesn't use dict from customlist
   - runtime(autopkgtest): update syntax script
   - Fix wrong comment in getchar.c
   - patch 9.2.0441: statusline: click handler not called on multi-line statusline
   - patch 9.2.0440: MS-Windows: cursor flicker during update_screen()
   - patch 9.2.0439: completion: info popup not removed in cmdline mode
   - patch 9.2.0438: tests: test_plugin_termdebug is flaky
   - runtime(doc): Tweak documentation style
   - Fix a few more typos

    [68 lines not shown]
VersionDeltaFile
1.232+7-7editors/vim-share/distinfo
1.4+5-5editors/vim-share/patches/patch-popupwin.c
1.9+2-2editors/vim-share/patches/patch-feature.h
1.4+2-2editors/vim-share/patches/patch-vim.h
1.168+2-2editors/vim-share/version.mk
1.88+2-0editors/vim-share/PLIST
+20-186 files

LLVM/project 418177fllvm/lib/Transforms/Utils LoopPeel.cpp LoopUtils.cpp, llvm/test/Transforms/LoopUnroll negative-trip-count.ll

[LoopPeel] prevent estimated trip count overflow before peel (#195610)

`if (*EstimatedTripCount + AlreadyPeeled <= MaxPeelCount)` case in
`LoopPeel` can have a possible overflow with the `EstimatedTripCount`
value, which causes a hang with `opt`. Added
`llvm::checkedAddUnsigned()` to prevent this, along with a new
regression from the IR reproducer of #173169.
DeltaFile
+39-0llvm/test/Transforms/LoopUnroll/negative-trip-count.ll
+4-1llvm/lib/Transforms/Utils/LoopPeel.cpp
+3-2llvm/lib/Transforms/Utils/LoopUtils.cpp
+46-33 files

LLVM/project c4091d1llvm/test/CodeGen/AArch64 bf16-v8-instructions.ll bf16-v4-instructions.ll

[AArch64][GlobalISel] Clean up and extend BF16 tests. NFC (#196175)

This attempts to fill in the gap between the different bf16 test files,
making
sure they all contain the same tests.
DeltaFile
+5,910-880llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
+3,306-504llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
+40-9llvm/test/CodeGen/AArch64/bf16-instructions.ll
+0-1llvm/test/CodeGen/AArch64/itofp-bf16.ll
+9,256-1,3944 files

LLVM/project b58136bllvm/test/CodeGen/AArch64 vqabs.ll vqneg.ll

[AArch64] Add tests for sqabs and sqneg patterns. NFC (#196156)
DeltaFile
+222-0llvm/test/CodeGen/AArch64/vqabs.ll
+171-0llvm/test/CodeGen/AArch64/vqneg.ll
+393-02 files

LLVM/project 58dc52bclang/lib/Serialization ASTReader.cpp, clang/test/Modules merge-target-features.cpp

[clang] correctly handle +/- features when matching modules (#195743)

By sorting and then comparing, we made +sse2 -sse2 equal to
-sse2 +sse2, where the former has sse2 disabled, and the latter
enabled. I verified this is actually the case by compiling the
following:

```
 #ifdef __SSE2__
  #error X
 #endif
```
DeltaFile
+67-0clang/test/Modules/merge-target-features.cpp
+26-10clang/lib/Serialization/ASTReader.cpp
+93-102 files

FreeBSD/src c316ec2libexec/nuageinit nuageinit

nuageinit: only parse user_data as yaml when necessary

This fixes a regression introduced in cae280931c9e which prevents
user_data as a shell script to be used

PR:             295062
Reported by:    Ross McKelvie <ross at exitzero.uk>
MFC After:      1 day
DeltaFile
+1-1libexec/nuageinit/nuageinit
+1-11 files

LLVM/project 2cc8fc8llvm/lib/Target/SPIRV SPIRVInstructionSelector.cpp SPIRVSymbolicOperands.td, llvm/test/CodeGen/SPIRV/transcoding atomic-load-store-volatile.ll atomic-load-store-unsupported.ll

[SPIRV] Support `Volatile` memory semantics operand in atomic load/store (#195978)

The Vulkan memory model supports the `Volatile` memory semantics being
used with atomic operations. This patch adds the support to the SPIR-V
backend.

When the memory model is OpenCL, the `Volatile` memory semantics is not
supported. In this case, we ignore it and emit a regular `OpAtomicLoad`
or `OpAtomicStore` instruction. It should be safe, because the atomic
operations aren't eliminated anyway.

Assisted-by: Claude Opus 4.6 <noreply at anthropic.com>
DeltaFile
+32-0llvm/test/CodeGen/SPIRV/transcoding/atomic-load-store-volatile.ll
+1-20llvm/test/CodeGen/SPIRV/transcoding/atomic-load-store-unsupported.ll
+4-11llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
+1-0llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
+38-314 files

FreeNAS/freenas 71f0089debian/debian control

remove netcat-openbsd dep
DeltaFile
+0-1debian/debian/control
+0-11 files

LLVM/project 17785e6llvm/lib/Target/AMDGPU/AsmParser AMDGPUAsmParser.cpp, llvm/test/MC/AMDGPU gfx1250_asm_vop3_err.s

[AMDGPU] Validate forced lit64() on VOP3 instructions

Lit64 cannot be used with VOP3* but we did not validate it
in case it can be encoded as lit32, but forced with the
operand modifier.
DeltaFile
+25-8llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
+5-0llvm/test/MC/AMDGPU/gfx1250_asm_vop3_err.s
+30-82 files

DragonFlyBSD/src 7e4f5e5sys/conf files, sys/dev/acpica acpi.c

feat: acpi: install Darwin _OSI on Apple hardware

Apple firmware checks _OSI("Darwin") during ACPI init and sets
OSYS=0x2710, making OSDW() return 1.  Many device methods gate
behind OSDW() for GPU visibility, Thunderbolt, and power management.

Add hw.acpi.apple_darwin_osi tunable (default 1) that installs the
Darwin interface and disables Windows vendor strings on Apple hardware,
matching Linux and FreeBSD behavior.

Register apple_fw in the kernel build system (sys/conf/files).

The apple_fw driver reads the tunable and falls back to a late fixup
(re-evaluate PINI or direct OSYS poke) when the early path missed,
while respecting the user's choice when the tunable is disabled.
DeltaFile
+68-2sys/dev/apple/fw/apple_fw.c
+34-0sys/dev/acpica/acpi.c
+3-0sys/conf/files
+105-23 files

LLVM/project 935f43bbolt/test/binary-analysis/AArch64 gs-pauth-tail-calls.s

gs-pauth-tail-calls.s: make check lines exhaustive; rename FPAC/NOFPAC
DeltaFile
+44-40bolt/test/binary-analysis/AArch64/gs-pauth-tail-calls.s
+44-401 files

LLVM/project 182e6c4bolt/docs BinaryAnalysis.md, bolt/include/bolt/Utils CommandLineOpts.h

[BOLT] Gadget scanner: add less strict version of tail call checker

During tail call, it may be worth making sure the link register is as
trusted as during a regular call, though it may require inserting
expensive checking code by the compiler.

On the other hand, with pac-ret hardening enabled, there should be no
reason not to protect tail-calling functions at least as well as those
exited via regular return instruction.

This commit splits tail call checker into two versions: the basic one
which is suitable to make sure regular `PAC*` + `AUT*` are emitted as
needed, and the strict one, that additionally ensures the authentication
(if any) succeeded.
DeltaFile
+90-87bolt/test/binary-analysis/AArch64/gs-pauth-tail-calls.s
+31-9bolt/docs/BinaryAnalysis.md
+22-16bolt/test/binary-analysis/AArch64/gs-pauth-scanners.s
+27-6bolt/lib/Passes/PAuthGadgetScanner.cpp
+15-8bolt/include/bolt/Utils/CommandLineOpts.h
+9-7bolt/test/binary-analysis/AArch64/cmdline-args.test
+194-1332 files not shown
+216-1428 files