LLVM/project bd14bd7libc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath] Support relative paths
DeltaFile
+84-3libc/test/src/stdlib/realpath_test.cpp
+16-1libc/src/stdlib/linux/realpath.cpp
+2-0libc/test/src/stdlib/CMakeLists.txt
+1-0libc/src/stdlib/linux/CMakeLists.txt
+103-44 files

LLVM/project 44a42e6clang-tools-extra/clang-tidy/misc RedundantExpressionCheck.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Fix false positive in misc-redundant-expression with type aliases (#198085)

The `misc-redundant-expression` check previously flagged expressions as
redundant if their underlying `DeclRefExpr` pointed to the same
declaration. This caused false positives when comparing identical values
accessed through distinct type aliases.

Following Clang's diagnostic `aka` logic, this patch uses the AST
Printer to stringify and compare the `NestedNameSpecifier` and
`TemplateArguments`. This safely preserves sugared types while natively
normalizing all whitespaces and newlines, ensuring robustness against
multiline formatting changes.

Fixes #145415
DeltaFile
+46-0clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
+39-2clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
+7-2clang-tools-extra/docs/ReleaseNotes.rst
+92-43 files

LLVM/project a70234bflang/lib/Lower CallInterface.cpp, flang/lib/Optimizer/Transforms FunctionAttr.cpp

[flang] Propagate INTENT(IN) dummy arguments as readonly (#207732)

Mark eligible `INTENT(IN)` dummy data objects with a `fir.read_only`
argument attribute during lowering, and teach `FunctionAttr` to
translate the marker to LLVM `readonly` for reference arguments when
optimizing for speed.

LLVM FunctionAttrs can infer `readonly` later in the pipeline, but this
happens too late for IPSCCP function specialization.
`FunctionSpecializer::promoteConstantStackValues` requires
`onlyReadsMemory()` before promoting constant by-reference scalar
arguments. Providing `readonly` satisfies this check and allows these
arguments to be promoted, enabling function specialization, including in
non-LTO builds.

For direct-data arguments, restrict propagation to by-reference
non-character intrinsic scalars. Ordinary arrays and derived-type
arguments are excluded because compiler-generated copy-out may write
back through a forwarded dummy argument. LLVM `readonly` does not permit

    [30 lines not shown]
DeltaFile
+175-0flang/test/Lower/dummy-argument-readonly.f90
+90-0flang/test/Transforms/function-attrs-readonly.fir
+48-0flang/test/Driver/function-attr-readonly.f90
+43-1flang/lib/Lower/CallInterface.cpp
+25-10flang/lib/Optimizer/Transforms/FunctionAttr.cpp
+25-1flang/test/Lower/call-copy-in-out.f90
+406-1217 files not shown
+447-4123 files

LLVM/project a527c6forc-rt/lib/executor Logging.cpp

[orc-rt] Statically check logging category/level name array sizes. (#209372)

Add static_asserts to trigger compilation failure if the sizes of these
arrays don't match their respective enum/macro value ranges.
DeltaFile
+7-2orc-rt/lib/executor/Logging.cpp
+7-21 files

LLVM/project 13e5986libc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath] Support relative paths
DeltaFile
+81-3libc/test/src/stdlib/realpath_test.cpp
+16-1libc/src/stdlib/linux/realpath.cpp
+2-0libc/test/src/stdlib/CMakeLists.txt
+1-0libc/src/stdlib/linux/CMakeLists.txt
+100-44 files

LLVM/project c4edd8bllvm/include/llvm/Object IRSymtab.h, llvm/test/Object/X86 irsymtab-large-common.ll irsymtab.ll

[Object] Fix irsymtab CommonSize truncation past 4 GiB (#209085)

Fixes #208669

Issue :
With -flto, Fortran COMMON blocks larger than 4 GiB were silently
miscompiled. The linker reserved only the low 32 bits of the declared
size, so stores past that boundary could segfault with no diagnostic.

Root Cause :
storage::Uncommon::CommonSize in the LTO irsymtab was stored as 32-bit
(Word). Sizes above 2^32 bytes were truncated when the symtab was
written and read back at link time.

Fix :
Widen CommonSize to 64-bit and bump irsymtab format version to 4. Added
test to verify symtab records the full size.
DeltaFile
+26-0llvm/test/Object/X86/irsymtab-large-common.ll
+5-3llvm/include/llvm/Object/IRSymtab.h
+2-2llvm/test/Object/X86/irsymtab.ll
+33-53 files

FreeBSD/ports e16a62elang/gleam distinfo Makefile.crates, lang/gleam/files patch-Cargo.lock

lang/gleam: Update 1.16.0 => 1.17.0

Approved by:            dch@ (maintainer)
Approved by:            db@, yuri@ (Mentors, implicit)
Differential Revision:  https://reviews.freebsd.org/D58121
DeltaFile
+85-37lang/gleam/distinfo
+42-18lang/gleam/Makefile.crates
+2-2lang/gleam/files/patch-Cargo.lock
+1-2lang/gleam/Makefile
+1-1lang/gleam/pkg-descr
+131-605 files

LLVM/project f18e59acompiler-rt/lib/sanitizer_common sanitizer_dl.cpp sanitizer_dl.h, compiler-rt/lib/tsan/go buildgo.sh

Revert "[compiler-rt] [sanitizer_common] Fix SIGSEGV in ForEachMappedRegion for DSOs with custom image base" (#209371)

Reverts llvm/llvm-project#206299 due to buildbot breakage
(https://github.com/llvm/llvm-project/pull/206299#issuecomment-4964804971)
DeltaFile
+0-9compiler-rt/lib/sanitizer_common/sanitizer_dl.cpp
+0-4compiler-rt/lib/sanitizer_common/sanitizer_dl.h
+1-2compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
+0-3compiler-rt/lib/tsan/go/buildgo.sh
+0-2compiler-rt/lib/sanitizer_common/sanitizer_common_nolibc.cpp
+1-0compiler-rt/test/sanitizer_common/TestCases/Linux/dlopen_image_base.c
+2-206 files

FreeBSD/ports 8cb9b65graphics/frei0r distinfo version.mk

graphics/frei0r: Update to 3.2.3
DeltaFile
+3-3graphics/frei0r/distinfo
+1-1graphics/frei0r/version.mk
+4-42 files

LLVM/project 0b2ac29libc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp

[libc][realpath] Validate path components.

This PR updates `realpath` to validate paths and return `ENOTDIR` or `ENOENT` according to https://pubs.opengroup.org/onlinepubs/9699919799/functions/realpath.html.

This PR also bumps the memory limit in `HermeticTestUtils.cpp`. The realpath unit tests allocate quite a few strings. Since memory in hermetic tests is never free'd, the unit test quickly reaches the limit.
DeltaFile
+49-0libc/test/src/stdlib/realpath_test.cpp
+34-0libc/src/stdlib/linux/realpath.cpp
+5-0libc/src/stdlib/linux/CMakeLists.txt
+88-03 files

LLVM/project 0366b21libc/test/UnitTest HermeticTestUtils.cpp, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath][test] Create test files/directories

Follow-up PRs will add path validation etc to `realpath`, which will require paths to exist in the filesystem.
DeltaFile
+233-13libc/test/src/stdlib/realpath_test.cpp
+10-0libc/test/src/stdlib/CMakeLists.txt
+1-1libc/test/UnitTest/HermeticTestUtils.cpp
+244-143 files

LLVM/project a9927a9llvm/lib/Target/WebAssembly WebAssemblyCodeGenPassBuilder.cpp WebAssemblyReduceToAnyAllTrue.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+256-0llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
+125-104llvm/lib/Target/WebAssembly/WebAssemblyReduceToAnyAllTrue.cpp
+214-0llvm/lib/Target/WebAssembly/WebAssemblyCoalesceFeaturesAndStripAtomics.cpp
+23-188llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+108-99llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
+109-17llvm/lib/Target/WebAssembly/WebAssembly.h
+835-40812 files not shown
+1,116-50018 files

LLVM/project 7495d4ellvm/lib/Target/WebAssembly WebAssemblyCodeGenPassBuilder.cpp WebAssemblyReduceToAnyAllTrue.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+256-0llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
+125-104llvm/lib/Target/WebAssembly/WebAssemblyReduceToAnyAllTrue.cpp
+214-0llvm/lib/Target/WebAssembly/WebAssemblyCoalesceFeaturesAndStripAtomics.cpp
+108-99llvm/lib/Target/WebAssembly/WebAssemblyFixIrreducibleControlFlow.cpp
+20-185llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+99-15llvm/lib/Target/WebAssembly/WebAssembly.h
+822-40311 files not shown
+1,079-48817 files

LLVM/project cc926b0libc/test/UnitTest HermeticTestUtils.cpp, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath][test] Create test files/directories

Follow-up PRs will add path validation etc to `realpath`, which will require paths to exist in the filesystem.
DeltaFile
+233-13libc/test/src/stdlib/realpath_test.cpp
+10-0libc/test/src/stdlib/CMakeLists.txt
+1-1libc/test/UnitTest/HermeticTestUtils.cpp
+244-143 files

LLVM/project ca213c5libc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp

[libc][realpath] Validate path components.

This PR updates `realpath` to validate paths and return `ENOTDIR` or `ENOENT` according to https://pubs.opengroup.org/onlinepubs/9699919799/functions/realpath.html.

This PR also bumps the memory limit in `HermeticTestUtils.cpp`. The realpath unit tests allocate quite a few strings. Since memory in hermetic tests is never free'd, the unit test quickly reaches the limit.
DeltaFile
+49-0libc/test/src/stdlib/realpath_test.cpp
+34-0libc/src/stdlib/linux/realpath.cpp
+5-0libc/src/stdlib/linux/CMakeLists.txt
+88-03 files

LLVM/project 910c1ealibc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath] Support relative paths
DeltaFile
+87-3libc/test/src/stdlib/realpath_test.cpp
+16-1libc/src/stdlib/linux/realpath.cpp
+2-0libc/test/src/stdlib/CMakeLists.txt
+1-0libc/src/stdlib/linux/CMakeLists.txt
+106-44 files

LLVM/project 67f5b53lld/test/ELF retain-symbols-file.s

[ELF,test] Improve retain-symbols-file.s (#209366)
DeltaFile
+61-41lld/test/ELF/retain-symbols-file.s
+61-411 files

FreeBSD/ports 7409120multimedia/qt6-multimedia pkg-plist

multimedia/qt6-multimedia: Mask X11-only headers

When the Qt stack is built with X11 disabled globally, certain private
headers should not be included in the final pkg-plist.

This does not affect the default settings, so not bumping PORTREVISON.

Reported by:    angry_vincent on #freebsd-desktop
MFH:            2026Q3

(cherry picked from commit 7ae4bbc02b5b96936d4bef4bb2561d38b704def3)
DeltaFile
+2-2multimedia/qt6-multimedia/pkg-plist
+2-21 files

FreeBSD/ports 4d7c13dfinance/ktoblzcheck-data Makefile distinfo, finance/ktoblzcheck-data/files ktoblzcheck-data-update.py

finance/ktoblzcheck-data: Update bank data

Bank data is valid from 2026-06-08 until 2026-09-06.

Integrate my data update script into the port to keep it under version
control, easier future updates of the port, and for full transparency.

MFH:            2026Q3

(cherry picked from commit 4439524120c6e2c84d3d7394e000024624dd31a2)
DeltaFile
+226-0finance/ktoblzcheck-data/files/ktoblzcheck-data-update.py
+46-5finance/ktoblzcheck-data/Makefile
+3-3finance/ktoblzcheck-data/distinfo
+275-83 files

LLVM/project 81752bdlibc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath] Support relative paths
DeltaFile
+87-3libc/test/src/stdlib/realpath_test.cpp
+16-1libc/src/stdlib/linux/realpath.cpp
+2-0libc/test/src/stdlib/CMakeLists.txt
+1-0libc/src/stdlib/linux/CMakeLists.txt
+106-44 files

LLVM/project 7246ceclibc/src/stdlib/linux realpath.cpp CMakeLists.txt, libc/test/src/stdlib realpath_test.cpp

[libc][realpath] Validate path components.

This PR updates `realpath` to validate paths and return `ENOTDIR` or `ENOENT` according to https://pubs.opengroup.org/onlinepubs/9699919799/functions/realpath.html.

This PR also bumps the memory limit in `HermeticTestUtils.cpp`. The realpath unit tests allocate quite a few strings. Since memory in hermetic tests is never free'd, the unit test quickly reaches the limit.
DeltaFile
+49-0libc/test/src/stdlib/realpath_test.cpp
+34-0libc/src/stdlib/linux/realpath.cpp
+5-0libc/src/stdlib/linux/CMakeLists.txt
+88-03 files

LLVM/project 8b852dalibc/test/UnitTest HermeticTestUtils.cpp, libc/test/src/stdlib realpath_test.cpp CMakeLists.txt

[libc][realpath][test] Create test files/directories

Follow-up PRs will add path validation etc to `realpath`, which will require paths to exist in the filesystem.
DeltaFile
+229-13libc/test/src/stdlib/realpath_test.cpp
+11-2libc/test/src/stdlib/CMakeLists.txt
+1-1libc/test/UnitTest/HermeticTestUtils.cpp
+241-163 files

LLVM/project b959f78llvm/utils/lit/lit/builtin_commands cat.py

Add text file support for z/OS back in (#209259)

Support for auto conversion of text files was added to cat.py in
https://github.com/llvm/llvm-project/pull/90128. That was accidently
removed in https://github.com/llvm/llvm-project/pull/204711 while
removing some old win32 code. This adds the z/OS support back in.
DeltaFile
+23-8llvm/utils/lit/lit/builtin_commands/cat.py
+23-81 files

LLVM/project b15f932flang/test/Evaluate fold-kind-logical.f90 fold-kind-zero-size.f90, flang/test/Lower/HLFIR array-ctor-character-kind.f90

[flang] Add kind-preservation regression tests (#208760)

These tests pin currently-correct behaviors where the KIND type
parameter of a result must be preserved by constant folding, semantics,
and lowering. They all pass at head; their purpose is to guard against
silent kind loss during future refactoring of the Evaluate library's
type-parameterized machinery (see the discussion on PR #206907, where an
experimental rewrite passed check-flang while dropping kinds in several
places).

Folded LOGICAL operations: `.NOT./.AND./.OR./.EQV./.NEQV.` keep their
operand kind; ANY/ALL/PARITY and logical DOT_PRODUCT results have the
MASK/argument kind (F2023 16.9.14/16.9.16/16.9.148), including for empty
masks where there is no element value to take a kind from; MERGE and
TRANSFER keep the TSOURCE/MOLD kind; STORAGE_SIZE of folded
non-default-kind logicals folds to the right value; the default BOUNDARY
fill element of a folded EOSHIFT has the array's kind; relational
results are default logical regardless of operand kinds; and generic
resolution over LOGICAL kinds is unchanged by folding

    [18 lines not shown]
DeltaFile
+43-0flang/test/Evaluate/fold-kind-logical.f90
+32-0flang/test/Lower/HLFIR/array-ctor-character-kind.f90
+29-0flang/test/Semantics/modfile84.F90
+28-0flang/test/Evaluate/fold-kind-zero-size.f90
+14-0flang/test/Evaluate/fold-kind-substring.f90
+13-0flang/test/Semantics/substring-literal-kind.f90
+159-01 files not shown
+172-07 files

LLVM/project 368d765libunwind/test .clang-format

[libunwind][test] Add .clang-format

Borrow from `libcxx/test/.clang-format` to avoid `clang-format`
suggestions that are incompatible with `FileCheck`.
DeltaFile
+4-0libunwind/test/.clang-format
+4-01 files

FreeBSD/ports 4439524finance/ktoblzcheck-data Makefile distinfo, finance/ktoblzcheck-data/files ktoblzcheck-data-update.py

finance/ktoblzcheck-data: Update bank data

Bank data is valid from 2026-06-08 until 2026-09-06.

Integrate my data update script into the port to keep it under version
control, easier future updates of the port, and for full transparency.

MFH:            2026Q2
DeltaFile
+226-0finance/ktoblzcheck-data/files/ktoblzcheck-data-update.py
+46-5finance/ktoblzcheck-data/Makefile
+3-3finance/ktoblzcheck-data/distinfo
+275-83 files

LLVM/project 38cf724libcxx/utils/libcxx/test format.py

Apply diff from `darker`
DeltaFile
+4-1libcxx/utils/libcxx/test/format.py
+4-11 files

LLVM/project 795a5a9flang/lib/Semantics resolve-names.cpp, flang/test/Lower/CUDA cuda-implicit-managed-alloc.cuf

[flang][cuda] Implicitly attribute allocatables/pointers under -gpu=unified (#209292)

When `-gpu=unified` is in effect, allocatables and pointers with no
explicit CUDA data attribute were left with no data attribute, and were allocated
as ordinary host memory. Under unified memory, such objects must be
reachable from the device; leaving them as plain host allocations makes device kernels
fault on systems that do not provide transparent host-memory access.

The existing code here already assigned `Managed` implicitly under
`-gpu=managed` (when CUDA Fortran is enabled). This extends that handling to
`-gpu=unified`: prefer the `Unified` attribute where it is legal (host subprogram, main
program, or derived-type component) so generic resolution still selects the unified
specific, and fall back to `Managed` elsewhere (module scope, device
subprograms). Both attributes route allocation through the same managed
allocator, so this keeps the allocation device-accessible while avoiding
spurious `ATTRIBUTES(UNIFIED)` legality errors.

The attribution stays gated on CUDA Fortran being enabled, preserving
the existing behavior for non-CUDA-Fortran translation units.
DeltaFile
+50-22flang/lib/Semantics/resolve-names.cpp
+54-0flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf
+104-222 files

LLVM/project 7bb5fc1libunwind/test aix_vapi_unw_resume.pass.cpp

Update test to split CHECK lines between debug and non-debug
DeltaFile
+14-12libunwind/test/aix_vapi_unw_resume.pass.cpp
+14-121 files

LLVM/project 514ce2clibunwind/test aix_vapi_unw_resume.pass.cpp CMakeLists.txt, libunwind/test/configs cmake-bridge.cfg.in

IBM Bob: Add LIT feature for assertions-build; use FileCheck conditionally
DeltaFile
+2-1libunwind/test/aix_vapi_unw_resume.pass.cpp
+2-0libunwind/test/configs/cmake-bridge.cfg.in
+1-0libunwind/test/CMakeLists.txt
+5-13 files