LLVM/project c8e2abbllvm/utils/gn/secondary/llvm/lib/Target/BPF BUILD.gn

[gn build] Port a718d2ad092b (#209547)
DeltaFile
+1-0llvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn
+1-01 files

LLVM/project c8c3c30llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses BUILD.gn, llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis BUILD.gn

[gn build] Port 612e7ca85c53 (#209545)
DeltaFile
+1-1llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
+1-1llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
+2-22 files

LLVM/project 2eac996llvm/test/CodeGen/AMDGPU local-atomicrmw-fadd.ll local-atomicrmw-fmin.ll

AMDGPU: Migrate CodeGen tests to amdgpu subarch triple (23) (#209214)

Mechanically migrate the command-line target spelling on llc/opt RUN
lines in llvm/test/CodeGen/AMDGPU from -mtriple=amdgcn ... -mcpu=<gfx> to the
folded subarch triple form (e.g. -mtriple=amdgpu9.00-amd-amdhsa), dropping the
redundant -mcpu.

Co-Authored-By: Claude <noreply at anthropic.com> (Claude-Opus-4.8)
DeltaFile
+11-11llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
+11-11llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
+11-11llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
+11-11llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
+10-10llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-nontemporal-metadata.ll
+8-8llvm/test/CodeGen/AMDGPU/load-atomic-local.ll
+62-6288 files not shown
+330-33094 files

LLVM/project 6f2cffbllvm/utils/gn/secondary/llvm/lib/Passes BUILD.gn

[gn build] Port 5d5dd83a547e (#209544)
DeltaFile
+0-1llvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
+0-11 files

LLVM/project 1f06699llvm/utils/gn/secondary/clang-tools-extra/clang-doc BUILD.gn, llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc BUILD.gn

[gn build] Port 1bd46015ea4e (#209543)
DeltaFile
+0-1llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn
+0-1llvm/utils/gn/secondary/clang-tools-extra/clang-doc/BUILD.gn
+0-22 files

LLVM/project 7d511e4llvm/utils/gn/secondary/clang-tools-extra/clang-doc BUILD.gn, llvm/utils/gn/secondary/clang-tools-extra/clang-doc/markdown BUILD.gn

[gn] port 7633d1e7a0f336 (no more clangDocMarkdown) (#209546)
DeltaFile
+0-6llvm/utils/gn/secondary/clang-tools-extra/clang-doc/markdown/BUILD.gn
+0-1llvm/utils/gn/secondary/clang-tools-extra/clang-doc/BUILD.gn
+0-1llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn
+0-83 files

LLVM/project 3b11feblibc/src/__support/CPP string.h CMakeLists.txt, utils/bazel/llvm-project-overlay/libc BUILD.bazel

[libc][cpp::string] Don't allocate a string in operator=(string_view)

This PR:

- Updates `opreator=(string_view)` to avoid allocating a temporary string: https://github.com/llvm/llvm-project/blob/67ebc4b221c3e94028b33004cd5cd08deee95048/libc/src/__support/CPP/string.h#L106-L108
- Changes `operator+=(const string&)` to accept a `string_view` so that strings may be appended without allocation.
- Adds asserts to make it clear that `cpp::string` does not support self assignment. Currently, `cpp::string s = "abc"; s = s;` will zero out the string.
DeltaFile
+20-5libc/src/__support/CPP/string.h
+2-0libc/src/__support/CPP/CMakeLists.txt
+2-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+24-53 files

LLVM/project 97f7658clang/test/CodeGen pr9614.c memcmp-inline-builtin-to-asm.c

[Clang] Require x86 target for some tests (#209532)

These tests assert behavior about the always-inliner which now requires
a target to be present to check function attribute compatibility for
inlining.

Fix forward for 37b8e765ce4837a7577e6f762bcdffe4b232759c.
DeltaFile
+2-0clang/test/CodeGen/pr9614.c
+2-0clang/test/CodeGen/memcmp-inline-builtin-to-asm.c
+2-0clang/test/CodeGen/memcpy-inline-builtin.c
+6-03 files

LLVM/project a80e98eclang/lib/CodeGen CGCUDANV.cpp, clang/test/CodeGenCUDA device-stub.cu

[clang][cuda] Use the source filename for module ID (#209239)

Prior to
[#184065](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html
"https://github.com/llvm/llvm-project/issues/184065") (relanded in
[#201849](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html
"https://github.com/llvm/llvm-project/issues/201849")), the code
introduced in https://reviews.llvm.org/D42922 was using the GUID of an
internal linkage GlobalValue to create a module id, which would then be
used in a few cuda-specific places (including creating a symbol name
suffix).
[#184065](vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/code/electron-browser/workbench/workbench.html
"https://github.com/llvm/llvm-project/issues/184065") assumed the
linkage of that symbol is external - which it isn't - and, thus, all
module IDs computed for this would be identical.

The fix is to not rely on GlobalValue GUIDs in the first place. What is
needed here is a hash that's specific to this module. So we're creating
that and explicitly decoupling that calculation from GlobalValue's

    [8 lines not shown]
DeltaFile
+13-0clang/test/CodeGenCUDA/device-stub.cu
+10-2clang/lib/CodeGen/CGCUDANV.cpp
+23-22 files

LLVM/project 48c2598llvm/lib/Transforms/Vectorize VPlanTransforms.cpp, llvm/test/Transforms/LoopVectorize fmax-without-fast-math-flags.ll

[VPlan] Use VPlan::hasTailFolded in materializeConstantVectorTC. (#209502)

The current checks in materializeConstantVectorTripCount miss
tail-folded cases when vectorizing loops with fmax without fast-math
flags. Use recently added hasTailFolded helper to ensure we always bail
out on tail-folded loops.

Fixes https://github.com/llvm/llvm-project/issues/209159.
DeltaFile
+1-1llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
+1-1llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+2-22 files

LLVM/project 7b54498llvm/lib/Target/Hexagon HexagonPatternsHVX.td HexagonISelLoweringHVX.cpp, llvm/test/CodeGen/Hexagon fminmax-v67.ll fminmax.ll

[Hexagon] Add lowering for `{max,min}num` (#202938)

Since the floating point requirements for `{max,min}num` are less strict
than the ones for `{max,min}imumnum`, it is fine to lower them to the
same instructions that already meet the requirements for the latter.
This is similar to what the RISC-V backend does for example.

This is also a lot better than generating a standard library call.
DeltaFile
+8-0llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
+4-4llvm/test/CodeGen/Hexagon/fminmax-v67.ll
+6-0llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
+2-2llvm/test/CodeGen/Hexagon/fminmax.ll
+4-0llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
+4-0llvm/lib/Target/Hexagon/HexagonPatterns.td
+28-66 files

LLVM/project fcc7142llvm/test/CodeGen/AMDGPU eliminate-frame-index-v-add-co-u32.mir eliminate-frame-index-s-add-i32.mir

[AMDGPU] Fix CFI emission when scratch instructions are used to spill

4b1cfc5d7c606e "[NFCI][AMDGPU] Final touch before moving to
`GET_SUBTARGETINFO_MACRO` (#177401)" (or more generally the move to
hasFlatScratchEnabled over just enableFlatScratch) was missed during the
CFI upstreaming for AMDGPU, and so we currently define the CFA
incorrectly for the architected flat scratch case.

This incorrect CFI is generated for e.g. gfx942. For such architecture,
the stack pointer (s32) holds a swizzled address (per-lane offset) but
the CFA needs to be an unswizzled address (per-wave).

In the incorrect program, we have a prologue looking like:

        s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
        s_mov_b32 s0, s33
        s_mov_b32 s33, s32
        [...]
        s_add_i32 s32, s32, 16

    [24 lines not shown]
DeltaFile
+76-76llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
+50-50llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
+57-37llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
+31-31llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
+20-20llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
+10-10llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
+244-2249 files not shown
+286-26615 files

LLVM/project 0ea1906clang/lib/StaticAnalyzer/Checkers ReportDanglingPtrDeref.cpp, lldb/packages/Python/lldbsuite/test/tools/lldb_dap types.py dap_types.py

Merge branch 'main' into users/bassiounix/clang/c2y/if-decl
DeltaFile
+2,026-0lldb/packages/Python/lldbsuite/test/tools/lldb_dap/types.py
+0-2,026lldb/packages/Python/lldbsuite/test/tools/lldb_dap/dap_types.py
+0-216lldb/packages/Python/lldbsuite/test/tools/lldb_dap/lldb_dap_testcase.py
+216-0lldb/packages/Python/lldbsuite/test/tools/lldb_dap/testcase.py
+105-0llvm/test/Transforms/LoopVectorize/fmax-without-fast-math-flags.ll
+95-0clang/lib/StaticAnalyzer/Checkers/ReportDanglingPtrDeref.cpp
+2,442-2,24289 files not shown
+3,314-2,50695 files

LLVM/project 8967a0eclang/test/C/C2y n3267.c

add file header
DeltaFile
+15-0clang/test/C/C2y/n3267.c
+15-01 files

Linux/linux 7059bdffs/btrfs file-item.c ioctl.c

Merge tag 'for-7.2-rc3-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/kdave/linux

Pull btrfs fixes from David Sterba:

 - fix root structure leak after relocation error

 - fix optimization when checksums are read from commit root, fall back
   to checksum root during relocation

 - in tree-checker, validate length of inode reference in items

 - validate properties before setting them

 - validate free space cache entries on load

 - transaction abort fixes

 - fix printing of internal trees as signed numbers


    [12 lines not shown]
DeltaFile
+25-1fs/btrfs/file-item.c
+12-6fs/btrfs/ioctl.c
+13-3fs/btrfs/props.c
+7-8fs/btrfs/relocation.c
+12-3fs/btrfs/lzo.c
+4-4fs/btrfs/print-tree.c
+73-252 files not shown
+82-258 files

LLVM/project fdc884f.github/workflows/containers/github-action-ci-windows Dockerfile

[docker][Windows] install libxml2 using vcpkg (#209422)

Since https://github.com/llvm/llvm-project/pull/209258, lldb uses
`lldb-server.exe` by default if libxml2 is available at build time. This
means that lldb-server requires installing libxml2 in the CI
environments to test it.

This patch adds a step to install libxml2 in the docker container used
for lldb pre-merge testing on Windows.
DeltaFile
+10-0.github/workflows/containers/github-action-ci-windows/Dockerfile
+10-01 files

LLVM/project 2e53e2clldb/test/API/commands/frame/var-dil/expr/Comparison main.cpp

Fix formatting
DeltaFile
+1-1lldb/test/API/commands/frame/var-dil/expr/Comparison/main.cpp
+1-11 files

LLVM/project a6db397lldb/include/lldb/ValueObject DILAST.h, lldb/source/ValueObject DILEval.cpp DILAST.cpp

[lldb] Add composite assignments to existing operators
DeltaFile
+47-14lldb/source/ValueObject/DILEval.cpp
+45-0lldb/test/API/commands/frame/var-dil/expr/Assignment/TestFrameVarDILCompositeAssign.py
+14-4lldb/source/ValueObject/DILAST.cpp
+15-0lldb/source/ValueObject/DILLexer.cpp
+9-4lldb/include/lldb/ValueObject/DILAST.h
+9-1lldb/source/ValueObject/DILParser.cpp
+139-233 files not shown
+152-249 files

LLVM/project ce72145llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp, llvm/test/CodeGen/AArch64 fold-sext-in-reg-predicate-fixed-length.ll

[SelectionDAG] Add GET_ACTIVE_LANE_MASK to ComputeNumSignBits (#208977)

`GET_ACTIVE_LANE_MASK ` acts like `icmp ult` so code is similar to
`SETCC`.
DeltaFile
+32-0llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
+28-0llvm/test/CodeGen/AArch64/fold-sext-in-reg-predicate-fixed-length.ll
+6-0llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+66-03 files

LLVM/project 9213618lldb/source/Plugins/SymbolLocator/SymStore CMakeLists.txt, llvm/docs ReleaseNotes.md

[lldb] Add release note for SymStore and generate settings docs (#209469)

We didn't have a release note for the symstore symbol locator and the
settings weren't included on https://lldb.llvm.org/use/settings.html.
The second part is probably because both were landing at the same time,
so I missed the JSON output there.
DeltaFile
+9-0llvm/docs/ReleaseNotes.md
+4-0lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
+13-02 files

LLVM/project 8734494clang/lib/Parse ParseExprCXX.cpp

Update clang/lib/Parse/ParseExprCXX.cpp

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
DeltaFile
+1-1clang/lib/Parse/ParseExprCXX.cpp
+1-11 files

FreeBSD/ports 7fd9192security/vuxml/vuln 2026.xml

security/vuxml: fix warning for the ffmpeg record
DeltaFile
+1-1security/vuxml/vuln/2026.xml
+1-11 files

LLVM/project 0530817lldb/packages/Python/lldbsuite/test/tools/lldb_dap types.py dap_types.py, lldb/test/API/tools/lldb-dap/launch TestDAP_launch_stopOnEntry.py

[NFC][lldb-dap] Simplify DAP imports. (#209442)

Expose commonly used classes in the lldb_dap package and avoid repeating
the lldb_dap namespace.
DeltaFile
+2,026-0lldb/packages/Python/lldbsuite/test/tools/lldb_dap/types.py
+0-2,026lldb/packages/Python/lldbsuite/test/tools/lldb_dap/dap_types.py
+0-216lldb/packages/Python/lldbsuite/test/tools/lldb_dap/lldb_dap_testcase.py
+216-0lldb/packages/Python/lldbsuite/test/tools/lldb_dap/testcase.py
+12-4lldb/packages/Python/lldbsuite/test/tools/lldb_dap/__init__.py
+2-6lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stopOnEntry.py
+2,256-2,25243 files not shown
+2,340-2,33849 files

FreeBSD/ports 74e7803misc/pytorch Makefile

misc/pytorch: Unbreak by adding libfmt.so:devel/libfmt to LIB_DEPENDS

Reported by:    fallout

(cherry picked from commit a5f48c964d3d240263b16a57fb60d3726aa95c35)
DeltaFile
+1-0misc/pytorch/Makefile
+1-01 files

LLVM/project 4a11340llvm/test/CodeGen/AMDGPU misaligned-vgpr-regsequence.mir

[AMDGPU] Add stackPtrOffsetReg to llvm/test/CodeGen/AMDGPU/misaligned-vgpr-regsequence.mir

Prepare for this being observable to the CFA generation code.

Change-Id: I56d00133148fd2c8f0e0ed41edca446553c664bc
DeltaFile
+2-0llvm/test/CodeGen/AMDGPU/misaligned-vgpr-regsequence.mir
+2-01 files

LLVM/project 0b9b1f4llvm/test/CodeGen/AMDGPU eliminate-frame-index-v-add-co-u32.mir eliminate-frame-index-s-add-i32.mir

[AMDGPU] Fix CFI emission when scratch instructions are used to spill

A change upstream (4b1cfc5d7c606e "4b1cfc5d7c606 [NFCI][AMDGPU] Final
touch before moving to `GET_SUBTARGETINFO_MACRO` (#177401)") seem to
have not been fully propagated into the downstream amd-staging branch.

This caused incorrect CFI to be generated on some architectures such as
gfx942.  For such architecture, the stack pointer (s32) holds a swizzled
address (per-lane offset) but the CFA needs to be an unswizzled address
(per-wave).

In the incorrect program, we have a prologue looking like:

        s_waitcnt vmcnt(0) expcnt(0) lgkmcnt(0)
        s_mov_b32 s0, s33
        s_mov_b32 s33, s32
        [...]
        s_add_i32 s32, s32, 16
        [...]

    [23 lines not shown]
DeltaFile
+76-76llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
+50-50llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
+57-37llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
+31-31llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
+20-20llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
+10-10llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
+244-2249 files not shown
+286-26615 files

LLVM/project a7e7bf5llvm/lib/Target/AMDGPU SIFrameLowering.cpp

[AMDGPU] Fix type for DWARF register number in SIFrameLowering

It so happened that using MCRegister here happened to work, but
the encoded dwarf number is definitely not an MCRegister.

Change-Id: I13ef6a9ee870cf12db11f0cd20e03268e70e9bf9
DeltaFile
+2-2llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
+2-21 files

FreeBSD/src f1e8b0fshare/mk bsd.cpu.mk

bsd.cpu.mk: Add a workaround for erratum 843419

Add a workaround for the Arm Cortex-A53 erratum 843419. This has been
targeted when the build is either unoptimised for any CPU/architecture
or targets the Cortex-A53 or ARMv8.0 architecture.

PR:             296240
PR:             296395
Reported by:    Hal Murray <halmurray+freebsd at sonic.net>
Reported by:    Andreas Schuh <x55839 at icloud.com>
Reviewed by:    cognet, mmel
Sponsored by:   Arm Ltd
Differential Revision:  https://reviews.freebsd.org/D58212
DeltaFile
+17-1share/mk/bsd.cpu.mk
+17-11 files

LLVM/project 8023e5ellvm/lib/Target/AMDGPU AMDGPULowerVGPREncoding.cpp, llvm/test/CodeGen/AMDGPU vgpr-set-msb-coissue.mir

[AMDGPU][CodeGen] Fix `S_NOP` insertion during `S_SET_VGPR_MSB` placement

The issue arises when co-issue optimizations move the initial insertion
position for `S_SET_VGPR_MSB` to an earlier spot, creating a mismatch
with the position used to determine whether a `S_NOP` is needed.
DeltaFile
+1-1llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
+1-0llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir
+2-12 files

FreeBSD/src 4c9f648sbin Makefile, sbin/init init.c Makefile

init(8): extract reroot transient code into reroot_seed

Since init become dynamically linked, reroot appeared to be broken
because init copies itself into a transient tmpfs mount to continue
controlling execution right after the reboot(REROOT) syscall.  Because
the binary is dynamically linked, it cannot be properly executed.

Provide a minimal static binary 'reroot_seed' embedded into the init as
byte stream, which performs what the 'init -r' did, namely, the second
phase reroot.

For the static build of init as part of the /rescue crunch, keep the
inline reroot code.

Reported and tested by: markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D58164
DeltaFile
+109-0sbin/reroot_seed/reroot_seed.c
+74-17sbin/init/init.c
+8-1sbin/init/Makefile
+6-0sbin/reroot_seed/Makefile
+4-0sbin/init/reroot_seed.embed.s
+2-0sbin/Makefile
+203-186 files