LLVM/project d770d1eclang/lib/AST/ByteCode Function.cpp Function.h

[clang][bytecode][NFC] Reorder Function members (#220001)

Order them by size to save a few bytes and clarify some comments.
DeltaFile
+9-7clang/lib/AST/ByteCode/Function.h
+2-2clang/lib/AST/ByteCode/Function.cpp
+11-92 files

LLVM/project e5bbcd0clang/lib/AST/ByteCode Context.cpp

[clang][bytecode][NFC] reserve() ParamDescriptors (#219981)

We know the size the vector is going to have in the success case, so
reserve that.
DeltaFile
+3-1clang/lib/AST/ByteCode/Context.cpp
+3-11 files

LLVM/project 3613554llvm/lib/Target/SPIRV SPIRVModuleAnalysis.cpp SPIRVUtils.h, llvm/test/CodeGen/SPIRV concat-vectors.ll

[SPIR-V] Always reject OpTypeVector with a non-standard width (#212685)

SPV_EXT_long_vector does not widen OpTypeVector past 4 components. Those
widths need OpTypeVectorIdEXT, so requesting the extension here was
wrong
DeltaFile
+11-11llvm/test/CodeGen/SPIRV/concat-vectors.ll
+10-7llvm/lib/Target/SPIRV/SPIRVUtils.h
+6-0llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
+27-183 files

FreeBSD/ports 4ad30abmisc/crush Makefile distinfo, misc/crush/files extra-patch-disable-command-blocking

misc/crush: Update to 0.92.0

Changelog: https://github.com/charmbracelet/crush/releases/tag/v0.92.0

Reported by:    GitHub (watch releases)
DeltaFile
+5-5misc/crush/distinfo
+2-2misc/crush/files/extra-patch-disable-command-blocking
+1-1misc/crush/Makefile
+8-83 files

LLVM/project 937e353llvm/docs ProgrammersManual.md, llvm/include/llvm/ADT FoldingSet.h

[ADT][TableGen] Add UniquingSet, a FoldingSet with typed keys (#219630)

FoldingSet serializes a key into a FoldingSetNodeID to look a node up
and rebuilds the stored node's profile to compare against it. Where a
key can be read out of a node, neither is necessary.

UniquingSet reuses FoldingSetBase's storage, growth, removal and insert
token and replaces only the key: the node's `getKey()` supplies it, the
key type's `operator==` compares it, and DenseMapInfo hashes it inline.
An Info parameter overrides the key type or its hash. The hash cached on
each node keeps growth and erasure from calling `getKey()`, which a
DenseSet cannot avoid.

Prefer `UniquingSet` where a key can be read out of a node in O(1) and
the lookup key is built beside `getKey()`; keep FoldingSet for keys that
are wide, polymorphic or assembled at many call sites, where one Profile
helper keeps both sides consistent. insert asserts that a node hashes as
its lookup did.


    [18 lines not shown]
DeltaFile
+173-0llvm/unittests/ADT/FoldingSet.cpp
+87-0llvm/include/llvm/ADT/FoldingSet.h
+10-73llvm/lib/TableGen/Record.cpp
+32-0llvm/docs/ProgrammersManual.md
+19-8llvm/include/llvm/TableGen/Record.h
+321-815 files

FreeBSD/ports 954e88anet/croc Makefile distinfo

net/croc: Update to 11.3.6
DeltaFile
+5-5net/croc/distinfo
+1-1net/croc/Makefile
+6-62 files

FreeBSD/ports 3076bfddevel/py-ty Makefile distinfo

devel/py-ty: Update to 0.0.77

Changelog: https://github.com/astral-sh/ty/blob/0.0.77/CHANGELOG.md

Reported by:    Repology
DeltaFile
+3-3devel/py-ty/distinfo
+1-1devel/py-ty/Makefile
+4-42 files

LLVM/project 4c176c4clang/docs StandardCPlusPlusModules.md

[docs] [C++20] [Modules] Mentioning tricks to use std module without touching the code (#220147)

This commit introduces two tricks to use std module without changing
user's code.
DeltaFile
+281-3clang/docs/StandardCPlusPlusModules.md
+281-31 files

LLVM/project 2bc9411llvm/lib/Analysis Loads.cpp, llvm/lib/Transforms/Vectorize VPlanConstruction.cpp LoopVectorizationLegality.cpp

Revert "[CSSPGO] Don't let pseudo probes block early-exit vectorization" (#220146)

Reverts llvm/llvm-project#219872

This was accidentally merged without approval
DeltaFile
+0-114llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe_legality.ll
+0-83llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe.ll
+2-38llvm/unittests/Analysis/LoadsTest.cpp
+0-10llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
+0-8llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
+0-4llvm/lib/Analysis/Loads.cpp
+2-2576 files

LLVM/project 3d7b99bclang/docs conf.py

[clang][docs] Suppress Sphinx highlighting failure warnings in conf.py (#220118)

Following the upgrade to Sphinx 8.2 (#219299), Pygments syntax
highlighting fallbacks (e.g. on custom C++ attribute syntaxes like
`[[clang::...]]`) emit `[misc.highlighting_failure]` warnings when
retrying in relaxed mode. Because sphinx-build runs with `-W`, these
warnings abort the documentation build.

Mirror the configuration in `llvm/docs/conf.py` by setting
`suppress_warnings = ["misc.highlighting_failure"]`.

AI tool usage: An AI assistant was used to help research and draft the
documentation updates.
DeltaFile
+5-0clang/docs/conf.py
+5-01 files

LLVM/project c3c6e28mlir/include/mlir/Dialect/Arith/Transforms Passes.td Passes.h, mlir/lib/Dialect/Arith/Transforms ExpandOps.cpp

[mlir][arith] Expand ops for F8E4M3FN and F8E5M2 type. (#216653)

Patch to add support for arith op (`arith.truncf`) to truncate `f32/f16`
type to `f8E4M3FN/f8E5M2`.
DeltaFile
+306-26mlir/lib/Dialect/Arith/Transforms/ExpandOps.cpp
+223-1mlir/test/Dialect/Arith/expand-ops.mlir
+184-2mlir/test/Integration/Dialect/Arith/CPU/test-arith-expand-truncf-extf.mlir
+7-0mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
+4-0mlir/include/mlir/Dialect/Arith/Transforms/Passes.td
+724-295 files

LLVM/project a36244alld/MachO ICF.cpp, lld/test/MachO icf-referent-offset.s

[lld][MachO] Compare referent offsets in ICF (#219960)

ICF::equalsConstant() compared only the addends of relocations that
reference symbols in ConcatInputSections, not the symbols' offsets
within their sections. The ICF hash merely sums the referent symbols'
offsets, so two code sections whose relocations reference the same input
section at swapped offsets have equal hashes, pass both the constant and
the variable comparison, and are folded together even though they
reference different data.

Compare the symbol value plus the addend instead, as the ELF backend
does.

This issue was found by LLM while investigating why identical LSDAs were
not being folded. It has not been observed in a real-world link, and the
regression test is synthetic.
DeltaFile
+60-0lld/test/MachO/icf-referent-offset.s
+1-1lld/MachO/ICF.cpp
+61-12 files

Linux/linux 786262b. MAINTAINERS, drivers/edac ie31200_edac.c edac_device_sysfs.c

Merge tag 'edac_updates_for_v7.3_rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/ras/ras

Pull forgotten EDAC updates from Borislav Petkov:
 "Somewhat belated (and forgotten :-\) EDAC updates lineup for v7.3:

   - Mark the mpc85xx and ThunderX EDAC drivers as orphaned due to lack
     of access to hardware

   - Remove the unused fake error injection interface from the EDAC
     debugfs code due to potential races between logging a fake and a
     real hw error

   - edac_mc_sysfs: Use sysfs_emit_at() for proper bounds checking

   - Remove Mark Gross from maintainer entries and move him to CREDITS

   - Load the AMD address translation library only on systems which can
     actually make use of it (have ECC memory) instead of on every AMD
     Zen system out there

    [40 lines not shown]
DeltaFile
+268-205drivers/edac/igen6_edac.c
+62-65drivers/edac/altera_edac.c
+1-64drivers/edac/debugfs.c
+14-9drivers/edac/edac_device_sysfs.c
+17-1drivers/edac/ie31200_edac.c
+7-9MAINTAINERS
+369-35314 files not shown
+388-39520 files

NetBSD/pkgsrc 347bvRHconverters/mpack Makefile

   mpack: Fix build issue with clang.

   From Kogule Ryo in PR pkg/60580
VersionDeltaFile
1.27+3-1converters/mpack/Makefile
+3-11 files

FreeBSD/ports 10c05a2www/py-fastapi-sso Makefile distinfo

www/py-fastapi-sso: Update to 0.22.0

Changelog: https://github.com/tomasvotava/fastapi-sso/releases/tag/0.22.0

Reported by:    Repology
DeltaFile
+3-3www/py-fastapi-sso/distinfo
+1-1www/py-fastapi-sso/Makefile
+4-42 files

LLVM/project 0622134llvm/lib/Analysis Loads.cpp, llvm/lib/Transforms/Vectorize VPlanConstruction.cpp LoopVectorizationLegality.cpp

Revert "[CSSPGO] Don't let pseudo probes block early-exit vectorization (#219…"

This reverts commit 2bf4ef05f69afae8a6377ac870b4e257fe0a2b0b.
DeltaFile
+0-114llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe_legality.ll
+0-83llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe.ll
+2-38llvm/unittests/Analysis/LoadsTest.cpp
+0-10llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
+0-8llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
+0-4llvm/lib/Analysis/Loads.cpp
+2-2576 files

OpenBSD/src 1l4ktNqsys/nfs nfs_subs.c

   only allow an NFS server to set file type on a new vnode

   Otherwise, a malicous server could aid a local user in avoiding access
   controls.

   This reverts nfs_subs.c rev 1.3.  Which was part of a commit to fix the
   use of automount with direct maps.

   reported by Andrew Griffiths
VersionDeltaFile
1.153+2-2sys/nfs/nfs_subs.c
+2-21 files

Linux/linux 68c9077drivers/edac al_mc_edac.c ie31200_edac.c, drivers/ras/amd/atl map.c

Merge remote-tracking branches 'ras/edac-misc', 'ras/edac-drivers' and 'ras/edac-amd-atl' into edac-updates

* ras/edac-misc:
  EDAC/thunderx: Orphan it
  EDAC/device_sysfs: Cleanup around edac_device_ctl_poll_msec_store()
  EDAC/device_sysfs: Use kstrtouint() for poll_msec to prevent truncation
  MAINTAINERS: Add Radhey Shyam Pandey as Xilinx EDAC reviewer
  MAINTAINERS: Remove Mark Gross from relevant entries
  EDAC/sysfs: Use sysfs_emit_at() in dimmdev_location_show()
  EDAC/mpc85xx: Orphan it

* ras/edac-drivers:
  EDAC/igen6: Add Intel Starfire SoCs support
  EDAC/igen6: Refactor address translation logic
  EDAC/igen6: Remove redundant resource configuration tables
  EDAC/igen6: Detect present memory controllers at runtime
  EDAC/igen6: Simplify compute die ID comments
  EDAC/igen6: Remove unnecessary XOR on the zero-valued interleave bit
  EDAC/igen6: Fix Raptor Lake-P logged error address

    [14 lines not shown]
DeltaFile
+268-205drivers/edac/igen6_edac.c
+62-65drivers/edac/altera_edac.c
+1-64drivers/edac/debugfs.c
+17-1drivers/edac/ie31200_edac.c
+2-10drivers/edac/al_mc_edac.c
+1-5drivers/ras/amd/atl/map.c
+351-3508 files not shown
+358-36714 files

LLVM/project 3a94285flang/lib/Lower Allocatable.cpp, flang/test/Lower/CUDA cuda-allocatable-component.cuf

[flang][cuda] Propagate CUDA attrs from parent variable to component deallocs (#220059)

This is a follow up to
[#206614](https://github.com/llvm/llvm-project/pull/206614), which made
`allocate(foo(i)%arr(...))` inherit `foo`'s CUDA memory attribute, but
did not add the equivalent inheritance for `deallocate(foo(i)%arr)`. The
deallocation still lowered to an inlined `fir.freemem`, so memory
obtained from a CUDA allocator was released with libc `free()`.

The allocate side already walked the `DataRef` chain for a
CUDA-attributed parent, but the helpers were private to
`AllocateStmtHelper` and unreachable from the deallocate path. This
patch hoists `findCUDAAttrInDataRef` to file scope, adds
`getCUDAAttrParentSymbol(AllocateObject)` beside it, and reduces the
existing member to a thin wrapper. The allocate behavior is unchanged.

`genDeallocate` gains an optional `cudaSymbol` used only for the CUDA
decisions (`isCudaSymbol` and the `genCudaDeallocate` call).
`genDeallocateStmt` supplies the parent symbol, which is non-null only

    [9 lines not shown]
DeltaFile
+69-42flang/lib/Lower/Allocatable.cpp
+53-2flang/test/Lower/CUDA/cuda-allocatable-component.cuf
+122-442 files

FreeBSD/src f89b0cecontrib/expat Changes, contrib/expat/lib xmlparse.c

contrib/expat: import expat 2.8.4

Changes: https://github.com/libexpat/libexpat/blob/R_2_8_4/expat/Changes

Security:       CVE-2026-66046
Security:       CVE-2026-76641
Security:       CVE-2026-76957
Security:       CVE-2026-76956
MFC after:      1 week
DeltaFile
+189-64contrib/expat/lib/xmlparse.c
+79-0contrib/expat/tests/basic_tests.c
+65-0contrib/expat/Changes
+57-1contrib/expat/tests/misc_tests.c
+3-3lib/libexpat/expat_config.h
+2-2lib/libexpat/libbsdxml.3
+395-7010 files not shown
+408-7916 files

LLVM/project bf498b1llvm/lib/Target/WebAssembly WebAssemblyInstrSIMD.td, llvm/test/CodeGen/WebAssembly reg-stackify.ll

[WebAssembly] Mark SIMD min and max as commutable (#219812)

Vector add/mul and scalar floating-point min/max are already marked as
commutable. This extends the same property to floating-point vector
min/max, allowing better WebAssembly register stackification.

Should avoid any locals as per what's happening now
```
.local v128

call      red
local.set 0

call      green
local.get 0

f32x4.min
```
DeltaFile
+46-2llvm/test/CodeGen/WebAssembly/reg-stackify.ll
+2-0llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
+48-22 files

DragonFlyBSD/src e504c45bin/dd extern.h dd.1

dd(1): Sync with FreeBSD

New features:
- Added conv=fsync flag
- Added conv=fdatasync flag
- Added oflag=fsync and oflag=sync flags
- Added iflag=fullblock flag
- Added iflag=direct and oflag=direct flags that set O_DIRECT

Fixes:
- Fixed SIGINT handling.
DeltaFile
+76-43bin/dd/dd.c
+87-16bin/dd/args.c
+40-42bin/dd/dd.h
+55-6bin/dd/misc.c
+47-9bin/dd/dd.1
+7-10bin/dd/extern.h
+312-12618 files not shown
+324-15524 files

LLVM/project 33a4a48llvm/include/llvm/CodeGen SelectionDAGNodes.h, llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp

[SelectionDAG] Fix CSE keys that disagree with SDNode::Profile (#219911)

A getNode helper builds its lookup ID by hand; matching it later
rebuilds one from the node with AddNodeIDCustom.  Where the two disagree
the compare always fails and the node never CSEs.  Fix whichever side is
wrong: the labels, DEACTIVATION_SYMBOL, GET/SET_FPENV_MEM and
EXPERIMENTAL_VECTOR_HISTOGRAM have no case; getLifetimeNode keys on a
frame index operand 1 already carries, getStridedLoadVP on the result
type instead of the memory type, and getPseudoProbeNode drops the
attributes its case profiles.

Ask AtomicSDNode instead of an opcode list stale since ATOMIC_LOAD_FADD,
and add the two opcodes its own classof was missing.

AddNodeIDCustom now takes the opcode to profile under, so MorphNodeTo's
pre-morph lookup keys on what the morph produces.  Machine opcodes
profile nothing: the morph overlays MachineSDNode's memory references on
the fields the MemSDNode checks read.


    [2 lines not shown]
DeltaFile
+41-38llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+9-20llvm/unittests/CodeGen/SelectionDAGCSETest.cpp
+9-0llvm/include/llvm/CodeGen/SelectionDAGNodes.h
+1-2llvm/test/CodeGen/PowerPC/merge_stores_dereferenceable.ll
+60-604 files

LLVM/project 8ad72c6clang/lib/Sema HLSLExternalSemaSource.cpp

[NFC][HLSL] Refactor texture type declaration (#219561)

Fixes https://github.com/llvm/llvm-project/issues/219542

Refactors texture type declaration in `HLSLExternalSemaSource.cpp` so
that new
texture types can more easily be added without adding a bunch of new
helper
functions.

This is accomplished with the introduction of a new `TextureTypeInfo`
struct
to record the properties of each texture type, as well as its
capabilities
indicated by the `TexCap` bitmask enum.

Adding a new texture type to be declared should, in most cases, only
require
appending a new entry to the static `TextureTypes` array of

    [12 lines not shown]
DeltaFile
+143-207clang/lib/Sema/HLSLExternalSemaSource.cpp
+143-2071 files

LLVM/project 2bf4ef0llvm/lib/Analysis Loads.cpp, llvm/lib/Transforms/Vectorize VPlanConstruction.cpp LoopVectorizationLegality.cpp

[CSSPGO] Don't let pseudo probes block early-exit vectorization (#219872)

llvm.pseudoprobe is modeled as accessing inaccessible memory, so
mayReadFromMemory()/mayWriteToMemory() return true even though the
intrinsic
carries no real memory dependence. An otherwise vectorizable early-exit
loop
is therefore rejected as soon as it contains a pseudo probe.

This patch skips pseudo probes in isVectorizableEarlyExitLoop(),
isReadOnlyLoop() and
areAllLoadsDereferenceable() so the three checks agree and such loops
vectorize as they would without pseudo probe instrumentation.

Discussion:
https://discourse.llvm.org/t/csspgo-unblocking-pseudo-probe-safe-optimizations/90946
DeltaFile
+114-0llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe_legality.ll
+83-0llvm/test/Transforms/LoopVectorize/early_exit_pseudo_probe.ll
+38-2llvm/unittests/Analysis/LoadsTest.cpp
+10-0llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
+8-0llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
+4-0llvm/lib/Analysis/Loads.cpp
+257-26 files

LLVM/project f34700cllvm/include/llvm/ExecutionEngine/Orc LookupAndApply.h RecordProxy.h, llvm/unittests/ExecutionEngine/Orc LookupAndApplyTest.cpp ProxyTest.cpp

[ORC] Add SymbolStringPtr overloads for recordAddr/recordProxy (#220125)

Allow clients to pass symbol names as SymbolStringPtrs (in addition to
StringRefs).
DeltaFile
+61-0llvm/unittests/ExecutionEngine/Orc/ProxyTest.cpp
+30-0llvm/include/llvm/ExecutionEngine/Orc/RecordProxy.h
+29-0llvm/unittests/ExecutionEngine/Orc/LookupAndApplyTest.cpp
+13-0llvm/include/llvm/ExecutionEngine/Orc/LookupAndApply.h
+133-04 files

LLVM/project 5b60fdellvm/test/CodeGen/AMDGPU amdgcn.bitcast.320bit.ll fptosi-sat-vector.ll

[AMDGPU] Allow combining uniform OR/AND to V_PERM (#220048)

Allow the OR/AND -> V_PERM DAG combine for values, even if they are
uniform.

Co-authored by Brendon Cahoon and Cursor
DeltaFile
+2,115-2,484llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+611-829llvm/test/CodeGen/AMDGPU/calling-conventions.ll
+567-723llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+276-366llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
+191-235llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
+190-214llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
+3,950-4,85123 files not shown
+4,959-5,97829 files

LLVM/project 01cc74dclang/lib/Driver/ToolChains CommonArgs.cpp, clang/test/Driver fsanitize-undefined-offload.c

[Clang] Honor -Xarch_gfx* when linking the UBSan offload runtime

Empty bound architecture misses per-GPU sanitizer flags, so inspect each
offload arch when deciding whether the host interceptor is required.
DeltaFile
+16-0clang/test/Driver/fsanitize-undefined-offload.c
+7-4clang/lib/Driver/ToolChains/CommonArgs.cpp
+23-42 files

LLVM/project e78d18fclang/lib/Driver/ToolChains CommonArgs.cpp, clang/test/Driver fsanitize-undefined-offload.c

Device only and -shared fix
DeltaFile
+26-0clang/test/Driver/fsanitize-undefined-offload.c
+15-9clang/lib/Driver/ToolChains/CommonArgs.cpp
+41-92 files

LLVM/project ac36319clang/lib/Driver/ToolChains UEFI.cpp Solaris.cpp, clang/test/Driver fsanitize-undefined-device-offload.c

[Clang] Enable UBSan for AMDGPU device offload

Summary:
This enables the device UBSan runtime for AMDGPU decides. Primarily this
required modifications to the `addSanitizerRuntime` interface so we can
query the compilation's offload status. Also need to forward it through
the linker wrapper interface. Works on all AMDGPU offload, slight hacks
around the other targets as they do not advertise sanitizer
runtimes properly.

This is linked in via a new `-u __ubsan_device_initialize` hook to pull
in the side library. This is standard behavior and keeps the core logic
mostly unchanged and re-used.
DeltaFile
+50-0clang/test/Driver/fsanitize-undefined-device-offload.c
+32-3clang/lib/Driver/ToolChains/CommonArgs.cpp
+2-2clang/lib/Driver/ToolChains/Hexagon.cpp
+2-1clang/lib/Driver/ToolChains/Clang.cpp
+1-1clang/lib/Driver/ToolChains/UEFI.cpp
+1-1clang/lib/Driver/ToolChains/Solaris.cpp
+88-813 files not shown
+98-1819 files