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

[CIR][OpenMP] Add host op filtering pass to CIR pipeline (#209592)

This patch adds the host op filtering pass which prevents host code
being lowered when compiling for the target device.
DeltaFile
+109-0mlir/include/mlir/Dialect/OpenMP/OpenMPUtils.h
+0-104mlir/include/mlir/Dialect/OpenMP/OpenMPOffloadUtils.h
+35-0clang/test/CIR/CodeGenOpenMP/target-host-op-filtering.c
+7-4clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+7-2clang/tools/cir-opt/cir-opt.cpp
+5-4clang/lib/CIR/FrontendAction/CIRGenAction.cpp
+163-1146 files not shown
+175-12012 files

LLVM/project 3f0919ebolt/lib/Core Relocation.cpp, bolt/test/RISCV reloc-tls.s

[BOLT][RISCV] Support the TLS global-dynamic relocation (#209995)

This patch adds BOLT support for the RISC-V TLS global-dynamic
relocation `R_RISCV_TLS_GD_HI20`. Classifying it as both a **TLS
relocation** and a **GOT-style relocation** allows BOLT to preserve the
relocation, recover the actual GOT entry address from the linked
instructions, and symbolize the instruction pair.

The RISC-V TLS relocation test is extended to cover a global-dynamic
sequence and verify that BOLT reconstructs the `AUIPC`/`PCREL_LO12` pair
correctly.
DeltaFile
+23-1bolt/test/RISCV/reloc-tls.s
+2-0bolt/lib/Core/Relocation.cpp
+25-12 files

LLVM/project acb8fbellvm/lib/DWARFLinker/Parallel DependencyTracker.cpp DWARFLinkerCompileUnit.h, llvm/unittests/DWARFLinkerParallel DIEInfoPlacementTest.cpp CMakeLists.txt

[DWARFLinker] Fix placement lost-update crash in parallel marking (#211009)
DeltaFile
+104-0llvm/unittests/DWARFLinkerParallel/DIEInfoPlacementTest.cpp
+57-34llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
+30-0llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.h
+7-0llvm/unittests/DWARFLinkerParallel/CMakeLists.txt
+198-344 files

FreeBSD/src 2efe148sys/vm vm_init.c

exec: Avoid overflow when computing the size of the exec map

On a test system with 1024 cores the size of exec map exceeds 4GB, and
all of the operands in the size calculation are 32-bit integers.

Tested by:      Jim Huang Chen <jim.chen.1827 at gmail.com>
MFC after:      1 week
Sponsored by:   AMD (hardware)
DeltaFile
+1-1sys/vm/vm_init.c
+1-11 files

LLVM/project 3a2ea7flldb/source/Plugins/DynamicLoader/MacOSX-DYLD DynamicLoaderDarwin.cpp DynamicLoaderMacOSXDYLD.cpp

[lldb] Change DynamicLoaderDarwin::Segment::name type (#210797)

No need to be a ConstString, Mach-O segment names are always 16 bytes
long. Because this struct is shared for both segment_command and
segment_command_64, I opted to keep the definition instead of replacing
it with one of llvm's MachO structs.

I chose a 17-byte character array so that whatever goes into it can
always be treated as a null-terminated C string.
DeltaFile
+19-18lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
+7-5lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
+5-2lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
+31-253 files

OpenBSD/src n88lT5xregress/usr.bin/ssh cfgparse.sh

   Factor out all of the IPv6 addresses into variables.  This lets us skip them
   in Portable on platforms that don't support IPv6 all in one place, removing
   diffs from within the tests themselves and making syncs easier.
VersionDeltaFile
1.11+16-7regress/usr.bin/ssh/cfgparse.sh
+16-71 files

LLVM/project 6d91e20llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp, llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

[SBVec] Track claimed users across bundles
DeltaFile
+38-13llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+13-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+51-162 files

LLVM/project 888483dllvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.h, llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp

[SBVec] Refactor BottomUpVec pass for clarity and maintainability

- Corrected comments to clarify the direction of def-use and use-def chains.
- Changed the initialization of the SchedDirection variable to improve clarity.
- Updated documentation in vectorizeRec() to better describe the purpose of UserBndl.
- Removed outdated TODO comment regarding top-down vectorization scheduling.
DeltaFile
+5-4llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
+1-6llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+6-102 files

LLVM/project 342e31dllvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp, llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

3 element tests

- nits
DeltaFile
+130-5llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+0-4llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+130-92 files

LLVM/project 83ca453llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp, llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp

[SBVec] Add top-down vectorization to the unified Sandbox Vectorizer

Extend the Sandbox Vectorizer's `bottom-up-vec` pass so a single
implementation can vectorize in either direction, and add the top-down
strategy that walks def-use chains forward from a seed.

Direction selection
--------------------
The pass direction is chosen from the Region's auxiliary pass argument:
"bottom-up" (or empty, the default) and "top-down" map onto a
SchedDirection, and any other value is rejected with a fatal usage error.
The vectorizer always runs in the same direction as the scheduler.

Top-down traversal
------------------
Bottom-up starts from a seed slice (e.g. stores to consecutive addresses)
and recurses into operands. Top-down instead starts from a seed of
consecutive loads and recurses into *users*:


    [32 lines not shown]
DeltaFile
+441-0llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+229-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
+90-27llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+79-0llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+68-9llvm/test/Transforms/SandboxVectorizer/pack.ll
+68-0llvm/test/Transforms/SandboxVectorizer/external_uses.ll
+975-362 files not shown
+1,017-488 files

LLVM/project 9ab51a6llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

Add 3-way test to check for consecutive matching
DeltaFile
+45-0llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+45-01 files

LLVM/project 08efe1cllvm/lib/Transforms/Vectorize/SandboxVectorizer Scheduler.cpp, llvm/unittests/Transforms/Vectorize/SandboxVectorizer SchedulerTest.cpp

[SBVec] Refill ready list during topdown scheduling

Visit nodes which are ready according to the direction of scheduling.
DeltaFile
+28-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp
+9-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
+37-32 files

LLVM/project fe1fea5libc/src/__support/CPP string.h, libc/test/src/__support/CPP string_test.cpp

Handle self-move-assignment
DeltaFile
+7-0libc/test/src/__support/CPP/string_test.cpp
+3-0libc/src/__support/CPP/string.h
+10-02 files

LLVM/project 132a04dlibc/src/__support/CPP string.h CMakeLists.txt, libc/test/src/__support/CPP string_test.cpp

Remove now unused deps
DeltaFile
+18-17libc/src/__support/CPP/string.h
+14-5libc/test/src/__support/CPP/string_test.cpp
+1-4utils/bazel/llvm-project-overlay/libc/test/src/__support/CPP/BUILD.bazel
+0-2libc/src/__support/CPP/CMakeLists.txt
+0-2utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+33-305 files

LLVM/project 8b9cce3lldb/include/lldb/Expression ExpressionVariable.h, lldb/source/Expression ExpressionVariable.cpp Materializer.cpp

Make result variables obey their dynamic values in subsequent expressions

This is a resubmit of the original patch: 6344e3aa8106dfdfb30cac36c8ca02bc4c52ce24:

Make result variables obey their dynamic values in subsequent
expressions (#168611)

When I originally submitted this, it caused intermittent flakey failures
on systems I didn't have access to, and I didn't have time to sort them
out, so I reverted the patch. I'm resubmitting this so I can run the
bots on it a few rounds to see if I can reproduce and diagnose those
intermittent failures.

Here's the commit log from the original submission describing the
change:

When you run an expression and the result has a dynamic type that is
different from the expression's static result type, we print the result
variable using the dynamic type, but at present when you use the result

    [25 lines not shown]
DeltaFile
+174-0lldb/test/API/functionalities/expr-result-var/TestCPPExprResult.py
+72-6lldb/source/Expression/ExpressionVariable.cpp
+44-18lldb/include/lldb/Expression/ExpressionVariable.h
+55-0lldb/test/API/functionalities/expr-result-var/two-bases.cpp
+25-24lldb/source/Expression/Materializer.cpp
+9-5lldb/source/Expression/LLVMUserExpression.cpp
+379-534 files not shown
+384-5610 files

LLVM/project f61e12alibc/src/__support/CPP string.h CMakeLists.txt, libc/test/src/__support/CPP string_test.cpp

Remove now unused deps
DeltaFile
+18-17libc/src/__support/CPP/string.h
+14-5libc/test/src/__support/CPP/string_test.cpp
+1-4utils/bazel/llvm-project-overlay/libc/test/src/__support/CPP/BUILD.bazel
+0-2libc/src/__support/CPP/CMakeLists.txt
+0-2utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+33-305 files

FreeBSD/ports 0a717e9devel/got distinfo Makefile

devel/got: update to 0.127

User-visible changes:
- make 'got merge' accept tags as merge source argument
- do not raise errors when unversioned files are found during got rm -k
- add rm -s ? option for deleting unversioned files from the work tree
- add rm -I option for also deleting ignored unversioned files with rm -s ?
- make 'tog log' reload the work tree's base-commit info during Ctrl-L refresh
- fix failures due to trailing slashes in checkout -p path-prefix argument
DeltaFile
+3-3devel/got/distinfo
+1-1devel/got/Makefile
+4-42 files

FreeBSD/ports 3507275devel/rgbds Makefile distinfo, devel/rgbds/files patch-test_run-tests.sh

devel/rgbds: Update to 1.0.2

- Do not build tests by default
- Add external tests excluding nonfree, which omits the Pokémon and
  Legend of Zelda disassemblies

ChangeLog:      https://github.com/gbdev/rgbds/releases/tag/v1.0.2%2Bhotfix
MFH:            2026Q3
(cherry picked from commit 8b9cb36521d91d9cc47119d15108616a2b0d8dc2)
DeltaFile
+10-5devel/rgbds/Makefile
+0-14devel/rgbds/files/patch-test_run-tests.sh
+3-3devel/rgbds/distinfo
+13-223 files

FreeBSD/ports d1d589cemulators/sameboy Makefile

emulators/sameboy: Strip binaries

- Set build warnings to upstream defaults

MFH:            2026Q3
(cherry picked from commit 107d7d8ce3091cf5bfbd1a836c993e488f21831e)
DeltaFile
+3-2emulators/sameboy/Makefile
+3-21 files

LLVM/project b11881ellvm/test/CodeGen/AMDGPU mdt-preserving-crash.ll, llvm/test/CodeGen/PowerPC subreg-postra.ll p10-spill-crun.ll

[BranchFolding] Fold away subsequent identical branches

If we have a BB that has a single conditional branch instruction it that
is identical to the previous block's branch instruction, we can delete
the BB as it is redundant.

This doesn't directly impact performance as such instructions are never
executed, but this can help decrease code size which can help with
overall icache pressure (though likely only slightly). The biggest
impact would probably be fitting more instructions into a single cache
line. This is probably almost a no-op with PLO but definitely doesn't
hurt.

Fixes #202763.

Reviewers: RKSimon, arsenm, krzysz00, topperc, lei137

Pull Request: https://github.com/llvm/llvm-project/pull/203110
DeltaFile
+93-97llvm/test/CodeGen/PowerPC/subreg-postra.ll
+52-57llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
+44-48llvm/test/CodeGen/PowerPC/p10-spill-crun.ll
+23-29llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
+13-19llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
+13-17llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
+238-2676 files not shown
+277-29312 files

FreeBSD/ports 8b6d5c1sysutils/msktutil Makefile

sysutils/msktutil: fix breakage by using OPSYS

Despite passing poudriere testport and bulk and building and working,
this wasn't right. make -V PORTVERSION fails. It does not build.

Instead, thanks to jrm@, this hint from Mk/Uses/gssapi.mk:93 helps

It builds on 15.1 and 14.4, passses portlint, etc.

PR:             292735
(cherry picked from commit 7c4426d408ba4250bbdd96b1df2da98ff37fc151)
DeltaFile
+3-3sysutils/msktutil/Makefile
+3-31 files

FreeBSD/ports 107d7d8emulators/sameboy Makefile

emulators/sameboy: Strip binaries

- Set build warnings to upstream defaults

MFH:            2026Q3
DeltaFile
+3-2emulators/sameboy/Makefile
+3-21 files

FreeBSD/ports 8b9cb36devel/rgbds Makefile distinfo, devel/rgbds/files patch-test_run-tests.sh

devel/rgbds: Update to 1.0.2

- Do not build tests by default
- Add external tests excluding nonfree, which omits the Pokémon and
  Legend of Zelda disassemblies

ChangeLog:      https://github.com/gbdev/rgbds/releases/tag/v1.0.2%2Bhotfix
MFH:            2026Q3
DeltaFile
+10-5devel/rgbds/Makefile
+0-14devel/rgbds/files/patch-test_run-tests.sh
+3-3devel/rgbds/distinfo
+13-223 files

FreeBSD/ports 7c4426dsysutils/msktutil Makefile

sysutils/msktutil: fix breakage by using OPSYS

Despite passing poudriere testport and bulk and building and working,
this wasn't right. make -V PORTVERSION fails. It does not build.

Instead, thanks to jrm@, this hint from Mk/Uses/gssapi.mk:93 helps

It builds on 15.1 and 14.4, passses portlint, etc.

PR:             292735
DeltaFile
+3-3sysutils/msktutil/Makefile
+3-31 files

LLVM/project b7fbf82llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp, llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

3 element tests
DeltaFile
+128-0llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+0-4llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+128-42 files

LLVM/project f421cb3llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp, llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

[SBVec] Track claimed users across bundles
DeltaFile
+38-13llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+13-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+51-162 files

LLVM/project 6875b35llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.h, llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp

[SBVec] Refactor BottomUpVec pass for clarity and maintainability

- Corrected comments to clarify the direction of def-use and use-def chains.
- Changed the initialization of the SchedDirection variable to improve clarity.
- Updated documentation in vectorizeRec() to better describe the purpose of UserBndl.
- Removed outdated TODO comment regarding top-down vectorization scheduling.
DeltaFile
+5-4llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
+1-6llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+6-102 files

LLVM/project a24292cllvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp, llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp

[SBVec] Add top-down vectorization to the unified Sandbox Vectorizer

Extend the Sandbox Vectorizer's `bottom-up-vec` pass so a single
implementation can vectorize in either direction, and add the top-down
strategy that walks def-use chains forward from a seed.

Direction selection
--------------------
The pass direction is chosen from the Region's auxiliary pass argument:
"bottom-up" (or empty, the default) and "top-down" map onto a
SchedDirection, and any other value is rejected with a fatal usage error.
The vectorizer always runs in the same direction as the scheduler.

Top-down traversal
------------------
Bottom-up starts from a seed slice (e.g. stores to consecutive addresses)
and recurses into operands. Top-down instead starts from a seed of
consecutive loads and recurses into *users*:


    [32 lines not shown]
DeltaFile
+441-0llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+229-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
+90-27llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+79-0llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+68-9llvm/test/Transforms/SandboxVectorizer/pack.ll
+68-0llvm/test/Transforms/SandboxVectorizer/external_uses.ll
+975-362 files not shown
+1,017-488 files

LLVM/project aef1e4fclang/test/CodeGen target-data.c, llvm/lib/Target/NVPTX NVPTXISelLowering.cpp

[NVPTX] Support short entry param pointers (#206512)
DeltaFile
+458-229llvm/test/CodeGen/NVPTX/lower-args-gridconstant.ll
+32-0llvm/unittests/TargetParser/TripleTest.cpp
+21-9llvm/lib/TargetParser/TargetDataLayout.cpp
+6-5llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
+1-1clang/test/CodeGen/target-data.c
+518-2445 files

LLVM/project 6da4586llvm/lib/Transforms/Vectorize/SandboxVectorizer Scheduler.cpp, llvm/unittests/Transforms/Vectorize/SandboxVectorizer SchedulerTest.cpp

[SBVec] Refill ready list during topdown scheduling

Visit nodes which are ready according to the direction of scheduling.
DeltaFile
+28-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp
+9-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
+37-32 files