[all-commits] [llvm/llvm-project] d5e7c2: [SCEVExp] Remove special-case handling umul_with_o...
Sergei Barannikov via All-commits
all-commits at lists.llvm.org
Fri Sep 19 09:36:17 PDT 2025
Branch: refs/heads/users/s.barannikov/decoder-operands-6-aarch64-rest
Home: https://github.com/llvm/llvm-project
Commit: d5e7c27d53887e6ae490d8e26193a54987728458
https://github.com/llvm/llvm-project/commit/d5e7c27d53887e6ae490d8e26193a54987728458
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
Log Message:
-----------
[SCEVExp] Remove special-case handling umul_with_overflow by 1 (NFCI).
b50ad945dd4faa288 added umul_with_overflow simplifications to
InstSimplifyFolder (used by SCEVExpander) and 9b1b93766dfa34ee9 added
dead instruction cleanup to SCEVExpander.
Remove special handling of umul by 1, handled automatically due to the
changes above.
Commit: 162755bd393b751529925c814005c79d0327c1d3
https://github.com/llvm/llvm-project/commit/162755bd393b751529925c814005c79d0327c1d3
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
A .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Add a workflow that builds benchmarks when commenting on a PR
This worfklow is still being tested, since I can't figure out how to
trigger it without actually merging it to main.
Commit: b4650a4378d58bd5a9d260994062e2b7f8a78d10
https://github.com/llvm/llvm-project/commit/b4650a4378d58bd5a9d260994062e2b7f8a78d10
Author: Michael Jones <michaelrj at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/inttypes/BUILD.bazel
Log Message:
-----------
[libc][bazel] Add tests and targets for inttypes (#158127)
Adds tests and targets for the remaining inttypes functions.
Commit: 0ab2df2e47c556a9ed892d4962c803595a219a72
https://github.com/llvm/llvm-project/commit/0ab2df2e47c556a9ed892d4962c803595a219a72
Author: Michael Jones <michaelrj at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
A utils/bazel/llvm-project-overlay/libc/test/src/ctype/BUILD.bazel
Log Message:
-----------
[libc][bazel] add tests and targets for ctype (#158124)
Adds tests and targets for all the ctype functions.
Commit: e08588d4ae3ed7c81de08aaf88f3454b4985f1b3
https://github.com/llvm/llvm-project/commit/e08588d4ae3ed7c81de08aaf88f3454b4985f1b3
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
Log Message:
-----------
[libc++] Get rid of concurrency in the libc++ benchmarking job
Commit: 0e3c5566c0c62a56629a927d7de5e2594d2dbe7c
https://github.com/llvm/llvm-project/commit/0e3c5566c0c62a56629a927d7de5e2594d2dbe7c
Author: Joel E. Denny <jdenny.ornl at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Metadata.h
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/IR/ProfDataUtils.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/check-prof-info.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/branch-weights.ll
A llvm/test/Verifier/llvm.loop.estimated_trip_count.ll
M llvm/unittests/Transforms/Utils/LoopUtilsTest.cpp
Log Message:
-----------
[PGO] Add llvm.loop.estimated_trip_count metadata (#152775)
This patch implements the `llvm.loop.estimated_trip_count` metadata
discussed in [[RFC] Fix Loop Transformations to Preserve Block
Frequencies](https://discourse.llvm.org/t/rfc-fix-loop-transformations-to-preserve-block-frequencies/85785).
As the RFC explains, that metadata enables future patches, such as PR
#128785, to fix block frequency issues without losing estimated trip
counts.
Commit: bd6e217ac6a3f3d483d6acfdbb40d5c20a79c16b
https://github.com/llvm/llvm-project/commit/bd6e217ac6a3f3d483d6acfdbb40d5c20a79c16b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Remove concurrency in the right libc++ job
Early-cancellation should have been removed from libcxx-run-benchmarks.yml
in the first place, not libcxx-build-and-test.yaml.
Commit: 4ae520bfb4f058c747799c709691bbafc80619ab
https://github.com/llvm/llvm-project/commit/4ae520bfb4f058c747799c709691bbafc80619ab
Author: Reid Kleckner <rnk at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Target/MSP430/CMakeLists.txt
Log Message:
-----------
[cmake] Add missing shared library dependency after f3efbce
Commit: 9eb17cc0343d09264ea875038901d1c6541dcef7
https://github.com/llvm/llvm-project/commit/9eb17cc0343d09264ea875038901d1c6541dcef7
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/DiffUpdater.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/tests/Inputs/diff-test-update/.gitignore
A llvm/utils/lit/tests/Inputs/diff-test-update/multiple-split-file-populated.in
A llvm/utils/lit/tests/Inputs/diff-test-update/multiple-split-file.in
A llvm/utils/lit/tests/Inputs/diff-test-update/multiple-split-file.out
A llvm/utils/lit/tests/Inputs/diff-test-update/single-split-file-no-expected.in
A llvm/utils/lit/tests/Inputs/diff-test-update/single-split-file-no-expected.out
A llvm/utils/lit/tests/Inputs/diff-test-update/single-split-file-populated.in
A llvm/utils/lit/tests/Inputs/diff-test-update/single-split-file.in
A llvm/utils/lit/tests/Inputs/diff-test-update/single-split-file.out
A llvm/utils/lit/tests/Inputs/diff-test-update/split-both.test
A llvm/utils/lit/tests/Inputs/diff-test-update/split-c-comments.in
A llvm/utils/lit/tests/Inputs/diff-test-update/split-c-comments.out
A llvm/utils/lit/tests/Inputs/diff-test-update/split-whitespace.in
A llvm/utils/lit/tests/Inputs/diff-test-update/split-whitespace.out
A llvm/utils/lit/tests/Inputs/diff-test-update/unrelated-split.test
M llvm/utils/lit/tests/Inputs/pass-test-update/should_not_run.py
M llvm/utils/lit/tests/diff-test-update.py
M llvm/utils/lit/tests/pass-test-update.py
M llvm/utils/update_any_test_checks.py
Log Message:
-----------
[Utils] Add support for split-file to diff_test_updater (#157765)
Commit: 73e64e534f32f0223b5ddcf8d0f6ba7bc7e47fad
https://github.com/llvm/llvm-project/commit/73e64e534f32f0223b5ddcf8d0f6ba7bc7e47fad
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Fix sed pattern to extract benchmarks from the comment body
Commit: 05a705efda4bf62f54eed1bcb97e212ae823c585
https://github.com/llvm/llvm-project/commit/05a705efda4bf62f54eed1bcb97e212ae823c585
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/mai-hazards-mfma-scale.gfx950.mir
M llvm/test/MC/AMDGPU/mai-gfx950-err.s
M llvm/test/MC/AMDGPU/mai-gfx950.s
M llvm/test/MC/Disassembler/AMDGPU/gfx950_mai.txt
Log Message:
-----------
[AMDGPU] Restrict to VGPR only for mfma scale operands (#158117)
Restrict to VGPR only (VRegSrc_32) for mfma scale operands to workaround
a hardware design defect: For all Inline/SGPR constants, SP HW use bits
[30:23] as the scale.
TODO: We may still be able to allow Inline Constants/SGPR, with a proper
shift, to obtain a potentially better performance.
Fixes: SWDEV-548629
Commit: eb3b7ddc697c379894dc9b09b158697d44f7c25b
https://github.com/llvm/llvm-project/commit/eb3b7ddc697c379894dc9b09b158697d44f7c25b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86ExpandPseudo.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrControl.td
M llvm/lib/Target/X86/X86InstrOperands.td
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
A llvm/test/CodeGen/X86/win64-tailcall-memory.ll
Log Message:
-----------
X86: Fix win64 tail call regression for tail call to loaded pointer (#158055)
Fix regression after 62f2641d603db9aef99dd5c434a1dfe7d3f56346. Previous
patch handled the register case, but the memory case snuck another use
of ptr_rc_tailcall hidden inside i64mem_TC
Commit: ca09801bd03579f28edac60077a164fab0474eb4
https://github.com/llvm/llvm-project/commit/ca09801bd03579f28edac60077a164fab0474eb4
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/unittests/ProfileData/CoverageMappingTest.cpp
Log Message:
-----------
[LLVM][Coverage][Unittest] Fix dangling reference in unittest (#147118)
In loop of `writeAndReadCoverageRegions`, `OutputFunctions[I].Filenames`
references to contents of `Filenames` after returning from
`readCoverageRegions` but `Filenames` will be cleared in next call of
`readCoverageRegions`, causes dangling reference.
The lifetime of the contents of `Filenames` must be equal or longer than
`OutputFunctions[I]`, thus it has been moved into `OutputFunctions[I]`
(typed `OutputFunctionCoverageData`).
Commit: 3097688a4706ee232b4a3256cff2499481348f03
https://github.com/llvm/llvm-project/commit/3097688a4706ee232b4a3256cff2499481348f03
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/ProfDataUtils.h
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll
Log Message:
-----------
[SimplifyCFG] Set branch weights when merging conditional store to address (#154841)
Commit: b64ed9d79ebc4887d7452f5fa4d08cfa6640f8ab
https://github.com/llvm/llvm-project/commit/b64ed9d79ebc4887d7452f5fa4d08cfa6640f8ab
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
Log Message:
-----------
[WebKit checkers] Recognize NS_RETURNS_RETAINED and CF_RETURNS_RETAINED. (#157629)
This PR adds the support for treating a function return value to be safe
if the function is annotated with NS_RETURNS_RETAINED or
CF_RETURNS_RETAINED.
Commit: 82218fb1db0b7b1ddeeb7f8c3ab494a57776764e
https://github.com/llvm/llvm-project/commit/82218fb1db0b7b1ddeeb7f8c3ab494a57776764e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Use the correct pull-request base and targets for the benchmarking job
Commit: 65787728b72a2b1f1bfdefd15d32ec0a69f2b941
https://github.com/llvm/llvm-project/commit/65787728b72a2b1f1bfdefd15d32ec0a69f2b941
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
M lldb/test/Shell/SymbolFile/NativePDB/inline_sites.test
M lldb/test/Shell/SymbolFile/NativePDB/local-variables-registers.s
M lldb/test/Shell/SymbolFile/NativePDB/nested-blocks-same-address.s
A lldb/test/Shell/SymbolFile/NativePDB/symtab.cpp
M lldb/test/Shell/Unwind/windows-unaligned-x86_64.test
Log Message:
-----------
[LLDB][NativePDB] Implement `AddSymbols` (#154121)
This PR implements `SymbolFileNativePDB::AddSymbols` which adds public
symbols to the symbol table.
These symbols are found in the publics stream. It contains mangled names
coupled with addresses. Addresses are a pair of (segment, offset).
If I understood correctly, then the segment is the section ID from the
COFF header. Sections are already
[constructed](https://github.com/llvm/llvm-project/blob/c48ec7fb60b5e0b4100731d75f82ea63c0ec7b45/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp#L1048)
using this 1-based index ([MS
docs](https://learn.microsoft.com/en-us/windows/win32/debug/pe-format#section-table-section-headers)).
This allows us to use `section_list->FindSectionByID`.
Commit: 43561ad204329667954d5ce1e632e09335f0ab12
https://github.com/llvm/llvm-project/commit/43561ad204329667954d5ce1e632e09335f0ab12
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
A llvm/test/Transforms/SimplifyCFG/unreachable-multi-basic-block-funclet.ll
Log Message:
-----------
[BasicBlockUtils] Handle funclets when detaching EH pad blocks (#157363)
Fixes #148052 .
When removing EH Pad blocks, the value defined by them becomes poison. These poison values are then used by `catchret` and `cleanupret`, which is invalid. This commit replaces those unreachable `catchret` and `cleanupret` instructions with `unreachable`.
Commit: e0817c642713b316e878a729236fa3ff99858cba
https://github.com/llvm/llvm-project/commit/e0817c642713b316e878a729236fa3ff99858cba
Author: jtstogel <jtstogel at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Redo LSP changes to fix bazel build (#158150)
Reverts llvm/llvm-project#157691
Change was relanded in https://github.com/llvm/llvm-project/pull/157885
Commit: 20e55f359dc424fa23392ad7ecd766294b60accc
https://github.com/llvm/llvm-project/commit/20e55f359dc424fa23392ad7ecd766294b60accc
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
Log Message:
-----------
[lldb][NFC] Mark API test skipIfRemote to avoid a bot
The lldb-remote-linux-ubuntu bot (and only this bot) is still failing
for TestCortexMExceptionUnwind.py because the Target triple is
somehow inheriting a non-Darwin OS. I marked this API test
skipUnlessDarwin but this bot can be identified more specifically
by a skipIfRemote test. There's no benefit to running this test
remotely anyway; it doesn't execute any code.
Commit: e87dc2ebf91063ee85394e67db989ad1f1bd55b5
https://github.com/llvm/llvm-project/commit/e87dc2ebf91063ee85394e67db989ad1f1bd55b5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-debuginfod-find/cache.test
M llvm/test/tools/llvm-debuginfod/llvm-debuginfod.test
Log Message:
-----------
[llvm-debuginfod] Update tests to work with internal shell (#158141)
This patch updates the llvm-debuginfod tests to work with the lit
internal shell. One test was missing env before environment variables
and another was using a brace expansion.
Commit: 73b24d27d8ab7a252fca4c55c1fe7848cab2029c
https://github.com/llvm/llvm-project/commit/73b24d27d8ab7a252fca4c55c1fe7848cab2029c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/test/lit.cfg.py
Log Message:
-----------
Reapply "[llvm] Use lit internal shell by default"
This reverts commit 5125f476b2f90ccf157c78d73bc6fe14c4413a27.
This was reverted because it broke some debuginfod tests. Those have been fixed
now in #158141. Relanding now and hoping it sticks this time.
Commit: 2f9a458f35ccd0fc45067afda346fd59052d0c0c
https://github.com/llvm/llvm-project/commit/2f9a458f35ccd0fc45067afda346fd59052d0c0c
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
A clang/test/Analysis/Checkers/WebKit/trivial-code-check-asm-brk.cpp
Log Message:
-----------
[WebKit checkers] Treat asm brk as trivial (#155046)
Like other functions which results in abort, treat asm brk instruction
as trivial.
Commit: 6272540b9f7e5fbd3dab8aaca103012a4dc1faa3
https://github.com/llvm/llvm-project/commit/6272540b9f7e5fbd3dab8aaca103012a4dc1faa3
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Properly extract the PR head and base from the Github event
Commit: 7d249cf094357d729f866f8366765372daccbc49
https://github.com/llvm/llvm-project/commit/7d249cf094357d729f866f8366765372daccbc49
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVSubtarget.h
Log Message:
-----------
[RISCV] Add helper functions to detect CLZ/CTZ/CPOP-like support. (#158148)
Commit: c9395512e8b45dc1a341ae0061d75bbeeeb7a595
https://github.com/llvm/llvm-project/commit/c9395512e8b45dc1a341ae0061d75bbeeeb7a595
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Install dependencies right before they're needed
This solves a tricky issue where we can't install the libc++ dependencies
until after we've checked out the monorepo.
Commit: 1dfd1313e5e9e64e2355d5886b125c551b171b38
https://github.com/llvm/llvm-project/commit/1dfd1313e5e9e64e2355d5886b125c551b171b38
Author: jtstogel <jtstogel at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/Dialect/BUILD.bazel
Log Message:
-----------
[bazel] Fix bazel test by specifying unroll-elements.mlir as data (#158158)
`mlir/test/Dialect/Vector/td/unroll-elements.mlir` is fed as a data
dependency
into`mlir/test/Dialect/Vector/vector-to-elements-lowering.mlir` added in
[#157142](https://github.com/llvm/llvm-project/pull/157142). The Bazel
rule here automatically picks up all mlir files as tests, which leads to
`vector-to-elements-lowering` failing.
Commit: d2f67c3bf735fe29a0c7fd1fac6939c4d6737b9a
https://github.com/llvm/llvm-project/commit/d2f67c3bf735fe29a0c7fd1fac6939c4d6737b9a
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M libcxx/utils/test-at-commit
Log Message:
-----------
[libc++] Make sure we forward the git repository from test-at-commit to build-at-commit
Commit: 607a813029c815fb3529ae7338548cc3f492b437
https://github.com/llvm/llvm-project/commit/607a813029c815fb3529ae7338548cc3f492b437
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/active-lane-mask.ll
Log Message:
-----------
[ConstFold] Don't crash on ConstantExprs when folding get_active_lane_m.
Check if operands are ConstantInt to avoid crashing on constant
expression after https://github.com/llvm/llvm-project/pull/156659.
Commit: 23d1ec64f7fe630ac08a49652b649690971051f3
https://github.com/llvm/llvm-project/commit/23d1ec64f7fe630ac08a49652b649690971051f3
Author: David Tellenbach <dtellenbach at apple.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
A llvm/test/CodeGen/MIR/AArch64/hasstackframe.mir
Log Message:
-----------
[AArch64][MIR] Serialize AArch64MachineFunctionInfo::HasStackFrame to MIR (#158122)
This patch adds serialization of
AArch64MachineFunctionInfo::HasStackFrame into MIR.
Commit: c989f85cdb77db88a16ec6e490d8f16312e6f1a6
https://github.com/llvm/llvm-project/commit/c989f85cdb77db88a16ec6e490d8f16312e6f1a6
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M mlir/include/mlir/Interfaces/ValueBoundsOpInterface.h
M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in ValueBoundsOpInterface.cpp (NFC)
Commit: d88c89f860c205cda2c07b59fbb9ede70130818f
https://github.com/llvm/llvm-project/commit/d88c89f860c205cda2c07b59fbb9ede70130818f
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/DXContainer.h
M llvm/include/llvm/Frontend/HLSL/RootSignatureValidations.h
M llvm/include/llvm/MC/DXContainerRootSignature.h
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/Target/DirectX/DXILPostOptimizationValidation.cpp
M llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
Log Message:
-----------
[DirectX] Removing dxbc StaticSampler from mcbxdc (#154631)
MC Static Samplers Representation currently depends on Object
structures. This PR removes that dependency and in order to facilitate
removing to_underlying usage in follow-up PRs.
Commit: b0181514b4d2a5f61ae5b405ee32643e6b8ff71b
https://github.com/llvm/llvm-project/commit/b0181514b4d2a5f61ae5b405ee32643e6b8ff71b
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/DiffUpdater.py
Log Message:
-----------
[Utils] Compare true file locations instead of string paths (#158160)
Previously we compared paths by string manipulation, however Windows
paths can use both '\' and '/' as path separators, which made this
fragile. This uses the pathlib.Path.samefile API instead.
Commit: 50da22a9f4394de964eceb23097e1d05cc4dcdb6
https://github.com/llvm/llvm-project/commit/50da22a9f4394de964eceb23097e1d05cc4dcdb6
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
A clang/test/Analysis/Checkers/WebKit/template-wrapper-call-arg.cpp
Log Message:
-----------
[alpha.webkit.UncountedCallArgsChecker] A return value can be erroneously treated as unsafe if it's a template parameter (#157993)
When a template class takes Ref<T> as a template parameter and this
template parameter is used as the return value of a member function, the
return value can be treated as unsafe (i.e. emits a false positive). The
issue was caused by getCanonicalType sometimes converting Ref<T> to T.
Workaround this problem by avoid emitting a warning when the original,
non-canonical type is a safe pointer type.
Commit: 580fdeb6ff55fcd54be16ed8555eaaa6a9aee1c0
https://github.com/llvm/llvm-project/commit/580fdeb6ff55fcd54be16ed8555eaaa6a9aee1c0
Author: Dave Lee <davelee.com at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M lldb/test/API/commands/dwim-print/TestDWIMPrint.py
M lldb/test/API/commands/dwim-print/main.cpp
Log Message:
-----------
[lldb] Test global variable support of dwim-print (NFC) (#157908)
DIL has made `frame variable` support global variables, which in turn
means dwim-print inherits support for global variables.
Commit: aa32b6f294838d10bdb36c76678b68b7322c2e4e
https://github.com/llvm/llvm-project/commit/aa32b6f294838d10bdb36c76678b68b7322c2e4e
Author: Vincent Lee <leevince at meta.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/test/TableGen/FixedLenDecoderEmitter/additional-encoding.td
Log Message:
-----------
[tablegen][test] Make additional-encoding.td more reliable (#158123)
Similar to `OPC_Decode`, `OPC_TryDecode` should also be relaxed in case
new opcodes are added. `llvm/test/TableGen/trydecode-emission.td` is an
example of a test that follows this pattern. Apply the same relaxation
in `additional-encoding.td` as well.
Commit: 5d8d98cfa8e98a61b1d7d91e7e941c7ff289fed1
https://github.com/llvm/llvm-project/commit/5d8d98cfa8e98a61b1d7d91e7e941c7ff289fed1
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Report the results of the benchmarking job back through a comment
Commit: 13ae9ea4d66b53d836c465c4330e3ccdba0d01d0
https://github.com/llvm/llvm-project/commit/13ae9ea4d66b53d836c465c4330e3ccdba0d01d0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Analysis/DataFlow/DeadCodeAnalysis.h
M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
M mlir/lib/Analysis/DataFlowFramework.cpp
Log Message:
-----------
[MLIR] Avoid resolving callable outside the analysis scope in DeadCodeAnalysis (#155088)
We are using the symbol table machinery to lookup for a callable, but
when the analysis scope if a function, such lookup will resolve outside
of the scope. This can lead to race-condition issues since other passes
may operate in parallel on the sibling functions.
The callable would be discarded right after the lookup (we check the
analysis scope), so avoiding the lookup is NFC.
For the DataFlow solver, we're looking at the top-level operation, and
if it isn't a SymbolTable we disable the interprocedural optimization in
the solver config directly.
This strategy isn't NFC but seems reasonnable and does not encounter any
change in behavior in practice in tree.
Fix #154948
Commit: 1083289c78d5851293f32ccebd4931d18dcf943e
https://github.com/llvm/llvm-project/commit/1083289c78d5851293f32ccebd4931d18dcf943e
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Tee the output of the benchmark comparison
Commit: 1c325a07f804e5c0f36fd18b48cd1e35d835fb32
https://github.com/llvm/llvm-project/commit/1c325a07f804e5c0f36fd18b48cd1e35d835fb32
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Stop checking allocatable in adjustAllocatableRegClass (#158105)
This no longer does anything.
Commit: 28743fafa6b5358ede23da93f3ca7d52d1b4f75c
https://github.com/llvm/llvm-project/commit/28743fafa6b5358ede23da93f3ca7d52d1b4f75c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
Log Message:
-----------
AMDGPU: Use RegisterOperand for MIMG vaddr classes (#158087)
This reduces the diff in a future patch.
Commit: 5a21128f24a7f9a48166ae4a0aafe5bd70154012
https://github.com/llvm/llvm-project/commit/5a21128f24a7f9a48166ae4a0aafe5bd70154012
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/vni8-across-blocks.ll
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/fold-sgpr-copy.mir
Log Message:
-----------
AMDGPU: Relax legal register operand constraint (#157989)
Find a common subclass instead of directly checking for a subclass
relationship. This fixes folding logic for unaligned register defs
into aligned use contexts. e.g., a vreg_64 def into an av_64_align2
use should be able to find the common subclass vreg_align2. This
avoids regressions in future patches.
Checking the subclass was also redundant on the subregister path;
getMatchingSuperRegClass is sufficient.
Commit: 98d14ad50e42f36a7e02b126ca3fb8b15d39a73b
https://github.com/llvm/llvm-project/commit/98d14ad50e42f36a7e02b126ca3fb8b15d39a73b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[libc++] Improve output of the comment-triggered benchmarking job
Commit: 6040c007e3dd3339299786eae78246036d68d954
https://github.com/llvm/llvm-project/commit/6040c007e3dd3339299786eae78246036d68d954
Author: jtstogel <jtstogel at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/utils/lit/tests/BUILD.bazel
Log Message:
-----------
[bazel] Fix diff-test-update bazel test target by depending on split-file (#158170)
#157765 added tests that depend on the split-file utility, which breaks
the Bazel test target.
Commit: 69e3ff67ac69f3a1177910cffefce19034563b7c
https://github.com/llvm/llvm-project/commit/69e3ff67ac69f3a1177910cffefce19034563b7c
Author: Jonathan Wakely <github at kayari.org>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/ranges_rotate.pass.cpp
Log Message:
-----------
[libc++] Fix ranges_rotate.pass.cpp complexity checks (#158144)
The complexity is "at most N swaps" _for each invocation of `rotate`_,
but the tests currently assert that the total number of swaps for N
calls is at most N. The standard allows that to be N squared, so the
test is either requiring more than the standard (and the comment in the
test) promises, or somebody just forgot to reset the counter on each
iteration.
Commit: 2740e4b73682eb7a6869c333991a608304938952
https://github.com/llvm/llvm-project/commit/2740e4b73682eb7a6869c333991a608304938952
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang/test/Analysis/scan-build/cxx-name.test
M clang/test/Analysis/scan-build/deduplication.test
M clang/test/Analysis/scan-build/html_output.test
M clang/test/Analysis/scan-build/plist_html_output.test
M clang/test/Analysis/scan-build/plist_output.test
M clang/test/ClangScanDeps/module-format.c
M clang/test/ClangScanDeps/modules-context-hash-cwd.c
M clang/test/ClangScanDeps/modules-file-path-isolation.c
M clang/test/ClangScanDeps/modules-in-stable-dirs.c
M clang/test/ClangScanDeps/modules-symlink-dir-from-module.c
M clang/test/ClangScanDeps/modules-symlink-dir-vfs.c
M clang/test/ClangScanDeps/modules-symlink-dir.c
M clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c
M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
M clang/test/ClangScanDeps/symlink.cpp
M clang/test/CodeCompletion/included-symlinks.cpp
M clang/test/Driver/aarch64-toolchain-extra.c
M clang/test/Driver/amdgpu-hip-system-arch.c
M clang/test/Driver/amdgpu-openmp-system-arch-fail.c
M clang/test/Driver/arm-toolchain-extra.c
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/darwin-ld-demangle-lld.c
M clang/test/Driver/darwin-ld-lto-lld.c
M clang/test/Driver/mingw-sysroot.cpp
M clang/test/Driver/no-canonical-prefixes.c
M clang/test/Driver/nvptx-cuda-system-arch.c
M clang/test/Driver/openmp-system-arch.c
M clang/test/Driver/parse-progname.c
M clang/test/Driver/riscv32-toolchain-extra.c
M clang/test/Driver/riscv64-toolchain-extra.c
M clang/test/Driver/sigpipe-handling.c
M clang/test/Driver/target-override.c
M clang/test/Driver/verbose-output-quoting.c
M clang/test/Frontend/dependency-gen-symlink.c
M clang/test/Index/preamble-reparse-changed-module.m
M clang/test/InterfaceStubs/driver-test.c
M clang/test/InterfaceStubs/driver-test2.c
M clang/test/InterfaceStubs/driver-test3.c
M clang/test/Modules/crash-vfs-headermaps.m
M clang/test/Modules/crash-vfs-include-pch.m
M clang/test/Modules/crash-vfs-path-emptydir-entries.m
M clang/test/Modules/crash-vfs-path-symlink-topheader.m
M clang/test/Modules/embed-files-compressed.cpp
M clang/test/Modules/embed-files.cpp
M clang/test/Modules/exponential-paths.cpp
M clang/test/Modules/framework-name.m
M clang/test/Modules/implicit-private-without-public.m
M clang/test/Modules/inferred-framework-case.m
M clang/test/Modules/module-file-modified.c
M clang/test/Modules/module-symlink.m
M clang/test/Modules/modulemap-collision.m
M clang/test/Modules/validate-file-content.m
M clang/test/PCH/validate-file-content.m
M clang/test/Preprocessor/embed_zos.c
M clang/test/Preprocessor/nonportable-include-with-hmap.c
M clang/test/Profile/cxx-hash-v2.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-debug-unclaimed/warn-unsafe-buffer-usage-debug-unclaimed.cpp
M clang/test/Tooling/auto-detect-from-source-parent-of-cwd.cpp
M clang/test/Tooling/clang-check-pwd.cpp
M llvm/utils/lit/lit/llvm/config.py
Log Message:
-----------
[clang] Remove shell requirements from tests
Most of these tests do not actually have a shell requirement. The shell
requirement ended up in the test either from cargo culting (from what I
can tell) or because the test authors actually meant to mark Windows as
unsupported. This prevents enablement of lit's internal shell within
clang.
Towards #102699.
Reviewers: rnk, efriedma-quic, Sirraide, petrhosek, ilovepi
Reviewed By: ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/156905
Commit: 40e85fcaaa04515e511c2a2a8899e46bd6c300ba
https://github.com/llvm/llvm-project/commit/40e85fcaaa04515e511c2a2a8899e46bd6c300ba
Author: Dmitry Chigarev <dmitry.chigarev at intel.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
M mlir/test/Conversion/VectorToXeGPU/transfer-write-to-xegpu.mlir
Log Message:
-----------
[MLIR][XeGPU][VectorToXeGPU] Fix transfer_read/write cases with non-contiguous memrefs (#158126)
This PR fixes a case where a source memref in
`vector.transfer_read/write` is not contiguous, which violates the
`memref.collapse_shape` semantic that is used in the lowering.
<details><summary>An example of a failing test</summary>
```mlir
gpu.module @xevm_module {
gpu.func @load_from_subview(%source: memref<4096x4096xf16>, %off1: index, %off2: index) -> vector<8xf16> {
%c0 = arith.constant 0.0 : f16
%subview = memref.subview %source[%off1, %off2] [256, 256] [1, 1] : memref<4096x4096xf16> to memref<256x256xf16, strided<[4096, 1], offset: ?>>
%0 = vector.transfer_read %subview[%off2, %off2], %c0
{in_bounds = [true]} : memref<256x256xf16, strided<[4096, 1], offset: ?>>, vector<8xf16>
gpu.return %0 : vector<8xf16>
}
}
```
Fails with:
```
/home/user/llvm/mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir:404:8: error: 'memref.collapse_shape' op invalid source layout map or collapsing non-contiguous dims
%0 = vector.transfer_read %subview[%off2, %off2], %c0
^
/home/user/llvm/mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir:404:8: note: see current operation: %8 = "memref.collapse_shape"(%2) <{reassociation = [[0, 1]]}> : (memref<256x256xf16, strided<[4096, 1], offset: ?>>) -> memref<65536xf16>
```
</details>
A suggestion was to replace `memref.collapse_shape` with
`memref.extract_aligned_pointer_as_index` which is done in this PR.
Since `extract_aligned_pointer` applied to a subview returns an original
pointer without subview offsets, this PR also adds a logic to use an
offset obtained from `memref.extract_strided_metadata` in `baseOffset`
calculation in `computeOffsets`.
---------
Signed-off-by: dchigarev <dmitry.chigarev at intel.com>
Commit: 3ade8746ee66ad1394c9b5847a86fc326a942d06
https://github.com/llvm/llvm-project/commit/3ade8746ee66ad1394c9b5847a86fc326a942d06
Author: Andrew Savonichev <andrew.savonichev at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/reinterpret-cast.cpp
Log Message:
-----------
[clang] Look through parens around reinterpret_cast to emit a warning (#157033)
Clang warns about UB when a `reinterpret_cast` is dereferenced as an
incompatible type:
```
long l;
*reinterpret_cast<double*>(&l) // UB
```
However, the code was too strict and did not handle extra parens around
a `reinterpret_cast`, so the following case was not diagnosed:
```
long l;
*(reinterpret_cast<double*>(&l)) // UB, but no warning
```
The patch now skips ParenExpr when looking for a CXXReinterpretCastExpr
to enable a diagnostic for the second case.
Commit: 1329af9c28582bd6b9d1e3e605f6243eb0e01683
https://github.com/llvm/llvm-project/commit/1329af9c28582bd6b9d1e3e605f6243eb0e01683
Author: Weibo He <NewSigma at 163.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopInfo.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
R llvm/test/Transforms/LICM/licm-coroutine.ll
Log Message:
-----------
Revert "[LoopInfo] Pointer to stack object may not be loop invariant in a coroutine function (#149936)" (#157986)
Since #156788 has resolved #149604, we can revert this workaround now.
Commit: 653ed062ea22e3d35b5b7ce6db391466821ca6e9
https://github.com/llvm/llvm-project/commit/653ed062ea22e3d35b5b7ce6db391466821ca6e9
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang/test/Modules/crash-vfs-umbrella-frameworks.m
Log Message:
-----------
[Clang] Invoke shell script with bash
This test attempts to run a reproducer script generated by clang. This
is intended to be run by a shell, so invoke it with an actual shell.
This enables running the test with LLVM lit's internal shell.
Reviewers: bcardosolopes, ilovepi, petrhosek
Reviewed By: ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/157608
Commit: 95fc948c0a07953ae9d0973854336e197e36d349
https://github.com/llvm/llvm-project/commit/95fc948c0a07953ae9d0973854336e197e36d349
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/llvm/config.py
M llvm/utils/lit/lit/util.py
Log Message:
-----------
[lit] Remove Python 2 string support (#157979)
There are some code paths within lit that still check what string types
are supported with the aim of being compatible with Python 2 and 3.
Given LLVM's minimum Python version is 3.8 and we do not have any
upstream testing for Python 2, I think we can safely drop this.
Commit: 188901d6cab1d717eb8d114e76d9033c204a84e6
https://github.com/llvm/llvm-project/commit/188901d6cab1d717eb8d114e76d9033c204a84e6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
A llvm/test/CodeGen/AMDGPU/stack-passed-subdword-arg-crash-issue157997.ll
Log Message:
-----------
AMDGPU: Fix returning wrong type for stack passed sub-dword arguments (#158002)
Fixes assertion with -debug-only=isel on LowerFormalArguments result.
That assert really shouldn't be under LLVM_DEBUG.
Fixes #157997
Commit: af82c1a67b3a1dfc05b6149e68caa30103c15ce8
https://github.com/llvm/llvm-project/commit/af82c1a67b3a1dfc05b6149e68caa30103c15ce8
Author: Jie Fu <jiefu at tencent.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] Remove an unused variable (NFC)
/llvm-project/llvm/lib/Target/AMDGPU/SIISelLowering.cpp:3416:9:
error: unused variable 'ValVT' [-Werror,-Wunused-variable]
EVT ValVT = VA.getValVT();
^
1 error generated.
Commit: 2508851798d727517f60d8b5a76c3001cabb7c59
https://github.com/llvm/llvm-project/commit/2508851798d727517f60d8b5a76c3001cabb7c59
Author: benwu25 <soggysocks206 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
A llvm/test/Transforms/InstCombine/min-zext.ll
Log Message:
-----------
[InstCombine] Fold `min(X+1, Y) - min(X, Y) --> zext X < Y` (#157782)
This PR closes #157524.
alive2: https://alive2.llvm.org/ce/z/xe_vb2
godbolt: https://alive2.llvm.org/ce/z/7A8PxK
This fold is invalid for `@llvm.smin.i1` since `smin(-1, 0) == -1`. I
also avoided i1 in general since this uses zext, but it seems like those
checks for width might not be necessary, since other folds get to it
first.
The alive2 proof in #157524 used a select for the fold, but it seems
like `select X < Y, 1, 0` should be canonicalized to `zext X < Y` if the
bit width is correct.
Commit: 5621fa1c1ee210e24070b58ba9fa9e1c8fe5c132
https://github.com/llvm/llvm-project/commit/5621fa1c1ee210e24070b58ba9fa9e1c8fe5c132
Author: lntue <lntue at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/type_traits/is_destructible.h
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/endian_internal.h
M libc/src/__support/macros/config.h
M libc/src/__support/math_extras.h
Log Message:
-----------
[libc] Some more MSVC compatibility in src/__support. (#158108)
Commit: 30010f49ca4de03762a31202c82e9c763d4a8822
https://github.com/llvm/llvm-project/commit/30010f49ca4de03762a31202c82e9c763d4a8822
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-eqv.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nand.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nor.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-b.ll
A llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-c.ll
Log Message:
-----------
[NFC][PowerPC] Pre-commit testcases for locking down the xxsel instructions for ternary(A, X, eqv(B,C)), ternary(A, X, not(C)), ternary(A, X, not(B)), ternary(A, X, nand(B,C)) and ternary(A, X, nor(B,C)) patterns (#158091)
Pre-commit test case for exploitation of `xxsel` for ternary operations
of the pattern. This adds support for v4i32, v2i64, v16i8 and v8i16
operand types for the following patterns.
The following are the patterns involved in the change:
```
ternary(A, and(B,C), nor(B,C))
ternary(A, B, nor(B,C))
ternary(A, C, nor(B,C))
ternary(A, xor(B,C), nor(B,C))
ternary(A, not(C), nor(B,C))
ternary(A, not(B), nor(B,C))
ternary(A, nand(B,C), nor(B,C))
ternary(A, or(B,C), eqv(B,C))
ternary(A, nor(B,C), eqv(B,C))
ternary(A, not(C), eqv(B,C))
ternary(A, nand(B,C), eqv(B,C))
ternary(A, and(B,C), not(C))
ternary(A, B, not(C))
ternary(A, xor(B,C), not(C))
ternary(A, or(B,C), not(C))
ternary(A, not(B), not(C))
ternary(A, nand(B,C), not(C))
ternary(A, and(B,C), not(B))
ternary(A, xor(B,C), not(B))
ternary(A, or(B,C), not(B))
ternary(A, nand(B,C), not(B))
ternary(A, B, nand(B,C))
ternary(A, C, nand(B,C))
ternary(A, xor(B,C), nand(B,C))
ternary(A, or(B,C), nand(B,C))
ternary(A, eqv(B,C), nand(B,C))
```
Exploitation of `xxeval` for the above patterns to be added as a follow
up.
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: 092de9bb90cbcee445b31e504a4c2a09ecf09714
https://github.com/llvm/llvm-project/commit/092de9bb90cbcee445b31e504a4c2a09ecf09714
Author: Vedant Paranjape <vedantparanjape160201 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
A llvm/test/Transforms/InstCombine/fold-fadd-with-zero-gh154238.ll
Log Message:
-----------
[InstCombine] Enable FAdd simplifications when user can ignore sign bit (#157757)
When FAdd result is used by fabs, we can safely ignore the sign bit of
fp zero. This patch enables an instruction simplification optimization
that folds fadd x, 0 ==> x, which would otherwise not work as the
compiler cannot prove that the zero isn't -0. But if the result of the
fadd is used by fabs we can simply ignore this and still do the
optimization.
Fixes #154238
Commit: d5aa5e33e6fd7c0d4035be5e7877f275b3205a36
https://github.com/llvm/llvm-project/commit/d5aa5e33e6fd7c0d4035be5e7877f275b3205a36
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M libc/test/IntegrationTest/test.h
M libc/test/integration/src/pthread/pthread_create_test.cpp
M libc/test/integration/src/pthread/pthread_join_test.cpp
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/unistd/getcwd_test.cpp
M libc/test/integration/startup/linux/tls_test.cpp
Log Message:
-----------
[libc] Update errno usage in integration tests. (#158147)
Instead of using libc_errno directly, include <errno.h> and use regular
"errno" in the code. (to verify that errno-as-an-interface works
properly).
This is the recipe prescribed in the libc/src/__support/libc_errno.h
header - let's actually follow it in the integration tests.
Commit: aef2f41f3fdc12d40db244e61fbe812db5612dda
https://github.com/llvm/llvm-project/commit/aef2f41f3fdc12d40db244e61fbe812db5612dda
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Enable `performance-type-promotion-in-math-fn` check in the codebase (#158186)
Closes #156155.
Commit: fefe670be067cd698a71ab8dcd6a92803e2192ef
https://github.com/llvm/llvm-project/commit/fefe670be067cd698a71ab8dcd6a92803e2192ef
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/Modules/lambda-merge.cpp
Log Message:
-----------
[clang][bytecode] Compile the definition, not the most recent decl (#158093)
Commit: df2a7a9ec9afbcc2d1ab87cdcb55059fc2a0aaa8
https://github.com/llvm/llvm-project/commit/df2a7a9ec9afbcc2d1ab87cdcb55059fc2a0aaa8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/IndexedMap.h
M llvm/include/llvm/ADT/SparseMultiSet.h
M llvm/include/llvm/ADT/SparseSet.h
M llvm/include/llvm/ADT/identity.h
Log Message:
-----------
[ADT] clang-format several files (NFC)
I'm planning to modify these files.
Commit: 13daa1e6efdbdc322265fda7ad8f5b265d2ab4aa
https://github.com/llvm/llvm-project/commit/13daa1e6efdbdc322265fda7ad8f5b265d2ab4aa
Author: Roy Shi <royitaqi at users.noreply.github.com>
Date: 2025-09-11 (Thu, 11 Sep 2025)
Changed paths:
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
Log Message:
-----------
[lldb-dap] Add `debugAdapterEnv` for `attach` requests & improve regex (#157980)
# Changes
#153536 added a new debug configuration field called `debugAdapterEnv`
and enabled it in `launch.json` **for `launch` requests**. This patch
enables the same for **`attach` requests**.
This patch also improves the regex used in this field, i.e. shortens it
and fixes the double backslashes (`\\`) in `debug-adapter-factory.ts`
(note: the ones in `package.json` need the double backslashes).
# Test
Manually tested the following values in `attach` requests (so that we
are testing both changes at the same time):
```
// Accepted
"debugAdapterEnv": [
"AAA=BBB",
],
"debugAdapterEnv": [
"AAA=",
],
"debugAdapterEnv": [
"AAA",
],
// Rejected
"debugAdapterEnv": [
"=AAA",
],
"debugAdapterEnv": [
"=",
],
"debugAdapterEnv": [
"",
],
```
Commit: 586c0ad918aa3e725224246260b458b4b90615c2
https://github.com/llvm/llvm-project/commit/586c0ad918aa3e725224246260b458b4b90615c2
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISD.def
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
A llvm/test/CodeGen/WebAssembly/partial-reduce-accumulate.ll
Log Message:
-----------
[WebAssembly] Support partial-reduce accumulator (#158060)
We currently only support partial.reduce.add in the case where we are
performing a multiply-accumulate. Now add support for any partial
reduction where the input is being extended, where we can take advantage
of extadd_pairwise.
Commit: 73cfd45e3401b18730e283b8a13e21fb85de3a38
https://github.com/llvm/llvm-project/commit/73cfd45e3401b18730e283b8a13e21fb85de3a38
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/test/Lexer/cxx-features.cpp
M clang/www/cxx_status.html
Log Message:
-----------
[Clang] Set the FTM for trivial relocation (#142936)
The language of side seems fairly stable.
Setting the feature test macro will ease implementation in standard
libraries.
Commit: 4bb250d6a3d63c41f5d539c9b9a162070ea5b619
https://github.com/llvm/llvm-project/commit/4bb250d6a3d63c41f5d539c9b9a162070ea5b619
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-f16.ll
A llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
Log Message:
-----------
[VPlan] Always consider register pressure on RISC-V (#156951)
Stacked on #156923
In https://godbolt.org/z/8svWaredK, we spill a lot on RISC-V because
whilst the largest element type is i8, we generate a bunch of pointer
vectors for gathers and scatters. This means the VF chosen is quite high
e.g. <vscale x 16 x i8>, but we end up using a bunch of <vscale x 16 x
i64> m8 registers for the pointers.
This was briefly fixed by #132190 where we computed register pressure in
VPlan and used it to prune VFs that were likely to spill. The legacy
cost model wasn't able to do this pruning because it didn't have
visibility into the pointer vectors that were needed for the
gathers/scatters.
However VF pruning was restricted again to just the case when max
bandwidth was enabled in #141736 to avoid an AArch64 regression, and
restricted again in #149056 to only prune VFs that had max bandwidth
enabled.
On RISC-V we take advantage of register grouping for performance and
choose a default of LMUL 2, which means there are 16 registers to work
with – half the number as SVE, so we encounter higher register pressure
more frequently.
As such, we likely want to always consider pruning VFs with high
register pressure and not just the VFs from max bandwidth.
This adds a TTI hook to opt into this behaviour for RISC-V which fixes
the motivating godbolt example above. When last checked this
significantly reduces the number of spills on SPEC CPU 2017, up to
80% on 538.imagick_r.
Commit: 76aba5d415fbf206e0d9443a5822fcd9244fa33f
https://github.com/llvm/llvm-project/commit/76aba5d415fbf206e0d9443a5822fcd9244fa33f
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/MC/MCParser/MCAsmParser.h
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/COFFAsmParser.cpp
M llvm/lib/MC/MCParser/COFFMasmParser.cpp
M llvm/lib/MC/MCParser/DarwinAsmParser.cpp
M llvm/lib/MC/MCParser/ELFAsmParser.cpp
M llvm/lib/MC/MCParser/MCAsmParser.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/MC/MCParser/WasmAsmParser.cpp
Log Message:
-----------
[MC] Add parseSymbol() helper (NFC) (#158106)
This combines parseIdentifier() + getOrCreateSymbol(). This should make
it a bit easier if we want to change the parseIdentifier() API.
Commit: 3a2c8f7af8b38dd17649a42fc1f291d47f6e175d
https://github.com/llvm/llvm-project/commit/3a2c8f7af8b38dd17649a42fc1f291d47f6e175d
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/test/CodeGen/RISCV/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/machine-combiner.ll
M llvm/test/CodeGen/RISCV/neg-abs.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt.ll
Log Message:
-----------
[RISCV] Move MachineCombiner to addILPOpts() (#158071)
So that it runs before `MachineCSE` and other passes.
Fixes https://github.com/llvm/llvm-project/issues/158063.
Commit: 152d0f5c0c0eaea369bf534b673d7625700ca7ef
https://github.com/llvm/llvm-project/commit/152d0f5c0c0eaea369bf534b673d7625700ca7ef
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Endian.h
M llvm/lib/ObjectYAML/GOFFEmitter.cpp
M llvm/unittests/Support/EndianTest.cpp
Log Message:
-----------
[Support] Deprecate one form of support::endian::write (NFC) (#156140)
We have two forms of write:
template <typename value_type, std::size_t alignment = unaligned>
inline void write(void *memory, value_type value, endianness endian)
template <typename value_type, endianness endian, std::size_t alignment>
inline void write(void *memory, value_type value)
The difference is that endian is a function parameter in the former
but a template parameter in the latter.
This patch streamlines the code by migrating the use of the latter to
the former while deprecating the latter.
I'm planning to do the same for byte_swap and read in follow-up
patches to keep this patch simple and small.
Commit: a7521a81c4b7aa135086488a566eab2dbc6b1326
https://github.com/llvm/llvm-project/commit/a7521a81c4b7aa135086488a566eab2dbc6b1326
Author: Boyao Wang <wangboyao at bytedance.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
A llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
A llvm/test/MC/RISCV/zibi-invalid.s
A llvm/test/MC/RISCV/zibi-valid.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV][MC] Add MC support of Zibi experimental extension (#127463)
This adds the MC support of Zibi v0.1 experimental extension.
References:
*
https://lf-riscv.atlassian.net/wiki/spaces/USXX/pages/599261201/Branch+with+Immediate+Zibi+Ratification+Plan
* https://lf-riscv.atlassian.net/browse/RVS-3828
* https://github.com/riscv/zibi/releases/tag/v0.1.0
Commit: d7b7b9cd6d12a8cbc35fba4ecfd0a557011e9cdd
https://github.com/llvm/llvm-project/commit/d7b7b9cd6d12a8cbc35fba4ecfd0a557011e9cdd
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
Revert "[compiler-rt][test] Use packaging.version.Version to compare glibc versions" (#158230)
Reverts llvm/llvm-project#142596
Got reports that some tests previously skipped are running again and
failing.
Commit: 59102db770183835f549c58ad6954f39a407fe5e
https://github.com/llvm/llvm-project/commit/59102db770183835f549c58ad6954f39a407fe5e
Author: kper <kevin.per at protonmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/test/Transforms/InstCombine/trunc-lshr.ll
Log Message:
-----------
[InstCombine] Added optimisation for trunc (Negated Pow2 >> x) to i1 (#157998)
Follow up of https://github.com/llvm/llvm-project/pull/157030
```
trunc ( lshr i8 C1, V1) to i1 -> icmp ugt V1, cttz(C1) - 1 iff (C1) is negative power of 2
trunc ( ashr i8 C1, V1) to i1 -> icmp ugt V1, cttz(C1) - 1 iff (C1) is negative power of 2
```
General proof:
lshr: https://alive2.llvm.org/ce/z/vVfaJc
ashr: https://alive2.llvm.org/ce/z/8aAcgD
Commit: 7982980e078481fb1c52360691206f10160b1e5a
https://github.com/llvm/llvm-project/commit/7982980e078481fb1c52360691206f10160b1e5a
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
Log Message:
-----------
[AMDGPUPromoteAlloca][NFC] Avoid unnecessary APInt/int64_t conversions (#157864)
Follow-up to #157682
Commit: 5374f16270f02fdbedbbba96951a8b9ffd9c482f
https://github.com/llvm/llvm-project/commit/5374f16270f02fdbedbbba96951a8b9ffd9c482f
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/utils/ci/Dockerfile
Log Message:
-----------
[libcxx][ci][NFC] Remove commented install line and disutils reference (#158015)
76667c768e6403e71718340a946e6f2f356bf745 added distutils because "spawn"
was used, which I then removed in
268a4b0a451432833d3b398c7182d133c865dff5.
I removed it as part of removing all uses of distutils in llvm-project,
tracked in #54337. Python has removed distutils in its latest versions.
Distutils was not being installed in the docker image but just mentioned
in a commented out line. I think this line was leftover from when it was
reformated into the multi-line command above.
So I'm removing the whole line and relocating the comments a bit.
Commit: 220d705d2189d2ce5b993fcd1eabccf7e30efefb
https://github.com/llvm/llvm-project/commit/220d705d2189d2ce5b993fcd1eabccf7e30efefb
Author: Andy MacGregor <amacgregor.1776 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/Format.cpp
A clang/lib/Format/NumericLiteralCaseFixer.cpp
A clang/lib/Format/NumericLiteralCaseFixer.h
M clang/unittests/Format/CMakeLists.txt
A clang/unittests/Format/NumericLiteralCaseTest.cpp
Log Message:
-----------
[clang-format] Add an option to format numeric literal case (#151590)
Some languages have the flexibility to use upper or lower case
characters interchangeably in integer and float literal definitions.
I'd like to be able to enforce a consistent case style in one of my
projects, so I added this clang-format style option to control it.
With this .clang-format configuration:
```yaml
NumericLiteralCaseStyle:
UpperCasePrefix: Never
UpperCaseHexDigit: Always
UpperCaseSuffix: Never
```
This line of code:
```C
unsigned long long 0XdEaDbEeFUll;
```
gets reformatted into this line of code:
```C
unsigned long long 0xDEAFBEEFull;
```
-----
I'm new to this project, so please let me know if I missed something in
the process. I modeled this PR from
[IntegerLiteralSeparatorFixer](https://reviews.llvm.org/D140543)
Commit: 5539daf8120cfe20c0c36d115319e14077e5fa79
https://github.com/llvm/llvm-project/commit/5539daf8120cfe20c0c36d115319e14077e5fa79
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/test/CodeGen/Thumb2/bti-indirect-branches.ll
Log Message:
-----------
[ARM] Make test more robust (NFC)
Make sure this doesn't optimize down to something simpler.
Commit: 4d24407e7d0ae66a8fef29f2100706d85706ae10
https://github.com/llvm/llvm-project/commit/4d24407e7d0ae66a8fef29f2100706d85706ae10
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/include/__cxx03/fstream
M libcxx/include/__cxx03/ios
M libcxx/include/__cxx03/sstream
M libcxx/include/__cxx03/string
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
M libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
Log Message:
-----------
[libc++][C++03] cherry-pick #101889 (#157881)
Commit: 1b05212acc1964837135930a129ee26e1a392278
https://github.com/llvm/llvm-project/commit/1b05212acc1964837135930a129ee26e1a392278
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/DiffUpdater.py
Log Message:
-----------
[Utils] fix diff_test_updater on Windows (#158235)
Commit: fae68b6c77058dd10d7c6780181ff312e46f0689
https://github.com/llvm/llvm-project/commit/fae68b6c77058dd10d7c6780181ff312e46f0689
Author: Georgiy Samoylov <g.samoylov at syntacore.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/Frontend/CompilerInvocation.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
A llvm/test/DebugInfo/RISCV/dw_op_entry_value_32bit.ll
A llvm/test/DebugInfo/RISCV/dw_op_entry_value_64bit.ll
Log Message:
-----------
[RISCV] Enabled debug entry support by default (#157703)
This patch enables support for debug entry values. This improves quality
of debug info for RISC-V
Commit: 4884d6cbce99286e349e239c1c1103b9f3820b56
https://github.com/llvm/llvm-project/commit/4884d6cbce99286e349e239c1c1103b9f3820b56
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/include/__type_traits/desugars_to.h
M libcxx/include/__utility/default_three_way_comparator.h
M libcxx/include/__utility/lazy_synth_three_way_comparator.h
M libcxx/include/string
A libcxx/test/libcxx/utilities/utility/has_default_three_way.compile.pass.cpp
Log Message:
-----------
[libc++] Extend __default_three_way_comparator to any types that only implements operator<=> (#157602)
This uses the new `__builtin_lt_synthesises_from_spaceship` builtin from
clang to use three way comparison for arbitrary user-defined types that
only provide a spaceship operator.
Commit: baec6c55c1ddb226aa50f1663d9a4d61f44e1665
https://github.com/llvm/llvm-project/commit/baec6c55c1ddb226aa50f1663d9a4d61f44e1665
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/AST/ASTImporter.cpp
M clang/test/Analysis/ctu-import-type-decl-definition.c
M clang/unittests/AST/ASTImporterTest.cpp
Log Message:
-----------
[clang][ASTImporter] Fixed test 'ctu-import-type-decl-definition' and ASTImporter (#158016)
The test was faulty and did not reproduce the error in ASTImporter. The
previous fix #156056 for the crash was not correct, this is fixed here.
Commit: 9e1d656c682cd0bf6f123fba2064ffdb8861f790
https://github.com/llvm/llvm-project/commit/9e1d656c682cd0bf6f123fba2064ffdb8861f790
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.dim.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
Log Message:
-----------
AMDGPU: Remove MIMG special case in adjustAllocatableRegClass (#158184)
I have no idea why this was here. MIMG atomics use tied operands
for the input and output, so AV classes should have always worked.
We have poor test coverage for AGPRs with atomics, so add a partial
set. Everything seems to work OK, although it seems image cmpswap
always uses VGPRs unnecessarily.
Commit: 1bafd020c7c80be476f211bc239ce43424f7e0ce
https://github.com/llvm/llvm-project/commit/1bafd020c7c80be476f211bc239ce43424f7e0ce
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/include/__vector/vector.h
Log Message:
-----------
[libc++] Mark __{emplace,push}_back_slow_path as noinline (#94379)
These are almost certainly intended to not be inlined. This
significantly reduces code size when `push_back` and `emplace_back` are
used heavily.
Fixes #94360
Commit: 381e1bb461564b829f7fa558801c317a619b32de
https://github.com/llvm/llvm-project/commit/381e1bb461564b829f7fa558801c317a619b32de
Author: Haibo Jiang <jianghaibo9 at huawei.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
A bolt/test/AArch64/print-mem-data.test
Log Message:
-----------
[BOLT] fix print-mem-data not working (#156332)
This option `print-mem-data` is currently not working, use this fix to
restore its functionality.
Commit: 47b490b4dcda4ac5d4adae88a7c90ffac8068312
https://github.com/llvm/llvm-project/commit/47b490b4dcda4ac5d4adae88a7c90ffac8068312
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
Log Message:
-----------
[AArch64][SME] Refactor MachineSMEABI pass state (NFCI) (#156674)
This removes the pass state (aside from target classes) from the
MachineSMEABI class, and instead passes/returns state between functions.
The intention is to make dataflow (and where state is mutated) more
apparent.
Commit: 2331fbb01978463a218d80883d29a003fdef6e14
https://github.com/llvm/llvm-project/commit/2331fbb01978463a218d80883d29a003fdef6e14
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.h
M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
M llvm/lib/Target/ARM/ThumbRegisterInfo.cpp
M llvm/lib/Target/ARM/ThumbRegisterInfo.h
M llvm/lib/Target/AVR/AVRRegisterInfo.cpp
M llvm/lib/Target/AVR/AVRRegisterInfo.h
M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
M llvm/lib/Target/Hexagon/HexagonRegisterInfo.h
M llvm/lib/Target/LoongArch/LoongArchRegisterInfo.h
M llvm/lib/Target/MSP430/MSP430RegisterInfo.cpp
M llvm/lib/Target/MSP430/MSP430RegisterInfo.h
M llvm/lib/Target/Mips/Mips16InstrInfo.cpp
M llvm/lib/Target/Mips/Mips16RegisterInfo.cpp
M llvm/lib/Target/Mips/Mips16RegisterInfo.h
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsRegisterInfo.h
M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
M llvm/lib/Target/Mips/MipsSERegisterInfo.cpp
M llvm/lib/Target/Mips/MipsSERegisterInfo.h
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
M llvm/lib/Target/RISCV/RISCVRegisterInfo.h
M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
M llvm/lib/Target/Sparc/SparcRegisterInfo.cpp
M llvm/lib/Target/Sparc/SparcRegisterInfo.h
M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
M llvm/lib/Target/SystemZ/SystemZRegisterInfo.h
M llvm/lib/Target/VE/VERegisterInfo.cpp
M llvm/lib/Target/VE/VERegisterInfo.h
M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86RegisterInfo.h
Log Message:
-----------
CodeGen: Remove MachineFunction argument from getPointerRegClass (#158185)
getPointerRegClass is a layering violation. Its primary purpose
is to determine how to interpret an MCInstrDesc's operands RegClass
fields. This should be context free, and only depend on the subtarget.
The model of this is also wrong, since this should be an
instruction / operand specific property, not a global pointer class.
Remove the the function argument to help stage removal of this hook
and avoid introducing any new obstacles to replacing it.
The remaining uses of the function were to get the subtarget, which
TargetRegisterInfo already belongs to. A few targets needed new
subtarget derived properties copied there.
Commit: ccaeebcd04de4aa908c7101375e5834087cec330
https://github.com/llvm/llvm-project/commit/ccaeebcd04de4aa908c7101375e5834087cec330
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/include/clang/Basic/arm_sme.td
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_cnt.c
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/CodeGen/AArch64/sme-intrinsics-rdsvl.ll
M llvm/test/CodeGen/AArch64/sme-streaming-interface-remarks.ll
M llvm/test/CodeGen/AArch64/sme-streaming-interface.ll
M llvm/test/Transforms/InstCombine/AArch64/sme-intrinsic-opts-counting-elems.ll
M mlir/include/mlir/Dialect/ArmSME/IR/ArmSMEIntrinsicOps.td
M mlir/include/mlir/Dialect/ArmSME/Utils/Utils.h
M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
M mlir/lib/Dialect/ArmSME/IR/Utils.cpp
M mlir/test/Conversion/ArmSMEToLLVM/arm-sme-to-llvm.mlir
M mlir/test/Target/LLVMIR/arm-sme-invalid.mlir
M mlir/test/Target/LLVMIR/arm-sme.mlir
Log Message:
-----------
[AArch64][SME] Improve codegen for aarch64.sme.cnts* when not in streaming mode (#154761)
Builtins for reading the streaming vector length are canonicalised to
use the aarch64.sme.cntsd intrinisic and a multiply, i.e.
- cntsb -> cntsd * 8
- cntsh -> cntsd * 4
- cntsw -> cntsd * 2
This patch also removes the LLVM intrinsics for cnts[b,h,w], and adds
patterns to improve codegen when cntsd is multiplied by a constant.
Commit: 4b03252ad6a31db0cfacf75330f41eafe2f027a6
https://github.com/llvm/llvm-project/commit/4b03252ad6a31db0cfacf75330f41eafe2f027a6
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
Log Message:
-----------
[NFC][AMDGPU][SIMemoryLegalizer] remove effectively empty function (#156806)
The removed function SIGfx90ACacheControl::enableLoadCacheBypass() does
not actually do anything except one assert and one unreachable.
Commit: 3b48c64d0822dfaee98ab85a9299d03f50490f8e
https://github.com/llvm/llvm-project/commit/3b48c64d0822dfaee98ab85a9299d03f50490f8e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
Log Message:
-----------
AMDGPU: Move spill pseudo special case out of adjustAllocatableRegClass (#158246)
This is special for the same reason av_mov_b64_imm_pseudo is special.
Commit: 14ae5f32f70f965df822de18ca93521ffb820079
https://github.com/llvm/llvm-project/commit/14ae5f32f70f965df822de18ca93521ffb820079
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/source/Utility/Scalar.cpp
M lldb/unittests/Utility/ScalarTest.cpp
Log Message:
-----------
[lldb] Allow division by floating point zero in Scalar (#158115)
`Scalar` produced an invalid value when detecting any division by zero.
This should be only for integer division.
Commit: 1f49c9494e9a12396a94f36e7e7507304bc83c0e
https://github.com/llvm/llvm-project/commit/1f49c9494e9a12396a94f36e7e7507304bc83c0e
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/ConstProp/active-lane-mask.ll
A llvm/test/Transforms/InstSimplify/get_active_lane_mask.ll
Log Message:
-----------
[InstSimplify] Simplify get.active.lane.mask when 2nd arg is zero (#158018)
When the second argument passed to the get.active.lane.mask intrinsic is
zero we can simplify the instruction to return an all-false mask
regardless of the first operand.
Commit: 0d65856584dffafbc417919d8fcb8ad66f9fbf8a
https://github.com/llvm/llvm-project/commit/0d65856584dffafbc417919d8fcb8ad66f9fbf8a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libclc/utils/CMakeLists.txt
M libclc/utils/prepare-builtins.cpp
Log Message:
-----------
libclc: Remove HAVE_LLVM version macros (#158257)
This doesn't need to pretend to support multiple versions of llvm
and these are old anyway.
Commit: 77596b78e5664fff8d272599c0420fc9b87e2c2d
https://github.com/llvm/llvm-project/commit/77596b78e5664fff8d272599c0420fc9b87e2c2d
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
A mlir/test/Dialect/Vector/td/xfer-drop-unit-dims.mlir
M mlir/test/Dialect/Vector/vector-transfer-collapse-inner-most-dims.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Add a new TD op to wrap unit-dim collapsing patterns (#157507)
Adds a new TD Op,
* `apply_patterns.vector.drop_inner_most_unit_dims_from_xfer_ops`,
which wraps the following Vector patterns:
* `DropInnerMostUnitDimsTransferRead`
* `DropInnerMostUnitDimsTransferWrite`
This complements other existing unit-dimension–related patterns.
To reduce duplication, the
`TestVectorTransferCollapseInnerMostContiguousDims`
pass has been removed. That pass was only used for testing, and its
functionality is now covered by the newly added TD Op.
Commit: 8457e68b6b59f8daf5fb747fe3a2f9c48c3c3ba8
https://github.com/llvm/llvm-project/commit/8457e68b6b59f8daf5fb747fe3a2f9c48c3c3ba8
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Debug.h
M llvm/include/llvm/Support/DebugLog.h
M llvm/unittests/Support/DebugLogTest.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Log Message:
-----------
Introduce LDBG_OS() macro as a variant of LDBG() (#157194) (#158260)
Also, improve LDBG() to accept debug type and level in any order, and
add unit-tests for LDBG() and LGDB_OS().
LDBG_OS() is a macro that behaves like LDBG() but instead of directly
using it to stream the output, it takes a callback function that will be
called with a raw_ostream.
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: 83b48b13f3a70bf56053e92593270c519859cfd7
https://github.com/llvm/llvm-project/commit/83b48b13f3a70bf56053e92593270c519859cfd7
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
Log Message:
-----------
[lldb][test] Disable more of TestDAP_attach.py on Windows
Flaky on our Windows on Arm bot:
https://lab.llvm.org/buildbot/#/builders/141/builds/11465
See #137660
Commit: 7289f2cd0c371b2539faa628ec0eea58fa61892c
https://github.com/llvm/llvm-project/commit/7289f2cd0c371b2539faa628ec0eea58fa61892c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/InitUndef.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineLICM.cpp
M llvm/lib/CodeGen/MachineVerifier.cpp
M llvm/lib/CodeGen/RegisterCoalescer.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp
M llvm/lib/Target/ARM/ARMFrameLowering.cpp
M llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
M llvm/lib/Target/ARM/MLxExpansionPass.cpp
M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
M llvm/lib/Target/Hexagon/HexagonLoadStoreWidening.cpp
M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
M llvm/lib/Target/LoongArch/LoongArchDeadRegisterDefinitions.cpp
M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
M llvm/lib/Target/RISCV/RISCVDeadRegisterDefinitions.cpp
M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
M llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp
M llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp
M llvm/lib/Target/X86/X86DomainReassignment.cpp
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86OptimizeLEAs.cpp
M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
Log Message:
-----------
CodeGen: Remove MachineFunction argument from getRegClass (#158188)
This is a low level utility to parse the MCInstrInfo and should
not depend on the state of the function.
Commit: 40d8af816c4a7262b198c6d6459da815c45e87d0
https://github.com/llvm/llvm-project/commit/40d8af816c4a7262b198c6d6459da815c45e87d0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Debug.h
M llvm/include/llvm/Support/DebugLog.h
M llvm/unittests/Support/DebugLogTest.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Log Message:
-----------
Revert "Introduce LDBG_OS() macro as a variant of LDBG() (#157194)" (#158264)
Reverts llvm/llvm-project#158260
second attempt to land this fixed some bots, but left others broken,
need an extra iteration!
Commit: 54fc5367f63cca8e011d93bbd55764b0a7ecbbd5
https://github.com/llvm/llvm-project/commit/54fc5367f63cca8e011d93bbd55764b0a7ecbbd5
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
Log Message:
-----------
[LV] Fix crash in uncountable exit with side effects checking
Fixes an ICE reported on PR #145663, as an assert was found to be
reachable with a specific combination of unreachable blocks.
Commit: b936a7cf990391b5e7d10524619c955ce42d5932
https://github.com/llvm/llvm-project/commit/b936a7cf990391b5e7d10524619c955ce42d5932
Author: Karlo Basioli <k.basioli at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/Dialect/BUILD.bazel
Log Message:
-----------
Fix bazel build failure (introduced in #157507) (#158268)
Commit: 1e10b782ecac29eff6057889d64519666f0d43b2
https://github.com/llvm/llvm-project/commit/1e10b782ecac29eff6057889d64519666f0d43b2
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-whilelo.ll
Log Message:
-----------
[AArch64][InstCombine] Canonicalize whilelo intrinsic (#151553)
InstCombine llvm.aarch64.sve.whilelo to the generic LLVM
llvm.get.active.lane.mask intrinsic
Commit: de8859da5485ab06b7331c37f98aa778cb469e6b
https://github.com/llvm/llvm-project/commit/de8859da5485ab06b7331c37f98aa778cb469e6b
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
[libclc] Create LIBCLC_OUTPUT_LIBRARY_DIR directory before build (#158171)
This fixes `No such file or directory` error when "Unix Makefiles"
generator is used, see https://github.com/intel/llvm/issues/20058.
Ninja generator implicitly creates output directory when generating
libclc libraries, but "Unix Makefiles" generator does not.
Commit: 2832717ecc84a93519aaf9a6558b8ce4e1c40933
https://github.com/llvm/llvm-project/commit/2832717ecc84a93519aaf9a6558b8ce4e1c40933
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/Debug.h
M llvm/include/llvm/Support/DebugLog.h
M llvm/unittests/Support/DebugLogTest.cpp
M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
Log Message:
-----------
Introduce LDBG_OS() macro as a variant of LDBG() (#158277)
Also, improve LDBG() to accept debug type and level in any order, and
add unit-tests for LDBG() and LGDB_OS().
LDBG_OS() is a macro that behaves like LDBG() but instead of directly
using it to stream the output, it takes a callback function that will be
called with a raw_ostream.
This is a re-land with workarounds for older gcc and clang versions.
Previous attempts in #157194 and #158260
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: a2a9601ea49afff950f9267b378b30ef799d6ad9
https://github.com/llvm/llvm-project/commit/a2a9601ea49afff950f9267b378b30ef799d6ad9
Author: Gaurav Verma <48321602+xintin at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
M mlir/test/Conversion/AMDGPUToROCDL/permlane.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
Log Message:
-----------
[mlir][AMDGPU] Updated `PermlaneSwapOp` to select correct val (#157586)
* as per the instruction description, updated `PermlaneSwapOp` to select
correct val
* updated corresponding lit tests
Issue it resolves: the block reduction was failing otherwise as we were
selecting the `{0}` always.
---------
Signed-off-by: xintin <gaurav.verma at amd.com>
Commit: 93a1470a97ec2c57247824ff2a59437831fea6de
https://github.com/llvm/llvm-project/commit/93a1470a97ec2c57247824ff2a59437831fea6de
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/test/Analysis/BasicAA/featuretest.ll
M llvm/test/Transforms/InstCombine/assume-align.ll
Log Message:
-----------
[InstCombine] Remove redundant alignment assumptions. (#123348)
Use known bits to remove redundant alignment assumptions.
Libc++ now adds alignment assumptions for std::vector::begin() and
std::vector::end(), so I expect we will see quite a bit more assumptions
in C++ [1]. Try to clean up some redundant ones to start with.
[1] https://github.com/llvm/llvm-project/pull/108961
PR: https://github.com/llvm/llvm-project/pull/123348
Commit: 45f6c5015892cc0361645319833fffcfe2dafd2f
https://github.com/llvm/llvm-project/commit/45f6c5015892cc0361645319833fffcfe2dafd2f
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
R llvm/test/TableGen/FixedLenDecoderEmitter/InitValue.td
A llvm/test/TableGen/FixedLenDecoderEmitter/operand-decoder.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Decode operands with "all zeros" encoding (#158163)
Follow-up to #156358. The original change didn't take into account
operands with "all zeros" encoding, now fixed.
Commit: 61664b61032edf8763f48099636bc7cd35ef622e
https://github.com/llvm/llvm-project/commit/61664b61032edf8763f48099636bc7cd35ef622e
Author: Romaric Jodin <rjodin at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/cmake/modules/CMakeLists.txt
Log Message:
-----------
[clang] fix clang_cmake_builddir (#155844)
When building llvm from a subdirectory (like clspv does)
`CMAKE_BINARY_DIR` is at the top of the build directory.
When building runtimes (libclc for example), the build fails looking for
clang (through `find_package` looking at `LLVM_BINARY_DIR` with
`NO_DEFAULT_PATH` & `NO_CMAKE_FIND_ROOT_PATH`) because clang is not in
`LLVM_BINARY_DIR`.
Fix that issue by setting `clang_cmake_builddir` the same way we set
`llvm_cmake_builddir` from `LLVM_BINARY_DIR`.
For default llvm build (using llvm as the main cmake project), it should
not change anything.
Commit: 5149e51cb25d6a68365ca3bd9300cff1b18213e2
https://github.com/llvm/llvm-project/commit/5149e51cb25d6a68365ca3bd9300cff1b18213e2
Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M flang/include/flang/Lower/AbstractConverter.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Coarray.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/Runtime.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Coarray.cpp
A flang/test/Lower/Coarray/sync_all.f90
A flang/test/Lower/Coarray/sync_images.f90
A flang/test/Lower/Coarray/sync_memory.f90
Log Message:
-----------
[flang][Lower] Add lowering to SYNC ALL, SYNC MEMORY and SYNC IMAGES to PRIF (#154166)
In relation to the approval and merge of the
https://github.com/llvm/llvm-project/pull/76088 specification about
multi-image features in Flang.
Here is a PR on adding support for SYNC ALL, SYNC MEMORY and SYNC IMAGES
in conformance with the PRIF specification.
---------
Co-authored-by: Katherine Rasmussen <krasmussen at lbl.gov>
Commit: 03e3ce82b926a4c138e6e0bacfcd1d5572c3e380
https://github.com/llvm/llvm-project/commit/03e3ce82b926a4c138e6e0bacfcd1d5572c3e380
Author: Matthias Springer <me at m-sp.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/ReconcileUnrealizedCasts/reconcile-unrealized-casts.mlir
M mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/atomic-rmw-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
Log Message:
-----------
[mlir][Transforms] Fix crash in `reconcile-unrealized-casts` (#158067)
The `reconcile-unrealized-casts` pass used to crash when the input
contains circular chains of `unrealized_conversion_cast` ops.
Furthermore, the `reconcileUnrealizedCasts` helper functions used to
erase ops that were not passed via the `castOps` operand. Such ops are
now preserved. That's why some integration tests had to be changed.
Also avoid copying the set of all unresolved materializations in
`convertOperations`.
This commit is in preparation of turning `RewriterBase::replaceOp` into
a non-virtual function.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: e8f61801c6237e56b3d69190af7a7acfdcede1e8
https://github.com/llvm/llvm-project/commit/e8f61801c6237e56b3d69190af7a7acfdcede1e8
Author: Christopher Di Bella <cjdb at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/include/__split_buffer
M libcxx/include/__vector/vector.h
M libcxx/include/deque
M libcxx/test/libcxx/type_traits/is_replaceable.compile.pass.cpp
M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
M lldb/examples/synthetic/libcxx.py
Log Message:
-----------
[libcxx] adds size-based `__split_buffer` representation to unstable ABI (#139632)
**tl;dr** We can significantly improve the runtime performance of
`std::vector` by changing its representation from three pointers to one
pointer and two integers. This document explains the details of this
change, along with the justifications for making it. See the [RFC] for
more information.
`vector` depends on `__split_buffer` for inserting elements. Changing
`__split_buffer` to match `vector`'s representation simplifies the
model, as it eliminates the need to convert between two different
representations of a contiguous buffer in the same configuration of
libc++.
[RFC]: https://discourse.llvm.org/t/adding-a-size-based-vector-to-libc-s-unstable-abi/86306
---------
Co-authored-by: Jorge Gorbe Moya <jgorbe at google.com>
Commit: 13547a9a777790ea05058e37c63b134e425fc8c2
https://github.com/llvm/llvm-project/commit/13547a9a777790ea05058e37c63b134e425fc8c2
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Turn IsStrictlyStructuredBlock into utility function,… (#158111)
… NFC
Commit: cdd54ff927e0207a3e65bade576e3c2511112953
https://github.com/llvm/llvm-project/commit/cdd54ff927e0207a3e65bade576e3c2511112953
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M flang/include/flang/Lower/OpenMP/Clauses.h
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Parser/OpenMP/replayable-clause.f90
A flang/test/Parser/OpenMP/transparent-clause.f90
A flang/test/Semantics/OpenMP/replayable-clause.f90
A flang/test/Semantics/OpenMP/transparent-clause.f90
M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[flang][OpenMP] Frontend support for REPLAYABLE and TRANSPARENT clauses (#158149)
Parsing and semantic checks.
Commit: b39da343a2cb958016d37081e3fc3b0cfe5cb2ab
https://github.com/llvm/llvm-project/commit/b39da343a2cb958016d37081e3fc3b0cfe5cb2ab
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/ReconcileUnrealizedCasts/reconcile-unrealized-casts.mlir
M mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/atomic-rmw-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
Log Message:
-----------
Revert "[mlir][Transforms] Fix crash in `reconcile-unrealized-casts`" (#158295)
Reverts llvm/llvm-project#158067
Buildbot is broken.
Commit: 1a746b6ca3862165360c48fff5d807d5b400b541
https://github.com/llvm/llvm-project/commit/1a746b6ca3862165360c48fff5d807d5b400b541
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
M mlir/lib/Target/SPIRV/Deserialization/Deserializer.h
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.cpp
M mlir/lib/Target/SPIRV/Serialization/Serializer.h
A mlir/test/Target/SPIRV/graph-ops.mlir
Log Message:
-----------
[mlir][spirv] Add support for SPV_ARM_graph extension - part 2 (#156665)
This is the second patch to add support for the `SPV_ARM_graph` SPIR-V
extension to MLIR’s SPIR-V dialect. The extension introduces a new
`Graph` abstraction for expressing dataflow computations over full
resources.
The part 2 implementation includes:
- Serialization and deserialization support for:
- `OpGraphARM`, `OpGraphInputARM`, `OpGraphSetOutputARM`,
`OpGraphEndARM`
- `OpGraphEntryPointARM`, `OpGraphConstantARM`, `OpTypeGraphARM`
- Tests covering binary round-tripping.
Graphs currently support only `SPV_ARM_tensors`, but are designed to
generalize to other resource types, such as images.
Spec: https://github.com/KhronosGroup/SPIRV-Registry/pull/346
RFC:
https://discourse.llvm.org/t/rfc-add-support-for-spv-arm-graph-extension-in-mlir-spir-v-dialect/86947
---------
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 248ad71747e0e0f49876e7d95905219822f400a6
https://github.com/llvm/llvm-project/commit/248ad71747e0e0f49876e7d95905219822f400a6
Author: Amina Chabane <amina.chabane at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/test/CodeGen/AArch64/fprcvt-cvtf.ll
Log Message:
-----------
[AArch64] Correct SCVTF/UCVTF instructions for vector input (#152974)
This pull request improves support for scalar floating-point conversions
from integer vectors on AArch64, specifically for the `scvtf` and
`ucvtf` instructions. It fixes pattern matching so that single-element
conversions from vectors now generate the expected scalar instructions
and adds a new test to verify correct behavior for extracting a lane
from a widened vector.
**Pattern matching and code generation improvements:**
* Added new patterns in `AArch64InstrInfo.td` to correctly match
conversions from `v2i32` to `v1f64` using `scvtf` and `ucvtf`, ensuring
the scalar instructions (`scvtf d0, s0` and `ucvtf d0, s0`) are
generated when extracting a single lane.
**Test updates and additions:**
* Updated `scvtf_f64i32_simple` and `ucvtf_f64i32_simple` tests in
`fprcvt-cvtf.ll` to reflect the correct generation of scalar
instructions, removing previous comments about incorrect codegen and
showing the expected output.
* Added a new test `uitofp_sext_v2i32_extract_lane0` to verify correct
code generation when extracting a lane from a widened vector and
converting to double.
Commit: 8036edb21dbedf79687613caef3d40aa5a50ddf2
https://github.com/llvm/llvm-project/commit/8036edb21dbedf79687613caef3d40aa5a50ddf2
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
M mlir/test/Dialect/SPIRV/IR/target-and-abi.mlir
M mlir/test/Dialect/SPIRV/Transforms/abi-interface.mlir
Log Message:
-----------
[mlir][spirv] Add support for SPV_ARM_graph extension - part 3 (#156845)
This is the third patch to add support for the `SPV_ARM_graph` SPIR-V
extension to MLIR’s SPIR-V dialect. The extension introduces a new
`Graph` abstraction for expressing dataflow computations over full
resources.
The part 3 implementation includes:
- ABI lowering support for graph entry points via
`LowerABIAttributesPass`.
- Tests covering ABI handling.
Graphs currently support only `SPV_ARM_tensors`, but are designed to
generalize to other resource types, such as images.
Spec: https://github.com/KhronosGroup/SPIRV-Registry/pull/346
RFC:
https://discourse.llvm.org/t/rfc-add-support-for-spv-arm-graph-extension-in-mlir-spir-v-dialect/86947
---------
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: acd08993b2ab7e5d64a7932fb5b4630f51eedc72
https://github.com/llvm/llvm-project/commit/acd08993b2ab7e5d64a7932fb5b4630f51eedc72
Author: Abhinav Pappu <53156924+abhinavp5 at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/Headers/f16cintrin.h
M clang/test/CodeGen/X86/f16c-builtins.c
Log Message:
-----------
[X86] Add F16C f16 -> f32 constexpr support (#158142)
Fixes #154310
Commit: da82d72a3dd986b90b179fda142114b540243213
https://github.com/llvm/llvm-project/commit/da82d72a3dd986b90b179fda142114b540243213
Author: Matthias Springer <me at m-sp.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Transforms/Utils/DialectConversion.cpp
M mlir/test/Conversion/ReconcileUnrealizedCasts/reconcile-unrealized-casts.mlir
M mlir/test/Integration/Dialect/MemRef/assume-alignment-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/atomic-rmw-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
M mlir/test/lib/Pass/TestVulkanRunnerPipeline.cpp
Log Message:
-----------
[mlir][Transforms] Fix crash in `reconcile-unrealized-casts` (#158298)
The `reconcile-unrealized-casts` pass used to crash when the input
contains circular chains of `unrealized_conversion_cast` ops.
Furthermore, the `reconcileUnrealizedCasts` helper functions used to
erase ops that were not passed via the `castOps` operand. Such ops are
now preserved. That's why some integration tests had to be changed.
Also avoid copying the set of all unresolved materializations in
`convertOperations`.
This commit is in preparation of turning `RewriterBase::replaceOp` into
a non-virtual function.
This is a re-upload of #158067, which was reverted due to CI failures.
Note for LLVM integration: If you are seeing tests that are failing with
`error: LLVM Translation failed for operation:
builtin.unrealized_conversion_cast`, you may have to add the
`-reconcile-unrealized-casts` pass to your pass pipeline. (Or switch to
the `-convert-to-llvm` pass instead of combining the various
`-convert-*-to-llvm` passes.)
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 50f539c858aa4d7e71d9b5d5d7da7c30ffaf4bea
https://github.com/llvm/llvm-project/commit/50f539c858aa4d7e71d9b5d5d7da7c30ffaf4bea
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/IR/Remarks.h
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/lib/IR/Remarks.cpp
M mlir/lib/Tools/mlir-opt/CMakeLists.txt
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
A mlir/test/Pass/remarks.mlir
M mlir/test/lib/Pass/CMakeLists.txt
A mlir/test/lib/Pass/TestRemarksPass.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
M mlir/unittests/IR/CMakeLists.txt
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
[MLIR] Add remark flags to mlir-opt (#156825)
Commit: 179f01b800e29b38f7d97c043ff331d4f202a12a
https://github.com/llvm/llvm-project/commit/179f01b800e29b38f7d97c043ff331d4f202a12a
Author: Brandon Kirincich <44515121+BrandonKi at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/docs/Tutorials/transform/Ch0.md
Log Message:
-----------
Fix MLIR Transform Tutorial Doc (#155285)
Fixes a small issue I noticed while reading through the tutorial.
Commit: 889c289a409eea443cc5eba54d68cc6a3161be07
https://github.com/llvm/llvm-project/commit/889c289a409eea443cc5eba54d68cc6a3161be07
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/branch-fold-threshold.ll
M llvm/test/Transforms/SimplifyCFG/branch-fold.ll
M llvm/test/Transforms/SimplifyCFG/preserve-branchweights.ll
Log Message:
-----------
[SimplfyCFG] Set `MD_prof` for `select` used for certain conditional simplifications (#154426)
There’s a pattern where a branch is conditioned on a conjunction or disjunction that ends up being modeled as a `select` where the first operand is set to `true` or the second to `false`. If the branch has known branch weights, they can be copied to the `select`. This is worth doing in case later the `select` gets transformed to something else (i.e. if we know the profile, we should propagate it).
Issue #147390
Commit: b22a97d9d28ad25ecf7c28c0b11e9bfca52923a5
https://github.com/llvm/llvm-project/commit/b22a97d9d28ad25ecf7c28c0b11e9bfca52923a5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/HashBuilder.h
Log Message:
-----------
[Support] Merge two implementations of addRangeElementsImpl (NFC) (#158212)
This patch uses "constexpr if" to merge two implementations of
addRangeElementsImpl. While the line count does not change much, the
"if" condition should be a lot more readable than in std::enable_if.
Commit: 0d7f66d49cd80c5c688433427c74ae9b32e818f7
https://github.com/llvm/llvm-project/commit/0d7f66d49cd80c5c688433427c74ae9b32e818f7
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/Sema/HeuristicResolver.cpp
Log Message:
-----------
[Sema] Use llvm::is_contained instead of llvm::all_of (NFC) (#158213)
The code in question uses llvm::all_of and llvm::identity to see if
every pointer is nonnull:
Ptr1 && Ptr2 && Ptr3 && ...
This patch simplifies the expression by checking for the absence of
nullptr with !llvm::is_contained.
Commit: 43906cb0867383b32781b7647f5b1bec7109ddfe
https://github.com/llvm/llvm-project/commit/43906cb0867383b32781b7647f5b1bec7109ddfe
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/docs/ConvergentOperations.rst
Log Message:
-----------
[llvm] Proofread ConvergentOperations.rst (#158214)
Commit: b0cb4e17e6ee362bbd8311adf2da7f3acb625fee
https://github.com/llvm/llvm-project/commit/b0cb4e17e6ee362bbd8311adf2da7f3acb625fee
Author: dyung <douglas.yung at sony.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/tests/diff-test-update.py
Log Message:
-----------
Fix test on Windows by telling diff to ignore Windows-specific line endings. (#158297)
Should fix bot: https://lab.llvm.org/buildbot/#/builders/46/builds/23206
Commit: b2521ae01c3ae777c088960e0edbc4cf417f6dbb
https://github.com/llvm/llvm-project/commit/b2521ae01c3ae777c088960e0edbc4cf417f6dbb
Author: Matthias Springer <me at m-sp.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/IR/Remarks.cpp
Log Message:
-----------
[mlir][IR] Fix build error with gcc-7 (#158305)
Fix build after #156825.
Commit: af53104fa4cc104b678b8cd204fcffc2680871c8
https://github.com/llvm/llvm-project/commit/af53104fa4cc104b678b8cd204fcffc2680871c8
Author: Karlo Basioli <basioli at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
Fix bazel build issue - from #158298 (#158307)
Commit: 04320c0d24350d2e76e2ea4c94f05ca2bad9c736
https://github.com/llvm/llvm-project/commit/04320c0d24350d2e76e2ea4c94f05ca2bad9c736
Author: Matthias Springer <me at m-sp.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir][Transforms][NFC] Remove `reconcileUnrealizedCasts` forward-declaration (#158291)
This is a follow-up to
https://github.com/llvm/llvm-project/pull/158067/files#r2343711946.
Commit: 6c11130bcd4cb636e13d55d2df7f6072069bbe07
https://github.com/llvm/llvm-project/commit/6c11130bcd4cb636e13d55d2df7f6072069bbe07
Author: Karlo Basioli <basioli at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build issue - caused in #156825 (#158313)
Commit: 149f91bad66972ad8bf0add5c79bf74055f6905a
https://github.com/llvm/llvm-project/commit/149f91bad66972ad8bf0add5c79bf74055f6905a
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M compiler-rt/lib/builtins/aarch64/sme-abi.S
Log Message:
-----------
[compiler-rt][AArch64] Don't use x18 in __arm_sme_save (#157802)
The AAPCS recommends avoiding the use of x18 as it may be used for other
purposes such as a shadow call stack.
In this particular case it could just as well use x16 instead.
Commit: be587941c22f16df6fb2053cc06cf91c5a378613
https://github.com/llvm/llvm-project/commit/be587941c22f16df6fb2053cc06cf91c5a378613
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/Maintainers.md
Log Message:
-----------
[mlir] Self-nominate for arith dialect maintenance (#157355)
Following https://llvm.org/docs/DeveloperPolicy.html#maintainers, I'd
like to self-nominate for arith dialect maintenance.
As per the policy:
> Maintainers are volunteering to take on the following shared
responsibilities within an area of a project:
> ...
I believe I've been already performing most of the maintenance duties
over the past few years, including direct code contributions, code
reviews, and both starting and participating in relevant RFCs on
discourse. You can look those up with:
* `git log --author=Jakub --oneline --
'mlir/include/mlir/Dialect/Arith*' 'mlir/lib/Dialect/Arith*'`
*
https://github.com/llvm/llvm-project/pulls?q=is%3Apr+label%3Amlir%3Aarith+reviewed-by%3Akuhar
* Some notable RFCs authored:
https://discourse.llvm.org/t/rfc-define-precise-arith-semantics/65507,
https://discourse.llvm.org/t/rfc-poison-semantics-for-mlir/66245,
https://discourse.llvm.org/t/rfc-arith-add-extended-multiplication-ops/66869,
https://discourse.llvm.org/t/rfc-add-integer-add-with-carry-op-to-arith/64573,
https://discourse.llvm.org/t/rfc-arith-should-we-support-scalar-vector-arith-bitcast-s/65427.
In addition to the `core` category maintainers, I can bring additional
perspective as I care both about conversion to llvm (as a user) and to
spirv (as a maintainer).
Commit: 7ebfcbd0ec525810d3874b5826ac1cb53f14c6e4
https://github.com/llvm/llvm-project/commit/7ebfcbd0ec525810d3874b5826ac1cb53f14c6e4
Author: Jeaye Wilkerson <contact at jeaye.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/include/clang/Interpreter/Interpreter.h
M clang/lib/Interpreter/Interpreter.cpp
Log Message:
-----------
Allow for custom code model in clang::Interpreter (#156977)
This is necessary when using ASan, since the larger code size will lead
to errors such as:
```
JIT session error: In graph clojure_core-clojure.core$clojure_core_cpp_cast_24538-24543-jitted-objectbuffer, section .eh_frame: relocation target 0x7bffe374b000 (DW.ref.__gxx_personality_v0) is out of range of Delta32 fixup at address 0x7bffe374b000 (<anonymous block> @ 0x7fffebf48158 + 0x13)
```
Previously, `clang::Interpreter` would hard-code the usage of a small
code model. With this change, we default to small, but allow for custom
values. This related to #102858 and #135401.
There is no change to default behavior here.
@lhames for review.
Commit: ead4f3e271fdf6918aef2ede3a7134811147d276
https://github.com/llvm/llvm-project/commit/ead4f3e271fdf6918aef2ede3a7134811147d276
Author: Matthew Devereau <matthew.devereau at arm.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
A llvm/test/Transforms/InstCombine/get_active_lane_mask.ll
Log Message:
-----------
[InstCombine] Canonicalize active lane mask params (#158065)
Rewrite active lane mask intrinsics to begin their range from 0 when
both parameters are constant integers.
Commit: ed1f1b88e49b244658aebc8a48dc8cd458363e70
https://github.com/llvm/llvm-project/commit/ed1f1b88e49b244658aebc8a48dc8cd458363e70
Author: Alex Trotta <44127594+Ahajha at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/WORKSPACE
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
Revert "[bazel][mlir][python] Port #155741: stub auto-generation (#157173)" (#157995)
This reverts commit 46d8fdd86ec79ba241b0db6c7fedc835902bc960.
The whole set of commits got reverted in
https://github.com/llvm/llvm-project/pull/157831, reverting this one
too.
Commit: b8eaceb39b0b2e4f6493decbee2b66e239e720e9
https://github.com/llvm/llvm-project/commit/b8eaceb39b0b2e4f6493decbee2b66e239e720e9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/vplan-predicate-switch.ll
Log Message:
-----------
[VPlan] Explicitly replicate VPInstructions by VF. (#155102)
Extend replicateByVF added in #142433 (aa240293190) to also explicitly
unroll replicating VPInstructions.
Now the only remaining case where we replicate for all lanes is
VPReplicateRecipes in replicate regions.
PR: https://github.com/llvm/llvm-project/pull/155102
Commit: 2491dc3d6fa6f5e7474fbdac28a8eefdeba52d49
https://github.com/llvm/llvm-project/commit/2491dc3d6fa6f5e7474fbdac28a8eefdeba52d49
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[Utils] Fix a warning
This patch fixes:
llvm/lib/Transforms/Utils/SimplifyCFG.cpp:338:6: error: unused
function 'isSelectInRoleOfConjunctionOrDisjunction'
[-Werror,-Wunused-function]
Commit: c45aa5c764ffcd1f0a4ce9f006f266d664ea6f19
https://github.com/llvm/llvm-project/commit/c45aa5c764ffcd1f0a4ce9f006f266d664ea6f19
Author: Vedant Paranjape <vedantparanjape160201 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/fold-fadd-with-zero-gh154238.ll
Log Message:
-----------
[InstCombine] Revert FSub optimization from #157757 (#158315)
Since FSub X, 0 gets canoncialised to FAdd X, -0 the said optimization
didn't make much sense for FSub. Remove it from IC and the adjoined
testcase.
Commit: 5d088ba30440d37f180f6b2e2f2fcc25d5c77018
https://github.com/llvm/llvm-project/commit/5d088ba30440d37f180f6b2e2f2fcc25d5c77018
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/include/lldb/Target/StackID.h
M lldb/source/API/SBFrame.cpp
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StackID.cpp
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/Makefile
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/TestArmPointerMetadataCFADwarfExpr.py
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/main.s
Log Message:
-----------
[lldb] Track CFA pointer metadata in StackID (#157498)
[lldb] Track CFA pointer metadata in StackID
In this commit:
9c8e71644227 [lldb] Make StackID call Fix{Code,Data} pointers (#152796)
We made StackID keep track of the CFA without any pointer metadata in
it. This is necessary when comparing two StackIDs to determine which one
is "younger".
However, the CFA inside StackIDs is also used in other contexts through
the method StackID::GetCallFrameAddress. One notable case is
DWARFExpression: the computation of `DW_OP_call_frame_address` is done
using StackID. This feeds into many other places, e.g. expression
evaluation may require the address of a variable that is computed from
the CFA; to access the variable without faulting, we may need to
preserve the pointer metadata. As such, StackID must be able to provide
both versions of the CFA.
In the spirit of allowing consumers of pointers to decide what to do
with pointer metadata, this patch changes StackID to store both versions
of the cfa pointer. Two getter methods are provided, and all call sites
except DWARFExpression preserve their existing behavior (stripped
pointer). Other alternatives were considered:
* Just store the raw pointer. This would require changing the
comparisong operator `<` to also receive a Process, as the comparison
requires stripped pointers. It wasn't clear if all call-sites had a
non-null process, whereas we know we have a process when creating a
StackID.
* Store a weak pointer to the process inside the class, and then strip
metadata as needed. This would require a `weak_ptr::lock` in many
operations of LLDB, and it felt wasteful. It also prevents stripping
of the pointer if the process has gone away.
This patch also changes RegisterContextUnwind::ReadFrameAddress, which
is the method computing the CFA fed into StackID, to also preserve the
signature pointers.
Commit: 9b0d7ddb04665e76cfa90b5d69c6183b90772243
https://github.com/llvm/llvm-project/commit/9b0d7ddb04665e76cfa90b5d69c6183b90772243
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[mlir][xegpu] Add support for `vector.multi_reduction` and `vector.shape_cast` SIMT distribution. (#157560)
Add support for distributing the `vector.multi_reduction` operation
across lanes in a warp. Currently only 2D to 1D reductions are
supported. Given layouts for the source and accumulator vectors,
* If the reduction dimension is distributed across lanes, the reduction
is non-lane-local and the reduction is done using warp shuffles. Here we
simply rewrite the `MultiDimReductionOp` to a sequence of `ReductionOp`s
inside the warp op body. Actual distribution will be done by
`WarpOpReduction` pattern.
* If the reduction dimension is not distributed across lanes, the
reduction is lane-local. In this case, we yield the source and
accumulator vectors from the warp op and perform the lane-local
reduction outside the warp op using a sequence of `ReductionOp`s.
PR also adds support for distributing `vector.shape_cast` based on
layouts.
Commit: f3b712f6e4e9afed735962c6b96e0a2cadb03dc1
https://github.com/llvm/llvm-project/commit/f3b712f6e4e9afed735962c6b96e0a2cadb03dc1
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Pass/Pass.cpp
Log Message:
-----------
[MLIR] Add debug log to the pass manager (NFC) (#156205)
Commit: 04d38bed70698d8591b3ac7b6b13635b1e894c5a
https://github.com/llvm/llvm-project/commit/04d38bed70698d8591b3ac7b6b13635b1e894c5a
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/test/C/C11/n1285_1.c
M clang/test/C/C2y/n3254.c
M clang/test/CodeGen/AArch64/fp8-init-list.c
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
M clang/test/CodeGen/LoongArch/lasx/builtin.c
M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-globals.c
M clang/test/CodeGen/SystemZ/builtins-systemz-i128.c
M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-16Al.c
M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-8Al.c
M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
M clang/test/CodeGen/SystemZ/zvector2.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
M clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by-pr110385.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/builtin-maxnum-minnum.c
M clang/test/CodeGen/cleanup-destslot-simple.c
M clang/test/CodeGen/isfpclass.c
M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
M clang/test/CodeGen/math-libcalls-tbaa.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
M clang/test/CodeGenCXX/cfi-mfcall-nomerge.cpp
M clang/test/CodeGenCXX/inline-then-fold-variadics.cpp
M clang/test/CodeGenCXX/load-reference-metadata.cpp
M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-async-load-store-lds.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
M clang/test/DebugInfo/Generic/unsigned-promotion-debuginfo.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/wasm.c
M clang/test/OpenMP/bug54082.c
M clang/test/OpenMP/bug56913.c
M clang/test/OpenMP/bug57757.cpp
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
Log Message:
-----------
[clang] Regenerate test checks including TBAA semantics (NFC)
Tests exercizing TBAA metadata (both purposefully and not), and
previously generated via UTC, have been regenerated and updated
to version 6.
Commit: 6885950931b8dd7a8c956bc1f3e8b8ac52dff8d2
https://github.com/llvm/llvm-project/commit/6885950931b8dd7a8c956bc1f3e8b8ac52dff8d2
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info-with-multiple-predecessors.ll
Log Message:
-----------
[SCEV] Fix a hang introduced by collectForPHI (#158153)
If we have a phi where one of it's source blocks is an unreachable
block, we don't want to traverse back into the unreachable region. Doing
so allows e.g. finding a trivial self loop when walking back the
predecessor chain.
Commit: bd7c2f15e8b9ff09cd415e7f8d01117cb0296e6e
https://github.com/llvm/llvm-project/commit/bd7c2f15e8b9ff09cd415e7f8d01117cb0296e6e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PointerIntPair.h
Log Message:
-----------
[ADT] Simplify PointerBitMask in PointerIntPair.h (NFC) (#158210)
A left shift of (uintptr_t)-1) is simpler.
Commit: 615d07ea55ea57afab0205aa739239070448a038
https://github.com/llvm/llvm-project/commit/615d07ea55ea57afab0205aa739239070448a038
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/lit/builtin_commands/_launch_with_limit.py
A llvm/utils/lit/tests/Inputs/shtest-ulimit/lit.cfg
A llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
A llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit-bad-arg.txt
A llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit_okay.txt
A llvm/utils/lit/tests/shtest-ulimit.py
Log Message:
-----------
[lit] Implement ulimit builtin
This patch implements ulimit inside the lit internal shell.
Implementation wise, this functions similar to umask. But instead of
setting the limits within the lit test worker process, we set
environment variables and add a wrapper around the command to be
executed. The wrapper then sets the limits. This is because we cannot
increase the limits after lowering them, so we would otherwise end up
with a lit test worker stuck with a lower limit.
There are several tests where the use of ulimit is essential to the
semantics of the test (two in clang, ~7 in compiler-rt), so we need to
implement this in order to switch on the internal shell by default
without losing test coverage.
Reviewers: cmtice, petrhosek, ilovepi
Reviewed By: cmtice, ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/157958
Commit: ba9d1c41c41d568a798e0a8c38a89d294647c28d
https://github.com/llvm/llvm-project/commit/ba9d1c41c41d568a798e0a8c38a89d294647c28d
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/TemplateName.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Sema/HeuristicResolver.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ASTTypeTraits.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/TemplateName.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
M clang/lib/Sema/HeuristicResolver.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp
M clang/lib/Tooling/Syntax/BuildTree.cpp
M clang/test/AST/ast-dump-templates.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[clang] AST: remove DependentTemplateSpecializationType (#158109)
A DependentTemplateSpecializationType (DTST) is basically just a
TemplateSpecializationType (TST) with a hardcoded DependentTemplateName
(DTN) as its TemplateName.
This removes the DTST and replaces all uses of it with a TST, removing a
lot of duplication in the implementation.
Technically the hardcoded DTN is an optimization for a most common case,
but the TST implementation is in better shape overall and with other
optimizations, so this patch ends up being an overall performance
positive:
<img width="1465" height="38" alt="image"
src="https://github.com/user-attachments/assets/084b0694-2839-427a-b664-eff400f780b5"
/>
A DTST also didn't allow a template name representing a DTN that was
substituted, such as from an alias template, while the TST does allow it
by the simple fact it can hold an arbitrary TemplateName, so this patch
also increases the amount of sugar retained, while still being faster
overall.
Example (from included test case):
```C++
template<template<class> class TT> using T1 = TT<int>;
template<class T> using T2 = T1<T::template X>;
```
Here we can now represent in the AST that `TT` was substituted for the
dependent template name `T::template X`.
Commit: a848008e1996f8934dee0a297975ac0e6b4200ec
https://github.com/llvm/llvm-project/commit/a848008e1996f8934dee0a297975ac0e6b4200ec
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
Log Message:
-----------
[lldb] Fixed UB in CPlusPlusLanguage plug-in (#158304)
C++11 allows the use of Universal Character Names (UCNs) in identifiers,
including function names.
According to the spec the behavior of std::isalpha(ch) and
std::isalnum(ch) is undefined if the argument's value is neither
representable as unsigned char nor equal to EOF. To use these functions
safely with plain chars (or signed chars), the argument should first be
converted to unsigned char.
Commit: d75b837ff4c27c8ab39a11a50ff64db3687503a7
https://github.com/llvm/llvm-project/commit/d75b837ff4c27c8ab39a11a50ff64db3687503a7
Author: Philip Reames <preames at rivosinc.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/select-zbb.ll
Log Message:
-----------
[RISCV] Support umin/umax in tryFoldSelectIntoOp (#157548)
The neutral values for these are -1U, and 0 respectively. We already
have good arithmetic lowerings for selects with one arm equal to these
values. smin/smax are a bit harder, and will be a separate change.
Somewhat surprisingly, this looks to be a net code improvement in all of
the configurations. With both zbb, it's a clear win. With only zicond,
we still seem to come out ahead because we reduce the number of ziconds
needed (since we lower min/max to them). Without either zbb or zicond,
we're a bit more of wash, but the available arithmetic sequences are
good enough that doing the select unconditionally before using branches
for the min/max is probably still worthwhile?
Commit: ea24d62f107667b36a01997ccd588531e837759b
https://github.com/llvm/llvm-project/commit/ea24d62f107667b36a01997ccd588531e837759b
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
Add table to track OpenMP 5.2 Support; Update status of task graph (#158322)
implementation;
Co-authored-by: Michael Klemm <michael.klemm at amd.com>
Commit: fd58f235f8c5bd40d98acfd8e7fb11d41de301c7
https://github.com/llvm/llvm-project/commit/fd58f235f8c5bd40d98acfd8e7fb11d41de301c7
Author: Reid Kleckner <rnk at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Transforms/LoopStrengthReduce/duplicated-phis.ll
Log Message:
-----------
Revert "[SCEV] Fold (C1 * A /u C2) -> A /u (C2 /u C1), if C2 > C1." (#158328)
Reverts llvm/llvm-project#157656
There are multiple reports that this is causing miscompiles in the MSan
test suite after bootstrapping and that this is causing miscompiles in
rustc. Let's revert for now, and work to capture a reproducer next week.
Commit: e5db36b604db35efe3bd3930a1f3a31bf30ef5ec
https://github.com/llvm/llvm-project/commit/e5db36b604db35efe3bd3930a1f3a31bf30ef5ec
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/test/PCH/leakfiles.test
M clang/test/SemaCXX/PR51712-large-array-constexpr-check-oom.cpp
Log Message:
-----------
[Clang] Port ulimit tests to work with internal shell
Now that ulimit is implemented for the internal shell, we can make sure
that the clang tests utilizing ulimit actually work. One just needs the
removal of its shell requirement while the other one needs some rework
to avoid bash for loops. These are writtein in Python for about the same
amount of complexity.
Reviewers: ilovepi, cmtice, AaronBallman, Sirraide, petrhosek
Reviewed By: ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/157977
Commit: 84f431c35b3fbd5b9c46608689f25a5d29bc0f55
https://github.com/llvm/llvm-project/commit/84f431c35b3fbd5b9c46608689f25a5d29bc0f55
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/MC/MCDwarf.cpp
A llvm/test/DebugInfo/ARM/stmt_seq_macho.test
M llvm/test/DebugInfo/X86/DW_AT_LLVM_stmt_seq_sec_offset.ll
M llvm/test/MC/ELF/debug-loc-label.s
Log Message:
-----------
[DebugLine] Correct debug line emittion (#157529)
### Context
#99710 introduced `.loc_label` so we can terminate a line sequence.
However, it did not advance PC properly. This is problematic for
1-instruction functions as it will have zero-length sequence. The test
checked in that PR shows the problem:
```
# CHECK-LINE-TABLE: Address Line Column File ISA Discriminator OpIndex Flags
# CHECK-LINE-TABLE-NEXT: ------------------ ------ ------ ------ --- ------------- ------- -------------
# CHECK-LINE-TABLE-NEXT: 0x00000028: 05 DW_LNS_set_column (1)
# CHECK-LINE-TABLE-NEXT: 0x0000002a: 00 DW_LNE_set_address (0x0000000000000000)
# CHECK-LINE-TABLE-NEXT: 0x00000035: 01 DW_LNS_copy
# CHECK-LINE-TABLE-NEXT: 0x0000000000000000 1 1 1 0 0 0 is_stmt
# CHECK-LINE-TABLE-NEXT: 0x00000036: 00 DW_LNE_end_sequence
# CHECK-LINE-TABLE-NEXT: 0x0000000000000000 1 1 1 0 0 0 is_stmt end_sequence
```
Both rows having PC 0x0 is incorrect, and parsers won't be able to parse
them. See more explanation why this is wrong in #154851.
### Design
This PR attempts to fix this by advancing the PC to the next available
Label, and advance to the end of the section if no Label is available.
### Implementation
- `emitDwarfLineEndEntry` will advance PC to the `CurrLabel`
- If `CurrLabel` is null, its probably a fake LineEntry we introduced in
#110192. In that case look for the next Label
- If still not label can be found, use `null` and
`emitDwarfLineEndEntry` is smart enough to advance PC to the end of the
section
- Rename `LastLabel` to `PrevLabel`, "last" can mean "previous" or
"final", this is ambigous.
- Updated the tests to emit a correct label.
### Note
This fix should render #154986 and #154851 obsolete, they were temporary
fixes and don't resolve the root cause.
---------
Signed-off-by: Peter Rong <PeterRong at meta.com>
Commit: 330068a74bfb6333f9016e3c4053eeaf4989d601
https://github.com/llvm/llvm-project/commit/330068a74bfb6333f9016e3c4053eeaf4989d601
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/TestRunner.py
R llvm/utils/lit/lit/builtin_commands/_launch_with_limit.py
R llvm/utils/lit/tests/Inputs/shtest-ulimit/lit.cfg
R llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
R llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit-bad-arg.txt
R llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit_okay.txt
R llvm/utils/lit/tests/shtest-ulimit.py
Log Message:
-----------
Revert "[lit] Implement ulimit builtin"
This reverts commit 615d07ea55ea57afab0205aa739239070448a038.
This was causing some MacOS buildbolt failures.
Commit: 8eba28bc8ce9447d09edda6fc79e2191a1669252
https://github.com/llvm/llvm-project/commit/8eba28bc8ce9447d09edda6fc79e2191a1669252
Author: Han-Chung Wang <hanhan0912 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tensor/Transforms/ReshapePatterns.cpp
Log Message:
-----------
[mlir][NFC] Correct pattern names to match the behaviors. (#158177)
It is a follow-up for
https://github.com/llvm/llvm-project/pull/131982#discussion_r2286014576
and
https://github.com/llvm/llvm-project/pull/126898#discussion_r2286013250.
The names do not match the behaviors, and the revision updates the
names.
Signed-off-by: hanhanW <hanhan0912 at gmail.com>
Commit: 370607065d65d4cd65bf455fcf2de12576d8e272
https://github.com/llvm/llvm-project/commit/370607065d65d4cd65bf455fcf2de12576d8e272
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/test/Analysis/TypeBasedAliasAnalysis/dse.ll
M llvm/test/Analysis/TypeBasedAliasAnalysis/gvn-nonlocal-type-mismatch.ll
M llvm/test/Analysis/TypeBasedAliasAnalysis/memcpyopt.ll
M llvm/test/Bitcode/upgrade-masked-keep-metadata.ll
M llvm/test/DebugInfo/unrolled-loop-remainder.ll
M llvm/test/Instrumentation/MemorySanitizer/vector-track-origins-neon.ll
M llvm/test/Instrumentation/TypeSanitizer/access-with-offset.ll
M llvm/test/Instrumentation/TypeSanitizer/anon.ll
M llvm/test/Instrumentation/TypeSanitizer/basic-nosan.ll
M llvm/test/Instrumentation/TypeSanitizer/basic.ll
M llvm/test/Instrumentation/TypeSanitizer/nosanitize.ll
M llvm/test/Transforms/ArgumentPromotion/reserve-tbaa.ll
M llvm/test/Transforms/Attributor/ArgumentPromotion/reserve-tbaa.ll
M llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll
M llvm/test/Transforms/GVN/PRE/load-pre-nonlocal.ll
M llvm/test/Transforms/GVN/PRE/preserve-tbaa.ll
M llvm/test/Transforms/GVN/pr33549.ll
M llvm/test/Transforms/GVN/pr64598.ll
M llvm/test/Transforms/GVN/tbaa.ll
M llvm/test/Transforms/GVNHoist/hoist-md.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll
M llvm/test/Transforms/InstCombine/alloca-cast-debuginfo.ll
M llvm/test/Transforms/InstCombine/load-no-aliasing.ll
M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
M llvm/test/Transforms/InstCombine/masked_intrinsics_keep_metadata.ll
M llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll
M llvm/test/Transforms/JumpThreading/ddt-crash3.ll
M llvm/test/Transforms/JumpThreading/thread-loads.ll
M llvm/test/Transforms/LICM/2011-04-06-PromoteResultOfPromotion.ll
M llvm/test/Transforms/LICM/pr50367.ll
M llvm/test/Transforms/LICM/scalar-promote.ll
M llvm/test/Transforms/LICM/variant-aainfo.ll
M llvm/test/Transforms/LoopIdiom/memmove-tbaa.ll
M llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/constantfolder-infer-correct-gepty.ll
M llvm/test/Transforms/LoopVectorize/metadata.ll
M llvm/test/Transforms/LoopVersioning/add-phi-update-users.ll
M llvm/test/Transforms/MergedLoadStoreMotion/preserve-store-metadata.ll
M llvm/test/Transforms/NewGVN/memory-handling.ll
M llvm/test/Transforms/NewGVN/pr31501.ll
M llvm/test/Transforms/NewGVN/pr33305.ll
M llvm/test/Transforms/NewGVN/pr33367.ll
M llvm/test/Transforms/NewGVN/pr34452.ll
M llvm/test/Transforms/NewGVN/preserve-metadata-for-predicate-replacements.ll
M llvm/test/Transforms/NewGVN/tbaa.ll
M llvm/test/Transforms/NewGVN/volatile-nonvolatile.ll
M llvm/test/Transforms/OpenMP/dead_use.ll
M llvm/test/Transforms/OpenMP/global_constructor.ll
M llvm/test/Transforms/OpenMP/spmdization.ll
M llvm/test/Transforms/OpenMP/spmdization_assumes.ll
M llvm/test/Transforms/OpenMP/spmdization_indirect.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/udotabd.ll
M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
M llvm/test/Transforms/PhaseOrdering/X86/SROA-after-final-loop-unrolling-2.ll
M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv-nounroll.ll
M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/32-bit.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/spillcost-di.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/store-ptr.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_scheduling-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/crash_scheduling.ll
M llvm/test/Transforms/SLPVectorizer/X86/metadata.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr16899.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr40522.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr47629.ll
M llvm/test/Transforms/SLPVectorizer/X86/pr49933.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_listcost.ll
M llvm/test/Transforms/SROA/tbaa-struct2.ll
M llvm/test/Transforms/SROA/tbaa-struct3.ll
M llvm/test/Transforms/SROA/tbaa-subload.ll
M llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll
M llvm/test/Transforms/Scalarizer/basic.ll
Log Message:
-----------
[llvm] Regenerate test checks including TBAA semantics (NFC)
Tests exercizing TBAA metadata (both purposefully and not), and
previously generated via UTC, have been regenerated and updated
to version 6.
Commit: 5fd3aad54c1be20c96fe407348604b4657ce53ab
https://github.com/llvm/llvm-project/commit/5fd3aad54c1be20c96fe407348604b4657ce53ab
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
M llvm/include/llvm/Support/DXILABI.h
M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinations.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable-AllValidFlagCombinationsV1.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-DescriptorTable.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootConstants.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor_V1.ll
M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers.ll
M llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.0.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-Descriptor1.1.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.0.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-DescriptorTable1.1.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-Invalid-StaticSamplersOffset.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-MultipleParameters.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-OptionalOffsets.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.0.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplerOffset1.1.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers-Defaults.yaml
M llvm/test/ObjectYAML/DXContainer/RootSignature-StaticSamplers.yaml
M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp
Log Message:
-----------
[DirectX] Updating Root Signature YAML representation to use Enums instead of uint (#154827)
This PR is updating Root Signature YAML to use enums, this is a required
change to remove the use of to_underlying from DirectXContainer binary
file.
Closes: [#150676](https://github.com/llvm/llvm-project/issues/150676)
Commit: 1a6b2b64b6fbbb33ce65ae27a3a9ded4545b48aa
https://github.com/llvm/llvm-project/commit/1a6b2b64b6fbbb33ce65ae27a3a9ded4545b48aa
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/examples/standalone/CMakeLists.txt
M mlir/examples/standalone/python/CMakeLists.txt
M mlir/examples/standalone/test/CMakeLists.txt
M mlir/examples/standalone/test/Standalone/standalone-pass-plugin.mlir
M mlir/examples/standalone/test/Standalone/standalone-plugin.mlir
M mlir/test/Examples/standalone/lit.local.cfg
M mlir/test/Examples/standalone/test.toy
M mlir/test/lit.site.cfg.py.in
Log Message:
-----------
[MLIR] enable Standalone example test for Windows (#158183)
This PR turns on all Standalone tests for Windows except for the plugins (which aren't enabled by default).
Commit: 6af94c566e3826de6b4a09518b78a48a1ffd92d3
https://github.com/llvm/llvm-project/commit/6af94c566e3826de6b4a09518b78a48a1ffd92d3
Author: Elvin Wang <elvin.wang at intel.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/IR/Intrinsics.cpp
M llvm/test/TableGen/intrinsic-attrs.td
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[IntrinsicEmitter] Make AttributesMap bits adaptive (#157965)
Make IntrinsicsToAttributesMap's func. and arg. fields be able to have
adaptive sizes based on input other than hardcoded 8bits/8bits.
This will ease the pressure for adding new intrinsics in private
downstreams.
func. attr bitsize will become 7(127/128) vs 8(255/256)
Commit: 4826039058aba304a874b07b67ecf59affa54a96
https://github.com/llvm/llvm-project/commit/4826039058aba304a874b07b67ecf59affa54a96
Author: Andrew Gontarek <agontarek at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/include/lldb/Utility/ArchSpec.h
M lldb/source/Utility/ArchSpec.cpp
Log Message:
-----------
[LLDB][NVIDIA] Add NVPTX architecture support (#158334)
- Introduced a new method `IsNVPTX()` in `ArchSpec` to check for NVPTX
architecture.
- Implemented the corresponding method in `ArchSpec.cpp` to utilize the
existing triple architecture checks.
Commit: ef7de8d1447c822dec72d685d85053216936b895
https://github.com/llvm/llvm-project/commit/ef7de8d1447c822dec72d685d85053216936b895
Author: choikwa <5455710+choikwa at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/waitcnt-unscoped.ll
Log Message:
-----------
[AMDGPU] Remove scope check in SIInsertWaitcnts::generateWaitcntInstBefore (#157821)
This change was motivated by CK where many VMCNT(0)'s were generated due
to instructions lacking !alias.scope metadata. The two causes of this
were:
1) LowerLDSModule not tacking on scope metadata on a single LDS variable
2) IPSCCP pass before inliner replacing noalias ptr derivative with a
global value, which made inliner unable to track it back to the noalias
ptr argument.
However, it turns out that IPSCCP losing the scope information was
largely ineffectual as ScopedNoAliasAA was able to handle asymmetric
condition, where one MemLoc was missing scope, and still return NoAlias
result.
AMDGPU however was checking for existence of scope in SIInsertWaitcnts
and conservatively treating it as aliasing all and inserted VMCNT(0)
before DS_READs, forcing it to wait for all previous LDS DMA
instructions.
Since we know that ScopedNoAliasAA can handle asymmetry, we should also
allow AA query to determine if two MIs may alias.
Passed PSDB.
Previous attempt to address the issue in IPSCCP, likely stalled:
https://github.com/llvm/llvm-project/pull/154522
This solution may be preferrable over that as issue only affects AMDGPU.
Commit: 1756b6e59cb1bbf78a9122c008ab0c6d413e1497
https://github.com/llvm/llvm-project/commit/1756b6e59cb1bbf78a9122c008ab0c6d413e1497
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
[bazel] Fix buildifier in tblgen.bzl (#158351)
Commit: aabf18d7184298566993e3141606cd79ff617d2d
https://github.com/llvm/llvm-project/commit/aabf18d7184298566993e3141606cd79ff617d2d
Author: David Blaikie <dblaikie at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/MC/MCDwarf.cpp
R llvm/test/DebugInfo/ARM/stmt_seq_macho.test
M llvm/test/DebugInfo/X86/DW_AT_LLVM_stmt_seq_sec_offset.ll
M llvm/test/MC/ELF/debug-loc-label.s
Log Message:
-----------
Revert "[DebugLine] Correct debug line emittion" (#158343)
Reverts llvm/llvm-project#157529
Sorry, I missed that the missed that the LLVM test was using clang -
layering dictates thats not OK. Please readjust the test case to work
like the existing test coverage (or perhaps the existing test coverage
is sufficient?) and post a new PR.
Commit: 9566388cbdefba183dadfb5e116ff7adde08cea5
https://github.com/llvm/llvm-project/commit/9566388cbdefba183dadfb5e116ff7adde08cea5
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
R .github/dependabot.yml
Log Message:
-----------
[Github] Delete dependabot config (#158337)
Dependabot cannot configure the branch prefix, which means it fails
everytime it tries to run because we only allow user/ branches.
This is in preparation for using Renovate which supports custom branch
prefixes and has other advantages, like the ability to run/get setup
without any assisstance from a repository admin unlike dependabot. This
makes it significantly more hackable for the rest of the community.
Commit: 01d85e73d9711315b59ca3c80f894ab314d2c055
https://github.com/llvm/llvm-project/commit/01d85e73d9711315b59ca3c80f894ab314d2c055
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Format/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/Format/BUILD.gn
Log Message:
-----------
[gn build] Port 220d705d2189d
Commit: d161d37dd3169a69cc07abd737d210f5073bac8f
https://github.com/llvm/llvm-project/commit/d161d37dd3169a69cc07abd737d210f5073bac8f
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/unittests/Core/BUILD.gn
Log Message:
-----------
[gn build] Port 8c0f3b6e8f8db
Commit: e1efb51080801575712069a0b17a1656b66e7dfe
https://github.com/llvm/llvm-project/commit/e1efb51080801575712069a0b17a1656b66e7dfe
Author: Peter Collingbourne <peter at pcc.me.uk>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/TargetParser/BUILD.gn
Log Message:
-----------
[gn build] Port f3efbce4a73c5
Commit: b5516dad6e18db91858449bfa96a5e1271568037
https://github.com/llvm/llvm-project/commit/b5516dad6e18db91858449bfa96a5e1271568037
Author: jtstogel <jtstogel at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/test/Verifier/llvm.loop.estimated_trip_count.ll
Log Message:
-----------
[PGO][test] Ensure test input is writeable after copying. (#158356)
This test errors when trying to append to the `%t` file when run in an
environment where the source tree is mounted read-only, since `cp`
preserves the read-only file permission.
Commit: 86bcd1c2b256cd6aa5e65e1a54b63f929d616464
https://github.com/llvm/llvm-project/commit/86bcd1c2b256cd6aa5e65e1a54b63f929d616464
Author: Jeff Niu <jeffniu22 at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
M mlir/test/Dialect/Arith/int-range-opts.mlir
Log Message:
-----------
[mlir][Intrange] Fix materializing ShapedType constant values (#158359)
When materializing integer ranges of splat tensors or vector as
constants, they should use DenseElementsAttr of the shaped type, not
IntegerAttrs of the element types, since this can violate the invariants
of tensor/vector ops.
Co-authored-by: Jeff Niu <jeffniu at openai.com>
Commit: f645d209d42c0d4ccb31d48c6663676098d7ec4d
https://github.com/llvm/llvm-project/commit/f645d209d42c0d4ccb31d48c6663676098d7ec4d
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M utils/bazel/WORKSPACE
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Add rules_shell for sh_binary rule (#158365)
This is required for the upcoming bazel 9.x release where this rule is
no longer automatically available.
Commit: b87f1b22a8d8a77d5360f201af5ba08adbb0a974
https://github.com/llvm/llvm-project/commit/b87f1b22a8d8a77d5360f201af5ba08adbb0a974
Author: Alan Li <me at alanli.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
M mlir/include/mlir/Interfaces/ParallelCombiningOpInterface.h
M mlir/include/mlir/Interfaces/ParallelCombiningOpInterface.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/Transforms/BufferDeallocationOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
M mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
M mlir/lib/Interfaces/ParallelCombiningOpInterface.cpp
M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir
M mlir/test/Dialect/SCF/invalid.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize-analysis.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize-tensor-copy-insertion.mlir
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[MLIR] Add `InParallelOpInterface` for parallel combining operations (#157736)
This commit:
- Introduces a new `InParallelOpInterface`, along with the
`ParallelCombiningOpInterface`, represent the parallel updating
operations we have in a parallel loop of `scf.forall`.
- Change the name of `ParallelCombiningOpInterface` to
`InParallelOpInterface` as the naming was quite confusing.
- `ParallelCombiningOpInterface` now is used to generalize operations
that insert into shared tensors within parallel combining regions.
Previously, only `tensor.parallel_insert_slice` was supported directly
in `scf.InParallelOp` regions.
- `tensor.parallel_insert_slice` now implements
`ParallelCombiningOpInterface`.
This change enables future extensions to support additional parallel
combining operations beyond `tensor.parallel_insert_slice`, which have
different update semantics, so the `in_parallel` region can correctly
and safely represent these kinds of operation without potential mistakes
such as races.
Author credits: @qedawkins
Commit: 7f2e9b17098f42c85ef469b029bb84ef4eea189c
https://github.com/llvm/llvm-project/commit/7f2e9b17098f42c85ef469b029bb84ef4eea189c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libcxx/include/__vector/vector.h
Log Message:
-----------
Revert "[libc++] Mark __{emplace,push}_back_slow_path as noinline (#94379)"
This reverts commit 1bafd020c7c80be476f211bc239ce43424f7e0ce.
This breaks the LLDB data formatters which means these failures show up
on every premerge run. Reverting for now until fixing the LLDB
formatters can be coordinated with a relanding.
Commit: 32620c58ac72727083d8ef310572970a8b11511d
https://github.com/llvm/llvm-project/commit/32620c58ac72727083d8ef310572970a8b11511d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/CMakeLists.txt
Log Message:
-----------
[lit] Add missing split-file dependency
There was a recent patch that added in some tests to the lit test suite
that use split-file. An explicit dependency in CMake was not added,
which led to check-lit not working if being run without doing a full
build first. This patch explicitly adds the dependency inside the CMake
file to fix this configuration.
Commit: 8e17f80908abd5a22acf962584371b71dffe6d15
https://github.com/llvm/llvm-project/commit/8e17f80908abd5a22acf962584371b71dffe6d15
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
Log Message:
-----------
[MLIR][XeGPU] Distribute vector.step & vector.shape_cast op from wg to sg (#155443)
This PR adds patterns to distribute vector.step and vector.shape_cast op
from wg to sg and it also enables constant, broadcast and elementwise
ops to handle the slice attribute
Commit: f019e2368b137371d248a7ddbe37f76466c2d44d
https://github.com/llvm/llvm-project/commit/f019e2368b137371d248a7ddbe37f76466c2d44d
Author: lntue <lntue at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libc/src/__support/CMakeLists.txt
M libc/src/__support/arg_list.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/float_dec_converter_limited.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/qsort_data.h
M libc/src/string/CMakeLists.txt
M libc/src/string/stpcpy.cpp
M libc/src/string/string_utils.h
M libc/src/wchar/CMakeLists.txt
M libc/src/wchar/wcpcpy.cpp
M libc/src/wchar/wcscpy.cpp
M libc/src/wchar/wmemcpy.cpp
M libc/src/wchar/wmempcpy.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Change __builtin_memcpy to inline_memcpy. (#158345)
Commit: 9e33997242800d49964bfbd056288cbb0cf073ed
https://github.com/llvm/llvm-project/commit/9e33997242800d49964bfbd056288cbb0cf073ed
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/IR/Instruction.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/test/Transforms/SimplifyCFG/PhiBlockMerge.ll
Log Message:
-----------
[IR] Add `MD_prof` to the `Keep` list of `dropUBImplyingAttrsAndMetadata` (#154635)
`MD_prof` is safe to keep when e.g. hoisting instructions.
Issue #147390
Commit: 8f25ea2d73d9a4a64e7ab26e6b1d7a8f73605713
https://github.com/llvm/llvm-project/commit/8f25ea2d73d9a4a64e7ab26e6b1d7a8f73605713
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/Local.cpp
Log Message:
-----------
[NFC] Leave a comment in `Local.cpp` about debug info & sample profiling (#155296)
Issue #152767
Commit: 0d4a615998a7d5a6ad1f2866e9f3276acfc70fc0
https://github.com/llvm/llvm-project/commit/0d4a615998a7d5a6ad1f2866e9f3276acfc70fc0
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/2004-09-20-BadLoadCombine2.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[InstCombine] Make test resilient to metadata presence (#157607)
Modernized it to using `update_test_checks` which addresses an ambgiuty
in the previous test formulation, where a profile metadaat of value `i32
1` would have (incorrectly matched.
Commit: 8ee31ab00b95fc58110956f8945b0232045e8d86
https://github.com/llvm/llvm-project/commit/8ee31ab00b95fc58110956f8945b0232045e8d86
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
Log Message:
-----------
[WebKit checkers] Treat function pointers with "Singleton" suffix as singleton. (#158012)
Commit: ba3bce0779fa195867aa804146c2ec24cfaf9976
https://github.com/llvm/llvm-project/commit/ba3bce0779fa195867aa804146c2ec24cfaf9976
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M .github/workflows/docs.yml
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[Github] Switch back to tj-actions/changed-files (#158335)
We were using the step security fork after the tj-actions/changed-files
supply chain attack given Github disabled the repo and all our actions
were failing during that time. Switch away from the fork back to the
main repository to avoid an extra level of indirection until we can
probably just stop using this action/roll our own.
Commit: 13eecf7f9f42dfded46d8feaa01bc77962d10845
https://github.com/llvm/llvm-project/commit/13eecf7f9f42dfded46d8feaa01bc77962d10845
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/condops.ll
Log Message:
-----------
[RISC] Use hasBEXTILike in useInversedSetcc and shouldFoldSelectWithSingleBitTest. (#158366)
Add hasVendorXTHeadCondMov to shouldFoldSelectWithSingleBitTest.
The optimizations in these functions is equally applicable to these.
I changed the RUN line for xtheadcondmove in condops.ll to use XTHeadBs
to get coverage of the hasBEXTILike changes. I didn't think it was
worth an additional RUN line and check prefix.
Commit: 1131e44ed3f5fadb2d22ff155d4e47f69757d02f
https://github.com/llvm/llvm-project/commit/1131e44ed3f5fadb2d22ff155d4e47f69757d02f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/test/CodeGen/RISCV/xcvbitmanip.ll
Log Message:
-----------
[RISCV] Use hasCPOPLike in isCtpopFast and getPopcntSupport (#158371)
Commit: 52c583b3f95a0e666ab837e39a5db900b66adf15
https://github.com/llvm/llvm-project/commit/52c583b3f95a0e666ab837e39a5db900b66adf15
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/ProfileData/SampleProf.h
M llvm/include/llvm/ProfileData/SampleProfReader.h
M llvm/include/llvm/ProfileData/SampleProfWriter.h
M llvm/lib/ProfileData/SampleProf.cpp
M llvm/lib/ProfileData/SampleProfReader.cpp
M llvm/lib/ProfileData/SampleProfWriter.cpp
A llvm/test/tools/llvm-profdata/Inputs/profile-symbol-list-ext.expected
A llvm/test/tools/llvm-profdata/Inputs/sample-profile-ext.proftext
M llvm/test/tools/llvm-profdata/profile-symbol-list-compress.test
M llvm/test/tools/llvm-profdata/profile-symbol-list.test
M llvm/test/tools/llvm-profdata/roundtrip.test
Log Message:
-----------
[SampleFDO][TypeProf]Support vtable type profiling for ext-binary and text format (#148002)
This change extends SampleFDO ext-binary and text format to record the
vtable symbols and their counts for virtual calls inside a function. The
vtable profiles will allow the compiler to annotate vtable types on IR
instructions and perform vtable-based indirect call promotion. An RFC is
in
https://discourse.llvm.org/t/rfc-vtable-type-profiling-for-samplefdo/87283
Given a function below, the before vs after of a function's profile is
illustrated in text format in the table:
```
__attribute__((noinline)) int loop_func(int i, int a, int b) {
Base *ptr = createType(i);
int sum = ptr->func(a, b);
delete ptr;
return sum;
}
```
| before | after |
| --- | --- |
| Samples collected in the function's body { <br> 0: 636241 <br> 1:
681458, calls: _Z10createTypei:681458 <br> 3: 543499, calls:
_ZN12_GLOBAL__N_18Derived24funcEii:410621 _ZN8Derived14funcEii:132878
<br> 5.1: 602201, calls: _ZN12_GLOBAL__N_18Derived2D0Ev:454635
_ZN8Derived1D0Ev:147566 <br> 7: 511057 <br> } | Samples collected in the
function's body { <br> 0: 636241 <br> 1: 681458, calls:
_Z10createTypei:681458 <br> 3: 543499, calls:
_ZN12_GLOBAL__N_18Derived24funcEii:410621 _ZN8Derived14funcEii:132878
<br> 3: vtables: _ZTV8Derived1:1377 _ZTVN12_GLOBAL__N_18Derived2E:4250
<br> 5.1: 602201, calls: _ZN12_GLOBAL__N_18Derived2D0Ev:454635
_ZN8Derived1D0Ev:147566 <br> 5.1: vtables: _ZTV8Derived1:227
_ZTVN12_GLOBAL__N_18Derived2E:765 <br> 7: 511057 <br> } |
Key points for this change:
1. In-memory representation of vtable profiles
* A field of type `map<LineLocation, map<FunctionId, uint64_t>>` is
introduced in a function's in-memory representation
[FunctionSamples](https://github.com/llvm/llvm-project/blob/ccc416312ed72e92a885425d9cb9c01f9afa58eb/llvm/include/llvm/ProfileData/SampleProf.h#L749-L754).
2. The vtable counters for one LineLocation represents the relative
frequency among vtables for this LineLocation. They are not required to
be comparable across LineLocations.
3. For backward compatibility of ext-binary format, we take one bit from
ProfSummaryFlag as illustrated in the enum class `SecProfSummaryFlags`.
The ext-binary profile reader parses the integer type flag and reads
this bit. If it's set, the profile reader will parse vtable profiles.
4. The vtable profiles are optional in ext-binary format, and not
serialized out by default, we introduce an LLVM boolean option (named
`-extbinary-write-vtable-type-prof`). The ext-binary profile writer
reads the boolean option and decide whether to set the section flag bit
and serialize the in-memory class members corresponding to vtables.
5. This change doesn't implement `llvm-profdata overlap --sample` for
the vtable profiles. A subsequent change will do it to keep this one
focused on the profile format change.
We don't plan to add the vtable support to non-extensible format mainly
because of the maintenance cost to keep backward compatibility for prior
versions of profile data.
* Currently, the [non-extensible binary
format](https://github.com/llvm/llvm-project/blob/5c28af409978c19a35021855a29dcaa65e95da00/llvm/lib/ProfileData/SampleProfWriter.cpp#L899-L900)
does not have feature parity with extensible binary format today, for
instance, the former doesn't support [profile symbol
list](https://github.com/llvm/llvm-project/blob/41e22aa31b1905aa3e9d83c0343a96ec0d5187ec/llvm/include/llvm/ProfileData/SampleProf.h#L1518-L1522)
or context-sensitive PGO, both of which give measurable performance
boost. Presumably the non-extensible format is not in wide use.
---------
Co-authored-by: Paschalis Mpeis <paschalis.mpeis at arm.com>
Commit: f32874f77b5a6065a705ffc35b48bff1545cd6cd
https://github.com/llvm/llvm-project/commit/f32874f77b5a6065a705ffc35b48bff1545cd6cd
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Log Message:
-----------
[LegalizeIntegerTypes] Use getShiftAmountConstant.
Commit: bac9e463b1f77b7354fe68c87d58be67e3294806
https://github.com/llvm/llvm-project/commit/bac9e463b1f77b7354fe68c87d58be67e3294806
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
Log Message:
-----------
[NFC][CodeGen][CFI] Extract CreateMetadataIdentifierForFnType (#158189)
For #158193
Commit: 8ac67aa8a9ef0012a619e1395a23a04cbea3abe9
https://github.com/llvm/llvm-project/commit/8ac67aa8a9ef0012a619e1395a23a04cbea3abe9
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[NFC][CFI][CodeGen] Move GeneralizeFunctionType out of CreateMetadataIdentifierGeneralized (#158190)
For #158193
Commit: 120d7475d35fc16b25c9d7c9b05e0ba44cca6449
https://github.com/llvm/llvm-project/commit/120d7475d35fc16b25c9d7c9b05e0ba44cca6449
Author: Alex Langford <alangford at apple.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/scripts/framework-header-fix.py
Log Message:
-----------
[lldb] Change directory creation logic in framework-header-fix (#158355)
It's possible for this logic to fail if the build system runs this
script in parallel. One instance could create the directory in between
another instance's checking of its existence and attempt at creation.
Instead, always try to create it and ignore any FileExistsErrors.
rdar://160120161
Commit: 9ac1f3420db82d7446449b8dd1e4ff07f93e7176
https://github.com/llvm/llvm-project/commit/9ac1f3420db82d7446449b8dd1e4ff07f93e7176
Author: Nirvedh Meshram <96096277+nirvedhmeshram at users.noreply.github.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
M mlir/test/Dialect/Linalg/data-layout-propagation.mlir
M mlir/test/lib/Dialect/Linalg/TestDataLayoutPropagation.cpp
Log Message:
-----------
[Linalg] Fix bug in control function logic of push down extract pattern (#158348)
Current logic just bails out if the first extract producer fails the
control function, this PR fixes that.
Signed-off-by: Nirvedh Meshram <nirvedh at gmail.com>
Commit: 1cbdb7370fd62b17762d1dfe19a471a70ae8b137
https://github.com/llvm/llvm-project/commit/1cbdb7370fd62b17762d1dfe19a471a70ae8b137
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/lit/builtin_commands/_launch_with_limit.py
A llvm/utils/lit/tests/Inputs/shtest-ulimit/lit.cfg
A llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
A llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit-bad-arg.txt
A llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit_okay.txt
A llvm/utils/lit/tests/shtest-ulimit.py
Log Message:
-----------
Reapply "[lit] Implement ulimit builtin"
This reverts commit 330068a74bfb6333f9016e3c4053eeaf4989d601.
This was causing some test failures on MacOS that are now fixed in the reland.
These failures were related to calling ulimit -v despite XNU not having support
for that option. This patch simply disables the test on non-Linux platforms for
now until we can have a Linux specific test for ulimit -v.
Commit: a5bff94ffd1b81a3562f02f05980ee87cc4164df
https://github.com/llvm/llvm-project/commit/a5bff94ffd1b81a3562f02f05980ee87cc4164df
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
Log Message:
-----------
[NFC][CodeGen][CFI] Add GeneralizePointers parameter to GeneralizeFunctionType (#158191)
For #158193
---------
Co-authored-by: Alex Langford <alangford at apple.com>
Commit: ba3b3e3ac812ae30f12f92ee8c4a1c668cd9817e
https://github.com/llvm/llvm-project/commit/ba3b3e3ac812ae30f12f92ee8c4a1c668cd9817e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/test/CodeGen/cfi-icall-generalize.c
M clang/test/CodeGen/cfi-icall-normalize2.c
M clang/test/CodeGen/kcfi-generalize.c
M clang/test/CodeGen/kcfi-normalize.c
Log Message:
-----------
[NFC][CodeGen][CFI] Pre-commit transparent_union tests (#158192)
For #158193
Commit: 9af4a854602804430dc04766ce1be311259707d6
https://github.com/llvm/llvm-project/commit/9af4a854602804430dc04766ce1be311259707d6
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
Log Message:
-----------
AMDGPU: Add test which shows unnecessary register alignment (#158168)
The b96 tr loads are a special case that does not require even
aligned VGPRs
Commit: 1180c2ced008e33b0a4b2b91b3cb24724f06147c
https://github.com/llvm/llvm-project/commit/1180c2ced008e33b0a4b2b91b3cb24724f06147c
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-hsa.ll
A llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-opt.ll
A llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
Log Message:
-----------
[AMDGPU] Support lowering of cluster related instrinsics (#157978)
Since many code are connected, this also changes how workgroup id is lowered.
Co-authored-by: Jay Foad <jay.foad at amd.com>
Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>
Commit: ffcaeca90a3c0965acace6645f775ab1d876fa6e
https://github.com/llvm/llvm-project/commit/ffcaeca90a3c0965acace6645f775ab1d876fa6e
Author: Afanasyev Ivan <ivafanas at gmail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/TailDuplicator.cpp
Log Message:
-----------
[CodeGen] Fix partial phi input removal in TailDuplicator. (#158265)
Tail duplicator removes the first PHI income from the predecessor basic
block, while it should remove all operands for this block.
PHI instructions happen to have duplicated values for the same
predecessor block:
* `UnreachableMachineBlockElim` assumes that PHI instruction might have
duplicates:
https://github.com/llvm/llvm-project/blob/7289f2cd0c371b2539faa628ec0eea58fa61892c/llvm/lib/CodeGen/UnreachableBlockElim.cpp#L160
* `AArch64` directly states that PHI instruction might have duplicates:
https://github.com/llvm/llvm-project/blob/7289f2cd0c371b2539faa628ec0eea58fa61892c/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp#L244
* And `Hexagon`:
https://github.com/llvm/llvm-project/blob/7289f2cd0c371b2539faa628ec0eea58fa61892c/llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp#L844
We have caught the bug on custom out-of-tree backend. `TailDuplicator`
should remove all operands corresponding to the removing block.
Please note, that bug likely does not affect in-tree backends, because:
* It happens only in scenario of **partial** tail duplication (i.e. tail
block is duplicated in some predecessors, but not in all of them)
* It happens in **Pre-RA** tail duplication only (Post-RA does not
contain PHIs, obviously)
* The only backend (I know) uses Pre-RA tail duplication is X86. It uses
tail duplication via `early-tailduplication` pass which declines partial
tail duplication via `canCompletelyDuplicateBB` check, because it uses
`TailDuplicator::tailDuplicateBlocks` public API.
So, bug happens only in the case of pre-ra partial tail duplication if
backend uses `TailDuplicator::tailDuplicate` public API directly.
That's why I can not add reproducer test for in-tree backends.
Commit: 7aad3830fb208771254b4ae63a01042744471091
https://github.com/llvm/llvm-project/commit/7aad3830fb208771254b4ae63a01042744471091
Author: lntue <lntue at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M libc/src/__support/endian_internal.h
M libc/src/__support/macros/config.h
M libc/src/string/memory_utils/CMakeLists.txt
M libc/src/string/memory_utils/op_generic.h
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/utils.h
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/LibcTest.h
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
Log Message:
-----------
[libc] Some MSVC compatibility changes for src/string/memory_utils. (#158393)
Commit: 0ca54d7738103f5ff352f7194b34a11aa4d5aea0
https://github.com/llvm/llvm-project/commit/0ca54d7738103f5ff352f7194b34a11aa4d5aea0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
Log Message:
-----------
[LegalizeTypes] Use getShiftAmountConstant in SplitInteger. (#158392)
This function contained old code for handling the case that the type
returned getScalarShiftAmountTy can't hold the shift amount.
These days this is handled by getShiftAmountTy which is used by
getShiftAmountConstant.
Commit: 004f209199d53a0c7a00ca7af4446407da4c9fb1
https://github.com/llvm/llvm-project/commit/004f209199d53a0c7a00ca7af4446407da4c9fb1
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/cfi-icall-generalize.c
M clang/test/CodeGen/cfi-icall-normalize2.c
M clang/test/CodeGen/kcfi-generalize.c
M clang/test/CodeGen/kcfi-normalize.c
Log Message:
-----------
[CodeGen][CFI] Generalize transparent union parameters (#158193)
According GCC documentation transparent union
calling convention is the same as the type of the
first member of the union.
C++ ignores attribute.
Note, it does not generalize args of function pointer args.
It's unnecessary with pointer generalization.
It will be fixed in followup patch.
---------
Co-authored-by: lntue <lntue at google.com>
Commit: 4ebd2023291d47402ecd170864df9ea541ea33ba
https://github.com/llvm/llvm-project/commit/4ebd2023291d47402ecd170864df9ea541ea33ba
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[LegalizeTypes][X86] Use getShiftAmountConstant in ExpandIntRes_SIGN_EXTEND. (#158388)
This ensures we don't need to fixup the shift amount later.
Unfortunately, this enabled the
(SRA (SHL X, ShlConst), SraConst) -> (SRA (sext_in_reg X), SraConst -
ShlConst) combine in combineShiftRightArithmetic for some cases in
is_fpclass-fp80.ll. So we need to also update checkSignTestSetCCCombine
to look through sign_extend_inreg to prevent a regression.
Commit: 4cbf4408e7d27786490bae933e45e1c3fe2011ec
https://github.com/llvm/llvm-project/commit/4cbf4408e7d27786490bae933e45e1c3fe2011ec
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Log Message:
-----------
[SelectionDAG] Use getShiftAmountConstant. (#158395)
Many of the shifts in LegalizeIntegerTypes.cpp were using getPointerTy.
Commit: 261000760fba7ab353962fbc1a74c194acd3e097
https://github.com/llvm/llvm-project/commit/261000760fba7ab353962fbc1a74c194acd3e097
Author: Med Ismail Bennani <ismail at bennani.ma>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M lldb/docs/.htaccess
M lldb/docs/use/python-reference.rst
R lldb/docs/use/python.rst
A lldb/docs/use/tutorials/accessing-documentation.md
A lldb/docs/use/tutorials/automating-stepping-logic.md
A lldb/docs/use/tutorials/breakpoint-triggered-scripts.md
A lldb/docs/use/tutorials/creating-custom-breakpoints.md
A lldb/docs/use/tutorials/custom-frame-recognizers.md
A lldb/docs/use/tutorials/extending-target-stop-hooks.md
A lldb/docs/use/tutorials/implementing-standalone-scripts.md
A lldb/docs/use/tutorials/python-embedded-interpreter.md
A lldb/docs/use/tutorials/script-driven-debugging.md
A lldb/docs/use/tutorials/writing-custom-commands.md
Log Message:
-----------
[lldb/docs] Breakdown python reference into multiple files (#158331)
This pages improve the LLDB website documentation readability and
discoverability by breaking down the very long python-reference page
into multiple subpages each explaining a specific topic.
The long term goal is to have tutorials for every scripting extension.
This also converts the pages to markdown, since it's easier to write.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
Commit: 0c3cf200f5b918fb5c1114e9f1764c2d54d1779b
https://github.com/llvm/llvm-project/commit/0c3cf200f5b918fb5c1114e9f1764c2d54d1779b
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-09-12 (Fri, 12 Sep 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
M llvm/test/Transforms/InstCombine/simplify-libcalls-new.ll
Log Message:
-----------
[MemProf] Optionally allow transformation of nobuiltin operator new (#158396)
For cases where we can guarantee the application does not override
operator new.
Commit: c642e2aa61c430ae597b0bd08e924339292e30e9
https://github.com/llvm/llvm-project/commit/c642e2aa61c430ae597b0bd08e924339292e30e9
Author: Abhinav Kumar <96587705+kr-2003 at users.noreply.github.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/include/clang/Interpreter/Interpreter.h
M clang/lib/Interpreter/IncrementalExecutor.cpp
M clang/lib/Interpreter/IncrementalExecutor.h
M clang/lib/Interpreter/Interpreter.cpp
M clang/unittests/Interpreter/CMakeLists.txt
A clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp
Log Message:
-----------
[clang-repl] Add support for running custom code in Remote JIT executor (#157358)
Introduce a custom lambda mechanism that allows injecting user-defined
code into the Remote JIT’s executor.
---------
Co-authored-by: kr-2003 <kumar.kr.abhinav at gmail.com>
Commit: 1dc4db8f1ec535adc663d781f9f3a39f78d78256
https://github.com/llvm/llvm-project/commit/1dc4db8f1ec535adc663d781f9f3a39f78d78256
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Relax verifier for agpr/vgpr loads and stores (#158391)
Commit: 2a3c9f917d4112d7d96be0f2efa9e97f0b4bb842
https://github.com/llvm/llvm-project/commit/2a3c9f917d4112d7d96be0f2efa9e97f0b4bb842
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
A clang/test/CIR/CodeGen/opaque.cpp
Log Message:
-----------
[CIR] Upstream VisitOpaqueValueExpr support for Complex & Scalar (#157331)
This change adds support for the OpaqueValueExpr for Complex & Scalar
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: cf9576d940ccd4fbe7d3fe0eef5cfdc9f693eade
https://github.com/llvm/llvm-project/commit/cf9576d940ccd4fbe7d3fe0eef5cfdc9f693eade
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/test/CIR/CodeGen/builtins-elementwise.c
A clang/test/CIR/CodeGen/builtins-floating-point.c
Log Message:
-----------
[CIR] Upstream FPToFPBuiltin CosOp (#158342)
Upstream support for FPToFPBuiltin CosOp
Commit: b31f8cb1c9108f6b45c8929df27b61396a4ccd45
https://github.com/llvm/llvm-project/commit/b31f8cb1c9108f6b45c8929df27b61396a4ccd45
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M lldb/test/CMakeLists.txt
M lldb/test/Shell/SymbolFile/PDB/native-setting.cpp
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
Log Message:
-----------
[LLDB] Require DIA SDK for testing the PDB plugin-selection setting (#158284)
If LLDB is built without the DIA SDK enabled, then the native plugin is
used regardless of `plugin.symbol-file.pdb.reader` or
`LLDB_USE_NATIVE_PDB_READER`. This made the test fail on Windows when
the DIA SDK was disabled
(https://github.com/llvm/llvm-project/issues/114906#issuecomment-3241796062).
This PR changes the requirement for the test from `target-windows` to
`diasdk` (only used in this test).
Commit: 9ac292441fcc4ebbaf4c7c36a9b2e2dd32580be0
https://github.com/llvm/llvm-project/commit/9ac292441fcc4ebbaf4c7c36a9b2e2dd32580be0
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Fix the source location of default template arguments in placeholder constraints (#158414)
We discovered this issue while working on the concept normalization
refactoring. We missed the source location when diagnosing the
instantiation point of the placeholder constraints, which is involved by
the substitution of default template arguments that happens before
constraint evaluation.
See the issue alive: https://godbolt.org/z/cWr9qP3E8
Commit: a4993a27fb005c2c65e065e9d7703533f4d26bd2
https://github.com/llvm/llvm-project/commit/a4993a27fb005c2c65e065e9d7703533f4d26bd2
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/abds-neg.ll
M llvm/test/CodeGen/AArch64/abds.ll
M llvm/test/CodeGen/AArch64/abdu-neg.ll
M llvm/test/CodeGen/AArch64/abdu.ll
M llvm/test/CodeGen/AArch64/adds_cmn.ll
Log Message:
-----------
[AArch64] Combine ADDS and SUBS nodes with the non-flag setting versions (#157563)
We do that with the other flag setting nodes. We should do this with all
flag setting and non-flag setting nodes.
Commit: 86397f55d5b3ac2ebefc91bbf1a7a6a23b44a3e2
https://github.com/llvm/llvm-project/commit/86397f55d5b3ac2ebefc91bbf1a7a6a23b44a3e2
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Target/M68k/CMakeLists.txt
Log Message:
-----------
[M68k] Add missing dependency on TargetParser
Became necessary after f3efbce4.
Commit: ee2a225a25fbc41fc7a47e089f09022f90eeaac3
https://github.com/llvm/llvm-project/commit/ee2a225a25fbc41fc7a47e089f09022f90eeaac3
Author: Ryan Kim <ryan at a41.io>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M mlir/include/mlir/ExecutionEngine/MemRefUtils.h
M mlir/unittests/ExecutionEngine/Invoke.cpp
Log Message:
-----------
[mlir] Fix correct memset range in `OwningMemRef` zero-init (#158200)
`OwningMemref` allocates with overprovision + manual alignment.
This is fixing the zero-initialization of the data, the existing code
was potentially overrunning the allocation:
```cpp
memset(descriptor.data, 0, size + desiredAlignment); // ❌ may overrun
```
This is invalid because `descriptor.data` (the aligned pointer) **does
not point to the full allocated block** (`size + desiredAlignment`).
Zeroing that much from the aligned start can write past the end of the
allocation.
Instead we only initialize the data from the aligned pointer for the expected
buffer size. The padding from [allocatedPtr, alignedDataPtr] is left untouched.
Commit: de04d422dd936a5c722b26fcaf4c9a46c2c23b14
https://github.com/llvm/llvm-project/commit/de04d422dd936a5c722b26fcaf4c9a46c2c23b14
Author: 0xdeadbeaf <0xdeadbeaf at tutamail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/easily-swappable-parameters.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-ignore.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicit-qualifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len2.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len3.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-prefixsuffixname.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-qualifiermixing.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters.c
Log Message:
-----------
[clang-tidy] Fixed typo for bugprone-easily-swappable-parameters clang-tidy check (#158282)
I came across this little typo mistake while reading the docs, so I've
fixed it :)
Commit: d976be0bb4f706a7f8d446cd5639651db66bf7a9
https://github.com/llvm/llvm-project/commit/d976be0bb4f706a7f8d446cd5639651db66bf7a9
Author: Timothy Hoffman <4001421+tim-hoffman at users.noreply.github.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/include/mlir/Transforms/Passes.td
Log Message:
-----------
[mlir] Documentation typo fixes (#135732)
Commit: d594a009c9557698c412d2a27d36b24120d390c2
https://github.com/llvm/llvm-project/commit/d594a009c9557698c412d2a27d36b24120d390c2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PointerIntPair.h
Log Message:
-----------
[ADT] Simplify IntMask (NFC) (#158410)
We can do the shift in uintptr_t without going through intptr_t.
Commit: 3f4eb814452e243ceef6e04494f6525dc8ce13e6
https://github.com/llvm/llvm-project/commit/3f4eb814452e243ceef6e04494f6525dc8ce13e6
Author: 0xdeadbeaf <0xdeadbeaf at tutamail.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/modernize/make-shared.rst
Log Message:
-----------
[cland-tidy][NFC] Fixed documentation for modernize-make-shared check (#158421)
I was surprised to see a different value for the
`MakeSmartPtrFunctionHeader` option of the `modernize-make-unique` and
`modernize-make-shared` clang-tidy checks. See, respectively:
[modernize-make-unique](https://github.com/llvm/llvm-project/blob/86397f55d5b3ac2ebefc91bbf1a7a6a23b44a3e2/clang-tools-extra/docs/clang-tidy/checks/modernize/make-unique.rst?plain=1#L40)
and
[modernize-make-shared](https://github.com/llvm/llvm-project/blob/86397f55d5b3ac2ebefc91bbf1a7a6a23b44a3e2/clang-tools-extra/docs/clang-tidy/checks/modernize/make-shared.rst?plain=1#L40).
>From what I've read in the codebase, I believe both checks use the same
default value for the `MakeSmartPtrFunctionHeader`: `<memory>` (from
[here](https://github.com/llvm/llvm-project/blob/d976be0bb4f706a7f8d446cd5639651db66bf7a9/clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp#L45-L46)).
Commit: 5dbcbb65abc808b2909d693038fd7e461e282371
https://github.com/llvm/llvm-project/commit/5dbcbb65abc808b2909d693038fd7e461e282371
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/Twine.h
M llvm/lib/Support/Twine.cpp
Log Message:
-----------
[ADT] Store integers by value in Twine (NFC) (#158409)
This patch stores integers by value in Twine for simplicity. I don't
think there is a good reason to store char, unsigned, and int by value
and all the other integers by pointers.
Commit: f94e36d2d398018d2e21a650301f27260d10fe26
https://github.com/llvm/llvm-project/commit/f94e36d2d398018d2e21a650301f27260d10fe26
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/docs/TestingGuide.rst
Log Message:
-----------
[llvm] Proofread TestingGuide.rst (#158411)
Commit: 111de45e838a7d33637da8807212284c988f7fae
https://github.com/llvm/llvm-project/commit/111de45e838a7d33637da8807212284c988f7fae
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
Log Message:
-----------
[clang-scan-deps] Move command-line generation out of critical section (#158187)
The first call to getBuildArguments() can be costly. Although the
original author’s comment (from commit 3b1a686) states that it should
be called outside the critical section, it is currently invoked within
the locked region.
This change moves it outside the critical section to match the original
intent and reduce lock contention.
Commit: ef7e03a2d1571e3c651fa9ccd205dbacf1a103c8
https://github.com/llvm/llvm-project/commit/ef7e03a2d1571e3c651fa9ccd205dbacf1a103c8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
A llvm/test/Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
Log Message:
-----------
[VPlan] Limit ExtractLastElem fold to recipes guaranteed single-scalar.
vputils::isSingleScalar(A) may return true to recipes that produce only
a single scalar value, but they could still end up as vector
instruction, because the recipe could not be converted to a
single-scalar VPInstruction/VPReplicateRecipe.
For now, only apply the fold for recipes guaranteed to produce a single
value, i.e. single-scalar VPInstructions and VPReplicateRecipes.
Fixes https://github.com/llvm/llvm-project/issues/158319.
Commit: a7c963ab763c98188010cd654902cee4734249ee
https://github.com/llvm/llvm-project/commit/a7c963ab763c98188010cd654902cee4734249ee
Author: Alex Guteniev <gutenev at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M libcxx/test/support/MinSequenceContainer.h
Log Message:
-----------
[libc++][test] update `MinSequenceContainer.h` to make one more test pass on MSVC STL (#158344)
Continues #140287
`from_range_t` constructor is needed by MSVC STL to pass
`std/containers/container.adaptors/flat.set/flat.set.cons/range.pass.cpp`.
The rest are added to complete the container according to
https://github.com/llvm/llvm-project/pull/140287#pullrequestreview-2848573089.
Commit: 4b82db90b8b6b0ff6f6d7238f7f11858b2f1de51
https://github.com/llvm/llvm-project/commit/4b82db90b8b6b0ff6f6d7238f7f11858b2f1de51
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
A .github/workflows/gha-codeql.yml
Log Message:
-----------
[Github] Add CodeQL Action to check Github Actions Workflows (#158394)
This should point out obvious security issues with our Github Actions
workflows.
Commit: 30e9cbacab5b474de89992851f126fff300c1ab7
https://github.com/llvm/llvm-project/commit/30e9cbacab5b474de89992851f126fff300c1ab7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Move logic to compute scalarization overhead to cost helper(NFC)
Extract the logic to compute the scalarization overhead to a helper for
easy re-use in the future.
Commit: 9b70b84b89f0de2dc4641da02fe54a6a1ef46e6e
https://github.com/llvm/llvm-project/commit/9b70b84b89f0de2dc4641da02fe54a6a1ef46e6e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/EnumeratedArray.h
Log Message:
-----------
[ADT] Implement EnumeratedArray with std::array (NFC) (#158407)
EnumeratedArray provides an std::array-like interface except that you
access the array with an enum index. Now, the problem is that because
the underlying array is implemented as a C array, we have to mirror
what std::array would do:
iterator end() { return begin() + size(); }
reverse_iterator rbegin() { return reverse_iterator(end()); }
This patch switches to the std::array. This way, we just have to
"forward" calls to begin, end, rbegin, rend, etc. Also, we benefit
from std::array::fill in one of the constructors.
Commit: c70b9c8622e683e46b29609dd1e1b31d8e5025c8
https://github.com/llvm/llvm-project/commit/c70b9c8622e683e46b29609dd1e1b31d8e5025c8
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/SparseBitVector.h
Log Message:
-----------
[ADT] Use range-based for loops in SparseBitVector.h (NFC) (#158408)
Commit: de7e3a589525179f3b02b84b194aac6cf581425c
https://github.com/llvm/llvm-project/commit/de7e3a589525179f3b02b84b194aac6cf581425c
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Compute cost of scalar (U|S)Div, (U|S)Rem in computeCost (NFCI).
Directly compute the cost of UDiv, SDiv, URem, SRem in VPlan.
Commit: bf156a2087f4a6d251d57369f6bd363cfa7adb41
https://github.com/llvm/llvm-project/commit/bf156a2087f4a6d251d57369f6bd363cfa7adb41
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
A clang/test/DebugInfo/CXX/vtable-external.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
A clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp
Log Message:
-----------
[Clang](NFC) Add coverage for VTable debug info (#151818)
Add test for:
- shows effect of inlining member functions
- shows effect of template instantiation methods
Make cleaner a bit:
- drops unnecessary `REQUIRES` clause
- uses `%clang_cc1` instead of `%clang -Xclang`
- uses `-O0 -disable-llvm-passes` and `-O1 -disable-llvm-passes` because
the optimization level affects the linkage of VTables.
Commit: 4abcbb053f8adaf48dbfff677e8ccda1f6d52b33
https://github.com/llvm/llvm-project/commit/4abcbb053f8adaf48dbfff677e8ccda1f6d52b33
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/lib/Basic/Targets/X86.h
M clang/test/CodeGen/mangle-windows.c
M clang/test/CodeGenCXX/mangle-windows.cpp
Log Message:
-----------
[Clang][Cygwin] Use correct mangling rule (#158404)
In
https://github.com/llvm/llvm-project/commit/45ca613c135ea7b5fbc63bff003f20bf20f62081,
whether to mangle names based on calling conventions according to
Microsoft conventions was refactored to a bool in the TargetInfo. Cygwin
targets also require this mangling, but were missed, presumably due to
lack of test coverage of these targets. This commit enables the name
mangling for Cygwin, and also enables test coverage of this mangling on
Cygwin targets.
Commit: 9490d58fa92bb338db96af331194c9ba26eb0201
https://github.com/llvm/llvm-project/commit/9490d58fa92bb338db96af331194c9ba26eb0201
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Revert "[VPlan] Compute cost of scalar (U|S)Div, (U|S)Rem in computeCost (NFCI)."
This reverts commit de7e3a589525179f3b02b84b194aac6cf581425c.
This broke quite a few upstream buildbots and premerge. Reverting for now to
get things back to green.
https://lab.llvm.org/buildbot/#/builders/137/builds/25467
Commit: a5641e40d7e6424ae18c04038eed6b94c59eb7c4
https://github.com/llvm/llvm-project/commit/a5641e40d7e6424ae18c04038eed6b94c59eb7c4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Add DenseMap::deallocateBuckets (NFC) (#158443)
This patch adds a small helper function DenseMap::deallocateBuckets
just like SmallDenseMap::deallocateBuckets.
With the new helper function:
~DenseMap()
DenseMap &operator=(DenseMap &&other)
will look identical to their respective SmallDenseMap counterparts,
facilitating further refactoring.
Commit: 0bbf2ea08a2adb0880c7958f9c609af7c479da46
https://github.com/llvm/llvm-project/commit/0bbf2ea08a2adb0880c7958f9c609af7c479da46
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-13 (Sat, 13 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Exclude LoopVectorize test introduced in ef7e03a (#158452)
Commit: ad9d551e5568e155005e569a0c9527b6e45c92b8
https://github.com/llvm/llvm-project/commit/ad9d551e5568e155005e569a0c9527b6e45c92b8
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/Mips16InstrInfo.td
M llvm/lib/Target/Mips/MipsConstantIslandPass.cpp
Log Message:
-----------
[Mips] Remove `size` operand of LwRxPcTcp16 / LwRxPcTcpX16 (#157348)
There is no such operand on LW instructions. It is neither encoded nor
printed, and was only inserted by MipsConstantIslands pass but never
used after that.
Commit: 87cca0c32c4e3ce51b53cf5c3ee0a430c1a6cb8f
https://github.com/llvm/llvm-project/commit/87cca0c32c4e3ce51b53cf5c3ee0a430c1a6cb8f
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
A llvm/utils/lit/tests/Inputs/shtest-ulimit-nondarwin/lit.cfg
A llvm/utils/lit/tests/Inputs/shtest-ulimit-nondarwin/ulimit_okay.txt
M llvm/utils/lit/tests/Inputs/shtest-ulimit/ulimit_okay.txt
A llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
M llvm/utils/lit/tests/shtest-ulimit.py
Log Message:
-----------
[lit] Split Linux specific ulimit tests (#158390)
Some of the ulimit limits do not work on some POSIX platforms. THe
motivating example here is ulimit -v on MacOS as the relevant system
calls are not implemented in XNU. Splitting the tests lets us keep test
coverage on POSIX (non-Linux) platforms.
Commit: b6014b602bc5bba643c292bca0524876f74178dd
https://github.com/llvm/llvm-project/commit/b6014b602bc5bba643c292bca0524876f74178dd
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/lit/tests/shtest-ulimit.py
Log Message:
-----------
[lit] Mark shtest-ulimit.py unsupported on Solaris
There were some build failures because apparently running ulimit -n 50
actually means ulimit -n 48 there. Losing the test coverage on Solaris
shouldn't be a big deal.
Commit: 9c91d4a31d758cbddc0fc6347470604c2040ab2f
https://github.com/llvm/llvm-project/commit/9c91d4a31d758cbddc0fc6347470604c2040ab2f
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/ReleaseNotesTemplate.txt
Log Message:
-----------
[clang-tools-extra][docs] Add "Potentially Breaking Changes" section to ReleaseNotes (#158434)
This implements:
https://github.com/llvm/llvm-project/blob/30e9cbacab5b474de89992851f126fff300c1ab7/llvm/docs/DeveloperPolicy.rst?plain=1#L282-L286
>From LLVM developer policy.
Commit: 43ba999d1205f787e76f4d4a01f45380d373efe9
https://github.com/llvm/llvm-project/commit/43ba999d1205f787e76f4d4a01f45380d373efe9
Author: Dor Arad <45083160+undor at users.noreply.github.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/test/Dialect/SCF/canonicalize.mlir
Log Message:
-----------
[mlir][scf] ExecuteRegionOp folders to consider no_inline attribute (#158083)
Fix missing handling of no_inline existence in ExecuteRegionOp folders.
Co-authored-by: Dor Arad <dor.arad at mobileye.com>
Commit: 1b1b83ffacc56e0c6344be25a7238f509fd705e6
https://github.com/llvm/llvm-project/commit/1b1b83ffacc56e0c6344be25a7238f509fd705e6
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
Log Message:
-----------
[CIR][NFC] Remove Covered MissingFeatures flags for Complex (#158425)
Remove Covered MissingFeatures flags for Complex
Commit: 91d4c0dfdf226665c17d4a44e2fab466e6103d18
https://github.com/llvm/llvm-project/commit/91d4c0dfdf226665c17d4a44e2fab466e6103d18
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
Reapply "[VPlan] Compute cost of scalar (U|S)Div, (U|S)Rem in computeCost (NFCI)."
This reverts commit 9490d58fa92bb338db96af331194c9ba26eb0201.
Recommits de7e3a58952 with a fix for an unhandled case, causing crashes
in some configs.
Commit: 94213a4aefc8dda671493aed993f0c6665c5f146
https://github.com/llvm/llvm-project/commit/94213a4aefc8dda671493aed993f0c6665c5f146
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/lib/Analysis/LifetimeSafety.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
Log Message:
-----------
[LifetimeSafety] Add support for GSL Pointer types (#154009)
This extends the lifetime safety analysis to support C++ types annotated
with `gsl::Pointer`, which represent non-owning "view" types like
`std::string_view`. These types have the same lifetime safety concerns
as raw pointers and references.
- Added support for detecting and analyzing `gsl::Pointer` annotated
types in lifetime safety analysis
- Implemented handling for various expressions involving `gsl::Pointer`
types:
- Constructor expressions
- Member call expressions (especially conversion operators)
- Functional cast expressions
- Initialization list expressions
- Materialized temporary expressions
- Updated the pointer type detection to recognize `gsl::Pointer` types
- Added handling for function calls that create borrows through
reference parameters
Fixes: https://github.com/llvm/llvm-project/issues/152513
Commit: e07b5968d4ac1515582ad578aaa5497782972666
https://github.com/llvm/llvm-project/commit/e07b5968d4ac1515582ad578aaa5497782972666
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/abs-intrinsic.ll
Log Message:
-----------
[InstCombine] Fold select pattern with sub and negation to abs intrinsic (#156246)
```llvm
%sub = sub nsw T %x, %y
%cmp = icmp sgt T %x, %y ; or sge
%neg = sub T 0, %sub
%abs = select i1 %cmp, T %sub, T %neg
```
becomes:
```llvm
%sub = sub nsw T %x, %y
%abs = call T @llvm.abs.T(T %sub, i1 false)
```
Alive2: https://alive2.llvm.org/ce/z/ApdJX8
https://alive2.llvm.org/ce/z/gRTmZk
Commit: 9ee1f159dccbee1e19ab7584e678af9be1054e2d
https://github.com/llvm/llvm-project/commit/9ee1f159dccbee1e19ab7584e678af9be1054e2d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/lib/Conversion/MPIToLLVM/MPIToLLVM.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in MPIToLLVM.cpp (NFC)
Commit: 48babe193186248e1c386a847047d59ab61c762d
https://github.com/llvm/llvm-project/commit/48babe193186248e1c386a847047d59ab61c762d
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrs.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
M mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMAttrs.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/TypeToLLVM.cpp
M mlir/test/Dialect/LLVMIR/nvvm.mlir
M mlir/test/Target/LLVMIR/ptr.mlir
Log Message:
-----------
[mlir][LLVM] Add LLVMAddrSpaceAttrInterface and NVVMMemorySpaceAttr (#157339)
This patch introduces the `LLVMAddrSpaceAttrInterface` for defining
compatible LLVM address space attributes
To test this interface, this patch also adds:
- Adds NVVMMemorySpaceAttr implementing both LLVMAddrSpaceAttrInterface
and MemorySpaceAttrInterface
- Converts NVVM memory space constants from enum to MLIR enums
- Updates all NVVM memory space references to use new attribute system
- Adds support for NVVM memory spaces in ptr dialect translation
Example:
```mlir
llvm.func @nvvm_ptr_address_space(
!ptr.ptr<#nvvm.memory_space<global>>,
!ptr.ptr<#nvvm.memory_space<shared>>,
!ptr.ptr<#nvvm.memory_space<constant>>,
!ptr.ptr<#nvvm.memory_space<local>>,
!ptr.ptr<#nvvm.memory_space<tensor>>,
!ptr.ptr<#nvvm.memory_space<shared_cluster>>
) -> !ptr.ptr<#nvvm.memory_space<generic>>
```
Translating the above code to LLVM produces:
```llvm
declare ptr @nvvm_ptr_address_space(ptr addrspace(1), ptr addrspace(3), ptr addrspace(4), ptr addrspace(5), ptr addrspace(6), ptr addrspace(7))
```
To convert the memory space enum to the new enum class use:
```bash
grep -r . -e "NVVMMemorySpace::kGenericMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kGenericMemorySpace/NVVMMemorySpace::Generic/g"
grep -r . -e "NVVMMemorySpace::kGlobalMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kGlobalMemorySpace/NVVMMemorySpace::Global/g"
grep -r . -e "NVVMMemorySpace::kSharedMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kSharedMemorySpace/NVVMMemorySpace::Shared/g"
grep -r . -e "NVVMMemorySpace::kConstantMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kConstantMemorySpace/NVVMMemorySpace::Constant/g"
grep -r . -e "NVVMMemorySpace::kLocalMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kLocalMemorySpace/NVVMMemorySpace::Local/g"
grep -r . -e "NVVMMemorySpace::kTensorMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kTensorMemorySpace/NVVMMemorySpace::Tensor/g"
grep -r . -e "NVVMMemorySpace::kSharedClusterMemorySpace" -l | xargs sed -i -e "s/NVVMMemorySpace::kSharedClusterMemorySpace/NVVMMemorySpace::SharedCluster/g"
```
NOTE: A future patch will add support for ROCDL, it wasn't added here to
keep the patch small.
Commit: 24f836a8aef0a55be4c93e9b7e0fcf4bbcd00ebb
https://github.com/llvm/llvm-project/commit/24f836a8aef0a55be4c93e9b7e0fcf4bbcd00ebb
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-else-after-return in TosaProfileCompliance.cpp (NFC)
Commit: 3336c6cc2c7e729f6b292ba3929b6c083fcff21b
https://github.com/llvm/llvm-project/commit/3336c6cc2c7e729f6b292ba3929b6c083fcff21b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Fix comment typos in DenseMap.h (#158457)
- The math is wrong.
- We are discussing "inequality".
- "For example" requires ",".
Commit: 0e79732289cdd1d8e19a2151b780a4f02f814e2e
https://github.com/llvm/llvm-project/commit/0e79732289cdd1d8e19a2151b780a4f02f814e2e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/docs/Atomics.rst
Log Message:
-----------
[llvm] Proofread Atomics.rst (#158459)
Commit: ba985b9a7392183bb3a5af707da6256406724509
https://github.com/llvm/llvm-project/commit/ba985b9a7392183bb3a5af707da6256406724509
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Target/CSKY/CMakeLists.txt
M llvm/lib/Target/Xtensa/CMakeLists.txt
Log Message:
-----------
[CSKY][Xtensa] Add missing dependency on TargetParser
Became necessary after f3efbce4.
Commit: bfedb4a938438044b1c1b84a2683419f9c7143b4
https://github.com/llvm/llvm-project/commit/bfedb4a938438044b1c1b84a2683419f9c7143b4
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/lldb/test/BUILD.gn
Log Message:
-----------
[gn] port b31f8cb1c910
Commit: 1a65e63c596d9459f49e4495e92cdecac2795f71
https://github.com/llvm/llvm-project/commit/1a65e63c596d9459f49e4495e92cdecac2795f71
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrDefs.td
M mlir/include/mlir/Dialect/Ptr/IR/PtrAttrs.h
M mlir/include/mlir/Dialect/Ptr/IR/PtrOps.td
M mlir/include/mlir/IR/DialectImplementation.h
M mlir/lib/Dialect/Ptr/IR/PtrDialect.cpp
M mlir/lib/Target/LLVMIR/Dialect/Ptr/PtrToLLVMIRTranslation.cpp
M mlir/test/Dialect/Ptr/ops.mlir
M mlir/test/Target/LLVMIR/ptr.mlir
Log Message:
-----------
[mlir][ptr] Add ConstantOp with NullAttr and AddressAttr support (#157347)
This patch introduces the `ptr.constant` operation. It also adds the
`NullAttr` and `AddressAttr` for representing null pointers, and integer
raw addresses.
It also implements LLVM IR translation for `ptr.constant` with
`#ptr.null` or `#ptr.address` attributes.
Finally, it extends `FieldParser` to support APInt parsing.
Example:
```mlir
llvm.func @constant_address_op() ->
!llvm.struct<(!ptr.ptr<#llvm.address_space<0>>,
!ptr.ptr<#llvm.address_space<1>>,
!ptr.ptr<#llvm.address_space<2>>)> {
%0 = ptr.constant #ptr.null : !ptr.ptr<#llvm.address_space<0>>
%1 = ptr.constant #ptr.address<0x1000> : !ptr.ptr<#llvm.address_space<1>>
%2 = ptr.constant #ptr.address<3735928559> : !ptr.ptr<#llvm.address_space<2>>
%3 = llvm.mlir.poison : !llvm.struct<(!ptr.ptr<#llvm.address_space<0>>, !ptr.ptr<#llvm.address_space<1>>, !ptr.ptr<#llvm.address_space<2>>)>
%4 = llvm.insertvalue %0, %3[0] : !llvm.struct<(!ptr.ptr<#llvm.address_space<0>>, !ptr.ptr<#llvm.address_space<1>>, !ptr.ptr<#llvm.address_space<2>>)>
%5 = llvm.insertvalue %1, %4[1] : !llvm.struct<(!ptr.ptr<#llvm.address_space<0>>, !ptr.ptr<#llvm.address_space<1>>, !ptr.ptr<#llvm.address_space<2>>)>
%6 = llvm.insertvalue %2, %5[2] : !llvm.struct<(!ptr.ptr<#llvm.address_space<0>>, !ptr.ptr<#llvm.address_space<1>>, !ptr.ptr<#llvm.address_space<2>>)>
llvm.return %6 : !llvm.struct<(!ptr.ptr<#llvm.address_space<0>>, !ptr.ptr<#llvm.address_space<1>>, !ptr.ptr<#llvm.address_space<2>>)>
}
```
Result of translation to LLVM IR:
```llvm
define { ptr, ptr addrspace(1), ptr addrspace(2) } @constant_address_op() {
ret { ptr, ptr addrspace(1), ptr addrspace(2) } { ptr null, ptr addrspace(1) inttoptr (i64 4096 to ptr addrspace(1)), ptr addrspace(2) inttoptr (i64 3735928559 to ptr addrspace(2)) }
}
```
This patch also changes all the `convert*` occurrences in function names
or comments to `translate` in the PtrToLLVM file.
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: 3e254ed9041530cf14594f33f6c87a37c8a96640
https://github.com/llvm/llvm-project/commit/3e254ed9041530cf14594f33f6c87a37c8a96640
Author: Šárka Holendová <72979252+mlir-maiden at users.noreply.github.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/extensions.cpp
M flang/docs/Intrinsics.md
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
M flang/include/flang/Runtime/extensions.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
A flang/test/Lower/Intrinsics/dsecnds.f90
Log Message:
-----------
[flang] Implement DSECNDS intrinsic (PGI extension) (#157573)
Add support for DSECNDS, the double-precision variant of SECNDS.
The implementation mirrors SECNDS, reusing the shared `SecndsImpl<T>`
runtime template.
Includes:
- Registration in intrinsics table
- Lowering handler and runtime call wiring
- Hook into shared SecndsImpl in extensions.cpp
- Documentation in Intrinsics.md
- Regression test dsecnds.f90
CC @eugeneepshteyn @klausler
---------
Co-authored-by: Eugene Epshteyn <eepshteyn at nvidia.com>
Commit: 8007022caf47372abc73865b3b90e888c23983ad
https://github.com/llvm/llvm-project/commit/8007022caf47372abc73865b3b90e888c23983ad
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/lib/CAPI/Dialect/Linalg.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for performance-unnecessary-copy-initialization in Linalg.cpp (NFC)
Commit: d7bf2bf85f84977e4504322b61af3d5def211c51
https://github.com/llvm/llvm-project/commit/d7bf2bf85f84977e4504322b61af3d5def211c51
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Ptr/IR/PtrDialect.td
Log Message:
-----------
[NFC][mlir][ptr] Clarify pointer dialect semantics (#158484)
This patch adds the following description to the pointer dialect:
```
The pointer dialect provides types and operations for representing and
interacting with pointer values in MLIR, such as loading and storing values
from/to memory addresses.
The dialect's main type is an opaque pointer (`ptr`) that can be
parameterized by a memory space. This type represents a handle to an object
in memory, or target-dependent values like `nullptr`. Further, the dialect
assumes that the minimum addressable unit by a pointer is a byte. However,
the dialect does not make assumptions about the size of a byte, which is
considered a target-specific property.
```
Commit: b01cddee0e69bd283a0f1830f24fae326371f1de
https://github.com/llvm/llvm-project/commit/b01cddee0e69bd283a0f1830f24fae326371f1de
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/lib/Basic/Targets/X86.h
R clang/test/CodeGen/X86/cygwin-varargs.c
M clang/test/CodeGen/calling-conv-ignored.c
M clang/test/CodeGen/ms_abi.c
M clang/test/CodeGen/sysv_abi.c
M clang/test/DebugInfo/Generic/cc.c
M clang/test/Parser/x64-windows-calling-convention-handling.c
M clang/test/Sema/MicrosoftCompatibility-x64.c
Log Message:
-----------
[Clang][Cygwin] Cygwin x86_64 should accept __stdcall (#158385)
Cygwin should support calling convention attributes `__cdecl`,
`__stdcall`, `__thiscall`, and `__fastcall`, even though they have no
effect in x86_64, as done in MinGW.
Originally reported in
https://cygwin.com/pipermail/cygwin/2025-September/258782.html
---------
Co-authored-by: Jeremy Drake <github at jdrake.com>
Commit: 31c4eb032f347868c5ba929ca42004e03dbded00
https://github.com/llvm/llvm-project/commit/31c4eb032f347868c5ba929ca42004e03dbded00
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
Log Message:
-----------
[Github] Update actions/download-artifact to v5 (#158466)
Some of the older versions have security issues. Upgrade to v5 to remedy
that and get ahead of the v5 upgrade cycle rather than updating to a
later v4.x release.
Updated mechanically using the following command:
find .github -exec sed -i -e
"s/actions\/download-artifact at .*/actions\/download-artifact at 634f93cb2916e3fdff6788551b99b062d0335ce0
# v5.0.0/g" {} \;
Commit: 3f26f1aed07f9671891b64594d9a7bd7c3df1f7c
https://github.com/llvm/llvm-project/commit/3f26f1aed07f9671891b64594d9a7bd7c3df1f7c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseSet.h
Log Message:
-----------
[ADT] Reduce boilerplate in DenseSet (NFC) (#158456)
The class definitions of DenseSet and SmallDenseSet contain a lot of
boilerplate code, repeating the lengthy base class name twice in each
definition.
This patch simplifies the two definitions by making them type aliases.
Commit: ad8d0a13397ba4d4174363120e9c92339ace2d97
https://github.com/llvm/llvm-project/commit/ad8d0a13397ba4d4174363120e9c92339ace2d97
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
M llvm/unittests/ADT/DenseMapTest.cpp
Log Message:
-----------
[ADT] Fix the initial size calculation of SmallDenseMap (#158458)
The initial size calculation of SmallDenseMap is strange in several
ways:
- SmallDenseMap(unsigned) seems to want to take the number of initial
buckets as far as I can tell from the variable name NumInitBuckets.
In contrast, DenseMap(unsigned) seems to want to take the number of
initial entries as far as I can tell from the comment:
/// Create a DenseMap with an optional \p InitialReserve that guarantee
that
/// this number of elements can be inserted in the map without grow()
- SmallDenseMap(unsigned) uses llvm::bit_ceil to obtain a power of
two. SmallDenseMap(I, E) uses NextPowerOf2 to obtain a power of
two.
- Presumably, the init() call is to ensure that we won't call grow()
while populating the initial elements [I, E). However,
NextPowerOf2(std::distance(I, E)) does not ensure that a rehash
won't happen. For example, if the number of initial elements is
50, we need 128 buckets, but NextPowerOf2(std::distance(I, E)) would
return 64.
This patch fixes all these inconsistencies by teaching
SmallDenseMap::init to call BaseT::getMinBucketToReserveForEntries
just like DenseMap::init.
With this patch, all constructors of SmallDenseMap are textually
identical to their respective counterparts in DenseMap.
Commit: 0cab8da19ca61147027d66fb8a669a1d9ad521a5
https://github.com/llvm/llvm-project/commit/0cab8da19ca61147027d66fb8a669a1d9ad521a5
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/Disassembler/BUILD.gn
Log Message:
-----------
[gn] port 698f39bc1959
Commit: d35ce3369809b8212eb44908bd9c90d483ee519d
https://github.com/llvm/llvm-project/commit/d35ce3369809b8212eb44908bd9c90d483ee519d
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/Disassembler/BUILD.gn
Log Message:
-----------
[gn] port 5a0be9b2a47d4
Commit: 685c627b0c810252dbc021f1b6df213b1d983938
https://github.com/llvm/llvm-project/commit/685c627b0c810252dbc021f1b6df213b1d983938
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/BPF/Disassembler/BUILD.gn
Log Message:
-----------
[gn] port 69f1aebf2017f43
Commit: 5719fb8c20ffdaa40411bb7ac41ef719122d22f6
https://github.com/llvm/llvm-project/commit/5719fb8c20ffdaa40411bb7ac41ef719122d22f6
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AVR/Disassembler/BUILD.gn
Log Message:
-----------
[gn] port 69d0c3e44ff
Commit: ee3a4f4c94744d296797d1527382a9f060fc241a
https://github.com/llvm/llvm-project/commit/ee3a4f4c94744d296797d1527382a9f060fc241a
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/reversed-strided-load.ll
Log Message:
-----------
[SLPVectorizer] Test -1 stride loads. (#158358)
Add a test to generate -1 stride load and flags to force this behaviour.
Commit: b30c29c89381f87562edc34c7813cbd310d1d4b0
https://github.com/llvm/llvm-project/commit/b30c29c89381f87562edc34c7813cbd310d1d4b0
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
R llvm/test/Transforms/SimplifyCFG/unreachable-multi-basic-block-funclet.ll
Log Message:
-----------
Revert "[BasicBlockUtils] Handle funclets when detaching EH pad blocks" (#158364)
Reverts llvm/llvm-project#157363
Causes crashes, see
https://github.com/llvm/llvm-project/pull/157363#issuecomment-3286783238
Commit: 43384913b636854b92c7de9e326f879a1993f445
https://github.com/llvm/llvm-project/commit/43384913b636854b92c7de9e326f879a1993f445
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/ClangTidyCheck.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyModule.cpp
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyModuleRegistry.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ClangTidyProfiling.h
M clang-tools-extra/clang-tidy/FileExtensionsSet.h
M clang-tools-extra/clang-tidy/GlobList.cpp
M clang-tools-extra/clang-tidy/GlobList.h
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.h
M clang-tools-extra/clang-tidy/abseil/AbseilTidyModule.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.h
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.h
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.cpp
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.h
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.h
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.h
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.h
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h
M clang-tools-extra/clang-tidy/add_new_check.py
M clang-tools-extra/clang-tidy/altera/AlteraTidyModule.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.h
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.h
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.h
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.h
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.h
M clang-tools-extra/clang-tidy/android/AndroidTidyModule.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.h
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.h
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.h
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.h
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.h
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.h
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.h
M clang-tools-extra/clang-tidy/boost/BoostTidyModule.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.h
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.h
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.h
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.h
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.h
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.h
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.h
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.h
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.h
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.h
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.h
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.h
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.h
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.h
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.h
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.h
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.h
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.h
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.h
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.cpp
M clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.cpp
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.h
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.h
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.h
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.cpp
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.h
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.h
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.cpp
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.h
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
M clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.cpp
M clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.h
M clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp
M clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.h
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.h
M clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.cpp
M clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.h
M clang-tools-extra/clang-tidy/concurrency/ConcurrencyTidyModule.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.h
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.h
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.cpp
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.h
M clang-tools-extra/clang-tidy/darwin/DarwinTidyModule.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.h
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.h
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.h
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.h
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.h
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.h
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.h
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.h
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.h
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.h
M clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.cpp
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.h
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.cpp
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.h
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.cpp
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.h
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.h
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.cpp
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.h
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.h
M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.h
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.h
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.h
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.h
M clang-tools-extra/clang-tidy/linuxkernel/LinuxKernelTidyModule.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.h
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.h
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.h
M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.h
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.h
M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.cpp
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.h
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/LLVMLibcTidyModule.cpp
M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.h
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.h
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.h
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.h
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.h
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.h
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.h
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.h
M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.h
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.h
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.h
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.h
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.cpp
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.h
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.h
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.h
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.h
M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.h
M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.h
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.h
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.h
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.h
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.h
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.h
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.h
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.h
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.cpp
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.h
M clang-tools-extra/clang-tidy/mpi/MPITidyModule.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.h
M clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
M clang-tools-extra/clang-tidy/objc/AssertEquals.h
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.cpp
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.h
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.cpp
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.h
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.cpp
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.h
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.h
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.h
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.h
M clang-tools-extra/clang-tidy/objc/ObjCTidyModule.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.h
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.h
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/openmp/OpenMPTidyModule.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.h
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.h
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.h
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.h
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.h
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.h
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.h
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.h
M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.h
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.cpp
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.cpp
M clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.h
M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.h
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.h
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.cpp
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.h
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
M clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
M clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.cpp
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.h
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.h
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.h
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.h
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.h
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.cpp
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.h
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.h
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.h
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.h
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.h
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.h
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.h
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.h
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.h
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.h
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.h
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.h
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.h
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.h
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.h
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.h
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.h
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.h
M clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.h
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.h
M clang-tools-extra/clang-tidy/rename_check.py
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.h
M clang-tools-extra/clang-tidy/tool/ClangTidyToolMain.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
M clang-tools-extra/clang-tidy/utils/ASTUtils.h
M clang-tools-extra/clang-tidy/utils/Aliasing.cpp
M clang-tools-extra/clang-tidy/utils/Aliasing.h
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.h
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.h
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
M clang-tools-extra/clang-tidy/utils/ExprSequence.h
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.h
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.cpp
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.h
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.h
M clang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeInserter.h
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.h
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/clang-tidy/utils/Matchers.cpp
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
M clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/OptionsUtils.h
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
M clang-tools-extra/clang-tidy/utils/UsingInserter.cpp
M clang-tools-extra/clang-tidy/utils/UsingInserter.h
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.h
M clang-tools-extra/clang-tidy/zircon/ZirconTidyModule.cpp
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
Log Message:
-----------
[clang-tidy][NFC] Switch to new file header style (#158497)
As decided in #118553 and following up #153942.
`rename_check.py` has small logic changes, everything else is a
mechanical replacement.
Commit: 7dd2f1cc10902e632c0c78c75a30432a53eb59dc
https://github.com/llvm/llvm-project/commit/7dd2f1cc10902e632c0c78c75a30432a53eb59dc
Author: Gedare Bloom <gedare at rtems.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add IndentPPDirectives Leave option (#139750)
Allow an option to leave preprocessor directive indenting as-is. This
simplifies handling mixed styles of CPP directive indentation.
Fixes #38511
Commit: 885546c83c1f9417d0e39679e39be3d055604db2
https://github.com/llvm/llvm-project/commit/885546c83c1f9417d0e39679e39be3d055604db2
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMap.h
Log Message:
-----------
[ADT] Adjust parameter names for DenseMap constructors (NFC) (#158501)
This patch ensures that both DenseMap and SmallDenseMap have:
explicit DenseMap(unsigned NumElementsToReserve = 0) {
init(NumElementsToReserve);
}
for consistency and clarity (modulo the class name, of course).
Commit: 0e36aa1640a5c0d00138c61de0f99f785cff1e2a
https://github.com/llvm/llvm-project/commit/0e36aa1640a5c0d00138c61de0f99f785cff1e2a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/Hashing.h
M llvm/include/llvm/ADT/ilist_node_options.h
M llvm/include/llvm/Support/CFGDiff.h
M llvm/include/llvm/Support/FormatProviders.h
M llvm/include/llvm/Support/FormatVariadicDetails.h
M llvm/include/llvm/Support/HashBuilder.h
M llvm/include/llvm/Support/YAMLTraits.h
Log Message:
-----------
[ADT, Support] Use std::bool_constant (NFC) (#158503)
This patch replaces, std::integral_constant<bool, ...> with
std::bool_constant for brevity. Note that std::bool_constant was
introduced as part of C++17.
There are cases where we could strip away std::bool_constant
altogether:
std::bool_constant<std::is_same<T, U>>
but I'm not doing that in this patch to avoid doing multiple things in
one patch.
Commit: 7d949ee04f9863093dc3605feeca931318b0a0cd
https://github.com/llvm/llvm-project/commit/7d949ee04f9863093dc3605feeca931318b0a0cd
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/FormatVariadicDetails.h
Log Message:
-----------
[Support] Use llvm::is_detected (NFC) (#158504)
This patch uses llvm::is_detected to replace the old SFINAE-based
approach.
Commit: 30f4781eef567b99214e02137a57c7ac91279a48
https://github.com/llvm/llvm-project/commit/30f4781eef567b99214e02137a57c7ac91279a48
Author: owenca <owenpiano at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Handle C digit separators (#158418)
Fixes #158413
Commit: fb60d0337c15640df95872d90240fde42fb80ea1
https://github.com/llvm/llvm-project/commit/fb60d0337c15640df95872d90240fde42fb80ea1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Return non-option cost from getCostForRecipeWithOpcode (NFC).
getCostForRecipeWithOpcode must only be called with supported opcodes.
Directly return the cost, and add llvm_unreachable to catch unhandled
cases.
Commit: 983c8b6b2575c034dc98514a35d0fd9b08d9935e
https://github.com/llvm/llvm-project/commit/983c8b6b2575c034dc98514a35d0fd9b08d9935e
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZicfiss.td
Log Message:
-----------
[RISCV] Remove a couple of custom instruction decoders (NFC) (#158483)
These instructions can be decoded automatically.
Commit: fb58bc6763573f0a7182290cdbfcec469f34c273
https://github.com/llvm/llvm-project/commit/fb58bc6763573f0a7182290cdbfcec469f34c273
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/TableGen/CodeEmitterGen.cpp
Log Message:
-----------
[TableGen][CodeEmitterGen] Cache Target/CGH in class (NFC) (#158517)
To avoid passing them to member functions.
Commit: 7dae0b85b3d152ac45a59ad29f49bf8c8822cf67
https://github.com/llvm/llvm-project/commit/7dae0b85b3d152ac45a59ad29f49bf8c8822cf67
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/Disassembler/BUILD.gn
Log Message:
-----------
[gn] port 52dd4b9b7e4
Commit: 7ee4909256a03c5d6d1c558e5ebe4bc1c8fc2816
https://github.com/llvm/llvm-project/commit/7ee4909256a03c5d6d1c558e5ebe4bc1c8fc2816
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/Interpreter/BUILD.gn
Log Message:
-----------
[gn build] Port c642e2aa61c4
Commit: 0e28fd7282492669e106617b52494fa4556bb5c4
https://github.com/llvm/llvm-project/commit/0e28fd7282492669e106617b52494fa4556bb5c4
Author: Jim Lin <jim at andestech.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
A llvm/test/CodeGen/RISCV/pr158121.ll
Log Message:
-----------
[RISCV] Check the types are the same for folding (sub 0, (setcc x, 0, setlt)) to (sra x, xlen - 1) (#158179)
We should check the type of x is the same as `sub` operation. Otherwise
the shift amount xlen -1 will exceed the bit size of x.
Fixes https://github.com/llvm/llvm-project/issues/158121.
Commit: c128f3bba4d60cb3b9a5c08854d7b83fd5317e0f
https://github.com/llvm/llvm-project/commit/c128f3bba4d60cb3b9a5c08854d7b83fd5317e0f
Author: Jim Lin <jim at andestech.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int.ll
Log Message:
-----------
[RISCV] Remove unneeded TODOs from fixed-vectors-shuffle-int.ll.
There is a single vslideup.vi already.
Commit: fef88d2ef21edc83660968e0134e28dda88d4a11
https://github.com/llvm/llvm-project/commit/fef88d2ef21edc83660968e0134e28dda88d4a11
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libclc/README.md
Log Message:
-----------
[libclc][NFC] Update README.md to use runtime build (#158283)
LLVM_ENABLE_PROJECTS=libclc is deprecated, see
https://github.com/llvm/llvm-project/blob/a2a9601ea49a/llvm/CMakeLists.txt#L223-L228
Commit: 5850c44288cba01c75f8afb7cfcf3a2d47e2d5a4
https://github.com/llvm/llvm-project/commit/5850c44288cba01c75f8afb7cfcf3a2d47e2d5a4
Author: Mingjie Xu <xumingjie.enna1 at bytedance.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
Log Message:
-----------
[InstCombine] Improve `foldDeadPhiWeb` compile time (#158057)
The foldDeadPhiWeb function identifies and removes small dead PHI webs,
it bails out if the web size exceeds threshold (16).
In the current implementation, when there is a phi node has large number
of users that most of them are phi nodes, we still push them on the
`Stack` even if the number of phi nodes user exceeds the threshold.
This patch checks the early stop condition when we push an unvisited phi
node on the `Stack`.
With this change, the wall duration of total instcombine pass decreased
from 523,649.276 ms to 208,687.042 ms in an our internal case.
Commit: d5f58a582769af320323cb0c1ea450d8b3962a41
https://github.com/llvm/llvm-project/commit/d5f58a582769af320323cb0c1ea450d8b3962a41
Author: Weibo He <NewSigma at 163.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
A llvm/test/Transforms/Coroutines/coro-split-invalid.ll
Log Message:
-----------
[CoroSplit] Fix use-after-free related to coro.suspend (#156572)
Fix #156444
Commit: d271ace0850a8a4a24a9f62e6d1970352dd2f6e8
https://github.com/llvm/llvm-project/commit/d271ace0850a8a4a24a9f62e6d1970352dd2f6e8
Author: thetruestblue <bblueconway at gmail.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
A compiler-rt/test/asan/TestCases/Darwin/atos-symbolized-recover.cpp
R compiler-rt/test/sanitizer_common/TestCases/Darwin/atos-symbolized-recover.cpp
Log Message:
-----------
[Test][ASan][Sanitizer] Make atos symbolizer test asan and simulator only (#158522)
Simulator environments run only atos symbolizer rather than falling back
to dladdr.
Because sanitizer-common does not target simulators, move this test into
asan and simulator only to make it predicatable test.
Original change sha: 0f9bfe0a02ffff077a1a98065069b52744e31723
rdar://108003900
Commit: e2455bfc101bfdd59ac6426c3a804f8b78152fd7
https://github.com/llvm/llvm-project/commit/e2455bfc101bfdd59ac6426c3a804f8b78152fd7
Author: Jinjie Huang <huangjinjie at bytedance.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
A bolt/test/dwo-name-retrieving.test
Log Message:
-----------
[BOLT][DWARF] Get DWO file via relative path if the CompilationDir does not exist (#154515)
In distributed builds, the DWARF CompilationDir is often invalid,
causing BOLT to fail when locating DWO files. If the default path does
not exist, it seems better to consider the DWOName as a relative path in
this case.
The implementation of this patch will try to search for the DWO file in
the following order:
1. CompDirOverride + DWOName (if CompDirOverride specified)
2. CompilationDir + DWOName (if CompilationDir exists)
3. **Current directory + DWOName (relative path as a fallback)**
This patch also fixes a crash that occurs when DWOName is an absolute path and a DWP file is provided.
Commit: b15719365861502cd1c6d216ad4a0425ee6431ea
https://github.com/llvm/llvm-project/commit/b15719365861502cd1c6d216ad4a0425ee6431ea
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/bit.h
M llvm/unittests/ADT/BitTest.cpp
Log Message:
-----------
[ADT] Handle uint8_t and uint16_t in countr_zero (#158518)
Without this patch, the uint8_t and uint16_t cases are sent to the
fallback route. This patch fixes that by relaxing the "if" condition.
While it's hard to test that the correct control path is taken within
countr_zero, this patch adds a few tests just to verify the
correctness on uint8_t and uint16_t inputs.
Commit: 1e3dd5ef29464b86005705bebec721ac5933bd85
https://github.com/llvm/llvm-project/commit/1e3dd5ef29464b86005705bebec721ac5933bd85
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/YAMLTraits.h
M llvm/lib/IR/Metadata.cpp
M llvm/unittests/ADT/StringRefTest.cpp
Log Message:
-----------
[llvm] Use std::bool_constant (NFC) (#158520)
This patch replaces, std::integral_constant<bool, ...> with
std::bool_constant for brevity. Note that std::bool_constant was
introduced as part of C++17.
There are cases where we could replace EXPECT_EQ(false, ...) with
EXPECT_FALSE(...), but I'm not doing that in this patch to avoid doing
multiple things in one patch.
Commit: c44e015b49e832c9f3749c33cf5c9d5aacaf60a4
https://github.com/llvm/llvm-project/commit/c44e015b49e832c9f3749c33cf5c9d5aacaf60a4
Author: William Moses <gh at wsmoses.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
A llvm/test/Transforms/SimplifyCFG/no-drop-debug-loc-when-speculating-call.ll
Log Message:
-----------
[SimplifyCFG] Refine metadata handling during instruction hoisting (#158448)
Co-authored-by: Nikita Popov <npopov at redhat.com>
Commit: 65ad21d730d25789454d18e811f8ff5db79cb5d4
https://github.com/llvm/llvm-project/commit/65ad21d730d25789454d18e811f8ff5db79cb5d4
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/reproducer-pr146855.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt.ll
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
M llvm/test/CodeGen/RISCV/rvv/vlopt-same-vl.ll
Log Message:
-----------
[RISCV] Handle recurrences in RISCVVLOptimizer (#151285)
After #144666 we now support vectorizing loops with induction variables
with EVL tail folding. The induction updates don't use VP intrinsics to
avoid VL toggles but instead rely on RISCVVLOptimizer. However
RISCVVLOptimizer can't reason about cycles or recurrences today, which
means we are left with a VL toggle to VLMAX:
# %bb.1: # %for.body.preheader
li a2, 0
vsetvli a3, zero, e32, m2, ta, ma
vid.v v8
.LBB0_2: # %vector.body
# =>This Inner Loop Header: Depth=1
sub a3, a1, a2
sh2add a4, a2, a0
vsetvli a3, a3, e32, m2, ta, ma
vle32.v v10, (a4)
add a2, a2, a3
vadd.vv v10, v10, v8
vse32.v v10, (a4)
vsetvli a4, zero, e32, m2, ta, ma
vadd.vx v8, v8, a3
bne a2, a1, .LBB0_2
This patch teaches RISCVVLOptimizer to reason about recurrences so we
can remove the VLMAX toggle:
# %bb.1: # %for.body.preheader
li a2, 0
vsetvli a3, zero, e32, m2, ta, ma
vid.v v8
.LBB0_2: # %vector.body
# =>This Inner Loop Header: Depth=1
sub a3, a1, a2
sh2add a4, a2, a0
vsetvli a3, a3, e32, m2, ta, ma
vle32.v v10, (a4)
add a2, a2, a3
vadd.vv v10, v10, v8
vse32.v v10, (a4)
vadd.vx v8, v8, a3
bne a2, a1, .LBB0_2
With this we remove a significant number of VL toggles and vsetvli
instructions across llvm-test-suite and SPEC CPU 2017 with tail folding
enabled, since it affects every loop with an induction variable.
This builds upon the work in #124530 where we started computing what VL
each instruction demanded, and generalizes it to an optimistic sparse
dataflow analysis:
- We begin by optimistically assuming no VL is used by any instruction,
and push instructions onto the worklist starting from the bottom.
- For each instruction on the worklist we apply the transfer function,
which propagates the VL needed by that instruction upwards to the
instructions it uses. If a use's demanded VL changes, it's added to the
worklist.
- Eventually this converges to a fixpoint when all uses have been
processed and every demanded VL has been propagated throughout the
entire use-def chain. Only after this is the DemandedVL map accurate.
Some implementation details:
- The roots are stores (or other unsupported instructions not in
`isSupportedInstr`) or copies to physical registers (they fail the
`any_of(MI.defs(), isPhysical)` check)
- This patch untangles `getMinimumVLForUser` and `checkUsers`.
`getMinimumVLForUser` now returns how many lanes of an operand are read
by an instruction, whilst `checkUsers` checks that an instruction and
its users have compatible EEW/EMULs.
- The `DemandedVL` struct was added so that we have a default
constructor of 0 for `DenseMap<const MachineInstr *, DemandedVL>
DemandedVLs`, so we don't need to check if a key exists when looking
things up.
There was no measurable compile time impact on llvm-test-suite or SPEC
CPU 2017. The analysis will always terminate, there are more details in
this EuroLLVM talk here:
https://www.youtube.com/watch?v=Mfb5fRSdJAc
Fixes #149354
Commit: 6a4f66476ff59a32898891345bc07547e71028ec
https://github.com/llvm/llvm-project/commit/6a4f66476ff59a32898891345bc07547e71028ec
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/lib/Bindings/Python/IRModule.h
M mlir/test/python/ir/module.py
Log Message:
-----------
[MLIR][Python] restore `liveModuleMap` (#158506)
There are cases where the same module can have multiple references (via
`PyModule::forModule` via `PyModule::createFromCapsule`) and thus when
`PyModule`s get gc'd `mlirModuleDestroy` can get called multiple times
for the same actual underlying `mlir::Module` (i.e., double free). So we
do actually need a "liveness map" for modules.
Note, if `type_caster<MlirModule>::from_cpp` weren't a thing we could guarantree
this never happened except explicitly when users called `PyModule::createFromCapsule`.
Commit: 4a11ccee497a3e266c38eb6e9279f75cc61cfb9d
https://github.com/llvm/llvm-project/commit/4a11ccee497a3e266c38eb6e9279f75cc61cfb9d
Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/test/OpenMP/parallel_ast_print.cpp
M clang/test/OpenMP/parallel_default_messages.cpp
Log Message:
-----------
[Clang][OpenMP]Default clause variable category (#157063)
Support for Variable Category in Default Clause.
---------
Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>
Commit: 9d5556377c6e716b94747ad1db089dad19890f4e
https://github.com/llvm/llvm-project/commit/9d5556377c6e716b94747ad1db089dad19890f4e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/fp-constant-f16.mir
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/fp-constant.mir
Log Message:
-----------
[RISCV][GISel] Remove unnecessary copy from X0 in G_FCONSTANT selection. (#158429)
Instead of calling materializeImm, just assign GPRReg to X0.
While there, move conversion to APInt to only where it is necessary.
Commit: 03c356c5544fad1890cc9abd0c1a9b7bab6f2a6b
https://github.com/llvm/llvm-project/commit/03c356c5544fad1890cc9abd0c1a9b7bab6f2a6b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ExprConstant.cpp
M clang/test/Modules/added-visible-decls.cppm
Log Message:
-----------
[clang][bytecode] Pass initializer along in `evaluateAsInitializer()` (#158056)
We just called `getInit()`, which isn't always correct and used the
wrong initializer in the module test case.
Commit: 6931bad36c0ddae441d115814022fd5d3cbc554b
https://github.com/llvm/llvm-project/commit/6931bad36c0ddae441d115814022fd5d3cbc554b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Fix bit casts to IntAP types (#158509)
They were left out.
Fixes #153920
Commit: 1c21d5cb9b8e48ab928919a6f358eba8ffd3b49c
https://github.com/llvm/llvm-project/commit/1c21d5cb9b8e48ab928919a6f358eba8ffd3b49c
Author: David Green <david.green at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/GISelValueTracking.h
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
M llvm/unittests/CodeGen/GlobalISel/KnownBitsTest.cpp
M llvm/unittests/CodeGen/GlobalISel/KnownBitsVectorTest.cpp
Log Message:
-----------
[GlobalISel] Remove GI known bits cache (#157352)
There is a cache on the known-bit computed by global-isel. It only works
inside a single query to computeKnownBits, which limits its usefulness,
and according to the tests can sometimes limit the effectiveness of
known-bits queries. (Although some AMD tests look longer). Keeping the
cache valid and clearing it at the correct times can also require being
careful about the functions called inside known-bits queries.
I measured compile-time of removing it and came up with:
```
7zip 2.06405E+11 2.06436E+11 0.015018992
Bullet 1.01298E+11 1.01186E+11 -0.110236169
ClamAV 57942466667 57848066667 -0.16292023
SPASS 45444466667 45402966667 -0.091320249
consumer 35432466667 35381233333 -0.144594317
kimwitu++ 40858833333 40927933333 0.169118877
lencod 70022366667 69950633333 -0.102443457
mafft 38439900000 38413233333 -0.069372362
sqlite3 35822266667 35770033333 -0.145812474
tramp3d 82083133333 82045600000 -0.045726
Average -0.068828739
```
The last column is % difference between with / without the cache. So in
total it seems to be costing slightly more to keep the current
known-bits cache than if it was removed. (Measured in instruction count,
similar to llvm-compile-time-tracker).
The hit rate wasn't terrible - higher than I expected. In the
llvm-test-suite+external projects it was hit 4791030 times out of
91107008 queries, slightly more than 5%.
Note that as globalisel increases in complexity, more known bits calls
might be made and the numbers might shift. If that is the case it might
be better to have a cache that works across calls, providing it doesn't
make effectiveness worse.
Commit: 7b0d91002691e6fe4ad421682f7d2a12c21d9055
https://github.com/llvm/llvm-project/commit/7b0d91002691e6fe4ad421682f7d2a12c21d9055
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/vectors.cpp
Log Message:
-----------
[clang][bytecode] Check for dummy pointers in CopyArray op (#158543)
They can't be written to or read from.
Fixes #158535
Commit: d69238013fa10c3027975874b283b08a25e90fd0
https://github.com/llvm/llvm-project/commit/d69238013fa10c3027975874b283b08a25e90fd0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-14 (Sun, 14 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/bit.h
Log Message:
-----------
[ADT] Define countr_zero in terms of popcount (NFC) (#158519)
We can express the fallback mechanism of llvm::countr_zero a lot more
concisely with llvm::popcount. Since llvm::countr_zero now requires
llvm::popcount, this patch moves llvm::popcount earlier.
Commit: 24b58678bcde7d33117941b443f9bcd0fe67767a
https://github.com/llvm/llvm-project/commit/24b58678bcde7d33117941b443f9bcd0fe67767a
Author: Timm Bäder <tbaeder at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Disable int128 test if unsupported
This broke the armv8-quick builder:
https://lab.llvm.org/buildbot/#/builders/154/builds/21492
Commit: c60972a2cf16faba38844c82addeb78c893d5b3b
https://github.com/llvm/llvm-project/commit/c60972a2cf16faba38844c82addeb78c893d5b3b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Pointer.h
Log Message:
-----------
[clang][bytecode][NFC] Surround Pointer diagram in \verbatim (#158550)
See if this fixes the documentation.
Commit: 02d3e6ac75e776041fb1782efc4dfccfe6b46218
https://github.com/llvm/llvm-project/commit/02d3e6ac75e776041fb1782efc4dfccfe6b46218
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/AMDGPUSupport.rst
M clang/docs/HIPSupport.rst
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/test/CodeGenHIP/maybe_undef-attr-verify.hip
M clang/test/CodeGenOpenCL/builtins-amdgcn-wave32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wave64.cl
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/hip-macros.hip
R clang/test/Driver/hip-wavefront-size-deprecation-diagnostics.hip
M clang/test/Preprocessor/predefined-arch-macros.c
Log Message:
-----------
[HIP][Clang] Remove __AMDGCN_WAVEFRONT_SIZE macros (#157463)
Remove definitions, test uses, and documentation of the macros, which were
deprecated in November 2024 with PR #112849 / #115507.
Where required, the wavefront size should instead be queried via means provided
by the HIP runtime: the (non-constexpr) `warpSize` variable in device code, or
`hipGetDeviceProperties` in host code.
This change passed AMD-internal testing.
Implements SWDEV-522062.
Commit: 3371375131c645bb579323b60e92f2b0f9079f24
https://github.com/llvm/llvm-project/commit/3371375131c645bb579323b60e92f2b0f9079f24
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/test/Transforms/InstCombine/memcpy-from-global.ll
Log Message:
-----------
[InstCombine] Read-only call without return can capture (#157878)
The copied from constant memory analysis had a special case where
nocapture was not required for read-only calls without (or unused)
return. This is not correct, as the address can still be captured though
means other than memory and the return value, for example using
divergence. This code should not be trying to do its own nocapture
inference.
Commit: 0ee7c9434a4745a10cb68217134a356b63a346f9
https://github.com/llvm/llvm-project/commit/0ee7c9434a4745a10cb68217134a356b63a346f9
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/test/Dialect/Vector/td/unroll-elements.mlir
M mlir/test/Dialect/Vector/td/xfer-drop-unit-dims.mlir
M mlir/test/Dialect/Vector/vector-from-elements-lowering.mlir
M mlir/test/Dialect/Vector/vector-to-elements-lowering.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Tidy-up testing for to/from_elements unrolling (#158309)
1. Remove `TestUnrollVectorToElements` and
`TestUnrollVectorFromElements` test passes - these are not required.
2. Make "vector-from-elements-lowering.mlir" use TD Op for testing (for
consistency "vector-to-elements-lowering.mlir" and to make sure that
the TD Op, `transform.apply_patterns.vector.unroll_from_elements`, is
tested).
3. Unify `CHECK` prefixes (`CHECK-UNROLL` -> `CHECK`).
4. Rename `@to_elements_1d` as `@negative_unroll_to_elements_1d`, for
consistency with it's counterpart for `vector.from_elements` and to
align with our testing guide (*).
(*)
https://mlir.llvm.org/getting_started/TestingGuide/#after-step-3-add-the-newly-identified-missing-case
Commit: e4124c04799a53b663a58938292a7c123ee21556
https://github.com/llvm/llvm-project/commit/e4124c04799a53b663a58938292a7c123ee21556
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][Bazel] Add missing dependency after 48babe193186248e
Commit: 78bf682cb9033cf6a5bbc733e062c7b7d825fdaf
https://github.com/llvm/llvm-project/commit/78bf682cb9033cf6a5bbc733e062c7b7d825fdaf
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/AMDGPUSupport.rst
M clang/docs/HIPSupport.rst
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/test/CodeGenHIP/maybe_undef-attr-verify.hip
M clang/test/CodeGenOpenCL/builtins-amdgcn-wave32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wave64.cl
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/hip-macros.hip
A clang/test/Driver/hip-wavefront-size-deprecation-diagnostics.hip
M clang/test/Preprocessor/predefined-arch-macros.c
Log Message:
-----------
Revert "[HIP][Clang] Remove __AMDGCN_WAVEFRONT_SIZE macros" (#158566)
Reverts llvm/llvm-project#157463
The PR breaks buildbots with old ROCm versions, so revert it and reapply
when buildbots are updated.
Commit: e85926545e6313fd3c5c6147e82db42132c389ac
https://github.com/llvm/llvm-project/commit/e85926545e6313fd3c5c6147e82db42132c389ac
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/cmake/caches/Armv7M-picolibc.cmake
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
M libcxx/utils/ci/build-picolibc.sh
M libcxxabi/test/configs/armv7m-picolibc-libc++abi.cfg.in
M libunwind/test/configs/armv7m-picolibc-libunwind.cfg.in
Log Message:
-----------
[libcxx][CI] Use lld for everything in the ARM picolib builds (#158320)
Our host compiler is a clang install that will default to ld if not told
otherwise.
We were telling meson to use lld, but the way that we did it was
outdated, which lead to picolib producing a linker script that lld could
not use. The tests were in fact linking with ld instead.
Using the `c_ld` setting fixes this problem. See:
https://mesonbuild.com/Machine-files.html#binaries
Then to use lld in tests we need `-fuse-ld=lld` in the config files.
Some of these options were not needed for clang 19.1.7, but were for
clang 21.1.1. We will soon update to 21.1.1 so I have included all of
the required options in this PR.
Commit: 757bb36a58c7d7151a28c6a5fc7caa2e1f44de87
https://github.com/llvm/llvm-project/commit/757bb36a58c7d7151a28c6a5fc7caa2e1f44de87
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
Log Message:
-----------
[lldb][test] Disable a test from TestDAP_cancel.py on Windows
Flakey on our Windows on Arm bot:
https://lab.llvm.org/buildbot/#/builders/141/builds/11516
See https://github.com/llvm/llvm-project/issues/137660
Commit: fd4ef8e601fe1ea52162f63815192540f3660f39
https://github.com/llvm/llvm-project/commit/fd4ef8e601fe1ea52162f63815192540f3660f39
Author: Mahesh-Attarde <mahesh.attarde at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/test/CodeGen/X86/isel-ceil.ll
M llvm/test/CodeGen/X86/isel-floor.ll
M llvm/test/CodeGen/X86/isel-ftrunc.ll
Log Message:
-----------
[X86][GlobalIsel] Support G_INTRINSIC_TRUNC/G_FCEIL/G_FFLOOR (#156633)
This PR adds support for C/CPP Lib Intrinsic G_INTRINSIC_TRUNC/G_FCEIL/G_FFLOOR from LangRef in GlobalIsel.
Commit: 4de9bee7e53eb84a22511317e26dfd656b66df8b
https://github.com/llvm/llvm-project/commit/4de9bee7e53eb84a22511317e26dfd656b66df8b
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/test/Shell/SymbolFile/PDB/native-setting.cpp
Log Message:
-----------
[LLDB][PDB] Require Windows for for testing PDB plugin-selection again (#158559)
Amends #158284 and fixes the failure on `lldb-remote-linux-win` from
https://github.com/llvm/llvm-project/pull/158284#issuecomment-3290154510.
That builder is configured with the DIA SDK but builds for Linux, so the
debug information will be DWARF, not PDB.
Commit: d8c8c67dc5e1ac7f3a551750b9e21ec64ec5b283
https://github.com/llvm/llvm-project/commit/d8c8c67dc5e1ac7f3a551750b9e21ec64ec5b283
Author: Mahesh-Attarde <mahesh.attarde at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
A llvm/test/CodeGen/X86/isel-smax.ll
A llvm/test/CodeGen/X86/isel-smin.ll
A llvm/test/CodeGen/X86/isel-umax.ll
A llvm/test/CodeGen/X86/isel-umin.ll
Log Message:
-----------
[X86][GlobalIsel] Add G_[U|S]MIN/G_[U|S]MAX scalar test coverage (#157621)
Adds isel test for supporting G_[U|S]MIN/G_[U|S]MAX.
Commit: 50bcf6818e045a39eb21201f7c512e514476385e
https://github.com/llvm/llvm-project/commit/50bcf6818e045a39eb21201f7c512e514476385e
Author: Brandon <61314499+brandonxin at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
Log Message:
-----------
[X86][bytecode] Allow SSE/AVX BLEND imm intrinsics to be used in constexpr (#157776)
This marks the following builtins as constexpr, which allows their
corresponding intrinsics to be used in constexprs.
| Intrinsics | X86 Builtins | CPUID Flags | Header |
| -------------------- | --------------------------- | ----------- |
----------- |
| `_mm_blend_pd` | `__builtin_ia32_blendpd` | SSE4.1 | smmintrin.h |
| `_mm256_blend_pd` | `__builtin_ia32_blendpd256` | AVX | immintrin.h |
| `_mm_blend_ps` | `__builtin_ia32_blendps` | SSE4.1 | smmintrin.h |
| `_mm256_blend_ps` | `__builtin_ia32_blendps256` | AVX | immintrin.h |
| `_mm_blend_epi16` | `__builtin_ia32_pblendw128` | SSE4.1 | smmintrin.h
|
| `_mm256_blend_epi16` | `__builtin_ia32_pblendw256` | AVX2 |
immintrin.h |
| `_mm_blend_epi32` | `__builtin_ia32_pblendd128` | AVX2 | immintrin.h |
| `_mm256_blend_epi32` | `__builtin_ia32_pblendd256` | AVX2 |
immintrin.h |
Fixes #157065
---------
Co-authored-by: Timm Baeder <tbaeder at redhat.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: de0094edf0c8596550ed58d1b43e10969631a5ab
https://github.com/llvm/llvm-project/commit/de0094edf0c8596550ed58d1b43e10969631a5ab
Author: Georgios Pinitas <georgios.pinitas at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Log Message:
-----------
[mlir][tosa] Introduce accumulator type for `reduce_sum` on bf16 (#158389)
TOSA requires that `reduce_sum` operations on bf16 accumulate into fp32.
This change updates the `linalg` legalization by introducing an explicit
accumulator type to ensure compliance with the specification.
---------
Signed-off-by: Georgios Pinitas <georgios.pinitas at arm.com>
Commit: 273917e5c0d935af5736770bdc9d0b03ce04dd8c
https://github.com/llvm/llvm-project/commit/273917e5c0d935af5736770bdc9d0b03ce04dd8c
Author: David Green <david.green at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/aarch64-tail-dup-size.ll
A llvm/test/CodeGen/AArch64/global-merge-external.ll
M llvm/test/CodeGen/AArch64/global-merge-minsize.ll
M llvm/test/CodeGen/AArch64/local-bounds-single-trap.ll
Log Message:
-----------
[AArch64] Update and extend some GlobalMerge tests. NFC
Commit: 44061d14fb03ebbd38050c628ed009ae4db2714c
https://github.com/llvm/llvm-project/commit/44061d14fb03ebbd38050c628ed009ae4db2714c
Author: Harsh Tiwary <harshtiwary2012 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512fp16intrin.h
M clang/lib/Headers/avx512vlbwintrin.h
M clang/lib/Headers/avx512vlfp16intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlbw-builtins.c
M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
Log Message:
-----------
[Headers][X86] Allow AVX512 masked blend intrinsics to be used in constexpr (#156234)
This patch enables AVX-512 masked blend intrinsics to be usable in
constant expressions (`constexpr`) across various vector widths
(128-bit, 256-bit, 512-bit). It updates the respective Clang headers to
include the `__DEFAULT_FN_ATTRS_CONSTEXPR` annotation where applicable,
and supplements the change with thorough `TEST_CONSTEXPR` checks in the
X86 CodeGen test suite to validate constexpr evaluation.
Fixes #155796.
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: d8c2607fb1f4094db18e7716764738f9bc8489df
https://github.com/llvm/llvm-project/commit/d8c2607fb1f4094db18e7716764738f9bc8489df
Author: Ivan Murashko <ivan.murashko at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/SemaCXX/PR68605.cpp
M clang/test/SemaCXX/warn-shadow-in-lambdas.cpp
Log Message:
-----------
[clang][Sema] Fix false positive -Wshadow with structured binding captures (#157667)
Previously, lambda init captures of structured bindings were incorrectly
classified as regular shadow warnings (shown with `-Wshadow`), while
regular parameter captures were correctly classified as
`uncaptured-local` warnings (shown only with `-Wshadow-all`). This
created inconsistent behavior:
```cpp
void foo1(std::pair<int, int> val) {
[val = std::move(val)](){}(); // No warning with -Wshadow (correct)
}
void foo2(std::pair<int, int> val) {
auto [a, b] = val;
[a = std::move(a)](){}(); // Warning with -Wshadow (incorrect)
}
```
The fix extends the existing lambda capture classification logic in
`CheckShadow()` to handle `BindingDecl` consistently with `VarDecl`,
ensuring both cases show no warnings with `-Wshadow` and
`uncaptured-local` warnings with `-Wshadow-all`.
Fixes #68605.
---------
Co-authored-by: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Commit: 2c091e6aec2d48fbcafc9cc5909a62f0321db1fd
https://github.com/llvm/llvm-project/commit/2c091e6aec2d48fbcafc9cc5909a62f0321db1fd
Author: macurtis-amd <macurtis at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/memcpy-fixed-align.ll
M llvm/test/CodeGen/AMDGPU/memcpy-libcall.ll
M llvm/test/CodeGen/AMDGPU/memcpy-param-combinations.ll
M llvm/test/CodeGen/AMDGPU/memmove-param-combinations.ll
A llvm/test/Transforms/AggressiveInstCombine/AMDGPU/fold-consecutive-loads.ll
A llvm/test/Transforms/AggressiveInstCombine/AMDGPU/lit.local.cfg
Log Message:
-----------
AMDGPU: Report unaligned scratch access as fast if supported by tgt (#158036)
This enables more consecutive load folding during
aggressive-instcombine.
The original motivating example provided by Jeff Byrnes:
https://godbolt.org/z/8ebcTEjTs
Example provided by Nikita Popov: https://godbolt.org/z/Gv1j4vjqE as
part of my original attempt to fix the issue (PR
[#133301](https://github.com/llvm/llvm-project/pull/133301), see his
[comment](https://github.com/llvm/llvm-project/pull/133301#issuecomment-2984905809)).
This changes the value of `IsFast` returned by `In
SITargetLowering::allowsMisalignedMemoryAccessesImpl` to be non-zero for
private and flat addresses if the subtarget supports unaligned scratch
accesses.
This enables aggressive-instcombine to do more folding of consecutive
loads (see
[here](https://github.com/llvm/llvm-project/blob/cbd496581fb6953a9a8d8387a010cc3a67d4654b/llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp#L811)).
Summary performance impact on
[composable_kernel](https://github.com/ROCm/composable_kernel):
|GPU|speedup (geomean*)|
|---|---|
|MI300A| 1.11|
|MI300X| 1.14|
|MI350X| 1.03|
[*] Just to be clear, this is the geomean across kernels which were
impacted by this change - not across all CK kernels.
Commit: 994a6a39e13dcc335247a127a5da05905d1ac541
https://github.com/llvm/llvm-project/commit/994a6a39e13dcc335247a127a5da05905d1ac541
Author: Uyiosa Iyekekpolor <96444432+uyoyo0 at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
A llvm/test/Transforms/VectorCombine/AArch64/scalarize-ext-extract-endian.ll
A llvm/test/Transforms/VectorCombine/PowerPC/lit.local.cfg
A llvm/test/Transforms/VectorCombine/PowerPC/scalarize-ext-extract.ll
Log Message:
-----------
[VectorCombine] Fix scalarizeExtExtract for big-endian (#157962)
The scalarizeExtExtract transform assumed little-endian lane ordering,
causing miscompiles on big-endian targets such as AIX/PowerPC under -O3
-flto.
This patch updates the shift calculation to handle endianness correctly
for big-endian targets. No functional change
for little-endian targets.
Fixes #158197.
---------
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: e1d60f7f3c2773f21d13ae50d08a605529c102da
https://github.com/llvm/llvm-project/commit/e1d60f7f3c2773f21d13ae50d08a605529c102da
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector][nfc] Group all tests for `foldFromElementsToConstant` (#158578)
This patch merely moves + renames tests for Vector's
`foldFromElementsToConstant` - to better align with our testing guides:
* https://mlir.llvm.org/getting_started/TestingGuide/
Changes:
1. Make sure that all tests for `foldFromElementsToConstant` are
grouped together.
2. Use `@negative_` as a prefix for negative tests (*).
3. Use captigal letters for LIT variable names (*).
Commit: cdedc81c33649e97f053ca9eb346e3db6664bd7e
https://github.com/llvm/llvm-project/commit/cdedc81c33649e97f053ca9eb346e3db6664bd7e
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/APINotes.rst
M clang/include/clang/APINotes/Types.h
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesTypes.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/swift-import-as.cpp
Log Message:
-----------
[APINotes] Support annotating safety of APIs (#157506)
Commit: 148a83543b2fdacdeac71ff49d3f76e386cf6f91
https://github.com/llvm/llvm-project/commit/148a83543b2fdacdeac71ff49d3f76e386cf6f91
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[LV] Introduce m_One and improve (0|1)-match (NFC) (#157419)
Commit: 2848e2801260e4cdb7468523a7c9a7df1223749e
https://github.com/llvm/llvm-project/commit/2848e2801260e4cdb7468523a7c9a7df1223749e
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
Log Message:
-----------
[LV] Add test with partial reduction without narrowing.
Commit: 641ed9f66fbc931f301dd123a08bcc2d3c83ee9d
https://github.com/llvm/llvm-project/commit/641ed9f66fbc931f301dd123a08bcc2d3c83ee9d
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
Log Message:
-----------
[X86] Handle undef/zero/ones cases after modifying Ops and Masks (#158428)
Fixes https://github.com/llvm/llvm-project/issues/158415.
After `resolveTargetShuffleInputsAndMask` and other modifications on
`Ops` and `Mask`, unused inputs in `Ops` are erased, and may leave `Ops`
empty. This patch handles such cases before calling the final
`combineX86ShuffleChain`。
Commit: 29b6433bfbd6b778d6a6686cac96ae4b7640224e
https://github.com/llvm/llvm-project/commit/29b6433bfbd6b778d6a6686cac96ae4b7640224e
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/invalid.mlir
Log Message:
-----------
[OpenACC] verify acc::DeclareEnterOp operand not BlockArgument (#158095)
Check that the operand of acc::DeclareEnterOp is a BlockArgument before
trying to get its defining operation so it will not segfault and instead
produce a clean error. Add test case.
Commit: b0de4e67775869a9e0a7c95236335084165e90ce
https://github.com/llvm/llvm-project/commit/b0de4e67775869a9e0a7c95236335084165e90ce
Author: Georgios Pinitas <georgios.pinitas at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-resize.mlir
Log Message:
-----------
[mlir][tosa] Add support for BF16 in `tosa.resize` legalization (#158616)
Extend the resize linalg legalization functionality with BF16 support
and in accordance to the TOSA specification.
Signed-off-by: Georgios Pinitas <georgios.pinitas at arm.com>
Commit: 471bd1745ef044a7ee58a4947bf06a7f56660502
https://github.com/llvm/llvm-project/commit/471bd1745ef044a7ee58a4947bf06a7f56660502
Author: Amir Bishara <139038766+amirBish at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Func/TransformOps/FuncTransformOps.td
M mlir/include/mlir/Dialect/Func/Utils/Utils.h
M mlir/lib/Dialect/Func/TransformOps/FuncTransformOps.cpp
M mlir/lib/Dialect/Func/Utils/Utils.cpp
M mlir/test/Dialect/Func/func-transform-invalid.mlir
M mlir/test/Dialect/Func/func-transform.mlir
Log Message:
-----------
[mlir][func]-Add deduplicate funcOp arguments transform (#158266)
This PR adds a new transform operation which removes the duplicate
arguments from the function operation based on the callOp of this
function.
To have a more simple implementation for now, the transform will fail
when having multiple callOps for the same function we want to eliminate
the different arguments from.
This pull request also adpat the utils under the func dialect to be
reusable also for this transformOp.
Commit: 1d27e663691f0dc8b42acd09cab8c6eb15489950
https://github.com/llvm/llvm-project/commit/1d27e663691f0dc8b42acd09cab8c6eb15489950
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M .github/workflows/libcxx-run-benchmarks.yml
Log Message:
-----------
[Github] Fix security issues in libcxx-run-benchmarks.yml workflow (#158467)
There was one action dependency that was not hash pinned and this
workflow also allowed code injection as the input might not be properly
escaped when dumped into the run script.
Commit: dd8767b10176c307b58af5d7aff63f59292115bf
https://github.com/llvm/llvm-project/commit/dd8767b10176c307b58af5d7aff63f59292115bf
Author: A. Jiang <de34 at live.cn>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/test/support/MinSequenceContainer.h
Log Message:
-----------
[libc++][test] Clean-up `MinSequenceContainer` (#158432)
Follows-up #158344.
- Guard range-related functions with `TEST_STD_VER >= 23`.
- Mark range-related functions unconditionally `constexpr`.
- Add `TEST_CONSTEXPR_CXX20` to one `operator=`.
This will make `MinSequenceContainer` more consistent and useful for
legacy container adaptors or C++26 `constexpr` additions. Although we're
currently only using it with flat container adaptors.
Commit: 0058cc81f14bc76d1c81ba3bd20d9e341e047277
https://github.com/llvm/llvm-project/commit/0058cc81f14bc76d1c81ba3bd20d9e341e047277
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
Log Message:
-----------
[libc++] Add documentation for the new comment-triggered benchmarking bot (#158167)
The new benchmarking bot is experimental and is very rough on the edges.
Commit: f0cf167a5eb36de2657669c68190517624a2cee9
https://github.com/llvm/llvm-project/commit/f0cf167a5eb36de2657669c68190517624a2cee9
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/utils/ci/build-picolibc.sh
Log Message:
-----------
[libc++][CI] Update meson used for building picolibc (#158308)
1.9.0 is the latest release.
This doesn't fix any current problem, I just want to make sure we update
these things once in a while in case upstream picolibc adopts new
versions.
Commit: a41660aaf40b0f3b119300a8d980be52c2c4feed
https://github.com/llvm/llvm-project/commit/a41660aaf40b0f3b119300a8d980be52c2c4feed
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/stringstream.bench.cpp
Log Message:
-----------
[libc++] Don't run multithreaded stringstream benchmarks (#158294)
This results in invalid JSON output as reported in google/benchmark#2039.
Commit: d0263f07d1ad35223b017e660725c0a093e89e74
https://github.com/llvm/llvm-project/commit/d0263f07d1ad35223b017e660725c0a093e89e74
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/filesystem.bench.cpp
M libcxx/utils/parse-google-benchmark-results
Log Message:
-----------
[libc++] Remove complexity calculations from <filesystem> benchmark (#158290)
Our benchmarks are not really suited for complexity calculation, since
that doesn't translate nicely to any of the performance tracking tools
we have (including Lit).
Commit: e0a33cb599f8614b3d897ad2bd2f9fa8e1acbac5
https://github.com/llvm/llvm-project/commit/e0a33cb599f8614b3d897ad2bd2f9fa8e1acbac5
Author: camc <69519329+camc at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseDecl.cpp
A clang/test/Parser/cxx03-attributes.cpp
Log Message:
-----------
[clang] Allow attributes on first constructor argument in pre-C++11 (#157300)
Resolves GH-156809
Modifies decl parser to allow C++11 style [[attributes]] on the first
argument in constructors in all C++ standards. They are already allowed
on later arguments.
---------
Co-authored-by: Shafik Yaghmour <shafik.yaghmour at intel.com>
Commit: 895cda70a95529fd22aac05eee7c34f7624996af
https://github.com/llvm/llvm-project/commit/895cda70a95529fd22aac05eee7c34f7624996af
Author: Sebastian Pop <spop at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Driver/clang_f_opts.c
M flang/docs/ReleaseNotes.md
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/loop-fuse.f90
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
Introduce -fexperimental-loop-fuse to clang and flang (#142686)
This patch adds the flag -fexperimental-loop-fuse to the clang and flang
drivers. This is primarily useful for experiments as we envision to
enable the pass one day.
The options are based on the same principles and reason on which we have
`floop-interchange`.
---------
Co-authored-by: Madhur Amilkanthwar <madhura at nvidia.com>
Commit: 4452fbddc5c410f50557ea9f1ef6e1e83d236b1e
https://github.com/llvm/llvm-project/commit/4452fbddc5c410f50557ea9f1ef6e1e83d236b1e
Author: Shaoce SUN <sunshaoce at outlook.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/test/CodeGen/RISCV/GlobalISel/constantpool.ll
M llvm/test/CodeGen/RISCV/GlobalISel/double-arith.ll
M llvm/test/CodeGen/RISCV/GlobalISel/float-arith.ll
M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
Log Message:
-----------
[RISCV][GlobalIsel] Reduce constant pool usage without FP extension (#158346)
The recognition range can be extended later.
Commit: dc00abac0e79359a16d617f1c36b5a628fa5b8a1
https://github.com/llvm/llvm-project/commit/dc00abac0e79359a16d617f1c36b5a628fa5b8a1
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/lit.cfg.py
Log Message:
-----------
[llvm] Add env prefix to environment variable
This substitution is used in a few tests in certain build configurations
(seems like only a 2-stage build on Darwin with Asan enabled on a
previous stage). This needs an env prefix now that we have enabled the
internal shell by default, or the tests end up failing.
Commit: 228e24028d35af81172f1bf9b49abcd226e76aae
https://github.com/llvm/llvm-project/commit/228e24028d35af81172f1bf9b49abcd226e76aae
Author: Hans Wennborg <hans at hanshq.net>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
Log Message:
-----------
Add llvm-ml64 to LLVM_TOOLCHAIN_TOOLS (#158582)
So that it gets included in LLVM_INSTALL_TOOLCHAIN_ONLY builds, such as
when building the Windows installer.
Fixes #149664
Commit: 00c051080c3b03f2f6a346605c485bb828579b8d
https://github.com/llvm/llvm-project/commit/00c051080c3b03f2f6a346605c485bb828579b8d
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for 471bd1745ef044a7ee58a4947bf06a7f56660502
Commit: 64d5e6c4b35be1840bfffe57a24db2b9d18d65fe
https://github.com/llvm/llvm-project/commit/64d5e6c4b35be1840bfffe57a24db2b9d18d65fe
Author: Nathan Gauër <brioche at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/utils/TableGen/ClangAttrEmitter.cpp
Log Message:
-----------
[NFC][clang] replace a C-array with std::array (#158047)
Follow up to #157841, replacing the C-array with std::array so iterators
can be used.
---------
Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>
Commit: 92dcbf4092059b0c61865a3eac9520d7b5440951
https://github.com/llvm/llvm-project/commit/92dcbf4092059b0c61865a3eac9520d7b5440951
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
Log Message:
-----------
[NFC] Fix commas on assertion from 147514 (#158635)
As brought up on the review for #147514, the original patch doesn't
correctly parenthesize the expression in the assert. This fixes it.
Commit: 53a4e4a77bd70731320bfa82ddbe6f88ee30ea6f
https://github.com/llvm/llvm-project/commit/53a4e4a77bd70731320bfa82ddbe6f88ee30ea6f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/include/__utility/lazy_synth_three_way_comparator.h
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
M libcxx/test/std/containers/associative/multimap/multimap.ops/find.pass.cpp
M libcxx/test/std/containers/associative/multiset/find.pass.cpp
M libcxx/test/std/containers/associative/set/find.pass.cpp
Log Message:
-----------
[libc++] Specialize __lazy_synth_three_way_comparator for std::greater and friends (#157624)
This specializes `__lazy_synth_three_way_comparator` to forward to
`__default_three_way_comparator` if the comparator desugars to
`__greater_tag`. This is the same as the desugaring to `__less_tag`
except that the sign has to be inverted.
Commit: f1a02c681f0d092bb28ac3ff2e79eff11ecb95dc
https://github.com/llvm/llvm-project/commit/f1a02c681f0d092bb28ac3ff2e79eff11ecb95dc
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
Log Message:
-----------
[lldb] Fix unordered-map data formatter for const types (#156033)
The test was failing because the const qualifier is not removed when checking if the type is an `unordered_map`
Commit: 5e118eca93ad7591c7b904a160d4d42cd37903c5
https://github.com/llvm/llvm-project/commit/5e118eca93ad7591c7b904a160d4d42cd37903c5
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unordered_map-iterator/TestDataFormatterStdUnorderedMap.py
Log Message:
-----------
[lldb][test] Fix unordered-map test. (#158286)
The build step is overidden so it uses `libstdc++` instead of `libc++`
on linux
Commit: c723cc2a041d6e7e741b0ce6abc1f18d4ada9b4a
https://github.com/llvm/llvm-project/commit/c723cc2a041d6e7e741b0ce6abc1f18d4ada9b4a
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
Log Message:
-----------
[Remarks] BitstreamRemarkParser: Refactor error handling (#156511)
In preparation of larger changes to the bitstream remark format,
refactor the error handling code in the BitstreamRemarkParser.
Main change: move the various static helper methods into the parser
helper classes, so we don't need to pass around as many args. Calling
`error(...)` inside the helper classes now automatically prepends the
current block being parsed to the error message.
NFCI (except for error messages on invalid bitstream files).
Pull Request: https://github.com/llvm/llvm-project/pull/156511
Commit: 271740c8baa08ad2451111f9d49d7cc3db92d199
https://github.com/llvm/llvm-project/commit/271740c8baa08ad2451111f9d49d7cc3db92d199
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
Log Message:
-----------
[NFC] Fix "shift implicitly converted" warning introduced by #154761 (#158619)
Commit: 4bf0001c0738efa5902287011c63650bac8791b5
https://github.com/llvm/llvm-project/commit/4bf0001c0738efa5902287011c63650bac8791b5
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/memcmp32_fixsize.ll
A llvm/test/CodeGen/PowerPC/memcmp64_fixsize.ll
Log Message:
-----------
[PowerPC][NFC] Pre-commit test case: Implement a more efficient memcmp in cases where the length is known (#158367)
The newly added test case will be used to verify a more efficient memcmp
in cases where the length is known.
Commit: 3c75065765c96ebf4f7f2f66eb21e45fb4d74704
https://github.com/llvm/llvm-project/commit/3c75065765c96ebf4f7f2f66eb21e45fb4d74704
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
Log Message:
-----------
Revert "[Remarks] BitstreamRemarkParser: Refactor error handling" (#158647)
Reverts llvm/llvm-project#156511. Build failure not caught by pre-commit
CI.
Commit: af144d582ea16483670be3fc00df5131deaa0fd2
https://github.com/llvm/llvm-project/commit/af144d582ea16483670be3fc00df5131deaa0fd2
Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/Debuggers.py
M cross-project-tests/lit.cfg.py
Log Message:
-----------
[Dexter] llvm-lit: Always log DAP messages to stderr (#158586)
This will help diagnose flaky buildbots. The stderr output is only shown
by lit if the test fails.
Commit: 959c3b627fd4084ae583c80703b88b91f63f9a0e
https://github.com/llvm/llvm-project/commit/959c3b627fd4084ae583c80703b88b91f63f9a0e
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Headers/intrin.h
A clang/test/Headers/arm-acle-no-direct-include.c
Log Message:
-----------
[clang][ARM] Include arm_acle.h in intrin.h on supported platforms (#144172)
Right now when using ARM intrinsics without including `arm_acle.h`, we
throw a warning saying to include it or provide a declaration for the
function.
MSVC doesn't have any ARM-intrinsic specific header, so include Clang's
ARM intrinsic header (`arm_acle.h`) in `intrin.h` so we don't get a
warning that tells the user to include a header that doesn't exist.
Ideally we could change the header based on the platform, but we don't
have the infra for that at the moment.
See https://github.com/llvm/llvm-project/pull/140910 for more info.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 32ab6ff9f95739cba9954e666479d30e126af53c
https://github.com/llvm/llvm-project/commit/32ab6ff9f95739cba9954e666479d30e126af53c
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/OpenMP/Utils.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/OpenMP/AutomapToTargetData.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
Log Message:
-----------
[NFC][Flang] Move bounds helper functions to Util header. (#154164)
This PR moves the `needsBoundsOps` and `genBoundsOps` helper functions
to `flang/include/flang/Optimizer/OpenMP/Utils.h`.
Commit: 0cca9e4baa0073a5a6f46b1b09dbd6ed290ae619
https://github.com/llvm/llvm-project/commit/0cca9e4baa0073a5a6f46b1b09dbd6ed290ae619
Author: Akira Hatanaka <ahatanak at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
[compiler-rt] Remove enable_execute_stack support on arm64 Darwin (#158386)
`enable_execute_stack` is not supported on arm64 Darwin because:
- It calls mprotect with `PROT_WRITE | PROT_EXEC`, which is rejected on
this platform.
- It assumes a fixed 4K page size, which is not guaranteed.
This change disables building `enable_execute_stack` on arm64 Darwin and
fixes the failing test:
`compiler-rt/test/builtins/Unit/enable_execute_stack_test.c`.
rdar://159705691
Commit: 99ec5b95da4fa4e32cf9854513413510d48781f6
https://github.com/llvm/llvm-project/commit/99ec5b95da4fa4e32cf9854513413510d48781f6
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
A flang/test/Driver/flang-dwarf-version.f90
Log Message:
-----------
[flang][driver] Support -gdwarf-N option. (#158314)
This PR adds the support for -gdwarf-N option where allows user to
choose the version of the dwarf. Currently N can be 2, 3, 4, or 5. This
is only the driver part of the change. Later PRs will propogate it to
the IR.
Fixes https://github.com/llvm/llvm-project/issues/112910.
Commit: e299d9ac744600d837b45cb0be9d000b4ecbf2a3
https://github.com/llvm/llvm-project/commit/e299d9ac744600d837b45cb0be9d000b4ecbf2a3
Author: sstipano <sstipano7 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/FLATInstructions.td
Log Message:
-----------
[AMDGPU][NFC] Refactor FLAT_Global_* pseudos. (#120244)
Commit: c88f3c582dc2ef5f2fdfd0c5887f5f7562f49095
https://github.com/llvm/llvm-project/commit/c88f3c582dc2ef5f2fdfd0c5887f5f7562f49095
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/include/mlir/IR/PatternMatch.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
Log Message:
-----------
[mlir] Add base class type aliases for rewrites/conversions. NFC. (#158433)
This is to simplify writing rewrite/conversion patterns that usually
start with:
```c++
struct MyPattern : public OpRewritePattern<MyOp> {
using OpRewritePattern::OpRewritePattern;
```
and allow for:
```c++
struct MyPattern : public OpRewritePattern<MyOp> {
using Base::Base;
```
similar to how we enable it for pass classes.
Commit: 134a58adff85c6f7bcd8fb29604b954c82c78e2a
https://github.com/llvm/llvm-project/commit/134a58adff85c6f7bcd8fb29604b954c82c78e2a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaOverload.cpp
A clang/test/CodeGen/vector-convert-boolean.cpp
A clang/test/Sema/vector-bool-assign.c
A clang/test/Sema/vector-bool-assign.cpp
Log Message:
-----------
[Clang] Permit implicit conversion from integral to boolean vectors (#158369)
Summary:
Clang supports boolean vectors as an extension to the vector model.
These are commonly used to represent mask vectors in many vector ISAs.
Currently, using these is quite difficult because all of the vector
comparison operations use integral bitmasks. C / C++ has a long history
of allowing implicit conversions to bool, and I think that we should be
able to do the same here, especially because boolean vectors often work
as wrappers around a bitfield.
This patch adds the minimal changes to enable integral to boolean
conversions for vectors. Because LLVM already handles comparison to zero
for vectors natively, minimal changes are required. We are not bound to
the OpenCL standard at all here because it explicitly forbids boolean
vectors anyway, so these are simply clang extensions.
Commit: c7acd0796cb8971cb4abccc7813be23ee447ab0f
https://github.com/llvm/llvm-project/commit/c7acd0796cb8971cb4abccc7813be23ee447ab0f
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/test/OpenMP/spirv_locstr.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[clang][OMPIRBuilder] Use default target AS to create types (#158152)
Currently we assume that `0` is the default AS, which is usually true,
but it isn't for `SPIR-V`.
Pass down the AS from `clang` and use it to create types.
After this change, we finally generate fully valid SPIR-V for a basic
OpenMP Offloading example.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 5365f8bc91d2d820092e904ecab21b841e3f5abb
https://github.com/llvm/llvm-project/commit/5365f8bc91d2d820092e904ecab21b841e3f5abb
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/OpenMP/Utils.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Optimizer/OpenMP/AutomapToTargetData.cpp
M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
Log Message:
-----------
Revert "[NFC][Flang] Move bounds helper functions to Util header." (#158654)
Reverts llvm/llvm-project#154164
Commit: f5d3cf4a643fc13194e09cb39905f7f3b083f85e
https://github.com/llvm/llvm-project/commit/f5d3cf4a643fc13194e09cb39905f7f3b083f85e
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/test/lib/Dialect/Test/TestInterfaces.td
M mlir/test/mlir-tblgen/op-interface.td
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
Log Message:
-----------
[mlir][TableGen] Emit interface traits after all interfaces (#147699)
Interface traits may provide default implementation of methods. When
this happens, the implementation may rely on another interface that is
not yet defined meaning that one gets "incomplete type" error during C++
compilation. In pseudo-code, the problem is the following:
```
InterfaceA has methodB() { return InterfaceB(); }
InterfaceB defined later
// What's generated is:
class InterfaceA { ... }
class InterfaceATrait {
// error: InterfaceB is an incomplete type
InterfaceB methodB() { return InterfaceB(); }
}
class InterfaceB { ... } // defined here
```
The two more "advanced" cases are:
* Cyclic dependency (A requires B and B requires A)
* Type-traited usage of an incomplete type (e.g.
`FailureOr<InterfaceB>`)
It seems reasonable to emit interface traits *after* all of the
interfaces have been defined to avoid the problem altogether.
As a drive by, make forward declarations of the interfaces early so that
user code does not need to forward declare.
Commit: 0237477a121ec78eaf874a223dca6cd24d0111b8
https://github.com/llvm/llvm-project/commit/0237477a121ec78eaf874a223dca6cd24d0111b8
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
Log Message:
-----------
[MLIR] Attempt to fix sanitizer issue (access of uninitialized member)
Follow-up to #156825 ; a member wasn't always initialized, it's not clear to me
why this is needed though, so this fix may not be the right one, we'll monitor
the bots.
Commit: 1aa7159e0c2876d78f90131d5428c1856af6dda8
https://github.com/llvm/llvm-project/commit/1aa7159e0c2876d78f90131d5428c1856af6dda8
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/llvm-tests.yml
Log Message:
-----------
[Github] Use standard checkout for ABI test workflows (#158468)
These workflows are currently using a custom checkout action in
llvm/actions. This does the same thing as actions/checkout, but incurs a
maintenance cost that we have not really been paying. Switch over to the
Github supported workflow so someone else is paying the maintenance
cost.
Commit: 9f06b28f87bf170cde4000afac1e3221b0418f28
https://github.com/llvm/llvm-project/commit/9f06b28f87bf170cde4000afac1e3221b0418f28
Author: Aditya Chaudhary <aditya.chaudhary0714 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/Driver/aix-gsplit-dwarf.c
Log Message:
-----------
[AIX] Disable -gsplit-dwarf as it is unsupported at the moment on AIX (#158199)
**-gsplit-dwarf** flag causes an internal compiler error on AIX.
This PR aims to disable the -gsplit-dwarf flag on the AIX platform, as
it is unsupported at the moment.
Co-authored-by: Aditya Chaudhary <aditya.chaudhary1 at ibm.com>
Commit: 5211d4d971efc4f7f8066561e8fca319ef75965d
https://github.com/llvm/llvm-project/commit/5211d4d971efc4f7f8066561e8fca319ef75965d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M .github/workflows/gha-codeql.yml
Log Message:
-----------
[Github] Add path filtering to CodeQL workflow
This workflow should only be triggering on PRs that touch Github
workflows. This is not the case currently because I forgot to add path
filtering in the original implementation.
Commit: f7985df47d51fa8e68be3717281e995fa753f5b1
https://github.com/llvm/llvm-project/commit/f7985df47d51fa8e68be3717281e995fa753f5b1
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[clang] NFC: non-type template argument check cleanup (#158515)
This is a follow-up to #134461, reverting some unnecessary changes.
This cleans up some checks around the assumption that a pack expansion
on the argument side could appear when checking non-type template
arguments when handling the pre-C++17 rules, but all of these cases are
being handled using the C++17 rules anyway.
This reverts those changes and adds an assert confirming these cases are
not possible.
Commit: a6585b0cc4c135d4a4aed064383be01ad5551b42
https://github.com/llvm/llvm-project/commit/a6585b0cc4c135d4a4aed064383be01ad5551b42
Author: Adrian Kuegel <akuegel at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/complex-reduction.h
M flang/include/flang/Runtime/freestanding-tools.h
Log Message:
-----------
[flang] Add header includes to make headers compile standalone. (#158215)
When compiling headers standalone, we need additional header includes.
Commit: d687dfe619b23d77633c4c9f3590210572bdcf03
https://github.com/llvm/llvm-project/commit/d687dfe619b23d77633c4c9f3590210572bdcf03
Author: Perry Gibson <Wheest at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] expose MLIR Pygments lexer to bazel overlay (#158604)
[This existing
tool](https://github.com/llvm/llvm-project/tree/main/mlir/utils/pygments)
allows us to do code highlighting for MLIR, e.g., for use in docs.
However, it is not currently exposed to Bazel. Here, I do this using
`exports_files`, and rely on the user to create a `py_library`.
Commit: ed165237cd48e699396631c64f2932bd8e6ee485
https://github.com/llvm/llvm-project/commit/ed165237cd48e699396631c64f2932bd8e6ee485
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/test/MC/AMDGPU/gfx11_asm_vopd_err.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vopd_errs.s
M llvm/test/MC/AMDGPU/gfx12_asm_vopd_errs.s
M llvm/test/MC/AMDGPU/mai-gfx950-err.s
M llvm/test/MC/AMDGPU/vop3-literal.s
Log Message:
-----------
[AMDGPU][AsmParser] Simplify getting source locations of operands. (#158323)
Remember indexes of MCOperands in MCParsedAsmOperands as we add them to
instructions. Then use the indexes to find locations by known MCOperands
indexes.
Happens to fix some reported locations in tests. NFCI otherwise.
getImmLoc() is to be eliminated as well; there's enough work for another
patch.
Commit: 0a4b87dac476f525e1d9bd0cf6dafb743a2d8245
https://github.com/llvm/llvm-project/commit/0a4b87dac476f525e1d9bd0cf6dafb743a2d8245
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M compiler-rt/test/lit.common.cfg.py
Log Message:
-----------
[compiler-rt][lit] Check glibc version without external packages (#158387)
Alternative to #158236 without requiring external packages
Commit: 53cda13202debb78dd74a4acd6ec2c0b1d507b66
https://github.com/llvm/llvm-project/commit/53cda13202debb78dd74a4acd6ec2c0b1d507b66
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/docs/ProgrammersManual.rst
M llvm/include/llvm/Support/DebugLog.h
M llvm/unittests/Support/DebugLogTest.cpp
M mlir/test/IR/test-pattern-logging-listener.mlir
Log Message:
-----------
Default DEBUG_TYPE to the current filename for logging (#158494)
This makes it optional to define a debug type and uses the current
FileName instead. This both reduced the size of the prefix printed by
LDBG() and makes it possible to pass a filename to `--debug-only` to
filter on.
Commit: c193d71b0d1b04efb893474e452801081087ad98
https://github.com/llvm/llvm-project/commit/c193d71b0d1b04efb893474e452801081087ad98
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/test/Headers/arm-acle-no-direct-include.c
Log Message:
-----------
[clang][Headers][lit] Fix test arm-acle-no-direct-include.c on Mac (#158677)
See
[here](https://github.com/llvm/llvm-project/pull/144172#issuecomment-3292907771),
need to add `--` to filename parsing on Mac because the path starts with
`/U` which `clang-cl` treats as the flag `/U`.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 985dc69a2def6812ba310c8fa431a0679f1b8163
https://github.com/llvm/llvm-project/commit/985dc69a2def6812ba310c8fa431a0679f1b8163
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
Log Message:
-----------
[LV] Add test for missed interleaving after narrowing interleave groups.
Add extra test coverage for
https://github.com/llvm/llvm-project/pull/149706. The added loop should
be interleaved, after narrowing interleave groups, which requires moving
the transform earlier.
Commit: 4957c473bc73a3a0bf1037adec770547c4a0aa02
https://github.com/llvm/llvm-project/commit/4957c473bc73a3a0bf1037adec770547c4a0aa02
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Frontend/CompilerInstance.cpp
M clang/test/VFS/broken-vfs-module-dep.c
M llvm/include/llvm/Support/VirtualFileSystem.h
M llvm/lib/Support/VirtualFileSystem.cpp
Log Message:
-----------
[clang] Avoid reparsing VFS overlay files for module dep collector (#158372)
This PR uses the new-ish `llvm::vfs::FileSystem::visit()` interface to
collect VFS overlay entries from an existing `FileSystem` instance
rather than parsing the VFS YAML file anew. This prevents duplicate
diagnostics as observed by `clang/test/VFS/broken-vfs-module-dep.c`.
Commit: ec8819f1858a67cff20ca47e0cbfa11e292c989f
https://github.com/llvm/llvm-project/commit/ec8819f1858a67cff20ca47e0cbfa11e292c989f
Author: John Harrison <harjohn at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/include/lldb/Protocol/MCP/Server.h
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/source/Protocol/MCP/Server.cpp
Log Message:
-----------
[lldb-mcp] Adding a tool to list debuggers again. (#158340)
This brings back the tool for listing debuggers.
This is helpful when an LLM doesn't support resources, like gemini-cli.
I also fixed an issue with `ServerInfoHandle` not always cleaning up the
`~/lldb/lldb-mcp-<pid>.json` file correctly.
Commit: dffe5e3e9a5a8799dbb32113d5258586b8f82c63
https://github.com/llvm/llvm-project/commit/dffe5e3e9a5a8799dbb32113d5258586b8f82c63
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/linalggen.bzl
Log Message:
-----------
[bazel] Explicitly use `output_to_bindir = 1` for genlinalg (#158669)
This is the default in recent versions of bazel, but old behavior is
still possible w/ `--incompatible_merge_genfiles_directory=false
--incompatible_skip_genfiles_symlink=false`.
Commit: b24769855d97697de08e2296a548c033f193caf4
https://github.com/llvm/llvm-project/commit/b24769855d97697de08e2296a548c033f193caf4
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.c
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/test/APINotes/nullability.c
M clang/test/APINotes/nullability.m
M clang/test/APINotes/types.m
M clang/test/AST/ByteCode/atomic.c
M clang/test/AST/ByteCode/c.c
M clang/test/Analysis/OSAtomic_mac.c
M clang/test/Analysis/bsd-string.c
M clang/test/Analysis/novoidtypecrash.c
M clang/test/Analysis/override-werror.c
M clang/test/Analysis/uninit-vals-union.c
M clang/test/C/C23/n3007.c
M clang/test/C/C2y/n3369.c
M clang/test/C/drs/dr0xx.c
M clang/test/CodeGen/2008-03-05-syncPtr.c
M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-cas-error.c
M clang/test/CodeGen/X86/cmpccxadd-builtins-error.c
M clang/test/CodeGen/X86/math-builtins.c
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
M clang/test/CodeGen/builtin-attributes.c
M clang/test/CodeGen/builtin-rename.c
M clang/test/CodeGen/ms-intrinsics-underaligned.c
M clang/test/CodeGen/ubsan-pass-object-size.c
M clang/test/CodeGen/vla.c
M clang/test/CodeGen/vlt_to_pointer.c
M clang/test/CodeGenOpenCL/numbered-address-space.cl
M clang/test/FixIt/fixit-objc-arc.m
M clang/test/Frontend/fixed_point_unknown_conversions.c
M clang/test/Index/preamble.c
M clang/test/Index/warning-flags.c
M clang/test/Misc/remap-file.c
M clang/test/Modules/diamond-pch.c
M clang/test/Modules/diamond.c
M clang/test/Modules/serialized-diags.m
M clang/test/OpenMP/vla_crash.c
M clang/test/PCH/functions.c
M clang/test/PCH/objc_exprs.m
M clang/test/PCH/objc_kindof.m
M clang/test/PCH/variables.c
M clang/test/Parser/declarators.c
M clang/test/Sema/MicrosoftExtensions.c
M clang/test/Sema/arm-neon-types.c
M clang/test/Sema/atomic-expr.c
M clang/test/Sema/atomic-ops.c
M clang/test/Sema/attr-format.c
M clang/test/Sema/c2x-auto.c
M clang/test/Sema/conditional-expr.c
M clang/test/Sema/decl-type-merging.c
M clang/test/Sema/enum.c
M clang/test/Sema/format-strings.c
M clang/test/Sema/function.c
M clang/test/Sema/merge-decls.c
M clang/test/Sema/nullability.c
M clang/test/Sema/pass-object-size.c
M clang/test/Sema/ptrauth-atomic-ops.c
M clang/test/Sema/ptrauth.c
M clang/test/Sema/static-array.c
M clang/test/Sema/struct-compat.c
M clang/test/Sema/var-redecl.c
M clang/test/Sema/vector-assign.c
M clang/test/Sema/vla.c
M clang/test/SemaObjC/arc-decls.m
M clang/test/SemaObjC/arc-objcbridge-related-attribute.m
M clang/test/SemaObjC/arc.m
M clang/test/SemaObjC/attr-objc-NSObject.m
M clang/test/SemaObjC/check-objcbridge-related-attribute-lookup.m
M clang/test/SemaObjC/class-method-self.m
M clang/test/SemaObjC/comptypes-1.m
M clang/test/SemaObjC/comptypes-4.m
M clang/test/SemaObjC/comptypes-5.m
M clang/test/SemaObjC/comptypes-6.m
M clang/test/SemaObjC/comptypes-7.m
M clang/test/SemaObjC/conditional-expr-2.m
M clang/test/SemaObjC/conditional-expr.m
M clang/test/SemaObjC/id.m
M clang/test/SemaObjC/incompatible-protocol-qualified-types.m
M clang/test/SemaObjC/instancetype.m
M clang/test/SemaObjC/ivar-lookup.m
M clang/test/SemaObjC/kindof.m
M clang/test/SemaObjC/method-prototype-scope.m
M clang/test/SemaObjC/nullability.m
M clang/test/SemaObjC/objcbridge-related-attribute.m
M clang/test/SemaObjC/parameterized_classes.m
M clang/test/SemaObjC/parameterized_classes_arc.m
M clang/test/SemaObjC/parameterized_classes_subst.m
M clang/test/SemaObjC/protocol-typecheck.m
M clang/test/SemaObjC/protocol-warn.m
M clang/test/SemaObjC/related-result-type-inference.m
M clang/test/SemaObjC/unqualified-to-qualified-class-warn.m
M clang/test/SemaObjC/warn-incompatible-builtin-types.m
M clang/test/SemaObjC/warn-superclass-method-mismatch.m
M clang/test/SemaObjCXX/blocks.mm
M clang/test/SemaObjCXX/objc-pointer-conv.mm
M clang/test/SemaObjCXX/overload.mm
M clang/test/SemaObjCXX/parameterized_classes_subst.mm
M clang/test/SemaObjCXX/related-result-type-inference.mm
M clang/test/SemaOpenACC/combined-construct-if-clause.c
M clang/test/SemaOpenACC/compute-construct-if-clause.c
M clang/test/SemaOpenCL/address-spaces.cl
M clang/test/SemaOpenCL/atomic-ops.cl
M clang/test/SemaOpenCL/to_addr_builtin.cl
M compiler-rt/test/safestack/pthread-cleanup.c
M compiler-rt/test/tysan/violation-pr62544.c
M lldb/test/API/functionalities/thread/exit_during_expression/main.c
M lldb/test/API/functionalities/valobj_errors/hidden.c
Log Message:
-----------
[Clang] [Sema] Make `-Wincompatible-pointer-types` an error by default (#157364)
GCC 14 also made this an error by default, so we’re following suit.
Fixes #74605
Commit: f9cd2ee119ff6bd59f48fd71617dc4fc981083c9
https://github.com/llvm/llvm-project/commit/f9cd2ee119ff6bd59f48fd71617dc4fc981083c9
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/CMakeLists.txt
A llvm/include/llvm/CAS/MappedFileRegionArena.h
M llvm/include/llvm/Config/llvm-config.h.cmake
M llvm/include/llvm/Support/FileSystem.h
M llvm/lib/CAS/CMakeLists.txt
A llvm/lib/CAS/MappedFileRegionArena.cpp
A llvm/lib/CAS/OnDiskCommon.cpp
A llvm/lib/CAS/OnDiskCommon.h
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/unittests/CAS/CMakeLists.txt
A llvm/unittests/CAS/ProgramTest.cpp
Log Message:
-----------
[CAS] Add MappedFileRegionArena (#114099)
Add MappedFileRegionArena which can be served as a file system backed
persistent memory allocator. The allocator works like a
BumpPtrAllocator,
and is designed to be thread safe and process safe.
The implementation relies on the POSIX compliance of file system and
doesn't work on all file systems. If the file system supports lazy tail
(doesn't allocate disk space if the tail of the large file is not used),
user has more flexibility to declare a larger capacity.
The allocator works by using a atomically updated bump ptr at a location
that can be customized by the user. The atomic pointer points to the
next available space to allocate, and the allocator will resize/truncate
to current usage once all clients closed the allocator.
Windows implementation contributed by: @hjyamauchi
Commit: 95d5d984db4092136ad4b178b765516168c31b9e
https://github.com/llvm/llvm-project/commit/95d5d984db4092136ad4b178b765516168c31b9e
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/SymbolFileOnDemand.cpp
A lldb/test/Shell/Commands/command-image-dump-ast-colored.test
Log Message:
-----------
[lldb][TypeSystem] Enable colored AST dump (#86159)
This patch causes the various AST dump commands (`target modules dump
ast`/`target dump typesystem`) to be color-highlighted. I added a `bool
show_color` parameter to `SymbolFile::DumpClangAST` and
`TypeSystem::Dump`. In `TypeSystemClang` I temporarily sets the
`getShowColors` flag on the owned Clang AST (using an RAII helper) for
the duration of the AST dump. We use `Debugger::GetUseColors` to decide
whether to color the AST dump.
Commit: 0741209385ae62fc8c529f807c6f4f9777d94bc3
https://github.com/llvm/llvm-project/commit/0741209385ae62fc8c529f807c6f4f9777d94bc3
Author: Krish Gupta <krishom70 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
A flang/test/Lower/OpenMP/lastprivate-alloc-scope.f90
Log Message:
-----------
[flang][OpenMP] Guard lastprivate scoping on DO (#157760)
Add HLFIR FileCheck ensuring `lastprivate(v)` on an `omp do` is realized
as privatization on the inner wsloop and not on the enclosing `omp
parallel`.
This matches OpenMP semantics and prevents regressions.
- No `private(v)` at `omp.parallel`
- `omp.wsloop ... private(...)` present
Unable to reproduce #157035 on current main; this test documents the
expected lowering.
p.s- do refer to
[delayed-privatization](https://lists.llvm.org/pipermail/mlir-commits/2025-January/088206.html?utm_source=chatgpt.com)
<img width="2940" height="1912" alt="image"
src="https://github.com/user-attachments/assets/5c3a0656-fe0a-4bd5-be98-b626a7a719c1"
/>
Commit: 55185382ced9b865dd78cbeb4f37a6a715619280
https://github.com/llvm/llvm-project/commit/55185382ced9b865dd78cbeb4f37a6a715619280
Author: jtstogel <jtstogel at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/string/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/strings/BUILD.bazel
Log Message:
-----------
[bazel][libc] Add bazel support for a handful of string functions (#158327)
Commit: b154b050de7ad868874d5b717e46ffa38b89efe1
https://github.com/llvm/llvm-project/commit/b154b050de7ad868874d5b717e46ffa38b89efe1
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Lower/percent-val-actual-argument.f90
Log Message:
-----------
[Flang] Make handling of %VAL consistent with gfortran (#157873)
Prevent fir.convert operation from being generated between logical and pointer types.
Commit: bc745dcd788f80441ba4151e2c80f86c95c966aa
https://github.com/llvm/llvm-project/commit/bc745dcd788f80441ba4151e2c80f86c95c966aa
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Log Message:
-----------
[LegalizeTypes] Use getShiftAmountConstant in PromoteIntRes_FunnelShift. (#158553)
Commit: 488ce6bc486ce5755fb151ce54f1214c7002fe55
https://github.com/llvm/llvm-project/commit/488ce6bc486ce5755fb151ce54f1214c7002fe55
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm_configs/llvm-config.h.cmake
Log Message:
-----------
[bazel] Port f9cd2ee119ff6bd59f48fd71617dc4fc981083c9 (#158691)
Commit: 6626e6acfee0d22423e258bdcfc8e54045b0d88d
https://github.com/llvm/llvm-project/commit/6626e6acfee0d22423e258bdcfc8e54045b0d88d
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
Log Message:
-----------
[bazel] Update tblgen rules to support path-mapping (#158354)
Path mapping is a feature of bazel that allows actions to be
deduplicated across bazel transitions if they are otherwise identical.
This is helpful if you build a binary in N transitions, where the
settings differences are irrelevant to this action. In our case we build
multiple python native extensions transitioning on the python version
they target, and before this change would run each of these actions once
per python version even though the outputs would be identical.
This is a no-op unless `--experimental_output_paths=strip` is passed.
The changes here are just enough to make bazel automatically remap the
paths, which is done by how you use the args object. The core change is
that instead of carrying around paths that have `ctx.bin_dir` hardcoded
in the strings. This is done by mapping them with the output file
object's root path when adding them to the args.
As a side effect this drops the genfiles_dir, but that has been the same
as bin_dir for a long time so hopefully that's a no-op for folks.
Commit: 3a695e1abebac0c8e9816e1649ef8032c5ffdc4b
https://github.com/llvm/llvm-project/commit/3a695e1abebac0c8e9816e1649ef8032c5ffdc4b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in MetadataLoader.cpp (#157595)
- Remove forward declaration of `llvm::Argument` and include Argument.h
instead.
- Restrict scope of anonymous namespaces to just class declarations.
- Move local static function out of anonymous namespace.
- Remove a redundant assert when indexing a vector.
Commit: 5af3fa81cc125071106cd2420e1a04e29612cd95
https://github.com/llvm/llvm-project/commit/5af3fa81cc125071106cd2420e1a04e29612cd95
Author: Abhinav Gaba <abhinav.gaba at intel.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M offload/include/OpenMP/Mapping.h
M offload/libomptarget/omptarget.cpp
Log Message:
-----------
[Offload][OpenMP] Support shadow-pointer tracking for Fortran descriptors. (#158370)
This change adds support for saving full contents of attached Fortran
descriptors, and not just their pointee address, in the shadow-pointer
table.
With this, we now support:
* comparing full contents of descriptors to check whether a previous
shadow-pointer entry is stale;
* restoring the full contents of descriptors
And with that, we can now use ATTACH map-types (added in #149036) for
mapping Fortran pointer/allocatable arrays, and array-sections on them.
e.g.:
```f90
integer, allocatable :: x(:)
!$omp target enter data map(to: x(:))
```
as:
```
void* addr_of_pointee = allocated(x) ? &x(1) : nullptr;
int64_t sizeof_pointee = allocated(x) ? sizeof(x(:)) : 0
addr_of_pointee, addr_of_pointee, sizeof_pointee, TO
addr_of_descriptor, addr_of_pointee, size_of_descriptor, ATTACH
```
Commit: 2b3f80dc9464d830de8a4d452f61e7bb734e72b9
https://github.com/llvm/llvm-project/commit/2b3f80dc9464d830de8a4d452f61e7bb734e72b9
Author: Wendi <uwendi at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/docs/QualGroup.rst
Log Message:
-----------
[docs] Refactor QualGroup.rst: add membership rules, restructure sections (#157804)
This patch updates the LLVM Qualification Group documentation to reflect
current group structure and practices:
- Restructures the **Group Composition** section (previously
"Participation" + "Contributors")
- Adds a formal **member table** with affiliations and community handles
- Introduces **participation principles**
- Documents **membership criteria**, **nomination process**, and
**review cycle**
- Corrects references to **meeting materials** (wrong path)
These changes aim to improve clarity, inclusiveness, and alignment with
similar working groups (e.g., LLVM Security Response Team).
---------
Co-authored-by: Wendi Urribarri (Woven by Toyota <wendi.urribarri at woven-planet.global>
Commit: 06f671e57a574ba1c5127038eff8e8773273790e
https://github.com/llvm/llvm-project/commit/06f671e57a574ba1c5127038eff8e8773273790e
Author: Vy Nguyen <vyng at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
[clang][nfc] Fix tests to avoid writing output to unreachable location, which might cause them to fail (#158698)
[clang][nfc] Fix tests to avoid writing output to unreachable location,
which might cause them to fail
Commit: 063d8d7d221406e66eeed859f5c0288d9c98753b
https://github.com/llvm/llvm-project/commit/063d8d7d221406e66eeed859f5c0288d9c98753b
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/test/mlir-tblgen/op-python-bindings.td
M mlir/test/python/dialects/python_test.py
M mlir/test/python/ir/auto_location.py
M mlir/test/python/python_test_ops.td
M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
Log Message:
-----------
[MLIR][Python] fix generated value builder type hints (#158449)
Currently the type hints on the returns of the "value builders" are
`ir.Value`, `Sequence[ir.Value]`, and `ir.Operation`, none of which are
correct. The correct possibilities are `ir.OpResult`, `ir.OpResultList`,
the OpView class itself (e.g., `AttrSizedResultsOp`) or the union of the
3 (for variadic results). This PR fixes those hints.
Commit: f4eab92ea2b6ebc6a3af70016d7b578809f8270c
https://github.com/llvm/llvm-project/commit/f4eab92ea2b6ebc6a3af70016d7b578809f8270c
Author: David Pagan <dave.pagan at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/OpenMPKinds.def
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
M clang/test/OpenMP/target_defaultmap_messages.cpp
Log Message:
-----------
[clang][OpenMP] 6.0: Add defaultmap implicit-behavior 'storage' (#158336)
First of two patches split from original defaultmap PR:
https://github.com/llvm/llvm-project/pull/157767
Per OpenMP 6.0 specification, section 7.9.9
Argument keywords, page 291, L17
Additional information, page 291, L24-25
24 The value alloc may also be specified as implicit-behavior with
identical meaning to the value 25 storage.
Testing:
Updated 'defaultmap' error message and codegen LIT tests to verify
behavior in OpenMP 6.0.
Commit: 50d0ce60407364b0bb303ff44fce2b544fc53fc7
https://github.com/llvm/llvm-project/commit/50d0ce60407364b0bb303ff44fce2b544fc53fc7
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/CAS/MappedFileRegionArena.cpp
Log Message:
-----------
[CAS] Fix build failure from #114099 using gcc (#158697)
Fix a buildbot failure on some bots using gcc:
```
MappedFileRegionArena.cpp:275:10: error: could not convert ‘Result’ from ‘llvm::cas::MappedFileRegionArena’ to ‘llvm::Expected<llvm::cas::MappedFileRegionArena>’
```
This is caused by RVO not activated causing the type check error.
Commit: de8030e63c043d37099534974f1fa546bf8ac0d9
https://github.com/llvm/llvm-project/commit/de8030e63c043d37099534974f1fa546bf8ac0d9
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/utils/TableGen/Common/CMakeLists.txt
A llvm/utils/TableGen/Common/InstructionEncoding.cpp
A llvm/utils/TableGen/Common/InstructionEncoding.h
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen] Extract InstructionEncoding class into a separate file (NFC) (#158505)
So that it can be used in CodeEmitterGen / VarLenCodeEmitterGen.
Commit: 369fbc058bb11c0c8e03220d3a952eb5b0117461
https://github.com/llvm/llvm-project/commit/369fbc058bb11c0c8e03220d3a952eb5b0117461
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/sys/epoll/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/unistd/BUILD.bazel
Log Message:
-----------
[libc][bazel] Fold errno_test_helpers into LibcUnitTest. (#158705)
LibcUnitTest helper library already contains some logic for errno
validation (ErrnoSetterMatcher.h), and since errno validation is used so
extensively in various unit tests, it makes sense to fold
ErrnoCheckingTest.h (which would be required for errno validation soon)
there as well for simplicity.
Commit: 9a6bdfde8e2d362e67b04b19048c1e65833d3802
https://github.com/llvm/llvm-project/commit/9a6bdfde8e2d362e67b04b19048c1e65833d3802
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
M llvm/utils/gn/secondary/llvm/lib/CAS/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CAS/BUILD.gn
Log Message:
-----------
[gn build] Port f9cd2ee119ff
Commit: a75f42841ba88ffb4177237a8baf8e8b87eac74a
https://github.com/llvm/llvm-project/commit/a75f42841ba88ffb4177237a8baf8e8b87eac74a
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M flang/include/flang/Lower/OpenACC.h
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
Log Message:
-----------
[acc] Change acc declare_action recipe (#157764)
Change the declare_action recipe from using acc.update_device to
acc.declare_enter for prealloc/postalloc, and acc.declare_exit for
predealloc/postdealloc, since update_device is not meant for
accomodating acc declare allocatables.
Commit: 27b242fbff33bbc27a13837c7f728301417e8662
https://github.com/llvm/llvm-project/commit/27b242fbff33bbc27a13837c7f728301417e8662
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/Target/AMDGPU/AMDGPUAttributes.def
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/CodeGen/AMDGPU/addrspacecast-constantexpr.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa-call.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features-hsa.ll
M llvm/test/CodeGen/AMDGPU/annotate-kernel-features.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit.ll
M llvm/test/CodeGen/AMDGPU/direct-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/duplicate-attribute-indirect.ll
M llvm/test/CodeGen/AMDGPU/implicitarg-offset-attributes.ll
M llvm/test/CodeGen/AMDGPU/indirect-call-set-from-other-function.ll
M llvm/test/CodeGen/AMDGPU/issue120256-annotate-constexpr-addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/propagate-flat-work-group-size.ll
M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
M llvm/test/CodeGen/AMDGPU/recursive_global_initializer.ll
M llvm/test/CodeGen/AMDGPU/remove-no-kernel-id-attribute.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call-2.ll
M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-attribute-missing.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-multistep.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-nested-function-calls.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-prevent-attribute-propagation.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-propagate-attribute.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-recursion-test.ll
M llvm/test/CodeGen/AMDGPU/uniform-work-group-test.ll
Log Message:
-----------
[AMDGPU][Attributor] Add `AAAMDGPUClusterDims` (#158076)
Commit: d012642be170395fe228d1d8f72c722fb8ccc1d6
https://github.com/llvm/llvm-project/commit/d012642be170395fe228d1d8f72c722fb8ccc1d6
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/unittests/Transforms/Vectorize/VPlanPatternMatchTest.cpp
Log Message:
-----------
[VPlan] Match more GEP-like in m_GetElementPtr (#158019)
The m_GetElementPtr matcher is incorrect and incomplete. Fix it to match
all possible GEPs to avoid misleading users. It currently just has one
use, and the change is non-functional for that use.
Commit: ddd49c61ccd96c6bb4b019a5627c3a303bc378e4
https://github.com/llvm/llvm-project/commit/ddd49c61ccd96c6bb4b019a5627c3a303bc378e4
Author: Thurston Dang <thurston at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512fp16-intrinsics.ll
M llvm/test/Instrumentation/MemorySanitizer/X86/avx512vl-intrinsics.ll
Log Message:
-----------
[msan] Handle AVX512/AVX10 rcp and rsqrt (#158397)
Adds a new handler, handleAVX512VectorGenericMaskedFP(), and applies it
to AVX512/AVX10 rcp and rsqrt
Commit: ba576d3b7c606633b0f39dc9870325c83e7ea078
https://github.com/llvm/llvm-project/commit/ba576d3b7c606633b0f39dc9870325c83e7ea078
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn
Log Message:
-----------
[gn build] Port de8030e63c04
Commit: d9fa0de5c861ebedf6573b5cd259e328e70bfc29
https://github.com/llvm/llvm-project/commit/d9fa0de5c861ebedf6573b5cd259e328e70bfc29
Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
M llvm/test/Transforms/StructurizeCFG/hoist-zerocost.ll
Log Message:
-----------
[StructurizeCFG] bug fix in zero cost hoist (#157969)
This fixes a bug where zero cost instruction was hoisted to nearest
common dominator but the hoisted instruction's operands didn't dominate
the common dominator causing poison values.
Commit: 6512bf0e857c8926e3bb0a07c1eac270faf4ae3f
https://github.com/llvm/llvm-project/commit/6512bf0e857c8926e3bb0a07c1eac270faf4ae3f
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libc/test/src/dirent/CMakeLists.txt
M libc/test/src/dirent/dirent_test.cpp
M libc/test/src/fcntl/CMakeLists.txt
M libc/test/src/fcntl/creat_test.cpp
M libc/test/src/fcntl/fcntl_test.cpp
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/sched/CMakeLists.txt
M libc/test/src/sched/affinity_test.cpp
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/sched/get_priority_test.cpp
M libc/test/src/sched/getcpu_test.cpp
M libc/test/src/sched/param_and_scheduler_test.cpp
M libc/test/src/sched/sched_rr_get_interval_test.cpp
M libc/test/src/sched/yield_test.cpp
M libc/test/src/signal/CMakeLists.txt
M libc/test/src/signal/sigaltstack_test.cpp
M libc/test/src/signal/signal_test.cpp
M libc/test/src/signal/sigprocmask_test.cpp
Log Message:
-----------
[libc] Migrate dirent/fcntl/sched/signal tests to ErrnoCheckingTest. (#158700)
Remove direct libc_errno.h inclusion and manipulation of libc_errno in
various unit tests, instead relying on ErrnoCheckingTest machinery.
This is the final mechanical change of migrating libc unit tests to
ErrnoCheckingTest - after it, all the unit tests relying on
ASSERT_ERRNO_* macro will be using ErrnoCheckingTest.h
Commit: f2301be0e82f686bae1e78518b3c05d8072f11af
https://github.com/llvm/llvm-project/commit/f2301be0e82f686bae1e78518b3c05d8072f11af
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/commutable-member-in-non-commutable-node.ll
Log Message:
-----------
[SLP]Add a check if the user itself is commutable
If the commutable instruction can be represented as a non-commutable
vector instruction (like add 0, %v can be represented as a part of sub
nodes with operation sub %v, 0), its operands might still be reordered
and this should be accounted when checking for copyables in operands
Fixes #158293
Commit: 6088f6dedcf75cddc15b3d2158112d294ddb8407
https://github.com/llvm/llvm-project/commit/6088f6dedcf75cddc15b3d2158112d294ddb8407
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
Log Message:
-----------
[RISCV] Add Predicates to fcanonicalize patterns. NFC (#158709)
This doesn't matter in practice since the only way fcanonicalize can
make it to isel is if the predicate is already true, but it's good to be
consistent.
Commit: a32d88b79abaaab46cb1580d75df7422d0a9e4d3
https://github.com/llvm/llvm-project/commit/a32d88b79abaaab46cb1580d75df7422d0a9e4d3
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/test/CodeGenHLSL/builtins/select.hlsl
Log Message:
-----------
[HLSL][DirectX] Fix resource lowering when using structs with `select` (#158361)
Fixes #156550.
The `select` instruction should be using the struct values themselves
rather than pointers to temporary allocas.
This PR also adds an array test for select in `select.hlsl`.
Commit: 4949cb4a5e9ce408519e6eea05b413dd1a395138
https://github.com/llvm/llvm-project/commit/4949cb4a5e9ce408519e6eea05b413dd1a395138
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/large-loop-rdx.ll
M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
Log Message:
-----------
[VPlan] Track VPValues instead of VPRecipes in calculateRegisterUsage. (#155301)
Update calculateRegisterUsageForPlan to track live-ness of VPValues
instead of recipes. This gives slightly more accurate results for
recipes that define multiple values (i.e. VPInterleaveRecipe).
When tracking the live-ness of recipes, all VPValues defined by an
VPInterleaveRecipe are considered alive until the last use of any of
them. When tracking the live-ness of individual VPValues, we can
accurately track the individual values until their last use.
Note the changes in large-loop-rdx.ll and pr47437.ll. This patch
restores the original behavior before introducing VPlan-based liveness
tracking.
PR: https://github.com/llvm/llvm-project/pull/155301
Commit: 07d50f624abe74f2825811f8932b69fae524d793
https://github.com/llvm/llvm-project/commit/07d50f624abe74f2825811f8932b69fae524d793
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[OpenMP] Fix table indentation in clang documentation (#158724)
Commit: 794351355e136342957600ba9da594308ed42c9d
https://github.com/llvm/llvm-project/commit/794351355e136342957600ba9da594308ed42c9d
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/algorithms/modifying/unique.bench.cpp
M libcxx/test/benchmarks/algorithms/modifying/unique_copy.bench.cpp
Log Message:
-----------
[libc++] Fix broken unique and unique_copy benchmarks (#158287)
These benchmarks have an assumption that the container size is divisible
by 4 because of how we populate their content, which wasn't satisfied.
Commit: b5afe416c7d5d993cb2f3aaec7784d368325de41
https://github.com/llvm/llvm-project/commit/b5afe416c7d5d993cb2f3aaec7784d368325de41
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
A llvm/test/Transforms/InstCombine/preserve-profile.ll
Log Message:
-----------
[InstCombine] Preserve profile data with select instructions and binary operators (#158375)
Tracking issue: #147390
Commit: 04cd39ae287d2c35d2b64cb70ea7bcba7e9796d9
https://github.com/llvm/llvm-project/commit/04cd39ae287d2c35d2b64cb70ea7bcba7e9796d9
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/BinaryFormat/AMDGPUMetadataVerifier.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.cpp
M llvm/lib/Target/AMDGPU/AMDGPUHSAMetadataStreamer.h
A llvm/test/CodeGen/AMDGPU/cluster-dims.ll
A llvm/test/MC/AMDGPU/hsa-metadata-kernel-attrs-v6.s
Log Message:
-----------
[AMDGPU] Add the support for `.cluster_dims` code object metadata (#158721)
Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>
Commit: 1287ed1fa2dbf81ce2549a4cb5ae339857c778f9
https://github.com/llvm/llvm-project/commit/1287ed1fa2dbf81ce2549a4cb5ae339857c778f9
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
M mlir/lib/Dialect/ArmSME/Transforms/VectorLegalization.cpp
M mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp
M mlir/lib/Dialect/NVGPU/Transforms/CreateAsyncGroups.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorInsertExtractStridedSliceRewritePatterns.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
Log Message:
-----------
[mlir][vector] Use `source` as the source argument name (#158258)
This patch updates the following ops to use `source` (instead of
`vector`) as the name for their source argument:
* `vector.extract`
* `vector.scalable.extract`
* `vector.extract_strided_slice`
This change ensures naming consistency with the "builders" for these Ops
that already use the name `source` rather than `vector`. It also
addresses part of:
* https://github.com/llvm/llvm-project/issues/131602
Specifically, it ensures that we use `source` and `dest` for read and
write operations, respectively (as opposed to `vector` and `dest`).
Commit: dbc96f41f15fc30d4fc6198eb1c2dcb57547a160
https://github.com/llvm/llvm-project/commit/dbc96f41f15fc30d4fc6198eb1c2dcb57547a160
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libcxx/utils/parse-google-benchmark-results
Log Message:
-----------
[libc++] Escape spaces in GoogleBenchmark microbenchmarks
Otherwise we generate data that isn't valid according to
the LNT format.
Commit: 1858532c48cf5d93aa82966110fe1cada6ab6ba8
https://github.com/llvm/llvm-project/commit/1858532c48cf5d93aa82966110fe1cada6ab6ba8
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/X86/cost-conditional-branches.ll
Log Message:
-----------
[VPlan] Handle predicated UDiv in VPReplicateRecipe::computeCost.
Account for predicated UDiv,SDiv,URem,SRem in
VPReplicateRecipe::computeCost: compute costs of extra phis and apply
getPredBlockCostDivisor.
Fixes https://github.com/llvm/llvm-project/issues/158660
Commit: ad96f68a583381def7c09ffd5593e529bbe17ebf
https://github.com/llvm/llvm-project/commit/ad96f68a583381def7c09ffd5593e529bbe17ebf
Author: Daniel Kuts <kutz at ispras.ru>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/test/Dialect/EmitC/invalid_ops.mlir
Log Message:
-----------
[mlir] Fix possible null dereference during error logging in EmitC (#157456)
Fixes #157452
Commit: 195ab4f807e46df5ecfe20576b4a6ca3a433d4cd
https://github.com/llvm/llvm-project/commit/195ab4f807e46df5ecfe20576b4a6ca3a433d4cd
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[CAS] Default to only build OnDiskCAS on 64 bit machine (#158737)
To workaroud the buildbot failure on clang-armv8-quick, which builds
with triple: armv8l-unknown-linux-gnueabihf.
Commit: 1b1dce17d54b69149fa383d02119536908fd1767
https://github.com/llvm/llvm-project/commit/1b1dce17d54b69149fa383d02119536908fd1767
Author: Scott Linder <scott.linder at amd.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/Basic/Targets/AMDGPU.h
M clang/test/CodeGenOpenCL/amdgpu-debug-info-pointer-address-space.cl
M clang/test/CodeGenOpenCL/amdgpu-debug-info-variable-expression.cl
M llvm/include/llvm/BinaryFormat/Dwarf.def
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/include/llvm/Support/AMDGPUAddrSpace.h
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/lib/DebugInfo/DWARF/DWARFExpressionPrinter.cpp
M llvm/lib/DebugInfo/DWARF/LowLevel/DWARFExpression.cpp
A llvm/test/tools/llvm-dwarfdump/X86/heterogeneous-user-ops.s
M llvm/unittests/DebugInfo/DWARF/DWARFExpressionCompactPrinterTest.cpp
Log Message:
-----------
[Dwarf] Support heterogeneous DW_{OP,AT}s needed for AMDGPU CFI (#153883)
These are defined in the user range until standard versions of them get
adopted into dwarf, which is expected in DWARF6.
Some of these amount to reservations currently as no code to use them is
included. It would be very helpful to get them committed to avoid
conflicts necessitating encoding changes while we are in the process of
upstreaming.
---------
Co-authored-by: Juan Martinez Fernandez <juamarti at amd.com>
Co-authored-by: Emma Pilkington <Emma.Pilkington at amd.com>
Commit: f33fb0d7b2af203c42d0e7096b29560dda3e71ce
https://github.com/llvm/llvm-project/commit/f33fb0d7b2af203c42d0e7096b29560dda3e71ce
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
Log Message:
-----------
[clang] Don't fail `ExecuteCompilerInvocation()` due to caller errors (#158695)
This PR changes the behavior of `clang::ExecuteCompilerInvocation()` so
that it only returns early when the `DiagnosticsEngine` emitted errors
**within** the function. Handling errors emitted before the function got
called is a responsibility of the caller. Necessary for #158381.
Commit: 4a8bb08bd2261afe22c8addea9f830906084869e
https://github.com/llvm/llvm-project/commit/4a8bb08bd2261afe22c8addea9f830906084869e
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/Test.h
M libc/test/src/errno/CMakeLists.txt
M libc/test/src/errno/errno_test.cpp
Log Message:
-----------
[libc] Move ASSERT_ERRNO_* macro to ErrnoCheckingTest.h (#158727)
Move these macro away from Test.h, since the generic Test.h (and
associated test framework library) doesn't #include or depend on any
errno-handling logic. Conversely, all tests that directly ASSERT various
errno values are now migrated to ErrnoCheckingTest framework, which
clears it our / validates it after every use case.
Commit: 9bedece621aec7d6b35836e6896abdb54940dfdf
https://github.com/llvm/llvm-project/commit/9bedece621aec7d6b35836e6896abdb54940dfdf
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
Log Message:
-----------
[LegalizeTypes] Use correct type for constant in PromoteIntRes_FunnelShift.
This is a typo from #158553. We should use AmtVT instead of VT.
I guess VT and AmtVT are always the same at this point for tested
targets.
Commit: eb1297910e361628719c1c5d81e60ca4e32fb64f
https://github.com/llvm/llvm-project/commit/eb1297910e361628719c1c5d81e60ca4e32fb64f
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M openmp/runtime/test/affinity/format/fields_values.c
Log Message:
-----------
[OpenMP] [Tests] Update test broken by #157364 (#158751)
Fix another test impacted by #157364.
On Windows, `GetComputerNameA()`, which is what this ends up calling,
takes an `LPDWORD`, but we were handing it an `int*`; fix this by
declaring it as a `DWORD` instead.
Commit: 3e74e533fc0c34fb0263674168cabcbdbd2db0e5
https://github.com/llvm/llvm-project/commit/3e74e533fc0c34fb0263674168cabcbdbd2db0e5
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
Log Message:
-----------
[mlir][scf] Remove unnecessary IRMapping in outlineSingleBlockRegion (NFC) (#158675)
Removed redundant IRMapping variables from outlineSingleBlockRegion.
Commit: 05dbae2255603c7d7e16b7308ffd33223cc6aa22
https://github.com/llvm/llvm-project/commit/05dbae2255603c7d7e16b7308ffd33223cc6aa22
Author: parabola94 <heavybaby5000 at toki.waseda.jp>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M clang/cmake/modules/ClangConfig.cmake.in
Log Message:
-----------
[clang][cmake] Add CLANG_DEFAULT_LINKER to ClangConfig.cmake.in (#158416)
Flang refers to this CMake variable since #149786, but this does not
work for standalone build.
This patch fixes it.
Commit: a456a165ec3f9ad2243ad2b230ecb5a08ca38143
https://github.com/llvm/llvm-project/commit/a456a165ec3f9ad2243ad2b230ecb5a08ca38143
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
Log Message:
-----------
[WebAssembly] Fix typo in Tag value assertion. NFC (#158752)
Because `C_LONGJMP` is defined as 1 this assertion was never false.
Commit: 7cdffde207d1814197cb829651f4293f7ded8309
https://github.com/llvm/llvm-project/commit/7cdffde207d1814197cb829651f4293f7ded8309
Author: parabola94 <heavybaby5000 at toki.waseda.jp>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/cmake/modules/LLVMConfig.cmake.in
Log Message:
-----------
[cmake] Add LLVM_TARGET_TRIPLE_ENV to LLVMConfig.cmake.in (#158303)
LLVM has a mechanism to switch the default target:
LLVM_TARGET_TRIPLE_ENV. For example, regression tests with lit use this
CMake variable. It matters only when building LLVM, not the other
projects. Therefore, if they are built standalone, the value of the
CMake variable should be propagated. In fact, however, it is not.
This patch fixes it.
Commit: 40886fbd2101f1277d343eb6bfedb6f10efde422
https://github.com/llvm/llvm-project/commit/40886fbd2101f1277d343eb6bfedb6f10efde422
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/include/llvm/ProfileData/SampleProf.h
A llvm/test/tools/llvm-profgen/Inputs/css-pgo-perf.script
A llvm/test/tools/llvm-profgen/Inputs/dap-perf-trace.txt
A llvm/test/tools/llvm-profgen/Inputs/dap-pie.bin
A llvm/test/tools/llvm-profgen/Inputs/dap.bin
A llvm/test/tools/llvm-profgen/Inputs/lbr-perf-for-dap.script
A llvm/test/tools/llvm-profgen/Inputs/pie-dap-perf.txt
A llvm/test/tools/llvm-profgen/Inputs/pie-lbr-perf.script
A llvm/test/tools/llvm-profgen/afdo-with-vtable-pie.test
A llvm/test/tools/llvm-profgen/afdo-with-vtable.test
M llvm/tools/llvm-profgen/PerfReader.cpp
M llvm/tools/llvm-profgen/PerfReader.h
M llvm/tools/llvm-profgen/ProfileGenerator.cpp
M llvm/tools/llvm-profgen/ProfileGenerator.h
M llvm/tools/llvm-profgen/ProfiledBinary.cpp
M llvm/tools/llvm-profgen/ProfiledBinary.h
M llvm/tools/llvm-profgen/llvm-profgen.cpp
Log Message:
-----------
[llvm-profgen] Extend llvm-profgen to generate vtable profiles with data access events for non context-sensitive profiles using debug info (#148013)
An RFC is in
https://discourse.llvm.org/t/rfc-vtable-type-profiling-for-samplefdo/87283
This change extends to process perf data with Intel
[MEM_INST_RETIRED.ALL_LOADS](https://perfmon-events.intel.com/index.html?pltfrm=skylake_server.html&evnt=MEM_INST_RETIRED.ALL_LOADS)
samples and produce sample profiles with vtable information for non
context-sensitive SampleFDO profiles.
* For feature parity across different hardwares, future work could
incorporate support for AMD Instruction-Based Sampling (IBS) and Arm
Statistical Profiling Extension (SPE).
---------
Co-authored-by: Paschalis Mpeis <paschalis.mpeis at arm.com>
Commit: 9b95e10d5ea6b61e0d9af0a800d63566ae32a2d0
https://github.com/llvm/llvm-project/commit/9b95e10d5ea6b61e0d9af0a800d63566ae32a2d0
Author: Sirraide <aeternalmail at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/test/API/functionalities/data-formatter/data-formatter-objc/Makefile
M lldb/test/API/macosx/ignore_exceptions/Makefile
Log Message:
-----------
[LLDB] [Tests] Downgrade -Wincompatible-pointer-types to a warning in some tests (#158756)
These no longer compile because the warning now defaults to an error
after #157364, so downgrade the error to a warning for now; I’m not
familiar enough with either LLDB or MacOS to fix these warnings properly
(assuming they’re unintended).
Commit: 1fea3c507cb1ab02af5834b07a30e55c3822196c
https://github.com/llvm/llvm-project/commit/1fea3c507cb1ab02af5834b07a30e55c3822196c
Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
Log Message:
-----------
[sanitizer-common] Improve diagnostic when ASAN fails to allocate shadow (#158378)
Sometimes we are unable to find a sufficiently large gap to allocate the
dynamic ASAN shadow.
If a gap is not found, we will now output a (consolidated) memory map to
show the user what regions were unavailable and how much memory we need.
rdar://159142896
Commit: 7b6db769c3470d75b0d010f16c50582ec3535dea
https://github.com/llvm/llvm-project/commit/7b6db769c3470d75b0d010f16c50582ec3535dea
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/BPF/Disassembler/BPFDisassembler.cpp
M llvm/lib/Target/CSKY/Disassembler/CSKYDisassembler.cpp
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp
M llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
M llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
M llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp
M llvm/lib/Target/Xtensa/Disassembler/XtensaDisassembler.cpp
M llvm/test/TableGen/FixedLenDecoderEmitter/additional-encoding.td
M llvm/test/TableGen/FixedLenDecoderEmitter/big-filter.td
M llvm/test/TableGen/FixedLenDecoderEmitter/var-len-conflict-1.td
M llvm/test/TableGen/VarLenDecoder.td
M llvm/test/TableGen/trydecode-emission.td
M llvm/test/TableGen/trydecode-emission2.td
M llvm/test/TableGen/trydecode-emission3.td
M llvm/test/TableGen/trydecode-emission4.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFC][DecoderEmitter] Code cleanup in `DecoderEmitter::emitTable` (#158014)
Several code cleanup changes in code to emit decoder tables:
- Start comments on each line at a fixed column for readibility.
- Combine repeated code to decode and emit ULEB128 into a single
function.
- Add helper `getDecoderOpName` to print decoder op.
- Print Filter/CheckField/predicate index values with those opcodes.
Commit: 1f6c962cd1ed01d9092a09087b168ca39ca2c982
https://github.com/llvm/llvm-project/commit/1f6c962cd1ed01d9092a09087b168ca39ca2c982
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
Log Message:
-----------
PPC: Move definitions of predicates with features (#157058)
The way this was previously structured does not allow
access to the predicates inside of PPCRegisterInfo
Commit: dfa5bbeafaff2bbb211cde2980cc5f29906d8fac
https://github.com/llvm/llvm-project/commit/dfa5bbeafaff2bbb211cde2980cc5f29906d8fac
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/andn.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/orn.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/andn.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/orn.ll
Log Message:
-----------
[LoongArch][NFC] Add tests for vector type `orn/andn` (#158525)
Commit: b5e06b5ede8e29a3db34ce740b249bb22dbf76a1
https://github.com/llvm/llvm-project/commit/b5e06b5ede8e29a3db34ce740b249bb22dbf76a1
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/test/TableGen/AsmPredicateCombining.td
M llvm/test/TableGen/AsmPredicateCondsEmission.td
M llvm/utils/TableGen/Common/SubtargetFeatureInfo.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFC][DecoderEmitter] Predicate generation code cleanup (#158140)
Eliminate `doesOpcodeNeedPredicate` and instead have
`emitPredicateMatch` return true if any predicates were generated.
Delegate actual predicate generation in `emitPredicateMatch` to
`SubtargetFeatureInfo::emitMCPredicateCheck`. Additionally, remove the
redundant parenthesis around the predicate conditions in the generated
`checkDecoderPredicate` function.
Note that for ARM/AMDGPU this reduces the total # of predicates
generated by a few. It seems the old code would sometimes generate
duplicate predicates which were identical in semantics but one had an
extra pair of parentheses (i..e, `X` and `(X)`). `emitMCPredicateCheck`
does not seems to have that issue.
Commit: 71c128232b994d1470f5cc2bae7049d68b5b5635
https://github.com/llvm/llvm-project/commit/71c128232b994d1470f5cc2bae7049d68b5b5635
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
A llvm/test/MC/Disassembler/Mips/mips64/sc-ptr64.txt
Log Message:
-----------
[Mips] Fix inst `sc` disassemble assert when configured -mattr=+ptr64 (#158253)
When mips disassembler process `DecodeMem`, does not consider
Mips::SC64, leading to `Operands.size() = 3`.
And the right `Size` value is 4, when printMemOperand would occur
asserts: `assert(idx < size());`
Fix #157508.
Commit: cedceeb8002c112b33ff0974f04082849e6e202d
https://github.com/llvm/llvm-project/commit/cedceeb8002c112b33ff0974f04082849e6e202d
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Driver/clang_f_opts.c
M flang/docs/ReleaseNotes.md
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
R flang/test/Driver/loop-fuse.f90
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
Revert "Introduce -fexperimental-loop-fuse to clang and flang (#142686)" (#158764)
This reverts commit 895cda70a95529fd22aac05eee7c34f7624996af.
And fix attempt: 06f671e57a574ba1c5127038eff8e8773273790e.
Performance regressions and broken sanitizers, see #142686.
Commit: eeba6f463254c26f663d8f34ef9f0e60e9a09d5c
https://github.com/llvm/llvm-project/commit/eeba6f463254c26f663d8f34ef9f0e60e9a09d5c
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-bitclr.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/andn.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/orn.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-bitclr.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/andn.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/orn.ll
Log Message:
-----------
[LoongArch] Add generation support for `[x]{vandn/vorn}.v` (#158526)
Commit: 1afadbfb1d650e8ac3961361da268b81aeb67cb3
https://github.com/llvm/llvm-project/commit/1afadbfb1d650e8ac3961361da268b81aeb67cb3
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sadd-sat.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/ssub-sat.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uadd-sat.ll
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/usub-sat.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sadd-sat.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/ssub-sat.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/uadd-sat.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/usub-sat.ll
Log Message:
-----------
[LoongArch] Pre-commit tests for saturation sadd/ssub/uadd/usub intrinsics (#158176)
Commit: b9b92d72313b080aa83adee485d441c72a1445c8
https://github.com/llvm/llvm-project/commit/b9b92d72313b080aa83adee485d441c72a1445c8
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
A llvm/test/TableGen/DecoderEmitter/InvalidEncoding.td
A llvm/test/TableGen/DecoderEmitter/MultiOps.td
A llvm/test/TableGen/DecoderEmitter/additional-encoding.td
A llvm/test/TableGen/DecoderEmitter/big-filter.td
A llvm/test/TableGen/DecoderEmitter/conflict.td
A llvm/test/TableGen/DecoderEmitter/operand-decoder.td
A llvm/test/TableGen/DecoderEmitter/sub-arg-dag-error-1.td
A llvm/test/TableGen/DecoderEmitter/sub-arg-dag-error-2.td
A llvm/test/TableGen/DecoderEmitter/var-len-conflict-1.td
A llvm/test/TableGen/DecoderEmitter/var-len-conflict-2.td
R llvm/test/TableGen/FixedLenDecoderEmitter/InvalidEncoding.td
R llvm/test/TableGen/FixedLenDecoderEmitter/MultiOps.td
R llvm/test/TableGen/FixedLenDecoderEmitter/additional-encoding.td
R llvm/test/TableGen/FixedLenDecoderEmitter/big-filter.td
R llvm/test/TableGen/FixedLenDecoderEmitter/conflict.td
R llvm/test/TableGen/FixedLenDecoderEmitter/operand-decoder.td
R llvm/test/TableGen/FixedLenDecoderEmitter/sub-arg-dag-error-1.td
R llvm/test/TableGen/FixedLenDecoderEmitter/sub-arg-dag-error-2.td
R llvm/test/TableGen/FixedLenDecoderEmitter/var-len-conflict-1.td
R llvm/test/TableGen/FixedLenDecoderEmitter/var-len-conflict-2.td
Log Message:
-----------
[NFC] Rename FixedLenDecoderEmitter to just DecoderEmitter (#158766)
Commit: 6dde34969e108090d58a64ce0b25c78b42df6367
https://github.com/llvm/llvm-project/commit/6dde34969e108090d58a64ce0b25c78b42df6367
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaChecking.cpp
Log Message:
-----------
[clang][sema][NFC] Clean up builtin arg checking functions (#158615)
Always take an `unsigned` for the argument index, pull some locals in
the closest scope and use `APInt::isPowerOf2()`.
Commit: c46cf1ea3bfaba58da7e046db7450d7dd6769100
https://github.com/llvm/llvm-project/commit/c46cf1ea3bfaba58da7e046db7450d7dd6769100
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
Log Message:
-----------
[clang][bytecode][NFC] Remove BlockScope (#158656)
Unused these days.
Commit: 10d0d955e22be43abab8fe7e339e99068aaac030
https://github.com/llvm/llvm-project/commit/10d0d955e22be43abab8fe7e339e99068aaac030
Author: Twice <twice at apache.org>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/test/mlir-tblgen/op-python-bindings.td
M mlir/test/python/ir/auto_location.py
M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
Log Message:
-----------
[MLIR][Python] Add docstring for generated python op classes (#158198)
This PR adds support in mlir-tblgen for generating docstrings for each
Python class corresponding to an MLIR op. The docstrings are currently
derived from the op’s description in ODS, with indentation adjusted to
display nicely in Python. This makes it easier for Python users to see
the op descriptions directly in their IDE or LSP while coding.
In the future, we can extend the docstrings to include explanations for
each method, attribute, and so on.
This idea was previously discussed in the `#mlir-python` channel on
Discord with @makslevental and @superbobry.
---------
Co-authored-by: Maksim Levental <maksim.levental at gmail.com>
Commit: fdb06d9792afc8121e77b367cb6dce0be29b2b5b
https://github.com/llvm/llvm-project/commit/fdb06d9792afc8121e77b367cb6dce0be29b2b5b
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/lib/Target/AMDGPU/AMDGPULaneMaskUtils.h
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
M llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
Log Message:
-----------
[AMDGPU] Refactor out common exec mask opcode patterns (NFCI) (#154718)
Create utility mechanism for finding wave size dependent opcodes used to
manipulate exec/lane masks.
Commit: f74184ccc9053268a5baba129fcfde554cf0d255
https://github.com/llvm/llvm-project/commit/f74184ccc9053268a5baba129fcfde554cf0d255
Author: Teresa Johnson <tejohnson at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/test/ThinLTO/X86/memprof-basic.ll
M llvm/test/ThinLTO/X86/memprof-indirectcall.ll
M llvm/test/ThinLTO/X86/memprof-inlined.ll
M llvm/test/Transforms/MemProfContextDisambiguation/basic.ll
M llvm/test/Transforms/MemProfContextDisambiguation/dot.ll
M llvm/test/Transforms/MemProfContextDisambiguation/duplicate-context-ids.ll
M llvm/test/Transforms/MemProfContextDisambiguation/indirectcall.ll
M llvm/test/Transforms/MemProfContextDisambiguation/inlined.ll
M llvm/test/Transforms/MemProfContextDisambiguation/tailcall-nonunique.ll
Log Message:
-----------
[MemProf] Add NodeId field to ContextNode for debugging (#158736)
This has been handy locally for debugging cloning issues. The NodeIds
are assigned sequentially on creation and included in the dumps and the
dot graphs.
No measurable memory increase was found for a large thin link.
I only changed one test
(Transforms/MemProfContextDisambiguation/basic.ll)
to actually check the emitted NodeIds, most ignore them.
Commit: e5bbaa9c8fb6e06dbcbd39404039cc5d31df4410
https://github.com/llvm/llvm-project/commit/e5bbaa9c8fb6e06dbcbd39404039cc5d31df4410
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCSubtarget.cpp
M llvm/lib/Target/PowerPC/PPCSubtarget.h
M llvm/test/CodeGen/PowerPC/i64_fp.ll
Log Message:
-----------
PPC: Split 64bit target feature into 64bit and 64bit-support (#157206)
This was being used for 2 different purposes.
The TargetMachine constructor prepends +64bit based on isPPC64
triples as a mode switch. The same feature name was also explicitly
added to different processors, making it impossible to perform a pure
feature check for whether 64-bit mode is enabled ir not. i.e.,
checkFeatures("+64bit") would be true even for ppc32 triples.
The comment in tablegen suggests it's relevant to track which processors
support 64-bit mode independently of whether that's the active compile
target, so replace that with a new feature.
Commit: 1dc84648a8831fb5d065d762c26aaa685a76f782
https://github.com/llvm/llvm-project/commit/1dc84648a8831fb5d065d762c26aaa685a76f782
Author: Qi Zhao <zhaoqi01 at loongson.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/test/CodeGen/LoongArch/lasx/ir-instruction/nor.ll
A llvm/test/CodeGen/LoongArch/lsx/ir-instruction/nor.ll
Log Message:
-----------
[LoongArch][NFC] Add tests for vector type `nor`
Commit: 0d927752f3f0391ee6c6444796262255963a06d9
https://github.com/llvm/llvm-project/commit/0d927752f3f0391ee6c6444796262255963a06d9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M lld/ELF/Arch/RISCV.cpp
Log Message:
-----------
[RISCV] Use X_X0 instead of literal 0. NFC (#158753)
Commit: e2040f5ba3c4f54599776e6f4118881c501bf1f8
https://github.com/llvm/llvm-project/commit/e2040f5ba3c4f54599776e6f4118881c501bf1f8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
Log Message:
-----------
[RISCV][GISel] Remove shouldBeInFConstantPool. Always convert G_FCONSTANT to G_CONSTANT without F/D. (#158717)
We can unconditionally convert to G_CONSTANT. G_CONSTANT will go through
its own legalization and call the integer shouldBeInConstantPool.
Commit: c72bd381fca75b3284fd7a45eb125c3c3181b9bb
https://github.com/llvm/llvm-project/commit/c72bd381fca75b3284fd7a45eb125c3c3181b9bb
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[NFC][DecoderEmitter] Remove unused `emitPredicateMatchAux` (#158771)
Commit: 28373708280a52ecd3181591f7c3935ffceafbcc
https://github.com/llvm/llvm-project/commit/28373708280a52ecd3181591f7c3935ffceafbcc
Author: capitan-davide <dcunial at proton.me>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Fix a couple of suspicious StringRef::data() usages (#158480)
Closes https://github.com/llvm/llvm-project/issues/156150
Updates a couple of clang-tidy checks to use C++17 `std::string` member
functions that accepts a `StringViewLike` template parameter.
Commit: 14f2531894edd7f13ebf22891055c0ae1e1df451
https://github.com/llvm/llvm-project/commit/14f2531894edd7f13ebf22891055c0ae1e1df451
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86CompressEVEX.cpp
M llvm/test/CodeGen/X86/apx/add.ll
M llvm/test/CodeGen/X86/apx/mul-i1024.ll
M llvm/test/CodeGen/X86/apx/ndd-false-deps-asm.mir
M llvm/test/CodeGen/X86/apx/shl.ll
M llvm/test/CodeGen/X86/apx/sub.ll
Log Message:
-----------
[X86][APX] Compress non-redundant NDD ADD to LEA (#158254)
Commit: 64dba812a3a8fc86b4ddbf34ad5bc5b5329cfca8
https://github.com/llvm/llvm-project/commit/64dba812a3a8fc86b4ddbf34ad5bc5b5329cfca8
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Add a few DecoderTableInfo helpers (NFC) (#158776)
Commit: ea9acc97f1fa8b430c74237968d06b2e60b0ccb1
https://github.com/llvm/llvm-project/commit/ea9acc97f1fa8b430c74237968d06b2e60b0ccb1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
M llvm/lib/CodeGen/TargetRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
Log Message:
-----------
CodeGen: Surface shouldRewriteCopySrc utility function (#158524)
Change shouldRewriteCopySrc to return the common register
class and expose it as a utility function. I've found myself
reproducing essentially the same logic in multiple places. The
purpose of this function is to jsut work through the API constraints
of which combination of register class and subreg indexes you have.
i.e. you need to use a different function if you have 0, 1, or 2
subregister indexes involved in a pair of copy-like operations.
Commit: c8b5b6e0a61a66a0a09798fdc6c91340a0718f0d
https://github.com/llvm/llvm-project/commit/c8b5b6e0a61a66a0a09798fdc6c91340a0718f0d
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/test/Sema/constant-builtins-vector.cpp
Log Message:
-----------
[clang][ExprConst] Reject unary vector shuffles (#158589)
This is not implemented at compile time and asserts in assertion builds,
so reject it here.
Fixed the coding style in `BuiltinShuffleVector` at the same time.
Fixes #158471
Commit: bc44ff200b8abe7a10bbc3d7f70d0c54a8c27fa4
https://github.com/llvm/llvm-project/commit/bc44ff200b8abe7a10bbc3d7f70d0c54a8c27fa4
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sadd-sat.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/ssub-sat.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uadd-sat.ll
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/usub-sat.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sadd-sat.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/ssub-sat.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/uadd-sat.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/usub-sat.ll
Log Message:
-----------
[LoongArch] Make {sadd,ssub,uadd,usub}.sat legal for lsx/lasx (#158209)
Commit: 85d2a4670cbbd9b98cfb8952ae4d4c932f8ebfd1
https://github.com/llvm/llvm-project/commit/85d2a4670cbbd9b98cfb8952ae4d4c932f8ebfd1
Author: Tom <41913303+t-a-james at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/derived-method-shadowing-base-method.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
Log Message:
-----------
[clang-tidy] New bugprone-derived-method-shadowing-base-method (#154746)
This PR introduces a new bugprone check to find methods in derived
classes that hide methods with the same signature in base classes.
The best description of what this new check does is the unit test code
in
`clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp`.
---------
Co-authored-by: Tom James <tom.james at siemens.com>
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Co-authored-by: Baranov Victor <bar.victor.2002 at gmail.com>
Commit: 008f9f30bc91bad94686540508805a219589684c
https://github.com/llvm/llvm-project/commit/008f9f30bc91bad94686540508805a219589684c
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Turn some methods into static functions (NFC) (#158789)
DecoderTableBuilder will be removed. Move out the class the methods that
will remain.
Commit: 5bf399ba957e015e510210e0354cdc72ea1bf88d
https://github.com/llvm/llvm-project/commit/5bf399ba957e015e510210e0354cdc72ea1bf88d
Author: Petr Hosek <phosek at google.com>
Date: 2025-09-15 (Mon, 15 Sep 2025)
Changed paths:
M libc/startup/baremetal/fini.h
M libc/startup/baremetal/init.h
Log Message:
-----------
[libc] Move preinit/init/fini arrays to namespace (#158746)
In change #146863 we moved definitions of preinit/init/fini arrays to
header but unintentionally moved outside of the namespace. Since the
namespace also controls the visibility (through LIBC_NAMESPACE_DECL), as
a consequence these symbols no longer have the hidden visibility which
changes the codegen from:
```
4: 4c11 ldr r4, [pc, #0x44] @ 0x4c <__libc_init_array+0x4c>
6: 4812 ldr r0, [pc, #0x48] @ 0x50 <__libc_init_array+0x50>
8: 447c add r4, pc
a: 4478 add r0, pc
c: 1b00 subs r0, r0, r4
```
to:
```
4: 4813 ldr r0, [pc, #0x4c] @ 0x54 <__libc_init_array+0x54>
6: 4914 ldr r1, [pc, #0x50] @ 0x58 <__libc_init_array+0x58>
8: 4478 add r0, pc
a: 4479 add r1, pc
c: 6804 ldr r4, [r0]
e: 6808 ldr r0, [r1]
10: 1b00 subs r0, r0, r4
```
The `ldr` will trigger a fault in case where these symbols aren't
pointing to a valid memory location which is sometimes the case when the
array is empty.
Commit: 5b7f92863a44a58e5ffab694a8e6733d9519b976
https://github.com/llvm/llvm-project/commit/5b7f92863a44a58e5ffab694a8e6733d9519b976
Author: Daniil Kovalev <dkovalev at accesssoftek.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/Driver/aarch64-ptrauth.c
Log Message:
-----------
[PAC][clang] Add new features to pauthtest ABI (#113150)
Enable init/fini address discrimination, type info vtable pointer
discrimination and AArch64 jump table hardening as part of pauthtest ABI.
Commit: 1dd94a23587b35ff5316a53fe7228c3fbe345c42
https://github.com/llvm/llvm-project/commit/1dd94a23587b35ff5316a53fe7228c3fbe345c42
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVSubtarget.h
M llvm/test/CodeGen/RISCV/rv32xtheadba.ll
M llvm/test/CodeGen/RISCV/rv64xtheadba.ll
M llvm/test/CodeGen/RISCV/xqciac.ll
Log Message:
-----------
[RISCV] Add helper method for shift-and-add extensions (#158638)
Not an NFC, as it improves consistency, enabling some cases
for XAndesPerf and XTheadBa.
Commit: 20b861028bc54513d76b39ca4f396b49231683fd
https://github.com/llvm/llvm-project/commit/20b861028bc54513d76b39ca4f396b49231683fd
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/CXX/drs/cwg30xx.cpp
M clang/www/cxx_dr_status.html
M clang/www/make_cxx_dr_status
Log Message:
-----------
[clang][NFC] Update C++ DR status page
Proposed resolution for CWG3005 underwent cosmetic word reshuffling on 2025-09-12, so no changes to the test are needed.
Commit: 5c71710543b66a6c187d543785860307a2e483c5
https://github.com/llvm/llvm-project/commit/5c71710543b66a6c187d543785860307a2e483c5
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
Log Message:
-----------
[gn build] Port 85d2a4670cbb
Commit: 63dc07f7d5b3da816afcf9c234e117c2780e71ed
https://github.com/llvm/llvm-project/commit/63dc07f7d5b3da816afcf9c234e117c2780e71ed
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Fix numResults field type of CCRStructure (#158598)
Fix the type of the `numResults` field of `CCRStructure`, as pointed out
here:
https://github.com/llvm/llvm-project/pull/140539#discussion_r2317808734
Commit: 7af659d0f117802627fc47f73ca5dd20439c5d7b
https://github.com/llvm/llvm-project/commit/7af659d0f117802627fc47f73ca5dd20439c5d7b
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[SCEV] Don't perform implication checks with many predicates (#158652)
When adding a new predicate to a union, we currently do a bidirectional
implication for all the contained predicates. This means that the number
of implication checks is quadratic in the number of total predicates (if
they don't end up being eliminated).
Fix this by not checking for implication if the number of predicates
grows too large. The expectation is that if there is a large number of
predicates, we should be discarding them later anyway, as expanding them
would be too expensive.
Fixes https://github.com/llvm/llvm-project/issues/156114.
Commit: 67c335c66395d15841cd540e0e8cb04e9efb666b
https://github.com/llvm/llvm-project/commit/67c335c66395d15841cd540e0e8cb04e9efb666b
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A flang/test/Transforms/DoConcurrent/allocatable.f90
A flang/test/Transforms/DoConcurrent/host_eval.f90
M flang/test/Transforms/DoConcurrent/locally_destroyed_temp.f90
A flang/test/Transforms/DoConcurrent/map_shape_info.f90
M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
A flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
M flang/test/Transforms/DoConcurrent/not_perfectly_nested.f90
A flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
A flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
Log Message:
-----------
[NFC][flang][OpenMP] `do concurrent` to device mapping lit tests (#155992)
Adds more lit tests for `do concurrent` device mapping.
PR stack:
- https://github.com/llvm/llvm-project/pull/155754
- https://github.com/llvm/llvm-project/pull/155987
- https://github.com/llvm/llvm-project/pull/155992 ◀️
- https://github.com/llvm/llvm-project/pull/155993
- https://github.com/llvm/llvm-project/pull/157638
- https://github.com/llvm/llvm-project/pull/156610
- https://github.com/llvm/llvm-project/pull/156837
Commit: 5169bb4c812c1006f4ecfa4bded7aa92d35e3b72
https://github.com/llvm/llvm-project/commit/5169bb4c812c1006f4ecfa4bded7aa92d35e3b72
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/CodeGen/TargetBuiltins/X86.cpp
M clang/lib/Headers/avx2intrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/sse.c
Log Message:
-----------
[clang][x86] Change SLLDQ/SRLDQ byte shift intrinsics to use vXi8 types instead of vXi64 (#158671)
As noted on #156494 and #157403 - its much easier to work with the byte
shift intrinsics if we treat them as vXi8 types instead of vXi64 types
which will require bitcasting
We already do this for the PALIGNR intrinsics which are a more advanced
version of the same shuffle
Commit: 7ba702195136b448d6f35ae3ea4075059cb0df82
https://github.com/llvm/llvm-project/commit/7ba702195136b448d6f35ae3ea4075059cb0df82
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop3-literal.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx8-literal16.txt
Log Message:
-----------
[AMDGPU][MC] Keep MCOperands unencoded. (#158685)
We have proper encoding facilities to encode operands and instructions;
there's no need to pollute the MC representation with encoding details.
Supposed to be an NFCI, but happens to fix some re-encoded instruction
codes in disassembler tests.
The 64-bit operands are to be addressed in following patches introducing
MC-level representation for lit() and lit64() modifiers, to then be
respected by both the assembler and disassembler.
Commit: 29c55d0f7bb993668243efad0dbbc3fc1a9a5d2a
https://github.com/llvm/llvm-project/commit/29c55d0f7bb993668243efad0dbbc3fc1a9a5d2a
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
Log Message:
-----------
[clang][bytecode] Improve error detection in BitCastPrim op (#158575)
Reject bitcasts to pointer types unless it's to `nullptr_t` and always
reject bitcasts to member pointer types.
Fixes #156174
Commit: 788a25a0f71bfa5e5e1c12ad093993b115d10e7a
https://github.com/llvm/llvm-project/commit/788a25a0f71bfa5e5e1c12ad093993b115d10e7a
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.h
Log Message:
-----------
[AArch64] Break up `AArch64FrameLowering::emitEpilogue` (NFCI) (#157889)
This is much smaller than #157485 (as the epilogue code was already a
reasonable size); however, this change will allow some further tidy up
of methods shared between the prologue and epilogue code (in a follow-up
patch).
Commit: 0002960d85736c37ac18b31b8cc590be924e20e1
https://github.com/llvm/llvm-project/commit/0002960d85736c37ac18b31b8cc590be924e20e1
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/lib/Optimizer/Builder/MutableBox.cpp
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
A flang/test/Lower/call-character-array-to-polymorphic-pointer.f90
Log Message:
-----------
[flang] fix passing characters to polymorphic array pointers (#157813)
The existing code failed to detect character array as being character
because of the extra fir.array type indirection. Use
`fir::getFortranElementType` for a more generic type handling.
Fixes #150749.
Commit: 2a296bac684045452ac33fef0de522f44d57d0bc
https://github.com/llvm/llvm-project/commit/2a296bac684045452ac33fef0de522f44d57d0bc
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
A flang/test/Lower/OpenACC/acc-firstprivate-derived-allocatable-component.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
Log Message:
-----------
[flang][openacc] implement firstprivate of scalar derived type (#158636)
Commit: dd29fbd7e59bbc6c537f8e827634ea7e206a3d73
https://github.com/llvm/llvm-project/commit/dd29fbd7e59bbc6c537f8e827634ea7e206a3d73
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FortranVariableInterface.cpp
Log Message:
-----------
[flang] fix some FIR verifiers that did not return expected failure (#158686)
Some `return` were missing before `emitOpError`, leading the compiler to
print an error and continue, leading to the same error to be raised
again and again at each verifier pass without a proper abort.
Commit: 27d730b5dbde03d9b9c1074092e94d025c70099f
https://github.com/llvm/llvm-project/commit/27d730b5dbde03d9b9c1074092e94d025c70099f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpState.h
Log Message:
-----------
[clang][bytecode] Create InterpState allocator on demand (#158802)
We often don't need it (especially in C), so make this optional and
create it only when we first allocate something.
Commit: e6526cf778d0c0bfe0de44bc2a89e96bcbeb1551
https://github.com/llvm/llvm-project/commit/e6526cf778d0c0bfe0de44bc2a89e96bcbeb1551
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
M llvm/test/CodeGen/AArch64/sme-zt0-state.ll
Log Message:
-----------
[AArch64][SME] Reuse ZT0 spill slot (#158593)
Previously, we'd allocate a new spill slot each time we needed to spill
ZT0, which grows the stack size for each spill. Saving the spill slot in
FuncInfo will also allow us to reload the spill on entry to exception
handlers.
Commit: bc931a596b67a01763ccfffdcae688bb2f54e2d6
https://github.com/llvm/llvm-project/commit/bc931a596b67a01763ccfffdcae688bb2f54e2d6
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/test/Target/SPIRV/module.mlir
Log Message:
-----------
[mlir][spirv] Update spirv validation for module.mlir (#158678)
This is to check that the new `spirv-val` behaviour works correctly.
Subsequent PRs will add validation to other target tests. This requires
the most recent SPIRV-Tools to work; for existing build directories
using bundled SPIR-V tools, running `SPIRVTools-update` cmake target
should update them accordingly.
The minimum required SPIRV-Tools version is commit
`14d42009a9435c34ea55b26cc8d92240c428a052`, merged in
https://github.com/KhronosGroup/SPIRV-Tools/pull/6292
Commit: 72aa9467627e3a19794a65a11a829640bf56a0c5
https://github.com/llvm/llvm-project/commit/72aa9467627e3a19794a65a11a829640bf56a0c5
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
M llvm/test/CodeGen/AMDGPU/inline-asm.i128.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/regcoalesce-64-bit-only-regs.mir
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-subreg-insert-extract.mir
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-subreg-src2-chain.mir
M llvm/test/CodeGen/AMDGPU/sgpr-phys-copy.mir
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected
Log Message:
-----------
[AMDGPU] Drop high 32 bits of aperture registers (#158725)
Fixes: SWDEV-551181
Commit: 82830e8b05e3f41a528d9338c9c93b9aff82729c
https://github.com/llvm/llvm-project/commit/82830e8b05e3f41a528d9338c9c93b9aff82729c
Author: Nathan Gauër <brioche at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/cmake/modules/CMakeLists.txt
Log Message:
-----------
Revert "[clang] fix clang_cmake_builddir" (#158684)
Reverts llvm/llvm-project#155844
Romaric is OOO for the next 2 weeks and I don't have the context on the
other part (clspv) to propose a fix forward.
Reverting for now.
Commit: b9f84bce6797d846b065827e8acd5c8b41631e75
https://github.com/llvm/llvm-project/commit/b9f84bce6797d846b065827e8acd5c8b41631e75
Author: Roger Ferrer Ibáñez <rofirrim at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/AST/StmtOpenMP.h
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
Log Message:
-----------
[Clang][OpenMP] Add an additional class to hold data that will be shared between all loop transformations (#155849)
This is preparatory work for the implementation of `#pragma omp fuse` in
https://github.com/llvm/llvm-project/pull/139293
**Note**: this change builds on top of
https://github.com/llvm/llvm-project/pull/155848
This change adds an additional class to hold data that will be shared
between all loop transformations: those that apply to canonical loop
nests (the majority) and those that apply to canonical loop sequences
(`fuse` in OpenMP 6.0).
This class is not a statement by itself and its goal is to avoid having
to replicate information between classes.
Also simplfiy the way we handle the "generated loops" information as we
currently only need to know if it is zero or non-zero.
Commit: 76efbc068a6ab6ffa10b801df07155a6a69530e7
https://github.com/llvm/llvm-project/commit/76efbc068a6ab6ffa10b801df07155a6a69530e7
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-addrspacecast.mir
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomic-cmpxchg.ll
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast.ll
M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
M llvm/test/CodeGen/AMDGPU/attributor-flatscratchinit-undefined-behavior2.ll
M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
M llvm/test/CodeGen/AMDGPU/gep-const-address-space.ll
M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/undef-handling-crash-in-ra.ll
M llvm/test/DebugInfo/AMDGPU/debug-loc-copy.ll
Log Message:
-----------
[AMDGPU] Fix codegen to emit COPY instead of S_MOV_B64 for aperture regs (#158754)
Commit: f5022bd03e7beab522ab3684228d531ef5c0789a
https://github.com/llvm/llvm-project/commit/f5022bd03e7beab522ab3684228d531ef5c0789a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/TestDbgInfoContentVectorFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/vector-of-vectors/TestVectorOfVectorsFromStdModule.py
Log Message:
-----------
[lldb][test] import-std-module: skip vector tests
This unblocks https://github.com/llvm/llvm-project/pull/158606. The tests are failing because libc++ is now using lambdas in function bodies in the vector header. Ever since https://github.com/llvm/llvm-project/issues/149477 we bail out of importing types when we encounter lambdas. Until we fix ASTImport of `clang::LambdaExpr` nodes properly, this will need to be skipped.
Commit: 10be515f1e000e6fb69f546e3a79537a617def24
https://github.com/llvm/llvm-project/commit/10be515f1e000e6fb69f546e3a79537a617def24
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpState.h
Log Message:
-----------
[clang][bytecode][NFC] InterpState: get ASTContext from interp::Context (#158852)
Access the Parent state one less time.
Commit: a1a7361e1c22fc176c0b5c89b22907c1a3c1d28f
https://github.com/llvm/llvm-project/commit/a1a7361e1c22fc176c0b5c89b22907c1a3c1d28f
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/test/Transforms/DoConcurrent/host_eval.f90
Log Message:
-----------
[flang][OpenMP] Fix failure reported on #155992 (#158813)
Adds a requirement on a test to run only when amd gpu is a registered
target. We need to do this since the test uses `-triple
amdgcn-amd-amdhsa` when invoking flang.
Commit: fbb587c65653395dc97a360e0cd0d1cf9ed0e875
https://github.com/llvm/llvm-project/commit/fbb587c65653395dc97a360e0cd0d1cf9ed0e875
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
Log Message:
-----------
[clang][docs] Fix formatting of structor_decl_linkage_names DocBrief
The backticks weren't highlighting correctly.
Commit: a0a82ee19d6f2ff1013407ba4c973bfe5428423f
https://github.com/llvm/llvm-project/commit/a0a82ee19d6f2ff1013407ba4c973bfe5428423f
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/io/TestDAP_io.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
Log Message:
-----------
[lldb][lldb-dap] Disable more DAP tests on Windows (#158906)
Flakey on Windows on Arm:
https://lab.llvm.org/buildbot/#/builders/141/builds/11540
See #137660
Commit: 6ae9fcd68b8c32323fe8ed1605e4bcbdf13f6724
https://github.com/llvm/llvm-project/commit/6ae9fcd68b8c32323fe8ed1605e4bcbdf13f6724
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/PS4CPU.cpp
A clang/test/Driver/DTLTO/ps5-dtlto.c
Log Message:
-----------
[PS5] Enable support for DTLTO in the PS5 Clang driver (#158041)
DTLTO support was added for most targets via the shared `addLTOOptions`
helper. The PS5 driver does not call that helper, so it did not inherit
the feature. Implement the equivalent DTLTO handling in the PS5 driver.
Unlike other drivers, we add LTO-related options unconditionally. This
makes sense because the linker decides whether to perform LTO based on
input file types, not the presence of `-flto` on the compiler command
line. Other drivers only add these options when `-flto` is specified.
Internal-Ref: TOOLCHAIN-19896
Commit: 46fcece2a8015980fa51bece0d87311af10da553
https://github.com/llvm/llvm-project/commit/46fcece2a8015980fa51bece0d87311af10da553
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/X86/uniform_load.ll
A llvm/test/Transforms/LoopVectorize/cse-gep-source-element-type.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-branch-weights.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
Log Message:
-----------
[VPlan] Extend CSE to eliminate GEPs (#156699)
The motivation for this patch is to close the gap between the
VPlan-based CSE and the legacy CSE, to make it easier to remove the
legacy CSE. Before this patch, stubbing out the legacy CSE leads to 22
test failures, and after this patch, there are only 12 failures, and all
of them seem to have a single root cause:
VPlanTransforms::createInterleaveGroups() and
VPInterleaveGroup::execute(). The improvements from this patch are of
course welcome.
While developing the patch, a miscompile was found when GEP
source-element-types differ, and this has been fixed.
Co-authored-by: Florian Hahn <flo at fhahn.com>
Co-authored-by: Luke Lau <luke at igalia.com>
Commit: 3a5cc953dce0e142e935335a4cdbc5821ddf6d11
https://github.com/llvm/llvm-project/commit/3a5cc953dce0e142e935335a4cdbc5821ddf6d11
Author: YixingZhang007 <yixing.zhang at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVBaseInfo.h
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/test/CodeGen/SPIRV/basic_float_types.ll
Log Message:
-----------
[SPIRV] Add FPEncoding operand support for OpTypeFloat (#156871)
This PR introduces support for `FPEncoding` operand for SPIR-V
instruction `OpTypeFloat`, with the following main changes:
1. Introduces `FPEncoding` enum class to represent floating-point
encodings, such as `BFloat16KHR`, in SPIR-V.
2. Updates SPIR-V instruction `OpTypeFloat` to accept `FPEncoding` as
its second input operand.
3. Updates SPIR-V type creation to handle new encoding requirements.
This PR enables support for the BFloat floating-point type in SPIR-V.
Commit: 3946c5061d708b1e7604db63e9b604cb0fce7dd6
https://github.com/llvm/llvm-project/commit/3946c5061d708b1e7604db63e9b604cb0fce7dd6
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/DebugInfoMetadata.h
A llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
A llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
M llvm/unittests/Transforms/Utils/CMakeLists.txt
A llvm/unittests/Transforms/Utils/DebugSSAUpdaterTest.cpp
M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
Log Message:
-----------
Add DebugSSAUpdater class to track debug value liveness (#135349)
This patch adds a class that uses SSA construction, with debug values as
definitions, to determine whether and which debug values for a
particular variable are live at each point in an IR function. This will
be used by the IR reader of llvm-debuginfo-analyzer to compute variable
ranges and coverage, although it may be applicable to other debug info
IR analyses.
Commit: eb624dc758f0cacb9be306de2d347235c66e6910
https://github.com/llvm/llvm-project/commit/eb624dc758f0cacb9be306de2d347235c66e6910
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Transforms/Utils/BUILD.gn
Log Message:
-----------
[gn build] Port 3946c5061d70
Commit: 7936b6f1133516c427c478104606d9276da6f81b
https://github.com/llvm/llvm-project/commit/7936b6f1133516c427c478104606d9276da6f81b
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
Log Message:
-----------
[MLIR] Turn `RemarkFormat` into an enum class (NFC) (#158733)
This is fixing a gcc warning and aligning with the other enums in the
file.
Commit: c6c60e1ec2c83bb12107160a90f31b6eeafbf7bf
https://github.com/llvm/llvm-project/commit/c6c60e1ec2c83bb12107160a90f31b6eeafbf7bf
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/combine-storetomstore.ll
M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
M llvm/test/CodeGen/AArch64/intrinsic-vector-match-sve2.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-loads.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-stores.ll
M llvm/test/CodeGen/AArch64/sve-nontemporal-masked-ldst.ll
Log Message:
-----------
[AArch64] Combine signext_inreg of setcc(... != splat(0)) (#157665)
Add the following fold AArch64 DAGCombine:
Fold setcc_merge_zero(
pred, insert_subvector(undef, signext_inreg(vNi1), 0),
!= splat(0))
-> setcc_merge_zero(pred, insert_subvector(undef, shl(vNi1), 0),
!= splat(0))
as the comparison (!= 0) depends only on bit 0 of the input, the left
shift is sufficient.
Commit: aa1a6948467362a97f2bf10772a491938b20534c
https://github.com/llvm/llvm-project/commit/aa1a6948467362a97f2bf10772a491938b20534c
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/select-splat-vector.ll
Log Message:
-----------
[LLVM][GlobalISel] Make CSEMIRBuilder::buildConstant scalable vector aware. (#158299)
Commit: 8fab81121ebd047274f3171eb2902cb564b3e377
https://github.com/llvm/llvm-project/commit/8fab81121ebd047274f3171eb2902cb564b3e377
Author: John Brawn <john.brawn at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
A llvm/test/Transforms/LoopStrengthReduce/AArch64/prefer-all.ll
Log Message:
-----------
[LSR] Add an addressing mode that considers all addressing modes (#158110)
The way that loops strength reduction works is that the target has to
upfront decide whether it wants its addressing to be preindex,
postindex, or neither. This choice affects:
* Which potential solutions we generate
* Whether we consider a pre/post index load/store as costing an AddRec
or not.
None of these choices are a good fit for either AArch64 or ARM, where
both preindex and postindex addressing are typically free:
* If we pick None then we count pre/post index addressing as costing one
addrec more than is correct so we don't pick them when we should.
* If we pick PreIndexed or PostIndexed then we get the correct cost for
that addressing type, but still get it wrong for the other and also
exclude potential solutions using offset addressing that could have less
cost.
This patch adds an "all" addressing mode that causes all potential
solutions to be generated and counts both pre and postindex as having
AddRecCost of zero. Unfortuntely this reveals problems elsewhere in how
we calculate the cost of things that need to be fixed before we can make
use of it.
Commit: c5474cdc27d99f6ebab1d501f93ec1aa6dc8235b
https://github.com/llvm/llvm-project/commit/c5474cdc27d99f6ebab1d501f93ec1aa6dc8235b
Author: Ross Brunton <bruntonross at protonmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M offload/unittests/OffloadAPI/common/Fixtures.hpp
Log Message:
-----------
[Offload] Make `ASSERT_ERROR` output more readable (#157653)
Commit: a134b0621798d0c07a6c5ea23d8e8388b04c26ad
https://github.com/llvm/llvm-project/commit/a134b0621798d0c07a6c5ea23d8e8388b04c26ad
Author: Madhur Amilkanthwar <madhura at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/test/Driver/clang_f_opts.c
M flang/docs/ReleaseNotes.md
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/loop-fuse.f90
M llvm/include/llvm/Passes/PassBuilder.h
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/tools/opt/NewPMDriver.cpp
Log Message:
-----------
Reapply "Introduce -fexperimental-loop-fusion to clang and flang (#158844)
This PR is a reapplication of
https://github.com/llvm/llvm-project/pull/142686
Commit: 92f5d8df361bb1bb6dea88f86faeedfd295ab970
https://github.com/llvm/llvm-project/commit/92f5d8df361bb1bb6dea88f86faeedfd295ab970
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M libcxx/include/string
M libcxx/src/filesystem/format_string.h
M libcxx/test/benchmarks/containers/string.bench.cpp
R libcxx/test/libcxx-03/strings/basic.string/string.modifiers/resize_default_initialized.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.modifiers/resize_default_initialized.pass.cpp
Log Message:
-----------
[libc++] Replace __resize_default_init with resize_and_overwrite (#157121)
Since `__resize_default_init` is only ever used inside the dylib we can
remove the libc++-internal API and switch to the public one. This patch
inlines a bunch of functions that aren't required anymore and simplifies
the code that way.
Commit: fba26bc1a5cf7cf367474965c144659f62588e7d
https://github.com/llvm/llvm-project/commit/fba26bc1a5cf7cf367474965c144659f62588e7d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/LoopSpecialization.cpp
M mlir/test/Dialect/SCF/for-loop-peeling.mlir
Log Message:
-----------
[MLIR] Fix SCF loop specialization (peeling) to work on scf.for with non-index type (#158707)
The current code would crash with integer. This is visible on this
modified example (the original with index was incorrect)
Commit: ff25184f356e0e2fa6e3606160b30f7da9ea525c
https://github.com/llvm/llvm-project/commit/ff25184f356e0e2fa6e3606160b30f7da9ea525c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/Statistic.h
Log Message:
-----------
Make NoopStatistic constructor constexpr (NFC) (#159045)
This makes it friendly to -Wglobal-constructors environments. This class
is used when Statistics are disabled, the matching class,
TrackingStatistic, was made constexpr a while back already in
7e5682ee6201c for other reasons.
Commit: 45f1440d9a3a2f6108242a1fce16faf52a3f4645
https://github.com/llvm/llvm-project/commit/45f1440d9a3a2f6108242a1fce16faf52a3f4645
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Remarks/BitstreamRemarkParser.cpp
M llvm/lib/Remarks/BitstreamRemarkParser.h
Log Message:
-----------
Reland "[Remarks] BitstreamRemarkParser: Refactor error handling" (#158667)
Reland #156511 after fixing a build failure not caught by clang. The
default implementation of `parseRecord` is currently unused. Apparently,
clang doesn't type check uninstantiated methods in class templates. To
avoid this footgun, we `= delete` the impl for now.
Original message:
In preparation of larger changes to the bitstream remark format,
refactor the error handling code in the BitstreamRemarkParser.
Main change: move the various static helper methods into the parser
helper classes, so we don't need to pass around as many args. Calling
`error(...)` inside the helper classes now automatically prepends the
current block being parsed to the error message.
NFCI (except for error messages on invalid bitstream files).
Pull Request: https://github.com/llvm/llvm-project/pull/158667
Commit: c366cbdc619dc15f92dcedda4b9e256a26ef94b3
https://github.com/llvm/llvm-project/commit/c366cbdc619dc15f92dcedda4b9e256a26ef94b3
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-acc-structure.h
M flang/test/Semantics/OpenACC/acc-loop.f90
Log Message:
-----------
[flang][acc] Allow nested gang loops inside acc routines (#158693)
The following commit incorrectly prohibited nested gang loops inside acc
routines. This PR limits the restriction to loops within kernels
constructs only.
https://github.com/llvm/llvm-project/commit/8470027f257a3304b2abe50e5663bcd711f6ca29
Commit: 18507a7a6bf1c82e2614b3995320ebab8dd60ef2
https://github.com/llvm/llvm-project/commit/18507a7a6bf1c82e2614b3995320ebab8dd60ef2
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
Log Message:
-----------
[DA] Remove base pointers from subscripts (NFCI) (#157083)
This patch removes base pointers from subscripts when delinearization
fails. Previously, in such cases, the pointer type SCEVs were used
instead of offset SCEVs derived from them.
For example, here is a portion of the debug output when analyzing
`strong0` in `test/Analysis/DependenceAnalysis/StrongSIV.ll`:
```
testing subscript 0, SIV
src = {(8 + %A),+,4}<nuw><%for.body>
dst = {(8 + %A),+,4}<nuw><%for.body>
Strong SIV test
Coeff = 4, i64
SrcConst = (8 + %A), ptr
DstConst = (8 + %A), ptr
Delta = 0, i64
UpperBound = (-1 + %n), i64
Distance = 0
Remainder = 0
```
As shown above, the `SrcConst` and `DstConst` are pointer values rather
than integer offsets. `%A` should be removed.
This change is necessary for #157086, since
`ScalarEvolution::willNotOverflow` expects integer type SCEVs as
arguments. This change alone alone should not affect the analysis
results.
Commit: ea59be552f1db4f8f2e8a3edd909f17802339970
https://github.com/llvm/llvm-project/commit/ea59be552f1db4f8f2e8a3edd909f17802339970
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/InstCombine/is_fpclass.ll
Log Message:
-----------
[ValueTracking] Don't take sign bit from NaN operands (#157250)
Closes https://github.com/llvm/llvm-project/issues/157238.
Commit: 66a8f47066caad76458190d820b7f4bea7c602c5
https://github.com/llvm/llvm-project/commit/66a8f47066caad76458190d820b7f4bea7c602c5
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer][NFC] Save stride in a map. (#157706)
In order to avoid recalculating stride of strided load twice save it in
a map.
Commit: 3c7c8929d415ab773c88e7e0a668930738f98e56
https://github.com/llvm/llvm-project/commit/3c7c8929d415ab773c88e7e0a668930738f98e56
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/TableGen/HwModeEncodeDecode3.td
M llvm/test/TableGen/RegisterEncoder.td
M llvm/utils/TableGen/CodeEmitterGen.cpp
Log Message:
-----------
[TableGen][CodeEmitter] Refactor addCodeToMergeInOperand (NFC) (#158674)
* Use streams to avoid dealing with std::string
* Print operand masks in hex
* Make the output more succinct
Commit: 666e4313ebc03587f27774139ad8f780bac15c3e
https://github.com/llvm/llvm-project/commit/666e4313ebc03587f27774139ad8f780bac15c3e
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
Log Message:
-----------
[NFC][LV] Improve ee with sideeffects legality test (#158275)
Addressing postcommit comments for
54fc5367f63cca8e011d93bbd55764b0a7ecbbd5
Commit: 33c33d0e0d143fb6197f191921d2b6e4470855da
https://github.com/llvm/llvm-project/commit/33c33d0e0d143fb6197f191921d2b6e4470855da
Author: jiang1997 <jieke at live.cn>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCooperativeMatrixOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVMemoryOps.td
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/test/Dialect/MemRef/invalid.mlir
Log Message:
-----------
[MLIR] Use IntValidAlignment for alignment attributes (#158137)
This PR refactors alignment validation in MLIR's MemRef and SPIRV
dialects:
- Use `IntValidAlignment` for consistent type safety across MemRef and
SPIRV dialects
- Eliminate duplicate validation logic in `MemRefOps.cpp`
- Adjust error messages in `invalid.mlir` to match improved validation
This is the first of two PRs addressing issue #155677.
Commit: 311d78f2a1d80fd6b7700a0199c146accd2c7d3c
https://github.com/llvm/llvm-project/commit/311d78f2a1d80fd6b7700a0199c146accd2c7d3c
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M offload/test/offloading/force-usm.cpp
Log Message:
-----------
[OpenMP] Fix force-usm test after #157182 (#159095)
The refactoring lead to an additional data transfer. This changes the
assumed transfers in the check-strings to work with that changed
behavior.
Commit: e7101dac9cbdad08696a05b4b73ed76c20a6f2fc
https://github.com/llvm/llvm-project/commit/e7101dac9cbdad08696a05b4b73ed76c20a6f2fc
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/JIT.h
M offload/plugins-nextgen/common/include/PluginInterface.h
M offload/plugins-nextgen/common/src/JIT.cpp
M offload/plugins-nextgen/common/src/PluginInterface.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
M offload/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[Offload] Copy loaded images into managed storage (#158748)
Summary:
Currently we have this `__tgt_device_image` indirection which just takes
a reference to some pointers. This was all find and good when the only
usage of this was from a section of GPU code that came from an ELF
constant section. However, we have expanded beyond that and now need to
worry about managing lifetimes. We have code that references the image
even after it was loaded internally. This patch changes the
implementation to instaed copy the memory buffer and manage it locally.
This PR reworks the JIT and other image handling to directly manage its
own memory. We now don't need to duplicate this behavior externally at
the Offload API level. Also we actually free these if the user unloads
them.
Upside, less likely to crash and burn. Downside, more latency when
loading an image.
Commit: 148e099b39a25ea4336faeef485c53819b269fc2
https://github.com/llvm/llvm-project/commit/148e099b39a25ea4336faeef485c53819b269fc2
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
A mlir/test/Target/LLVMIR/openmp-target-default-as.mlir
Log Message:
-----------
[MLIR][OpenMP] Set default address space for OpenMPIRBuilder (#158689)
Extension of https://github.com/llvm/llvm-project/pull/158152 for MLIR.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: ce073a9445a2eaf5810ea734e2dcad6f14441218
https://github.com/llvm/llvm-project/commit/ce073a9445a2eaf5810ea734e2dcad6f14441218
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
R llvm/test/TableGen/AsmPredicateCondsEmission.td
A llvm/test/TableGen/DecoderEmitter/AsmPredicateCondsEmission.td
A llvm/test/TableGen/DecoderEmitter/DecoderEmitterBitwidthSpecialization.td
A llvm/test/TableGen/DecoderEmitter/DecoderEmitterFnTable.td
A llvm/test/TableGen/DecoderEmitter/VarLenDecoder.td
A llvm/test/TableGen/DecoderEmitter/trydecode-emission.td
A llvm/test/TableGen/DecoderEmitter/trydecode-emission2.td
A llvm/test/TableGen/DecoderEmitter/trydecode-emission3.td
A llvm/test/TableGen/DecoderEmitter/trydecode-emission4.td
R llvm/test/TableGen/DecoderEmitterBitwidthSpecialization.td
R llvm/test/TableGen/DecoderEmitterFnTable.td
R llvm/test/TableGen/VarLenDecoder.td
R llvm/test/TableGen/trydecode-emission.td
R llvm/test/TableGen/trydecode-emission2.td
R llvm/test/TableGen/trydecode-emission3.td
R llvm/test/TableGen/trydecode-emission4.td
Log Message:
-----------
[NFC][TableGen] Move decoder tests to DecoderEmitter directory (#159040)
Commit: 334013b090eef5b97cef8bc1817ed9ff67680488
https://github.com/llvm/llvm-project/commit/334013b090eef5b97cef8bc1817ed9ff67680488
Author: James Y Knight <jyknight at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/Statistic.h
Log Message:
-----------
Mark STATISTIC variables as maybe_unused when stats are disabled. (#159103)
PR #159045 made the constructor constexpr, which allows
`-Wunused-variable` to trigger. However, we don't really care if a
statistic is unused if `LLVM_ENABLE_STATS` is 0.
Commit: b3fa92fd4edce2d9be61eb289a179a98bcf13880
https://github.com/llvm/llvm-project/commit/b3fa92fd4edce2d9be61eb289a179a98bcf13880
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][Decoder] Make predicate/decocder generation functions return a string (NFC) (#159089)
These functions will see more uses in a future patch.
This also resolves a FIXME.
Commit: 2771d35e2aaf76cf3716954d6094a822e56dfda5
https://github.com/llvm/llvm-project/commit/2771d35e2aaf76cf3716954d6094a822e56dfda5
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[NFC ]Add a helper function isTailCall for getting libcall in SelectionDAG (#155256)
Based on comment of
https://github.com/llvm/llvm-project/pull/153600#discussion_r2285729269,
Add a helper function isTailCall for getting libcall in SelectionDAG.
Commit: 7e71877835a567ada4d0e57413a5f64de3545033
https://github.com/llvm/llvm-project/commit/7e71877835a567ada4d0e57413a5f64de3545033
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
M llvm/unittests/ADT/STLExtrasTest.cpp
Log Message:
-----------
[ADT] Wrapper for `std::accumulate` accepting a `range`. (#158702)
Commit: a4c5a747c5507d0c45524e45082389089fa9a791
https://github.com/llvm/llvm-project/commit/a4c5a747c5507d0c45524e45082389089fa9a791
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
Log Message:
-----------
AMDGPU: Regenerate baseline test checks for some gfx12 mc tests (#159098)
Commit: 44b686e52ec462c173d0b114172db2a783215116
https://github.com/llvm/llvm-project/commit/44b686e52ec462c173d0b114172db2a783215116
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
A llvm/test/CodeGen/AArch64/pr157252.mir
Log Message:
-----------
[AArch64] Unfold adds when eliminating frame index with scalable offset (#158597)
Fixes https://github.com/llvm/llvm-project/issues/157252.
Peephole optimization tends to fold:
```
add %gpr1, %stack, 0
subs %gpr2, %gpr1, 0
```
to
```
adds %gpr2, %stack, 0
```
This patch undoes the fold in `rewriteAArch64FrameIndex` to process
`adds` on the stack object.
Commit: a42aac5f83e272f83207844dde1530b86e6fcf2b
https://github.com/llvm/llvm-project/commit/a42aac5f83e272f83207844dde1530b86e6fcf2b
Author: Stephen Tozer <stephen.tozer at sony.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
Log Message:
-----------
[DebugInfo] Fix memory leak in DebugSSAUpdater (#159107)
Fixes an issue in commit 3946c50, PR #135349.
The DebugSSAUpdater class performs raw pointer allocations. It frees
these properly in reset(), but does not do so in its destructor - as an
immediate fix, this patch adds a destructor which frees the allocations
correctly.
I'll be merging this immediately to fix the issue, but will be open to
post-commit review and/or producing a better fix in a follow-up commit.
Commit: eeced0d073ee387d98e39fdcada2277ad81cd4a9
https://github.com/llvm/llvm-project/commit/eeced0d073ee387d98e39fdcada2277ad81cd4a9
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/acc-ldst.ll
M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-snop-padding.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx942.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.i8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.iterative.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx90a.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards-mfma-scale.gfx950.mir
M llvm/test/CodeGen/AMDGPU/mai-hazards.mir
M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
M llvm/test/CodeGen/AMDGPU/neighboring-mfma-padding.mir
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-phi.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr.ll
M llvm/test/CodeGen/AMDGPU/spill-agpr.ll
M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
Log Message:
-----------
[AMDGPU] Use larger immediate values in S_NOP (#158990)
The S_NOP instruction has an immediate operand which is one less than
the number of cycles to delay for. The maximum value that may be encoded
in this field was increased in GFX8 and again in GFX12.
Commit: 175bab32d7f37bfb854b89c0da7e9f4aa427bc70
https://github.com/llvm/llvm-project/commit/175bab32d7f37bfb854b89c0da7e9f4aa427bc70
Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/avx512-fma.ll
M llvm/test/CodeGen/X86/avx512fp16-combine-vfmac-fadd.ll
M llvm/test/CodeGen/X86/avx512fp16-combine-vfmulc-fadd.ll
M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc-fadd.ll
M llvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc.ll
M llvm/test/CodeGen/X86/dag-combiner-fma-folding.ll
M llvm/test/CodeGen/X86/fma-do-not-commute.ll
M llvm/test/CodeGen/X86/fma_patterns.ll
M llvm/test/CodeGen/X86/fma_patterns_wide.ll
M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
Log Message:
-----------
[X86] Don't rely on global -fp-contract=fast on X86 CodeGen tests (#158026)
IR has the `contract` to indicate that contraction is allowed. Testing
shouldn't rely on global flag to perform contraction. This is a
prerequisite before making backends rely only on the IR to perform
contraction. See more here:
https://discourse.llvm.org/t/allowfpopfusion-vs-sdnodeflags-hasallowcontract/80909/5
Commit: beb6bab87e6370087049bb900155d5ca164acc15
https://github.com/llvm/llvm-project/commit/beb6bab87e6370087049bb900155d5ca164acc15
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in LowerGpuOpsToROCDLOps.cpp (NFC)
Commit: f017bcb3e375843dc146eda823fcdd4c95a10153
https://github.com/llvm/llvm-project/commit/f017bcb3e375843dc146eda823fcdd4c95a10153
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
M mlir/test/Conversion/GPUToSPIRV/wmma-ops-to-spirv-khr-coop-matrix.mlir
Log Message:
-----------
[mlir][gpu][spirv] Add conversion for gpu.subgroup_mma_elementwise mulf (#158832)
gpu.subgroup_mma_elementwise supports mulf op type. Add conversion for it.
Commit: babdad3fdbc66b4992654f9b7dc0fa4da85bd843
https://github.com/llvm/llvm-project/commit/babdad3fdbc66b4992654f9b7dc0fa4da85bd843
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURewriteAGPRCopyMFMA.cpp
M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
Log Message:
-----------
AMDGPU: Try to unspill VGPRs after rewriting MFMAs to AGPR form (#154323)
After replacing VGPR MFMAs with the AGPR form, we've alleviated VGPR
pressure which may have triggered spills during allocation. Identify
these spill slots, and try to reassign them to newly freed VGPRs,
and replace the spill instructions with copies.
Fixes #154260
Commit: 9865f7ec2bb15f3d8aa25c7e9305393422597dc5
https://github.com/llvm/llvm-project/commit/9865f7ec2bb15f3d8aa25c7e9305393422597dc5
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in WinogradConv2D.cpp (NFC)
Commit: 30633f30894129919050f24fdd1f8f6bc46beae0
https://github.com/llvm/llvm-project/commit/30633f30894129919050f24fdd1f8f6bc46beae0
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang/include/clang/Frontend/CompilerInstance.h
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Interpreter/Interpreter.cpp
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/driver/cc1_main.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
M clang/unittests/CodeGen/TestCompiler.h
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
Log Message:
-----------
[clang] Initialize the file system explicitly (#158381)
This PR is a part of the effort to make the VFS used in the compiler
more explicit and consistent.
Instead of creating the VFS deep within the compiler (in
`CompilerInstance::createFileManager()`), clients are now required to
explicitly call `CompilerInstance::createVirtualFileSystem()` and
provide the base VFS from the outside.
This PR also helps in breaking up the dependency cycle where creating a
properly configured `DiagnosticsEngine` requires a properly configured
VFS, but creating properly configuring a VFS requires the
`DiagnosticsEngine`.
Both `CompilerInstance::create{FileManager,Diagnostics}()` now just use
the VFS already in `CompilerInstance` instead of taking one as a
parameter, making the VFS consistent across the instance sub-object.
Commit: 08a58b2cea3c11cb94b565e50a85de4d7b78fe65
https://github.com/llvm/llvm-project/commit/08a58b2cea3c11cb94b565e50a85de4d7b78fe65
Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/CodeGen/AMDGPU/xor3-i1-const.ll
A llvm/test/Transforms/InstCombine/redundant-fcmp.ll
Log Message:
-----------
[InstCombine] Optimize redundant floating point comparisons in `or`/`and` inst's (#158097)
Resolves #157371
We can eliminate one of the `fcmp` when we have two same `olt` or `ogt`
instructions matched in `or`/`and` simplification.
Commit: 3388d40684742e950b3c5d1d2dafe5a40695cfc1
https://github.com/llvm/llvm-project/commit/3388d40684742e950b3c5d1d2dafe5a40695cfc1
Author: quic-k <kushpal at qti.qualcomm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake
Log Message:
-----------
[cmake] Add cmake file for hexagon-builtins baremetal (#151500)
This will be used to build hexagon-builtins for baremetal.
Signed-off-by: Kushal Pal <kushpal at qti.qualcomm.com>
Commit: d2fbca8a85991019c061cc83f18d3030e843d0d7
https://github.com/llvm/llvm-project/commit/d2fbca8a85991019c061cc83f18d3030e843d0d7
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/test/Lower/HLFIR/eoshift.f90
Log Message:
-----------
[flang] Allow polymorphic type mismatch for hlfir.eoshift. (#158718)
When the ARRAY has polymorphic type, its element type may not match
the element type of BOUNDARY.
Fixes #158382.
Commit: 6aab826e2334fe454c5e2349d871f16d7d011a4c
https://github.com/llvm/llvm-project/commit/6aab826e2334fe454c5e2349d871f16d7d011a4c
Author: guan jian <148229859+rez5427 at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/AArch64/xor-min-max.ll
Log Message:
-----------
[DAGCombiner] add fold (xor (smin(x, C), C)) and fold (xor (smax(x, C), C)) (#155141)
Hi, I compared the following LLVM IR with GCC and Clang, and there is a small difference between the two. The LLVM IR is:
```
define i64 @test_smin_neg_one(i64 %a) {
%1 = tail call i64 @llvm.smin.i64(i64 %a, i64 -1)
%retval.0 = xor i64 %1, -1
ret i64 %retval.0
}
```
GCC generates:
```
cmp x0, 0
csinv x0, xzr, x0, ge
ret
```
Clang generates:
```
cmn x0, #1
csinv x8, x0, xzr, lt
mvn x0, x8
ret
```
Clang keeps flipping x0 through x8 unnecessarily.
So I added the following folds to DAGCombiner:
fold (xor (smax(x, C), C)) -> select (x > C), xor(x, C), 0
fold (xor (smin(x, C), C)) -> select (x < C), xor(x, C), 0
alive2: https://alive2.llvm.org/ce/z/gffoir
---------
Co-authored-by: Yui5427 <785369607 at qq.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: ee66d967db6b812ed82a14dda369a3cae79f6632
https://github.com/llvm/llvm-project/commit/ee66d967db6b812ed82a14dda369a3cae79f6632
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Inline a couple of trivial functions (NFC) (#159099)
Commit: 3ef066f8a369e1fe10f5408d535ce782fb39490f
https://github.com/llvm/llvm-project/commit/3ef066f8a369e1fe10f5408d535ce782fb39490f
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Change SmallSetVector to SetVector (NFC) (#159108)
SmallSetVector is too optimistic, there are usually more than 16 unique
decoders and predicates. Modernize `typedef` to `using` while here.
Commit: 341cdbc9703d3cdd151f897b63548387f0017f49
https://github.com/llvm/llvm-project/commit/341cdbc9703d3cdd151f897b63548387f0017f49
Author: Janek van Oirschot <janek.vanoirschot at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/imm.ll
Log Message:
-----------
[AMDGPU] Elide bitcast fold i64 imm to build_vector (#154115)
Elide bitcast combine to build_vector in case of i64 immediate that can
be materialized through 64b mov
Commit: f9f62ef4ae555a86878411e696b8b747851fc337
https://github.com/llvm/llvm-project/commit/f9f62ef4ae555a86878411e696b8b747851fc337
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/BasicAliasAnalysis.h
M llvm/include/llvm/Analysis/TypeBasedAliasAnalysis.h
M llvm/lib/Analysis/AliasAnalysis.cpp
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
A llvm/test/Transforms/InstCombine/may-alias-errno.ll
Log Message:
-----------
[AA] Refine ModRefInfo taking into account `errnomem` location
Ensure alias analyses mask out `errnomem` location, refining the
resulting modref info, when the given access/location does not
alias errno. This may occur either when TBAA proves there is no
alias with errno (e.g., float TBAA for the same root would be
disjoint with the int-only compatible TBAA node for errno); or
if the memory access size is larger than the integer size, or
when the underlying object is a potentially-escaping alloca.
Previous discussion: https://discourse.llvm.org/t/rfc-modelling-errno-memory-effects/82972.
Commit: 3eea01e73117c2b916930cd64c1acbcdc5ace44d
https://github.com/llvm/llvm-project/commit/3eea01e73117c2b916930cd64c1acbcdc5ace44d
Author: Damian Heaton <Damian.Heaton at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
A llvm/test/CodeGen/AArch64/sve2p1-dots-partial-reduction.ll
Log Message:
-----------
[AArch64] Add ISel support for partial reductions to use SVE2.1 udot/sdot (#158310)
This allows dot products with scalable 8xi16 vectors (and fixed-length
vectors which are converted into a scalable vector) accumulating into a
4xi32 vector to lower into a single instruction (`udot`/`sdot`), rather
than a sequence of `umlalb`s and `umlalt`s`.
Commit: 3938ce96ad97acd26f4a7610d5cd3b2dac796c29
https://github.com/llvm/llvm-project/commit/3938ce96ad97acd26f4a7610d5cd3b2dac796c29
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/Twine.h
Log Message:
-----------
[ADT] Update comments in Twine.h (NFC) (#158783)
Twine now stores integers by value, so this patch updates comments
accordingly.
Commit: b27bb09f6d02e750c4126aeffb7a2ecf0d6ab783
https://github.com/llvm/llvm-project/commit/b27bb09f6d02e750c4126aeffb7a2ecf0d6ab783
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/AST/TypeBase.h
Log Message:
-----------
[AST] Simplify TypeIsArrayType (NFC) (#158784)
This patch simplifies replaces TypeIsArrayType. If
std::is_same<ArrayType, ArrayType> is true, then
std::is_base_of<ArrayType, ArrayType> must also be true, so
std::is_base_of<ArrayType, ArrayType> alone is sufficient.
Commit: 096b8a8b89f3234972770e0581e059073d106b7c
https://github.com/llvm/llvm-project/commit/096b8a8b89f3234972770e0581e059073d106b7c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PackedVector.h
M llvm/unittests/ADT/PackedVectorTest.cpp
Log Message:
-----------
[ADT] Fix an indexing bug in PackedVector (#158785)
PackedVector is like std::vector<int> except that we can store small
elements (e.g. 2-bit elements) in a packed manner using a BitVector as
the underlying storage.
The problem is that for bit size 3 and beyond, the calculation of
indices into the underlying BitVector is not correct. For example,
around line 50, we see a "for" loop to retrieve an unsigned integer
value:
for (unsigned i = 0; i != BitNum-1; ++i)
val = T(val | ((Bits[(Idx << (BitNum-1)) + i] ? 1UL : 0UL) << i));
Suppose that BitNum is 4 (that is, 4-bit item). Here is the mapping
between the PackedVector index and the corresponding BitVector
indices.
Idx 0: 0, 1, 2, 3
Idx 1: 8, 9, 10, 11
Idx 2: 16, 17, 18, 19
That is, we use 4 bits out of every 8 bits. This is because the index
calculation uses "<<". The index should really be Idx * BitNum + i.
FWIW, all the methods in PackedVector consistently use the shift-based
index calculation, so the user would never encounter a bug except
possibly as excessive storage use.
This patch fixes the index calculation. Now, in size(), I didn't want
to do integer division:
return Bits.size() / BitNum;
so this patch adds a separate variable NumElements to keep track of
the number of elements.
The unit test checks for the expected size of the underlying
BitVector.
Commit: 99a0139e28f7c69583684efb1907451fc9d0b0bf
https://github.com/llvm/llvm-project/commit/99a0139e28f7c69583684efb1907451fc9d0b0bf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/AMDHSAKernelDescriptor.h
Log Message:
-----------
[Support] Remove offsetof in AMDHSAKernelDescriptor.h (#158786)
This patch removes offsetof. Note that we already include <cstddef>
and that <cstddef> defines offsetof.
Commit: 3fe05ba24fcaeeb0280e9c364d1b193aadbd2348
https://github.com/llvm/llvm-project/commit/3fe05ba24fcaeeb0280e9c364d1b193aadbd2348
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/docs/GarbageCollection.rst
Log Message:
-----------
[llvm] Proofread GarbageCollection.rst (#158787)
Commit: 0864965e54a2ae050898ca0a3bb1d07f8fabe954
https://github.com/llvm/llvm-project/commit/0864965e54a2ae050898ca0a3bb1d07f8fabe954
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Replace opcode mask with booleans (NFC) (#159113)
Extracted from #155889, which removes inclusion of `MCDecoderOps.h`.
Commit: c3fb2e1cee954338acb83955b157e0a2e82a4849
https://github.com/llvm/llvm-project/commit/c3fb2e1cee954338acb83955b157e0a2e82a4849
Author: yonghong-song <yhs at fb.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/BPF/AsmParser/BPFAsmParser.cpp
M llvm/lib/Target/BPF/BPFAsmPrinter.cpp
A llvm/lib/Target/BPF/BPFAsmPrinter.h
M llvm/lib/Target/BPF/BPFISelLowering.cpp
M llvm/lib/Target/BPF/BPFISelLowering.h
M llvm/lib/Target/BPF/BPFInstrInfo.cpp
M llvm/lib/Target/BPF/BPFInstrInfo.h
M llvm/lib/Target/BPF/BPFInstrInfo.td
M llvm/lib/Target/BPF/BPFMCInstLower.cpp
M llvm/lib/Target/BPF/BPFMCInstLower.h
M llvm/lib/Target/BPF/BPFSubtarget.cpp
M llvm/lib/Target/BPF/BPFSubtarget.h
A llvm/lib/Target/BPF/BPFTargetLoweringObjectFile.cpp
A llvm/lib/Target/BPF/BPFTargetLoweringObjectFile.h
M llvm/lib/Target/BPF/BPFTargetMachine.cpp
M llvm/lib/Target/BPF/CMakeLists.txt
A llvm/test/CodeGen/BPF/jump_table_blockaddr.ll
A llvm/test/CodeGen/BPF/jump_table_global_var.ll
A llvm/test/CodeGen/BPF/jump_table_switch_stmt.ll
Log Message:
-----------
[BPF] Support Jump Table (#149715)
Add jump table (switch statement and computed goto) support for BPF
backend.
A `gotox <reg>` insn is implemented and the `<reg>` holds the target
insn where the gotox will go.
For a switch statement like
```
...
switch (ctx->x) {
case 1: ret_user = 18; break;
case 20: ret_user = 6; break;
case 16: ret_user = 9; break;
case 6: ret_user = 16; break;
case 8: ret_user = 14; break;
case 30: ret_user = 2; break;
default: ret_user = 1; break;
}
...
```
and the final binary
```
The final binary:
4: 67 01 00 00 03 00 00 00 r1 <<= 0x3
5: 18 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r2 = 0x0 ll
0000000000000028: R_BPF_64_64 BPF.JT.0.0
7: 0f 12 00 00 00 00 00 00 r2 += r1
...
Symbol table:
4: 0000000000000000 240 OBJECT GLOBAL DEFAULT 4 BPF.JT.0.0
5: 0000000000000000 4 OBJECT GLOBAL DEFAULT 6 ret_user
6: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND bar
7: 00000000000000f0 256 OBJECT GLOBAL DEFAULT 4 BPF.JT.0.1
and
[ 4] .jumptables PROGBITS 0000000000000000 0001c8 0001f0 00 0 0 1
```
Note that for the above example, `-mllvm -bpf-min-jump-table-entries=5`
should be in compilation flags as the current default
bpf-min-jump-table-entries is 13. For example.
```
clang --target=bpf -mcpu=v4 -O2 -mllvm -bpf-min-jump-table-entries=5 -S -g test.c
```
For computed goto like
```
int foo(int a, int b) {
__label__ l1, l2, l3, l4;
void *jt1[] = {[0]=&&l1, [1]=&&l2};
void *jt2[] = {[0]=&&l3, [1]=&&l4};
int ret = 0;
goto *jt1[a % 2];
l1: ret += 1;
l2: ret += 3;
goto *jt2[b % 2];
l3: ret += 5;
l4: ret += 7;
return ret;
}
```
The final binary:
```
12: bf 23 20 00 00 00 00 00 r3 = (s32)r2
13: 67 03 00 00 03 00 00 00 r3 <<= 0x3
14: 18 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r2 = 0x0 ll
0000000000000070: R_BPF_64_64 BPF.JT.0.0
16: 0f 32 00 00 00 00 00 00 r2 += r3
17: bf 11 20 00 00 00 00 00 r1 = (s32)r1
18: 67 01 00 00 03 00 00 00 r1 <<= 0x3
19: 18 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r3 = 0x0 ll
0000000000000098: R_BPF_64_64 BPF.JT.0.1
21: 0f 13 00 00 00 00 00 00 r3 += r1
[ 4] .jumptables PROGBITS 0000000000000000 000160 000020 00 0 0 1
4: 0000000000000000 16 OBJECT GLOBAL DEFAULT 4 BPF.JT.0.0
5: 0000000000000010 16 OBJECT GLOBAL DEFAULT 4 BPF.JT.0.1
```
A more complicated test with both switch-statement triggered jump table
and compute gotos:
```
$ cat test3.c
struct simple_ctx {
int x;
int y;
int z;
};
int ret_user, ret_user2;
void bar(void);
int foo(struct simple_ctx *ctx, struct simple_ctx *ctx2, int a, int b)
{
__label__ l1, l2, l3, l4;
void *jt1[] = {[0]=&&l1, [1]=&&l2};
void *jt2[] = {[0]=&&l3, [1]=&&l4};
int ret = 0;
goto *jt1[a % 2];
l1: ret += 1;
l2: ret += 3;
goto *jt2[b % 2];
l3: ret += 5;
l4: ret += 7;
bar();
switch (ctx->x) {
case 1: ret_user = 18; break;
case 20: ret_user = 6; break;
case 16: ret_user = 9; break;
case 6: ret_user = 16; break;
case 8: ret_user = 14; break;
case 30: ret_user = 2; break;
default: ret_user = 1; break;
}
return ret;
}
```
Compile with
```
clang --target=bpf -mcpu=v4 -O2 -S test3.c
clang --target=bpf -mcpu=v4 -O2 -c test3.c
```
The binary:
```
/* For computed goto */
13: bf 42 20 00 00 00 00 00 r2 = (s32)r4
14: 67 02 00 00 03 00 00 00 r2 <<= 0x3
15: 18 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r1 = 0x0 ll
0000000000000078: R_BPF_64_64 BPF.JT.0.1
17: 0f 21 00 00 00 00 00 00 r1 += r2
18: bf 32 20 00 00 00 00 00 r2 = (s32)r3
19: 67 02 00 00 03 00 00 00 r2 <<= 0x3
20: 18 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r3 = 0x0 ll
00000000000000a0: R_BPF_64_64 BPF.JT.0.2
22: 0f 23 00 00 00 00 00 00 r3 += r2
/* For switch statement */
39: 67 01 00 00 03 00 00 00 r1 <<= 0x3
40: 18 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 r2 = 0x0 ll
0000000000000140: R_BPF_64_64 BPF.JT.0.0
42: 0f 12 00 00 00 00 00 00 r2 += r1
```
You can see jump table symbols are all different.
Commit: 1327288324c5084a6f09100fa78f2e084836a282
https://github.com/llvm/llvm-project/commit/1327288324c5084a6f09100fa78f2e084836a282
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
A llvm/test/CodeGen/Hexagon/vsubsat.ll
Log Message:
-----------
[Hexagon] Lowering saturating subtraction (#158726)
Saturating arithmetic can be expressed by llvm.uadd/usub.sat generic
intrinsics.
Commit: b22448c9ba90efb3a2a6a7bdb8ffeeee9fcabb62
https://github.com/llvm/llvm-project/commit/b22448c9ba90efb3a2a6a7bdb8ffeeee9fcabb62
Author: Lei Huang <lei at ca.ibm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsPowerPC.td
M llvm/lib/Target/PowerPC/PPCInstrFuture.td
A llvm/test/CodeGen/PowerPC/vsx-ldst-with-length.ll
Log Message:
-----------
[PowerPC] Add intrinsic definition for load and store with Right Length Left-justified (#148873)
Commit: e75e28ad3c9558c2cca32cd16cd5681b5219ff8d
https://github.com/llvm/llvm-project/commit/e75e28ad3c9558c2cca32cd16cd5681b5219ff8d
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/canonicalize-omp.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/test/Parser/OpenMP/bind-clause.f90
M flang/test/Parser/OpenMP/declare-reduction-multi.f90
M flang/test/Parser/OpenMP/declare-reduction-unparse.f90
M flang/test/Parser/OpenMP/do-tile-size.f90
M flang/test/Parser/OpenMP/doacross-clause.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/in-reduction-clause.f90
M flang/test/Parser/OpenMP/lastprivate-clause.f90
M flang/test/Parser/OpenMP/linear-clause.f90
M flang/test/Parser/OpenMP/loop-transformation-construct01.f90
M flang/test/Parser/OpenMP/loop-transformation-construct02.f90
M flang/test/Parser/OpenMP/loop-transformation-construct03.f90
M flang/test/Parser/OpenMP/masked-unparse.f90
M flang/test/Parser/OpenMP/master-unparse.f90
M flang/test/Parser/OpenMP/order-clause01.f90
M flang/test/Parser/OpenMP/ordered-depend.f90
M flang/test/Parser/OpenMP/reduction-modifier.f90
M flang/test/Parser/OpenMP/target-loop-unparse.f90
M flang/test/Parser/OpenMP/taskloop.f90
M flang/test/Parser/OpenMP/tile-size.f90
M flang/test/Parser/OpenMP/tile.f90
M flang/test/Parser/OpenMP/transparent-clause.f90
M flang/test/Parser/OpenMP/unroll-full.f90
M flang/test/Parser/OpenMP/unroll-heuristic.f90
M flang/test/Parser/OpenMP/unroll-partial.f90
M flang/test/Semantics/OpenMP/simd-only.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in Omp[Begin|End]LoopDi… (#159087)
…rective
This makes accessing directive components, such as directive name or the
list of clauses simpler and more uniform across different directives. It
also makes the parser simpler, since it reuses existing parsing
functionality.
The changes are scattered over a number of files, but they all share the
same nature:
- getting the begin/end directive from OpenMPLoopConstruct,
- getting the llvm::omp::Directive enum, and the source location,
- getting the clause list.
Commit: 0cf668889823e7dc526b0b3039c22452f61538f2
https://github.com/llvm/llvm-project/commit/0cf668889823e7dc526b0b3039c22452f61538f2
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/MC/MCContext.h
M llvm/lib/MC/MCContext.cpp
M llvm/lib/MC/MCParser/AsmParser.cpp
M llvm/lib/MC/MCParser/COFFMasmParser.cpp
M llvm/lib/MC/MCParser/ELFAsmParser.cpp
M llvm/lib/MC/MCParser/MCAsmParser.cpp
M llvm/lib/MC/MCParser/MCAsmParserExtension.cpp
M llvm/lib/MC/MCParser/MasmParser.cpp
M llvm/lib/MC/MCParser/WasmAsmParser.cpp
A llvm/test/CodeGen/X86/symbol-name.ll
M llvm/test/MC/ELF/cgprofile.s
M llvm/test/MC/ELF/symbol-names.s
Log Message:
-----------
MC: Better handle backslash-escaped symbols (#158780)
The MCContext::getOrCreateSymbol change in #138817 was a workaround.
With #158106, we can replace `getOrCreateSymbol` with `parseSymbol`, in
llvm/lib/MC/MCParser to handle backslash-escaped symbols.
Commit: 4be1099607c97b9f28cd30d56149e7c6428c216c
https://github.com/llvm/llvm-project/commit/4be1099607c97b9f28cd30d56149e7c6428c216c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/Transforms/CodeGenPrepare/unfold-pow2-test-vec.ll
Log Message:
-----------
[RISCV] Improve fixed vector handling in isCtpopFast. (#158380)
Previously we considered fixed vectors fast if Zvbb or Zbb is
enabled. Zbb only helps if the vector type will end up being
scalarized.
Commit: ba5ca37f40b82e287a3e0469fb0f0ea48b651aca
https://github.com/llvm/llvm-project/commit/ba5ca37f40b82e287a3e0469fb0f0ea48b651aca
Author: John Harrison <harjohn at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/source/Host/common/Socket.cpp
M lldb/tools/lldb-mcp/lldb-mcp.cpp
Log Message:
-----------
[lldb-mcp] Launch lldb on demand, if needed. (#158701)
Adding support for launching lldb with `-O protocol start MCP` if a
valid ~/.lldb/lldb-mcp-*.json` file is not found.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 371048ef220719a5aa89ba5cf05cc212e659af40
https://github.com/llvm/llvm-project/commit/371048ef220719a5aa89ba5cf05cc212e659af40
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/docs/Dialects/SPIR-V.md
Log Message:
-----------
[mlir][spirv][nfc] Update documentation to describe the testing strategy (#158962)
Commit: d0c0986387b333589951c29e2b5205d08c67c668
https://github.com/llvm/llvm-project/commit/d0c0986387b333589951c29e2b5205d08c67c668
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/test/python/CMakeLists.txt
Log Message:
-----------
[MLIR][Python] add `not` to `MLIR_PYTHON_TEST_DEPENDS` (#159124)
[lit complains if these aren't
found](https://github.com/llvm/llvm-project/blob/95fc948c0a07953ae9d0973854336e197e36d349/llvm/utils/lit/lit/llvm/config.py#L466-L482)
(even if they're not used by a test...) so make sure to include all of
them in `MLIR_PYTHON_TEST_DEPENDS`.
Commit: 55e6b3260dcb2b2131317516bf63cc81bd9f5bed
https://github.com/llvm/llvm-project/commit/55e6b3260dcb2b2131317516bf63cc81bd9f5bed
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/BPF/BUILD.gn
Log Message:
-----------
[gn build] Port c3fb2e1cee95
Commit: 7bc91f3580836c13cfcf511147585a5f2f00a7f5
https://github.com/llvm/llvm-project/commit/7bc91f3580836c13cfcf511147585a5f2f00a7f5
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/DTLTO/dtlto.c
M clang/test/Driver/DTLTO/ps5-dtlto.c
Log Message:
-----------
[DTLTO][TEST] XFAIL Clang driver tests for Multicall toolchains (#159129)
Previously I masked issues with Multicall + DTLTO (see #148908) due to
an incomplete understanding of how the Multicall toolchain works.
This patch reverts those incorrect changes and instead marks the
affected tests XFAIL when running under Multicall.
Issue #159125 tracks fixing DTLTO with Multicall.
Commit: 40f2da5c04042dcf6ae8dfc757d31a32da7f329e
https://github.com/llvm/llvm-project/commit/40f2da5c04042dcf6ae8dfc757d31a32da7f329e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVSubtarget.h
Log Message:
-----------
[RISCV] Add hasREV8Like helper to RISCVSubtarget. NFC (#158775)
Commit: f209d63b042e3b3455b67ecb08908135dd9d31fe
https://github.com/llvm/llvm-project/commit/f209d63b042e3b3455b67ecb08908135dd9d31fe
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/test/CodeGen/PowerPC/build-vector-tests.ll
M llvm/test/CodeGen/PowerPC/mma-intrinsics.ll
Log Message:
-----------
[SelectionDAGBuilder][PPC] Use getShiftAmountConstant. (#158400)
The PowerPC changes are caused by shifts created by different IR
operations being CSEd now. This allows consecutive loads to be turned
into vectors earlier. This has effects on the ordering of other combines
and legalizations. This leads to some improvements and some regressions.
Commit: 198ea2332584bf838a893522b870e1bf033ce7a4
https://github.com/llvm/llvm-project/commit/198ea2332584bf838a893522b870e1bf033ce7a4
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[CAS] Disable OnDiskCAS build on Solaris (#159122)
OnDiskCAS implementation receives error `No record locks available`
on Solaris. Disable building on Solaris for now to fix buildbot failure.
Commit: b8efe1c64746e832bc3313ec2f6a23f09f2d2dd9
https://github.com/llvm/llvm-project/commit/b8efe1c64746e832bc3313ec2f6a23f09f2d2dd9
Author: Vy Nguyen <vyng at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
[clang][nfc] Fix tests to avoid writing output to unreachable location (#159138)
Note: this was originally done in (#158698) but was reverted in the
pr/158844 (which re-applied the original rev)
Commit: b76dc2b9ba7d402d1c9909b87322f2b0008ce3a6
https://github.com/llvm/llvm-project/commit/b76dc2b9ba7d402d1c9909b87322f2b0008ce3a6
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M libc/src/__support/CPP/simd.h
M libc/src/__support/CPP/type_traits/is_unsigned.h
M libc/src/string/memory_utils/generic/inline_strlen.h
M libc/test/src/__support/CPP/simd_test.cpp
Log Message:
-----------
[libc] Clean up mask helpers after allowing implicit conversions (#158681)
Summary:
I landed a change in clang that allows integral vectors to implicitly
convert to boolean ones. This means I can simplify the interface and
remove the need to cast to bool on every use. Also do some other
cleanups of the traits.
Commit: 0648c5183f3202060862cd6cba8e6f2395052929
https://github.com/llvm/llvm-project/commit/0648c5183f3202060862cd6cba8e6f2395052929
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
M llvm/test/CodeGen/AMDGPU/branch-relax-no-terminators.mir
M llvm/test/CodeGen/AMDGPU/coalescer-early-clobber-subreg.mir
M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx10.mir
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx8.mir
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx9.mir
M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
M llvm/test/CodeGen/AMDGPU/rename-independent-subregs.mir
M llvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir
M llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-subreg-def-across-subreg-def.mir
M llvm/test/CodeGen/AMDGPU/subreg-undef-def-with-other-subreg-defs.mir
Log Message:
-----------
AMDGPU: Fix some broken regclass numbers in mir tests (#159102)
Commit: 9e9edb583400ffc647622445459d700d0ad61b3d
https://github.com/llvm/llvm-project/commit/9e9edb583400ffc647622445459d700d0ad61b3d
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CAS/OnDiskCommon.cpp
Log Message:
-----------
[CAS] Fix build for older macOS SDK (before 13.0) (#159133)
Fix a build failure and back-deployment problem for macOS before 13.0.
Commit: 3c4ab4fdefcbd34106163899d7e2914246328616
https://github.com/llvm/llvm-project/commit/3c4ab4fdefcbd34106163899d7e2914246328616
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaConvertIntegerTypeToSignless.cpp
M mlir/test/Dialect/Tosa/tosa-convert-integer-type-to-signless.mlir
Log Message:
-----------
[mlir][tosa] Handle unsigned constants in `TosaConvertIntegerTypeToSignless` (#156483)
This commit fixes handling of unsigned constant data in the
`TosaConvertIntegerTypeToSignless` pass. Previously, the type of the
"values" attribute would remain unsigned, which caused an error in the
const ops verifier:
```
error: 'tosa.const' op expected same attr/result element types
%input_zp = "tosa.const"() {values = dense<17> : tensor<1xui8>} : () -> tensor<1xui8>
^
note: see current operation: %0 = "tosa.const"() <{values = dense<17> : tensor<1xui8>}> : () -> tensor<1xi8>
```
Now the constant data in "values" is transformed to signless as well.
Commit: 181979822743ddaf4c197e1587c0c89b5f4240a4
https://github.com/llvm/llvm-project/commit/181979822743ddaf4c197e1587c0c89b5f4240a4
Author: Druzhkov Sergei <serzhdruzhok at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package.json
Log Message:
-----------
[lldb-dap] Add stdio redirection (#158609)
As far as I understand, lldb-dap does not currently support stdio
redirection. I have added support for this via a new field in the launch
configuration named `stdio`. It was inspired by the same named field in
[CodeLLDB](https://github.com/vadimcn/codelldb/blob/master/MANUAL.md#stdio-redirection).
Commit: f854009307d3f3750d3358510ef632571683acb5
https://github.com/llvm/llvm-project/commit/f854009307d3f3750d3358510ef632571683acb5
Author: Akhil Goel <akhil.goel at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
Log Message:
-----------
[mlir][arith][NFC] Minor Revisions to Comments (#158757)
This is a minor nitpick PR to fix a few comments.
Commit: 46fd8d0db2f7f7361823efae067edddb6acc237c
https://github.com/llvm/llvm-project/commit/46fd8d0db2f7f7361823efae067edddb6acc237c
Author: Amit Kumar Pandey <pandey.kumaramit2023 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M compiler-rt/lib/dfsan/dfsan.cpp
M compiler-rt/lib/fuzzer/FuzzerCorpus.h
M compiler-rt/lib/fuzzer/FuzzerDriver.cpp
M compiler-rt/lib/fuzzer/FuzzerLoop.cpp
M compiler-rt/lib/hwasan/hwasan_report.cpp
Log Message:
-----------
Reapply "[NFC] Fix CodeQL violations in compiler-rt. (#157793)" (#157913) (#159097)
Fix below buildbot failure.
```
/var/lib/buildbot/fuchsia-x86_64-linux/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:172:42: error: use of undeclared identifier 'uint'
172 | Printf("Flag: %s %u\n", Name, (uint)Val);
```
Replace uint with uint32_t cast.
This reverts commit 8062b166762b51f1c3a9168e7031babde3e330a8.
Commit: fd59fd563f342c8900b0d6ff5039741cb263b6ed
https://github.com/llvm/llvm-project/commit/fd59fd563f342c8900b0d6ff5039741cb263b6ed
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-inline-asm.ll
M llvm/test/CodeGen/AMDGPU/coalesce-copy-to-agpr-to-av-registers.mir
M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
M llvm/test/CodeGen/AMDGPU/inline-asm.i128.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-copy-from.mir
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-subreg-insert-extract.mir
M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-subreg-src2-chain.mir
M llvm/test/CodeGen/AMDGPU/spill-vector-superclass.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_isel.ll.expected
Log Message:
-----------
[AMDGPU] Add aperture classes to VS_64 (#158823)
Should not do anything.
Commit: 90d96b3e9c90cccefe1c1af75b57de1b8e248c42
https://github.com/llvm/llvm-project/commit/90d96b3e9c90cccefe1c1af75b57de1b8e248c42
Author: Druzhkov Sergei <serzhdruzhok at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[NFC][lldb-dap] Fix typo in invalidated event (#158338)
Fixed a typo in the `invalidated` event according to
[DAP](https://microsoft.github.io/debug-adapter-protocol/specification#Events_Invalidated)
specification. While the field is `frameId` elsewhere, it must be
`stackFrameId` in this event.
Commit: dd56becdbc31cce16973172f0a447207ddf67861
https://github.com/llvm/llvm-project/commit/dd56becdbc31cce16973172f0a447207ddf67861
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/CAS/MappedFileRegionArena.cpp
Log Message:
-----------
[CAS] Fix alignment error from MappedFileRegionArena (#159128)
Fix a bug that when an alignment error can happen when reading a slice
of file from existing MappedFileRegionArena.
Commit: e24f90190c772b6fdd915cd0a2e55cbd468c3024
https://github.com/llvm/llvm-project/commit/e24f90190c772b6fdd915cd0a2e55cbd468c3024
Author: Brad Smith <brad at comstyle.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/test/Driver/aarch64-features.c
Log Message:
-----------
[Driver] Enable outline atomics for FreeBSD/aarch64 (#156089)
Commit: f74583fbe8f4aed755a8c0882cb40cd629e0d598
https://github.com/llvm/llvm-project/commit/f74583fbe8f4aed755a8c0882cb40cd629e0d598
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M offload/plugins-nextgen/common/src/PluginInterface.cpp
Log Message:
-----------
[offload] Fix build with debug libomptarget (#159144)
Currently get this error
```
offload/plugins-nextgen/common/src/PluginInterface.cpp:859:63: error: member reference type 'StringRef' is not a pointer; did you mean to use '.'?
```
We pass the full image binary now so we can't really print anything
useful here.
Seems introduced in https://github.com/llvm/llvm-project/pull/158748.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Co-authored-by: Joseph Huber <huberjn at outlook.com>
Commit: 7779882b4d27c231fbadc718734d5fc44bb44629
https://github.com/llvm/llvm-project/commit/7779882b4d27c231fbadc718734d5fc44bb44629
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/ExactSIV.ll
Log Message:
-----------
[DA] Add option to run only SIV routines (#157084)
This patch introduces a new option, `da-run-siv-routines-only`, which
runs only the SIV family routines in the DA. This is useful for testing
(regression tests, not dependence tests) as it helps detect behavioral
changes in the SIV routines. Actually, regarding the test cases added in
#157085, fixing the incorrect result requires changes across multiple
functions (at a minimum, `exactSIVtest`, `gcdMIVtest` and
`symbolicRDIVtest`). It is difficult to address all of them at once.
This patch also generates the CHECK directives using the new option for
`ExactSIV.ll` as it is necessary for subsequent patches. However, I
believe it will also be useful for other `xxSIV.ll` tests. Notably, the
SIV family routines tend to be affected by other routines, as they are
typically invoked at the beginning of the overall analysis.
Commit: 95388b2f2370d02fbe0b3c191470714edc179e44
https://github.com/llvm/llvm-project/commit/95388b2f2370d02fbe0b3c191470714edc179e44
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/test/Dialect/OpenACC/invalid.mlir
Log Message:
-----------
[OpenACC] verify acc:DataOp operand not BlockArgument (#159148)
Similar to #158095, check that the operand of acc::DataOp is not a
BlockArgument before trying to get its defining operation so it will not
segfault and instead produce a clean error.
Commit: 027bccc4692923d0f1ba3d4d970071f747c2255c
https://github.com/llvm/llvm-project/commit/027bccc4692923d0f1ba3d4d970071f747c2255c
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/GlobalObject.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/unittests/IR/CMakeLists.txt
A llvm/unittests/IR/GlobalObjectTest.cpp
Log Message:
-----------
[NFCI][Globals] In GlobalObjects::setSectionPrefix, do conditional update if existing prefix is not equivalent to the new one. Returns whether prefix changed. (#158460)
Before this change, `setSectionPrefix` overwrites existing section
prefix with new one unconditionally.
After this change, `setSectionPrefix` checks for equivalences, updates
conditionally and returns whether an update happens.
Update the existing callers to make use of the return value. [PR
155337](https://github.com/llvm/llvm-project/pull/155337/files#diff-cc0c67ac89807f4453f0cfea9164944a4650cd6873a468a0f907e7158818eae9)
is a motivating use case whether the 'update' semantic is needed.
Commit: 32203e64455a722b89e1813e9d56870bb0a8dcf5
https://github.com/llvm/llvm-project/commit/32203e64455a722b89e1813e9d56870bb0a8dcf5
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/Analysis/DependenceAnalysis/ExactSIV.ll
Log Message:
-----------
[DA] Add test where ExactSIV misses dependency due to overflow (NFC) (#157085)
This patch adds test cases where DA fails to detect dependencies due to
overflow during analysis. For now, they are added to `ExactSIV.ll`, but
`symbolicRDIVtest` and `gcdMIVtest` also exhibit similar issues and will
need to be fixed as well.
Commit: e07af8cbbfa2bd67c655e44ce648ede91a6ef8c7
https://github.com/llvm/llvm-project/commit/e07af8cbbfa2bd67c655e44ce648ede91a6ef8c7
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Sema/HeuristicResolver.h
M clang/lib/Sema/HeuristicResolver.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
Log Message:
-----------
[clang][HeuristicResolver] Use HeuristicResolver to implement getApproximateType() in SemaCodeComplete (#156282)
This patch ports over the remaining functionality present in
SemaCodeComplete's getApproximateType() but not in HeuristicResolver,
into HeuristicResolver, and uses HeuristicResolver to reimplement
getApproximateType().
This has the effect of enhancing both code completion (which now
benefit from the full range of HeuristicResolver's capabilities), and
existing consumers of HeuristicResolver like clangd's go-to-definition
whose behaviour now has parity with code completion.
Fixes https://github.com/clangd/clangd/issues/2432
Commit: 81c55e67ad7d42afafd3952fa39af3aaaea6a9ba
https://github.com/llvm/llvm-project/commit/81c55e67ad7d42afafd3952fa39af3aaaea6a9ba
Author: Hiroshi Yamauchi <56735936+hjyamauchi at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Support/Windows/Program.inc
M llvm/unittests/Support/ProgramTest.cpp
Log Message:
-----------
Fix ExecuteAndWait with empty environment on Windows (#158719)
CreateProcessW requires that the environemnt block to be always double
null-terminated even with an empty environemnt.
https://learn.microsoft.com/en-us/windows/win32/procthread/environment-variables
The attached test fails this way without the fix.
C:\Users\hiroshi\upstream\llvm-project\llvm\unittests\Support\ProgramTest.cpp(697):
error: Value of: ExecutionFailed
Actual: true
Expected: false
Couldn't execute program
'C:\Users\hiroshi\upstream\llvm-project\build\unittests\Support\SupportTests.exe':
The parameter is incorrect. (0x57)
Commit: 26549262b3b7ad265d25586be4dca38d37d26069
https://github.com/llvm/llvm-project/commit/26549262b3b7ad265d25586be4dca38d37d26069
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/AST.cpp
M clang-tools-extra/clangd/AST.h
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExpandDeducedType.cpp
M clang-tools-extra/clangd/unittests/ASTTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExpandDeducedTypeTests.cpp
Log Message:
-----------
[clangd] Use HeuristicResolver to try to resolve dependent 'auto' (#156283)
Fixes https://github.com/clangd/clangd/issues/2431
Commit: b7bf9dd9ae20aacf2f82b14c08c7316a588ba90c
https://github.com/llvm/llvm-project/commit/b7bf9dd9ae20aacf2f82b14c08c7316a588ba90c
Author: Peter Rong <peterrong96 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/MC/MCDwarf.cpp
M llvm/test/DebugInfo/X86/DW_AT_LLVM_stmt_seq_sec_offset.ll
M llvm/test/MC/ELF/debug-loc-label.s
Log Message:
-----------
Reapply "[DebugLine] Correct debug line emittion" (#158343) (#158379)
This reverts commit aabf18d7184298566993e3141606cd79ff617d2d.
#157529 included a test that used clang, which doesn't exists in some
CI. #158343 reverts it.
This PR reapplies the original patch with the incorrect test removed.
### Context
#99710 introduced `.loc_label` so we can terminate a line sequence.
However, it did not advance PC properly. This is problematic for
1-instruction functions as it will have zero-length sequence. The test
checked in that PR shows the problem:
```
# CHECK-LINE-TABLE: Address Line Column File ISA Discriminator OpIndex Flags
# CHECK-LINE-TABLE-NEXT: ------------------ ------ ------ ------ --- ------------- ------- -------------
# CHECK-LINE-TABLE-NEXT: 0x00000028: 05 DW_LNS_set_column (1)
# CHECK-LINE-TABLE-NEXT: 0x0000002a: 00 DW_LNE_set_address (0x0000000000000000)
# CHECK-LINE-TABLE-NEXT: 0x00000035: 01 DW_LNS_copy
# CHECK-LINE-TABLE-NEXT: 0x0000000000000000 1 1 1 0 0 0 is_stmt
# CHECK-LINE-TABLE-NEXT: 0x00000036: 00 DW_LNE_end_sequence
# CHECK-LINE-TABLE-NEXT: 0x0000000000000000 1 1 1 0 0 0 is_stmt end_sequence
```
Both rows having PC 0x0 is incorrect, and parsers won't be able to parse
them. See more explanation why this is wrong in #154851.
### Design
This PR attempts to fix this by advancing the PC to the next available
Label, and advance to the end of the section if no Label is available.
### Implementation
- `emitDwarfLineEndEntry` will advance PC to the `CurrLabel`
- If `CurrLabel` is null, its probably a fake LineEntry we introduced in
#110192. In that case look for the next Label
- If still not label can be found, use `null` and
`emitDwarfLineEndEntry` is smart enough to advance PC to the end of the
section
- Rename `LastLabel` to `PrevLabel`, "last" can mean "previous" or
"final", this is ambigous.
- Updated the tests to emit a correct label.
### Note
This fix should render #154986 and #154851 obsolete, they were temporary
fixes and don't resolve the root cause.
Commit: 2d8782766cffd8f72884e794f8a4dafcb0971b97
https://github.com/llvm/llvm-project/commit/2d8782766cffd8f72884e794f8a4dafcb0971b97
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
Log Message:
-----------
[clangd] Show type hint for simple cases of dependent 'auto' (#156284)
Fixes https://github.com/clangd/clangd/issues/2275
Commit: 480ad3d86818f76ed80060ccdcff03b14d1557b1
https://github.com/llvm/llvm-project/commit/480ad3d86818f76ed80060ccdcff03b14d1557b1
Author: David Pagan <dave.pagan at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/OpenMPKinds.def
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Sema/SemaOpenMP.cpp
A clang/test/OpenMP/target_defaultmap_codegen_03.cpp
M clang/test/OpenMP/target_defaultmap_messages.cpp
Log Message:
-----------
[clang][OpenMP] 6.0: Add defaultmap implicit-behavior 'private' (#158712)
Per OpenMP 6.0 specification, section 7.9.9
Argument keywords, page 291, L17
Semantics, page 292, L15-16
The behavior of 'private' should be described in the same manner as that
of 'firstprivate'
15 ... If implicit-behavior is firstprivate, 16 the attribute is a
data-sharing attribute of firstprivate.
Relevant OpenMP 6.0 issues
defaultmap clause new implicit-behavior 'private' should be documented
https://github.com/OpenMP/spec/issues/4571
Issue 4571: Add missing sentence about private to defaultmap
https://github.com/OpenMP/spec/pull/4577
Testing:
Updated 'defaultmap' error message and codegen LIT tests to verify
behavior of 'private' in OpenMP 6.0.
Commit: 081fe1d517f13f204ff06f50cb68fb6508dba0d7
https://github.com/llvm/llvm-project/commit/081fe1d517f13f204ff06f50cb68fb6508dba0d7
Author: Kim Gräsman <kim.grasman at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/AST/Type.h
Log Message:
-----------
Add IWYU export pragma to Type.h (#159154)
According to 249167a8982afc3f55237baf1532c5c8ebd850b3, users are
expected to include Type.h, which acts as a facade header for
TypeBase.h.
Add an IWYU export pragma to help IWYU reason about the relationship.
Commit: 158eeb344b22eb29591aa7883c40b9a85c988565
https://github.com/llvm/llvm-project/commit/158eeb344b22eb29591aa7883c40b9a85c988565
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_err.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
Log Message:
-----------
[AMDGPU] Change `scale_sel` to be 4 bits (#157900)
The latest SP changes updated it to use `OP_SEL[0:3]` instead of
`OP_SEL[0:2]`.
Fixes SWDEV-554472.
Commit: 8122ccdca9dd38d15927ba35d2c13fec1160320e
https://github.com/llvm/llvm-project/commit/8122ccdca9dd38d15927ba35d2c13fec1160320e
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dereferenceable-declaration.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-call-abi-attribute-hints.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-sibling-call.ll
M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
M llvm/test/CodeGen/AMDGPU/call-defs-mode-register.ll
M llvm/test/CodeGen/AMDGPU/call-preserved-registers.ll
M llvm/test/CodeGen/AMDGPU/call-reqd-group-size.ll
M llvm/test/CodeGen/AMDGPU/call-waitcnt.ll
M llvm/test/CodeGen/AMDGPU/elf-notes.ll
M llvm/test/CodeGen/AMDGPU/gfx11-user-sgpr-init16-bug.ll
M llvm/test/CodeGen/AMDGPU/hsa.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.id.ll
M llvm/test/CodeGen/AMDGPU/mul24-pass-ordering.ll
M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
M llvm/test/CodeGen/AMDGPU/sibling-call.ll
M llvm/test/CodeGen/AMDGPU/spill-agpr.ll
M llvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-any.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-off.ll
M llvm/test/CodeGen/AMDGPU/tid-kd-xnack-on.ll
M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
Log Message:
-----------
[AMDGPU] Set TGID_EN_X/Y/Z when cluster ID intrinsics are used (#159120)
Hardware initializes a single value in ttmp9 which is either the
workgroup ID X or cluster ID X. Most of this patch is a refactoring to
use a single `PreloadedValue` enumerator for this value, instead of two
enumerators `WORKGROUP_ID_X` and `CLUSTER_ID_X` referring to the same
value.
This makes it simpler to have a single attribute
`amdgpu-no-workgroup-id-x` indicating that this value is not used, which
in turns sets the TGID_EN_X bit appropriately to tell the hardware
whether to initialize it.
All of the above applies to Y and Z similarly.
Fixes: LWPSCGFX13-568
Co-authored-by: Jay Foad <jay.foad at amd.com>
Commit: 20d4e5cb8c51dc191e06554dd0d0def84a9edd0a
https://github.com/llvm/llvm-project/commit/20d4e5cb8c51dc191e06554dd0d0def84a9edd0a
Author: Sam Clegg <sbc at chromium.org>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
R llvm/test/MC/WebAssembly/tag-section-decoding.ll
A llvm/test/MC/WebAssembly/tag-section-decoding.s
R llvm/test/MC/WebAssembly/tag-section.ll
A llvm/test/MC/WebAssembly/tag-section.s
Log Message:
-----------
[MC][WebAssembly] Convert tag section tests to assembly. NFC (#159141)
This avoids relying on higher level llvm internals such as the
well-known `__cpp_exception` tag but otherwise the tests remain
essentially unchanged.
Commit: 9277bcd1ab83fbfecfaaa5e15f3821808c5a6e38
https://github.com/llvm/llvm-project/commit/9277bcd1ab83fbfecfaaa5e15f3821808c5a6e38
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/GlobalObject.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/unittests/IR/CMakeLists.txt
R llvm/unittests/IR/GlobalObjectTest.cpp
Log Message:
-----------
Revert "[NFCI][Globals] In GlobalObjects::setSectionPrefix, do conditional update if existing prefix is not equivalent to the new one. Returns whether prefix changed." (#159159)
Reverts llvm/llvm-project#158460 due to buildbot failures
Commit: ca8c5ef26243830a8d18d0d6ef1b514ab28efa8d
https://github.com/llvm/llvm-project/commit/ca8c5ef26243830a8d18d0d6ef1b514ab28efa8d
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-identifier-naming in OpenACC.cpp (NFC)
Commit: c24b8e92fcc3c9a638b274cbd12d50d40f14c17e
https://github.com/llvm/llvm-project/commit/c24b8e92fcc3c9a638b274cbd12d50d40f14c17e
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/DTLTO/dtlto.c
M clang/test/Driver/DTLTO/ps5-dtlto.c
Log Message:
-----------
[DTLTO][TEST] Loosen Clang driver test regexes to fix buildbots (#159158)
Make the test regexes more permissive to fix buildbot failures caused by
the merge of PR #159129. This mirrors the earlier fix in PR #148908. We
retain cross-project-test coverage to verify that the path content is
correct.
A follow-up will update the tests to robustly check the Clang executable
filename, likely along the lines of PR #159151.
Short-term unbreak to keep the buildbots green without reverting a chain
of commits.
Commit: 984be7c5a7e34857577093c74dd9270227c0f887
https://github.com/llvm/llvm-project/commit/984be7c5a7e34857577093c74dd9270227c0f887
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[CMake] Disable more noisy GCC warnings (#159044)
This disables the following very noisy warning:
In file included from /usr/include/c++/13/string:51,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/streambuf:43,
from /usr/include/c++/13/bits/streambuf_iterator.h:35,
from /usr/include/c++/13/iterator:66,
from ../include/llvm/ADT/ADL.h:13,
from ../include/llvm/ADT/DenseMap.h:17,
from ../lib/Transforms/Vectorize/VPlanAnalysis.h:12,
from ../lib/Transforms/Vectorize/VPlan.h:27,
from ../lib/Transforms/Vectorize/LoopVectorizationPlanner.h:27, from
../lib/Transforms/Vectorize/VPlanConstruction.cpp:14:
In static member function ‘static _Up* std::__copy_move<_IsMove, true,
std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove =
true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II =
llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>&
llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T
= llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1071:25,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T,
N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*;
unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at
../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ forming offset
24 is out of the bounds [0, 24] of object ‘<anonymous>’ with type
‘llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::VPBlockBase,
false> >::RootsT’ {aka ‘llvm::SmallVector<llvm::VPBlockBase*, 1>’}
[-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from
../lib/Transforms/Vectorize/VPlanDominatorTree.h:23,
from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:17:
../include/llvm/Support/GenericDomTreeConstruction.h: In static member
function ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note:
‘<anonymous>’ declared here
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In static member function ‘static _Up* std::__copy_move<_IsMove, true,
std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove =
true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II =
llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>&
llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T
= llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1094:14,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T,
N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*;
unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at
../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ forming offset
24 is out of the bounds [0, 24] of object ‘<anonymous>’ with type
‘llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::VPBlockBase,
false> >::RootsT’ {aka ‘llvm::SmallVector<llvm::VPBlockBase*, 1>’}
[-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/llvm/Support/GenericDomTreeConstruction.h: In static member
function ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note:
‘<anonymous>’ declared here
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In a regular build, there's currently 14 such warning instances, but
since they are so large and noisy, they are very disruptive, and they
don't seem to be an actual issue in the LLVM code base.
With the -Warray-bounds warning disabled, the build instead ends up with
9 similar warnings of the kind -Wstringop-overread:
In file included from /usr/include/c++/13/string:51,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/streambuf:43,
from /usr/include/c++/13/bits/streambuf_iterator.h:35,
from /usr/include/c++/13/iterator:66,
from ../include/llvm/ADT/ADL.h:13,
from ../include/llvm/ADT/DenseMap.h:17,
from ../lib/Transforms/Vectorize/VPlanAnalysis.h:12,
from ../lib/Transforms/Vectorize/VPlan.h:27,
from ../lib/Transforms/Vectorize/LoopVectorizationPlanner.h:27, from
../lib/Transforms/Vectorize/VPlanConstruction.cpp:14:
In static member function ‘static _Up* std::__copy_move<_IsMove, true,
std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove =
true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II =
llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>&
llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T
= llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1071:25,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T,
N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*;
unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at
../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ reading
between 9 and 34359738360 bytes from a region of size 8
[-Wstringop-overread]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from
../lib/Transforms/Vectorize/VPlanDominatorTree.h:23,
from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:17:
../include/llvm/Support/GenericDomTreeConstruction.h: In static member
function ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: at
offset 16 into source object ‘<anonymous>’ of size 24
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In static member function ‘static _Up* std::__copy_move<_IsMove, true,
std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp =
llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove
= true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove =
true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II =
llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at
/usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>&
llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T
= llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1094:14,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T,
N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*;
unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at
../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void*
__builtin_memmove(void*, const void*, long unsigned int)’ reading
between 9 and 34359738352 bytes from a region of size 8
[-Wstringop-overread]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/llvm/Support/GenericDomTreeConstruction.h: In static member
function ‘static void
llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&,
BatchUpdatePtr) [with DomTreeT =
llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: at
offset 16 into source object ‘<anonymous>’ of size 24
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
Disable both of these, as they are extremely spammy and seem to alert on
things that aren't an issue in LLVM.
Commit: 0df46c4f5a130d1c9046494bfab903a6c415a810
https://github.com/llvm/llvm-project/commit/0df46c4f5a130d1c9046494bfab903a6c415a810
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
Revert "[CMake] Disable more noisy GCC warnings (#159044)"
This reverts commit 984be7c5a7e34857577093c74dd9270227c0f887.
Commit: 06aaa0e02fa008fe15d2b1873627e067a3c9db7d
https://github.com/llvm/llvm-project/commit/06aaa0e02fa008fe15d2b1873627e067a3c9db7d
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[CMake] Disable more noisy GCC warnings (#159044)
This disables the following very noisy warning:
In file included from /usr/include/c++/13/string:51,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/streambuf:43,
from /usr/include/c++/13/bits/streambuf_iterator.h:35,
from /usr/include/c++/13/iterator:66,
from ../include/llvm/ADT/ADL.h:13,
from ../include/llvm/ADT/DenseMap.h:17,
from ../lib/Transforms/Vectorize/VPlanAnalysis.h:12,
from ../lib/Transforms/Vectorize/VPlan.h:27,
from ../lib/Transforms/Vectorize/LoopVectorizationPlanner.h:27, from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:14:
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>& llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T = llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1071:25,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T, N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*; unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at ../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 24 is out of the bounds [0, 24] of object ‘<anonymous>’ with type ‘llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::VPBlockBase, false> >::RootsT’ {aka ‘llvm::SmallVector<llvm::VPBlockBase*, 1>’} [-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../lib/Transforms/Vectorize/VPlanDominatorTree.h:23,
from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:17:
../include/llvm/Support/GenericDomTreeConstruction.h: In static member function ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: ‘<anonymous>’ declared here
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>& llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T = llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1094:14,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T, N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*; unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at ../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ forming offset 24 is out of the bounds [0, 24] of object ‘<anonymous>’ with type ‘llvm::DomTreeBuilder::SemiNCAInfo<llvm::DominatorTreeBase<llvm::VPBlockBase, false> >::RootsT’ {aka ‘llvm::SmallVector<llvm::VPBlockBase*, 1>’} [-Warray-bounds=]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/llvm/Support/GenericDomTreeConstruction.h: In static member function ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: ‘<anonymous>’ declared here
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In a regular build, there's currently 14 such warning instances,
but since they are so large and noisy, they are very disruptive,
and they don't seem to be an actual issue in the LLVM code base.
With the -Warray-bounds warning disabled, the build instead ends
up with 9 similar warnings of the kind -Wstringop-overread:
In file included from /usr/include/c++/13/string:51,
from /usr/include/c++/13/bits/locale_classes.h:40,
from /usr/include/c++/13/bits/ios_base.h:41,
from /usr/include/c++/13/streambuf:43,
from /usr/include/c++/13/bits/streambuf_iterator.h:35,
from /usr/include/c++/13/iterator:66,
from ../include/llvm/ADT/ADL.h:13,
from ../include/llvm/ADT/DenseMap.h:17,
from ../lib/Transforms/Vectorize/VPlanAnalysis.h:12,
from ../lib/Transforms/Vectorize/VPlan.h:27,
from ../lib/Transforms/Vectorize/LoopVectorizationPlanner.h:27, from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:14:
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>& llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T = llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1071:25,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T, N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*; unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at ../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ reading between 9 and 34359738360 bytes from a region of size 8 [-Wstringop-overread]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../lib/Transforms/Vectorize/VPlanDominatorTree.h:23,
from ../lib/Transforms/Vectorize/VPlanConstruction.cpp:17:
../include/llvm/Support/GenericDomTreeConstruction.h: In static member function ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: at offset 16 into source object ‘<anonymous>’ of size 24
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
In static member function ‘static _Up* std::__copy_move<_IsMove, true, std::random_access_iterator_tag>::__copy_m(_Tp*, _Tp*, _Up*) [with _Tp = llvm::VPBlockBase*; _Up = llvm::VPBlockBase*; bool _IsMove = true]’,
inlined from ‘_OI std::__copy_move_a2(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:506:30,
inlined from ‘_OI std::__copy_move_a1(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:533:42,
inlined from ‘_OI std::__copy_move_a(_II, _II, _OI) [with bool _IsMove = true; _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:540:31,
inlined from ‘_OI std::move(_II, _II, _OI) [with _II = llvm::VPBlockBase**; _OI = llvm::VPBlockBase**]’ at /usr/include/c++/13/bits/stl_algobase.h:665:38,
inlined from ‘llvm::SmallVectorImpl<T>& llvm::SmallVectorImpl<T>::operator=(llvm::SmallVectorImpl<T>&&) [with T = llvm::VPBlockBase*]’ at ../include/llvm/ADT/SmallVector.h:1094:14,
inlined from ‘llvm::SmallVector<T, N>& llvm::SmallVector<T, N>::operator=(llvm::SmallVector<T, N>&&) [with T = llvm::VPBlockBase*; unsigned int N = 1]’ at ../include/llvm/ADT/SmallVector.h:1259:36,
inlined from ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’ at ../include/llvm/Support/GenericDomTreeConstruction.h:578:14:
/usr/include/c++/13/bits/stl_algobase.h:437:30: warning: ‘void* __builtin_memmove(void*, const void*, long unsigned int)’ reading between 9 and 34359738352 bytes from a region of size 8 [-Wstringop-overread]
437 | __builtin_memmove(__result, __first, sizeof(_Tp) * _Num);
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/llvm/Support/GenericDomTreeConstruction.h: In static member function ‘static void llvm::DomTreeBuilder::SemiNCAInfo<DomTreeT>::CalculateFromScratch(DomTreeT&, BatchUpdatePtr) [with DomTreeT = llvm::DominatorTreeBase<llvm::VPBlockBase, false>]’:
../include/llvm/Support/GenericDomTreeConstruction.h:578:25: note: at offset 16 into source object ‘<anonymous>’ of size 24
578 | DT.Roots = FindRoots(DT, PostViewBUI);
| ~~~~~~~~~^~~~~~~~~~~~~~~~~
Disable both of these, as they are extremely spammy and seem to
alert on things that aren't an issue in LLVM.
Commit: f15fbd1e9e90f0d639d7283c64ee08f9cd2d0e31
https://github.com/llvm/llvm-project/commit/f15fbd1e9e90f0d639d7283c64ee08f9cd2d0e31
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/vk_binding_attr.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
Log Message:
-----------
[HLSL] Use static create methods to initialize individual resources (#156544)
Use static methods `__createFromBinding` and `__createFromImplicitBinding` to initialize individual resources in Sema
HLSL instead of calling resource constructor with binding information per proposal update https://github.com/llvm/wg-hlsl/pull/336.
Initialization of resources in arrays will be updated in a separate change because that happens in the codegen layer.
Test updates include the use of the `llvm-cxxfilt` tool which takes care of demangling of function names for a more readable test baseline.
Commit: 8b3c91c4fb1b8efaccb71894684e4fb16b0e8945
https://github.com/llvm/llvm-project/commit/8b3c91c4fb1b8efaccb71894684e4fb16b0e8945
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/GlobalObject.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/unittests/IR/CMakeLists.txt
A llvm/unittests/IR/GlobalObjectTest.cpp
Log Message:
-----------
Re-apply "[NFCI][Globals] In GlobalObjects::setSectionPrefix, do conditional update if existing prefix is not equivalent to the new one. Returns whether prefix changed." (#159161)
This is a reland of https://github.com/llvm/llvm-project/pull/158460
Test failures are gone once I undo the changes in codegenprepare.
Commit: 4a094095a42d43ba8f7326efa3e9fdc9f03bc467
https://github.com/llvm/llvm-project/commit/4a094095a42d43ba8f7326efa3e9fdc9f03bc467
Author: Alan Li <me at alanli.org>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
A mlir/test/Dialect/Vector/flatten-memref-and-emulate-narrow-types.mlir
M mlir/test/lib/Dialect/MemRef/TestEmulateNarrowType.cpp
Log Message:
-----------
[MLIR] Make 1-D memref flattening a prerequisite for vector narrow type emulation (#157771)
Addresses: https://github.com/llvm/llvm-project/issues/115653
We already have utilities to flatten memrefs into 1-D. This change makes
memref flattening a prerequisite for vector narrow type emulation,
ensuring that emulation patterns only need to handle 1-D scenarios.
Commit: f562e2a6f5b362f0deabd0234dfdeb702c9b2d5e
https://github.com/llvm/llvm-project/commit/f562e2a6f5b362f0deabd0234dfdeb702c9b2d5e
Author: David Green <david.green at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/Analysis/CostModel/ARM/reduce-add.ll
M llvm/test/Analysis/CostModel/ARM/reduce-and.ll
M llvm/test/Analysis/CostModel/ARM/reduce-bit.ll
M llvm/test/Analysis/CostModel/ARM/reduce-fminmax.ll
M llvm/test/Analysis/CostModel/ARM/reduce-fp.ll
M llvm/test/Analysis/CostModel/ARM/reduce-or.ll
M llvm/test/Analysis/CostModel/ARM/reduce-smax.ll
M llvm/test/Analysis/CostModel/ARM/reduce-smin.ll
M llvm/test/Analysis/CostModel/ARM/reduce-umax.ll
M llvm/test/Analysis/CostModel/ARM/reduce-umin.ll
Log Message:
-----------
[ARM] Update a number of reduction tests to use -cost-kind=all. NFC
Commit: ec7a5b4028d192bf1f674554ffd2cfab5ae31412
https://github.com/llvm/llvm-project/commit/ec7a5b4028d192bf1f674554ffd2cfab5ae31412
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/include/llvm/Option/ArgList.h
Log Message:
-----------
[Option] Mark getLastArg(NoClaim) as noinline. (#157163)
After https://github.com/llvm/llvm-project/pull/156730,
getLastArg(NoClaim) are now just below the inlining threshold and
inlining them causes +0.44% code size increase for Clang and a
corresponding compile-time increase without helping compile-time.
Mark them as noinline to recover the original codesize.
http://llvm-compile-time-tracker.com/compare.php?from=a271d07488a85ce677674bbe8101b10efff58c95&to=3b7b312476da2a2b1fd44815532edf9987da337e&stat=instructions:u
PR: https://github.com/llvm/llvm-project/pull/157163
Commit: a3762fb2405475c46c18a647f18d342f5e2332e3
https://github.com/llvm/llvm-project/commit/a3762fb2405475c46c18a647f18d342f5e2332e3
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M llvm/lib/TargetParser/TargetParser.cpp
Log Message:
-----------
[AMDGPU] Add missing bf16-pk-insts feature to gfx1250 (#159167)
Commit: 0021a6b78cac45604416aef7c28436e83c9ce09e
https://github.com/llvm/llvm-project/commit/0021a6b78cac45604416aef7c28436e83c9ce09e
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/XeVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/XeVMDialect.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/LLVMIR/xevm.mlir
Log Message:
-----------
[MLIR][XeVM] Add xevm blockload and blockstore op definition. (#158118)
Add op definition for subgroup block load and store ops:
xevm.blockload and xevm.blockstore
links to related specs:
cl_intel_subgroup: https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_subgroups.html#_add_a_new_section_6_13_x_sub_group_read_and_write_functions
cl_intel_subgroup_local_block_io:
https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_subgroup_local_block_io.html
SPV_INTEL_subgroups:
https://github.khronos.org/SPIRV-Registry/extensions/INTEL/SPV_INTEL_subgroups.html
Commit: 0ed9a4fb86aeaf24b8a8290d00432095ce0b5d64
https://github.com/llvm/llvm-project/commit/0ed9a4fb86aeaf24b8a8290d00432095ce0b5d64
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 8b3c91c4fb1b
Commit: 973f26a2b42c8a81471f5e3da3549f1db3b1ffb2
https://github.com/llvm/llvm-project/commit/973f26a2b42c8a81471f5e3da3549f1db3b1ffb2
Author: Théo Degioanni <theo.degioanni.llvm.deluge062 at simplelogin.fr>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[GitHub] [NFC] Add moxinilian to IRDL CODEOWNERS (#159135)
This is so I get notified when an IRDL file is updated.
Commit: 22625538cb13df55cc2ff71831f55b8042f9a26c
https://github.com/llvm/llvm-project/commit/22625538cb13df55cc2ff71831f55b8042f9a26c
Author: David Green <david.green at arm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/test/Analysis/CostModel/ARM/abs.ll
Log Message:
-----------
[ARM] Add a quick abs scalar costmodel test. NFC
Commit: 66524ee7d0fd0f932924f1927459d68d6375fdc3
https://github.com/llvm/llvm-project/commit/66524ee7d0fd0f932924f1927459d68d6375fdc3
Author: Tulio Magno Quites Machado Filho <tuliom at redhat.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M openmp/docs/SupportAndFAQ.rst
Log Message:
-----------
[OpenMP] Document how to specify flags to device libraries (#159053)
Add an explanation on how to use RUNTIMES_<triple>_CMAKE_CXX_FLAGS in
order to specify different compiler flags for OpenMP device libraries.
Commit: 59e43fe5d8588d4b77b2ebd5683e6206428743c9
https://github.com/llvm/llvm-project/commit/59e43fe5d8588d4b77b2ebd5683e6206428743c9
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/libc_configure_options.bzl
Log Message:
-----------
Enable string-length wide-reads by default in bazel. (#159177)
Commit: 4ab8dabc252f802134bfea6193f9a274f0bdc143
https://github.com/llvm/llvm-project/commit/4ab8dabc252f802134bfea6193f9a274f0bdc143
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPULowerIntrinsics.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
M llvm/lib/Target/AMDGPU/SIDefines.h
A llvm/test/CodeGen/AMDGPU/lower-intrinsics-cluster-barrier.ll
Log Message:
-----------
[AMDGPU] Add s_cluster_barrier on gfx1250 (#159175)
Commit: 0e5c32bd6d305f417d1b4fc023616711206eccc4
https://github.com/llvm/llvm-project/commit/0e5c32bd6d305f417d1b4fc023616711206eccc4
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
M mlir/test/Dialect/Vector/vector-unroll-options.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[MLIR][Vector] Add unrolling pattern for vector StepOp (#157752)
This PR adds unrolling pattern for vector.step op to VectorUnroll
transform.
Commit: 7c861bcedf61607b6c087380ac711eb7ff918ca6
https://github.com/llvm/llvm-project/commit/7c861bcedf61607b6c087380ac711eb7ff918ca6
Author: Hiroshi Yamauchi <56735936+hjyamauchi at users.noreply.github.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Support/Windows/Program.inc
Log Message:
-----------
Fix comment from https://github.com/llvm/llvm-project/pull/158719 (#159157)
Commit: 9855d546a4bfc607631d0e2aa5bae366d9483351
https://github.com/llvm/llvm-project/commit/9855d546a4bfc607631d0e2aa5bae366d9483351
Author: cmtice <cmtice at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M lldb/docs/dil-expr-lang.ebnf
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
M lldb/include/lldb/ValueObject/DILParser.h
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/frame/var-dil/expr/Literals/TestFrameVarDILLiterals.py
Log Message:
-----------
[LLDB] Add boolean literals to DIL. (#157992)
This adds the ability to recognize (and create ValueObjects for) boolean
literals ("true", "false") to DIL. This is a preliminary step to adding
type casting (and also for the ternary op).
Commit: e87e028847638b1d405a92d818c67355e916f566
https://github.com/llvm/llvm-project/commit/e87e028847638b1d405a92d818c67355e916f566
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/resources/res-array-global-dyn-index.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-multi-dim.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global.hlsl
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
Log Message:
-----------
[HLSL] Use static create methods to initialize resources in arrays (#157005)
Use static methods `__createFromBinding` and `__createFromImplicitBinding` to initialize resources in resource arrays
instead of calling resource constructors with binding information, per proposal update https://github.com/llvm/wg-hlsl/pull/336.
Test updates include the use of the `llvm-cxxfilt` tool which takes care of demangling of function names for a more readable test baseline.
Commit: 82acc31fd4b26723b61dae76da120c0c649d0b97
https://github.com/llvm/llvm-project/commit/82acc31fd4b26723b61dae76da120c0c649d0b97
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/MC/MCDecoderOps.h
M llvm/test/TableGen/DecoderEmitter/additional-encoding.td
M llvm/test/TableGen/DecoderEmitter/trydecode-emission.td
M llvm/test/TableGen/DecoderEmitter/trydecode-emission2.td
M llvm/test/TableGen/DecoderEmitter/trydecode-emission3.td
M llvm/test/TableGen/DecoderEmitter/trydecode-emission4.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Merge OPC_Decode with OPC_TryDecode (#159178)
OPC_Decode is a specialized OPC_TryDecode. The difference between them
is that OPC_TryDecode performs a "completeness check", while OPC_Decode
asserts that the check passes.
The check is just a boolean test, which is nothing compared to the
complexity of the decoding process, so there is no point in having a
special opcode that optimizes the check.
Commit: 87bceae3fc64359c5a6ca362b466f8e938f4986c
https://github.com/llvm/llvm-project/commit/87bceae3fc64359c5a6ca362b466f8e938f4986c
Author: Vy Nguyen <vyng at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Rewriter/objc-string-concat-1.m
Log Message:
-----------
[clang][nfc]Disable warning triggered in tests (#159216)
Commit: 7bdd88c1e3a70d8213f8bc68403fbd844f11b00c
https://github.com/llvm/llvm-project/commit/7bdd88c1e3a70d8213f8bc68403fbd844f11b00c
Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
A mlir/lib/Dialect/Vector/Transforms/LowerVectorShuffle.cpp
A mlir/test/Dialect/Vector/vector-shuffle-lowering.mlir
M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
Log Message:
-----------
[mlir][Vector] Add patterns to lower `vector.shuffle` (#157611)
This PR adds patterns to lower `vector.shuffle` with inputs with
different vector sizes more efficiently. The current LLVM lowering for
these cases degenerates to a sequence of `vector.extract` and
`vector.insert` operations. With this PR, the smaller input is promoted
to larger vector size by introducing an extra `vector.shuffle`.
Commit: 96ce9f9d646efbba6aa52555004ac7ffe269b799
https://github.com/llvm/llvm-project/commit/96ce9f9d646efbba6aa52555004ac7ffe269b799
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-control-flow.ll
Log Message:
-----------
[AMDGPU] Prevent re-visits in LowerBufferFatPointers (#159168)
Fixes https://github.com/iree-org/iree/issues/22001
The visitor in SplitPtrStructs would re-visit instructions if an
instruction earlier in program order caused a recursive visit() call via
getPtrParts(). This would cause instructions to be processed multiple
times.
As a consequence of this, PHI nodes could be added to the Conditionals
array multiple times, which would to a conditinoal that was already
simplified being processed multiple times. After the code moved to
InstSimplifyFolder, this re-processing, combined with more agressive
simplifications, would lead to an attempt to replace an instruction with
itself, causing an assertion failure and crash.
This commit resolves the issue and adds the reduced form of the crashing
input as a test.
Commit: 799b80d47abe27d3dbf6ae19cda426021c90d045
https://github.com/llvm/llvm-project/commit/799b80d47abe27d3dbf6ae19cda426021c90d045
Author: hev <wangrui at loongson.cn>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/lasx/build-vector.ll
M llvm/test/CodeGen/LoongArch/lsx/build-vector.ll
Log Message:
-----------
[LoongArch] Fix instruction selection failure for BUILD_VECTOR on LA32 (#158788)
Fixes #158625
Commit: cbd99c55a343096d74ecb2fb0825aa54350210cb
https://github.com/llvm/llvm-project/commit/cbd99c55a343096d74ecb2fb0825aa54350210cb
Author: Luo, Yuanke <lyk_03 at hotmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/R600Packetizer.cpp
A llvm/test/TableGen/DFAPacketizer.td
M llvm/utils/TableGen/DFAPacketizerEmitter.cpp
Log Message:
-----------
[TableGen] Add mapping from processor ID to resource index for packetizer (#158182)
Tablegen would generate code to access TargetResourceIndices with
processor ID.
The TargetProcResourceIndexStart[] array is generated for each processor
which has itineraries. The processor which doesn't has itineraries is excluded
from the array. When a target has mixed processors, the processor ID may
exceed the array size and cause the error.
This patch is to generate a table mapping processor with itineraries to
resource index, so that scheduler can get the correct resource index with
processor ID.
Commit: 046d6a39983a9a4ea97343167c92cf8a0a6ff325
https://github.com/llvm/llvm-project/commit/046d6a39983a9a4ea97343167c92cf8a0a6ff325
Author: agozillon <Andrew.Gozillon at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
M flang/test/Fir/convert-to-llvm.fir
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[Flang][OpenMP] Additional global address space modifications for device (#119585)
A prior PR added a portion of the global address space modifications
required for declare target to, this PR seeks to add
a small amount more leftover from that PR.
The intent is to allow for more correct IR that the backends (in
particular AMDGPU) can treat more aptly for optimisations and code
correctness
1/3 required PRs to enable declare target to mapping, should look at PR
3/3 to check for full green passes (this one will fail a number due to
some dependencies).
Co-authored-by: Raghu Maddhipatla raghu.maddhipatla at amd.com
Commit: 6b07b05daad59141546b0b4a6ce7887f9660cf96
https://github.com/llvm/llvm-project/commit/6b07b05daad59141546b0b4a6ce7887f9660cf96
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-mca/llvm-mca.cpp
Log Message:
-----------
llvm-mca: Remove unnecessary reconstruction of Triple (#159213)
Commit: 35d6ee63ae0db05c1e1ee2f21a19f5270b24136d
https://github.com/llvm/llvm-project/commit/35d6ee63ae0db05c1e1ee2f21a19f5270b24136d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-mca/llvm-mca.cpp
Log Message:
-----------
llvm-mca: Error on MCSubtargetInfo construction failure (#159215)
Replace assert with a handled error. The same should probably
be done for all of the MC constructors.
Commit: 049310353ed37d98749fbb060273618230a42787
https://github.com/llvm/llvm-project/commit/049310353ed37d98749fbb060273618230a42787
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
NFC: Use descriptive FileCheck prefixes for exec/input-charset
Fixes incorrect use of `INPUT-CHARSET` for `exec-charset` test, etc.
Commit: 2cc8d27b41ef055df71b8e4ffa4c34f031b02dee
https://github.com/llvm/llvm-project/commit/2cc8d27b41ef055df71b8e4ffa4c34f031b02dee
Author: Tomás Longeri <tlongeri at google.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Fix bazel build after 4a09409 (#159217)
Commit: d05b7f1bb3e16ce37c1d17cfb170440e09244ce1
https://github.com/llvm/llvm-project/commit/d05b7f1bb3e16ce37c1d17cfb170440e09244ce1
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/clang-tidy-config.h.cmake
A clang-tools-extra/clang-tidy/custom/CMakeLists.txt
A clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.h
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/incorrect-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/append-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/empty-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/override-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/root-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
Log Message:
-----------
[clang-tidy] support query based custom check (#131804)
## summary
### Design for Compatibility
For new field design
1. we must make sure the required fields do not change in quiet long
time.
2. we should tolerant the unknown optional field (do not exist now) in
the future.
For large project integration (3rd party)
1. For config itself, since we can tolerant the unknown optional fields
and required fields should not change, the user can decide whether to
use custom check from third-party.
2.For clang-query, if there are some break change, since the query will
be parsed at check time, the user can disable the check and it will not
damage the whole clang-tidy
----
Inherit from #123734
RFC:
https://discourse.llvm.org/t/support-query-based-clang-tidy-external-check/85331
this patch introduce query based custom check by `CustomChecks` options.
The major improvement compared with #123734:
1. don't need to define config yaml file in command line
4. all behavior including `InheritFromParantConfig` is same as other
config.
6. change configuration schema from KV structured to List structured to
make extend new function easier.
7. Split bind string and diag message to two field to give more freedom
to design query.
example:
```yaml
Checks: -*,custom-call-main-function
CustomChecks:
- Name: call-main-function
Query: |
match callExpr(
callee(
functionDecl(isMain()).bind("fn")
)
).bind("callee")
Diagnostic:
- BindName: fn
Message: main function.
Level: Note
- BindName: callee
Message: call to main function.
Level: Warning
```
```c++
int main(); // note: main function.
void bar() {
main(); // warning: call to main function. [custom-call-main-function]
}
```
---
To make this PR don't do too much things that hard to review, here are
some possible features not included in this PR
- support language
- support traverse
- easier used template string in diagnostics message
---------
Co-authored-by: DeNiCoN <denicon1234 at gmail.com>
Co-authored-by: Baranov Victor <bar.victor.2002 at gmail.com>
Commit: f7f7abcde48fe1bcf6eaecd06bf2946bdaaf200d
https://github.com/llvm/llvm-project/commit/f7f7abcde48fe1bcf6eaecd06bf2946bdaaf200d
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/propagate-amdgpu-cluster-dims.ll
Log Message:
-----------
[NFC][AMDGPU] Add a missing test case about cluster dims (#159179)
Commit: 7dc7d0e1294cd29fb13b53aaca3f97c266bcbd3d
https://github.com/llvm/llvm-project/commit/7dc7d0e1294cd29fb13b53aaca3f97c266bcbd3d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.cpp
Log Message:
-----------
AMDGPU: Remove subtarget feature hacking in AsmParser (#159227)
The wavesize hacking part was already done in
createAMDGPUMCSubtargetInfo, and we can move the default
target hack there too.
Commit: a57c583861d209f440ffa937a29979e116b4716e
https://github.com/llvm/llvm-project/commit/a57c583861d209f440ffa937a29979e116b4716e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-ml/llvm-ml.cpp
Log Message:
-----------
llvm-ml: Error on MCSubtargetInfo construction failure (#159221)
Replace assert with an error.
Commit: a90a7efc59f816fe0e7ad2a437f8693393432237
https://github.com/llvm/llvm-project/commit/a90a7efc59f816fe0e7ad2a437f8693393432237
Author: Hubert Tong <hstong at ca.ibm.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
Revert "NFC: Use descriptive FileCheck prefixes for exec/input-charset"
This reverts commit 049310353ed37d98749fbb060273618230a42787.
Commit: ee9348002ae065e208c1d4ce487d13c34ae53f86
https://github.com/llvm/llvm-project/commit/ee9348002ae065e208c1d4ce487d13c34ae53f86
Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M clang/test/Driver/clang_f_opts.c
Log Message:
-----------
NFC: Use descriptive FileCheck prefixes for exec/input-charset
Fixes incorrect use of `INPUT-CHARSET` for `exec-charset` test, etc.
Commit: ef45c9756ad571e5dda3558b3fe6272237b83c26
https://github.com/llvm/llvm-project/commit/ef45c9756ad571e5dda3558b3fe6272237b83c26
Author: Weibo He <NewSigma at 163.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/test/CodeGenCoroutines/coro-builtins.c
M clang/test/CodeGenCoroutines/coro-eh-cleanup.cpp
M clang/test/CodeGenCoroutines/coro-lambda.cpp
M clang/test/CodeGenCoroutines/coro-params.cpp
M llvm/docs/Coroutines.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
M llvm/lib/Transforms/Coroutines/CoroCloner.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/test/Analysis/GlobalsModRef/nonescaping-noalias.ll
M llvm/test/Assembler/auto_upgrade_intrinsics.ll
M llvm/test/Instrumentation/AddressSanitizer/coro-byval-param.ll
M llvm/test/Instrumentation/HWAddressSanitizer/coro-byval-param.ll
M llvm/test/Transforms/Coroutines/ArgAddr.ll
M llvm/test/Transforms/Coroutines/coro-align16.ll
M llvm/test/Transforms/Coroutines/coro-align32.ll
M llvm/test/Transforms/Coroutines/coro-align64-02.ll
M llvm/test/Transforms/Coroutines/coro-align64.ll
M llvm/test/Transforms/Coroutines/coro-align8-02.ll
M llvm/test/Transforms/Coroutines/coro-align8.ll
M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
M llvm/test/Transforms/Coroutines/coro-alloca-01.ll
M llvm/test/Transforms/Coroutines/coro-alloca-02.ll
M llvm/test/Transforms/Coroutines/coro-alloca-03.ll
M llvm/test/Transforms/Coroutines/coro-alloca-04.ll
M llvm/test/Transforms/Coroutines/coro-alloca-05.ll
M llvm/test/Transforms/Coroutines/coro-alloca-06.ll
M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
M llvm/test/Transforms/Coroutines/coro-alloca-08.ll
M llvm/test/Transforms/Coroutines/coro-alloca-09.ll
M llvm/test/Transforms/Coroutines/coro-alloca-loop-carried-address.ll
M llvm/test/Transforms/Coroutines/coro-alloca-outside-frame.ll
M llvm/test/Transforms/Coroutines/coro-alloca-with-addrspace.ll
M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-infinite-loop-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-start-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-coro-id-async-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-declaration.ll
M llvm/test/Transforms/Coroutines/coro-async-dyn-align.ll
M llvm/test/Transforms/Coroutines/coro-async-end-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-no-cse-swift-async-context-addr.ll
M llvm/test/Transforms/Coroutines/coro-async-nomerge.ll
M llvm/test/Transforms/Coroutines/coro-async-phi.ll
M llvm/test/Transforms/Coroutines/coro-async.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
M llvm/test/Transforms/Coroutines/coro-byval-param.ll
M llvm/test/Transforms/Coroutines/coro-catchswitch-cleanuppad.ll
M llvm/test/Transforms/Coroutines/coro-catchswitch.ll
M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
M llvm/test/Transforms/Coroutines/coro-debug.ll
M llvm/test/Transforms/Coroutines/coro-early-twice.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-00.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-01.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-02.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-03.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-04.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-05.ll
M llvm/test/Transforms/Coroutines/coro-frame-unreachable.ll
M llvm/test/Transforms/Coroutines/coro-frame.ll
M llvm/test/Transforms/Coroutines/coro-lifetime-end.ll
M llvm/test/Transforms/Coroutines/coro-materialize.ll
M llvm/test/Transforms/Coroutines/coro-noalias-param.ll
M llvm/test/Transforms/Coroutines/coro-only-destroy-when-complete.ll
M llvm/test/Transforms/Coroutines/coro-padding.ll
M llvm/test/Transforms/Coroutines/coro-param-copy.ll
M llvm/test/Transforms/Coroutines/coro-readnone-02.ll
M llvm/test/Transforms/Coroutines/coro-readnone.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
M llvm/test/Transforms/Coroutines/coro-retcon-frame.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-private.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value2.ll
M llvm/test/Transforms/Coroutines/coro-retcon-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-remat.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values2.ll
M llvm/test/Transforms/Coroutines/coro-retcon-unreachable.ll
M llvm/test/Transforms/Coroutines/coro-retcon-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon.ll
M llvm/test/Transforms/Coroutines/coro-spill-after-phi.ll
M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
M llvm/test/Transforms/Coroutines/coro-spill-defs-before-corobegin.ll
M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
M llvm/test/Transforms/Coroutines/coro-split-00.ll
M llvm/test/Transforms/Coroutines/coro-split-01.ll
M llvm/test/Transforms/Coroutines/coro-split-02.ll
M llvm/test/Transforms/Coroutines/coro-split-alloc.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
M llvm/test/Transforms/Coroutines/coro-split-final-suspend.ll
M llvm/test/Transforms/Coroutines/coro-split-hidden.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-ppc64le.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail10.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail12.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail13.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail8.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail9.ll
M llvm/test/Transforms/Coroutines/coro-split-no-lifetime.ll
M llvm/test/Transforms/Coroutines/coro-split-noinline.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
M llvm/test/Transforms/Coroutines/coro-swifterror.ll
M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll
M llvm/test/Transforms/Coroutines/ex0.ll
M llvm/test/Transforms/Coroutines/ex1.ll
M llvm/test/Transforms/Coroutines/ex2.ll
M llvm/test/Transforms/Coroutines/ex3.ll
M llvm/test/Transforms/Coroutines/ex4.ll
M llvm/test/Transforms/Coroutines/ex5.ll
M llvm/test/Transforms/Coroutines/no-suspend.ll
M llvm/test/Transforms/Coroutines/phi-coro-end.ll
M llvm/test/Transforms/Coroutines/remarks.ll
M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
M llvm/test/Transforms/FunctionAttrs/noreturn.ll
M llvm/test/Transforms/LICM/sink-with-coroutine.ll
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
Reapply "[Coroutines] Add llvm.coro.is_in_ramp and drop return value of llvm.coro.end #153404" (#155339)
As mentioned in #151067, current design of llvm.coro.end mixes two
functionalities: querying where we are and lowering to some code. This
patch separate these functionalities into independent intrinsics by
introducing a new intrinsic llvm.coro.is_in_ramp.
Commit: be6129ab6b08965c50f68490f330bb7e2015b6cf
https://github.com/llvm/llvm-project/commit/be6129ab6b08965c50f68490f330bb7e2015b6cf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-exegesis/lib/LlvmState.cpp
Log Message:
-----------
llvm-exegesis: Error on MCSubtargetInfo construction failure (#159223)
Commit: a2644537505989b227a3bbb19ea8ff6976c1dba7
https://github.com/llvm/llvm-project/commit/a2644537505989b227a3bbb19ea8ff6976c1dba7
Author: Weibo He <NewSigma at 163.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/test/CodeGenCoroutines/coro-builtins.c
M clang/test/CodeGenCoroutines/coro-eh-cleanup.cpp
M clang/test/CodeGenCoroutines/coro-lambda.cpp
M clang/test/CodeGenCoroutines/coro-params.cpp
M llvm/docs/Coroutines.rst
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/Transforms/Coroutines/CoroInstr.h
M llvm/include/llvm/Transforms/Coroutines/CoroShape.h
M llvm/lib/Transforms/Coroutines/CoroCleanup.cpp
M llvm/lib/Transforms/Coroutines/CoroCloner.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/test/Analysis/GlobalsModRef/nonescaping-noalias.ll
M llvm/test/Assembler/auto_upgrade_intrinsics.ll
M llvm/test/Instrumentation/AddressSanitizer/coro-byval-param.ll
M llvm/test/Instrumentation/HWAddressSanitizer/coro-byval-param.ll
M llvm/test/Transforms/Coroutines/ArgAddr.ll
M llvm/test/Transforms/Coroutines/coro-align16.ll
M llvm/test/Transforms/Coroutines/coro-align32.ll
M llvm/test/Transforms/Coroutines/coro-align64-02.ll
M llvm/test/Transforms/Coroutines/coro-align64.ll
M llvm/test/Transforms/Coroutines/coro-align8-02.ll
M llvm/test/Transforms/Coroutines/coro-align8.ll
M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O0.ll
M llvm/test/Transforms/Coroutines/coro-alloc-with-param-O2.ll
M llvm/test/Transforms/Coroutines/coro-alloca-01.ll
M llvm/test/Transforms/Coroutines/coro-alloca-02.ll
M llvm/test/Transforms/Coroutines/coro-alloca-03.ll
M llvm/test/Transforms/Coroutines/coro-alloca-04.ll
M llvm/test/Transforms/Coroutines/coro-alloca-05.ll
M llvm/test/Transforms/Coroutines/coro-alloca-06.ll
M llvm/test/Transforms/Coroutines/coro-alloca-07.ll
M llvm/test/Transforms/Coroutines/coro-alloca-08.ll
M llvm/test/Transforms/Coroutines/coro-alloca-09.ll
M llvm/test/Transforms/Coroutines/coro-alloca-loop-carried-address.ll
M llvm/test/Transforms/Coroutines/coro-alloca-outside-frame.ll
M llvm/test/Transforms/Coroutines/coro-alloca-with-addrspace.ll
M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-infinite-loop-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-addr-lifetime-start-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-coro-id-async-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-declaration.ll
M llvm/test/Transforms/Coroutines/coro-async-dyn-align.ll
M llvm/test/Transforms/Coroutines/coro-async-end-bug.ll
M llvm/test/Transforms/Coroutines/coro-async-no-cse-swift-async-context-addr.ll
M llvm/test/Transforms/Coroutines/coro-async-nomerge.ll
M llvm/test/Transforms/Coroutines/coro-async-phi.ll
M llvm/test/Transforms/Coroutines/coro-async.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-handle-in-ramp.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower-invoke.ll
M llvm/test/Transforms/Coroutines/coro-await-suspend-lower.ll
M llvm/test/Transforms/Coroutines/coro-byval-param.ll
M llvm/test/Transforms/Coroutines/coro-catchswitch-cleanuppad.ll
M llvm/test/Transforms/Coroutines/coro-catchswitch.ll
M llvm/test/Transforms/Coroutines/coro-debug-O2.ll
M llvm/test/Transforms/Coroutines/coro-debug-coro-frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values-not_used_in_frame.ll
M llvm/test/Transforms/Coroutines/coro-debug-dbg.values.ll
M llvm/test/Transforms/Coroutines/coro-debug-frame-variable.ll
M llvm/test/Transforms/Coroutines/coro-debug-spill-dbg.declare.ll
M llvm/test/Transforms/Coroutines/coro-debug.ll
M llvm/test/Transforms/Coroutines/coro-early-twice.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-00.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-01.ll
M llvm/test/Transforms/Coroutines/coro-eh-aware-edge-split-02.ll
M llvm/test/Transforms/Coroutines/coro-frame-arrayalloca.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-00.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-01.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-02.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-03.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-04.ll
M llvm/test/Transforms/Coroutines/coro-frame-reuse-alloca-05.ll
M llvm/test/Transforms/Coroutines/coro-frame-unreachable.ll
M llvm/test/Transforms/Coroutines/coro-frame.ll
M llvm/test/Transforms/Coroutines/coro-lifetime-end.ll
M llvm/test/Transforms/Coroutines/coro-materialize.ll
M llvm/test/Transforms/Coroutines/coro-noalias-param.ll
M llvm/test/Transforms/Coroutines/coro-only-destroy-when-complete.ll
M llvm/test/Transforms/Coroutines/coro-padding.ll
M llvm/test/Transforms/Coroutines/coro-param-copy.ll
M llvm/test/Transforms/Coroutines/coro-readnone-02.ll
M llvm/test/Transforms/Coroutines/coro-readnone.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-alloca.ll
M llvm/test/Transforms/Coroutines/coro-retcon-frame.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-private.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon-once-value2.ll
M llvm/test/Transforms/Coroutines/coro-retcon-opaque-ptr.ll
M llvm/test/Transforms/Coroutines/coro-retcon-remat.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values.ll
M llvm/test/Transforms/Coroutines/coro-retcon-resume-values2.ll
M llvm/test/Transforms/Coroutines/coro-retcon-unreachable.ll
M llvm/test/Transforms/Coroutines/coro-retcon-value.ll
M llvm/test/Transforms/Coroutines/coro-retcon.ll
M llvm/test/Transforms/Coroutines/coro-spill-after-phi.ll
M llvm/test/Transforms/Coroutines/coro-spill-corobegin.ll
M llvm/test/Transforms/Coroutines/coro-spill-defs-before-corobegin.ll
M llvm/test/Transforms/Coroutines/coro-spill-promise-02.ll
M llvm/test/Transforms/Coroutines/coro-spill-promise.ll
M llvm/test/Transforms/Coroutines/coro-spill-suspend.ll
M llvm/test/Transforms/Coroutines/coro-split-00.ll
M llvm/test/Transforms/Coroutines/coro-split-01.ll
M llvm/test/Transforms/Coroutines/coro-split-02.ll
M llvm/test/Transforms/Coroutines/coro-split-alloc.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels-inlined.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg-labels.ll
M llvm/test/Transforms/Coroutines/coro-split-dbg.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-00.ll
M llvm/test/Transforms/Coroutines/coro-split-eh-01.ll
M llvm/test/Transforms/Coroutines/coro-split-final-suspend.ll
M llvm/test/Transforms/Coroutines/coro-split-hidden.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-chain-pgo-counter-promo.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail-ppc64le.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail1.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail10.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail12.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail13.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail2.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail3.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail4.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail5.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail6.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail7.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail8.ll
M llvm/test/Transforms/Coroutines/coro-split-musttail9.ll
M llvm/test/Transforms/Coroutines/coro-split-no-lifetime.ll
M llvm/test/Transforms/Coroutines/coro-split-noinline.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-01.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-02.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-03.ll
M llvm/test/Transforms/Coroutines/coro-split-sink-lifetime-04.ll
M llvm/test/Transforms/Coroutines/coro-swifterror.ll
M llvm/test/Transforms/Coroutines/coro-zero-alloca.ll
M llvm/test/Transforms/Coroutines/ex0.ll
M llvm/test/Transforms/Coroutines/ex1.ll
M llvm/test/Transforms/Coroutines/ex2.ll
M llvm/test/Transforms/Coroutines/ex3.ll
M llvm/test/Transforms/Coroutines/ex4.ll
M llvm/test/Transforms/Coroutines/ex5.ll
M llvm/test/Transforms/Coroutines/no-suspend.ll
M llvm/test/Transforms/Coroutines/phi-coro-end.ll
M llvm/test/Transforms/Coroutines/remarks.ll
M llvm/test/Transforms/Coroutines/swift-async-dbg.ll
M llvm/test/Transforms/FunctionAttrs/noreturn.ll
M llvm/test/Transforms/LICM/sink-with-coroutine.ll
M llvm/unittests/Transforms/Coroutines/ExtraRematTest.cpp
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
Revert "Reapply "[Coroutines] Add llvm.coro.is_in_ramp and drop return value of llvm.coro.end #153404"" (#159236)
Reverts llvm/llvm-project#155339 because of CI fail
Commit: ab0bb6db39cefa5c27aab0ac6af7c33e652ba28b
https://github.com/llvm/llvm-project/commit/ab0bb6db39cefa5c27aab0ac6af7c33e652ba28b
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-16 (Tue, 16 Sep 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sadde-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-sadde-rv64.mir
Log Message:
-----------
[RISCV][GISel] Update rv32 s64 G_SADDE legalizer test. (#159153)
We were testing 2 s32 G_SADDE instead of a single s64 G_SADDE.
Similar for s128 on RV64.
Commit: c286a427b977fc1df0871ceed9916070a38a1d22
https://github.com/llvm/llvm-project/commit/c286a427b977fc1df0871ceed9916070a38a1d22
Author: Kareem Ergawy <kareem.ergawy at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
A offload/test/offloading/fortran/do-concurrent-to-omp-saxpy-2d.f90
A offload/test/offloading/fortran/do-concurrent-to-omp-saxpy.f90
Log Message:
-----------
[NFC][flang][do concurent] Add saxpy offload tests for OpenMP mapping (#155993)
Adds end-to-end tests for `do concurrent` offloading to the device.
PR stack:
- https://github.com/llvm/llvm-project/pull/155754
- https://github.com/llvm/llvm-project/pull/155987
- https://github.com/llvm/llvm-project/pull/155992
- https://github.com/llvm/llvm-project/pull/155993 ◀️
- https://github.com/llvm/llvm-project/pull/157638
- https://github.com/llvm/llvm-project/pull/156610
- https://github.com/llvm/llvm-project/pull/156837
Commit: 6d5c94203652a52b51b37ad4768bc1a7066f029c
https://github.com/llvm/llvm-project/commit/6d5c94203652a52b51b37ad4768bc1a7066f029c
Author: Tang Jiajun <jiajun.tang at intel.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaCUDA.cpp
A clang/test/SemaCUDA/consteval-func.cu
Log Message:
-----------
[clang] [CUDA] Support calling `consteval` function between different target. (#158688)
In CUDA, calling `consteval` functions cross excution space is allowed.
So the function with `consteval` attribute need be treated as a
`__host__ __device__` function.
Commit: ec2ce347735f931c884197fdb4db669e5fb9c5e0
https://github.com/llvm/llvm-project/commit/ec2ce347735f931c884197fdb4db669e5fb9c5e0
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv32zba.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
M llvm/test/CodeGen/RISCV/xqciac.ll
Log Message:
-----------
[RISCV] Lower (select c, (1 << X) + 1, 0) -> (shXadd c, c) (#158969)
Commit: 5399ca97c4fe61770b5e7d0aeebd8aadf1ea52bc
https://github.com/llvm/llvm-project/commit/5399ca97c4fe61770b5e7d0aeebd8aadf1ea52bc
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaChecking.cpp
Log Message:
-----------
[clang][sema][NFC] Use a for-range loop in checkBuiltinVerboseTrap (#159114)
We don't use `I` at all, so use a for-range loop.
Commit: b3a1c777824527bf771c7187a0b685feb7ef04f7
https://github.com/llvm/llvm-project/commit/b3a1c777824527bf771c7187a0b685feb7ef04f7
Author: Umesh Kalvakuntla <80587349+Umesh-k26 at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/lib/TargetParser/Host.cpp
Log Message:
-----------
[X86] Fixes for AMD znver5 enablement (#159237)
- cpuid bit for prefetchi is different from Intel
(https://docs.amd.com/v/u/en-US/24594_3.37)
- Fix cpu family model numbers
Commit: ac1012d315fd4cac2a4ac535a00daed682481dc0
https://github.com/llvm/llvm-project/commit/ac1012d315fd4cac2a4ac535a00daed682481dc0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-mc/llvm-mc.cpp
Log Message:
-----------
llvm-mc: Error on MCSubtargetInfo construction failure (#159226)
We have inconsistent handling of null returns on target MC constructors.
Most tools report an error, but some assert. It's currently not possible
to test this with any in-tree targets. Make this a clean error so in the
future targets can fail the construction.
Commit: 09966960c692be63b192448e8c2b6bfebad3c3b8
https://github.com/llvm/llvm-project/commit/09966960c692be63b192448e8c2b6bfebad3c3b8
Author: David Green <david.green at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/test/Transforms/InstCombine/may-alias-errno.ll
Log Message:
-----------
[BasicAA] Handle scalable vectors in new errno aliasing checks. (#159248)
This is a minor fixup for scalable vectors after f9f62ef4ae555a. It
handles them in the same way as other memory locations that are larger
than errno, preventing the failure on implicit conversion from a
scalable location.
Commit: e8028b2ecb5bda10a45cfa383beee0654d92e611
https://github.com/llvm/llvm-project/commit/e8028b2ecb5bda10a45cfa383beee0654d92e611
Author: Daniel Kuts <kutz at ispras.ru>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Object/Archive.cpp
Log Message:
-----------
[llvm] Validate Parent object before dereference (#157460)
Fixes #157449
Commit: b90af2df59ac3a96761151be1d035cb6fe58cd31
https://github.com/llvm/llvm-project/commit/b90af2df59ac3a96761151be1d035cb6fe58cd31
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[CMake] Merge if statements for GCC warning disabling. NFC. (#159172)
Commit: 50f81531b46cb57737a41b6f20d7280377f9fb39
https://github.com/llvm/llvm-project/commit/50f81531b46cb57737a41b6f20d7280377f9fb39
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
Log Message:
-----------
[MLIR] Fix compilation after #157771 (#159257)
The original PR broke pretty much all our bots.
Apologies for the noise in the previous PR.
Commit: 5829652a6def4031853104b43ee6dfd331162352
https://github.com/llvm/llvm-project/commit/5829652a6def4031853104b43ee6dfd331162352
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
A mlir/test/Target/LLVMIR/nvvm/clusterlaunchcontrol.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Add clusterlaunchcontrol Ops (#156585)
This change adds the `clusterlaunchcontrol.try.cancel` and
`clusterlaunchcontrol.query.cancel` Ops to the NVVM dialect.
Tests are added in `clusterlaunchcontrol.mlir`.
PTX Reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/#parallel-synchronization-and-communication-instructions-clusterlaunchcontrol-try-cancel
Commit: 2155f17d39f3969ef841c85ef1102a214ab22b30
https://github.com/llvm/llvm-project/commit/2155f17d39f3969ef841c85ef1102a214ab22b30
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
Log Message:
-----------
[clang][bytecode] Optimize InitElem{,Pop} (#159084)
Try harder to avoid creating a new `Pointer` for the element.
Commit: ff05dc4526dce68f10450d77a1da2b8061e80dc2
https://github.com/llvm/llvm-project/commit/ff05dc4526dce68f10450d77a1da2b8061e80dc2
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][NFC] Add some popToAPSInt convenience API (#159252)
Add a variant that takes a QualType and one that takes an expression.
That way we don't have to repeat the clunky classify() calls all over
the place.
Commit: 41cef78227eb909181cb9360099b2d92de8d649f
https://github.com/llvm/llvm-project/commit/41cef78227eb909181cb9360099b2d92de8d649f
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
A llvm/test/Transforms/SimplifyCFG/unreachable-multi-basic-block-funclet.ll
Log Message:
-----------
Reland "[BasicBlockUtils] Handle funclets when detaching EH pad blocks" (#158435)
When removing EH Pad blocks, the value defined by them becomes poison. These poison values are then used by `catchret` and `cleanupret`, which is invalid. This commit replaces those unreachable `catchret` and `cleanupret` instructions with `unreachable`.
Commit: 2ef58b603883c724805fc209ca753987efce3957
https://github.com/llvm/llvm-project/commit/2ef58b603883c724805fc209ca753987efce3957
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/test/Driver/DTLTO/dtlto.c
A clang/test/Driver/DTLTO/filename.py
M clang/test/Driver/DTLTO/ps5-dtlto.c
Log Message:
-----------
[DTLTO][TEST] Make Clang driver tests more robust (#159151)
The Clang driver tests tried to match the Clang executable name via a
regular expression. This failed on some buildbots where the name was not
anticipated.
Make the test more robust by extracting the filename with Python and
appending a line to the output. This is then captured into a FileCheck
variable and used directly in the check for the executable name.
Should fix buildbot failures caused by the merge of PR #159129.
Commit: a393f20e4085521165a5e8de82869f1355f8cc55
https://github.com/llvm/llvm-project/commit/a393f20e4085521165a5e8de82869f1355f8cc55
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-simplify-boolean-expr in TosaOps.cpp (NFC)
Commit: c87be722d60467dfc651186c1b1b058ce2e34644
https://github.com/llvm/llvm-project/commit/c87be722d60467dfc651186c1b1b058ce2e34644
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTMutationListener.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Frontend/MultiplexConsumer.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/test/CodeGenCXX/cxx2a-destroying-delete.cpp
M clang/test/CodeGenCXX/microsoft-abi-structors.cpp
A clang/test/Modules/Inputs/glob-delete-with-virtual-dtor/glob-delete-with-virtual-dtor.h
A clang/test/Modules/Inputs/glob-delete-with-virtual-dtor/module.modulemap
A clang/test/Modules/glob-delete-with-virtual-dtor.cpp
A clang/test/PCH/Inputs/glob-delete-with-virtual-dtor.h
A clang/test/PCH/glob-delete-with-virtual-dtor.cpp
Log Message:
-----------
[win][clang] Align scalar deleting destructors with MSABI (#139566)
While working on vector deleting destructors support
([GH19772](https://github.com/llvm/llvm-project/issues/19772)), I
noticed that MSVC produces different code in scalar deleting destructor
body depending on whether class defined its own operator delete. In
MSABI deleting destructors accept an additional implicit flag parameter
allowing some sort of flexibility. The mismatch I noticed is that
whenever a global operator delete is called, i.e. `::delete`, in the
code produced by MSVC the implicit flag argument has a value that makes
the 3rd bit set, i.e. "5" for scalar deleting destructors "7" for vector
deleting destructors.
Prior to this patch, clang handled `::delete` via calling global
operator delete direct after the destructor call and not calling class
operator delete in scalar deleting destructor body by passing "0" as
implicit flag argument value. This is fine until there is an attempt to
link binaries compiled with clang with binaries compiled with MSVC. The
problem is that in binaries produced by MSVC the callsite of the
destructor won't call global operator delete because it is assumed that
the destructor will do that and a destructor body generated by clang
will never do.
This patch removes call to global operator delete from the callsite and
add additional check of the 3rd bit of the implicit parameter inside of
scalar deleting destructor body.
---------
Co-authored-by: Tom Honermann <tom at honermann.net>
Commit: 75469bb376b7fa931d03ea95f6b7142d27ef0e51
https://github.com/llvm/llvm-project/commit/75469bb376b7fa931d03ea95f6b7142d27ef0e51
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/include/mlir/Interfaces/LoopLikeInterface.td
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
M mlir/test/Dialect/SCF/canonicalize.mlir
M mlir/test/Dialect/SCF/for-loop-peeling.mlir
A mlir/test/Dialect/SCF/trip_count.mlir
M mlir/test/lib/Dialect/SCF/TestSCFUtils.cpp
Log Message:
-----------
[MLIR] Add a getStaticTripCount method to LoopLikeOpInterface (#158679)
This patch adds a `getStaticTripCount` to the LoopLikeOpInterface,
allowing loops to optionally return a static trip count when possible.
This is implemented on SCF ForOp, revamping the implementation of
`constantTripCount`, removing redundant duplicate implementations from
SCF.cpp.
Commit: 46ad5408fc8e31e97f5b1191320ca449c00f4191
https://github.com/llvm/llvm-project/commit/46ad5408fc8e31e97f5b1191320ca449c00f4191
Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
M mlir/test/Conversion/VectorToGPU/vector-to-mma-ops.mlir
Log Message:
-----------
[mlir][gpu][vector] Lower Vector dialect to GPU for element-wise ops only (#159091)
Current convertVectorToMMAOps starts from vector.contract and finds its
dependencies as the targets to convert. In GPU dialect, we have
gpu.subgroup_mma_elementwise operation. We should be able to lower
element-wise operations to GPU MMA operations without vector.contract.
This patch adds this case to the pattern.
Commit: a044d6118208704ee15046abb6060c331e86b481
https://github.com/llvm/llvm-project/commit/a044d6118208704ee15046abb6060c331e86b481
Author: Simon Wallis <simon.wallis2 at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN1.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-misc-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
Log Message:
-----------
[AArch64] Update IssueWidth for Neoverse V1, N1, N3 (#154495)
Recently the IssueWidth in the scheduling model was reduced for
Neoverse-V2 and N2. This patch does the same for Neoverse-V1, N1 and N3.
On Neoverse-V1, various values of IssueWidth (15, 8, 7, 6, 5) were tried
with runs of various workloads.
The highest overall geomean score was achieved with an issue width of 8.
No significant regressions were noted.
On Neoverse-N1, various values of IssueWidth (8, 6, 5, 4, 3) were tried
with runs of various workloads.
The highest overall geomean score was achieved with an issue width of 3.
No significant regressions were noted.
On Neoverse-N3, it makes sense to do exactly the same as was done for
N2. It is proposed to use an issue width of 5.
Related V2 PR: https://github.com/llvm/llvm-project/pull/142565
Related N2 PR: https://github.com/llvm/llvm-project/pull/145717
Commit: 559cfefee1b2d739f4d4ccd89767c63713917122
https://github.com/llvm/llvm-project/commit/559cfefee1b2d739f4d4ccd89767c63713917122
Author: Mary Kassayova <mary.kassayova at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
M llvm/test/CodeGen/AArch64/sme-callee-save-restore-pairs.ll
M llvm/test/CodeGen/AArch64/sme-peephole-opts.ll
A llvm/test/CodeGen/AArch64/sme-streaming-checkvl-mir.ll
A llvm/test/CodeGen/AArch64/sme-streaming-checkvl.ll
M llvm/test/CodeGen/AArch64/sme-streaming-compatible-interface.ll
M llvm/test/CodeGen/AArch64/sme-vg-to-stack.ll
M llvm/test/CodeGen/AArch64/spill-reload-remarks.ll
Log Message:
-----------
[AArch64][SME] Introduce CHECK_MATCHING_VL pseudo for streaming transitions (#157510)
This patch adds a new codegen-only pseudo-instruction,
`CHECK_MATCHING_VL`, used when transitioning between non-streaming /
streaming-compatible callers and streaming-enabled callees. The pseudo
verifies that the current SVE vector length (VL) matches the streaming
vector length (SVL); if they differ, we trap.
Commit: 3f6cd761bac2d66cbbfb1d8c3a8407d4f0583093
https://github.com/llvm/llvm-project/commit/3f6cd761bac2d66cbbfb1d8c3a8407d4f0583093
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
Log Message:
-----------
[clang][bytecode] Remove InterpFrame::IsBottom flag (#159279)
The bottom frame is the one without a parent. No need to save that
information separately.
Commit: 4c7de930b3e265f04d86425cbbbc5f78536ce4b2
https://github.com/llvm/llvm-project/commit/4c7de930b3e265f04d86425cbbbc5f78536ce4b2
Author: Elam Cohavi <53015791+elamc-2 at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/docs/Dialects/Affine.md
Log Message:
-----------
[mlir][doc] fix `affine` op header link (#158650)
Commit: 76a11c769d3cc2c1d986e86f58d9fb25fe9830c6
https://github.com/llvm/llvm-project/commit/76a11c769d3cc2c1d986e86f58d9fb25fe9830c6
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libcxx/include/__vector/vector.h
Log Message:
-----------
Reapply "[libc++] Mark __{emplace,push}_back_slow_path as noinline (#94379)" (#158606)
This reverts commit 7f2e9b17098f42c85ef469b029bb84ef4eea189c.
The LLDB failures have been resolved in trunk.
Commit: 948482d83110257036c5fb50c65073bc74cd6c7f
https://github.com/llvm/llvm-project/commit/948482d83110257036c5fb50c65073bc74cd6c7f
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/test/Target/SPIRV/arithmetic-ops.mlir
M mlir/test/Target/SPIRV/array-two-step-roundtrip.mlir
M mlir/test/Target/SPIRV/array.mlir
M mlir/test/Target/SPIRV/atomic-ops.mlir
M mlir/test/Target/SPIRV/barrier-ops.mlir
M mlir/test/Target/SPIRV/bit-ops.mlir
M mlir/test/Target/SPIRV/cast-ops.mlir
M mlir/test/Target/SPIRV/composite-op.mlir
M mlir/test/Target/SPIRV/gl-ops.mlir
M mlir/test/Target/SPIRV/group-ops.mlir
M mlir/test/Target/SPIRV/image-ops.mlir
M mlir/test/Target/SPIRV/image.mlir
M mlir/test/Target/SPIRV/intel-ext-ops.mlir
M mlir/test/Target/SPIRV/khr-cooperative-matrix-ops.mlir
M mlir/test/Target/SPIRV/matrix.mlir
M mlir/test/Target/SPIRV/memory-ops.mlir
M mlir/test/Target/SPIRV/mesh-ops.mlir
M mlir/test/Target/SPIRV/non-uniform-ops.mlir
M mlir/test/Target/SPIRV/ocl-ops.mlir
M mlir/test/Target/SPIRV/physical-storage-buffer.mlir
M mlir/test/Target/SPIRV/primitive-ops.mlir
M mlir/test/Target/SPIRV/spec-constant.mlir
M mlir/test/Target/SPIRV/tensorARM.mlir
M mlir/test/Target/SPIRV/terminator.mlir
M mlir/test/Target/SPIRV/undef.mlir
Log Message:
-----------
[mlir][spirv] Add validation and missing capabilities in Target tests (#159139)
This change adds calls to `spirv-val` in selected Target tests and fixes
missing and broken capabilities. Tests that require fixes beyond simple
capability changes are left untouched.
Commit: b29c7ded31d81ca47aed0157c543c8b6a0f5866c
https://github.com/llvm/llvm-project/commit/b29c7ded31d81ca47aed0157c543c8b6a0f5866c
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/aarch64-addv.ll
M llvm/test/CodeGen/AArch64/abds.ll
M llvm/test/CodeGen/AArch64/abdu.ll
M llvm/test/CodeGen/AArch64/ctpop.ll
Log Message:
-----------
[AArch64] Fold uaddv(a) to a if the all lanes except the 0th are zeros (#159086)
Fixes https://github.com/llvm/llvm-project/issues/158741
Commit: 0969e2c4203ce5ba7c6a042c6542ce45c0ebbae4
https://github.com/llvm/llvm-project/commit/0969e2c4203ce5ba7c6a042c6542ce45c0ebbae4
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Analysis/CaptureTracking.cpp
M llvm/test/Other/cgscc-devirt-iteration.ll
M llvm/test/Transforms/Attributor/nocapture-1.ll
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
M llvm/test/Transforms/FunctionAttrs/nonnull.ll
M llvm/test/Transforms/FunctionAttrs/out-of-bounds-iterator-bug.ll
M llvm/test/Transforms/FunctionAttrs/readattrs.ll
M llvm/test/Transforms/LICM/promote-capture.ll
Log Message:
-----------
[CaptureTracking] Fix handling for non-returning read-only calls (#158979)
We currently infer `captures(none)` for calls that are read-only,
nounwind and willreturn. As pointed out in
https://github.com/llvm/llvm-project/issues/129090, this is not correct
even with this set of pre-conditions, because the function could
conditionally cause UB depending on the address.
As such, change this logic to instead report `captures(address)`. This
also allows dropping the nounwind and willreturn checks, as these can
also only capture the address.
Commit: 56ebbebadad13688b1991703870f21c06c068fb5
https://github.com/llvm/llvm-project/commit/56ebbebadad13688b1991703870f21c06c068fb5
Author: sstipano <sstipano7 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
Log Message:
-----------
[AMDGPU][NFC] Add back -new-reg-bank-select flag. (#159181)
Commit: b7f68cb08ca6e6d4a935640e8065d54b1590d144
https://github.com/llvm/llvm-project/commit/b7f68cb08ca6e6d4a935640e8065d54b1590d144
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
M llvm/test/CodeGen/Mips/atomic-min-max.ll
Log Message:
-----------
[Mips] Fix atomic min/max generate mips4 instructions when compiling for mips2 (#149983)
Fix #145411.
Commit: 88c64f76ed2ca226da99b99f60d316b1519fc7d8
https://github.com/llvm/llvm-project/commit/88c64f76ed2ca226da99b99f60d316b1519fc7d8
Author: Gábor Spaits <gaborspaits1 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
R llvm/test/Transforms/SimplifyCFG/unreachable-multi-basic-block-funclet.ll
Log Message:
-----------
Revert "Reland "[BasicBlockUtils] Handle funclets when detaching EH p… (#159292)
…ad blocks" (#158435)"
This reverts commit 41cef78227eb909181cb9360099b2d92de8d649f.
Commit: 0a7a7d56fc882653335beba0d1f8ea9f26089c22
https://github.com/llvm/llvm-project/commit/0a7a7d56fc882653335beba0d1f8ea9f26089c22
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/CMakeLists.txt
Log Message:
-----------
[llvm][CAS] Enable CAS on 32-bit systems again (#159302)
dd56becdbc31cce16973172f0a447207ddf67861 has fixed the alignment problem
we were seeing on Arm 32-bit.
Commit: 47bd16736245f0d95f868267f26a72080c85004f
https://github.com/llvm/llvm-project/commit/47bd16736245f0d95f868267f26a72080c85004f
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/LexicalScopes.h
Log Message:
-----------
[DebugInfo] Remove class and function names from Doxygen comments in LexicalScopes.h (NFC) (#159310)
Duplication of function and class name in the comment is discouraged in
https://llvm.org/docs/CodingStandards.html#doxygen-use-in-documentation-comments.
Commit: 2c764c6fafaacf53a0d873c6db066e7849654f0e
https://github.com/llvm/llvm-project/commit/2c764c6fafaacf53a0d873c6db066e7849654f0e
Author: David Green <david.green at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/Analysis/CostModel/ARM/abs.ll
Log Message:
-----------
[ARM] Correct attributes on abs.ll costmodel test. NFC
Adding mve was a mistake and preventing it from testing the expected
architecture levels.
Commit: 4c16cfff6f31ed7d7942a1dacc5848d281f28e6f
https://github.com/llvm/llvm-project/commit/4c16cfff6f31ed7d7942a1dacc5848d281f28e6f
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-one-by-n-vector-ptr-add.ll
Log Message:
-----------
[NFC][LLVM][AArch64] Add use-constant-int-for-* RUN lines to global-isel tests.
CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
CodeGen/AArch64/GlobalISel/irtranslator-one-by-n-vector-ptr-add.ll
Commit: 152ed59a9f2c644d1888f11b9ba0e7245fd26a54
https://github.com/llvm/llvm-project/commit/152ed59a9f2c644d1888f11b9ba0e7245fd26a54
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/Transforms/Attributor/nofpclass.ll
M llvm/test/Transforms/InstCombine/exact.ll
M llvm/test/Transforms/InstCombine/load-store-forward.ll
M llvm/test/Transforms/SCCP/overdefined-ext.ll
Log Message:
-----------
[NFC][LLVM][Tests] Add RUN lines to verify Constant{Int/FP} based splats.
llvm/test/Transforms/Attributor/nofpclass.ll
llvm/test/Transforms/InstCombine/exact.ll
llvm/test/Transforms/InstCombine/load-store-forward.ll
llvm/test/Transforms/SCCP/overdefined-ext.ll
Commit: 1773341f2cf932c6b4fe531ad5da3def545def31
https://github.com/llvm/llvm-project/commit/1773341f2cf932c6b4fe531ad5da3def545def31
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/Transforms/InstSimplify/ConstProp/bswap.ll
Log Message:
-----------
[NFC] Regenerate checks - llvm/test/Transforms/InstSimplify/ConstProp/bswap.ll
Commit: 5f34d530d2c6c67a1b2d3e64db3d681462c54514
https://github.com/llvm/llvm-project/commit/5f34d530d2c6c67a1b2d3e64db3d681462c54514
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
Log Message:
-----------
llvm-mc-assemble-fuzzer: Error on MCSubtargetInfo construct failure (#159224)
Commit: 07a79285d2d63615070173e6768b6e0174c18084
https://github.com/llvm/llvm-project/commit/07a79285d2d63615070173e6768b6e0174c18084
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Support/raw_socket_stream.cpp
Log Message:
-----------
Fix _WIN32 Wundef warning; NFC (#159301)
The `_WIN32` macro is tested for defined-ness everywhere else. The
instance here triggers a warning when compiling with `-Wundef`.
Commit: 9690a718b8d5344583eadfbc5bf2249d7d39b777
https://github.com/llvm/llvm-project/commit/9690a718b8d5344583eadfbc5bf2249d7d39b777
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/IR/Instructions.cpp
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/infer-align-from-assumption.ll
Log Message:
-----------
[IR][CaptureTracking] Consider assume operand bundles captures(none) (#159083)
Something like `call void @llvm.assume(i1 true) ["align"(ptr %p, i64 8)]`
is equivalent to placing an `align 8` attribute on the parameter
and should not be considered as capturing.
Commit: 1dbb932fd8681930ed98fe621bbe4bdaa5aeaa5c
https://github.com/llvm/llvm-project/commit/1dbb932fd8681930ed98fe621bbe4bdaa5aeaa5c
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/MachineVerifier.cpp
A llvm/test/MachineVerifier/AMDGPU/test_copy_physregs_llt_virtreg.mir
M llvm/test/MachineVerifier/test_copy_physregs_x86.mir
Log Message:
-----------
GlobalISel: Relax verifier between physreg and typed vreg (#159281)
Accept mismatched register size and type size if the type is legal
for the register class.
For AMDGPU boolean registers have 2 possible interpretations depending
on the use context type. e.g., these are both equally valid:
%0:_(s1) = COPY $vcc
%1:_(s64) = COPY $vcc
vcc is a 64-bit register, which can be interpreted as a 1-bit or 64-bit
value depending on the use context. SelectionDAG has never required
exact
match between the register size and the used value type. You can assign
a type with a smaller size to a larger register class. Relax the
verifier
to match. There are several hacks holding together these copies in
various places, and this is preparation to remove one of them.
The x86 test change is from what I would consider an X86 usage bug. X86
defines an FR32 register class and F16 register class, but the F16
register
class is functionally an alias of F32 with the same members and size.
There's
no need to have the F16 class.
Commit: 17e008db17be5cf01daf13265adc93d1da257fca
https://github.com/llvm/llvm-project/commit/17e008db17be5cf01daf13265adc93d1da257fca
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
A llvm/test/Bitcode/upgrade-vector-partial-reduce-add-intrinsic.ll
M llvm/test/CodeGen/AArch64/GlobalISel/combine-addv.mir
M llvm/test/CodeGen/AArch64/complex-deinterleaving-cdot.ll
M llvm/test/CodeGen/AArch64/complex-deinterleaving-unrolled-cdot.ll
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/partial-reduction-add.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-partial-reduce.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll
M llvm/test/CodeGen/AArch64/sve-partial-reduce-wide-add.ll
M llvm/test/CodeGen/AArch64/sve2p1-dots-partial-reduction.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvqdotq.ll
M llvm/test/CodeGen/RISCV/rvv/partial-reduction-add.ll
M llvm/test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-interleave.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/VectorCombine/intrinsic-scalarize.ll
Log Message:
-----------
[IR] NFC: Remove 'experimental' from partial.reduce.add intrinsic (#158637)
The partial reduction intrinsics are no longer experimental, because
they've been used in production for a while and are unlikely to change.
Commit: aac8eb85b223f48bf4b543bcd644e9a62e5d1c0e
https://github.com/llvm/llvm-project/commit/aac8eb85b223f48bf4b543bcd644e9a62e5d1c0e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-copy.mir
Log Message:
-----------
AMDGPU: Fixes for regbankselecting copies of i1 physregs to sgprs (#159283)
If the source register of a copy was a physical sgpr copied to an
s1 value, this would assert.
Commit: d8e1c20a061f4bc2cc87f3f286312f016e571469
https://github.com/llvm/llvm-project/commit/d8e1c20a061f4bc2cc87f3f286312f016e571469
Author: Usha Gupta <usha.gupta at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Clarify norecurse attribute definition when a function could occur in a cycle in dynamic call-graph (#157087)
Update the definition of the `norecurse` attribute to forbid marking a
function as `norecurse` if any call path from its body may reach it
(possibly through an external function without a visible definition).
This makes it clear that `norecurse` excludes both direct and mutual
recursion, even when recursion could arise through callees in separate
modules.
This kind of scenario only arises when norecurse is forced through a llvm user option `-mllvm -force-attribute=<fname>:norecurse`
There are a few examples in
https://github.com/llvm/llvm-project/issues/157081 which shows that the
function attribute inference incorrectly infers norecurse when the
behavior (as per new definition) is not enforced.
Commit: 01ee9fe66c6bd334a66d2d10bbde3ecc5d014df9
https://github.com/llvm/llvm-project/commit/01ee9fe66c6bd334a66d2d10bbde3ecc5d014df9
Author: Ingo Müller <ingomueller at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/BUILD.bazel
Log Message:
-----------
[clang-tidy] Fix bazel build after #131804 (lazy style). (#159289)
This PR provides a quick fix for the bazel builds that got broken by
#131804. That PR introduced a new CMake option that enables custom
clang-tidy checks that are provided by cmake-query. This PR disables
those checks, which is the minimal fix. A more proper fix would
introduce a new `custom` check that is added to the tool if a particular
flag value is set; however, the library depends on clang-query, which
isn't part of the bazel build, yet, and I don't want to spend the time
now to make all of that work as well. The discussion in the PR provides
my current state in case somebody wants to pick up that work.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: 385c9f5b0244b6e9ff33856852aafc04e6b370a3
https://github.com/llvm/llvm-project/commit/385c9f5b0244b6e9ff33856852aafc04e6b370a3
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SCF/Utils/Utils.cpp
M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
Log Message:
-----------
[MLIR] Cleanup `constantTripCount()` (NFC) (#159307)
Add post-merge review comments on #158679
Commit: 5cbaf5552e9cab25dc3eb760ffb5ab7d3dd59249
https://github.com/llvm/llvm-project/commit/5cbaf5552e9cab25dc3eb760ffb5ab7d3dd59249
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
M clang/test/Analysis/ArrayBound/assumption-reporting.c
M clang/test/Analysis/ArrayBound/verbose-tests.c
Log Message:
-----------
[analyzer] Show element count in ArrayBound underflow reports (#158639)
The underflow reports of checker security.ArrayBound previously
displayed the (negative) byte offset of the accessed location; but those
numbers were a bit hard to decipher (especially when the elements were
large structs), so this commit replaces the byte offset with an index
value (if the offset is an integer multiple of the size of the accessed
element).
This change only affects the content of the messages; the checker will
find the same issues before and after this commit.
Commit: 6a16f1a6f4aca8957c9c1f672f2572c662ddf562
https://github.com/llvm/llvm-project/commit/6a16f1a6f4aca8957c9c1f672f2572c662ddf562
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang][ExprConst] Assert that EvaluateAsInitializer has non-null VD (#159274)
Both the expression (the initializer) as well as the VarDecl can't be
null here. Assert that.
Commit: 6a726e9a4d3d05f9aecf366fb6488d63135f04f3
https://github.com/llvm/llvm-project/commit/6a726e9a4d3d05f9aecf366fb6488d63135f04f3
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Transforms/LoopStrengthReduce/duplicated-phis.ll
Log Message:
-----------
[SCEV] Add more tests for MUL/UDIV folds.
Add additional test coverage for
https://github.com/llvm/llvm-project/pull/157656 covering cases where
the dividend is not a multiple of the divisor, causing the revert of
70012fda631.
Commit: ce5124856e019792783de9630d0c5a1f0aaf2d9d
https://github.com/llvm/llvm-project/commit/ce5124856e019792783de9630d0c5a1f0aaf2d9d
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
Log Message:
-----------
[Clang] Fix an incorrect assertion in `Sema::CheckAddressOfOperand` (#159314)
Not all non-type template arguments are modeled as
NonTypeTemplateParmDecl.
Fixes #151531
Commit: fe8e703aaf2c1a7eeceb153aa7a51bab4c06dab5
https://github.com/llvm/llvm-project/commit/fe8e703aaf2c1a7eeceb153aa7a51bab4c06dab5
Author: Bruno De Fraine <brunodf at synopsys.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseStmt.cpp
Log Message:
-----------
[clang][Parse] Use consistent Scope::ScopeFlags enum values (NFC) (#159275)
Commit 438863a changed the underlying type of the Scope::ScopeFlags from
int to unsigned. This triggers type mismatch warnings from specific
compilers when the enum's values are combined in operations with integer
literal 0. Regardless of these warnings, similar code in other places
uses Scope::NoScope instead of literal 0. For consistency and to avoid
these warnings, we change the uses of literal 0 to Scope::NoScope.
Commit: e969bd71221bd45b5a64aaed5ae1d227b7242c0f
https://github.com/llvm/llvm-project/commit/e969bd71221bd45b5a64aaed5ae1d227b7242c0f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/State.cpp
M clang/lib/AST/ByteCode/State.h
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang][ExprConst] Move getLangOpts() to interp::State subclasses (#159280)
Instead of having `State::getLangOpts()`, which does a virtual call to
`getASTContext()` to call `getLangOpts()` on that, just move
`getLangOpts()` to the subclasses so we can do that without the virtual
call. We never call `getLangOpts()` in `State.cpp`, so it's not needed
in the base class.
Commit: f78150d2d477b31b46d1afdd255020689f2ddccf
https://github.com/llvm/llvm-project/commit/f78150d2d477b31b46d1afdd255020689f2ddccf
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/mul-udiv-folds.ll
M llvm/test/Transforms/LoopStrengthReduce/duplicated-phis.ll
Log Message:
-----------
Reapply "[SCEV] Fold (C1 * A /u C2) -> A /u (C2 /u C1), if C2 > C1." (#158328)
This reverts commit fd58f235f8c5bd40d98acfd8e7fb11d41de301c7.
The recommit contains an extra check to make sure that D is a multiple of
C2, if C2 > C1. This fixes the issue causing the revert fd58f235f8c. Tests
have been added in 6a726e9a4d3d0.
Original message:
If C2 >u C1 and C1 >u 1, fold to A /u (C2 /u C1).
Depends on https://github.com/llvm/llvm-project/pull/157555.
Alive2 Proof: https://alive2.llvm.org/ce/z/BWvQYN
PR: https://github.com/llvm/llvm-project/pull/157656
Commit: eb8e8e87c6b5256f55551cf24f96a4cc54177a42
https://github.com/llvm/llvm-project/commit/eb8e8e87c6b5256f55551cf24f96a4cc54177a42
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
Log Message:
-----------
[NFC] Fic clangIR build after #158679
The commit from #158679 added getStaticTripCount to LoopLikeOpInterface,
which the CIRLoopOpInterface uses. However, it doesn't include APInt.
This patch adds an include for APInt to CIRLoopOpInterface, plus a
'using', as we're likely to run into this again.
Commit: e8aa0b688af4f190f6da359f8b3d442bc7cd82a1
https://github.com/llvm/llvm-project/commit/e8aa0b688af4f190f6da359f8b3d442bc7cd82a1
Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
Log Message:
-----------
[LV]: Ensure fairness when selecting epilogue VF. (#155547)
Consider IC when deciding if epilogue profitable for scalable vectors,
same as fixed-width vectors.
Commit: db204d92191b370891ef69c621c092a5c9c417bf
https://github.com/llvm/llvm-project/commit/db204d92191b370891ef69c621c092a5c9c417bf
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/MC/MCDecoder.h
M llvm/test/TableGen/BitOffsetDecoder.td
M llvm/test/TableGen/DecoderEmitter/VarLenDecoder.td
M llvm/test/TableGen/DecoderEmitter/operand-decoder.td
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Inline `insertBits()` (NFC) (#159353)
`tmp` is always of integer type, so we can use bitwise OR and shift.
Commit: 1f05682d7634d644cd6fd7141c84ee3ab58c26ab
https://github.com/llvm/llvm-project/commit/1f05682d7634d644cd6fd7141c84ee3ab58c26ab
Author: hstk30-hw <hanwei62 at huawei.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGDecl.cpp
Log Message:
-----------
[clang] Remove redundant conditions (NFC) (#159349)
Commit: 170c0c52250dab52cbb63de25ad16ff97a407cbf
https://github.com/llvm/llvm-project/commit/170c0c52250dab52cbb63de25ad16ff97a407cbf
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Lower/ConvertVariable.cpp
A flang/test/Lower/box-address.f90
Log Message:
-----------
[Flang] Handle unused entry dummies before processing shape (#157732)
Check for unused entry dummy arrays with BaseBoxType that calls
genUnusedEntryPointBox() before processing array shapes.
Fixes #132648
Commit: 1c2d7b3065dc143289d1e05caeeb7f77fac6575a
https://github.com/llvm/llvm-project/commit/1c2d7b3065dc143289d1e05caeeb7f77fac6575a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Fix a warning
This patch fixes:
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp:19079:7: error:
unused variable 'VT' [-Werror,-Wunused-variable]
Commit: d6315a260baddd5454a02878a78f0e9ae41860d9
https://github.com/llvm/llvm-project/commit/d6315a260baddd5454a02878a78f0e9ae41860d9
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Analysis/UnsafeBufferUsage.cpp
Log Message:
-----------
[clang][BufferUsage] Fix a StringRef lifetime issue (#159109)
The code before assigned the `std::string` returned from
`tryEvaluateString()` to the `StringRef`, but it was possible that the
underlying data of that string vanished in the meantime, passing invalid
stack memory to `ParsePrintfString`.
Fix this by using two different code paths for the `getCharByteWidth()
== 1` case and the `tryEvaluateString()` one.
Commit: 2b2b580c8d4560e724cca7ca856ce7171c3a4628
https://github.com/llvm/llvm-project/commit/2b2b580c8d4560e724cca7ca856ce7171c3a4628
Author: Brox Chen <guochen2 at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-inst-size-gfx11.ll
M llvm/test/CodeGen/AMDGPU/chain-hi-to-lo.ll
M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
M llvm/test/CodeGen/AMDGPU/rotl.ll
M llvm/test/CodeGen/AMDGPU/rotr.ll
M llvm/test/CodeGen/AMDGPU/shrink-add-sub-constant.ll
M llvm/test/CodeGen/AMDGPU/spillv16.ll
Log Message:
-----------
[AMDGPU][CodeGen][True16] Track waitcnt as vgpr32 instead of vgpr16 for D16 Instructions in GFX11 (#157795)
It seems the VMEM access on hi/lo half could interfere the other half.
Track waitcnt of vgpr32 instead of vgpr16 for 16bit reg in GFX11.
---------
Co-authored-by: Joe Nash <joseph.nash at amd.com>
Commit: 901eaeeb8d8e0e1ec3f2deba9fe8ef292b448757
https://github.com/llvm/llvm-project/commit/901eaeeb8d8e0e1ec3f2deba9fe8ef292b448757
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/YAMLTraits.h
Log Message:
-----------
[Support] Consolidate has_FlowTraits in YAMLTraits.h (NFC) (#159241)
has_FlowTraits has two implementations:
- "class has_FlowTraits" says false on non-class types.
- "struct has_FlowTraits" checks for a "flow" member on class types.
This patch eliminates the former because std::is_class is redundant if
we are checking to see if &U::flow is well formed. The comment block
being removed in this patch has been around since 2012. I'd assume
that host compilers have improved since then. Note that we are now
using is_detected, which wasn't the case back in 2012.
Commit: 36c0eabd0cc077d4b83524771a4d0c85aed54fde
https://github.com/llvm/llvm-project/commit/36c0eabd0cc077d4b83524771a4d0c85aed54fde
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/docs/Passes.rst
Log Message:
-----------
[llvm] Proofread Passes.rst (#159243)
Commit: 562fe413e06aa12fc91eb22ca9c7386239f5af4a
https://github.com/llvm/llvm-project/commit/562fe413e06aa12fc91eb22ca9c7386239f5af4a
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/ilist_node.h
Log Message:
-----------
[ADT] Use std::conditional_t to simplify ilist_select_iterator_type (NFC) (#159240)
Without this patch, ilist_select_iterator_type uses a boolean template
parameter to select one of two types. This patch converts that to
std::conditional_t, which is simpler than the two-class solution.
Commit: 80f9c72a1e045aa012b88c1b32cc6c5bb008a3db
https://github.com/llvm/llvm-project/commit/80f9c72a1e045aa012b88c1b32cc6c5bb008a3db
Author: Anton Shepelev <44649959+amemov at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/include/math.yaml
M libc/shared/math.h
A libc/shared/math/rsqrtf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/rsqrtf16.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/rsqrtf16.cpp
A libc/src/math/rsqrtf16.h
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/math/CMakeLists.txt
A libc/test/src/math/rsqrtf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/rsqrtf16_test.cpp
M libc/utils/MPFRWrapper/MPCommon.cpp
M libc/utils/MPFRWrapper/MPCommon.h
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M libc/utils/MPFRWrapper/MPFRUtils.h
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Add rsqrtf16() function (#137545)
Addresses #132818
Part of #95250
Commit: 8ed489914e5bdfe65e1c8fdeec335f21cd7b33a1
https://github.com/llvm/llvm-project/commit/8ed489914e5bdfe65e1c8fdeec335f21cd7b33a1
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/cmake/caches/PGO.cmake
Log Message:
-----------
Revert "[Clang][CMake] Use IRPGO instead of FE PGO for Cmake Caches (#155957)" (#159367)
This reverts commit 7fca1f841b4c226d50ab7bad64de5db225d4193b.
PR #55957 breaks the BOLT buildbot bolt-aarch64-ubuntu-clang:
https://lab.llvm.org/staging/#/builders/126
Example build:
https://lab.llvm.org/staging/#/builders/126/builds/2628
> ld.lld:
/home/buildbot/workspace/bolt-aarch64-ubuntu-clang/llvm-project/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:10194:
bool llvm::LoopVectorizePass::processLoop(llvm::Loop*): Assertion
`!verifyFunction(*F, &dbgs())' failed.
Commit: b2f38637cd3635a186da9d3a8776fe0b395f01de
https://github.com/llvm/llvm-project/commit/b2f38637cd3635a186da9d3a8776fe0b395f01de
Author: pkarveti <quic_pkarveti at quicinc.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
M llvm/lib/Target/Hexagon/HexagonISelLowering.h
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
A llvm/test/CodeGen/Hexagon/isel-uinttofp-v32i1tov32f32.ll
A llvm/test/CodeGen/Hexagon/isel-uinttofp-v64i1tov64f16.ll
Log Message:
-----------
[Hexagon] Added v32i1/v64i1 to v32f32/v64f16 lowering (#159355)
This patch introduces uint_to_fp conversions from v32i1 and v64i1
predicate vectors to v32f32 and v64f16 floating-point vectors.
Patch-by: Santanu Das
Co-authored-by: quic-santdas <quic_santdas at quicinc.com>
Commit: acc3a6234a91369b818fdd6482ded0ac32d8ffa6
https://github.com/llvm/llvm-project/commit/acc3a6234a91369b818fdd6482ded0ac32d8ffa6
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__hash_table
M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
Log Message:
-----------
Revert "[libc++] Optimize __hash_table::erase(iterator, iterator) (#1… (#158769)
…52471)"
This reverts commit e4eccd6a3c2415c10bb8217c247d7aca76cc9ad5.
This was causing ASan failures in some situations involving unordered
multimap containers. Details and a reproducer were posted on the
original PR (#152471).
Commit: 51a840e762f506c2473f9f0cbc01b6336f99e6d1
https://github.com/llvm/llvm-project/commit/51a840e762f506c2473f9f0cbc01b6336f99e6d1
Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.h
M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
Log Message:
-----------
[sanitizer_common][tsan][Darwin] Improve message for unsupported vm config on Apple platforms (#158665)
An existing log message is triggered in InitializePlatformEarly if the
address space max is not as sufficient for TSAN.
Some Apple platforms expand the address space limit, but reserve much of
the space TSAN needs. Therefore, we now check that the kernel has not
mapped over the address space that we intend to use.
IsAddressInMappedRegion is added to sanitizer_common. This introduces a
new dependency on mach_vm_region_recurse during TSAN startup, so this
intentionally fails softly (to avoid breaking current users who may be
in a sandbox that doesn't allow this).
rdar://135265279
Commit: d2738c0690c3fd6a10fc1ae8c5e1ec9345d06b2d
https://github.com/llvm/llvm-project/commit/d2738c0690c3fd6a10fc1ae8c5e1ec9345d06b2d
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/test/Sema/attr-args.c
Log Message:
-----------
Fix crash in 'malloc' referring to function without a argument (#159371)
As reported in #159080, patch #68059 didn't correctly check for the
argument count of the target function from malloc to ensure it has an
argument. This patch corrects that check.
Fixes: #159080
---------
Co-authored-by: Sergei Barannikov <barannikov88 at gmail.com>
Commit: de4fdccb7a1632923cca19e0e30b0476afb9f3ce
https://github.com/llvm/llvm-project/commit/de4fdccb7a1632923cca19e0e30b0476afb9f3ce
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
Log Message:
-----------
[CI] Test lit when it is changed (#159359)
This patch makes it so that we run the lit tests when lit is changed.
This can make it much easier to catch portability issues with the tests
(like tests not working properly on Windows). It's also helpful as we
spend time working on enabling the internal shell by default.
Commit: c919109aa96cae7b72eb9cc3f1559706e36a3c0b
https://github.com/llvm/llvm-project/commit/c919109aa96cae7b72eb9cc3f1559706e36a3c0b
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/primary64.h
Log Message:
-----------
[scudo] Move the trace point in releaseToOSMaybe (#159204)
Move the trace point until right before the mark free blocks call for
the primary. This avoids adding extra calculations on a fast path.
Commit: 05c4681668d0acd15a5a06e91be94916acd1c799
https://github.com/llvm/llvm-project/commit/05c4681668d0acd15a5a06e91be94916acd1c799
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SCCPSolver.cpp
A llvm/test/Transforms/SCCP/relax-range-checks.ll
Log Message:
-----------
[SCCP] Relax two-instruction range checks (#158495)
If we know x in R1, the range check `x in R2` can be relaxed into `x in
Union(R2, Inverse(R1))`. The latter one may be more efficient if we can
represent it with one icmp.
Fixes regressions introduced by
https://github.com/llvm/llvm-project/pull/156497.
Proof for `(X & -Pow2) == C -> (X - C) < Pow2`:
https://alive2.llvm.org/ce/z/HMgkuu
Compile-time impact:
https://llvm-compile-time-tracker.com/compare.php?from=ead4f3e271fdf6918aef2ede3a7134811147d276&to=bee3d902dd505cf9b11499ba4f230e4e8ae96b92&stat=instructions%3Au
Commit: 57d67bec6d708b8266f09d06d7841739d4f53d5a
https://github.com/llvm/llvm-project/commit/57d67bec6d708b8266f09d06d7841739d4f53d5a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
Log Message:
-----------
[DAG] getNode() - reuse result type instead of calling getValueType again. NFC. (#159381)
We have assertions above confirming VT == N1.getValueType() for INSERT_VECTOR_ELT nodes.
Commit: af39a17a699eb0688782cb5f21412cd391bd44a0
https://github.com/llvm/llvm-project/commit/af39a17a699eb0688782cb5f21412cd391bd44a0
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
Log Message:
-----------
[clang-tidy] Enable `modernize-return-braced-init-list`'s tests in C++11 (#158196)
The check supports C++11, but isn't tested in it.
Commit: 7a098aecb65cc6ca9c877825c9436a51c36ab48d
https://github.com/llvm/llvm-project/commit/7a098aecb65cc6ca9c877825c9436a51c36ab48d
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv32zba.ll
M llvm/test/CodeGen/RISCV/rv64zba.ll
Log Message:
-----------
[RISCV] Implement computeKnownBitsForTargetNode for SHL_ADD (#159105)
Commit: 6922f0e0aca40c9a5d160da89453443f902c2951
https://github.com/llvm/llvm-project/commit/6922f0e0aca40c9a5d160da89453443f902c2951
Author: Gaëtan Bossu <gaetan.bossu at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Remove dead vector.partial.reduce DAGCombine (NFC) (#159362)
This intrinsic is already lowered in SelectionDAGBuilder.cpp into
ISD::PARTIAL_REDUCE_UMLA, so the DAGCombine will never trigger. The
optimisations we were doing are also superseded by generic ones in
DAGCombiner.cpp.
Commit: bf684e0f2f97c56cdea9e36b6dacde48dc5cc269
https://github.com/llvm/llvm-project/commit/bf684e0f2f97c56cdea9e36b6dacde48dc5cc269
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/namelist.cpp
M flang/docs/Extensions.md
Log Message:
-----------
[flang][runtime] Disable namelist storage sequence input when defined (#158708)
The runtime supports a near-universal extension to namelist input that
allows reading a sequence of values into a storage sequence beginning at
an array element, e.g. &NML A(2)=1. 2. 3. / .
Disable this extension when the type of the array has a defined
formatted READ subroutine defined. That defined input procedure may
itself not be using list-directed input, and might not notice a
following slash or new input item name as such.
Fixes https://github.com/llvm/llvm-project/issues/158496.
Commit: 615977a5bc63fc346d35dff68f69a64be6822301
https://github.com/llvm/llvm-project/commit/615977a5bc63fc346d35dff68f69a64be6822301
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/resolve127.f90
Log Message:
-----------
[flang] Fix name resolution bug (#158749)
When the current scope is an implied DO loop nested within a derived
type declaration, it is possible for name resolution to mistakenly
resolve a name to a component rather than to a name in the outer scope.
Fix.
Fixes https://github.com/llvm/llvm-project/issues/158412.
Commit: 2b0f25d9c3fbabce9e53f349ee6775157755e91d
https://github.com/llvm/llvm-project/commit/2b0f25d9c3fbabce9e53f349ee6775157755e91d
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
A flang/test/Semantics/bug158405.f90
Log Message:
-----------
[flang] Fix crash in error recovery (#158750)
Code to attach a procedure's declaration to an error message did not
allow for ENTRY names, which can be in the global scope.
Fixes https://github.com/llvm/llvm-project/issues/158405.
Commit: 8fb02fae9957e828e91b4844bc7514fb319ec5d9
https://github.com/llvm/llvm-project/commit/8fb02fae9957e828e91b4844bc7514fb319ec5d9
Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
A compiler-rt/test/asan/TestCases/Darwin/sandbox-vm-region-recurse.cpp
Log Message:
-----------
[sanitizer-common][Darwin] Improve mach_vm_region_recurse error handling (#158670)
Some sanitizers use mach_vm_region_recurse on macOS to find a
sufficiently large gap to allocate shadow memory. Some sandboxes do not
allow this.
When we get KERN_DENIED, we suggest to the user that it may have been
blocked by the sandbox.
For error codes other than KERN_INVALID_ADDRESS and KERN_DENIED, we make
sure to log a message and not use the address.
rdar://160625998
Commit: deb2861b07e503b729b854edbffdeae7cd4a1aa6
https://github.com/llvm/llvm-project/commit/deb2861b07e503b729b854edbffdeae7cd4a1aa6
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Semantics/runtime-type-info.cpp
Log Message:
-----------
[flang] Allow for equivalent types in non-TBP defined I/O (#158755)
Non-extensible derived type -- those with SEQUENCE or BIND(C) -- are
allowed as monomorphic "dtv" dummy arguments to defined I/O subroutines.
Fortran's type rules admit structural equivalence for these types, and
it's possible that I/O might be attempted in a scope using a
non-extensible type that's equivalent to a non-type-bound generic
interface's specific procedure's "dtv" dummy argument's type, but not
defined in the same place.
Fixes https://github.com/llvm/llvm-project/issues/158673.
This is an IBM Fortran test case that doesn't need to be duplicated in
LLVM.
Commit: 1b777752ef1b4532710ffe443466c743b9d54e98
https://github.com/llvm/llvm-project/commit/1b777752ef1b4532710ffe443466c743b9d54e98
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/unit.cpp
Log Message:
-----------
[flang][runtime] Block bad left tabbing in child I/O (#158758)
Child I/O subroutines are not supposed to use T or TL control edit
descriptors in formats to move the position in the current record to a
point before where it stood at the time of their calls (F'2023
12.6.4.8.3 paragraph 18), but we should also guard against attempts to
do so, using the same means used to prevent such attempts in
non-advancing I/O.
Fixes https://github.com/llvm/llvm-project/issues/158723.
Commit: a20f123bab318ae40950d4713b86d9f18d21bba9
https://github.com/llvm/llvm-project/commit/a20f123bab318ae40950d4713b86d9f18d21bba9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
Log Message:
-----------
[RISCV] Remove unused SDTypeProfile. NFC (#159156)
Commit: fdd989dac0f2bf06501dd115917f403cbfb9dc35
https://github.com/llvm/llvm-project/commit/fdd989dac0f2bf06501dd115917f403cbfb9dc35
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Parser/characters.cpp
A flang/test/Parser/utf8-01.f90
Log Message:
-----------
[flang] Fix UTF-8 minimality checks (#159142)
UTF-8 encodings are required to be minimal, but the checks for
minimality of 3-byte and 4-byte sequences were incorrect. Fix.
Commit: 59c77e7ec1ad65d630df227a9df13b5f78929b7a
https://github.com/llvm/llvm-project/commit/59c77e7ec1ad65d630df227a9df13b5f78929b7a
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/lib/Semantics/check-do-forall.cpp
M flang/lib/Semantics/check-do-forall.h
A flang/test/Semantics/definable07.f90
Log Message:
-----------
[flang] Check I/O implied DO indices better (#159150)
We're not checking READ statement implied DO index variables at all, and
we're not checking them for definability.
Commit: ae46b9ed64d8012435040b4f5924644995f9739f
https://github.com/llvm/llvm-project/commit/ae46b9ed64d8012435040b4f5924644995f9739f
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/namelist.cpp
Log Message:
-----------
[flang][runtime] Fix bug with NAMELIST in child input (#159173)
Don't let "hitSlash_" flag in child input propagate back to the parent
input statement's state when the child input was NAMELIST and the
NAMELIST input has properly consumed the terminal '/' character. (It can
get set if NAMELIST item input ran into it.) The current failure to
reset that flag is causing list-directed parent input to stop early.
Fixes https://github.com/llvm/llvm-project/issues/159127.
Commit: d90a313b5e90771c0956b5fdd2814bc93bf414de
https://github.com/llvm/llvm-project/commit/d90a313b5e90771c0956b5fdd2814bc93bf414de
Author: Ryan Cowan <ryan at holycowman.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization-nan.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmax-legalization.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmaximum.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmin-legalization.ll
M llvm/test/CodeGen/AArch64/vecreduce-fminimum.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize more G_VECREDUCE_FMIN/FMAX operations. (#159082)
Enabling scalarisation for `G_VECREDUCE_FMIN` and `G_VECREDUCE_FMAX`
allows for more instructions to be handled such as `v2fp128`.
Commit: 48f00e81338e637b8210d3320527d4f389d5343b
https://github.com/llvm/llvm-project/commit/48f00e81338e637b8210d3320527d4f389d5343b
Author: Dave Bartolomeo <dave_bartolomeo at apple.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
A clang/lib/StaticAnalyzer/Core/PlistDiagnostics.h
M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
A clang/lib/StaticAnalyzer/Core/SarifDiagnostics.h
A clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-html.c.plist
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-diagnostic-test.c.sarif
A clang/test/Analysis/diagnostics/plist-html.c
M clang/test/Analysis/diagnostics/sarif-multi-diagnostic-test.c
Log Message:
-----------
[analyzer] Prevent triplicate warnings for `sarif-html` (#158112)
When `-analyzer-output=sarif-html` is specified, the analyzer was
reporting each warning to the console three times. This is because the
code to create the diagnostic consumers for `sarif-html` was calling the
code for `sarif` and `html` separately, each of which also creates its
own console text consumer. Then the `sarif-html` code itself created a
third.
The fix is to factor out the creation of the SARIF and HTML consumers
from the text consumers, so `sarif-html` just calls the code to create
the SARIF and HTML consumers without the text consumers.
The same fix applies for `plist-html`.
I've updated one of the SARIF tests to specify `sarif-html`. This test
would fail in the regular `-verify` validation due to the triplicated
warnings, but now passes with my fix.
Fixes #158103
rdar://160383710
Commit: 2ce04d0a410d3c7c6b13b869bd34ec462d285a91
https://github.com/llvm/llvm-project/commit/2ce04d0a410d3c7c6b13b869bd34ec462d285a91
Author: Piotr Fusik <p.fusik at samsung.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Refactor a long `if` into an early `return` (#156410)
Commit: 97dfc09c235d23f8da33dddbb902e9e03eb51b44
https://github.com/llvm/llvm-project/commit/97dfc09c235d23f8da33dddbb902e9e03eb51b44
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/AST/cfi-unchecked-callee.cpp
M clang/test/Frontend/cfi-unchecked-callee-attribute.cpp
Log Message:
-----------
[clang] Do not diagnose conflicting types for cfi_unchecked_callee (#157762)
Clang would complain about conflicting types between a function
declaration and definition if the declaraion was marked with the
attribute but the definition wasn't. Do not treat this as an error. It
should only be necessary to mark the declaration with the attribute.
Commit: c9285166214db4236f26312f68bba91f6437bd6f
https://github.com/llvm/llvm-project/commit/c9285166214db4236f26312f68bba91f6437bd6f
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/SFrame.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSFrame.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCSFrame.cpp
A llvm/test/MC/ELF/cfi-sframe-encoding.s
A llvm/test/MC/ELF/cfi-sframe-fre-cases.s
M llvm/test/MC/ELF/cfi-sframe.s
Log Message:
-----------
[SFrames] Emit and relax FREs (#158154)
This PR emits and relaxes the FREs generated in the previous PR.
After this change llvm emits usable sframe sections that can be
linked with the gnu linker. There are a few remaining cfi directives to
handle before they are generally usable, however.
The output isn't identical with gnu-gas in every case (this code
produces
fewer identical FREs in a row than gas), but I'm reasonably sure that
they are correct regardless. There are even more size optimizations that
can be done later.
Also, while working on the tests, I found a few bugs in older portions
and cleaned those up.
This is a fairly big commit, but I'm not sure how to make it smaller.
Commit: d0bdc5d94502b9fb829bb7cb5f9d2f5bbccdbb2f
https://github.com/llvm/llvm-project/commit/d0bdc5d94502b9fb829bb7cb5f9d2f5bbccdbb2f
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
Log Message:
-----------
[lldb][test] Disable parallel module loading for TestNetBSDCore.py (#159395)
Since #157170 this test has been flakey on several LLDB buildbots. I
suspect it's to do with mutli-threading, there are more details in
#159377.
Disable parallel loading for now so we are not spamming people making
unrelated changes.
Commit: a50c11a71515bacb0ece27fceec52fc120e85710
https://github.com/llvm/llvm-project/commit/a50c11a71515bacb0ece27fceec52fc120e85710
Author: David Green <david.green at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/aarch64-tail-dup-size.ll
M llvm/test/CodeGen/AArch64/global-merge-external.ll
M llvm/test/CodeGen/AArch64/local-bounds-single-trap.ll
Log Message:
-----------
[AArch64] Enable GlobalMerge on externals (#158592)
GlobalMerge has been enabled for minsize for a while, this patch enables
it more generally. In my testing it did not affect performance very
much, especially with the linker relaxations we already perform, but
should help reduce code size a little.
Commit: 5f8bce4900b65b509ca1f9bf0a616409a77ced37
https://github.com/llvm/llvm-project/commit/5f8bce4900b65b509ca1f9bf0a616409a77ced37
Author: David Green <david.green at arm.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/GISelValueTracking.h
Log Message:
-----------
[GlobalISel] Remove virtual from GISelValueTracking computeKnownBitsImpl. (#158558)
As far as I understand, GISelValueTracking::computeKnownBitsImpl does
not need to be virtual, as no-one is specializing / overriding it, which
means it is not necessary for the destructor either.
Commit: 00dc72fa1f328ae52554c5d404460de7381cb7f7
https://github.com/llvm/llvm-project/commit/00dc72fa1f328ae52554c5d404460de7381cb7f7
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[CAS] LLVM_ENABLE_ONDISK_CAS requires `flock` on UNIX (#159207)
As a follow up to #159122, after figure out reason why CAS unit tests
are failing on Solaris, update the CMake configuration to build ondisk
CAS implementation. We now check the existance of `flock` before
enabling the configuration.
In the future, we can find ways to support OnDiskCAS on other platforms
that do not have `flock`. This can techinically be done with a POSIX
compilant file lock but that will put a restriction on the usage of CAS.
Commit: 087f4fc91b9665dced0007f82a38a0ddb0be79fd
https://github.com/llvm/llvm-project/commit/087f4fc91b9665dced0007f82a38a0ddb0be79fd
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
Log Message:
-----------
[HLSL] Remove resource constructors with binding (#157008)
Removes resource constructors that take binding information per proposal update https://github.com/llvm/wg-hlsl/pull/336. The constructors are replaced by static `__createFromBinding` and `__createFromImplicitBinding` methods on the resource class.
Commit: 6fdecaa7709a395c3ad5f47928f0290fbd0446c9
https://github.com/llvm/llvm-project/commit/6fdecaa7709a395c3ad5f47928f0290fbd0446c9
Author: Ingo Müller <ingomueller at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/clang-tidy-config.h.cmake
R clang-tools-extra/clang-tidy/custom/CMakeLists.txt
R clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
R clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
R clang-tools-extra/clang-tidy/custom/QueryCheck.h
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
R clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
R clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/clang-tidy.yml
R clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/incorrect-clang-tidy.yml
R clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
R clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
R clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
R clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/append-clang-tidy.yml
R clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/empty-clang-tidy.yml
R clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/override-clang-tidy.yml
R clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/root-clang-tidy.yml
R clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
R clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
R clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
Log Message:
-----------
Revert "[clang-tidy] support query based custom check" (#159380)
Reverts llvm/llvm-project#131804.
This breaks a build bot; see discussion in the original PR. I could
reproduce this problem locally. The problem is that the original PR
makes use of `registerCustomChecks` in `ClangTidy.cpp` but does not add
the new custom module to the dependencies of the target that builds that
file. Adding the dependency would create a cyclic dependency, so the fix
doesn't seem obvious. See details in the PR description.
Commit: 2bf62e767119369e90670ca5bdd73a54193041e2
https://github.com/llvm/llvm-project/commit/2bf62e767119369e90670ca5bdd73a54193041e2
Author: Ingo Müller <ingomueller at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/BUILD.bazel
Log Message:
-----------
Revert "[clang-tidy] Fix bazel build after #131804 (lazy style)." (#159382)
Reverts llvm/llvm-project#159289.
This is a fix for #131804, which is being reverted.
Commit: 0227b791ff0860dca9c5a79fe229cfb1cb886db1
https://github.com/llvm/llvm-project/commit/0227b791ff0860dca9c5a79fe229cfb1cb886db1
Author: Zhixun Tan <phisiart at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/include/mlir/Analysis/DataFlow/DeadCodeAnalysis.h
M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
Log Message:
-----------
[mlir][nfc] Minor cleanups in DeadCodeAnalysis (#159232)
* Remove `getOperandValuesImpl` since its only used once.
* Extract common logic from
`DeadCodeAnalysis::visitRegion{BranchOperation,Terminator}` into a new
function `DeadCodeAnalysis::visitRegionBranchEdges`.
In particular, both functions do the following:
* Detect live region branch edges (similar to CFGEdge);
* For each edge, mark the successor program point as executable (so that
subsequent program gets visited);
* For each edge, store the information of the predecessor op and
arguments (so that other analyses know what states to join into the
successor program point).
One caveat is that, before this PR, in `visitRegionTerminator`, the
successor program point is only marked as live if it is the start of a
block; after this PR, the successor program point is consistently marked
as live regardless what it is, which makes the behavior equal to
`visitBranchOperation`. This minor fix improves consistency, but at this
point it is still NFC, because the rest of the dataflow analysis
framework only cares about liveness at block level, and the liveness
information in the middle of a block isn't read anyway. This probably
will change once
[early-exits](https://discourse.llvm.org/t/rfc-region-based-control-flow-with-early-exits-in-mlir/76998)
are supported.
Commit: 9e3ec0e371e08eaf3a876072ea8ea4187d86e2e0
https://github.com/llvm/llvm-project/commit/9e3ec0e371e08eaf3a876072ea8ea4187d86e2e0
Author: Michael Klemm <michael.klemm at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang-rt/lib/runtime/misc-intrinsic.cpp
Log Message:
-----------
[Flang][runtime] Fix RENAME intrinsic, remove trailing blanks (#159123)
The RENAME intrinsic did not correctly remove trailing spaces from
filenames. This PR introduces code to remove trailing blanks as
documented by GFortran.
---------
Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>
Commit: 453e4102bd32b892e7fda2aea3f3ef9e9b038580
https://github.com/llvm/llvm-project/commit/453e4102bd32b892e7fda2aea3f3ef9e9b038580
Author: Abid Qadeer <haqadeer at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
A flang/test/Integration/debug-dwarf-flags.f90
A flang/test/Transforms/debug-dwarf-version.fir
Log Message:
-----------
[flang] Lowering support for -gdwarf-N flag. (#159137)
This PR builds on the https://github.com/llvm/llvm-project/pull/158314
and adds the lowering support for `-gdwarf-N` flag. The changes to pass
the information to `AddDebugInfo` pass are mostly mechanical. The
`AddDebugInfo` pass adds `ModuleFlagsOp` in the module which gets
translated to correct llvm metadata during mlir->llvmir translation.
There is minor correction where the version is set to 0 in case no
-debug-version flag is provided. Previously it was set to 2 in this case
due to misreading of clang code.
Commit: 6bbf734ecac35a5a1c3bcb680d20519dfd46da11
https://github.com/llvm/llvm-project/commit/6bbf734ecac35a5a1c3bcb680d20519dfd46da11
Author: Anatoly Trosinenko <atrosinenko at accesssoftek.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
A clang/test/CodeGen/AArch64/ptrauth-fmv.c
A clang/test/CodeGen/AArch64/resolver-attributes.c
Log Message:
-----------
[FMV] Set default attributes on the resolver functions (#141573)
There is a number of attributes that is expected to be set on functions
by default. This patch implements setting more such attributes on the
FMV resolver functions generated by Clang. On AArch64, this makes the
resolver functions use the default PAC and BTI hardening settings.
Commit: 2caf4c1b26878ebfb8112ddfea35777d8017affa
https://github.com/llvm/llvm-project/commit/2caf4c1b26878ebfb8112ddfea35777d8017affa
Author: Ilya Biryukov <ibiryukov at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/QualTypeNames.cpp
M clang/unittests/AST/CMakeLists.txt
A clang/unittests/AST/QualTypeNamesTest.cpp
Log Message:
-----------
[AST] Fix an assertion failure in TypeName::getFullyQualifiedName (#159312)
This popped up during our internal integrates of upstream changes. It
started happening after ba9d1c41c41d568a798e0a8c38a89d294647c28d, which
started using `TemplateSpecializationType` in this place and the code
was not prepared to handle it.
Commit: 4ff113f0aa906b130cd19d2a2a61a477c336c315
https://github.com/llvm/llvm-project/commit/4ff113f0aa906b130cd19d2a2a61a477c336c315
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Process/Utility/HistoryUnwind.cpp
M lldb/source/Plugins/Process/wasm/ProcessWasm.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
Log Message:
-----------
[lldb] Add unreachable after fully covered switches, avoid GCC warnings. NFC. (#159327)
This avoids the following kind of warning with GCC:
warning: control reaches end of non-void function [-Wreturn-type]
Commit: ea8555b33e745c8643b20bbf61414328843b5a62
https://github.com/llvm/llvm-project/commit/ea8555b33e745c8643b20bbf61414328843b5a62
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Avoid warning about comparison of different signedness. NFC. (#159337)
This fixes the following warning when compiled with GCC:
../lib/Target/AArch64/AArch64ISelLowering.cpp: In function ‘bool shouldLowerTailCallStackArg(const llvm::MachineFunction&, const llvm::CCValAssign&, llvm::SDValue, llvm::ISD::ArgFlagsTy, int)’:
../lib/Target/AArch64/AArch64ISelLowering.cpp:9310: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int64_t’ {aka ‘long int’} [-Wsign-compare]
9310 | if (SizeInBits / 8 != MFI.getObjectSize(FI))
|
Commit: 1c5fcb13e0ef82bacdab3b1d0a63a95f29e76306
https://github.com/llvm/llvm-project/commit/1c5fcb13e0ef82bacdab3b1d0a63a95f29e76306
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Host/common/File.cpp
M lldb/source/Host/windows/Host.cpp
Log Message:
-----------
[lldb] Avoid build warnings when building for Windows. NFC. (#159345)
This avoids the following warnings from Clang:
../../lldb/source/Host/windows/Host.cpp:324:3: warning: default label in switch which covers all enumeration values [-Wcovered-switch-default]
324 | default:
| ^
../../lldb/source/Host/common/File.cpp:662:26: warning: cast from 'const void *' to 'char *' drops const qualifier [-Wcast-qual]
662 | .write((char *)buf, num_bytes);
| ^
Commit: 95f213f37c8e1800f7769885a5cd0f0da994a085
https://github.com/llvm/llvm-project/commit/95f213f37c8e1800f7769885a5cd0f0da994a085
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/AST/ExprConstant.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
Log Message:
-----------
[clang] Add unreachable after fully covered switches, avoid GCC warnings. NFC. (#159330)
This avoids the following warnings:
../../clang/lib/AST/ExprConstant.cpp: In member function ‘bool {anonymous}::IntExprEvaluator::VisitBuiltinCallExpr(const clang::CallExpr*, unsigned int)’:
../../clang/lib/AST/ExprConstant.cpp:14104:3: warning: this statement may fall through [-Wimplicit-fallthrough=]
14104 | }
| ^
../../clang/lib/AST/ExprConstant.cpp:14105:3: note: here
14105 | case Builtin::BIstrlen:
| ^~~~
../../clang/lib/Driver/ToolChains/CommonArgs.cpp: In function ‘std::string clang::driver::tools::complexRangeKindToStr(clang::LangOptionsBase::ComplexRangeKind ’:
../../clang/lib/Driver/ToolChains/CommonArgs.cpp:3523:1: warning: control reaches end of non-void function [-Wreturn-type]
3523 | }
| ^
Commit: 6db244a58626e885ba010b3d6813191485e18e90
https://github.com/llvm/llvm-project/commit/6db244a58626e885ba010b3d6813191485e18e90
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M llvm/tools/llvm-lipo/llvm-lipo.cpp
Log Message:
-----------
Add parentheses to clarify operator ordering in asserts. NFC. (#159333)
This avoids the following kind of warning with GCC:
../tools/llvm-lipo/llvm-lipo.cpp: In function ‘void printInfo(llvm::LLVMContext&, llvm::ArrayRef<llvm::object::OwningBinary<llvm::object::Binary> >)’:
../tools/llvm-lipo/llvm-lipo.cpp:464:34: warning: suggest parentheses around ‘& ’ within ‘||’ [-Wparentheses]
464 | Binary->isArchive() && "expected MachO binary");
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
Commit: f0090bacc14db0e262c276670ff0afeadbf4d309
https://github.com/llvm/llvm-project/commit/f0090bacc14db0e262c276670ff0afeadbf4d309
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
Log Message:
-----------
[AMDGPU] Fold copies of constant physical registers into their uses (#154410)
Co-authored-by: Jay Foad <Jay.Foad at amd.com>
Co-authored-by: Jay Foad <Jay.Foad at amd.com>
Commit: 4e3aa76d7f5629e7577f837d0e2397cafd85e6c5
https://github.com/llvm/llvm-project/commit/4e3aa76d7f5629e7577f837d0e2397cafd85e6c5
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvm] Pretty printing for trap intrinsics (#159385)
Commit: e56b479d9f096171287e23169ce23295046535c0
https://github.com/llvm/llvm-project/commit/e56b479d9f096171287e23169ce23295046535c0
Author: Benedikt Lukas Huber <benedikt.huber at tuwien.ac.at>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonCallingConv.td
A llvm/test/CodeGen/Hexagon/vararg-musl.ll
Log Message:
-----------
[Hexagon] Bugfix in VarArg lowering: Special case for musl (#157564)
While debugging #145206 I found that a possible cause for the problem is
the call to printf, which is variadic.
In a musl environment VarArgs are treated like *non* VarArgs.
The handling of this special case was bypassed by the commit
a4f85515c20566a3c059aacd1ee3554b598f33f0.
The reason is that the arguement `TreatAsVarArg` is only set to `true`
in
an *non* musl env. `TreatAsVarArg` determines the result of
`isVarArg()`.
The `CCIfArgVarArg` class only checks each individual
variable, but not whether `isVarArg()` is true.
Without the special case, the unnamed arguments are always passed
on the stack, as is standard calling convention. But with musl
also unnamed arguments can be passed in registers.
Possibly, this fixes #145206.
Commit: 432b58915ad7257c432a403efe194e5033a53ab0
https://github.com/llvm/llvm-project/commit/432b58915ad7257c432a403efe194e5033a53ab0
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/DebugHandlerBase.h
M llvm/include/llvm/CodeGen/LexicalScopes.h
M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfFile.h
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/CodeGen/LexicalScopes.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugVariables.cpp
M llvm/test/CodeGen/X86/dbg-distringtype-uint.ll
A llvm/test/DebugInfo/AArch64/debug-types.ll
A llvm/test/DebugInfo/AArch64/populate-abstract-sp-once.ll
A llvm/test/DebugInfo/Generic/inlined-static-var.ll
M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
M llvm/unittests/CodeGen/LexicalScopesTest.cpp
M llvm/unittests/CodeGen/MFCommon.inc
Log Message:
-----------
[DebugInfo][DwarfDebug] Separate creation and population of abstract subprogram DIEs (#159104)
With this change, construction of abstract subprogram DIEs is split in
two stages/functions:
creation of DIE (in DwarfCompileUnit::getOrCreateAbstractSubprogramDIE)
and its population with children (in
DwarfCompileUnit::constructAbstractSubprogramScopeDIE).
With that, abstract subprograms can be created/referenced from
DwarfDebug::beginModule, which should solve the issue with static local
variables DIE creation of inlined functons with optimized-out
definitions. It fixes https://github.com/llvm/llvm-project/issues/29985.
LexicalScopes class now stores mapping from DISubprograms to their
corresponding llvm::Function's. It is supposed to be built before
processing of each function (so, now LexicalScopes class has a method
for "module initialization" alongside the method for "function
initialization"). It is used by DwarfCompileUnit to determine whether a
DISubprogram needs an abstract DIE before DwarfDebug::beginFunction is
invoked.
DwarfCompileUnit::getOrCreateSubprogramDIE method is added, which can
create an abstract or a concrete DIE for a subprogram. It accepts
llvm::Function* argument to determine whether a concrete DIE must be
created.
This is a temporary fix for
https://github.com/llvm/llvm-project/issues/29985. Ideally, it will be
fixed by moving global variables and types emission to
DwarfDebug::endModule (https://reviews.llvm.org/D144007,
https://reviews.llvm.org/D144005).
Some code proposed by Ellis Hoag <ellis.sparky.hoag at gmail.com> in
https://github.com/llvm/llvm-project/pull/90523 was taken for this
commit.
Commit: f549bb2ddc9c106724d4f443aaf2cbe75d25942d
https://github.com/llvm/llvm-project/commit/f549bb2ddc9c106724d4f443aaf2cbe75d25942d
Author: lntue <lntue at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libc/src/__support/math/rsqrtf16.h
M libc/test/src/math/rsqrtf16_test.cpp
M libc/test/src/math/smoke/rsqrtf16_test.cpp
Log Message:
-----------
[libc][math] Adjust rsqrtf16 exception checks. (#159411)
Commit: def202048586dad7029c9458a39dcb0e3cdb6c33
https://github.com/llvm/llvm-project/commit/def202048586dad7029c9458a39dcb0e3cdb6c33
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
M lldb/source/Plugins/Process/Utility/StopInfoMachException.h
Log Message:
-----------
[lldb] Recognize MTE fault Mach exceptions (#159117)
Recognize an MTE tag fault Mach exception. A tag fault is an error
reported by Arm's Memory Tagging Extension (MTE) when a memory access
attempts to use a pointer with a tag that doesn't match the tag stored
with the memory. LLDB will print the tag and address to make the issue
easier to diagnose.
This was hand tested by debugging an MTE enabled binary on an iPhone 17
running iOS 26.
rdar://113575216
Commit: b241cc9bd581a3e6900d0090f427e9dcc4a19a07
https://github.com/llvm/llvm-project/commit/b241cc9bd581a3e6900d0090f427e9dcc4a19a07
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
M llvm/unittests/ADT/STLExtrasTest.cpp
Log Message:
-----------
[ADT] Fix llvm::concat_iterator for `ValueT == common_base_class *` (#144744)
Fix `llvm::concat_iterator` for the case of `ValueT` being a pointer to
a common base class to which the result of dereferencing any iterator in
`ItersT` can be casted to.
Commit: 3a2eb08de659bf0b87291377cfcf7fa8b8e70bf7
https://github.com/llvm/llvm-project/commit/3a2eb08de659bf0b87291377cfcf7fa8b8e70bf7
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/AST/BUILD.gn
Log Message:
-----------
[gn build] Port 2caf4c1b2687
Commit: e8fd84de173979e0af73f87ed190d35fee6bbae1
https://github.com/llvm/llvm-project/commit/e8fd84de173979e0af73f87ed190d35fee6bbae1
Author: lntue <lntue at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libc/test/src/math/smoke/rsqrtf16_test.cpp
Log Message:
-----------
[libc] Temporarily disable floating point exception check for rsqrtf16 on aarch64. (#159417)
Commit: 4bac9d4911a14c5d444f8a6b94c449e5a2c4a332
https://github.com/llvm/llvm-project/commit/4bac9d4911a14c5d444f8a6b94c449e5a2c4a332
Author: Ying Wang <yingwang1555 at linux.alibaba.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZfbfmin.td
A llvm/test/CodeGen/RISCV/bfloat-convert-half.ll
Log Message:
-----------
[RISCV] Add isel for bitcasting between bfloat and half types (#158828)
There is no RISCV isel for bitcast between f16 and bf16 which will
trigger "cannot select" fatal error.
Co-authored-by: Ying Wang <wy446777 at alibaba-inc.com>
Commit: 2c2fec331d550a894b7af1de4ed492119a7733eb
https://github.com/llvm/llvm-project/commit/2c2fec331d550a894b7af1de4ed492119a7733eb
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Simplify FilterChooser::getIslands() (NFC) (#159218)
Also turn the method into a static function so it can be used without
an instance of the class.
Commit: 6ad0f8e16b223707827efbf2cd0825b793b1db14
https://github.com/llvm/llvm-project/commit/6ad0f8e16b223707827efbf2cd0825b793b1db14
Author: bd1976bris <Ben.Dunbobbin at sony.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/test/Driver/DTLTO/dtlto.c
M clang/test/Driver/DTLTO/ps5-dtlto.c
Log Message:
-----------
[DTLTO][TEST] Make Clang driver tests even more robust (#159418)
Remove XFAILs for llvm-driver. DTLTO is still incompatible with
llvm-driver, but these tests now pass after #159151.
Modify a missed regex to use filename.py (missed in #159151).
Tighten overly greedy regexes to prevent spurious failures.
Commit: aa5558d12cbbb6a039955fcb174129b57d182642
https://github.com/llvm/llvm-project/commit/aa5558d12cbbb6a039955fcb174129b57d182642
Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M mlir/include/mlir/Conversion/ArithToAMDGPU/ArithToAMDGPU.h
M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
M mlir/test/Conversion/ArithToAMDGPU/scaling-extf.mlir
M mlir/test/Conversion/ArithToAMDGPU/scaling-truncf.mlir
Log Message:
-----------
[mlir][ArithToAMDGPU] limit scaling truncf/extf support to gfx950 (#155431)
The current chip guard fails to prevent scaling_extf/truncf patterns
from being applied on gfx1100 which does not have scaling support.
---------
Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>
Commit: 0d989b2aefe8d8f66981f1d39f56ce0214b5de86
https://github.com/llvm/llvm-project/commit/0d989b2aefe8d8f66981f1d39f56ce0214b5de86
Author: Martin Storsjö <martin at martin.st>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
Log Message:
-----------
[clang] Avoid warnings about enum mismatch in ternary expressions. NFC. (#159338)
This avoids the following kind of warning when built with GCC:
../../clang/lib/Sema/SemaStmtAttr.cpp: In function ‘clang::Attr* ProcessStmtAttribute(clang::Sema&, clang::Stmt*, const clang::ParsedAttr&, clang::SourceRange)’:
../../clang/lib/Sema/SemaStmtAttr.cpp:677:30: warning: enumerated mismatch in conditional expression: ‘clang::diag::<unnamed enum>’ vs ‘clang::diag::<unnamed enum>’ [-Wenum-compare]
676 | S.Diag(A.getLoc(), A.isRegularKeywordAttribute()
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
677 | ? diag::err_keyword_not_supported_on_targe
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
678 | : diag::warn_unhandled_ms_attribute_ignore )
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
These enums are non-overlapping, but due they are defined in different
enum scopes due to how they are generated with tablegen.
Commit: 5cb7bf63eda283fb2b079458010467f00d52d78c
https://github.com/llvm/llvm-project/commit/5cb7bf63eda283fb2b079458010467f00d52d78c
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/Support/FormatVariadicDetails.h
Log Message:
-----------
[Support] Simplify has_StreamOperator (NFC) (#159242)
Without this patch, we are doing a roundtrip on types. Specifically,
if decltype(...) is well formed, std::is_same_v evaluates to a boolean
value. We then pass the boolean value to std::enable_if_t, go through
the sizeof(char)/sizeof(double) trick, and then come back to a boolean
value.
This patch simplifies all this by having test() return
std::is_same<...>. The "caller" attaches ::value, so effectively we
are using std::is_same<...>::value when decltype(...) is well formed,
bypassing std::enable_if_t and the sizeof(char)/sizeof(double) trick.
If we did not care about the return type of the shift operator, we
could use llvm::is_detected, but the return type check doesn't allow
us to simplify things that far.
Commit: dffd7f3d9a3294d21205251b986e76ec841cc750
https://github.com/llvm/llvm-project/commit/dffd7f3d9a3294d21205251b986e76ec841cc750
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/tools/llvm-readobj/ELFDumper.cpp
M offload/plugins-nextgen/cuda/src/rtl.cpp
Log Message:
-----------
[LLVM] Fix offload and update CUDA ABI for all SM values (#159354)
Summary:
Turns out the new CUDA ABI now applies retroactively to all the other
SMs if you upgrade to CUDA 13.0. This patch changes the scheme, keeping
all the SM flags consistent but using an offset.
Fixes: https://github.com/llvm/llvm-project/issues/159088
Commit: 7dc8753e8eebdde4e9e42d194c0ba1d56d59e924
https://github.com/llvm/llvm-project/commit/7dc8753e8eebdde4e9e42d194c0ba1d56d59e924
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Exclude LoopVectorize tests introduced in #155301 (#159440)
Commit: f992b5b3715a387ad2ead21f0c20445d95395607
https://github.com/llvm/llvm-project/commit/f992b5b3715a387ad2ead21f0c20445d95395607
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] exclude test introduced in #158328 (#159441)
Commit: e556dc0b232b553d7894a22603d8ee46e78fbd99
https://github.com/llvm/llvm-project/commit/e556dc0b232b553d7894a22603d8ee46e78fbd99
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/cuda-bad-arch.cu
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl
M llvm/docs/AMDGPUUsage.rst
M llvm/include/llvm/BinaryFormat/ELF.h
M llvm/include/llvm/TargetParser/TargetParser.h
M llvm/lib/Object/ELFObjectFile.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNProcessors.td
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
A llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[AMDGPU] Add gfx1251 subtarget (#159430)
Commit: 835d6b3d1754f927cd384d7d4a444f3934a1fb00
https://github.com/llvm/llvm-project/commit/835d6b3d1754f927cd384d7d4a444f3934a1fb00
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] exclude LV test introduced in #155547 (#159443)
Commit: 7fb3a91418df61a81b1386eba3c29bc0df9e0787
https://github.com/llvm/llvm-project/commit/7fb3a91418df61a81b1386eba3c29bc0df9e0787
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/CodeGen/InterleavedAccessPass.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/lib/Transforms/Scalar/LICM.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[PatternMatch] Introduce match functor (NFC) (#159386)
A common idiom is the usage of the PatternMatch match function within a
functional algorithm like all_of. Introduce a match functor to shorten
this idiom.
Co-authored-by: Luke Lau <luke at igalia.com>
Commit: 6c8fcd6089b936d9211faff4ef4b16d1024902a9
https://github.com/llvm/llvm-project/commit/6c8fcd6089b936d9211faff4ef4b16d1024902a9
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/SFrame.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSFrame.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCSFrame.cpp
R llvm/test/MC/ELF/cfi-sframe-encoding.s
R llvm/test/MC/ELF/cfi-sframe-fre-cases.s
M llvm/test/MC/ELF/cfi-sframe.s
Log Message:
-----------
Revert "[SFrames] Emit and relax FREs (#158154)" (#159436)
Breaks some buildbots
This reverts commit c9285166214db4236f26312f68bba91f6437bd6f.
Commit: 96f2ab28fcf010fffc83b7c87707f27bf637fb92
https://github.com/llvm/llvm-project/commit/96f2ab28fcf010fffc83b7c87707f27bf637fb92
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
Log Message:
-----------
[RISCV][NFC] Merge some WriteRes entries in SiFive7 scheduling model (#159448)
NFC.
Commit: 1c4c7bd808e7de02a1d1ec7432333f14de132a95
https://github.com/llvm/llvm-project/commit/1c4c7bd808e7de02a1d1ec7432333f14de132a95
Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/concat-vector-add-combine.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfw-web-simplification.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vw-web-simplification.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
Log Message:
-----------
[SelectionDAG] Deal with POISON for INSERT_VECTOR_ELT/INSERT_SUBVECTOR (#143102)
As reported in https://github.com/llvm/llvm-project/issues/141034
SelectionDAG::getNode had some unexpected
behaviors when trying to create vectors with UNDEF elements. Since
we treat both UNDEF and POISON as undefined (when using isUndef())
we can't just fold away INSERT_VECTOR_ELT/INSERT_SUBVECTOR based on
isUndef(), as that could make the resulting vector more poisonous.
Same kind of bug existed in DAGCombiner::visitINSERT_SUBVECTOR.
Here are some examples:
This fold was done even if vec[idx] was POISON:
INSERT_VECTOR_ELT vec, UNDEF, idx -> vec
This fold was done even if any of vec[idx..idx+size] was POISON:
INSERT_SUBVECTOR vec, UNDEF, idx -> vec
This fold was done even if the elements not extracted from vec could
be POISON:
sub = EXTRACT_SUBVECTOR vec, idx
INSERT_SUBVECTOR UNDEF, sub, idx -> vec
With this patch we avoid such folds unless we can prove that the
result isn't more poisonous when eliminating the insert.
Fixes https://github.com/llvm/llvm-project/issues/141034
Commit: 4a8008ce226b23c829173da2a6b16473ebd6259c
https://github.com/llvm/llvm-project/commit/4a8008ce226b23c829173da2a6b16473ebd6259c
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/always_uniform.ll
Log Message:
-----------
[AMDGPU] Mark cluster_workgroup_id_* intrinsics always uniform (#159439)
Commit: 221f8eef9d807f7fb46defb0f2f1c8067b143a23
https://github.com/llvm/llvm-project/commit/221f8eef9d807f7fb46defb0f2f1c8067b143a23
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-cooperative-atomics.cl
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cooperative.atomic-basic.ll
M llvm/test/Verifier/AMDGPU/llvm.amdgcn.cooperative.atomic.ll
Log Message:
-----------
[AMDGPU] Add gfx1251 runlines to cooperative atomcis tests. NFC (#159437)
Commit: 5f105fe806ec228545e64d3dff6a62a434b61033
https://github.com/llvm/llvm-project/commit/5f105fe806ec228545e64d3dff6a62a434b61033
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[AMDGPU] Update documentation about DWARF registers mapping. NFC (#159447)
Commit: 7cc5989593711ea4d6b5e13879b2ec3ba9a88171
https://github.com/llvm/llvm-project/commit/7cc5989593711ea4d6b5e13879b2ec3ba9a88171
Author: lntue <lntue at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/new.h
M libc/src/__support/big_int.h
M libc/src/__support/math_extras.h
Log Message:
-----------
[libc] Some MSVC compatibility fixes in src/__support. (#159428)
Commit: 6af5b41e4b4e303589ff709efaf783828dc3f75a
https://github.com/llvm/llvm-project/commit/6af5b41e4b4e303589ff709efaf783828dc3f75a
Author: Justin Stitt <justinstitt at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
A clang/test/Frontend/cir-not-built.c
M clang/test/lit.cfg.py
Log Message:
-----------
[CIR] Change unreachable to diagnostic for ill-equipped clang (#152614)
Commit: e86a8e33f9170b5582a33ba133257a61db27dd99
https://github.com/llvm/llvm-project/commit/e86a8e33f9170b5582a33ba133257a61db27dd99
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
Log Message:
-----------
AMDGPU: Set RegTupleAlignUnits on _Lo256_Align2 class (#159383)
Commit: d57aa484e12ae7a76228bca4de01139fdd1f5373
https://github.com/llvm/llvm-project/commit/d57aa484e12ae7a76228bca4de01139fdd1f5373
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Constrain regclass when replacing SGPRs with VGPRs (#159369)
Commit: 1d2007ba6f7bacda8848e35298a1833e79f4abd5
https://github.com/llvm/llvm-project/commit/1d2007ba6f7bacda8848e35298a1833e79f4abd5
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Expression/DWARFExpression.cpp
M lldb/unittests/Expression/CMakeLists.txt
M lldb/unittests/Expression/DWARFExpressionTest.cpp
Log Message:
-----------
[lldb] Fix OP_deref evaluation for large integer results (#159460)
When evaluating any DWARF expression that ended in OP_deref and whose
previous value on the dwarf stack -- the pointer address for the deref
-- was a load address, we were treating the result itself as a pointer,
calling Process:FixCodeAddress(result). This is wrong: there's no
guarantee that the result is a pointer itself.
Commit: 1a4685df13282ae5c1d7dce055a71a7130bfab3c
https://github.com/llvm/llvm-project/commit/1a4685df13282ae5c1d7dce055a71a7130bfab3c
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Expression/DWARFExpression.cpp
M lldb/unittests/Expression/CMakeLists.txt
M lldb/unittests/Expression/DWARFExpressionTest.cpp
Log Message:
-----------
Revert "[lldb] Fix OP_deref evaluation for large integer results (#159460)"
This reverts commit 1d2007ba6f7bacda8848e35298a1833e79f4abd5.
Commit: c744f6168f6f817c7a2dcd493a8e29a0c1f8a3bb
https://github.com/llvm/llvm-project/commit/c744f6168f6f817c7a2dcd493a8e29a0c1f8a3bb
Author: Druzhkov Sergei <serzhdruzhok at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/EventHelper.h
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.h
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] Add memory event (#158437)
This patch adds support for the `memory` event from the
[DAP](https://microsoft.github.io/debug-adapter-protocol/specification#Events_Memory).
After this event is emitted, VS Code refetches the corresponding memory
range and re-renders the memory view. I think this patch and
[PR](https://github.com/llvm/llvm-project/pull/151884) can improve
experience for users who use `setVariable` request.
Commit: bb263f5a4d5be259c0f6110ee2561850d079b37a
https://github.com/llvm/llvm-project/commit/bb263f5a4d5be259c0f6110ee2561850d079b37a
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/examples/IRTransforms/SimplifyCFG.cpp
Log Message:
-----------
[examples] Fix invalid #ifndef LLVM_*_LINK_INTO_TOOLS (#144340)
The setting LLVM_SIMPLIFYCFG_LINK_INTO_TOOLS doesn't exist, it's called
LLVM_EXAMPLEIRTRANSFORMS_LINK_INTO_TOOLS
Commit: 53e9d31fd4d76f9b0792859021e297e7a521477d
https://github.com/llvm/llvm-project/commit/53e9d31fd4d76f9b0792859021e297e7a521477d
Author: cmtice <cmtice at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc] Add missing bazel dependency for __support_math_rsqrt16 (#159473)
Commit: 18420d833d895f0e90d951a6adbef3e4e663e36a
https://github.com/llvm/llvm-project/commit/18420d833d895f0e90d951a6adbef3e4e663e36a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/Target/Target.td
Log Message:
-----------
CodeGen: Do not define LOCAL_ESCAPE with ptr_rc (#158765)
ptr_rc is used to resolve an operand to a register class. This
is not used with a virtual register, but a label so remove
the use.
Commit: d46715aaa0203cc95f3749d386745ae293f0109f
https://github.com/llvm/llvm-project/commit/d46715aaa0203cc95f3749d386745ae293f0109f
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/tools/driver/cc1as_main.cpp
Log Message:
-----------
clang: Emit error if assembler fails to construct subtarget (#159219)
We do not have consistent or good error handling of this situation.
Some tools check for errors, some just assert. The backend has no
proper way of reporting an invalid subtarget specification.
MCSubtargetInfo
currently does unreasonable things like spam warnings to errs, and then
silently proceed in an invalid state. I have a patch which starts
returning
null on some invalid subtargets, but all the tools need to start
erroring
cleanly first. I don't think there is a reliable way to test this today.
It
would have to be an incomplete backend. Ideally we would thread through
some kind of error context from the target to report the reason it's
an invalid subtarget.
Commit: 5cc41936f22da6edd4a85927774df17b1e7c945e
https://github.com/llvm/llvm-project/commit/5cc41936f22da6edd4a85927774df17b1e7c945e
Author: John Harrison <harjohn at google.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/include/lldb/Host/JSONTransport.h
M lldb/include/lldb/Protocol/MCP/Server.h
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
M lldb/source/Protocol/MCP/Server.cpp
M lldb/unittests/Host/JSONTransportTest.cpp
M lldb/unittests/Protocol/ProtocolMCPServerTest.cpp
Log Message:
-----------
[lldb-mcp] Fix servers accepting more than one client. (#158357)
This fixes an issue where the MCP server would stop the main loop after
the first client disconnects.
This moves the MainLoop out of the Server instance and lifts the server
up into the ProtocolServerMCP object instead. This allows us to register
the client with the main loop used to accept and process requests.
Commit: 7f3661128b1e5dda69586afcff99a8f662e4126f
https://github.com/llvm/llvm-project/commit/7f3661128b1e5dda69586afcff99a8f662e4126f
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.inc
M libclc/clc/lib/generic/atomic/clc_atomic_def.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
Log Message:
-----------
[libclc] Remove __attribute__((always_inline)) (#158791)
always_inline doesn't guarantee performance improvement.
Target-specific optimizations decide whether inlining is profitable.
Changes to amdgcn--amdhsa.bc:
* _Z9__clc_logDv16_f and _Z15__clc_remainderDv16_fS_ are not inlined.
* sincos vector function code size has doubled due to apparent
duplication.
Also replace typo _CLC_DECL with _CLC_DEF for function definition.
Commit: 658bb98e00016680a5157a19c453a1c6f1f909db
https://github.com/llvm/llvm-project/commit/658bb98e00016680a5157a19c453a1c6f1f909db
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
Log Message:
-----------
[TableGen] Increase IndexWidth DAGISelMatcherEmitter. (#159479)
RISC-V has over a million bytes in the table.
Commit: bb013a4a220d423e64ecadd3f337b7f95368786d
https://github.com/llvm/llvm-project/commit/bb013a4a220d423e64ecadd3f337b7f95368786d
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M lldb/source/Expression/DWARFExpression.cpp
M lldb/unittests/Expression/CMakeLists.txt
M lldb/unittests/Expression/DWARFExpressionTest.cpp
Log Message:
-----------
Reland "Revert "[lldb] Fix OP_deref evaluation for large integer resu… (#159482)
…lts (#159460)""
The original had an issue on "AArch-less" bots.
Fixed it with some ifdefs around the presence of the AArch ABI plugin.
This reverts commit 1a4685df13282ae5c1d7dce055a71a7130bfab3c.
Commit: aa8b6245182c122127af7c6ac179f9743bca0d78
https://github.com/llvm/llvm-project/commit/aa8b6245182c122127af7c6ac179f9743bca0d78
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Remove unnecessary operand legalization for WMMAs (#159370)
The operand constraints already express this constraint, and
InstrEmitter will respect them.
Commit: 38f2a1cb9b25ef2967661865458d6a919ce82aaa
https://github.com/llvm/llvm-project/commit/38f2a1cb9b25ef2967661865458d6a919ce82aaa
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-uadde-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-uadde-rv64.mir
Log Message:
-----------
[RISCV][GISel] Test legalizing s64 G_UADDE on RV32. And s128 on RV64. NFC (#159412)
Commit: f3c9c6c0c51880109b39411be4e6d742c16210d1
https://github.com/llvm/llvm-project/commit/f3c9c6c0c51880109b39411be4e6d742c16210d1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
Log Message:
-----------
RuntimeLibcalls: Use get_host_tool_path for executables used in benchmark (#153955)
Copied from what the llvm-shlib build is doing.
This reverts commit 0b1b567d9f84e67124c58d69b5aa375357d68c9e.
Commit: 43ec53b8493752669dc24a6e2b6c66c4449a9e76
https://github.com/llvm/llvm-project/commit/43ec53b8493752669dc24a6e2b6c66c4449a9e76
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M clang/lib/Sema/HeuristicResolver.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
Log Message:
-----------
[clang][HeuristicResolver] Default argument heuristic for template template parameters (#156404)
Fixes https://github.com/clangd/clangd/issues/2478
Commit: 44b7abcc75b005ab87e11e2beac155bf0b155992
https://github.com/llvm/llvm-project/commit/44b7abcc75b005ab87e11e2beac155bf0b155992
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
Log Message:
-----------
Revert "RuntimeLibcalls: Use get_host_tool_path for executables used … (#159488)
…in benchmark (#153955)"
This reverts commit f3c9c6c0c51880109b39411be4e6d742c16210d1.
Fails fuschia bot.
Commit: 91c72e8169208099f85d0129f25c3a706265bc19
https://github.com/llvm/llvm-project/commit/91c72e8169208099f85d0129f25c3a706265bc19
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/cdefined.f90
Log Message:
-----------
[flang] Add a warning for CDEFINED declarations that have initializers (#159456)
CDEFINED declarations are similar to "extern" declarations in C. If they
have initializers, this could lead to linker errors. clang warns about
"extern" declarations with initializers. Add similar warning to flang:
```
$ flang -c cdefined.f90 -pedantic
./cdefined.f90:3:57: warning: CDEFINED variable should not have an initializer [-Wcdefined-init]
integer(c_int), bind(C, name='c_global', CDEFINED) :: c = 4
^
```
Commit: 7ca448e47965005b24d107aff6fab4644b8b81b4
https://github.com/llvm/llvm-project/commit/7ca448e47965005b24d107aff6fab4644b8b81b4
Author: hev <wangrui at loongson.cn>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MachineOperand.h
M llvm/lib/CodeGen/MachineOperand.cpp
M llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
M llvm/test/CodeGen/LoongArch/inline-asm-constraint-m.ll
Log Message:
-----------
[LoongArch] Fix MergeBaseOffset for constant pool index operand (#159336)
Fixes #159200
Commit: 1a172b9924948f10f1bd3db07a83fe5e884f7b64
https://github.com/llvm/llvm-project/commit/1a172b9924948f10f1bd3db07a83fe5e884f7b64
Author: woruyu <1214539920 at qq.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ssube-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ssube-rv64.mir
Log Message:
-----------
[RISCV][GISel] Lower G_SSUBE (#157855)
### Summary
Try to implemente Lower G_SSUBE in LegalizerHelper::lower
Commit: c78239e3113986238c4d9012c4d2897f6f5edefd
https://github.com/llvm/llvm-project/commit/c78239e3113986238c4d9012c4d2897f6f5edefd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
Log Message:
-----------
Reapply "RuntimeLibcalls: Use get_host_tool_path for executables used … (#159488) (#159489)
This reverts commit 44b7abcc75b005ab87e11e2beac155bf0b155992.
Add additional if TARGET checks
Commit: e03a7c124d50fa9449a81fe21cc958a18919a4ea
https://github.com/llvm/llvm-project/commit/e03a7c124d50fa9449a81fe21cc958a18919a4ea
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/and-or-icmps.ll
M llvm/test/Transforms/InstCombine/icmp-range.ll
Log Message:
-----------
[InstCombine] Generalize `foldAndOrOfICmpsUsingRanges` to handle more cases. (#158498)
Closes https://github.com/llvm/llvm-project/issues/158326.
Closes https://github.com/llvm/llvm-project/issues/59555.
Proof for `(X & -Pow2) == C -> (X - C) < Pow2`:
https://alive2.llvm.org/ce/z/HMgkuu
Commit: 27f8f9e1f1dcf00df8c338df29193833e6d807f8
https://github.com/llvm/llvm-project/commit/27f8f9e1f1dcf00df8c338df29193833e6d807f8
Author: Boyao Wang <wangboyao at bytedance.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
A llvm/test/CodeGen/RISCV/zibi.ll
Log Message:
-----------
[RISCV][CodeGen] Add CodeGen support of Zibi experimental extension (#146858)
This adds the CodeGen support of Zibi v0.1 experimental extension, which
depends on #127463.
Commit: 8548fa00f1d57c39119a24cfda4ef84232ead7e0
https://github.com/llvm/llvm-project/commit/8548fa00f1d57c39119a24cfda4ef84232ead7e0
Author: Jim Lin <jim at andestech.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
Log Message:
-----------
[RISCV] Match fmaxnum and fminnum to reduction ops. (#159244)
This patch tries to match fmaxnum and fminnum to vector reductions.
Commit: b6e440b3a3f16245ec410e29ff4fcc079e8456ca
https://github.com/llvm/llvm-project/commit/b6e440b3a3f16245ec410e29ff4fcc079e8456ca
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-17 (Wed, 17 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
[libc][bazel] Add BUILD rules for fma and fmaf functions. (#159502)
This change adds the capability to build fma/fmaf with Bazel (fmal,
fmaf128 variants are not implemented yet), and run smoke tests.
BUILD rules for regular MPFR-based tests will be added later, since they
require support for building rand/srand as well, which is missing in
Bazel for now.
Commit: 4663d2521c65827ca22884e12a96ddd437377e31
https://github.com/llvm/llvm-project/commit/4663d2521c65827ca22884e12a96ddd437377e31
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
M llvm/test/Other/loop-pm-invalidation.ll
Log Message:
-----------
[NewPM] Don't preserve BlockFrequencyInfo in FunctionToLoopPassAdaptor (#157888)
Function analyses in LoopStandardAnalysisResults are marked as preserved
by the loop pass adaptor, because LoopAnalysisManagerFunctionProxy
manually invalidates most of them.
However the proxy doesn't invalidate BFI, since it is only preserved on
a "lossy" basis: see https://reviews.llvm.org/D86156 and
https://reviews.llvm.org/D110438.
So any changes to the CFG will result in BFI giving incorrect results,
which is fine for loop passes which deal with the lossiness.
But the loop pass adapator still marks it as preserved, which causes the
lossy result to leak out into function passes.
This causes incorrect results when viewed from e.g. LoopVectorizer,
where an innermost loop header may be reported to have a smaller
frequency than its successors.
This fixes this by dropping the call to preserve, and adds a test with
the -O1 pipeline which shows the effects whenever the CFG is changed and
UseBlockFrequencyInfo is set.
I've also dropped it for BranchProbabilityAnalysis too, but I couldn't
test for it since UseBranchProbabilityInfo always seems to be false?
This may be dead code.
Commit: ac2b51e6ce157b430b3823ebc90def9f1d49d36e
https://github.com/llvm/llvm-project/commit/ac2b51e6ce157b430b3823ebc90def9f1d49d36e
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Serialization/ASTWriter.cpp
A clang/test/Modules/pr133720.cppm
A clang/test/Modules/pr159424.cppm
Log Message:
-----------
[C++20] [Modules] Fix issues with non-exported in-class friend declarations
Close https://github.com/llvm/llvm-project/issues/159424
Close https://github.com/llvm/llvm-project/issues/133720
For in-class friend declaration, it is hard for the serializer to decide
if they are visible to other modules. But luckily, Sema can handle it
perfectly enough. So it is fine to make all of the in-class friend
declaration as generally visible in ASTWriter and let the Sema to make
the final call. This is safe as long as the corresponding class's
visibility are correct.
Commit: 5e1b416472cdf38af49e895079fb0ab282e861c4
https://github.com/llvm/llvm-project/commit/5e1b416472cdf38af49e895079fb0ab282e861c4
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
Log Message:
-----------
[clang-tidy][NFC] Construct map at compile time (#158166)
The important part of this PR is the changes to
`getDurationInverseForScale`. I changed the other `get*ForScale`
functions so that they all follow the same pattern, but those aren't as
important.
Commit: 5f76369997cc4b75c62d34729266ddb20e4f5ef9
https://github.com/llvm/llvm-project/commit/5f76369997cc4b75c62d34729266ddb20e4f5ef9
Author: lntue <lntue at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libc/test/src/math/smoke/FmaTest.h
M utils/bazel/llvm-project-overlay/libc/test/src/math/smoke/BUILD.bazel
Log Message:
-----------
[libc][math] Update test/src/math/smoke/FmaTest.h to not rely on compiler runtime. (#159503)
Commit: 93faaf47f334cb144e8204704ad4fa97d7c1a74d
https://github.com/llvm/llvm-project/commit/93faaf47f334cb144e8204704ad4fa97d7c1a74d
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/AsmParser/Parser.cpp
M mlir/test/IR/invalid.mlir
Log Message:
-----------
[mlir] Expand error message to include unregistered dialects. (#158028)
It is possible to load unregistered dialects, this can result in a
confusing error message. Mark unregistered but loaded dialects.
This is currently done as a merged list as that is most concise but
requires some additional preprocessing (did merge sort given the other
two lists are, could do it shorter and probably at not too much extra
cost if I just used SetVectors - so alternative which uses less code and
may be preferred as performance not critical here).
---------
Co-authored-by: Mehdi Amini <joker.eph at gmail.com>
Commit: ddb9c785cd64835de84ecf394401ad98a6f087cd
https://github.com/llvm/llvm-project/commit/ddb9c785cd64835de84ecf394401ad98a6f087cd
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
Log Message:
-----------
[clang][Expr][NFC] Fix some doc comments (#159504)
Use proper doc comments here instead of regular comments.
Commit: ddf0f6fe91eda2b0986cda405eaba4318ac08ac5
https://github.com/llvm/llvm-project/commit/ddf0f6fe91eda2b0986cda405eaba4318ac08ac5
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/MipsExpandPseudo.cpp
M llvm/test/CodeGen/Mips/atomic-min-max.ll
Log Message:
-----------
Revert "[Mips] Fix atomic min/max generate mips4 instructions when compiling for mips2" (#159495)
Reverts llvm/llvm-project#149983
Commit: 304454980b9122e8037f857c577a7af981c5c884
https://github.com/llvm/llvm-project/commit/304454980b9122e8037f857c577a7af981c5c884
Author: Abhinav Kumar <96587705+kr-2003 at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/unittests/Interpreter/CMakeLists.txt
Log Message:
-----------
[clang-repl] Disable out of process JIT tests on non-unix platforms (#159404)
Co-authored-by: kr-2003 <kumar.kr.abhinav at gmail.com>
Co-authored-by: Anutosh Bhat <andersonbhat491 at gmail.com>
Commit: e7db709eab7999e6bdb40328c091b8432ae416cc
https://github.com/llvm/llvm-project/commit/e7db709eab7999e6bdb40328c091b8432ae416cc
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
Log Message:
-----------
benchmarks: Skip runtime libcalls benchmark for llvm-driver build (#159513)
Apparently if you enable LLVM_TOOL_LLVM_DRIVER_BUILD, many individual
tool binaries are not built and instead create object targets which
are linked into an llvm-driver tool which you need to use instead.
In principle we could reconstruct this command with llvm-driver, but
I can't get a build to complete when I turn this on as a standalone
option.
Commit: c1fca0fa1408a2d2ea24fe43058e53c0d1df82ce
https://github.com/llvm/llvm-project/commit/c1fca0fa1408a2d2ea24fe43058e53c0d1df82ce
Author: Ruoyu Qiu <cabbaken at outlook.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/test/tools/llvm-readobj/ELF/malformed-pt-dynamic.test
M llvm/test/tools/obj2yaml/ELF/program-headers.yaml
M llvm/test/tools/yaml2obj/ELF/program-header-size-offset.yaml
Log Message:
-----------
[llvm][yaml2obj] Modify section header overriding timing (#130942)
yaml2obj should determine the program header offset (and other
properties) based on the intended values rather than the final
`sh_offset` of the section header.
`setProgramHeaderLayout` uses section offsets for determining
`p_offset`. Move section header overriding after
`setProgramHeaderLayout` to prevent `ShOffset` from affecting program
header `p_offset`.
This change adjusts the timing of when the section header is overridden
to ensure that the program headers are set correctly.
More details
[here](https://github.com/llvm/llvm-project/pull/126537#issuecomment-2700421989).
---------
Signed-off-by: Ruoyu Qiu <cabbaken at outlook.com>
Signed-off-by: Ruoyu Qiu <qiuruoyu at xiaomi.com>
Co-authored-by: Ruoyu Qiu <qiuruoyu at xiaomi.com>
Commit: 53c386fa84ecd53c4f881e5a9272984563c7bf1b
https://github.com/llvm/llvm-project/commit/53c386fa84ecd53c4f881e5a9272984563c7bf1b
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/test/Lower/OpenACC/acc-firstprivate-derived-allocatable-component.f90
M flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
M flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
M flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
Log Message:
-----------
[flang][openacc] allocate scalar derived type private copies in recipes (#159374)
Generate alloca in the init region of recipes for scalar derived types.
Note: I will do the array case separately (currently a TODO), and also
deal with private derived type default initialization which is missing
for PRIVATE (not needed for FIRSTPRIVATE since the value is copied from
the privatized variable).
Commit: 9df83619fbfe5b079c50e88df304d27d3fbf4846
https://github.com/llvm/llvm-project/commit/9df83619fbfe5b079c50e88df304d27d3fbf4846
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
A llvm/test/TableGen/GlobalISelEmitter/MatchTableOptimizerInvalidHoisting.td
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
Log Message:
-----------
[GlobalISelMatchTable] Don't hoist C++ predicates over operand recorders (#159329)
The pattern optimizations in GlobalISelMatchTable.cpp can extract common
predicates out of pattern alternatives by putting the pattern alternatives into
a GroupMatcher and moving common predicates into the GroupMatcher's predicate
list. This patch adds checks to avoid hoisting a common predicate before
matchers that record named operands that the predicate uses, which would lead
to segfaults when the imported patterns are matched.
See the added test for a concrete example inspired by the AMDGPU backend.
This fixes a bug encountered in #143881.
Commit: cac389405455659a150caf2402d1541d7009cab0
https://github.com/llvm/llvm-project/commit/cac389405455659a150caf2402d1541d7009cab0
Author: Urvi Rav <94829943+ravurvi20 at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/OpenMP/target_uses_allocators_messages.cpp
Log Message:
-----------
[OpenMP 5.2] New syntax for 'uses_allocators' clause (#157025)
This patch updates the parsing changes to handle the new syntax of the
`uses_allocators` clause as defined in OpenMP 5.2(Section 6.8).
```
// Case 1: Allocator without traits
// < 5.2 → error
// ≥ 5.2 → OK, empty traits set
#pragma omp target teams uses_allocators(cgroup_alloc)
// Case 2: Allocator with traits
// Old syntax (< 5.2):
#pragma omp target teams uses_allocators(cgroup_alloc(cgroup_traits))
// New syntax (≥ 5.2):
#pragma omp target teams uses_allocators(traits(cgroup_traits) : cgroup_alloc)
// Case 3: Multiple allocators
// Old syntax (< 5.2), comma-separated:
#pragma omp target teams uses_allocators(cgroup_alloc(cgroup_traits), aligned_alloc(aligned_traits))
// New syntax (≥ 5.2), semicolon-separated:
#pragma omp target teams uses_allocators(traits(cgroup_traits) : cgroup_alloc; traits(aligned_traits) : aligned_alloc)
```
---------
Co-authored-by: urvi-rav <urvi.rav at hpe.com>
Commit: 1aded51d7478df41c30eba85e0fefaca031f23d2
https://github.com/llvm/llvm-project/commit/1aded51d7478df41c30eba85e0fefaca031f23d2
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[LAA] Prepare to handle diff type sizes (NFC) (#122318)
As depend_diff_types shows, there are several places where the
HasSameSize check can be relaxed for higher analysis precision. As a
first step, return both the source size and the sink size from
getDependenceDistanceStrideAndSize, along with a HasSameSize boolean for
the moment.
Commit: efa7385831503b38b45f8b4eca3e21ba7a261097
https://github.com/llvm/llvm-project/commit/efa7385831503b38b45f8b4eca3e21ba7a261097
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/test/Target/SPIRV/entry-point.mlir
M mlir/test/Target/SPIRV/logical-ops.mlir
M mlir/test/Target/SPIRV/sampled-image.mlir
Log Message:
-----------
[mlir][spirv] Fix entry point, logical ops and sampled image Target tests (#159376)
For the entry point an incorrect combination of execution model and mode
was used as well as arguments were specified for the entry function (the
function should take no arguments). For logical ops the test was failing
as using scalar condition with vector objects are not supported in spv1.0.
Sampled image test was using incorrect *Sampled* and *Dim* values.
Sampled images need to have *Sampled* operand of 0 or 1, but not 2
(`NoSampler`), and `SubpassData` is not allowed.
Commit: d76d0a5139010068aceaedcd3683d9500800ee98
https://github.com/llvm/llvm-project/commit/d76d0a5139010068aceaedcd3683d9500800ee98
Author: David Green <david.green at arm.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/aarch64-known-bits-hadd.ll
M llvm/test/CodeGen/AArch64/aarch64-mulv.ll
M llvm/test/CodeGen/AArch64/arm64-fp-contract-zero.ll
M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
M llvm/test/CodeGen/AArch64/arm64-subvector-extend.ll
M llvm/test/CodeGen/AArch64/arm64-vadd.ll
M llvm/test/CodeGen/AArch64/arm64-vmul.ll
M llvm/test/CodeGen/AArch64/call-rv-marker.ll
M llvm/test/CodeGen/AArch64/callbr-prepare.ll
M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-add.ll
M llvm/test/CodeGen/AArch64/fnmul.ll
M llvm/test/CodeGen/AArch64/fp-intrinsics-fp16.ll
M llvm/test/CodeGen/AArch64/fp-intrinsics-vector.ll
M llvm/test/CodeGen/AArch64/fp-intrinsics.ll
M llvm/test/CodeGen/AArch64/freeze.ll
M llvm/test/CodeGen/AArch64/ldexp-arm64ec.ll
M llvm/test/CodeGen/AArch64/neon-addlv.ll
M llvm/test/CodeGen/AArch64/ptrauth-fpac.ll
M llvm/test/CodeGen/AArch64/remat-const-float-simd.ll
M llvm/test/CodeGen/AArch64/sign-return-address-pauth-lr.ll
M llvm/test/CodeGen/AArch64/sme-avoid-coalescing-locally-streaming.ll
M llvm/test/CodeGen/AArch64/sme-za-exceptions.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-index.ll
M llvm/test/CodeGen/AArch64/sve2-intrinsics-uniform-dsp-undef.ll
M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-pmov-to-pred.ll
M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
M llvm/test/CodeGen/AArch64/vector-lrint.ll
Log Message:
-----------
[AArch64] Regenerate and update a number of check lines. NFC
Commit: 88b5c7435e70702d54772c1ec3864013099edc6c
https://github.com/llvm/llvm-project/commit/88b5c7435e70702d54772c1ec3864013099edc6c
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
Log Message:
-----------
[lldb] Correct 32-bit build failure in StopInfoMachException.cpp (#159523)
uintptr_t is usually a good idea when handling pointers, but lldb has to
handle 64-bit addresses that might be from a remote system, on a 32-bit
system.
So I've changed a few instances here to use addr_t which is 64-bit
everywhere.
Before we got:
https://lab.llvm.org/buildbot/#/builders/18/builds/21247
```
../llvm-project/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp:81:28: error: constexpr variable 'g_mte_tag_mask' must be initialized by a constant expression
81 | static constexpr uintptr_t g_mte_tag_mask = (uintptr_t)0x0f << g_mte_tag_shift;
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../llvm-project/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp:81:61: note: shift count 56 >= width of type 'uintptr_t' (aka 'unsigned int') (32 bits)
81 | static constexpr uintptr_t g_mte_tag_mask = (uintptr_t)0x0f << g_mte_tag_shift;
| ^
1 error generated.
```
Original code added by #159117.
Commit: 18630b0633bd550ad6675e155f42365ae42eb919
https://github.com/llvm/llvm-project/commit/18630b0633bd550ad6675e155f42365ae42eb919
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang] Remove Diag parameter from Expr::EvaluateKnownConstInt (#159512)
If it's truly a known const int, it won't emit any diagnostics anyway.
And if it did, we wouldn't notice because no call site passed something
non-null.
Commit: 98ebb64a1639fa20e2cfa44bc796dfc28db1f691
https://github.com/llvm/llvm-project/commit/98ebb64a1639fa20e2cfa44bc796dfc28db1f691
Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/MIRPrinter.cpp
Log Message:
-----------
[NFC][MIRPrinter] Use `std::move` to avoid copy (#157832)
Commit: a868f28c6e9beecb2b3fbe8acfbe0d272fabd14d
https://github.com/llvm/llvm-project/commit/a868f28c6e9beecb2b3fbe8acfbe0d272fabd14d
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
Log Message:
-----------
[LLDB][ProcessWindows] Set exit status on instance rather than going through all targets (#159308)
When quitting LLDB on Windows while a process was still running, LLDB
would take unusually long to exit. This was due to a temporary deadlock:
The main thread was destroying the processes. In doing so, it iterated
over the target list:
https://github.com/llvm/llvm-project/blob/88c64f76ed2ca226da99b99f60d316b1519fc7d8/lldb/source/Core/Debugger.cpp#L1095-L1098
This locks the list for the whole iteration. Finalizing the process
would eventually lead to `DebuggerThread::StopDebugging`, which
terminates the process and waits for it to exit:
https://github.com/llvm/llvm-project/blob/88c64f76ed2ca226da99b99f60d316b1519fc7d8/lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp#L196
The debugger loop (on a separate thread) would see that the process
exited and call
[`ProcessWindows::OnExitProcess`](https://github.com/llvm/llvm-project/blob/88c64f76ed2ca226da99b99f60d316b1519fc7d8/lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp#L656-L673).
This calls the static function
[`Process::SetProcessExitStatus`](https://github.com/llvm/llvm-project/blob/0a7a7d56fc882653335beba0d1f8ea9f26089c22/lldb/source/Target/Process.cpp#L1098-L1126).
This tries to find the process by its ID from the debugger's target
list. Doing so requires locking the list, so the debugger thread would
then be stuck on
https://github.com/llvm/llvm-project/blob/0a7a7d56fc882653335beba0d1f8ea9f26089c22/lldb/source/Target/TargetList.cpp#L403
After 5s, the main thread would give up waiting. So every exit where the
process was still running would be delayed by about 5s.
Since `ProcessWindows` would find itself when calling
`SetProcessExitStatus`, we can call `SetExitStatus` directly.
This can also make some tests run faster. For example, the DIA PDB tests
previously took 15s to run on my PC (24 jobs) and now take 5s. For all
shell tests, the difference isn't that big (only about 3s), because most
don't run into this and the tests run in parallel.
Commit: 2f6b433f2898f6d431dfefd393c2c7777c740418
https://github.com/llvm/llvm-project/commit/2f6b433f2898f6d431dfefd393c2c7777c740418
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization/linalg-ops-with-patterns.mlir
M mlir/test/Dialect/Linalg/vectorization/linalg-ops.mlir
Log Message:
-----------
[mlir][linalg] Update vectorization logic for linalg.pack (#149156) (#158926)
NOTE: See #149156 for a smilar change for `linalg.unpack`
This PR makes sure that we don't generate unnecessary `tensor.empty`
when vectorizing `linalg.pack`.
To better visualize the changes implemented here, consider this IR:
```mlir
func.func @example(
%src: tensor<64x4xf32>,
%dest: tensor<2x4x16x2xf32>) -> tensor<2x4x16x2xf32> {
%pack = linalg.pack %src
outer_dims_perm = [1, 0]
inner_dims_pos = [0, 1]
inner_tiles = [16, 2]
into %dest : tensor<64x4xf32> -> tensor<2x4x16x2xf32>
return %pack : tensor<2x4x16x2xf32>
}
```
Below is the output after vectorization, BEFORE and AFTER this PR.
BEFORE (note `tensor.empty` and the fact that `%arg1` is not used):
```mlir
func.func @example(%arg0: tensor<64x4xf32>, %arg1: tensor<2x4x16x2xf32>) -> tensor<2x4x16x2xf32> {
%cst = arith.constant 0.000000e+00 : f32
%c0 = arith.constant 0 : index
%0 = vector.transfer_read %arg0[%c0, %c0], %cst {in_bounds = [true, true]} : tensor<64x4xf32>, vector<64x4xf32>
%1 = vector.shape_cast %0 : vector<64x4xf32> to vector<4x16x2x2xf32>
%2 = vector.transpose %1, [2, 0, 1, 3] : vector<4x16x2x2xf32> to vector<2x4x16x2xf32>
%3 = tensor.empty() : tensor<2x4x16x2xf32>
%c0_0 = arith.constant 0 : index
%4 = vector.transfer_write %2, %3[%c0_0, %c0_0, %c0_0, %c0_0] {in_bounds = [true, true, true, true]} : vector<2x4x16x2xf32>, tensor<2x4x16x2xf32>
return %4 : tensor<2x4x16x2xf32>
}
```
AFTER (note that `%arg1` is correctly used):
```mlir
func.func @example(%arg0: tensor<64x4xf32>, %arg1: tensor<2x4x16x2xf32>) -> tensor<2x4x16x2xf32> {
%cst = arith.constant 0.000000e+00 : f32
%c0 = arith.constant 0 : index
%0 = vector.transfer_read %arg0[%c0, %c0], %cst {in_bounds = [true, true]} : tensor<64x4xf32>, vector<64x4xf32>
%1 = vector.shape_cast %0 : vector<64x4xf32> to vector<4x16x2x2xf32>
%2 = vector.transpose %1, [2, 0, 1, 3] : vector<4x16x2x2xf32> to vector<2x4x16x2xf32>
%c0_0 = arith.constant 0 : index
%3 = vector.transfer_write %2, %arg1[%c0_0, %c0_0, %c0_0, %c0_0] {in_bounds = [true, true, true, true]} : vector<2x4x16x2xf32>, tensor<2x4x16x2xf32>
return %3 : tensor<2x4x16x2xf32>
}
```
ADDITIONAL CHANGES:
* Adds missing `CHECK-LABEL` in tests.
* Capitalize LIT test variables names.
Commit: 573b3775e43c7d03d162f868e06253e0ef199bc4
https://github.com/llvm/llvm-project/commit/573b3775e43c7d03d162f868e06253e0ef199bc4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
A llvm/test/CodeGen/X86/avx512-mask-bit-manip.ll
Log Message:
-----------
[X86] Add test coverage for #158649 (#159524)
Demonstrates the failure to keep avx512 mask predicate bit manipulation
patterns (based off the BMI1/BMI2/TBM style patterns) on the predicate
registers - unless the pattern is particularly complex the cost of
transferring to/from gpr outweighs any gains from better scalar
instructions
I've been rather random with the mask types for the tests, I can adjust
later on if there are particular cases of interest
Commit: 85527609a05f64ea7d1ad14f4ae84435ce7efd37
https://github.com/llvm/llvm-project/commit/85527609a05f64ea7d1ad14f4ae84435ce7efd37
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll
Log Message:
-----------
[AMDGPU] kernel-argument-dag-lowering.ll - regenerate test coverage (#159526)
Commit: 0384f6c9dbdcce283088b5207a56b1567590f927
https://github.com/llvm/llvm-project/commit/0384f6c9dbdcce283088b5207a56b1567590f927
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlanPatternMatch] Introduce match functor (NFC) (#159521)
Follow up on 7fb3a91 ([PatternMatch] Introduce match functor) to
introduce the VPlanPatternMatch version of the match functor to shorten
some idioms.
Co-authored-by: Luke Lau <luke at igalia.com>
Commit: c5062d7d6358d73931b4791c77500f476606b003
https://github.com/llvm/llvm-project/commit/c5062d7d6358d73931b4791c77500f476606b003
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/Passes.td
M mlir/lib/Dialect/SCF/IR/SCF.cpp
M mlir/lib/Dialect/SCF/Transforms/CMakeLists.txt
R mlir/lib/Dialect/SCF/Transforms/IfConditionPropagation.cpp
M mlir/test/Dialect/SCF/canonicalize.mlir
R mlir/test/Dialect/SCF/if-cond-prop.mlir
Log Message:
-----------
Revert "[mlir] move if-condition propagation to a standalone pass" (#159535)
Reverts llvm/llvm-project#150278
Multiple post-merge comment remained undressed, and some more
fundamental issues were also reported in #159165
Commit: 4625c8f076a85a4b3799a71b9299424a426a9de3
https://github.com/llvm/llvm-project/commit/4625c8f076a85a4b3799a71b9299424a426a9de3
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/test/Shell/SymbolFile/NativePDB/inline_sites.test
M lldb/test/Shell/SymbolFile/PDB/type-quals.test
Log Message:
-----------
[LLDB][NativePDB] Add modifiers to modified type name (#159296)
When creating LLDB types from `LF_MODIFIER` records, the type name of
the modified type was used. This didn't include the modifiers
(`const`/`volatile`/`__unaligned`). With this PR, they're included.
The DIA plugin had a test for this. That test also assumed that function
types had a name. I removed that check here, because function/procedure
types themselves in PDB don't have a name:
```
0x1015 | LF_ARGLIST [size = 20, hash = 0xBCB6]
0x0074 (int): `int`
0x1013: `int* __restrict`
0x1014: `int& __restrict`
0x1016 | LF_PROCEDURE [size = 16, hash = 0x3F611]
return type = 0x0003 (void), # args = 3, param list = 0x1015
calling conv = cdecl, options = None
```
I assume DIA gets the name from the function symbol itself. In the
native plugin, that name isn't included and multiple functions with the
same signature will reuse one type, whereas DIA would create a new type
for each function. The
[Shell/SymbolFile/PDB/func-symbols.test](https://github.com/llvm/llvm-project/blob/b29c7ded31d81ca47aed0157c543c8b6a0f5866c/lldb/test/Shell/SymbolFile/PDB/func-symbols.test)
also relies on this.
Commit: 8fcb073e125dac1e049244cc6ee948223d267f76
https://github.com/llvm/llvm-project/commit/8fcb073e125dac1e049244cc6ee948223d267f76
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][llvm] Use prop-dict for `ubsantrap` (#159470)
https://github.com/llvm/llvm-project/pull/159385#discussion_r2356872047
Commit: 1dc6bf3ff98c25dd29c6db3407c81d2064bc6977
https://github.com/llvm/llvm-project/commit/1dc6bf3ff98c25dd29c6db3407c81d2064bc6977
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/io/TestDAP_io.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
M lldb/test/API/tools/lldb-dap/step/TestDAP_step.py
M lldb/test/API/tools/lldb-dap/stepInTargets/TestDAP_stepInTargets.py
Log Message:
-----------
[lldb][lldb-dap] Disable all lldb-dap tests on Windows on Arm (#159542)
This reverts the following commits:
a0a82ee19d6f2ff1013407ba4c973bfe5428423f
757bb36a58c7d7151a28c6a5fc7caa2e1f44de87
83b48b13f3a70bf56053e92593270c519859cfd7
b45f1fb377636a34c01e34b89341c97d19975554
d2e153981e62fb2ea781ef456ff744f9893e0733
e2d1bbebbb099c7010a31fad62a9128166ef14a0
71cae12442e7476e6397fd73db05e127bfe2d035
7dd879bdc01297a551196a60bb5a5a90ca4dd1ed
f3b542e3148cfc244f63cb7c987ccf8ebc71942b
Where I had disabled specific tests due to them being flakey on our
Windows on Arm bot.
Clearly this strategy isn't working because
every day I see a new random test failing.
Until something can be done about this, disable
every lldb-dap test on Windows on Arm. The coverage we get is just not
worth spamming contributors
who have nothing to do with lldb-dap.
See #137660
Commit: af66368ff641137bc4bc9818a170d43abfa6df44
https://github.com/llvm/llvm-project/commit/af66368ff641137bc4bc9818a170d43abfa6df44
Author: Ritanya-B-Bharadwaj <ritanya.b.bharadwaj at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTMutationListener.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclOpenMP.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Serialization/ASTCommon.cpp
A clang/test/OpenMP/groupprivate_ast_print.cpp
A clang/test/OpenMP/groupprivate_messages.cpp
M clang/tools/libclang/CIndex.cpp
M flang/include/flang/Lower/OpenMP/Clauses.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[clang] [OpenMP] New OpenMP 6.0 - Parsing and Sema support for groupprivate (#158134)
Commit: 77028d6574acb92a165d4926f8ea1312c71fbfc9
https://github.com/llvm/llvm-project/commit/77028d6574acb92a165d4926f8ea1312c71fbfc9
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/test/lib/Dialect/Linalg/TestLinalgRankReduceContractionOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-use-equals-default in TestLinalgRankReduceContractionOps.cpp (NFC)
Commit: 74090dec4c0df617821dd72febddaa5778816ee8
https://github.com/llvm/llvm-project/commit/74090dec4c0df617821dd72febddaa5778816ee8
Author: Igor Wodiany <igor.wodiany at imgtec.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
M mlir/test/Dialect/SPIRV/IR/types.mlir
Log Message:
-----------
[mlir][spirv] Verify SampledImageType Dim (#159397)
This patches adds check for: "It [ImageType] must not have a Dim of
SubpassData. Additionally, starting with version 1.6, it must not have a
Dim of Buffer." as defined in "3.3.6. Type-Declaration Instructions" of
SPIR-V spec.
Commit: 226b0a9170267cbad13a695fa591cfe6ee56d304
https://github.com/llvm/llvm-project/commit/226b0a9170267cbad13a695fa591cfe6ee56d304
Author: moorabbit <moorabbit at proton.me>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512vlbwintrin.h
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vlbw-builtins.c
Log Message:
-----------
[Headers][X86] Add constexpr support for some AVX512 masked extension/truncation intrinsics. (#158663)
The following AVX[512] intrinsics are now constexpr:
- `_mm512_mask_cvtepi8_epi32`
- `_mm512_maskz_cvtepi8_epi32`
- `_mm512_mask_cvtepi8_epi64`
- `_mm512_maskz_cvtepi8_epi64`
- ` _mm512_mask_cvtepi16_epi32`
- ` _mm512_maskz_cvtepi16_epi32`
- ` _mm512_mask_cvtepi16_epi64`
- ` _mm512_maskz_cvtepi16_epi64`
- ` _mm512_mask_cvtepi32_epi64`
- ` _mm512_maskz_cvtepi32_epi64`
- ` _mm512_mask_cvtepu8_epi32`
- ` _mm512_maskz_cvtepu8_epi32`
- ` _mm512_mask_cvtepu8_epi64`
- ` _mm512_maskz_cvtepu8_epi64`
- ` _mm512_mask_cvtepu16_epi32`
- ` _mm512_maskz_cvtepu16_epi32`
- `_mm512_mask_cvtepu16_epi64`
- `_mm512_maskz_cvtepu16_epi64`
- `_mm512_mask_cvtepu32_epi64`
- `_mm512_maskz_cvtepu32_epi64`
- `_mm512_mask_cvtepi8_epi16`
- `_mm512_maskz_cvtepi8_epi16`
- `_mm512_mask_cvtepu8_epi16`
- `_mm512_maskz_cvtepu8_epi16`
- `_mm_cvtepi16_epi8`
- `_mm256_cvtepi16_epi8`
- `_mm256_mask_cvtepi16_epi8`
- `_mm256_maskz_cvtepi16_epi8`
This PR is part 1 of a series of PRs fixing [#154539](https://github.com/llvm/llvm-project/issues/154539)
Commit: f5ffedf81a1db4f0e149acb1b49cdc940e8c4233
https://github.com/llvm/llvm-project/commit/f5ffedf81a1db4f0e149acb1b49cdc940e8c4233
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Source.h
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
Log Message:
-----------
[clang][bytecode] Pass `SourceInfo` objects by value (#159532)
They are only pointer-sized and copying them is cheaper than taking the
const ref.
Commit: 3defab36b73d60e616f5d6fe0e88e435c3dfc0dc
https://github.com/llvm/llvm-project/commit/3defab36b73d60e616f5d6fe0e88e435c3dfc0dc
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/utils/TableGen/DecoderEmitter.cpp
Log Message:
-----------
[TableGen][DecoderEmitter] Sink repeated code after the switch (NFC) (#159549)
Commit: 15b665b129cf77abd7c51ffb5dc67a21847a37e9
https://github.com/llvm/llvm-project/commit/15b665b129cf77abd7c51ffb5dc67a21847a37e9
Author: sskzakaria <ssskzakaria at proton.me>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Headers/avx512vlfp16intrin.h
M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
Log Message:
-----------
[Headers][X86] Add constexpr support for some AVX512 int to f16 intrinsics. (#159231)
Added constexpr to the remaining intrinsics:
_mm256_cvtepu16_ph
_mm256_mask_cvtepu16_ph
_mm256_maskz_cvtepu16_ph
_mm256_cvtepi32_ph
_mm256_mask_cvtepi32_ph
_mm256_maskz_cvtepi32_ph
_mm256_cvtepu32_ph
_mm256_mask_cvtepu32_ph
_mm256_maskz_cvtepu32_ph
Last part fixing #155798
Commit: f334ac66656ed8c6aca9ff5d6f9422d3b980089a
https://github.com/llvm/llvm-project/commit/f334ac66656ed8c6aca9ff5d6f9422d3b980089a
Author: Ross Brunton <bruntonross at protonmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M offload/tools/deviceinfo/llvm-offload-device-info.cpp
Log Message:
-----------
[Offload] Include product name in llvm-offload-device-info (#159384)
Commit: 0ac13afc2de80badc86f921c02a0c2e3ccb230fa
https://github.com/llvm/llvm-project/commit/0ac13afc2de80badc86f921c02a0c2e3ccb230fa
Author: nerix <nerixdev at outlook.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
Log Message:
-----------
[llvm-pdbutil] Pass filename when formatting `setfile` annotation (#149705)
When dumping a PDB with an inlinesite that had a ChangeFile annotation,
the `Filename` wasn't passed to the format string. This hit an assertion
in debug mode and silently failed in release mode.
Commit: e6c27b37d7ed9a00e33ab0ec84f0160617da5cfc
https://github.com/llvm/llvm-project/commit/e6c27b37d7ed9a00e33ab0ec84f0160617da5cfc
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/spirv-amd-toolchain.c
Log Message:
-----------
[Driver][AMDGPU][HIP][SPIRV] Disable optimizations for AMDGCN SPIR-V (#154765)
SPIR-V specific optimizations can inadvertently remove information that
is important for the AMDGPU BE / break certain code patterns we rely on.
Therefore, for AMDGCN flavoured SPIR-V we disable optimizations over IR,
to ensure that we operate directly on the output of Clang CodeGen when
we finalise.
Commit: f68f3b9a7efdcf1bd56744f3c31056f5d03fb212
https://github.com/llvm/llvm-project/commit/f68f3b9a7efdcf1bd56744f3c31056f5d03fb212
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[VPlan] Allow zero-operand m_VPInstruction (NFC) (#159550)
Commit: 1fc9b344889aeb1f83cfee29f61d844ec927a5cd
https://github.com/llvm/llvm-project/commit/1fc9b344889aeb1f83cfee29f61d844ec927a5cd
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/unittests/Host/posix/SupportTest.cpp
Log Message:
-----------
[lldb][test] Disable a procfile test when threading is not enabled (#159559)
As is done for other procfile tests.
Commit: c379127c123e8346f764630dc659e0871099f2fb
https://github.com/llvm/llvm-project/commit/c379127c123e8346f764630dc659e0871099f2fb
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.h
Log Message:
-----------
[AArch64] Refactor and move common code to `AArch64PrologueEpilogue` (NFCI) (#158920)
This is the final patch in a series reworking the structure of the
prologue/epilogue code. This patch moves some methods from
`AArch64FrameLowering` to `Arch64PrologueEpilogue` as they are only used
by `.emitPrologue/Epilogue`. This includes:
- `shouldCombineCSRLocalStackBump()`
- `shouldCombineCSRLocalStackBumpInEpilogue()`
- `allocateStackSpace()`
- `convertCalleeSaveRestoreToSPPrePostIncDec()`
- `fixupCalleeSaveRestoreStackOffset()`
Common code/methods have been factored into a
`AArch64PrologueEpilogueCommon` base class used by both
`AArch64PrologueEmitter` and `AArch64EpilogueEmitter`.
Finally, some redundant fetching of target classes has been removed from
methods.
Commit: 6acfc029222e244421feb261369b9d1fd388b587
https://github.com/llvm/llvm-project/commit/6acfc029222e244421feb261369b9d1fd388b587
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp
M libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp
Log Message:
-----------
[libc++] XFAIL regex tests that are currently failing on macOS (#159260)
It seems that an OS update changed the localization on macOS. This
XFAILs the tests to make sure the CI is green again until the tests can
be updated.
Commit: 69a07420f999f6f93fb3930ecb104a9d19ba1d65
https://github.com/llvm/llvm-project/commit/69a07420f999f6f93fb3930ecb104a9d19ba1d65
Author: Vladimír Štill <git at vstill.eu>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Interfaces/LoopLikeInterface.td
Log Message:
-----------
[mlir] Fix unqualified APInt in LoopLikeOpInterface tablegen (#159561)
In the recent change adding `getStaticTripCount` there is an omitted
namespace on `APInt` which means the build fails for projects using this
interface outside of `llvm` namespace (or `using llvm::APInt`).
Commit: 868aa5f19cd71e3ff6dfce021f1bd68b4c8248e8
https://github.com/llvm/llvm-project/commit/868aa5f19cd71e3ff6dfce021f1bd68b4c8248e8
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/ext/hash_map
M libcxx/include/map
M libcxx/include/unordered_map
Log Message:
-----------
[libc++] Introduce _LIBCPP_COMPRESSED_ELEMENT (#134253)
We have multiple classes with an empty base optimization that contains
just a single type. This patch introduces `_LIBCPP_COMPRESSED_ELEMENT`
to refactor these classes to avoid having them essentially twice,
reducing the amount of code significantly.
Commit: 4dc0513f6196d0ead5cf3cdfa23752d88b783a9e
https://github.com/llvm/llvm-project/commit/4dc0513f6196d0ead5cf3cdfa23752d88b783a9e
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_enums.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Sync python kinds with Index.h enums (#143264)
Add tests to ensure that all C-enum variants are defined on Python side,
and that the Python bindings do not contain variants not defined on the C side
Commit: 8dae17be2991cd7f0d7fd9aa5aecd064520a14f6
https://github.com/llvm/llvm-project/commit/8dae17be2991cd7f0d7fd9aa5aecd064520a14f6
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libcxx/include/__memory/allocate_at_least.h
M libcxx/include/string
M libcxx/src/string.cpp
Log Message:
-----------
[libc++] Refactor memory allocation in basic_string (#128423)
This patch introduces a string-internal API to make the allocation and
deallocation the long string simpler. Before this we had a lot of code
duplication, so ensuring that things were actually correct was
non-trivial.
Commit: 2ec7959b96ecc85fef3dcb50bab54b9f76f603d4
https://github.com/llvm/llvm-project/commit/2ec7959b96ecc85fef3dcb50bab54b9f76f603d4
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.mir
M llvm/test/CodeGen/AMDGPU/s-barrier.ll
A llvm/test/CodeGen/AMDGPU/waitcnt-kmcnt-scc-different-block.mir
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts] Track SCC. Insert KM_CNT waits for SCC writes. (#157843)
Add new event SCC_WRITE for s_barrier_signal_isfirst and s_barrier_leave,
instructions that write to SCC, counter is KM_CNT.
Also start tracking SCC for reads and writes.
s_barrier_wait on the same barrier guarantees that the SCC write from
s_barrier_signal_isfirst has landed, no need to insert s_wait_kmcnt.
Commit: 72596b333fef81275d281081cfdb63f3f1eb940a
https://github.com/llvm/llvm-project/commit/72596b333fef81275d281081cfdb63f3f1eb940a
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/LoopAnalysisManager.h
M llvm/include/llvm/Transforms/Scalar/LoopPassManager.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Transforms/Scalar/LoopPassManager.cpp
Log Message:
-----------
[NewPM] Remove BranchProbabilityInfo from FunctionToLoopPassAdaptor. NFCI (#159516)
No loop pass seems to use now it after LoopPredication stopped using it
in https://reviews.llvm.org/D111668
Commit: 01b4b2a5b88c4b93d635a5049fa85e569b405982
https://github.com/llvm/llvm-project/commit/01b4b2a5b88c4b93d635a5049fa85e569b405982
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/test/CodeGen/AMDGPU/fold-gep-offset.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-optimizations.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-global.ll
Log Message:
-----------
[AMDGPU][SDAG] Handle ISD::PTRADD in VOP3 patterns (#143881)
This patch mirrors similar patterns for ISD::ADD. The main difference is
that ISD::ADD is commutative, so that a pattern definition for, e.g.,
(add (mul x, y), z), automatically also handles (add z, (mul x, y)).
ISD::PTRADD is not commutative, so we would need to handle these cases
explicitly. This patch only implements (ptradd z, (op x, y)) patterns,
where the nested operation (shift or multiply) is the offset of the
ptradd (i.e., the right operand), since base pointers that are the
result of a shift or multiply seem less likely.
For SWDEV-516125.
Commit: dcd0a2eecca38bbe7813ab1d99639b2d33d9f9ad
https://github.com/llvm/llvm-project/commit/dcd0a2eecca38bbe7813ab1d99639b2d33d9f9ad
Author: Ryan Mansfield <rmansfield at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-size/totals.test
M llvm/tools/llvm-size/llvm-size.cpp
Log Message:
-----------
[llvm-size] Fix --totals option for Mach-O files (#157904)
The --totals option was not working for Mach-O files because the Darwin
segment size calculation skipped the totals accumulation.
---------
Co-authored-by: James Henderson <James.Henderson at sony.com>
Commit: 29620d9b8971c4eea7f5407ca206ba04c6f78d01
https://github.com/llvm/llvm-project/commit/29620d9b8971c4eea7f5407ca206ba04c6f78d01
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpStack.h
Log Message:
-----------
[clang][bytecode] Optimize InterpStack (#159400)
Replace `StackChunk::End` with `StackChunk::Size`, mark the allocating
code paths as unlikely and move `grow()` into the header, which allows
us to template this for the `Size` parameter. Since we only push our
primitive types on the stack and all the sizes are aligned to pointer
size multiples, this only results in a few instantiations.
Commit: 81aaca359b2d5a6529d9620fa4181c4d89c83c7c
https://github.com/llvm/llvm-project/commit/81aaca359b2d5a6529d9620fa4181c4d89c83c7c
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
A clang/utils/TableGen/CIRLoweringEmitter.cpp
M clang/utils/TableGen/CMakeLists.txt
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
Log Message:
-----------
[CIR][NFC] Use TableGen to generate LLVM lowering patterns (#159390)
Most lowering patterns have exactly the same class declaration with
different names and different `matchAndRewrite` implementations, yet
their declaration occupies near 1000 lines of code in `LowerToLLVM.h`,
making this file difficult to read and boring to maintain. In this
patch, I migrate their declarations to be generated from `CIROps.td`
using `clang-tblgen`. Some extra `CIR_Op` TableGen fields are introduced
to help this:
- The `CIR_Op` class now defines a `bit` field `hasLLVMLowering` which
defaults to `true`. If its value is `true`, `clang-tblgen` would
generate an LLVM lowering pattern declaration for the operation.
- Some LLVM lowering patterns has bounded recursion. This could be
enabled by setting the `isLLVMLoweringRecursive` field in a `CIR_Op`
record to `true`.
- Some LLVM lowering patterns have defined additional class members.
They could be listed in the `extraLLVMLoweringPatternDecl` field.
Note that in the incubator we have a similar TableGen code generator
that generates LLVM lowering code for CIR builtin ops which has a
one-to-one correspondence to LLVM dialect operations. This patch does
NOT try to upstream it.
Some additional noticeable changes made by this patch:
- This patch adds the `dataLayout` member to every LLVM lowering pattern
class to make the job easier for a code generator. In the future we
might want to add more members to the lowering patterns, and we will
need to update the code generator to make such changes.
Commit: d62505f77d7aad8379b3d6f54b19bac1758ca1c2
https://github.com/llvm/llvm-project/commit/d62505f77d7aad8379b3d6f54b19bac1758ca1c2
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/utils/TableGen/BUILD.gn
Log Message:
-----------
[gn build] Port 81aaca359b2d
Commit: b405e3249bb64824587e2c5d98751f3d6ce636e0
https://github.com/llvm/llvm-project/commit/b405e3249bb64824587e2c5d98751f3d6ce636e0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/test/CodeGen/RISCV/builtin-cpu-is.c
M llvm/lib/Target/RISCV/RISCVProcessors.td
Log Message:
-----------
[RISCV] Add MVendorID, MArchID, and MImpID for sifive-p550. (#159465)
Commit: 31e43e2fb8634f35a70699f636c49c9d2451e81c
https://github.com/llvm/llvm-project/commit/31e43e2fb8634f35a70699f636c49c9d2451e81c
Author: Raghu Maddhipatla <7686592+raghavendhra at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPEnums.td
M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
M mlir/test/Dialect/OpenMP/invalid.mlir
M mlir/test/Dialect/OpenMP/ops.mlir
Log Message:
-----------
[MLIR] [OpenMP] Modify definition of ALLOCATOR clause to support allocator type defined in user program. (#157399)
Earlier only predefined allocator types mentioned in OpenMP spec were allowed. This patch addresses support for user defined allocator type in allocator clause increasing the scope of allocator clause.
Commit: 4f72abd8404efa3de32188429d5f079ad12264e3
https://github.com/llvm/llvm-project/commit/4f72abd8404efa3de32188429d5f079ad12264e3
Author: Walter Erquinigo <werquinigo at nvidia.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/include/lldb/Host/common/NativeProcessProtocol.h
M lldb/include/lldb/Utility/StringExtractorGDBRemote.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
M lldb/source/Utility/StringExtractorGDBRemote.cpp
M lldb/unittests/tools/lldb-server/tests/LLGSTest.cpp
Log Message:
-----------
[LLDB] Add support for the structured data plugins in lldb-server (#159457)
The LLDB client has support for structured data plugins, but lldb-server
doesn't have corresponding support for it. This patch adds the missing
functionality in LLGS for servers to register their supported plugins
and send corresponding async messages.
Commit: 09e0f1e035b348e2cd694e5f4b943a78cb6ad639
https://github.com/llvm/llvm-project/commit/09e0f1e035b348e2cd694e5f4b943a78cb6ad639
Author: Vy Nguyen <vyng at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
Log Message:
-----------
[LLDB]Fix buffer-over-flow bug introduced in 157170 (#159588)
If `pr_name` is longer than 16, it would be a non-null terminated
string. Assigning it to `std::string m_executable_name` would cause an
overflow read. Instead, just copy the name from thread_data.name.
To repro, run the `elf-core/TestLinuxCore.py` with asan
(Question: why is the new variable needed in the first place? can't the
thread_data.name be used?)
Commit: 902ddda120a55789f761165442a375ca6c916752
https://github.com/llvm/llvm-project/commit/902ddda120a55789f761165442a375ca6c916752
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/test/CodeGen/inline-asm-x86-flag-output.c
A llvm/include/llvm/Transforms/Scalar/DropUnnecessaryAssumes.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/CMakeLists.txt
A llvm/lib/Transforms/Scalar/DropUnnecessaryAssumes.cpp
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
A llvm/test/Transforms/DropUnnecessaryAssumes/basic.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
M llvm/test/Transforms/PhaseOrdering/pr45682.ll
M llvm/test/Transforms/PhaseOrdering/pr45687.ll
M llvm/test/Transforms/PhaseOrdering/pr98799-inline-simplifycfg-ub.ll
Log Message:
-----------
[DropUnnecessaryAssumes] Add pass for dropping assumes (#159403)
This adds a new pass for dropping assumes that are unlikely to be useful
for further optimization.
It works by discarding any assumes whose affected values are one-use
(which implies that they are only used by the assume, i.e. ephemeral).
This pass currently runs at the start of the module optimization
pipeline, that is post-inline and post-link. Before that point, it is
more likely for previously "useless" assumes to become useful again,
e.g. because an additional user of the value is introduced after
inlining + CSE.
Commit: ad68e5d56c0258cf6c20657bebc9ef0ad5b20551
https://github.com/llvm/llvm-project/commit/ad68e5d56c0258cf6c20657bebc9ef0ad5b20551
Author: Scott Linder <scott.linder at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/LiveDebugVariables.cpp
A llvm/test/DebugInfo/X86/live-debug-vars-bundle.mir
Log Message:
-----------
[LiveDebugVariables] Use bundle-aware iterators consistently (#159471)
Most of the pass works in terms of MachineBasicBlock::iterator
(MachineInstrBundleIterator), but here one is constructed from an
arbitrary instruction which may be within a bundle, causing an
assertion.
Commit: 5399aa1f6aa9548ae5f097db2369cfea50bd7987
https://github.com/llvm/llvm-project/commit/5399aa1f6aa9548ae5f097db2369cfea50bd7987
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Transforms/Scalar/BUILD.gn
Log Message:
-----------
[gn build] Port 902ddda120a5
Commit: 9b681ea50d1864c15bb4ff2d302caf4e973c8c71
https://github.com/llvm/llvm-project/commit/9b681ea50d1864c15bb4ff2d302caf4e973c8c71
Author: Elvin Wang <elvin.wang at intel.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/TableGen/intrinsic-attrs.td
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[IntrinsicEmitter] Make AttributesMap bound inclusive (#158714)
This is a minor fix from comment
https://github.com/llvm/llvm-project/pull/157965/files#r2347317186
introduced in #157965.
Commit: adaf5ba6791e7b32dd6dca2f857d588a5304d7e7
https://github.com/llvm/llvm-project/commit/adaf5ba6791e7b32dd6dca2f857d588a5304d7e7
Author: gbMattN <matthew.nagy at sony.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_file.cpp
Log Message:
-----------
Fix possible underflow in ParseAndSetPath (#159389)
If an empty path is passed, the internal_strlen -1 below will loop round
to become uptr max. Adding this check ensures that this would be caught
Commit: b417161ad0b664dd07933e749ba1604af255ba7b
https://github.com/llvm/llvm-project/commit/b417161ad0b664dd07933e749ba1604af255ba7b
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M flang/lib/Lower/ConvertArrayConstructor.cpp
A flang/test/Lower/array-constructor-exactly-once.f90
Log Message:
-----------
[Flang] Wrap array constructors within a hlfir.exactly_once op (#159442)
When inside a WHERE construct, the array constructor should be generated
within an hlfir.exactly_once region.
Fixes #130532
Commit: 6e47bff24d83ea4db74cf548146baf6170aeb9f0
https://github.com/llvm/llvm-project/commit/6e47bff24d83ea4db74cf548146baf6170aeb9f0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs-packed.ll
M llvm/test/CodeGen/AMDGPU/callee-special-input-vgprs.ll
Log Message:
-----------
[AMDGPU] callee-special-input-vgprs.ll / callee-special-input-vgprs-packed.ll - regenerate test coverage (#159587)
Commit: 44a1f7e7cabebff853ccfbbb669f79673a2ec335
https://github.com/llvm/llvm-project/commit/44a1f7e7cabebff853ccfbbb669f79673a2ec335
Author: David Peixotto <peix at meta.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
Log Message:
-----------
[lldb] Fix unsafe map mutation in ProcessElfCore::FindModuleUUID (#159444)
The `ProcessElfCore::FindModuleUUID` function can be called by multiple
threads at the same time when `target.parallel-module-load` is true. We
were using the `operator[]` to lookup the UUID which will mutate the map
when the key is not present. This is unsafe in a multi-threaded contex
so we now use a read-only `find` operation and explicitly return an
invalid UUID when the key is not present.
The `m_uuids` map can follow a create-then-query pattern. It is
populated in the `DoLoadCore` function which looks like it is only
called in a single-threaded context so we do not need extra locking as
long as we keep the other accesses read-only.
Other fixes I considered
* Use a lock to protect access - We don't need to modify the map after
creation so we can allow concurrent read-only access.
* Store the map in a const pointer container to prevent accidental
mutation in other places.
- Only accessed in one place currently so just added a comment.
* Store the UUID in the NT_FILE_Entry after building the mapping
correctly in `UpdateBuildIdForNTFileEntries`. - The map lets us avoid a
linear search in `FindModuleUUID`.
This commit also reverts the temporary workaround from #159395 which
disabled parallel module loading to avoid the test failure.
Fixes #159377
Commit: 6b99a7bbed8ddb0eebcc8b40b91b8d74a8487165
https://github.com/llvm/llvm-project/commit/6b99a7bbed8ddb0eebcc8b40b91b8d74a8487165
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/unittests/Transforms/Vectorize/CMakeLists.txt
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
A llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
Log Message:
-----------
[LV] Provide utility routine to find uncounted exit recipes (#152530)
Splitting out just the recipe finding code from #148626 into a utility
function (along with the extra pattern matchers). Hopefully this makes
reviewing a bit easier.
Added a gtest, since this isn't actually used anywhere yet.
Commit: f7b1b397673a234b62dc4ec68d9afa423fe4f520
https://github.com/llvm/llvm-project/commit/f7b1b397673a234b62dc4ec68d9afa423fe4f520
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/BUILD.gn
Log Message:
-----------
[gn build] Port 6b99a7bbed8d
Commit: 5b2af16be591172cde8203160d1e01f5815a16ac
https://github.com/llvm/llvm-project/commit/5b2af16be591172cde8203160d1e01f5815a16ac
Author: Anchu Rajendran S <asudhaku at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
A flang/test/Driver/fatlto-err.f90
A flang/test/Driver/lto-fatlto.f90
A flang/test/Driver/lto-lld-flags.f90
Log Message:
-----------
[flang][Driver] Enables lto-partitions and fat-lto-object. (#158125)
Commit: ab00172e2c5d799bbe9daff4347e1319b82400ed
https://github.com/llvm/llvm-project/commit/ab00172e2c5d799bbe9daff4347e1319b82400ed
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/DenseMapInfo.h
Log Message:
-----------
[ADT] Simplify isEqualImpl in DenseMapInfo.h (NFC) (#159508)
This patch replaces the recursive implementation of isEqualImpl with a
C++17 fold expression.
Commit: deb95201b2795b74f6269e5b8e126fb2ba8fb380
https://github.com/llvm/llvm-project/commit/deb95201b2795b74f6269e5b8e126fb2ba8fb380
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/ilist_node_options.h
Log Message:
-----------
[ADT] Simplify check_options with std::conjunction (NFC) (#159509)
This patch replaces the recursion with std::conjunction for
readability and brevity.
Commit: d6b7ac830ab4c1b26a1b2eecd15306eccf9cea90
https://github.com/llvm/llvm-project/commit/d6b7ac830ab4c1b26a1b2eecd15306eccf9cea90
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/IR/Metadata.cpp
Log Message:
-----------
[IR] Simplify HasCachedHash with is_detected (NFC) (#159510)
With is_detected, we don't need to implement a SFINAE trick on our own.
Commit: df6dce181c6211c1617ed8724897a67940bd3d9d
https://github.com/llvm/llvm-project/commit/df6dce181c6211c1617ed8724897a67940bd3d9d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/docs/GettingStartedVS.rst
Log Message:
-----------
[llvm] Proofread GettingStartedVS.rst (#159511)
Commit: 97e544f617a10011a5415b39a892de9d1aa88fd0
https://github.com/llvm/llvm-project/commit/97e544f617a10011a5415b39a892de9d1aa88fd0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/ADT/PointerSumType.h
Log Message:
-----------
[ADT] Use C++17 fold expression in PointerSumType (NFC) (#159560)
This patch simplifes the recursive Checker template with a C++17 fold
expression and "inlines" it right into the `static_assert`.
Commit: 24504c366146fd55352dcb695d81259bb5f5eb88
https://github.com/llvm/llvm-project/commit/24504c366146fd55352dcb695d81259bb5f5eb88
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/unittests/CAS/ProgramTest.cpp
Log Message:
-----------
[test][CAS] Fix unused variable warning in unittest (#159594)
Fix unused variable warning blocking AIX bot.
Commit: 8b9c70dcdbc80f01945c6560232717afd228d532
https://github.com/llvm/llvm-project/commit/8b9c70dcdbc80f01945c6560232717afd228d532
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
M mlir/lib/Dialect/Vector/Transforms/CMakeLists.txt
R mlir/lib/Dialect/Vector/Transforms/LowerVectorFromElements.cpp
R mlir/lib/Dialect/Vector/Transforms/LowerVectorToElements.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
M mlir/test/Conversion/ConvertToSPIRV/vector-unroll.mlir
Log Message:
-----------
[mlir] Move vector.{to_elements,from_elements} unrolling to `VectorUnroll.cpp` (#159118)
This PR moves the patterns that unroll vector.to_elements and
vector.from_elements into the file with other vector unrolling
operations. This PR also adds these unrolling patterns into the
`populateVectorUnrollPatterns`. And renames
`populateVectorToElementsLoweringPatterns`
`populateVectorFromElementsLoweringPatterns` to
`populateVectorToElementsUnrollPatterns`
`populateVectorFromElementsUnrollPatterns`.
Commit: 4fabe6ffae885bddc52500ad59bc535febfaa494
https://github.com/llvm/llvm-project/commit/4fabe6ffae885bddc52500ad59bc535febfaa494
Author: Daniel Paoliello <danpao at microsoft.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/test/Transforms/Coroutines/coro-noop-pacbti.ll
M llvm/test/Transforms/Coroutines/coro-noop.ll
Log Message:
-----------
Use internal linkage for __NoopCoro_ResumeDestroy (#159407)
`__NoopCoro_ResumeDestroy` currently has private linkage, which causes
[issues for
Arm64EC](https://github.com/llvm/llvm-project/issues/158341). The
Arm64EC lowering is trying to mangle and add thunks for
`__NoopCoro_ResumeDestroy`, since it sees that it's address is taken
(and, therefore, might be called from x64 code via a function pointer).
MSVC's linker requires that the function be placed in COMDAT (`LNK1361:
non COMDAT symbol '.L#__NoopCoro_ResumeDestroy' in hybrid binary`) which
trips an assert in the verifier (`comdat global value has private
linkage`) and the subsequent linking step fails since the private symbol
isn't in the symbol table.
Since there is no reason to use private linkage for
`__NoopCoro_ResumeDestroy` and other coro related functions have also
been [switched to internal linkage to improve
debugging](https://github.com/llvm/llvm-project/pull/151224), this
change switches to using internal linkage.
Fixes #158341
Commit: b8649098a7fcf598406d8d8b7d68891d1444e9c8
https://github.com/llvm/llvm-project/commit/b8649098a7fcf598406d8d8b7d68891d1444e9c8
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
A mlir/test/Interfaces/TilingInterface/tile-using-custom-op.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
Log Message:
-----------
[mlir][SCF] Allow using a custom operation to generate loops with `mlir::tileUsingSCF`. (#159506)
This change adds an option to use a custom operation to generate the
inter-tile loops during tiling. When the loop type is set to
`scf::SCFTilingOptions::LoopType::CustomOp`, the method
`mlir::tileUsingSCF` provides two callback functions
1. First one to generate the header of the loop.
2. Second one to generate the terminator of the loop.
These methods receive the information needed to generate the
loops/terminator and expect to return information needed to generate
the code for the intra-tile computation. See comments for more
details.
Presently this is adds support only for tiling. Subsequent commits
will update this to add support for fusion as well.
The PR is split into two commits.
1) The first commit is an NFC that just refactors the code (and cleans
up some naming) to make it easier to add the support for custom loop
operations.
2) The second commit adds the support for using a custom loop operation,
as well as a test to exercise this path.
Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>
---------
Signed-off-by: MaheshRavishankar <mahesh.ravishankar at gmail.com>
Commit: 0ade3461ffd78ba91e7abf69ee499d4befe009df
https://github.com/llvm/llvm-project/commit/0ade3461ffd78ba91e7abf69ee499d4befe009df
Author: Aditya Chaudhari <98672108+AdityaC4 at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsX86.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512dq-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vldq-builtins.c
Log Message:
-----------
[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow AVX/AVX512 subvector insertion intrinsics to be used in constexpr #157709 (#158778)
AVX/AVX512 vector insert intrinsics now support constexpr evaluation in both the AST evaluator and bytecode interpreter paths.
FIXES: #157709
Commit: bbcb5f421d062d79e726abdbe5f014a2119a5567
https://github.com/llvm/llvm-project/commit/bbcb5f421d062d79e726abdbe5f014a2119a5567
Author: Alexey Karyakin <akaryaki at quicinc.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
A llvm/test/CodeGen/Hexagon/hvx-vdeal-vpack.ll
Log Message:
-----------
Shuffle patterns to vdeal + vpack (#159464)
Lowering shuffle patterns to vdeal + vpack caused an assertion because
the vdeal parameter value is negative but an unsigned one was expected.
Commit: b4d274f3d97c72364cc29f650423dca7b5b763ed
https://github.com/llvm/llvm-project/commit/b4d274f3d97c72364cc29f650423dca7b5b763ed
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
A clang/test/CIR/CodeGen/opaque.c
Log Message:
-----------
[CIR] Implement OpaqueValueExpr for Complex in C (#158423)
This change adds support for the OpaqueValueExpr for Complex in C
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: 652325866ad7c08e8b457d59cd361bf27ed7698c
https://github.com/llvm/llvm-project/commit/652325866ad7c08e8b457d59cd361bf27ed7698c
Author: Dan Bonachea <dobonachea at lbl.gov>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M flang/docs/ParallelMultiImageFortranRuntime.md
Log Message:
-----------
[flang] Update docs link to latest PRIF Specification (#159233)
The PRIF Committee is pleased to announce the publication of the
Parallel
Runtime Interface for Fortran (PRIF) Specification, Revision 0.6. The
latest
iteration of this specification represents the efforts of a
collaborative
design process involving multiple individuals across several
institutions.
The document is available here: <https://doi.org/10.25344/S4M01X>
The PRIF specification is now governed by a formal PRIF Committee.
For more details, see: <https://go.lbl.gov/prif-governance>
The Committee vote to approve the technical content in this revision
began on 2025-08-22 and concluded on 2025-09-07 with unanimous approval.
The 7-day Committee comment period for cosmetic feedback began on
2025-09-08 and concluded on 2025-09-15 with no comments.
See the Change Log in Section 1 of the document for the list of changes
relative to the prior revision.
Commit: b7f0bb9c29e9d62eb1790d4762b6a939abbd3eca
https://github.com/llvm/llvm-project/commit/b7f0bb9c29e9d62eb1790d4762b6a939abbd3eca
Author: Michael Jones <michaelrj at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/asprintf_test.cpp
M libc/test/src/stdio/vasprintf_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdio/BUILD.bazel
Log Message:
-----------
[libc][bazel] Add (v)asprintf targets and tests (#159476)
Commit: ea48d14faff82beea4181b72986c72a8929a3186
https://github.com/llvm/llvm-project/commit/ea48d14faff82beea4181b72986c72a8929a3186
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/AST.cpp
Log Message:
-----------
[Clangd] [NFC] Fix dereference of null value (#159566)
This is a find from static analysis tool complaining about potential
dereference of `nullptr` for `RD`.
Commit: 6ec08132ee413512c937fb09adaa3344355c1ecb
https://github.com/llvm/llvm-project/commit/6ec08132ee413512c937fb09adaa3344355c1ecb
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-identifier-naming in AMDGPUDialect.cpp (NFC)
Commit: c3383d74a735decd70088f382466b4a7d699f948
https://github.com/llvm/llvm-project/commit/c3383d74a735decd70088f382466b4a7d699f948
Author: Shaoce SUN <sunshaoce at outlook.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVGISel.td
A llvm/test/CodeGen/RISCV/GlobalISel/addiw-sext-inreg.ll
Log Message:
-----------
[RISCV][GlobalIsel] Remove redundant sext.w for ADDIW (#159597)
This is the minimal case generated by clang at `-O0`; I'm not sure if
writing the test this way is appropriate.
Commit: 113357f1a8feb0bfa337bb8a0b9d1d6eaa2d4f0f
https://github.com/llvm/llvm-project/commit/113357f1a8feb0bfa337bb8a0b9d1d6eaa2d4f0f
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb][nfc] Remove no-op calls to Fix*Address (#159586)
The first call, in InitializeNonZerothFrame, is inside a logging branch.
For that, it's better to log the real value instead of the fixed one.
The second call, inside RegisterContextUnwind::ReadFrameAddress, is
computing an address which is then passed to
ReadRegisterValueFromMemory, which boils down to a Process::ReadMemory,
which fixes the address if it wants to. The current variable names are
misleading, making readers believe it is the cfa value itself that is
being passed to Fix*Address; that's not the case. This commit renames
the variable to make this abundantly clear.
Commit: 8616dda07ca28cffd283c489037412842b606d8b
https://github.com/llvm/llvm-project/commit/8616dda07ca28cffd283c489037412842b606d8b
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/complex.cpp
Log Message:
-----------
[CIR] Support type promotion for Scalar unary real & imag ops (#158473)
This change adds support for type promotion in Scalar unary real & imag
ops
Issue: https://github.com/llvm/llvm-project/issues/141365
Commit: b2ad5f5992dc3844caf4b065c57963ae7da98816
https://github.com/llvm/llvm-project/commit/b2ad5f5992dc3844caf4b065c57963ae7da98816
Author: Krishna Pandey <kpandey81930 at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M libc/config/linux/aarch64/entrypoints.txt
M libc/test/UnitTest/FPMatcher.h
M libc/test/src/math/smoke/acoshf16_test.cpp
M libc/test/src/math/smoke/acospif16_test.cpp
M libc/test/src/math/smoke/asinpif16_test.cpp
M libc/test/src/math/smoke/cospif16_test.cpp
M libc/test/src/math/smoke/expf16_test.cpp
M libc/test/src/math/smoke/rsqrtf16_test.cpp
M libc/test/src/math/smoke/sinpif16_test.cpp
Log Message:
-----------
[libc][math] Fix sNaN tests for AArch64 (#159483)
Fixes: #134917,
https://github.com/llvm/llvm-project/pull/100632#issuecomment-2258772681,
#159417
---------
Signed-off-by: Krishna Pandey <kpandey81930 at gmail.com>
Commit: 7200425ac60819c45c901728ed258f7d9f81f2f4
https://github.com/llvm/llvm-project/commit/7200425ac60819c45c901728ed258f7d9f81f2f4
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/unary.cpp
Log Message:
-----------
[CIR] Support type promotion for Scalar unary plus & minus ops (#158486)
Support type promotion for Scalar unary plus & minus ops
Commit: 10516bea2f24c2a247143ec273d01e5449316303
https://github.com/llvm/llvm-project/commit/10516bea2f24c2a247143ec273d01e5449316303
Author: Anchu Rajendran S <asudhaku at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M flang/test/CMakeLists.txt
Log Message:
-----------
[flang]enable llvm-readelf and llvm-objdump (#159607)
https://github.com/llvm/llvm-project/pull/158125 resulted in CI failure
as `llvm-readelf` and `llvm-objcopy` were not listed in flang test deps.
This PR fixes it.
Commit: 5a339b074e625a7e9c92ae98b93a2bb5e1ae9524
https://github.com/llvm/llvm-project/commit/5a339b074e625a7e9c92ae98b93a2bb5e1ae9524
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
Log Message:
-----------
[clang] Only set non-empty bypass to scan VFS (#159605)
Normalizing an empty modules cache path results in an incorrect
non-empty path (the working directory). This PR conditionalizes more
code to avoid this. Tested downstream by swift/llvm-project and the
`DependencyScanningCAPITests.DependencyScanningFSCacheOutOfDate` unit
test.
Commit: b59af5cc9c7f6794a51db189521cad22d97a1605
https://github.com/llvm/llvm-project/commit/b59af5cc9c7f6794a51db189521cad22d97a1605
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-simplify-boolean-expr in LinalgInterfaces.cpp (NFC)
Commit: cda542dd21eb550c58b398f1a47216ed55edf72d
https://github.com/llvm/llvm-project/commit/cda542dd21eb550c58b398f1a47216ed55edf72d
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/Frontend/ASTUnit.h
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/libclang/CIndex.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
Log Message:
-----------
[clang] Pass VFS into `ASTUnit::LoadFromASTFile()` (#159166)
This PR makes the `VFS` parameter to `ASTUnit::LoadFromASTFile()`
required and explicit, rather than silently defaulting to the real file
system. This makes it easy to correctly propagate the fully-configured
VFS and load any input files like the rest of the compiler does.
Commit: a858c9071c25826d7d60af420e4dcf9106bf7cc0
https://github.com/llvm/llvm-project/commit/a858c9071c25826d7d60af420e4dcf9106bf7cc0
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for readability-simplify-boolean-expr in InlinerInterfaceImpl.cpp (NFC)
Commit: 50b9ca4ddaea08fc72b7dcba1390c1689eed9a17
https://github.com/llvm/llvm-project/commit/50b9ca4ddaea08fc72b7dcba1390c1689eed9a17
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/blend-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/call-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
M llvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fixed-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-gaps.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave_count_for_known_tc.ll
M llvm/test/Transforms/LoopVectorize/AArch64/invariant-replicate-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/licm-calls.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/mul-simplification.ll
M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_test1_no_explicit_vect_width.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr151664-cost-hoisted-vector-scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
M llvm/test/Transforms/LoopVectorize/AArch64/pr73894.ll
M llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
M llvm/test/Transforms/LoopVectorize/AArch64/strict-fadd.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-overflow-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/synthesize-mask-for-call.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-fold-uniform-memops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-constant-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-derived-ivs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-metadata.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-remove-loop-region.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-unroll.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-insertelt.ll
M llvm/test/Transforms/LoopVectorize/AArch64/widen-call-with-intrinsic-or-libfunc.ll
M llvm/test/Transforms/LoopVectorize/AArch64/wider-VF-for-callinst.ll
M llvm/test/Transforms/LoopVectorize/AMDGPU/packed-math.ll
M llvm/test/Transforms/LoopVectorize/ARM/active-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-vmla.ll
M llvm/test/Transforms/LoopVectorize/ARM/optsize_minsize.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-loop-hint.ll
M llvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
M llvm/test/Transforms/LoopVectorize/LoongArch/defaults.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-vfabi-attr.ll
M llvm/test/Transforms/LoopVectorize/RISCV/bf16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/defaults.ll
M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
M llvm/test/Transforms/LoopVectorize/RISCV/f16.ll
M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-masked-access.ll
M llvm/test/Transforms/LoopVectorize/RISCV/lmul.ll
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
M llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-basics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
M llvm/test/Transforms/LoopVectorize/RISCV/select-cmp-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-bin-unary-ops-args.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-call-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-div.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-intermediate-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv32.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-known-no-overflow.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-masked-loadstore.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-ordered-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-safe-dep-distance.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vector-loop-backedge-elimination-with-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/vf-will-not-generate-any-vector-insts.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/addressing.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/predicated-first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/SystemZ/scalar-steps-with-users-demanding-all-lanes-and-first-lane-only.ll
M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-conditional-branches.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-constant-known-via-scev.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-inbounds-flags-for-reverse-vector-pointer.ll
M llvm/test/Transforms/LoopVectorize/X86/drop-poison-generating-flags.ll
M llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/X86/fminimumnum.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
M llvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll
M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-hoist-load-across-store.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaved-accesses-sink-store-across-load.ll
M llvm/test/Transforms/LoopVectorize/X86/interleaving.ll
M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
M llvm/test/Transforms/LoopVectorize/X86/optsize.ll
M llvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
M llvm/test/Transforms/LoopVectorize/X86/parallel-loops.ll
M llvm/test/Transforms/LoopVectorize/X86/pr109581-unused-blend.ll
M llvm/test/Transforms/LoopVectorize/X86/pr131359-dead-for-splice.ll
M llvm/test/Transforms/LoopVectorize/X86/pr141968-instsimplifyfolder.ll
M llvm/test/Transforms/LoopVectorize/X86/pr34438.ll
M llvm/test/Transforms/LoopVectorize/X86/pr36524.ll
M llvm/test/Transforms/LoopVectorize/X86/pr51366-sunk-instruction-used-outside-of-loop.ll
M llvm/test/Transforms/LoopVectorize/X86/pr81872.ll
M llvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
M llvm/test/Transforms/LoopVectorize/X86/replicate-uniform-call.ll
M llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
M llvm/test/Transforms/LoopVectorize/X86/small-size.ll
M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
M llvm/test/Transforms/LoopVectorize/X86/tail_loop_folding.ll
M llvm/test/Transforms/LoopVectorize/X86/uniform_load.ll
M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
M llvm/test/Transforms/LoopVectorize/X86/vectorize-interleaved-accesses-gap.ll
M llvm/test/Transforms/LoopVectorize/X86/vplan-native-inner-loop-only.ll
M llvm/test/Transforms/LoopVectorize/X86/widened-value-used-as-scalar-and-first-lane.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
M llvm/test/Transforms/LoopVectorize/assume.ll
M llvm/test/Transforms/LoopVectorize/blend-in-header.ll
M llvm/test/Transforms/LoopVectorize/bsd_regex.ll
M llvm/test/Transforms/LoopVectorize/check-prof-info.ll
M llvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
M llvm/test/Transforms/LoopVectorize/constantfolder-infer-correct-gepty.ll
M llvm/test/Transforms/LoopVectorize/constantfolder.ll
M llvm/test/Transforms/LoopVectorize/create-induction-resume.ll
M llvm/test/Transforms/LoopVectorize/dbg-outer-loop-vect.ll
M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size-needs-loop-guards.ll
M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-const-TC.ll
M llvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
M llvm/test/Transforms/LoopVectorize/expand-scev-after-invoke.ll
M llvm/test/Transforms/LoopVectorize/extract-from-end-vector-constant.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-dead-instructions.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-multiply-recurrences.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
M llvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
M llvm/test/Transforms/LoopVectorize/flags.ll
M llvm/test/Transforms/LoopVectorize/float-induction.ll
M llvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
M llvm/test/Transforms/LoopVectorize/if-pred-stores.ll
M llvm/test/Transforms/LoopVectorize/if-reduction.ll
M llvm/test/Transforms/LoopVectorize/induction-multiple-uses-in-same-instruction.ll
M llvm/test/Transforms/LoopVectorize/induction-step.ll
M llvm/test/Transforms/LoopVectorize/induction.ll
M llvm/test/Transforms/LoopVectorize/instruction-only-used-outside-of-loop.ll
M llvm/test/Transforms/LoopVectorize/interleave-with-i65-induction.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-different-insert-position.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-gep-nowrap-flags.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-metadata.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses-requiring-scev-predicates.ll
M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
M llvm/test/Transforms/LoopVectorize/invalidate-scev-at-scope-after-vectorization.ll
M llvm/test/Transforms/LoopVectorize/is_fpclass.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
M llvm/test/Transforms/LoopVectorize/iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
M llvm/test/Transforms/LoopVectorize/lcssa-crashes.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-neg-off.ll
M llvm/test/Transforms/LoopVectorize/load-deref-pred-poison-ub-ops-feeding-pointer.ll
M llvm/test/Transforms/LoopVectorize/load-of-struct-deref-pred.ll
M llvm/test/Transforms/LoopVectorize/loop-form.ll
M llvm/test/Transforms/LoopVectorize/make-followup-loop-id.ll
M llvm/test/Transforms/LoopVectorize/memdep-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/metadata.ll
M llvm/test/Transforms/LoopVectorize/min-trip-count-known-via-scev.ll
M llvm/test/Transforms/LoopVectorize/minimumnum-maximumnum-reductions.ll
M llvm/test/Transforms/LoopVectorize/miniters.ll
M llvm/test/Transforms/LoopVectorize/multiple-address-spaces.ll
M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar.ll
M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
M llvm/test/Transforms/LoopVectorize/non-const-n.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
M llvm/test/Transforms/LoopVectorize/outer-loop-wide-phis.ll
M llvm/test/Transforms/LoopVectorize/outer_loop_test1.ll
M llvm/test/Transforms/LoopVectorize/phi-cost.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction-index-width-smaller-than-iv-width.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction-unroll.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/pr154045-dont-fold-extractelement-livein.ll
M llvm/test/Transforms/LoopVectorize/pr36983-multiple-lcssa.ll
M llvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
M llvm/test/Transforms/LoopVectorize/pr44488-predication.ll
M llvm/test/Transforms/LoopVectorize/pr45525.ll
M llvm/test/Transforms/LoopVectorize/pr45679-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
M llvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
M llvm/test/Transforms/LoopVectorize/pr50686.ll
M llvm/test/Transforms/LoopVectorize/pr51614-fold-tail-by-masking.ll
M llvm/test/Transforms/LoopVectorize/pr55167-fold-tail-live-out.ll
M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/pr66616.ll
M llvm/test/Transforms/LoopVectorize/predicate-switch.ll
M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-min-max.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
M llvm/test/Transforms/LoopVectorize/reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reduction-predselect.ll
M llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll
M llvm/test/Transforms/LoopVectorize/reduction.ll
M llvm/test/Transforms/LoopVectorize/remarks-reduction-inloop.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll
M llvm/test/Transforms/LoopVectorize/runtime-check.ll
M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
M llvm/test/Transforms/LoopVectorize/select-neg-cond.ll
M llvm/test/Transforms/LoopVectorize/select-reduction-start-value-may-be-undef-or-poison.ll
M llvm/test/Transforms/LoopVectorize/select-reduction.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-cond-poison.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
M llvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll
M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/strided-accesses-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/struct-return-replicate.ll
M llvm/test/Transforms/LoopVectorize/struct-return.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-alloca-in-loop.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-optimize-vector-induction-width.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-switch.ll
M llvm/test/Transforms/LoopVectorize/tail-folding-vectorization-factor-1.ll
M llvm/test/Transforms/LoopVectorize/trunc-extended-icmps.ll
M llvm/test/Transforms/LoopVectorize/trunc-loads-p16.ll
M llvm/test/Transforms/LoopVectorize/trunc-reductions.ll
M llvm/test/Transforms/LoopVectorize/trunc-shifts.ll
M llvm/test/Transforms/LoopVectorize/uitofp-preserve-nneg.ll
M llvm/test/Transforms/LoopVectorize/uniform-blend.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_and.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_lshr.ll
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
M llvm/test/Transforms/LoopVectorize/unroll_nonlatch.ll
M llvm/test/Transforms/LoopVectorize/unused-blend-mask-for-first-operand.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-branch-weights.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-outside-iv-users.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-before-execute.ll
M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
M llvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
M llvm/test/Transforms/LoopVectorize/vplan-widen-select-instruction.ll
M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll
M llvm/test/Transforms/LoopVectorize/widen-intrinsic.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reduction-known-first-value.ll
M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
Log Message:
-----------
[VPlan] Simplify Plan's entry in removeBranchOnConst. (#154510)
After https://github.com/llvm/llvm-project/pull/153643, there may be a
BranchOnCond with constant condition in the entry block.
Simplify those in removeBranchOnConst. This removes a number of
redundant conditional branch from entry blocks.
In some cases, it may also make the original scalar loop unreachable,
because we know it will never execute. In that case, we need to remove
the loop from LoopInfo, because all unreachable blocks may dominate each
other, making LoopInfo invalid. In those cases, we can also completely
remove the loop, for which I'll share a follow-up patch.
Depends on https://github.com/llvm/llvm-project/pull/153643.
PR: https://github.com/llvm/llvm-project/pull/154510
Commit: 36692aa7a40183c1b43358288c83f5cc08abf8f1
https://github.com/llvm/llvm-project/commit/36692aa7a40183c1b43358288c83f5cc08abf8f1
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
Log Message:
-----------
[CIR] Implement Logical OR for VectorType (#158668)
This change adds support for local OR op for VectorType
Issue #136487
Commit: d2ba0da7959d545aefd321466c738345c633c09f
https://github.com/llvm/llvm-project/commit/d2ba0da7959d545aefd321466c738345c633c09f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Tools/PDLL/ODS/Context.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in Context.cpp (NFC)
Commit: f1ba44f50a07fbc559e3c40308623dd6b6ab2c47
https://github.com/llvm/llvm-project/commit/f1ba44f50a07fbc559e3c40308623dd6b6ab2c47
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
Log Message:
-----------
[VPlan] Strip dead code in cst live-in match (NFC) (#159589)
A live-in constant can never be of vector type.
Commit: e19fa930ca838715028c00c234874d1db4f93154
https://github.com/llvm/llvm-project/commit/e19fa930ca838715028c00c234874d1db4f93154
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Quant/IR/TypeParser.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-else-after-return in TypeParser.cpp (NFC)
Commit: 70a7ffdc290ab466c2394d22f38c0368ce5266d1
https://github.com/llvm/llvm-project/commit/70a7ffdc290ab466c2394d22f38c0368ce5266d1
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
Log Message:
-----------
[LV] Add missing test cover for replicating load/store costs.
Commit: 53a18ebdcff6ac7584fe5cb27aa651746f39b3d2
https://github.com/llvm/llvm-project/commit/53a18ebdcff6ac7584fe5cb27aa651746f39b3d2
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in VectorUtils.cpp (NFC)
Commit: 3ad40d1535809f354b39e410231da4eea0a6eea4
https://github.com/llvm/llvm-project/commit/3ad40d1535809f354b39e410231da4eea0a6eea4
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
Log Message:
-----------
[AArch64] Use getNegative instead of manually sub with 0 (NFC) (#158511)
Commit: 3e0c58be49c81931daf285c0973db5fb763e51e4
https://github.com/llvm/llvm-project/commit/3e0c58be49c81931daf285c0973db5fb763e51e4
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/IR/Metadata.cpp
Log Message:
-----------
Revert "[IR] Simplify HasCachedHash with is_detected (NFC) (#159510)" (#159622)
This reverts commit d6b7ac830ab4c1b26a1b2eecd15306eccf9cea90. Build
breakages reported on the PR hint at not working with certain versions
of the host compiler.
Commit: 8c41859a21a4d0cfda164cc58f4a5336dbcd30d1
https://github.com/llvm/llvm-project/commit/8c41859a21a4d0cfda164cc58f4a5336dbcd30d1
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/non-sched-inst-has-copyable-before.ll
Log Message:
-----------
[SLP]Clear the operands deps of non-schedulable nodes, if previously all operands were copyable
If all operands of the non-schedulable nodes were previously only
copyables, need to clear the dependencies of the original schedule data
for such copyable operands and recalculate them to correctly handle
number of dependecies.
Fixes #159406
Commit: 9628061e055c9f695ff80f9a74e4f6e524b34993
https://github.com/llvm/llvm-project/commit/9628061e055c9f695ff80f9a74e4f6e524b34993
Author: Muzammil <55665739+Muzammiluddin-Syed-ECE at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
M mlir/lib/Dialect/AMDGPU/IR/CMakeLists.txt
M mlir/test/Dialect/AMDGPU/canonicalize.mlir
Log Message:
-----------
[mlir][AMDGPU] Add canonicalization pattern to pack scales for ScaledMFMAOp (#155951)
The ScaledMFMAOp accepts scales as a vector of 4 bytes
(`vector<4xf8E8M0FNU>`) that can be stored in a single register with a
particular scale accessed using the `OpSel` attribute. Currently, we
only use one byte in this 4-byte vector, resulting in 3 wasted
registers.
This is fixed by identifying when single byte extractions are performed
and rewriting them into extractions of 4-byte vectors.
Example:
```
%unit = vector.extract %ScaleSrc[offsets] : f8E8M0FNU from vector<?x?x?xf8E8M0FNU>
%scale = vector.insert %unit, ... : f8E8M0FNU into vector<4xf8E8M0FNU>
amdgpu.scaled_mfma(%scale[0] * ...
```
to
```
%reshaped = vector.shape_cast %ScaleSrc : vector<?x?x?xf8E8M0FNU> to vector<?x4xf8E8M0FNU>
%scale = vector.extract %reshaped[?] : vector<4xf8E8M0FNU> from vector<?x4xf8E8M0FNU>
amdgpu.scaled_mfma(%scale[0-3] * ...
```
---------
Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>
Commit: de9a50a8a4151e194559b38a7bd56a9aa5bd2539
https://github.com/llvm/llvm-project/commit/de9a50a8a4151e194559b38a7bd56a9aa5bd2539
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #155951: amdgpu dialect deps (#159633)
Commit: e8311f8ebc18066e774832b9c594697f28b6ca60
https://github.com/llvm/llvm-project/commit/e8311f8ebc18066e774832b9c594697f28b6ca60
Author: Qiu Chaofan <qcf at ecnelises.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
A llvm/test/DebugInfo/X86/split-dwarf-inline.ll
Log Message:
-----------
[DebugInfo] Emit skeleton to avoid mismatching inlining flags (#153568)
This actually reverts 418120556398c01550d42500d56e6d328290185b.
The original commit omits unit with all symbols inlined into current
one, which leads to crash when a module using split-dwarf inlined a
function from another module with mismatched split-dwarf-inlining
option. This revert guarantees that DIEs are created in both DWO and the
skeleton sections whenever split-dwarf is active.
Commit: 3fe85ca4e024df9330f263a99a2552952a5520bc
https://github.com/llvm/llvm-project/commit/3fe85ca4e024df9330f263a99a2552952a5520bc
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
Log Message:
-----------
[clang] check constant template parameters in dependent contexts (#159463)
This patch makes sure constant template parameters are checked even in
dependent contexts.
This can for example diagnose narrowings earlier, but this is permitted
as these templates would have no valid instantiations.
Commit: a3f901f70a028bf369586b6ab561371a63922ce0
https://github.com/llvm/llvm-project/commit/a3f901f70a028bf369586b6ab561371a63922ce0
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
A llvm/test/tools/llvm-mca/RISCV/SiFive7/scalar-load-store.s
Log Message:
-----------
[RISCV] Update floating point load latency in SiFive7 scheduling model (#159462)
The latency of floating point loads in SiFive7 should be the same as
their integer counterparts.
Co-authored-by: Michael Maitland <michaeltmaitland at gmail.com>
Commit: 1cee4fa968f985489a50b88b66bd392c35f0870e
https://github.com/llvm/llvm-project/commit/1cee4fa968f985489a50b88b66bd392c35f0870e
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/fractional-lmul-data.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vector-integer-arithmetic.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/fractional-lmul-data.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/vector-integer-arithmetic.s
Log Message:
-----------
[RISCV] Update the vector integer division cycle in SiFive7 scheduling model (#159468)
Vector integer division in SiFive7 processes a single bit at a time up
to 4 elements. This patch updates to reflect this behavior.
Co-authored-by: Michael Maitland <michaeltmaitland at gmail.com>
Commit: 1c95d80ba68efd2ca9a0336529ea5fb7dc871417
https://github.com/llvm/llvm-project/commit/1c95d80ba68efd2ca9a0336529ea5fb7dc871417
Author: barsolo2000 <barsolo at meta.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/include/lldb/Core/Opcode.h
M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.h
M lldb/unittests/Instruction/CMakeLists.txt
A lldb/unittests/Instruction/RISCV/TestRiscvInstEmulation.cpp
Log Message:
-----------
RISCV enable assembly unwinding (#158161)
**Added emulator unwinding support for RISCV files.**
Emulated Instructions:
ADD (addi sp, sp, imm)
STORE (sd ra, offset(sp))
LOAD (ld ra, offset(sp)).
We had to overwrite SetInstructions() since UnwindAssemblyInstEmulation
calls EvaluateInstruction() directly after calling SetInstruction(), but
it never calls ReadInstruction(). This means that the m_decoded member
variable in the instruction emulator is never properly initialized. By
overriding SetInstruction(), we decode the instruction bytes and set
m_decoded directly. This ensures that subsequent emulation (including
unwinding) operates on the correct instruction.
We also had to change the the OpCode GetOpcodeBytes function since
recent changes made it so GetOpcodeBytes will return None for type
eType16_32Tuples (an alternative and longer way, would've been to type
check during the overwritten SetInstruction() and call a DataExtractor
with .GetU16(&offset) to set the inst_data.
Added a test - TestSimpleRiscvFunction (took inspiration from:
[link](https://github.com/llvm/llvm-project/blob/main/lldb/unittests/UnwindAssembly/ARM64/TestArm64InstEmulation.cpp))
[----------] 1 test from TestRiscvInstEmulation
[ RUN ] TestRiscvInstEmulation.TestSimpleRiscvFunction
[ OK ] TestRiscvInstEmulation.TestSimpleRiscvFunction (1 ms)
[----------] 1 test from TestRiscvInstEmulation (1 ms total)
[----------] Global test environment tear-down
[==========] 63 tests from 5 test suites ran. (11 ms total)
[ PASSED ] 63 tests.
---------
Co-authored-by: Bar Soloveychik <barsolo at fb.com>
Commit: e3c7b7f806559a361d2cf8374d65230c75bb5829
https://github.com/llvm/llvm-project/commit/e3c7b7f806559a361d2cf8374d65230c75bb5829
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/CodeGen/AMDGPU/dpp64_combine.mir
A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp.gfx1251.ll
A llvm/test/MC/AMDGPU/gfx1251_asm_vop1_dpp16.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop1_err.s
A llvm/test/MC/AMDGPU/gfx1251_err.s
M llvm/test/MC/AMDGPU/gfx9-asm-err.s
A llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop1_dpp16.txt
Log Message:
-----------
[AMDGPU] gfx1251 VOP1 dpp support (#159637)
Commit: a6662866e88a887ab125c4d533659d27c4134108
https://github.com/llvm/llvm-project/commit/a6662866e88a887ab125c4d533659d27c4134108
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
Log Message:
-----------
[lldb][NFC] Simplify logic in ABIMacOSX_arm64::FixDataAddress (#159612)
I've intentionally split this into two commits to make it easier that
this is an NFC patch; don't think we need to preserve them separately
though upon merging.
Commit: 5a402aca3f1582f329f07be2a501c5139e14b5fb
https://github.com/llvm/llvm-project/commit/5a402aca3f1582f329f07be2a501c5139e14b5fb
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/stdlib/BUILD.bazel
Log Message:
-----------
[libc][bazel] Add Bazel rules for rand/srand functions. (#159617)
These functions are unlikely to be used in the overlay mode (since they are stateful), but it's worth verifying the correctness of underlying RNG (which may be reused in other places) in Bazel build regardless.
Commit: 714f032802fd1192b19188daba45de97b825c95d
https://github.com/llvm/llvm-project/commit/714f032802fd1192b19188daba45de97b825c95d
Author: Sterling-Augustine <saugustine at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/SFrame.h
M llvm/include/llvm/MC/MCAsmBackend.h
M llvm/include/llvm/MC/MCAssembler.h
M llvm/include/llvm/MC/MCObjectStreamer.h
M llvm/include/llvm/MC/MCSFrame.h
M llvm/include/llvm/MC/MCSection.h
M llvm/lib/MC/MCAssembler.cpp
M llvm/lib/MC/MCFragment.cpp
M llvm/lib/MC/MCObjectStreamer.cpp
M llvm/lib/MC/MCSFrame.cpp
A llvm/test/MC/ELF/cfi-sframe-encoding.s
A llvm/test/MC/ELF/cfi-sframe-fre-cases.s
M llvm/test/MC/ELF/cfi-sframe.s
Log Message:
-----------
[SFrames] reland Emit and relax FREs #158154 (#159643)
[Previously reverted due to msan failures on two uninitialized padding
bits.]
This PR emits and relaxes the FREs generated in the previous PR.
After this change llvm emits usable sframe sections that can be linked
with the gnu linker. There are a few remaining cfi directives to handle
before they are generally usable, however.
The output isn't identical with gnu-gas in every case (this code
produces fewer identical FREs in a row than gas), but I'm reasonably
sure that they are correct regardless. There are even more size
optimizations that can be done later.
Also, while working on the tests, I found a few bugs in older portions
and cleaned those up.
This is a fairly big commit, but I'm not sure how to make it smaller.
Commit: 54c55219ea3fbb44046d385acefcff0b73d3f8f4
https://github.com/llvm/llvm-project/commit/54c55219ea3fbb44046d385acefcff0b73d3f8f4
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVControlFlowOps.td
M mlir/lib/Dialect/SPIRV/IR/ControlFlowOps.cpp
M mlir/test/Dialect/SPIRV/IR/control-flow-ops.mlir
Log Message:
-----------
[mlir][spirv] Use `verifySymbolUses` for `spirv.FunctionCall`. (#159399)
`spirv.FunctionCall`'s verifier was being too aggressive. It included
verification of non-local properties by looking at the callee's
definition.
This caused problems in cases where callee had verification errors and
could lead to null pointer dereferencing.
According to [MLIR's developers guide
](https://mlir.llvm.org/getting_started/DeveloperGuide/#ir-verifier)
> TLDR: only verify local aspects of an operation,
> in particular don’t follow def-use chains
> (don’t look at the producer of any operand or the user
> of any results).
The fix includes adding the `SymbolUserOpInterface` to `FunctionCall`
and moving most of the verification logic to `verifySymbolUses`.
Fixes #159295
---------
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 9f5b02311ae5c47146da642be7978839f087f49c
https://github.com/llvm/llvm-project/commit/9f5b02311ae5c47146da642be7978839f087f49c
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
A clang/test/SemaHLSL/prohibit_resource_edits.hlsl
Log Message:
-----------
[HLSL] Make sure global resources and resource arrays cannot be assigned to (#157772)
Global resources are read-only. The compiler needs to report an error when somebody attempts to assign a value to a global resource, a global resource array element or the whole array.
Test update in `static-local-ctor.hlsl` includes the use of the llvm-cxxfilt tool which takes care of demangling of function names for a more readable test baseline.
Closes #154390
Commit: 082d1d911c1cd79849f74ac203fbcbfbb6737cef
https://github.com/llvm/llvm-project/commit/082d1d911c1cd79849f74ac203fbcbfbb6737cef
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/tools/lldb-dap/package-lock.json
Log Message:
-----------
[lldb-dap] Bump form-data from 4.0.1 to 4.0.4
Bumps form-data from 4.0.1 to 4.0.4 to resolve a critical security
vulnerability in form-data.
Commit: cfaf23927c6b083646a431eb8eea2d286694c0a0
https://github.com/llvm/llvm-project/commit/cfaf23927c6b083646a431eb8eea2d286694c0a0
Author: MaheshRavishankar <1663364+MaheshRavishankar at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
R mlir/test/Interfaces/TilingInterface/tile-using-custom-op.mlir
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
Log Message:
-----------
Revert "[mlir][SCF] Allow using a custom operation to generate loops with `mlir::tileUsingSCF`." (#159598)
Reverts llvm/llvm-project#159506
It was committed by accident. Reverting it for reviews.
Commit: 152a2162a1a9c93358bb69ab839931d95b9537ad
https://github.com/llvm/llvm-project/commit/152a2162a1a9c93358bb69ab839931d95b9537ad
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/driver.cpp
M llvm/include/llvm/Support/CommandLine.h
M llvm/lib/Support/CommandLine.cpp
M llvm/tools/obj2yaml/obj2yaml.cpp
M llvm/tools/yaml2obj/yaml2obj.cpp
M llvm/unittests/Support/CommandLineTest.cpp
M llvm/utils/FileCheck/FileCheck.cpp
M llvm/utils/split-file/split-file.cpp
Log Message:
-----------
[llvm][clang] Pass VFS to `llvm::cl` command line handling (#159174)
This PR passes the VFS down to `llvm::cl` functions so that they don't
assume the real file system.
Commit: 91b05845bcb2befd1ed2407531d3a1adb3c6f828
https://github.com/llvm/llvm-project/commit/91b05845bcb2befd1ed2407531d3a1adb3c6f828
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
A libcxx/utils/benchmark-historical
M libcxx/utils/test-at-commit
Log Message:
-----------
[libc++] Add a tool to produce historical libc++ benchmark results
This is extremely useful for analysis purposes like finding regressions.
The ability to run such historical analysis locally is extremely useful
for doing quick investigations that may involve non-mainstream libc++
configurations.
Commit: 0c028bbf33d96045871f254fa1810f9767292506
https://github.com/llvm/llvm-project/commit/0c028bbf33d96045871f254fa1810f9767292506
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
Log Message:
-----------
[LV] Always add uniform pointers to uniforms list.
Always add pointers proved to be uniform via legal/SCEV to worklist.
This extends the existing logic to handle a few more pointers known to
be uniform.
Commit: cdd78989b83f22b33b4d8f0f12f4d8939c28004d
https://github.com/llvm/llvm-project/commit/cdd78989b83f22b33b4d8f0f12f4d8939c28004d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Pass SDValue by value. NFC
Commit: 04c4e9da133a5f206ded35c7eddd9e2ab34926c7
https://github.com/llvm/llvm-project/commit/04c4e9da133a5f206ded35c7eddd9e2ab34926c7
Author: Md Abdullah Shahneous Bari <98356296+mshahneo at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Transforms/XeGPUVectorLinearize.cpp
A mlir/test/Dialect/XeGPU/xegpu-vector-linearize.mlir
Log Message:
-----------
[mlir][XeGPU][Transform] Add vectorlinearize transform pass. (#158084)
Use upstream patterns to create a vectorlinearize pass needed for
lowering to XeVM.
Linearizes n-D vectors to 1-D vectors.
This is needed because, `vector-to-llvm` does not linearize all the
vectors.
Commit: 324511b8dcc797a49e4b250ae8563d5c53fe734e
https://github.com/llvm/llvm-project/commit/324511b8dcc797a49e4b250ae8563d5c53fe734e
Author: DanilaZhebryakov <d.zhebryakov at yandex.ru>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/PowerPC/ppc-sfvarargs.c
Log Message:
-----------
[PowerPC] fix float ABI selection on ppcle (#154773)
soft float ABI selection was not taking effect on little-endian powerPC
with embedded vectors (e.g. e500v2) leading to errors.
(embedded vectors use "extended" GPRs to store floating-point values,
and this caused issues with variadic arguments assuming dedicated
floating-point registers with hard-float ABI)
Commit: 8cfbace7b2c60682ee37706943a8f72d8c450305
https://github.com/llvm/llvm-project/commit/8cfbace7b2c60682ee37706943a8f72d8c450305
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/test/CodeGen/AMDGPU/dpp_combine.ll
A llvm/test/MC/AMDGPU/gfx1251_asm_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop2_err.s
A llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop2_dpp16.txt
Log Message:
-----------
[AMDGPU] gfx1251 VOP2 dpp support (#159641)
Commit: 1de6f6517b76fa7f7867032d4883a522b731a3b4
https://github.com/llvm/llvm-project/commit/1de6f6517b76fa7f7867032d4883a522b731a3b4
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
Log Message:
-----------
[lldb] Fix build when LLDB_ENABLE_PYTHON is OFF (#159665)
Even if Python scripting is disabled, we still need a Python interpreter
to build, for example to generate SBLanguages.h or fix up the framework
headers.
Commit: 9d6062c490548a5e6fea103e010ab3c9bc73a86d
https://github.com/llvm/llvm-project/commit/9d6062c490548a5e6fea103e010ab3c9bc73a86d
Author: Qiongsi Wu <qiongsiwu at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/test/ClangScanDeps/optimize-canonicalize-macros.m
Log Message:
-----------
[clang][Dependency Scanning] Canonicalize Defines of a Compiler Invocation As Early As Possible (#159620)
Before this patch, we only perform `-D` canonicalization on the deep
copy of the `CompilerInvocation` instance, since the canonicalization
should have no impact on scanning.
However, in the presence of CAS, the content of the `builtin` macros are
included in the context hash. This patch makes sure that we canonicalize
the scanning `CompilerInvocation`'s `-D`s.
Part of work for rdar://136303612.
---------
Co-authored-by: Jan Svoboda <jan at svoboda.ai>
Commit: 6ac0abf8c47247102fe00f6c59b85b2b1d6dca81
https://github.com/llvm/llvm-project/commit/6ac0abf8c47247102fe00f6c59b85b2b1d6dca81
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3Instructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
A llvm/test/MC/AMDGPU/gfx1251_asm_vop3_dpp16.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop1_dpp16.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop1_err.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop2_dpp16.s
A llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop2_err.s
M llvm/test/MC/AMDGPU/vop3-gfx9.s
A llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop3_dpp16.txt
A llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop3_from_vop1_dpp16.txt
A llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop3_from_vop2_dpp16.txt
Log Message:
-----------
[AMDGPU] gfx1251 VOP3 dpp support (#159654)
Commit: bda1cab20941ed842429f19ed0e22861017d935b
https://github.com/llvm/llvm-project/commit/bda1cab20941ed842429f19ed0e22861017d935b
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/tracing.h
Log Message:
-----------
[scudo] Add missing tracing.h include to primary32 (#159668)
Commit: 725d9e80770e4a8e5888e38a380ff0f7033aa9e0
https://github.com/llvm/llvm-project/commit/725d9e80770e4a8e5888e38a380ff0f7033aa9e0
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
Log Message:
-----------
[webkit.UncountedLambdaCapturesChecker] Treat arguments of std::ranges::all_of as [[clang::noescape]] (#158419)
The checker already had std::ranges hard-coded to treat its arguments as
[[clang::oescape]] but the fact std::ranges::all_of is implemented as a
struct instead of a function confused the checker and resuled in a
superflous warning being emitted for std::ranges::all_of.
This PR adds the support for recognizing DeclRefExpr which appears as a
callee in VisitCallExpr and generalizes the check in
shouldTreatAllArgAsNoEscape to walk up the decl contexts to find the
target namespaces such as std::ranges:: or a namespace and a function
like WTF::switchOn.
Commit: 3f52e97df77a0c84ffe61f3148ef9b1a18a67f69
https://github.com/llvm/llvm-project/commit/3f52e97df77a0c84ffe61f3148ef9b1a18a67f69
Author: Bitshift <ipudney at umich.edu>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M compiler-rt/lib/fuzzer/FuzzerTracePC.cpp
A compiler-rt/test/fuzzer/SimulateEmptyModuleTest.cpp
A compiler-rt/test/fuzzer/empty-module.test
Log Message:
-----------
Fix libFuzzer array alignment with empty modules (#159661)
The following assertion was being triggered:
```
assert.h assertion failed at llvm-project/compiler-rt/lib/fuzzer/FuzzerTracePC.cpp:237 in void fuzzer::TracePC::UpdateObservedPCs(): M.Size() == (size_t)(ModulePCTable[i].Stop - ModulePCTable[i].Start)
```
# The bug
When built with `-fsanitize=fuzzer`, each “module” (.so file, or the
binary itself) will be instrumented, and when loaded into the process
will make a call to these two functions:
- `__sanitizer_cov_8bit_counters_init`
- `__sanitizer_cov_pcs_init`
Each of these is called with start and end pointers defining an array.
In libFuzzer, these functions are implemented with
`HandleInline8bitCountersInit` and `HandlePCsInit`. Each of them pushes
back the provided pointers into a separate array, `Modules` and
`ModulePCTable` respectively. These arrays are meant to be kept in-sync;
index i into Modules should refer to the same `.so` as index i into
ModulePCTable. The assertion was triggering because these lists got
out-of-sync.
The problem is that the 8bit handler contains this line:
```
if (Start == Stop) return;
```
but the PC handler contains no such corresponding line. This meant that
if a module was ever instrumented but “empty” (its 8bit counter and PC
arrays were both of length 0), then its PC array would still be added
but its 8bit counter array would not.
# Why this issue was never seen before
The circumstances to trigger this issue are unusual:
- You need a compilation unit that doesn't contain any code (though it
may contain global variable declarations and similar). That doesn't
happen very often.
- That compilation unit must be dynamically linked, not statically
linked. If statically linked, it’ll be merged into a single “module”
with the main binary, and the arrays will be merged as well; you won’t
end up with length-0 arrays.
- To notice the issue, assertions must be enabled. If disabled,
libFuzzer will be buggy (it may have worse coverage), but it won't
crash, and "worse coverage" is extremely unlikely to be noticed.
# This change
This change solves the issue by adding the same `if (Start == Stop)
return;` check to `HandlePCsInit`. This prevents the arrays from getting
out-of-sync. This change also adds a test that identifies the previous
issue when compiled with assertions enabled, but now passes with the
fix.
Commit: 339450fa80bd59ad2d0410a0eb58b8b9981aac10
https://github.com/llvm/llvm-project/commit/339450fa80bd59ad2d0410a0eb58b8b9981aac10
Author: Jhalak Patel <jhalakpatel at outlook.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector] Fix crash in vector.from_elements folding with poison values (#158528)
The vector.from_elements constant folding was crashing when poison
values were present in the element list. The convertIntegerAttr function
was not properly handling poison attributes, leading to assertion
failures in dyn_cast operations.
This patch refactors convertIntegerAttr to take IntegerAttr directly,
moving poison detection to the caller using explicit
isa<ub::PoisonAttrInterface> checks. The function signature change
provides compile-time type safety while the early poison validation in
foldFromElementsToConstant prevents unsafe casting operations. The
folding now gracefully aborts when poison attributes are encountered,
preventing the crash while preserving correct folding for legitimate
mixed-type constants (int/float).
Fixes assertion: "dyn_cast on a non-existent value" when processing
ub.poison values in vector.from_elements operations.
Commit: dda7ce6624e357076fefe55a756ba7181db92ba2
https://github.com/llvm/llvm-project/commit/dda7ce6624e357076fefe55a756ba7181db92ba2
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/select-bare.ll
M llvm/test/CodeGen/RISCV/select-cc.ll
M llvm/test/CodeGen/RISCV/select-cond.ll
M llvm/test/CodeGen/RISCV/select-const.ll
M llvm/test/CodeGen/RISCV/select.ll
M llvm/test/CodeGen/RISCV/xqcicli.ll
M llvm/test/CodeGen/RISCV/xqcicm.ll
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Move Xqci Select-likes to use riscv_selectcc (#153147)
The original patterns for the Xqci select-like instructions used
`select`, and marked that ISD node as legal. This is not the usual way
that `select` is dealt with in the RISC-V backend.
Usually on RISC-V, we expand `select` to `riscv_select_cc` which holds
references to the operands of the comparison and the possible values
depending on the comparison. In retrospect, this is a much better fit
for our instructions, as most of them correspond to specific condition
codes, rather than more generic `select` with a truthy/falsey value.
This PR moves the Xqci select-like patterns to use `riscv_select_cc`
nodes. This applies to the Xqcicm, Xqcics and Xqcicli instruction
patterns.
In order to match the existing codegen, minor additions had to be made
to `translateSetCCForBranch` to ensure that comparisons against specific
immediate values are left in a form that can be matched more closely by
the instructions. This prevents having to insert additional `li`
instructions and use the register forms.
There are a few slight regressions:
- There are sometimes more `mv` instructions than entirely necessary. I
believe these would not be seen with larger examples where the register
allocator has more leeway.
- In some tests where just one of the three extensions is enabled,
codegen falls back to using a branch over a move. With all three
extensions enabled (the configuration we most care about), these are not
seen.
- The generated patterns are very similar to each other - they have
similar complexity (7 or 8) and there are still overlaps. Sometimes the
choice between two instructions can be affected by the order of the
patterns in the tablegen file.
One other change is that Xqcicm instructions are prioritised over Xqcics
instructions where they have identical patterns. This is done because
one of the the Xqcicm instructions is compressible (`qc.mveqi`), while
none of the Xqcics instructions are.
Commit: 0c1ab02e46d38e8b67843eb3c88b1dc054d561f8
https://github.com/llvm/llvm-project/commit/0c1ab02e46d38e8b67843eb3c88b1dc054d561f8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/test/CodeGen/RISCV/rv64zbs.ll
Log Message:
-----------
[RISCV] Use bseti 31 for (or X, -2147483648) when upper 32 bits aren't used. (#159678)
If the original type was i32, type legalization will sign extend
the constant. This prevents it from having a single bit set or clear
so other patterns can't match. If the upper bits aren't used, we
can ignore the sign extension.
Similar for bclri and binvi.
Commit: 33e8e5a84643f3e2aeb5d85e58000b2a1ba9d3df
https://github.com/llvm/llvm-project/commit/33e8e5a84643f3e2aeb5d85e58000b2a1ba9d3df
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
Log Message:
-----------
AMDGPU: Add more mfma loop test cases (#159492)
Test cases where the exit uses must be VGPRs,
and don't happen to be a store that could use AGPRs.
Commit: 116ca9522e89f1e4e02676b5bbe505e80c4d4933
https://github.com/llvm/llvm-project/commit/116ca9522e89f1e4e02676b5bbe505e80c4d4933
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/RegAllocGreedy.cpp
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
M llvm/test/CodeGen/AMDGPU/load-local-i16.ll
M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
M llvm/test/CodeGen/Thumb2/mve-vst3.ll
M llvm/test/CodeGen/Thumb2/mve-vst4.ll
Log Message:
-----------
Greedy: Take copy hints involving subregisters (#159570)
Previously this would only accept full copy hints. This relaxes
this to accept some subregister copies. Specifically, this now
accepts:
- Copies to/from physical registers if there is a compatible
super register
- Subreg-to-subreg copies
This has the potential to repeatedly add the same hint to the
hint vector, but not sure if that's a real problem.
Commit: 01fca01d3bcbabdebee54bba40157e96152e3e6e
https://github.com/llvm/llvm-project/commit/01fca01d3bcbabdebee54bba40157e96152e3e6e
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
M mlir/lib/Conversion/ComplexToSPIRV/ComplexToSPIRV.cpp
M mlir/lib/Conversion/ControlFlowToSPIRV/ControlFlowToSPIRV.cpp
M mlir/lib/Conversion/FuncToSPIRV/FuncToSPIRV.cpp
M mlir/lib/Conversion/GPUToSPIRV/GPUToSPIRV.cpp
M mlir/lib/Conversion/GPUToSPIRV/WmmaOpsToSPIRV.cpp
M mlir/lib/Conversion/IndexToSPIRV/IndexToSPIRV.cpp
M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVCanonicalization.cpp
M mlir/lib/Dialect/SPIRV/Transforms/ConvertToReplicatedConstantCompositePass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/DecorateCompositeTypeLayoutPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/LowerABIAttributesPass.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
M mlir/lib/Dialect/SPIRV/Transforms/SPIRVWebGPUTransforms.cpp
Log Message:
-----------
[mlir][spirv] Simplify inheriting constructor declarations. NFC. (#159681)
Use the `Base` type alias from https://github.com/llvm/llvm-project/pull/158433.
Commit: 54677d66c4af83351df63e513d7734e2c25160df
https://github.com/llvm/llvm-project/commit/54677d66c4af83351df63e513d7734e2c25160df
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
A flang/lib/Optimizer/Transforms/ConvertComplexPow.cpp
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Fir/basic-program.fir
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/power-operator.f90
A flang/test/Transforms/convert-complex-pow.fir
M flang/tools/bbc/bbc.cpp
M mlir/lib/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.cpp
Log Message:
-----------
[Flang] Add new ConvertComplexPow pass for Flang (#158642)
This PR introduces a new `ConvertComplexPow` pass for Flang that handles
complex power operations. The change forces lowering to complex.pow
operations when `--math-runtime=precise` is not used, then uses the
`ConvertComplexPow` pass to convert these operations back to library
calls.
- Adds a new `ConvertComplexPow` pass that converts complex.pow ops to
appropriate runtime library calls
- Updates complex power lowering to use `complex.pow` operations by
default instead of direct library calls
#158722 Adds a new `complex.powi` op enabling algebraic optimisations.
Commit: daed12d00d4c24c8607e9c3d8ddbc7624471f049
https://github.com/llvm/llvm-project/commit/daed12d00d4c24c8607e9c3d8ddbc7624471f049
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
AMDGPU: Remove unnecessary AGPR legalize logic (#159491)
The manual legalizeOperands code only need to consider cases that
require full instruction context to know if the operand is legal.
This does not need to handle basic operand register class constraints.
Commit: f7629f5945f6720bac9cdfebcf9c05144afb9028
https://github.com/llvm/llvm-project/commit/f7629f5945f6720bac9cdfebcf9c05144afb9028
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
A llvm/test/Transforms/InferAddressSpaces/AMDGPU/phi-poison.ll
Log Message:
-----------
[InferAddressSpaces] Extend undef pointer operand support to phi inst (#159548)
Previously undef pointer operand is only supported for select inst,
where undef in generic AS behaves like `take the other side`.
This PR extends the support to other instructions, e.g. phi inst. Defer
joining and inferring constant pointer operand until all other operand
AS states considered.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: d41bc6834b8dea5228eb1763da5904e99e97d42f
https://github.com/llvm/llvm-project/commit/d41bc6834b8dea5228eb1763da5904e99e97d42f
Author: Elvin Wang <elvin.wang at intel.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/test/TableGen/intrinsic-attrs.td
M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp
Log Message:
-----------
[IntrinsicEmitter] Make AttributesMap PackedID type-adaptive (#158383)
Commit: 1ad5d63e5ec3dd2ac0217fd453db18a5a2fc2bf7
https://github.com/llvm/llvm-project/commit/1ad5d63e5ec3dd2ac0217fd453db18a5a2fc2bf7
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/nor.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/nor.ll
Log Message:
-----------
[LoongArch] Add generation support for `[x]vnori.b` (#158772)
Commit: fdb1f486387d46bd046d7827fcd19fa44118bffe
https://github.com/llvm/llvm-project/commit/fdb1f486387d46bd046d7827fcd19fa44118bffe
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Transforms/ConvertComplexPow.cpp
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/amdgcn-complex.f90
M flang/test/Lower/power-operator.f90
M flang/test/Transforms/convert-complex-pow.fir
M mlir/include/mlir/Dialect/Complex/IR/ComplexOps.td
M mlir/lib/Conversion/ComplexToROCDLLibraryCalls/ComplexToROCDLLibraryCalls.cpp
M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
M mlir/lib/Dialect/Math/Transforms/AlgebraicSimplification.cpp
M mlir/lib/Dialect/Math/Transforms/CMakeLists.txt
M mlir/test/Conversion/ComplexToROCDLLibraryCalls/complex-to-rocdl-library-calls.mlir
M mlir/test/Conversion/ComplexToStandard/convert-to-standard.mlir
A mlir/test/Dialect/Complex/powi-simplify.mlir
Log Message:
-----------
[MLIR] Add new complex.powi op (#158722)
This PR adds a new complex.powi operation to MLIR's complex dialect for
computing complex numbers raised to integer powers.
Key changes include:
- Addition of the new `PowiOp` operation definition in the Complex
dialect
- Integration with algebraic simplification passes for optimization
- Support for conversion to ROCDL library calls
- Updates to Flang frontend to generate the new operation
This depends on #158642.
Commit: b26b40b22320ab8b684bfe2575fdbda1c6f2e4ee
https://github.com/llvm/llvm-project/commit/b26b40b22320ab8b684bfe2575fdbda1c6f2e4ee
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #158084: xegpu vectorlinearize pass (#159690)
Commit: e5114a2016557fc0dd6014b838e91ca025e23b29
https://github.com/llvm/llvm-project/commit/e5114a2016557fc0dd6014b838e91ca025e23b29
Author: Twice <twice at apache.org>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/IRDL/IR/IRDLAttributes.td
M mlir/include/mlir/Dialect/IRDL/IR/IRDLOps.td
M mlir/include/mlir/Dialect/IRDL/IR/IRDLTypes.td
A mlir/lib/Bindings/Python/DialectIRDL.cpp
M mlir/python/CMakeLists.txt
A mlir/python/mlir/dialects/IRDLOps.td
A mlir/python/mlir/dialects/irdl.py
A mlir/test/python/dialects/irdl.py
Log Message:
-----------
[MLIR][Python] Add python bindings for IRDL dialect (#158488)
In this PR we add basic python bindings for IRDL dialect, so that python
users can create and load IRDL dialects in python. This allows users, to
some extent, to define dialects in Python without having to modify
MLIR’s CMake/TableGen/C++ code and rebuild, making prototyping more
convenient.
A basic example is shown below (and also in the added test case):
```python
# create a module with IRDL dialects
module = Module.create()
with InsertionPoint(module.body):
dialect = irdl.DialectOp("irdl_test")
with InsertionPoint(dialect.body):
op = irdl.OperationOp("test_op")
with InsertionPoint(op.body):
f32 = irdl.is_(TypeAttr.get(F32Type.get()))
irdl.operands_([f32], ["input"], [irdl.Variadicity.single])
# load the module
irdl.load_dialects(module)
# use the op defined in IRDL
m = Module.parse("""
module {
%a = arith.constant 1.0 : f32
"irdl_test.test_op"(%a) : (f32) -> ()
}
""")
```
Commit: 67f43c6ee2f0a5e8d252cce589ea7d157676e990
https://github.com/llvm/llvm-project/commit/67f43c6ee2f0a5e8d252cce589ea7d157676e990
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/test/mlir-tblgen/op-python-bindings.td
M mlir/test/python/dialects/python_test.py
M mlir/test/python/python_test_ops.td
M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
Log Message:
-----------
[MLIR][Python] add type hints for accessors (#158455)
This PR adds type hints for accessors in the generated builders.
Commit: da71e3c76db9a63eb66ac0415860f84f28cebb78
https://github.com/llvm/llvm-project/commit/da71e3c76db9a63eb66ac0415860f84f28cebb78
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #158722: complex.powi op (#159691)
Commit: a2efa7ab207d78bf753b4a9651070fee283d8217
https://github.com/llvm/llvm-project/commit/a2efa7ab207d78bf753b4a9651070fee283d8217
Author: Michael Park <mcypark at gmail.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/include/clang/AST/Decl.h
M clang/lib/AST/Decl.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
A clang/test/Modules/merge-anon-in-template-2.cpp
A clang/test/Modules/merge-anon-in-template-3.cpp
Log Message:
-----------
[C++20][Modules] Fix merging of anonymous members of class templates. (#155948)
Commit: dd92609fcc6f2af8adcbc3986d9b0676de36b2a9
https://github.com/llvm/llvm-project/commit/dd92609fcc6f2af8adcbc3986d9b0676de36b2a9
Author: Qihan Cai <caiqihan021 at hotmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/MC/RISCV/invalid-instruction-spellcheck.s
M llvm/test/MC/RISCV/rv32p-valid.s
Log Message:
-----------
[RISC-V] Add P-ext MC Support for Remaining Pair Operations (#159247)
This patch implements pages 21-24 from jhauser.us/RISCV/ext-P/RVP-instrEncodings-015.pdf
Documentation:
jhauser.us/RISCV/ext-P/RVP-baseInstrs-014.pdf
jhauser.us/RISCV/ext-P/RVP-instrEncodings-015.pdf
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Commit: f8b7f64ad2d94bbda169023f933f18b31c9b4492
https://github.com/llvm/llvm-project/commit/f8b7f64ad2d94bbda169023f933f18b31c9b4492
Author: Hank Chang <hank.chang at sifive.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
A llvm/include/llvm/Analysis/InterestingMemoryOperand.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
A llvm/test/Instrumentation/AddressSanitizer/RISCV/asan-rvv-intrinsics.ll
Log Message:
-----------
[TTI][ASan][RISCV] Move InterestingMemoryOperand to Analysis and embed in MemIntrinsicInfo (#157863)
Previously asan considers target intrinsics as black boxes, so asan
could not instrument accurate check. This patch make
SmallVector<InterestingMemoryOperand> a member of MemIntrinsicInfo so
that TTI can make targets describe their intrinsic informations to asan.
Note,
1. This patch move InterestingMemoryOperand from Transforms to Analysis.
2. Extend MemIntrinsicInfo by adding a
SmallVector<InterestingMemoryOperand> member.
3. This patch does not support RVV indexed/segment load/store.
Commit: e7dcf7dc2e63e4ae5e6e03f417eed24516b71bfe
https://github.com/llvm/llvm-project/commit/e7dcf7dc2e63e4ae5e6e03f417eed24516b71bfe
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
Log Message:
-----------
TableGen: Remove dead def of implicit node (#159688)
Commit: e79f4511a22fadff502ad3a42812deca11feb407
https://github.com/llvm/llvm-project/commit/e79f4511a22fadff502ad3a42812deca11feb407
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
A llvm/test/TableGen/dag-pattern-crash-on-set.td
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
Log Message:
-----------
TableGen: Replace assertion with error for unexpected pattern inputs (#159687)
Commit: 48f804d609b38f22307f2e1c1345d1e4054cb2c6
https://github.com/llvm/llvm-project/commit/48f804d609b38f22307f2e1c1345d1e4054cb2c6
Author: Florian Mayer <fmayer at google.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
R llvm/include/llvm/Analysis/InterestingMemoryOperand.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
R llvm/test/Instrumentation/AddressSanitizer/RISCV/asan-rvv-intrinsics.ll
Log Message:
-----------
Revert "[TTI][ASan][RISCV] Move InterestingMemoryOperand to Analysis and embed in MemIntrinsicInfo" (#159700)
Reverts llvm/llvm-project#157863
Commit: 5a873d3c92946fd45ca432c0a19ab06584f6fad0
https://github.com/llvm/llvm-project/commit/5a873d3c92946fd45ca432c0a19ab06584f6fad0
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/spec.gen.py
M libcxx/utils/benchmark-historical
Log Message:
-----------
[libc++] Improve error resilience when running historical benchmarks
In benchmark-historical, don't skip gathering the results when the
lit command has failed. Indeed, it is expected to fail as part of
normal operation since it should be pretty frequent for at least one
test to fail when running historical benchmarks. Instead, gather
whatever results we have.
Also, output the build log in spec.gen.py upon failure so we can see
the reason for the failure.
Commit: 7a77127c0f8c44c0eebf8559595fa757608fe5ec
https://github.com/llvm/llvm-project/commit/7a77127c0f8c44c0eebf8559595fa757608fe5ec
Author: Luke Lau <luke at igalia.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
Log Message:
-----------
[RISCV] Ignore debug instructions in RISCVVLOptimizer (#159616)
Don't put them onto the worklist, since they'll crash when we try to
check their opcode.
Fixes #159422
Commit: 446a490f93de6c4b458fa5bdd959216b0be774f8
https://github.com/llvm/llvm-project/commit/446a490f93de6c4b458fa5bdd959216b0be774f8
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use Subtarget member variable instead of getting it from MachineFunction. NFC (#159664)
Commit: 9d933c794af32362dbbbefe53825054b533d7b2c
https://github.com/llvm/llvm-project/commit/9d933c794af32362dbbbefe53825054b533d7b2c
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-09-18 (Thu, 18 Sep 2025)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
M clang/test/Analysis/Checkers/WebKit/call-args-checked.cpp
M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
M clang/test/Analysis/Checkers/WebKit/mock-types.h
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
M clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
Log Message:
-----------
[WebKit checkers] Add the support for OSObjectPtr (#159484)
Add the support for OSObjectPtr, which behaves like RetainPtr.
Commit: 6d2366c5cc06cb7475538c8cd3d6f08e6d04dc27
https://github.com/llvm/llvm-project/commit/6d2366c5cc06cb7475538c8cd3d6f08e6d04dc27
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
Log Message:
-----------
[Clang][CIR] fix enumeration value 'OMPGroupPrivate' not handled in switch (#159694)
Commit: 680c657a4f91de215394daa08c7d1ee29a839833
https://github.com/llvm/llvm-project/commit/680c657a4f91de215394daa08c7d1ee29a839833
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/extractelement.ll
M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/extractelement.ll
Log Message:
-----------
[LoongArch] Simplily fix extractelement on LA32 (#159564)
Commit: dd669c32ec67c1a995134339657ace2a2047c605
https://github.com/llvm/llvm-project/commit/dd669c32ec67c1a995134339657ace2a2047c605
Author: Wenju He <wenju.he at intel.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAddressSpaces.cpp
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/issue110433.ll
M llvm/test/Transforms/InferAddressSpaces/AMDGPU/phi-poison.ll
Log Message:
-----------
[InferAddressSpaces] Mark ConstantAggregateZero as safe to cast to a ConstantExpr addrspacecast (#159695)
This PR extends isSafeToCastConstAddrSpace to treat
ConstantAggregateZero like ConstantPointerNull.
Tests shows an extra addrspacecast instruction is removed and icmp
pointer vector operand's address space is now inferred.
This change is motivated by inspecting the test in commit f7629f5945f6.
Commit: 332eb5f693d2e28026aaa4f580cef607898ed756
https://github.com/llvm/llvm-project/commit/332eb5f693d2e28026aaa4f580cef607898ed756
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCV.td
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
A llvm/test/CodeGen/RISCV/GlobalISel/rvv/vadd.ll
M llvm/test/CodeGen/RISCV/GlobalISel/rvv/vfadd.ll
Log Message:
-----------
[RISCV][GISel] Support select vx, vf form rvv intrinsics (#157398)
For vx form, we legalize it with widen scalar. And for vf form, we select the right register bank.
Commit: ebe7587256597af0a19707e65e801f9d53307e09
https://github.com/llvm/llvm-project/commit/ebe7587256597af0a19707e65e801f9d53307e09
Author: David Green <david.green at arm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/arm64-i16-subreg-extract.ll
M llvm/test/CodeGen/AArch64/bitcast-extend.ll
A llvm/test/CodeGen/AArch64/scalarize-vector-load.ll
Log Message:
-----------
[AArch64] Add some tests for bitcast vector loads and scalarizing loaded vectors. NFC
Commit: 3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204
https://github.com/llvm/llvm-project/commit/3cc1b7c2e0dbd9b7c04110d7d8c799acb476c204
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/reorder-gep-inbounds.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/gep-chain.ll
M llvm/test/Transforms/SeparateConstOffsetFromGEP/NVPTX/split-gep.ll
Log Message:
-----------
[SeparateConstOffsetFromGEP] Check if non-extracted indices may be negative when preserving inbounds (#159515)
If we know that the initial GEP was inbounds, and we change it to a sequence of
GEPs from the same base pointer where every offset is non-negative, then the
new GEPs are inbounds. So far, the implementation only checked if the extracted
offsets are non-negative. In cases where non-extracted offsets can be negative,
this would cause the inbounds flag to be wrongly preserved.
Fixes an issue in #130617 found by nikic.
Commit: ae1e909de9d7ecb57907849e4df03247b019c5fc
https://github.com/llvm/llvm-project/commit/ae1e909de9d7ecb57907849e4df03247b019c5fc
Author: Simon Wallis <simon.wallis2 at arm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-basic-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-misc-instructions.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-sve-instructions.s
M llvm/tools/llvm-mca/Views/InstructionInfoView.cpp
Log Message:
-----------
[llvm-mca] Round UP when formatting Reciprocal Throughput (#159544)
Explicitly round up the reciprocal calculation,
so that .125 is displayed as 0.13 consistently across all hosts.
Fix buildbot failure
https://lab.llvm.org/buildbot/#/builders/193/builds/10666
since https://github.com/llvm/llvm-project/pull/154495
Commit: b3e423df3785ed06e1cb3b70c5ac11b8abffec2f
https://github.com/llvm/llvm-project/commit/b3e423df3785ed06e1cb3b70c5ac11b8abffec2f
Author: h-vetinari <h.vetinari at gmx.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/www/c_status.html
M clang/www/cxx_status.html
Log Message:
-----------
[clang][docs] mark v21 as released (#158629)
Update for the status pages now that v21.1 is out.
Also specify WG14 N3006 "Underspecified object definitions" as available since Clang 19.
Commit: adfa6a4c149d83139627e96df1a04fb54478ff4f
https://github.com/llvm/llvm-project/commit/adfa6a4c149d83139627e96df1a04fb54478ff4f
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/ptradd-sdag-mubuf.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-optimizations.ll
Log Message:
-----------
[AMDGPU][SDAG] Test ISD::PTRADD handling in various special cases (#145329)
Pre-committing tests to show improvements in a follow-up PR.
Commit: e747223c03e16d02cd0dc6f8eedb5c825a7366c1
https://github.com/llvm/llvm-project/commit/e747223c03e16d02cd0dc6f8eedb5c825a7366c1
Author: Jim Lin <jim at andestech.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
A llvm/lib/Target/RISCV/RISCVInstrInfoZvfofp8min.td
M llvm/lib/TargetParser/RISCVTargetParser.cpp
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/CodeGen/RISCV/features-info.ll
M llvm/test/MC/RISCV/attribute-arch.s
M llvm/test/MC/RISCV/rvv/zvfbfmin.s
A llvm/test/MC/RISCV/rvv/zvfofp8min.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Implement MC support for Zvfofp8min extension (#157014)
This patch adds MC support for Zvfofp8min
https://github.com/aswaterman/riscv-misc/blob/main/isa/zvfofp8min.adoc.
Commit: a2dcc88f39a86aff728929577135cd161ac91a7a
https://github.com/llvm/llvm-project/commit/a2dcc88f39a86aff728929577135cd161ac91a7a
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-mubuf.ll
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-optimizations.ll
Log Message:
-----------
[AMDGPU][SDAG] Handle ISD::PTRADD in various special cases (#145330)
There are more places in SIISelLowering.cpp and AMDGPUISelDAGToDAG.cpp
that check for ISD::ADD in a pointer context, but as far as I can tell
those are only relevant for 32-bit pointer arithmetic (like frame
indices/scratch addresses and LDS), for which we don't enable PTRADD
generation yet.
For SWDEV-516125.
Commit: 143551a42c694b0f9c0976ecfa7cb20c28274cb6
https://github.com/llvm/llvm-project/commit/143551a42c694b0f9c0976ecfa7cb20c28274cb6
Author: flovent <flbven at protonmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-scoped-lock.rst
Log Message:
-----------
[clang-tidy][NFC] Fix error in example code for `modernize-use-scoped-lock`'s doc (#159722)
Commit: f96a759ff58afc038e181affee6f8620b71d444b
https://github.com/llvm/llvm-project/commit/f96a759ff58afc038e181affee6f8620b71d444b
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/Sema/SemaConcept.cpp
Log Message:
-----------
[Clang][NFC] Remove duplicated specialization of `llvm::DenseMapInfo<llvm::FoldingSetNodeID>` (#159718)
In preparation of #141776
Commit: 67354837d0ecab43e3e2f99fde234660d1686ce9
https://github.com/llvm/llvm-project/commit/67354837d0ecab43e3e2f99fde234660d1686ce9
Author: Ingo Müller <ingomueller at google.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
[mlir:python] Port Python bindings of IRDL to bazel build. (#159721)
This PR sets up build rules for the Python bindings of the IRDL dialect
introduced by #158488. The absence of them does not break the bazel
build but some downstream users rely on them.
Signed-off-by: Ingo Müller <ingomueller at google.com>
Commit: 771c94c8db14b990a38c95977f708e9480020244
https://github.com/llvm/llvm-project/commit/771c94c8db14b990a38c95977f708e9480020244
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
Log Message:
-----------
[SDAG][AMDGPU] Allow opting in to OOB-generating PTRADD transforms (#146074)
This PR adds a TargetLowering hook, canTransformPtrArithOutOfBounds,
that targets can use to allow transformations to introduce out-of-bounds
pointer arithmetic. It also moves two such transformations from the
AMDGPU-specific DAG combines to the generic DAGCombiner.
This is motivated by target features like AArch64's checked pointer
arithmetic, CPA, which does not tolerate the introduction of
out-of-bounds pointer arithmetic.
Commit: c4617bcae1308cf256bbd3738065eba2a4be8eb2
https://github.com/llvm/llvm-project/commit/c4617bcae1308cf256bbd3738065eba2a4be8eb2
Author: Dmitry Chigarev <dmitry.chigarev at intel.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
A mlir/test/Conversion/VectorToXeGPU/gather-to-xegpu.mlir
A mlir/test/Conversion/VectorToXeGPU/scatter-to-xegpu.mlir
Log Message:
-----------
[MLIR][XeGPU][VectorToXeGPU] Add lowering from vector.gather/scatter to xegpu.load/store (#158024)
Lowering for `vector.gather`/`vector.scatter` into `xegpu.load`/`xegpu.store`.
High level steps to lower vector.gather/scatter:
```
%0 = vector.gather %source[%off1, %off2, %off3][%indices], %mask,
%pass_thru : memref<8x16x32xf32>, vector<8xindex>, vector<8xi1>, vector<8xf32> into vector<8xf32>
```
1. Compute strides and a memref offset for the `%source` memref using
`computeMemrefMeta` func from the transfer_read/write lowering
2. Compute a linear offset like `%lin_off = %base_offset + %off1 *
strides#0 + %off2 * strides#1 + %off3 * strides#2`
3. Combine the linear offset with `%indices`: `%off = (broadcast
%lin_off : index to vector<8xindex>) + %indices * strides#2`
4. Convert memref to an i64: `%flat_memref =
memref.extract_aligned_pointer_as_index %source + arith.index_cast`
5. Perform load/store: `%vec = xegpu.load %flat_memref[%off], %mask`
6. Apply selection to propagate values from the pass_thru vector: `%res
= arith.select %mask, %vec, %pass_thru`
Commit: b59d410202d1afb63591e8f78d0fe8b24fb236eb
https://github.com/llvm/llvm-project/commit/b59d410202d1afb63591e8f78d0fe8b24fb236eb
Author: UmeshKalappa <103930015+ukalappa-mips at users.noreply.github.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXMIPS.td
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/riscv_mips.h
A clang/test/CodeGen/RISCV/builtins-riscv-mips.c
M llvm/include/llvm/IR/IntrinsicsRISCV.td
A llvm/include/llvm/IR/IntrinsicsRISCVXMIPS.td
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXMips.td
A llvm/test/CodeGen/RISCV/xmips-exectl.ll
Log Message:
-----------
RISC-V: builtins support for MIPS RV64 P8700 execution control .
the following changes are made
a)Typo Fix (with previous PRhttps://github.com/llvm/llvm-project/pull/155747)
b)builtins support for MIPS P8700 execution control instructions .
c)Testcase
Commit: 91dba2201ec63907105ffddbea1de82f649d35d8
https://github.com/llvm/llvm-project/commit/91dba2201ec63907105ffddbea1de82f649d35d8
Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
Log Message:
-----------
Fix NDEBUG Wundef warning; NFC (#159539)
The `NDEBUG` macro is tested for defined-ness everywhere else. The
instance here triggers a warning when compiling with `-Wundef`.
Commit: d5607694e1270a4fc4e3c6f8c9de5d1c4f9c34ff
https://github.com/llvm/llvm-project/commit/d5607694e1270a4fc4e3c6f8c9de5d1c4f9c34ff
Author: Fabian Ritter <fabian.ritter at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/ptradd-sdag-optimizations.ll
Log Message:
-----------
[AMDGPU][SDAG] DAGCombine PTRADD -> disjoint OR (#146075)
If we can't fold a PTRADD's offset into its users, lowering them to
disjoint ORs is preferable: Often, a 32-bit OR instruction suffices
where we'd otherwise use a pair of 32-bit additions with carry.
This needs to be a DAGCombine (and not a selection rule) because its
main purpose is to enable subsequent DAGCombines for bitwise operations.
We don't want to just turn PTRADDs into disjoint ORs whenever that's
sound because this transform loses the information that the operation
implements pointer arithmetic, which AMDGPU for instance needs when
folding constant offsets.
For SWDEV-516125.
Commit: 9062f5e2c1d9b7cfcbb85acbe6cfef5673c6a876
https://github.com/llvm/llvm-project/commit/9062f5e2c1d9b7cfcbb85acbe6cfef5673c6a876
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port b59d410202d1
Commit: 58a5121ab1740e2e71d6c960c0a32a32e951ce9c
https://github.com/llvm/llvm-project/commit/58a5121ab1740e2e71d6c960c0a32a32e951ce9c
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Port b59d410202d1afb63591e8f78d0fe8b24fb236eb
Commit: f9c996856e84f64dd3c306916f238b713a4d777d
https://github.com/llvm/llvm-project/commit/f9c996856e84f64dd3c306916f238b713a4d777d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
Log Message:
-----------
cmake: Avoid using if(TARGET x AND TARGET y) (#159707)
This appears to not work, and the documentation only has
examples with a single target checked at a time.
Commit: 4d197c89b53febbd4722f9923e511b7215825860
https://github.com/llvm/llvm-project/commit/4d197c89b53febbd4722f9923e511b7215825860
Author: Javier Lopez-Gomez <javier.lopez.gomez at proton.me>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSort.h
M llvm/lib/DebugInfo/LogicalView/Core/LVSort.cpp
M llvm/test/tools/llvm-debuginfo-analyzer/COFF/01-coff-print-basic-details.test
M llvm/test/tools/llvm-debuginfo-analyzer/DWARF/01-dwarf-print-basic-details.test
M llvm/test/tools/llvm-debuginfo-analyzer/cmdline.test
M llvm/tools/llvm-debuginfo-analyzer/Options.cpp
Log Message:
-----------
[llvm-debuginfo-analyzer] Add `--output-sort=(none|id)` option (#145761)
- The output for `--output-sort=id` matches `--output-sort=offset` for
the available readers. Tests were updated accordingly.
- For `--output-sort=none`, and per `LVReader::sortScopes()`,
`LVScope::sort()` is called on the root scope.
`LVScope::sort()` has no effect if `getSortFunction() == nullptr`, and
thus the elements are currently traversed in the order in which they
were initially added. This should change, however, after
`LVScope::Children` is removed.
Commit: 03e16c8e42a03574062df1c5f2c9c5f2122042d5
https://github.com/llvm/llvm-project/commit/03e16c8e42a03574062df1c5f2c9c5f2122042d5
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Context.cpp
Log Message:
-----------
[clang][bytecode] Move generic lambda handling to Compiler (#159733)
So the static invoker's Function still points to the static invoker
instead of the call operator of the lambda record. This is important for
a later commit.
Commit: 4e1c996674cc340f290b0a528e2038e76494d8d4
https://github.com/llvm/llvm-project/commit/4e1c996674cc340f290b0a528e2038e76494d8d4
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/Other/codegen-plugin-loading.ll
M llvm/unittests/CodeGen/CGPluginTest/CMakeLists.txt
M llvm/unittests/CodeGen/CGPluginTest/Plugin/CMakeLists.txt
M llvm/unittests/CodeGen/CGPluginTest/PluginTest.cpp
Log Message:
-----------
[llvm][test][CGPluginTest] Keep plugin in shared library directory
Scoping to the root build directory instead of using the path directly is awkward and the only such
occurrence in the test suite. It's also prone to breakage for downstreams that change the library
path.
But it's not even necessary: during build we have the appropriate RPATHs set so we can just depend
on the dynamic loader to find it. This extra logic is probably just copy-paste from PluginsTest.cpp.
Additionally:
* Removed TargetParser as a dependency because it doesn't seem to actually be used.
* Moved `add_dependencies()` to `DEPENDS` to better match the rest of LLVM.
Commit: a05e8d506bb8f986f810d9872715919ddb773bc7
https://github.com/llvm/llvm-project/commit/a05e8d506bb8f986f810d9872715919ddb773bc7
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/select-smin-smax.ll
Log Message:
-----------
[X86] Allow all legal integers to optimize smin with 0 (#151893)
It makes no sense why smin has to be limited to 32 and 64 bits.
hasAndNot only exists for 32 and 64 bits, so this does not affect smax.
Commit: b6231f5197820026adc452707e920847364f2e6f
https://github.com/llvm/llvm-project/commit/b6231f5197820026adc452707e920847364f2e6f
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/ExactSIV.ll
Log Message:
-----------
[DA] Add overflow check in ExactSIV (#157086)
This patch adds an overflow check to the `exactSIVtest` function to fix
the issue demonstrated in the test case added in #157085. This patch
only fixes one of the routines. To fully resolve the test case, the
other functions need to be addressed as well.
Commit: 6b54c92be02079eff4f4edfbe667e60c3a1949df
https://github.com/llvm/llvm-project/commit/6b54c92be02079eff4f4edfbe667e60c3a1949df
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/include/llvm/MC/MCInstrDesc.h
M llvm/include/llvm/MC/MCInstrInfo.h
M llvm/include/llvm/MC/MCSubtargetInfo.h
M llvm/include/llvm/Target/Target.td
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/SIInstrFormats.td
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
M llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp
A llvm/test/TableGen/RegClassByHwMode.td
M llvm/utils/TableGen/AsmMatcherEmitter.cpp
M llvm/utils/TableGen/AsmWriterEmitter.cpp
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
M llvm/utils/TableGen/Common/CodeGenInstAlias.cpp
M llvm/utils/TableGen/Common/CodeGenInstruction.cpp
M llvm/utils/TableGen/Common/CodeGenTarget.cpp
M llvm/utils/TableGen/Common/CodeGenTarget.h
M llvm/utils/TableGen/Common/InfoByHwMode.cpp
M llvm/utils/TableGen/Common/InfoByHwMode.h
M llvm/utils/TableGen/Common/InstructionEncoding.cpp
M llvm/utils/TableGen/Common/InstructionEncoding.h
M llvm/utils/TableGen/DAGISelMatcherGen.cpp
M llvm/utils/TableGen/DecoderEmitter.cpp
M llvm/utils/TableGen/GlobalISelEmitter.cpp
M llvm/utils/TableGen/InstrInfoEmitter.cpp
M llvm/utils/TableGen/SubtargetEmitter.cpp
Log Message:
-----------
CodeGen: Add RegisterClass by HwMode (#158269)
This is a generalization of the LookupPtrRegClass mechanism.
AMDGPU has several use cases for swapping the register class of
instruction operands based on the subtarget, but none of them
really fit into the box of being pointer-like.
The current system requires manual management of an arbitrary integer
ID. For the AMDGPU use case, this would end up being around 40 new
entries to manage.
This just introduces the base infrastructure. I have ports of all
the target specific usage of PointerLikeRegClass ready.
Commit: 61166a9345e58ded6e1b7adb0e3a473ae7496cac
https://github.com/llvm/llvm-project/commit/61166a9345e58ded6e1b7adb0e3a473ae7496cac
Author: Raul Tambre <raul at tambre.ee>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/unittests/CodeGen/CGPluginTest/CMakeLists.txt
Log Message:
-----------
[llvm][test][CGPluginTest] Add back missing TargetParser dependency (#159760)
Din't seem to be used, but is.
[737/738] Linking CXX executable unittests/CodeGen/CGPluginTest/CGPluginTest
FAILED: unittests/CodeGen/CGPluginTest/CGPluginTest
: && /usr/bin/c++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -Wl,--export-dynamic -Wl,--gc-sections unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/Plugin/CodeGenTestPass.cpp.o -o unittests/CodeGen/CGPluginTest/CGPluginTest -Wl,-rpath,/home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/lib lib/libLLVMX86CodeGen.so.22.0git lib/libLLVMX86AsmParser.so.22.0git lib/libLLVMX86De
sc.so.22.0git lib/libLLVMX86Disassembler.so.22.0git lib/libLLVMX86Info.so.22.0git lib/libLLVMAMDGPUCodeGen.so.22.0git lib/libLLVMAMDGPUAsmParser.so.22.0git lib/libLLVMAMDGPUDisassembler.so.22.0git lib/libllvm_gtest_main.so.22.0git lib/libLLVMTestingSupport.so.22.0git lib/libLLVMCodeGen.so.22.0git lib/libLLVMTarget.so.22.0git lib/libLLVMAMDGPUDesc.so.22.0git lib/libLLVMAMDGPUInfo.so.22.0git lib/libLLVMAMDGPUUtils.so.22.0git lib/libLLVMCore.so.22.0git lib/libLLVMMC.so.22.0git lib/libllvm_gtest.so.22.0git lib/libLLVMSupport.so.22.0git -Wl,-rpath-link,/home/botworker/builds/openmp-offload-amdgpu-runtime-2/llvm.build/lib && :
/usr/bin/ld: unittests/CodeGen/CGPluginTest/CMakeFiles/CGPluginTest.dir/PluginTest.cpp.o: undefined reference to symbol '_ZN4llvm6TripleC1ERKNS_5TwineES3_S3_'
Fixes: 4e1c996674cc340f290b0a528e2038e76494d8d4
Commit: a254f6524aa511eb0ead54f825262e75d467b82e
https://github.com/llvm/llvm-project/commit/a254f6524aa511eb0ead54f825262e75d467b82e
Author: Claudio Saavedra <csaavedra at igalia.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
Log Message:
-----------
[WebKit checkers] fix a typo in a message in one of the checkers (#159593)
Commit: fba55c89c32fd45cc279a903b5a749c5951f4593
https://github.com/llvm/llvm-project/commit/fba55c89c32fd45cc279a903b5a749c5951f4593
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/combine-vpmadd52.ll
Log Message:
-----------
[X86] Fold X * 1 + Z --> X + Z for VPMADD52L (#158516)
This patch implements the fold `lo(X * 1) + Z --> lo(X) + Z --> X iff X
== lo(X)`.
Commit: 3c862b4ba39aa53a2dfcffb2fe7862e02f7bd746
https://github.com/llvm/llvm-project/commit/3c862b4ba39aa53a2dfcffb2fe7862e02f7bd746
Author: Matthias Springer <me at m-sp.org>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/SCF/Transforms/Patterns.h
M mlir/include/mlir/Transforms/DialectConversion.h
M mlir/lib/Dialect/SCF/Transforms/StructuralTypeConversions.cpp
M mlir/lib/Transforms/Utils/DialectConversion.cpp
Log Message:
-----------
[mlir] Expose optional `PatternBenefit` to function / SCF populate functions (NFC) (#159752)
Pattern benefit allows users to give priority to a pattern.
Commit: 7b8fd8f31bc6d65a59b6e09ebbeb77fdfb95360f
https://github.com/llvm/llvm-project/commit/7b8fd8f31bc6d65a59b6e09ebbeb77fdfb95360f
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
Log Message:
-----------
[LLVM][SCEV] Look through common vscale multiplicand when simplifying compares. (#141798)
My usecase is simplifying the control flow generated by LoopVectorize
when vectorising loops whose tripcount is a function of the runtime
vector length. This can be problematic because:
* CSE is a pre-LoopVectorize transform and so it's common for an IR
function to include several calls to llvm.vscale(). (NOTE: Code
generation will typically remove the duplicates)
* Pre-LoopVectorize instcombines will rewrite some multiplies as shifts.
This leads to a mismatch between VL based maths of the scalar loop and
that created for the vector loop, which prevents some obvious
simplifications.
SCEV does not suffer these issues because it effectively does CSE during
construction and shifts are represented as multiplies.
Commit: 1597fad405d75352124289dcce828d1636550026
https://github.com/llvm/llvm-project/commit/1597fad405d75352124289dcce828d1636550026
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/docs/LanguageExtensions.rst
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/Headers/avx512cdintrin.h
M clang/lib/Headers/avx512vlcdintrin.h
M clang/lib/Sema/SemaChecking.cpp
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/constant-builtins-vector.cpp
M libclc/clc/lib/generic/integer/clc_clz.inc
M libclc/clc/lib/generic/integer/clc_ctz.inc
Log Message:
-----------
[Clang] Rename elementwise builtins to `clzg` and `ctzg` (#157128)
Summary:
The added bit counting builtins for vectors used `cttz` and `ctlz`,
which is consistent with the LLVM naming convention. However, these are
clang builtins and implement exactly the `__builtin_ctzg` and
`__builtin_clzg` behavior. It is confusing to people familiar with other
other builtins that these are the only bit counting intrinsics named
differently. This includes the additional operation for the undefined
zero case, which was added as a `clzg` extension.
Commit: 13605abe077d3202119000a9b5da24ebd73b3713
https://github.com/llvm/llvm-project/commit/13605abe077d3202119000a9b5da24ebd73b3713
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/CMakeLists.txt
A llvm/test/FileCheck/CMakeLists.txt
A llvm/test/TableGen/CMakeLists.txt
Log Message:
-----------
[LLVM] Specialize test suites for `TableGen` and `FileCheck` to use smaller set of dependencies (#155929)
Define lit testsuite for FileCheck and TableGen with smaller set of
dependencies. This uses the new `SKIP` argument to `add_lit_testsuites`
that was added in https://github.com/llvm/llvm-project/pull/157176/.
Commit: eed99d50086c730c6422b566d9f82d4babdfa5bd
https://github.com/llvm/llvm-project/commit/eed99d50086c730c6422b566d9f82d4babdfa5bd
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx8.mir
Log Message:
-----------
[AMDGPU] Fix the magic number RegisterClass for SReg_32 in test (#159761)
Commit: b7e4edca3d56ec87f719c202f5397b245595f7cc
https://github.com/llvm/llvm-project/commit/b7e4edca3d56ec87f719c202f5397b245595f7cc
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCFastISel.cpp
M llvm/test/CodeGen/PowerPC/vec_constants.ll
Log Message:
-----------
[LLVM][CodeGen] Update PPCFastISel::SelectRet for ConstantInt based vectors. (#159331)
The current implementation assumes ConstantInt return values are scalar,
which is not true when use-constant-int-for-fixed-length-splat is
enabled.
Commit: 68c9ddb93022f46f49d8b1a6063065d3a15aba0f
https://github.com/llvm/llvm-project/commit/68c9ddb93022f46f49d8b1a6063065d3a15aba0f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/functions.cpp
Log Message:
-----------
[clang][bytecode] Typecheck called function pointers more thorougly (#159757)
Fix two older FIXME items from the `functions.cpp` test.
Commit: 9113592312357d777a4e65833c2887f737bc9e6a
https://github.com/llvm/llvm-project/commit/9113592312357d777a4e65833c2887f737bc9e6a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp
M llvm/lib/Target/Sparc/SparcInstrInfo.td
Log Message:
-----------
SPARC: Use RegClassByHwMode instead of PointerLikeRegClass (#158271)
Commit: cc680fc50c3b42bef920a5411cf902e6a6a9c4d4
https://github.com/llvm/llvm-project/commit/cc680fc50c3b42bef920a5411cf902e6a6a9c4d4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/lib/Target/X86/X86AsmPrinter.cpp
M llvm/lib/Target/X86/X86IndirectThunks.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86ReturnThunks.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TargetParser/TargetDataLayout.cpp
Log Message:
-----------
X86: Avoid using isArch64Bit for 64-bit checks (#157412)
Just directly check x86_64. isArch64Bit just adds extra
steps around this.
Commit: 188c7ed171705b7f50cd18f81de4eec4e316384a
https://github.com/llvm/llvm-project/commit/188c7ed171705b7f50cd18f81de4eec4e316384a
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-128-v16.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
Log Message:
-----------
[X86] Add test coverage for #159670 (#159767)
Commit: ba49062914f01f68cf3c4e067139a24b29a0e45b
https://github.com/llvm/llvm-project/commit/ba49062914f01f68cf3c4e067139a24b29a0e45b
Author: Devajith <devajith.valaparambil.sreeramaswamy at cern.ch>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/Expr.h
M clang/lib/AST/StmtPrinter.cpp
M clang/test/SemaCXX/ast-print.cpp
Log Message:
-----------
[Clang][AST] Fix printing for `atomic_test_and_set` and `atomic_clear` (#159712)
https://github.com/llvm/llvm-project/pull/121943 rewrote
`__atomic_test_and_set` and `__atomic_clear` to be lowered through
AtomicExpr
StmtPrinter::VisitAtomicExpr still treated them like other atomic
builtins with a Val1 operand. This led to incorrect pretty-printing when
dumping the AST.
Skip Val1 for these two builtins like atomic loads.
Commit: 562146499c391f72d3bed6d91a80d432af14db49
https://github.com/llvm/llvm-project/commit/562146499c391f72d3bed6d91a80d432af14db49
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ExecutionDomainFix.h
M llvm/include/llvm/CodeGen/ReachingDefAnalysis.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/ExecutionDomainFix.cpp
M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/ARM/ARMFixCortexA57AES1742098Pass.cpp
M llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/test/CodeGen/ARM/O3-pipeline.ll
M llvm/test/CodeGen/RISCV/rda-stack.mir
M llvm/test/CodeGen/SystemZ/rda-stack-copy.mir
M llvm/test/CodeGen/X86/opt-pipeline.ll
A llvm/test/CodeGen/X86/print-reaching-defs.mir
Log Message:
-----------
[CodeGen][NewPM] Port `ReachingDefAnalysis` to new pass manager. (#159572)
In this commit:
(1) Added new pass manager support for `ReachingDefAnalysis`.
(2) Added printer pass.
(3) Make old pass manager use `ReachingDefInfoWrapperPass`
Commit: 2654b511fea7f5e6d56bdf6f1923c7b9f1899542
https://github.com/llvm/llvm-project/commit/2654b511fea7f5e6d56bdf6f1923c7b9f1899542
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86InstrInfo.td
M llvm/lib/Target/X86/X86InstrOperands.td
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/utils/TableGen/X86FoldTablesEmitter.cpp
Log Message:
-----------
X86: Switch to RegClassByHwMode (#158274)
Replace the target uses of PointerLikeRegClass with RegClassByHwMode
Commit: 584af2f89e95f9fc7cb940a0c5380d608639e7d1
https://github.com/llvm/llvm-project/commit/584af2f89e95f9fc7cb940a0c5380d608639e7d1
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/clang-tidy-config.h.cmake
A clang-tools-extra/clang-tidy/custom/CMakeLists.txt
A clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.h
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/incorrect-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/append-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/empty-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/override-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/root-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/BUILD.bazel
Log Message:
-----------
reapply "[clang-tidy] support query based custom check" (#159547)
reapply #131804 and #159289
Fixed cmake link issue.
---------
Co-authored-by: DeNiCoN <denicon1234 at gmail.com>
Co-authored-by: Baranov Victor <bar.victor.2002 at gmail.com>
Commit: 084872a26d1a58129536e654ba9e29bc39cea1bb
https://github.com/llvm/llvm-project/commit/084872a26d1a58129536e654ba9e29bc39cea1bb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
M llvm/lib/Target/Mips/MicroMipsInstrInfo.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsRegisterInfo.cpp
M llvm/lib/Target/Mips/MipsRegisterInfo.h
M llvm/lib/Target/Mips/MipsRegisterInfo.td
Log Message:
-----------
Mips: Switch to RegClassByHwMode (#158273)
Commit: be6c4d933d0a4578fb6792807825b2f38c009b8d
https://github.com/llvm/llvm-project/commit/be6c4d933d0a4578fb6792807825b2f38c009b8d
Author: zhijian lin <zhijian at ca.ibm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
M llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp
M llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.h
M llvm/test/CodeGen/PowerPC/milicode32.ll
M llvm/test/CodeGen/PowerPC/milicode64.ll
Log Message:
-----------
[PowerPC] using milicode call for strlen instead of lib call (#153600)
AIX has "millicode" routines, which are functions loaded at boot time
into fixed addresses in kernel memory. This allows them to be customized
for the processor. The __strlen routine is a millicode implementation;
we use millicode for the strlen function instead of a library call to
improve performance.
Commit: e2467cbfa8fdc440debac1cfb930ee476f3d5e42
https://github.com/llvm/llvm-project/commit/e2467cbfa8fdc440debac1cfb930ee476f3d5e42
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Semantics/check-omp-structure.cpp
Log Message:
-----------
[flang][OpenMP] Remove no longer used OmpLoopDirective, NFC (#159576)
Commit: cd0f191792d48acd941067abfc59572b0bcc1f6e
https://github.com/llvm/llvm-project/commit/cd0f191792d48acd941067abfc59572b0bcc1f6e
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
M mlir/test/Dialect/LLVMIR/rocdl.mlir
M mlir/test/Target/LLVMIR/rocdl.mlir
Log Message:
-----------
[mlir][rocdl] Add gfx1250+ cvt scale intrinsics (#159649)
Commit: c7054d92442e5e1dae26c1e652761c147b537ec4
https://github.com/llvm/llvm-project/commit/c7054d92442e5e1dae26c1e652761c147b537ec4
Author: Nico Weber <thakis at chromium.org>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/BUILD.gn
A llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/custom/BUILD.gn
Log Message:
-----------
[gn] port 584af2f89e95 (clang-tidy custom)
Commit: ac8f3cdcf31d12f6873e463b63ef09436219d065
https://github.com/llvm/llvm-project/commit/ac8f3cdcf31d12f6873e463b63ef09436219d065
Author: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/sink-addr-memory-intrinsics.ll
Log Message:
-----------
[AMDGPU] Precommit test for memory intrinics CGP handling
Change-Id: Id229f849b1d8552bbe59d6e18114042ef1614fad
Commit: 1eb575dcaea4cb677e6a977dd41b3843057bca83
https://github.com/llvm/llvm-project/commit/1eb575dcaea4cb677e6a977dd41b3843057bca83
Author: RolandF77 <froese at ca.ibm.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/test/CodeGen/PowerPC/splat-extend.ll
Log Message:
-----------
[PowerPC] Fix vector extend result types in BUILD_VECTOR lowering (#159398)
The result type of the vector extend intrinsics generated by the
BUILD_VECTOR lowering code should match how they are actually defined.
Currently the result type is defaulting to the operand type there. This
can conflict with calls to the same intrinsic from other paths.
Commit: bce48c89a04df5d5918d787e8b481cdfb0707307
https://github.com/llvm/llvm-project/commit/bce48c89a04df5d5918d787e8b481cdfb0707307
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
[lldb] Don't call FixDataAddress when reading fp in ReadGPRValue (#159606)
Based on testing on processors that use pointer metadata, and with all
the work done to delay calls to FixDataAddress, this is no longer
necessary.
Note that, with debugserver in particular, this is an NFC change: the
code path here is for frame zero, and debugserver will strip metadata
when reading fp from frame zero anyway.
Commit: acc156dc6fd84c661b23db57aa9adc1d4ae668e4
https://github.com/llvm/llvm-project/commit/acc156dc6fd84c661b23db57aa9adc1d4ae668e4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/PowerPC/Disassembler/PPCDisassembler.cpp
M llvm/lib/Target/PowerPC/PPC.td
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
Log Message:
-----------
PPC: Replace PointerLikeRegClass with RegClassByHwMode (#158777)
Commit: 00333ed37779af189a66e971217390165024b1b2
https://github.com/llvm/llvm-project/commit/00333ed37779af189a66e971217390165024b1b2
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M libcxx/utils/compare-benchmarks
M libcxx/utils/requirements.txt
A libcxx/utils/visualize-historical
Log Message:
-----------
[libc++] Add a utility to visualize historical benchmark data locally
This should eventually be done using `lnt` instead, but for the time
being this makes it easy to visualize historical data without having
an instance of `lnt` running.
Commit: 815b1641a65c33dd331efb816fdafeafd0a7e794
https://github.com/llvm/llvm-project/commit/815b1641a65c33dd331efb816fdafeafd0a7e794
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M libcxx/test/benchmarks/atomic_wait_1_waiter_1_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_N_waiter_N_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_multi_waiter_1_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
Log Message:
-----------
[libc++] Disable atomic_wait benchmarks outside of dry-run mode (#158631)
The atomic_wait benchmarks are great, but they tend to overload the
system they're running on. For that reason, we can't run them on our CI
infrastructure on a regular basis.
Instead of removing them, make them unsupported outside of dry-running,
which allows keeping the benchmarks around and ensuring they don't rot,
but doesn't run them along with the other benchmarks. If we need to
investigate atomic_wait performance, it's trivial to mark the benchmark
as supported and run it for local investigations.
This is an alternative to https://github.com/llvm/llvm-project/pull/158289.
Commit: 50ef746a12a77e2e9f0c61f3ad92dfe0d8019194
https://github.com/llvm/llvm-project/commit/50ef746a12a77e2e9f0c61f3ad92dfe0d8019194
Author: Konrad Kleine <kkleine at redhat.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang/utils/perf-training/perf-helper.py
Log Message:
-----------
Fix perf-helper.py (#159745)
When build with assertions, there will be an output like the following
that needs to be filtered out, similar to the other ones.
`'Build config: +assertions'`
Commit: b21dd44dbc00a60b787dcfa90ca0e8b677c5211f
https://github.com/llvm/llvm-project/commit/b21dd44dbc00a60b787dcfa90ca0e8b677c5211f
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
R lldb/test/API/macosx/arm-pointer-metadata-stripping/Makefile
R lldb/test/API/macosx/arm-pointer-metadata-stripping/TestArmPointerMetadataStripping.py
R lldb/test/API/macosx/arm-pointer-metadata-stripping/extra_symbols.json
R lldb/test/API/macosx/arm-pointer-metadata-stripping/main.c
A lldb/test/API/pointer-nonaddressable-bits/Makefile
A lldb/test/API/pointer-nonaddressable-bits/TestArmPointerMetadataStripping.py
A lldb/test/API/pointer-nonaddressable-bits/extra_symbols.json
A lldb/test/API/pointer-nonaddressable-bits/main.c
Log Message:
-----------
[lldb][test] Enable non-address bit WritePointerToMemory test on Linux (#157435)
First added in #153585 for Darwin only. All Linux AArch64 systems also
have Top Byte Ignore enabled in userspace so the test "just works"
there.
FreeBSD has very recently gained Top Byte Ignore support:
https://github.com/freebsd/freebsd-src/commit/4c6c27d3fb4ad15931aae2eaf8e624aed99a3fd9
However it's so recent, I don't want to assume it'll be available on any
random FreeBSD system out there.
There isn't really a good place to put this test, so I put it in the top
level of API, next to the other non-address bit test that didn't have a
good home either.
Commit: 80fa3bddd0dfd5c1ed4301033e5647a3c7f226ee
https://github.com/llvm/llvm-project/commit/80fa3bddd0dfd5c1ed4301033e5647a3c7f226ee
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang-rt/include/flang-rt/runtime/file.h
M flang-rt/lib/runtime/extensions.cpp
M flang-rt/lib/runtime/unit.h
M flang/docs/Intrinsics.md
M flang/include/flang/Runtime/extensions.h
Log Message:
-----------
[flang] Implement FNUM() (#159433)
The GNU Fortran library function FNUM(u) returns the UNIX file
descriptor that corresponds to an open Fortran unit number, if any;
otherwise -1.
This implementation is a library extension only, not an intrinsic.
Commit: 8109c3a27f949d46337047fc9732e84926504ec2
https://github.com/llvm/llvm-project/commit/8109c3a27f949d46337047fc9732e84926504ec2
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/test/FileCheck/CMakeLists.txt
M llvm/test/TableGen/CMakeLists.txt
Log Message:
-----------
[LLVM] Exclude specialized lit test suites from check-all (#159781)
Commit: 19bc0d6543aedc1d9151e1b2435fc4b998a72d4e
https://github.com/llvm/llvm-project/commit/19bc0d6543aedc1d9151e1b2435fc4b998a72d4e
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M lldb/include/lldb/Core/Opcode.h
M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.h
M lldb/unittests/Instruction/CMakeLists.txt
R lldb/unittests/Instruction/RISCV/TestRiscvInstEmulation.cpp
Log Message:
-----------
Revert "RISCV unwinding enable" (#159790)
Reverts llvm/llvm-project#158161
Due to reported failures on remote Linux and Swift buildbots.
Commit: 75dba8ea9ee164a297066afae437bc379f86f482
https://github.com/llvm/llvm-project/commit/75dba8ea9ee164a297066afae437bc379f86f482
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/docs/CommandGuide/lit.rst
M llvm/utils/lit/lit/TestRunner.py
A llvm/utils/lit/tests/Inputs/shtest-readfile/absolute-paths.txt
A llvm/utils/lit/tests/Inputs/shtest-readfile/file-does-not-exist.txt
A llvm/utils/lit/tests/Inputs/shtest-readfile/lit.cfg
A llvm/utils/lit/tests/Inputs/shtest-readfile/relative-paths.txt
A llvm/utils/lit/tests/Inputs/shtest-readfile/two-same-line.txt
A llvm/utils/lit/tests/shtest-readfile.py
Log Message:
-----------
[lit] Add readfile substitution
This patch adds a new %{readfile:<file name>} substitution to lit. This
is needed for porting a couple of tests to lit's internal shell. These
tests are all using subshells to pass some option to a command are not
feasible to run within the internal shell without this functionality.
Reviewers: petrhosek, jh7370, ilovepi, cmtice
Reviewed By: jh7370, cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/158441
Commit: 69465ebb22871e5c556ebf22ef4ebbf0a42be3d5
https://github.com/llvm/llvm-project/commit/69465ebb22871e5c556ebf22ef4ebbf0a42be3d5
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[llvm-readobj][NFC] Format ElfMachineType array definition (#159793)
Planning to add to the list in
https://github.com/llvm/llvm-project/pull/159791, so format it.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 74bea4c1ad34c9044b9e02f7f9688a408676df75
https://github.com/llvm/llvm-project/commit/74bea4c1ad34c9044b9e02f7f9688a408676df75
Author: Wael Yehia <wmyehia2001 at yahoo.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/test/Assembler/metadata.ll
Log Message:
-----------
[IR] enable attaching metadata on ifuncs (#158732)
Teach the IR parser and writer to support metadata on ifuncs, and update
documentation.
In PR #153049, we have a use case of attaching the `!associated`
metadata to an ifunc.
Since an ifunc is similar to a function declaration, it seems natural to
allow metadata on ifuncs.
Currently, the metadata API allows adding Metadata to
llvm::GlobalObject, so the in-memory IR allows for metadata on ifuncs,
but the IR reader/writer is not aware of that.
---------
Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
Commit: 74a0d913435218dc97e2ce2f4bbe7a5ba6d515ec
https://github.com/llvm/llvm-project/commit/74a0d913435218dc97e2ce2f4bbe7a5ba6d515ec
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
Log Message:
-----------
[clang-tidy] Fix `bugprone-sizeof-expression` crash on arrays of dependent type (#159701)
Fixes #158422.
Commit: 8c189327e5573e597b3eead418beab6aaea72ca3
https://github.com/llvm/llvm-project/commit/8c189327e5573e597b3eead418beab6aaea72ca3
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Parser/OpenMP/sections.f90
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification in SECTIONS (#159580)
Commit: 7f2dcaab393a75877fe84d40b0a2633b0cae141b
https://github.com/llvm/llvm-project/commit/7f2dcaab393a75877fe84d40b0a2633b0cae141b
Author: Brandon Wu <songwu0813 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
Log Message:
-----------
[NFC][RISCV] Move Zvfbf* relative stuffs to RISCVInstrInfoZvfbf.td (#159619)
Commit: 15223548addf8aba95dba6cc8c175742dfcc3216
https://github.com/llvm/llvm-project/commit/15223548addf8aba95dba6cc8c175742dfcc3216
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M lldb/source/Utility/ArchSpec.cpp
Log Message:
-----------
[lldb] Add a static_assert that g_core_definitions matches the Core enum (#159452)
This PR uses the same trick as 7ced9fff95473 to ensure the
`g_core_definitions` table is correctly indexed by the Core enum. It's
easy to make a mistake. Case in point: this caught two entries that
appeared in the wrong order.
Commit: ffb70b00f970ec72a540a4c3c7f11af139accd1b
https://github.com/llvm/llvm-project/commit/ffb70b00f970ec72a540a4c3c7f11af139accd1b
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZvfbf.td
Log Message:
-----------
[RISCV] Fix build after e747223c03e16d02cd0dc6f8eedb5c825a7366c1
Commit: 24b03d3217e41536cee7c868860b5930160ad526
https://github.com/llvm/llvm-project/commit/24b03d3217e41536cee7c868860b5930160ad526
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M flang/lib/Parser/openmp-parsers.cpp
Log Message:
-----------
[flang][OpenMP] Move helper functions further up the file, NFC (#159803)
Move them to before any potential users.
Commit: 6119d1f115625cd1b8a2b9d331609eb9e9f676ce
https://github.com/llvm/llvm-project/commit/6119d1f115625cd1b8a2b9d331609eb9e9f676ce
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vw-web-simplification.ll
Log Message:
-----------
[RISCV] Re-work how VWADD_W_VL and similar _W_VL nodes are handled in combineOp_VLToVWOp_VL. (#159205)
These instructions have one already narrow operand. Previously, we
pretended like this operand was a supported extension.
This could cause problems when we called getOrCreateExtendedOp on this
narrow operand when creating the the VWADD_VL. If the narrow operand
happened to be an extend of the opposite type, we would peek through it
and then rebuild it with the wrong extension type. So (vwadd_w_vl (i32
(sext X)), (i16 (zext Y))) would become (vwadd_vl (i16 (sext X)), (i16
(sext Y))).
To prevent this, we ignore the operand instead and pass std::nullopt for
SupportsExt to getOrCreateExtendedOp so it won't peek through any
extends on the narrow source.
Fixes #159152.
Commit: cbb60a32d79fb65401719216dda7e85468bad2d9
https://github.com/llvm/llvm-project/commit/cbb60a32d79fb65401719216dda7e85468bad2d9
Author: Fangrui Song <i at maskray.me>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/Options.td
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
M lld/test/ELF/gc-sections-print.s
Log Message:
-----------
[ELF] Add --print-gc-sections=<file> (#159706)
Add `--print-gc-sections=<file>` to redirect garbage collection section
listing to a file, avoiding contamination of stdout with other linker
output. mold has recently added the option.
GNU ld feature request:
https://sourceware.org/bugzilla/show_bug.cgi?id=33331
Commit: 5f86d0b644c4a7a3a51102444faad8b594469e41
https://github.com/llvm/llvm-project/commit/5f86d0b644c4a7a3a51102444faad8b594469e41
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-qualified-auto in TosaValidation.cpp (NFC)
Commit: a513b701752b139bde7b4c3ecebd549a8cb40e3e
https://github.com/llvm/llvm-project/commit/a513b701752b139bde7b4c3ecebd549a8cb40e3e
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
M clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
M clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
M clang-tools-extra/test/lit.cfg.py
M clang-tools-extra/test/lit.site.cfg.py.in
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
Log Message:
-----------
[clang-tidy][custom-check][NFC] fix test when `CLANG_TIDY_ENABLE_QUERY_BASED_CUSTOM_CHECKS` disable (#159809)
Commit: 5e59a9ac09ee33fc6265f2fa84fd4d1c9d90c1bd
https://github.com/llvm/llvm-project/commit/5e59a9ac09ee33fc6265f2fa84fd4d1c9d90c1bd
Author: Sergei Barannikov <barannikov88 at gmail.com>
Date: 2025-09-19 (Fri, 19 Sep 2025)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .github/CODEOWNERS
R .github/dependabot.yml
M .github/new-prs-labeler.yml
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
M .github/workflows/docs.yml
A .github/workflows/gha-codeql.yml
M .github/workflows/libclang-abi-tests.yml
A .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/llvm-tests.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
M bolt/docs/CommandLineArgumentReference.md
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/test/AArch64/print-mem-data.test
A bolt/test/AArch64/print-sorted-by-order.s
A bolt/test/X86/multi-cu-debug-line.s
A bolt/test/dwo-name-retrieving.test
M bolt/test/lit.cfg.py
A bolt/test/process-debug-line
A bolt/test/runtime/AArch64/inline-memcpy.s
M bolt/unittests/Core/CMakeLists.txt
A bolt/unittests/Core/ClusteredRows.cpp
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clang-tidy/.clang-tidy
M clang-tools-extra/clang-tidy/CMakeLists.txt
M clang-tools-extra/clang-tidy/ClangTidy.cpp
M clang-tools-extra/clang-tidy/ClangTidy.h
M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/ClangTidyCheck.h
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
M clang-tools-extra/clang-tidy/ClangTidyModule.cpp
M clang-tools-extra/clang-tidy/ClangTidyModule.h
M clang-tools-extra/clang-tidy/ClangTidyModuleRegistry.h
M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
M clang-tools-extra/clang-tidy/ClangTidyOptions.h
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ClangTidyProfiling.h
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/FileExtensionsSet.h
M clang-tools-extra/clang-tidy/GlobList.cpp
M clang-tools-extra/clang-tidy/GlobList.h
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.h
M clang-tools-extra/clang-tidy/abseil/AbseilTidyModule.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.cpp
M clang-tools-extra/clang-tidy/abseil/CleanupCtadCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationDivisionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
M clang-tools-extra/clang-tidy/abseil/DurationRewriter.h
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.h
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.cpp
M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.h
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.h
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/abseil/NoNamespaceCheck.h
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.h
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StrCatAppendCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.h
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.h
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.h
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.h
M clang-tools-extra/clang-tidy/add_new_check.py
M clang-tools-extra/clang-tidy/altera/AlteraTidyModule.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.h
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.h
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.cpp
M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.h
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.h
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.h
M clang-tools-extra/clang-tidy/android/AndroidTidyModule.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.h
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCheck.h
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.h
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecDupCheck.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.h
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.h
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.h
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.h
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.h
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.h
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.cpp
M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.h
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.h
M clang-tools-extra/clang-tidy/boost/BoostTidyModule.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseRangesCheck.h
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.cpp
M clang-tools-extra/clang-tidy/boost/UseToStringCheck.h
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.h
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.h
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BitwisePointerCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BoolPointerImplicitConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.h
M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CastingThroughVoidCheck.h
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.h
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.h
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.h
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.h
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.h
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.h
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.h
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.h
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IncorrectRoundingsCheck.h
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.h
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.h
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.h
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.h
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.h
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.h
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.h
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NoEscapeCheck.h
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.h
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ParentVirtualCallCheck.h
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PointerArithmeticOnPolymorphicObjectCheck.h
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.h
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReservedIdentifierCheck.h
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.h
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SharedPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofContainerCheck.h
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.h
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringLiteralWithEmbeddedNulCheck.h
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/StringviewNullptrCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.h
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.h
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.h
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.h
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TerminatingContinueCheck.h
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.h
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.h
A clang-tools-extra/clang-tidy/bugprone/UncheckedStringToNumberConversionCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/UncheckedStringToNumberConversionCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.h
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnhandledSelfAssignmentCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.h
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UniquePtrArrayMismatchCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedLocalNonTrivialVariableCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.h
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.h
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.h
M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
M clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.cpp
M clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.cpp
M clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.h
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.h
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
M clang-tools-extra/clang-tidy/cert/FloatLoopCounter.h
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.cpp
M clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.h
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
M clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.h
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.cpp
M clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.h
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
M clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
M clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.cpp
M clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.h
M clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp
M clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.h
R clang-tools-extra/clang-tidy/cert/StrToNumCheck.cpp
R clang-tools-extra/clang-tidy/cert/StrToNumCheck.h
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
M clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.h
M clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.cpp
M clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.h
M clang-tools-extra/clang-tidy/clang-tidy-config.h.cmake
M clang-tools-extra/clang-tidy/concurrency/ConcurrencyTidyModule.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/MtUnsafeCheck.h
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.cpp
M clang-tools-extra/clang-tidy/concurrency/ThreadCanceltypeAsynchronousCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidConstOrRefDataMembersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidDoWhileCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidGotoCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidReferenceCoroutineParametersCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.h
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.h
A clang-tools-extra/clang-tidy/custom/CMakeLists.txt
A clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
A clang-tools-extra/clang-tidy/custom/QueryCheck.h
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.cpp
M clang-tools-extra/clang-tidy/darwin/AvoidSpinlockCheck.h
M clang-tools-extra/clang-tidy/darwin/DarwinTidyModule.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.cpp
M clang-tools-extra/clang-tidy/darwin/DispatchOnceNonstaticCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.h
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.h
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.h
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.h
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.h
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.h
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.cpp
M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.h
M clang-tools-extra/clang-tidy/google/CMakeLists.txt
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.cpp
M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.h
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitMakePairCheck.h
A clang-tools-extra/clang-tidy/google/FloatTypesCheck.cpp
A clang-tools-extra/clang-tidy/google/FloatTypesCheck.h
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.h
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalNamesInHeadersCheck.h
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.h
M clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.h
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.cpp
M clang-tools-extra/clang-tidy/google/OverloadedUnaryAndCheck.h
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.cpp
M clang-tools-extra/clang-tidy/google/TodoCommentCheck.h
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.cpp
M clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.h
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.h
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.cpp
M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.h
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.h
M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/IgnoredRemoveResultCheck.h
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.h
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.h
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.cpp
M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.h
M clang-tools-extra/clang-tidy/linuxkernel/LinuxKernelTidyModule.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.cpp
M clang-tools-extra/clang-tidy/linuxkernel/MustCheckErrsCheck.h
M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.h
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.h
M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.h
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferRegisterOverUnsignedCheck.h
M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.cpp
M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.h
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.h
A clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
A clang-tools-extra/clang-tidy/llvm/UseRangesCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/CalleeNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/ImplementationInNamespaceCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.h
M clang-tools-extra/clang-tidy/llvmlibc/LLVMLibcTidyModule.cpp
M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.cpp
M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.h
M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.h
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.h
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.h
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
M clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.h
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.cpp
M clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.h
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.cpp
M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.h
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.h
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp
M clang-tools-extra/clang-tidy/misc/NonCopyableObjects.h
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.cpp
M clang-tools-extra/clang-tidy/misc/NonPrivateMemberVariablesInClassesCheck.h
M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.h
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.h
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.h
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.h
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.h
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.cpp
M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.h
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.h
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.h
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.h
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.h
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.h
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.h
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.h
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.h
M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.h
M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.h
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.h
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.h
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/ShrinkToFitCheck.h
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.h
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.h
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.h
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.h
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.h
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.h
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.h
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.h
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStartsEndsWithCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.h
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.h
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.h
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.cpp
M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.h
M clang-tools-extra/clang-tidy/mpi/MPITidyModule.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp
M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.h
M clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
M clang-tools-extra/clang-tidy/objc/AssertEquals.h
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.cpp
M clang-tools-extra/clang-tidy/objc/AvoidNSErrorInitCheck.h
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.cpp
M clang-tools-extra/clang-tidy/objc/DeallocInCategoryCheck.h
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.cpp
M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.h
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
M clang-tools-extra/clang-tidy/objc/MissingHashCheck.h
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.h
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.cpp
M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.h
M clang-tools-extra/clang-tidy/objc/ObjCTidyModule.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.h
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.h
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.cpp
M clang-tools-extra/clang-tidy/openmp/ExceptionEscapeCheck.h
M clang-tools-extra/clang-tidy/openmp/OpenMPTidyModule.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.h
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.cpp
M clang-tools-extra/clang-tidy/performance/AvoidEndlCheck.h
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.h
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.h
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.h
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.h
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.h
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.h
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.h
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoIntToPtrCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.h
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.h
M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.cpp
M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.h
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.cpp
M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.h
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
M clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.cpp
M clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.h
M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.cpp
M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.h
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.h
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.cpp
M clang-tools-extra/clang-tidy/portability/StdAllocatorConstCheck.h
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.cpp
M clang-tools-extra/clang-tidy/portability/TemplateVirtualMemberFunctionCheck.h
M clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
M clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.cpp
M clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.h
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.h
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.h
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
M clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.h
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.cpp
M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.h
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.h
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.h
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.h
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.h
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.cpp
M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.h
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.h
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.h
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.h
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.h
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.cpp
M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.h
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.h
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp
M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.h
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.h
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.h
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.h
M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.h
M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.h
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.h
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.h
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.cpp
M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
M clang-tools-extra/clang-tidy/readability/StringCompareCheck.h
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.h
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.h
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp
M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.h
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.h
M clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.h
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.h
M clang-tools-extra/clang-tidy/rename_check.py
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
M clang-tools-extra/clang-tidy/tool/ClangTidyMain.h
M clang-tools-extra/clang-tidy/tool/ClangTidyToolMain.cpp
M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
M clang-tools-extra/clang-tidy/utils/ASTUtils.h
M clang-tools-extra/clang-tidy/utils/Aliasing.cpp
M clang-tools-extra/clang-tidy/utils/Aliasing.h
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.h
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.h
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.h
M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
M clang-tools-extra/clang-tidy/utils/ExprSequence.h
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.h
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.cpp
M clang-tools-extra/clang-tidy/utils/FixItHintUtils.h
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
M clang-tools-extra/clang-tidy/utils/FormatStringConverter.h
M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
M clang-tools-extra/clang-tidy/utils/HeaderGuard.h
M clang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeInserter.h
M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
M clang-tools-extra/clang-tidy/utils/IncludeSorter.h
M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
M clang-tools-extra/clang-tidy/utils/LexerUtils.h
M clang-tools-extra/clang-tidy/utils/Matchers.cpp
M clang-tools-extra/clang-tidy/utils/Matchers.h
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
M clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
M clang-tools-extra/clang-tidy/utils/OptionsUtils.h
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
M clang-tools-extra/clang-tidy/utils/TypeTraits.h
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
M clang-tools-extra/clang-tidy/utils/UsingInserter.cpp
M clang-tools-extra/clang-tidy/utils/UsingInserter.h
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
M clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.h
M clang-tools-extra/clang-tidy/zircon/ZirconTidyModule.cpp
M clang-tools-extra/clangd/AST.cpp
M clang-tools-extra/clangd/AST.h
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExpandDeducedType.cpp
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/ASTTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExpandDeducedTypeTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/ReleaseNotesTemplate.txt
M clang-tools-extra/docs/clang-tidy/Contributing.rst
A clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/derived-method-shadowing-base-method.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/easily-swappable-parameters.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-string-to-number-conversion.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err34-c.rst
A clang-tools-extra/docs/clang-tidy/checks/google/runtime-float.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/make-shared.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-scoped-lock.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/noexcept-move-constructor.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-apply-replacements/crlf.cpp
M clang-tools-extra/test/clang-include-fixer/multiple_fixes.cpp
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
M clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bdlb_nullablevalue.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-ignore.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicit-qualifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-implicits.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len2.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-len3.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-prefixsuffixname.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-qualifiermixing.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters-relatedness.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/easily-swappable-parameters.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-string-to-number-conversion.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-string-to-number-conversion.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.c
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/Inputs/incorrect-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/checkers/custom/query-incorrect-query.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query-partially-active-check.cpp
A clang-tools-extra/test/clang-tidy/checkers/custom/query.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/runtime-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays-ignores-strings.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-arrays.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity-flags.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/4/44/.clang-tidy
M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/config-files/4/key-dict/.clang-tidy
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/append-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/empty-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/override-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/root-clang-tidy.yml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/custom-query-check/vfsoverlay.yaml
A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/invalid-database/compile_commands.json
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-diff.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
R clang-tools-extra/test/clang-tidy/infrastructure/deprecation-global-option.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter-symlinks.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/header-filter-from-config-file/inheritance/subfolder/bar.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/hide-progress-flag-scripts.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/invalid-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/pr37091.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/verify-config.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/vfsoverlay.cpp
M clang-tools-extra/test/lit.cfg.py
M clang-tools-extra/test/lit.site.cfg.py.in
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_enums.py
M clang/cmake/caches/PGO.cmake
M clang/cmake/modules/ClangConfig.cmake.in
M clang/docs/APINotes.rst
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
M clang/include/clang/APINotes/Types.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTMutationListener.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/AST/TemplateName.h
M clang/include/clang/AST/Type.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeLoc.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/Analysis/Analyses/LiveVariables.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
M clang/include/clang/Basic/ABI.h
M clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXMIPS.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/BuiltinsX86_64.td
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Interpreter/Interpreter.h
R clang/include/clang/Interpreter/RemoteJITUtils.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/HeuristicResolver.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesReader.cpp
M clang/lib/APINotes/APINotesTypes.cpp
M clang/lib/APINotes/APINotesWriter.cpp
M clang/lib/APINotes/APINotesYAMLCompiler.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ASTTypeTraits.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpBuiltinBitCast.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpStack.cpp
M clang/lib/AST/ByteCode/InterpStack.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/ByteCode/Pointer.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/ByteCode/Source.h
M clang/lib/AST/ByteCode/State.cpp
M clang/lib/AST/ByteCode/State.h
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclOpenMP.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/DynamicRecursiveASTVisitor.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TemplateName.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
M clang/lib/Analysis/FlowSensitive/Transfer.cpp
M clang/lib/Analysis/LifetimeSafety.cpp
M clang/lib/Analysis/LiveVariables.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/ThreadSafetyCommon.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
R clang/lib/CIR/CodeGen/CIRGenCXXExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/CodeGen/EHScopeStack.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenSYCL.cpp
M clang/lib/CodeGen/CodeGenTypes.h
M clang/lib/CodeGen/EHScopeStack.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/X86.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Driver/ToolChains/PS4CPU.cpp
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/Format.cpp
A clang/lib/Format/NumericLiteralCaseFixer.cpp
A clang/lib/Format/NumericLiteralCaseFixer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/UnwrappedLineParser.h
M clang/lib/Frontend/ASTMerge.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/MultiplexConsumer.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/amxavx512intrin.h
M clang/lib/Headers/avx10_2_512bf16intrin.h
M clang/lib/Headers/avx10_2_512convertintrin.h
M clang/lib/Headers/avx10_2_512niintrin.h
M clang/lib/Headers/avx10_2_512satcvtdsintrin.h
M clang/lib/Headers/avx10_2bf16intrin.h
M clang/lib/Headers/avx10_2convertintrin.h
M clang/lib/Headers/avx10_2copyintrin.h
M clang/lib/Headers/avx10_2niintrin.h
M clang/lib/Headers/avx10_2satcvtdsintrin.h
M clang/lib/Headers/avx2intrin.h
M clang/lib/Headers/avx512bf16intrin.h
M clang/lib/Headers/avx512bitalgintrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512cdintrin.h
M clang/lib/Headers/avx512dqintrin.h
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512fp16intrin.h
M clang/lib/Headers/avx512ifmaintrin.h
M clang/lib/Headers/avx512ifmavlintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vbmiintrin.h
M clang/lib/Headers/avx512vbmivlintrin.h
M clang/lib/Headers/avx512vlbf16intrin.h
M clang/lib/Headers/avx512vlbitalgintrin.h
M clang/lib/Headers/avx512vlbwintrin.h
M clang/lib/Headers/avx512vlcdintrin.h
M clang/lib/Headers/avx512vldqintrin.h
M clang/lib/Headers/avx512vlfp16intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
M clang/lib/Headers/avx512vlvnniintrin.h
M clang/lib/Headers/avx512vlvp2intersectintrin.h
M clang/lib/Headers/avx512vnniintrin.h
M clang/lib/Headers/avx512vp2intersectintrin.h
M clang/lib/Headers/avx512vpopcntdqintrin.h
M clang/lib/Headers/avx512vpopcntdqvlintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/avxvnniintrin.h
M clang/lib/Headers/cpuid.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/f16cintrin.h
M clang/lib/Headers/fmaintrin.h
M clang/lib/Headers/gfniintrin.h
M clang/lib/Headers/intrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/module.modulemap
M clang/lib/Headers/movrs_avx10_2_512intrin.h
M clang/lib/Headers/movrs_avx10_2intrin.h
M clang/lib/Headers/pmmintrin.h
A clang/lib/Headers/riscv_mips.h
M clang/lib/Headers/sm4evexintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/lib/Headers/vaesintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/lib/Headers/xopintrin.h
M clang/lib/Interpreter/CMakeLists.txt
M clang/lib/Interpreter/IncrementalExecutor.cpp
M clang/lib/Interpreter/IncrementalExecutor.h
M clang/lib/Interpreter/Interpreter.cpp
R clang/lib/Interpreter/RemoteJITUtils.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/ModuleMapFile.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseHLSL.cpp
M clang/lib/Parse/ParseHLSLRootSignature.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseStmtAsm.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/HeuristicResolver.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaCUDA.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaStmtAttr.cpp
M clang/lib/Sema/SemaSwift.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTCommon.cpp
M clang/lib/Serialization/ASTCommon.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderDecl.cpp
M clang/lib/Serialization/ASTReaderStmt.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/ASTWriterDecl.cpp
M clang/lib/Serialization/ASTWriterStmt.cpp
M clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp
A clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
R clang/lib/StaticAnalyzer/Checkers/ValistChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
A clang/lib/StaticAnalyzer/Core/PlistDiagnostics.h
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
A clang/lib/StaticAnalyzer/Core/SarifDiagnostics.h
M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
M clang/lib/Testing/TestAST.cpp
M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/Tooling/Refactoring/Rename/USRLocFinder.cpp
M clang/lib/Tooling/Syntax/BuildTree.cpp
M clang/lib/Tooling/Tooling.cpp
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.apinotes
M clang/test/APINotes/Inputs/Headers/SwiftImportAs.h
M clang/test/APINotes/nullability.c
M clang/test/APINotes/nullability.m
M clang/test/APINotes/swift-import-as.cpp
M clang/test/APINotes/types.m
M clang/test/APINotes/yaml-roundtrip-2.test
M clang/test/APINotes/yaml-roundtrip.test
M clang/test/AST/ByteCode/atomic.c
M clang/test/AST/ByteCode/builtin-bit-cast.cpp
A clang/test/AST/ByteCode/builtins.c
M clang/test/AST/ByteCode/builtins.cpp
M clang/test/AST/ByteCode/c.c
M clang/test/AST/ByteCode/functions.cpp
M clang/test/AST/ByteCode/openmp.cpp
M clang/test/AST/ByteCode/references.cpp
M clang/test/AST/ByteCode/vectors.cpp
M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
A clang/test/AST/HLSL/RootSignature-Target-AST.hlsl
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
M clang/test/AST/HLSL/vk_binding_attr.hlsl
M clang/test/AST/ast-dump-attr.cpp
M clang/test/AST/ast-dump-templates.cpp
A clang/test/AST/cfi-unchecked-callee.cpp
M clang/test/Analysis/ArrayBound/assumption-reporting.c
M clang/test/Analysis/ArrayBound/verbose-tests.c
M clang/test/Analysis/Checkers/WebKit/call-args-checked-const-member.cpp
M clang/test/Analysis/Checkers/WebKit/call-args-checked.cpp
M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
M clang/test/Analysis/Checkers/WebKit/mock-types.h
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
A clang/test/Analysis/Checkers/WebKit/template-wrapper-call-arg.cpp
A clang/test/Analysis/Checkers/WebKit/trivial-code-check-asm-brk.cpp
M clang/test/Analysis/Checkers/WebKit/unchecked-call-arg.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-call-args-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
M clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members-arc.mm
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
M clang/test/Analysis/OSAtomic_mac.c
M clang/test/Analysis/PR24184.cpp
M clang/test/Analysis/bsd-string.c
M clang/test/Analysis/ctor-trivial-copy.cpp
M clang/test/Analysis/ctu-import-type-decl-definition.c
A clang/test/Analysis/diagnostics/Inputs/expected-plists/plist-html.c.plist
M clang/test/Analysis/diagnostics/Inputs/expected-sarif/sarif-multi-diagnostic-test.c.sarif
A clang/test/Analysis/diagnostics/plist-html.c
M clang/test/Analysis/diagnostics/sarif-multi-diagnostic-test.c
A clang/test/Analysis/issue-157467.cpp
M clang/test/Analysis/novoidtypecrash.c
M clang/test/Analysis/override-werror.c
M clang/test/Analysis/ptr-arith.cpp
M clang/test/Analysis/scan-build/cxx-name.test
M clang/test/Analysis/scan-build/deduplication.test
M clang/test/Analysis/scan-build/html_output.test
M clang/test/Analysis/scan-build/plist_html_output.test
M clang/test/Analysis/scan-build/plist_output.test
M clang/test/Analysis/string.c
M clang/test/Analysis/taint-generic.cpp
M clang/test/Analysis/uninit-vals-union.c
M clang/test/Analysis/valist-as-lazycompound.c
M clang/test/Analysis/valist-uninitialized-no-undef.c
M clang/test/Analysis/valist-uninitialized.c
M clang/test/Analysis/valist-unterminated.c
M clang/test/C/C11/n1285_1.c
M clang/test/C/C23/n3007.c
M clang/test/C/C2y/n3254.c
M clang/test/C/C2y/n3369.c
M clang/test/C/drs/dr0xx.c
M clang/test/CIR/CodeGen/atomic.c
M clang/test/CIR/CodeGen/builtin_call.cpp
M clang/test/CIR/CodeGen/builtins-elementwise.c
A clang/test/CIR/CodeGen/builtins-floating-point.c
M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
M clang/test/CIR/CodeGen/complex.cpp
A clang/test/CIR/CodeGen/cxx-default-init.cpp
M clang/test/CIR/CodeGen/delegating-ctor.cpp
A clang/test/CIR/CodeGen/nrvo.cpp
A clang/test/CIR/CodeGen/opaque.c
A clang/test/CIR/CodeGen/opaque.cpp
M clang/test/CIR/CodeGen/unary.cpp
M clang/test/CIR/CodeGen/vector-ext.cpp
M clang/test/CIR/CodeGen/vector.cpp
A clang/test/CIR/IR/alloca.cir
M clang/test/CXX/dcl.decl/dcl.init/dcl.init.list/p7-0x.cpp
M clang/test/CXX/drs/cwg30xx.cpp
R clang/test/ClangScanDeps/link-libraries-diag-dup.c
M clang/test/ClangScanDeps/module-format.c
M clang/test/ClangScanDeps/modules-context-hash-cwd.c
M clang/test/ClangScanDeps/modules-file-path-isolation.c
M clang/test/ClangScanDeps/modules-in-stable-dirs.c
M clang/test/ClangScanDeps/modules-symlink-dir-from-module.c
M clang/test/ClangScanDeps/modules-symlink-dir-vfs.c
M clang/test/ClangScanDeps/modules-symlink-dir.c
M clang/test/ClangScanDeps/optimize-canonicalize-macros.m
M clang/test/ClangScanDeps/prebuilt-modules-in-stable-dirs.c
M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
M clang/test/ClangScanDeps/symlink.cpp
M clang/test/CodeCompletion/included-symlinks.cpp
M clang/test/CodeGen/2008-03-05-syncPtr.c
M clang/test/CodeGen/AArch64/fp8-init-list.c
M clang/test/CodeGen/AArch64/ls64-inline-asm.c
A clang/test/CodeGen/AArch64/ptrauth-fmv.c
A clang/test/CodeGen/AArch64/resolver-attributes.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_cnt.c
M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
M clang/test/CodeGen/LoongArch/lasx/builtin.c
A clang/test/CodeGen/PowerPC/builtins-dmf-vsx-vector-float.c
M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
M clang/test/CodeGen/PowerPC/builtins-ppc-xlcompat-cas-error.c
M clang/test/CodeGen/PowerPC/ppc-dmf-mma-builtin-err.c
M clang/test/CodeGen/PowerPC/ppc-sfvarargs.c
M clang/test/CodeGen/RISCV/attr-hw-shadow-stack.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-globals.c
M clang/test/CodeGen/RISCV/builtin-cpu-is.c
A clang/test/CodeGen/RISCV/builtins-riscv-mips.c
M clang/test/CodeGen/RISCV/riscv-func-attr-target.c
M clang/test/CodeGen/RISCV/rvv-intrinsics-handcrafted/vlenb.c
M clang/test/CodeGen/SystemZ/builtins-systemz-i128.c
M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-16Al.c
M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-8Al.c
M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
M clang/test/CodeGen/SystemZ/zvector2.c
M clang/test/CodeGen/X86/amx_avx512_api.c
M clang/test/CodeGen/X86/amxavx512-builtins.c
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx10_2_512bf16-builtins.c
M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
M clang/test/CodeGen/X86/avx10_2_512minmax-builtins.c
M clang/test/CodeGen/X86/avx10_2_512minmax-error.c
M clang/test/CodeGen/X86/avx10_2_512ni-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-errors.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64-error.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2_512satcvtds-builtins.c
M clang/test/CodeGen/X86/avx10_2bf16-builtins.c
M clang/test/CodeGen/X86/avx10_2convert-builtins.c
M clang/test/CodeGen/X86/avx10_2minmax-builtins.c
M clang/test/CodeGen/X86/avx10_2ni-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins-x64.c
M clang/test/CodeGen/X86/avx10_2satcvtds-builtins.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512-error.c
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/avx512copy-builtins.c
M clang/test/CodeGen/X86/avx512dq-builtins.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlbw-builtins.c
M clang/test/CodeGen/X86/avx512vldq-builtins.c
M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vlvnni-builtins.c
M clang/test/CodeGen/X86/avx512vnni-builtins.c
M clang/test/CodeGen/X86/avxvnni-builtins.c
M clang/test/CodeGen/X86/avxvnniint16-builtins.c
M clang/test/CodeGen/X86/avxvnniint8-builtins.c
M clang/test/CodeGen/X86/cmpccxadd-builtins-error.c
R clang/test/CodeGen/X86/cygwin-varargs.c
M clang/test/CodeGen/X86/f16c-builtins.c
M clang/test/CodeGen/X86/math-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/movrs-avx10.2-512-builtins-error-32.c
M clang/test/CodeGen/X86/movrs-avx10.2-512-builtins.c
M clang/test/CodeGen/X86/movrs-avx10.2-builtins-error-32.c
M clang/test/CodeGen/X86/movrs-avx10.2-builtins.c
M clang/test/CodeGen/X86/sm4-evex-builtins.c
M clang/test/CodeGen/X86/sse.c
M clang/test/CodeGen/X86/sse2-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
M clang/test/CodeGen/X86/xop-builtins.c
M clang/test/CodeGen/allow-ubsan-check.c
M clang/test/CodeGen/arm64-microsoft-intrinsics.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
M clang/test/CodeGen/attr-counted-by-for-pointers.c
M clang/test/CodeGen/attr-counted-by-pr110385.c
M clang/test/CodeGen/attr-counted-by.c
M clang/test/CodeGen/attr-cpuspecific.c
M clang/test/CodeGen/attr-target-x86.c
M clang/test/CodeGen/builtin-assume-dereferenceable.c
M clang/test/CodeGen/builtin-attributes.c
M clang/test/CodeGen/builtin-maxnum-minnum.c
M clang/test/CodeGen/builtin-rename.c
M clang/test/CodeGen/builtins-elementwise-math.c
M clang/test/CodeGen/calling-conv-ignored.c
M clang/test/CodeGen/cfi-icall-generalize.c
M clang/test/CodeGen/cfi-icall-normalize2.c
M clang/test/CodeGen/cleanup-destslot-simple.c
M clang/test/CodeGen/inline-asm-x86-flag-output.c
M clang/test/CodeGen/isfpclass.c
M clang/test/CodeGen/kcfi-generalize.c
M clang/test/CodeGen/kcfi-normalize.c
M clang/test/CodeGen/mangle-windows.c
M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
M clang/test/CodeGen/math-libcalls-tbaa.c
M clang/test/CodeGen/ms-intrinsics-underaligned.c
M clang/test/CodeGen/ms_abi.c
M clang/test/CodeGen/regcall2.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
M clang/test/CodeGen/sysv_abi.c
M clang/test/CodeGen/target-avx-abi-diag.c
M clang/test/CodeGen/target-builtin-error-3.c
M clang/test/CodeGen/target-builtin-noerror.c
M clang/test/CodeGen/ubsan-pass-object-size.c
M clang/test/CodeGen/union-tbaa1.c
A clang/test/CodeGen/vector-convert-boolean.cpp
M clang/test/CodeGen/vla.c
M clang/test/CodeGen/vlt_to_pointer.c
M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
M clang/test/CodeGenCXX/cfi-mfcall-nomerge.cpp
M clang/test/CodeGenCXX/constructor-attr.cpp
M clang/test/CodeGenCXX/cxx2a-destroying-delete.cpp
A clang/test/CodeGenCXX/destructor-attr.cpp
M clang/test/CodeGenCXX/dynamic-cast-exact-disabled.cpp
M clang/test/CodeGenCXX/inline-then-fold-variadics.cpp
M clang/test/CodeGenCXX/load-reference-metadata.cpp
M clang/test/CodeGenCXX/mangle-windows.cpp
M clang/test/CodeGenCXX/microsoft-abi-structors.cpp
A clang/test/CodeGenCXX/ptrauth-dynamic-cast-exact.cpp
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
A clang/test/CodeGenHLSL/RootSignature-Target.hlsl
M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
M clang/test/CodeGenHLSL/builtins/select.hlsl
M clang/test/CodeGenHLSL/debug/rwbuffer_debug_info.hlsl
M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/RWBuffer-constructor.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-dyn-index.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-multi-dim.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
A clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
M clang/test/CodeGenHLSL/resources/resource-bindings.hlsl
A clang/test/CodeGenHLSL/semantics/DispatchThreadID-noindex.hlsl
A clang/test/CodeGenHLSL/semantics/SV_GroupID-noindex.hlsl
A clang/test/CodeGenHLSL/semantics/SV_GroupThreadID-noindex.hlsl
M clang/test/CodeGenHLSL/semantics/SV_Position.ps.hlsl
A clang/test/CodeGenHLSL/semantics/missing.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
M clang/test/CodeGenOpenCL/amdgpu-debug-info-pointer-address-space.cl
M clang/test/CodeGenOpenCL/amdgpu-debug-info-variable-expression.cl
M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
M clang/test/CodeGenOpenCL/amdgpu-features.cl
M clang/test/CodeGenOpenCL/amdgpu-printf.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-async-load-store-lds.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-cooperative-atomics.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64.cl
M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
M clang/test/CodeGenOpenCL/numbered-address-space.cl
M clang/test/CodeGenOpenCL/preserve_vec3.cl
M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
M clang/test/CodeGenSPIRV/spirv-intel.c
M clang/test/DebugInfo/CXX/artificial-arg.cpp
A clang/test/DebugInfo/CXX/local-structor-linkage-names.cpp
A clang/test/DebugInfo/CXX/structor-linkage-names.cpp
A clang/test/DebugInfo/CXX/vtable-external.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-diamond.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-multiple.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-simple-main.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-simple.cpp
M clang/test/DebugInfo/CXX/vtable-inheritance-virtual.cpp
A clang/test/DebugInfo/CXX/vtable-template-instantiation.cpp
M clang/test/DebugInfo/Generic/cc.c
M clang/test/DebugInfo/Generic/unsigned-promotion-debuginfo.c
M clang/test/DebugInfo/ObjCXX/cyclic.mm
M clang/test/Driver/DTLTO/dtlto.c
A clang/test/Driver/DTLTO/filename.py
A clang/test/Driver/DTLTO/ps5-dtlto.c
M clang/test/Driver/aarch64-features.c
M clang/test/Driver/aarch64-ptrauth.c
M clang/test/Driver/aarch64-toolchain-extra.c
A clang/test/Driver/aix-gsplit-dwarf.c
M clang/test/Driver/amdgpu-hip-system-arch.c
M clang/test/Driver/amdgpu-macros.cl
M clang/test/Driver/amdgpu-mcpu.cl
M clang/test/Driver/amdgpu-openmp-system-arch-fail.c
M clang/test/Driver/arm-toolchain-extra.c
M clang/test/Driver/baremetal-multilib-layered.yaml
M clang/test/Driver/baremetal-multilib.yaml
M clang/test/Driver/baremetal-sysroot.cpp
M clang/test/Driver/cl-options.c
M clang/test/Driver/clang_f_opts.c
M clang/test/Driver/config-file3.c
M clang/test/Driver/config-zos.c
M clang/test/Driver/config-zos1.c
M clang/test/Driver/cuda-bad-arch.cu
M clang/test/Driver/darwin-ld-demangle-lld.c
M clang/test/Driver/darwin-ld-lto-lld.c
A clang/test/Driver/dxc_frs.hlsl
A clang/test/Driver/dxc_rootsignature_target.hlsl
M clang/test/Driver/fp-model.c
M clang/test/Driver/fpatchable-function-entry.c
M clang/test/Driver/frame-pointer-elim.c
M clang/test/Driver/frame-pointer.c
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/mingw-sysroot.cpp
M clang/test/Driver/no-canonical-prefixes.c
M clang/test/Driver/nvptx-cuda-system-arch.c
M clang/test/Driver/openmp-system-arch.c
M clang/test/Driver/parse-progname.c
M clang/test/Driver/print-supported-extensions-riscv.c
A clang/test/Driver/range-warnings.c
M clang/test/Driver/range.c
M clang/test/Driver/riscv-cpus.c
M clang/test/Driver/riscv-default-features.c
M clang/test/Driver/riscv-features.c
M clang/test/Driver/riscv32-toolchain-extra.c
M clang/test/Driver/riscv64-toolchain-extra.c
M clang/test/Driver/sigpipe-handling.c
M clang/test/Driver/spirv-amd-toolchain.c
M clang/test/Driver/target-override.c
M clang/test/Driver/verbose-output-quoting.c
M clang/test/Driver/x86-target-features.c
M clang/test/FixIt/fixit-objc-arc.m
M clang/test/Frontend/cfi-unchecked-callee-attribute.cpp
A clang/test/Frontend/cir-not-built.c
M clang/test/Frontend/dependency-gen-symlink.c
M clang/test/Frontend/fixed_point_unknown_conversions.c
M clang/test/Headers/__clang_hip_math.hip
M clang/test/Headers/__cpuidex_conflict.c
A clang/test/Headers/arm-acle-no-direct-include.c
M clang/test/Headers/wasm.c
M clang/test/Index/preamble-reparse-changed-module.m
M clang/test/Index/preamble.c
M clang/test/Index/warning-flags.c
M clang/test/InterfaceStubs/driver-test.c
M clang/test/InterfaceStubs/driver-test2.c
M clang/test/InterfaceStubs/driver-test3.c
M clang/test/Lexer/cxx-features.cpp
M clang/test/Misc/remap-file.c
M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
M clang/test/Misc/target-invalid-cpu-note/nvptx.c
A clang/test/Modules/Inputs/glob-delete-with-virtual-dtor/glob-delete-with-virtual-dtor.h
A clang/test/Modules/Inputs/glob-delete-with-virtual-dtor/module.modulemap
A clang/test/Modules/added-visible-decls.cppm
M clang/test/Modules/crash-vfs-headermaps.m
M clang/test/Modules/crash-vfs-include-pch.m
M clang/test/Modules/crash-vfs-path-emptydir-entries.m
M clang/test/Modules/crash-vfs-path-symlink-component.m
M clang/test/Modules/crash-vfs-path-symlink-topheader.m
M clang/test/Modules/crash-vfs-path-traversal.m
M clang/test/Modules/crash-vfs-relative-overlay.m
M clang/test/Modules/crash-vfs-umbrella-frameworks.m
M clang/test/Modules/diamond-pch.c
M clang/test/Modules/diamond.c
M clang/test/Modules/embed-files-compressed.cpp
M clang/test/Modules/embed-files.cpp
M clang/test/Modules/exponential-paths.cpp
M clang/test/Modules/framework-name.m
A clang/test/Modules/glob-delete-with-virtual-dtor.cpp
M clang/test/Modules/implicit-private-without-public.m
M clang/test/Modules/inferred-framework-case.m
M clang/test/Modules/lambda-merge.cpp
A clang/test/Modules/merge-anon-in-template-2.cpp
A clang/test/Modules/merge-anon-in-template-3.cpp
M clang/test/Modules/module-file-modified.c
M clang/test/Modules/module-symlink.m
M clang/test/Modules/modulemap-collision.m
A clang/test/Modules/modules-cache-path-canonicalization-output.c
A clang/test/Modules/pr133720.cppm
A clang/test/Modules/pr159424.cppm
M clang/test/Modules/serialized-diags.m
M clang/test/Modules/validate-file-content.m
R clang/test/OpenMP/amdgcn_target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/bug54082.c
M clang/test/OpenMP/bug56913.c
M clang/test/OpenMP/bug57757.cpp
A clang/test/OpenMP/for_lst_private_codegen_c.c
A clang/test/OpenMP/groupprivate_ast_print.cpp
A clang/test/OpenMP/groupprivate_messages.cpp
A clang/test/OpenMP/host-ir-file-vfs.c
M clang/test/OpenMP/nvptx_target_codegen.cpp
M clang/test/OpenMP/nvptx_target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
M clang/test/OpenMP/parallel_ast_print.cpp
M clang/test/OpenMP/parallel_default_messages.cpp
M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
A clang/test/OpenMP/spirv_kernel_addrspace.cpp
M clang/test/OpenMP/spirv_locstr.cpp
M clang/test/OpenMP/spirv_variant_match.cpp
M clang/test/OpenMP/target_defaultmap_codegen_01.cpp
A clang/test/OpenMP/target_defaultmap_codegen_03.cpp
M clang/test/OpenMP/target_defaultmap_messages.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen.cpp
R clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_uses_allocators_messages.cpp
M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
M clang/test/OpenMP/vla_crash.c
A clang/test/PCH/Inputs/glob-delete-with-virtual-dtor.h
M clang/test/PCH/functions.c
A clang/test/PCH/glob-delete-with-virtual-dtor.cpp
M clang/test/PCH/leakfiles.test
M clang/test/PCH/objc_exprs.m
M clang/test/PCH/objc_kindof.m
M clang/test/PCH/validate-file-content.m
M clang/test/PCH/variables.c
A clang/test/Parser/cxx03-attributes.cpp
M clang/test/Parser/declarators.c
M clang/test/Parser/x64-windows-calling-convention-handling.c
M clang/test/ParserHLSL/hlsl_resource_handle_attrs.hlsl
M clang/test/ParserHLSL/semantic_parsing.hlsl
A clang/test/ParserHLSL/semantic_parsing_define.hlsl
M clang/test/Preprocessor/embed___has_embed_parsing_errors.c
M clang/test/Preprocessor/embed_zos.c
M clang/test/Preprocessor/nonportable-include-with-hmap.c
M clang/test/Preprocessor/predefined-arch-macros-x86.c
M clang/test/Preprocessor/predefined-arch-macros.c
M clang/test/Preprocessor/riscv-target-features.c
M clang/test/Preprocessor/sanitizer-predefines.c
M clang/test/Preprocessor/x86_target_features.c
M clang/test/Profile/cxx-hash-v2.cpp
M clang/test/Rewriter/objc-string-concat-1.m
M clang/test/Sema/MicrosoftCompatibility-x64.c
M clang/test/Sema/MicrosoftExtensions.c
M clang/test/Sema/arm-neon-types.c
M clang/test/Sema/atomic-expr.c
M clang/test/Sema/atomic-ops.c
M clang/test/Sema/attr-args.c
M clang/test/Sema/attr-format.c
M clang/test/Sema/builtins-elementwise-math.c
M clang/test/Sema/c2x-auto.c
M clang/test/Sema/conditional-expr.c
M clang/test/Sema/constant-builtins-vector.cpp
R clang/test/Sema/constructor-attribute.c
A clang/test/Sema/constructor-attribute.cpp
M clang/test/Sema/decl-type-merging.c
M clang/test/Sema/enum.c
M clang/test/Sema/format-strings.c
M clang/test/Sema/function.c
M clang/test/Sema/merge-decls.c
M clang/test/Sema/nullability.c
M clang/test/Sema/pass-object-size.c
M clang/test/Sema/patchable-function-entry-attr.cpp
M clang/test/Sema/ptrauth-atomic-ops.c
M clang/test/Sema/ptrauth.c
M clang/test/Sema/static-array.c
M clang/test/Sema/struct-compat.c
M clang/test/Sema/var-redecl.c
M clang/test/Sema/vector-assign.c
A clang/test/Sema/vector-bool-assign.c
A clang/test/Sema/vector-bool-assign.cpp
M clang/test/Sema/vla.c
M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
M clang/test/Sema/warn-thread-safety-analysis.c
A clang/test/SemaCUDA/consteval-func.cu
M clang/test/SemaCXX/PR51712-large-array-constexpr-check-oom.cpp
A clang/test/SemaCXX/PR68605.cpp
M clang/test/SemaCXX/ast-print.cpp
M clang/test/SemaCXX/builtin-assume-dereferenceable.cpp
M clang/test/SemaCXX/builtin-get-vtable-pointer.cpp
A clang/test/SemaCXX/builtin-overload-resolution.cpp
M clang/test/SemaCXX/labeled-break-continue-constexpr.cpp
M clang/test/SemaCXX/reinterpret-cast.cpp
M clang/test/SemaCXX/sugar-common-types.cpp
M clang/test/SemaCXX/warn-shadow-in-lambdas.cpp
M clang/test/SemaCXX/warn-thread-safety-analysis.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-debug-unclaimed/warn-unsafe-buffer-usage-debug-unclaimed.cpp
A clang/test/SemaHLSL/Availability/attr-deprecated.hlsl
M clang/test/SemaHLSL/Language/InitLists.hlsl
M clang/test/SemaHLSL/RootSignature-err.hlsl
M clang/test/SemaHLSL/RootSignature-resource-ranges-err.hlsl
M clang/test/SemaHLSL/RootSignature-resource-ranges.hlsl
A clang/test/SemaHLSL/RootSignature-target-err.hlsl
M clang/test/SemaHLSL/Semantics/invalid_entry_parameter.hlsl
A clang/test/SemaHLSL/prohibit_resource_edits.hlsl
A clang/test/SemaHLSL/unbounded_resource_arrays.hlsl
M clang/test/SemaObjC/arc-decls.m
M clang/test/SemaObjC/arc-objcbridge-related-attribute.m
M clang/test/SemaObjC/arc.m
M clang/test/SemaObjC/attr-objc-NSObject.m
M clang/test/SemaObjC/attr-swift_name.m
M clang/test/SemaObjC/check-objcbridge-related-attribute-lookup.m
M clang/test/SemaObjC/class-method-self.m
M clang/test/SemaObjC/comptypes-1.m
M clang/test/SemaObjC/comptypes-4.m
M clang/test/SemaObjC/comptypes-5.m
M clang/test/SemaObjC/comptypes-6.m
M clang/test/SemaObjC/comptypes-7.m
M clang/test/SemaObjC/conditional-expr-2.m
M clang/test/SemaObjC/conditional-expr.m
M clang/test/SemaObjC/id.m
M clang/test/SemaObjC/incompatible-protocol-qualified-types.m
M clang/test/SemaObjC/instancetype.m
M clang/test/SemaObjC/ivar-lookup.m
M clang/test/SemaObjC/kindof.m
M clang/test/SemaObjC/method-prototype-scope.m
M clang/test/SemaObjC/non-trivial-c-union.m
M clang/test/SemaObjC/nullability.m
M clang/test/SemaObjC/objcbridge-related-attribute.m
M clang/test/SemaObjC/parameterized_classes.m
M clang/test/SemaObjC/parameterized_classes_arc.m
M clang/test/SemaObjC/parameterized_classes_subst.m
M clang/test/SemaObjC/protocol-typecheck.m
M clang/test/SemaObjC/protocol-warn.m
M clang/test/SemaObjC/related-result-type-inference.m
M clang/test/SemaObjC/unqualified-to-qualified-class-warn.m
M clang/test/SemaObjC/warn-incompatible-builtin-types.m
M clang/test/SemaObjC/warn-superclass-method-mismatch.m
M clang/test/SemaObjCXX/blocks.mm
M clang/test/SemaObjCXX/objc-pointer-conv.mm
M clang/test/SemaObjCXX/overload.mm
M clang/test/SemaObjCXX/parameterized_classes_subst.mm
M clang/test/SemaObjCXX/related-result-type-inference.mm
M clang/test/SemaOpenACC/combined-construct-if-clause.c
M clang/test/SemaOpenACC/compute-construct-if-clause.c
M clang/test/SemaOpenCL/address-spaces.cl
M clang/test/SemaOpenCL/atomic-ops.cl
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-cooperative-atomics.cl
M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-param.cl
M clang/test/SemaOpenCL/to_addr_builtin.cl
M clang/test/SemaTemplate/concepts-friends.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
M clang/test/SemaTemplate/temp_arg_template.cpp
M clang/test/Tooling/auto-detect-from-source-parent-of-cwd.cpp
M clang/test/Tooling/clang-check-pwd.cpp
M clang/test/VFS/broken-vfs-module-dep.c
M clang/test/lit.cfg.py
M clang/tools/c-index-test/core_main.cpp
M clang/tools/clang-extdef-mapping/ClangExtDefMapGen.cpp
M clang/tools/clang-import-test/clang-import-test.cpp
M clang/tools/clang-installapi/ClangInstallAPI.cpp
M clang/tools/clang-repl/ClangRepl.cpp
M clang/tools/clang-scan-deps/ClangScanDeps.cpp
M clang/tools/driver/cc1_main.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/driver/driver.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/AST/CMakeLists.txt
M clang/unittests/AST/DeclTest.cpp
M clang/unittests/AST/ExternalASTSourceTest.cpp
A clang/unittests/AST/QualTypeNamesTest.cpp
M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp
M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
M clang/unittests/CodeGen/TestCompiler.h
M clang/unittests/Driver/DXCModeTest.cpp
M clang/unittests/Driver/ToolChainTest.cpp
M clang/unittests/Format/CMakeLists.txt
M clang/unittests/Format/FormatTest.cpp
A clang/unittests/Format/NumericLiteralCaseTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/Frontend/ASTUnitTest.cpp
M clang/unittests/Frontend/CodeGenActionTest.cpp
M clang/unittests/Frontend/CompilerInstanceTest.cpp
M clang/unittests/Frontend/FrontendActionTest.cpp
M clang/unittests/Frontend/OutputStreamTest.cpp
M clang/unittests/Interpreter/CMakeLists.txt
A clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp
M clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
M clang/unittests/Sema/HeuristicResolverTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Serialization/ModuleCacheTest.cpp
M clang/unittests/Serialization/NoCommentsTest.cpp
M clang/unittests/Serialization/PreambleInNamedModulesTest.cpp
M clang/unittests/Support/TimeProfilerTest.cpp
M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
A clang/utils/TableGen/CIRLoweringEmitter.cpp
M clang/utils/TableGen/CMakeLists.txt
M clang/utils/TableGen/ClangAttrEmitter.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
M clang/utils/perf-training/perf-helper.py
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M clang/www/cxx_status.html
M clang/www/make_cxx_dr_status
A compiler-rt/cmake/caches/hexagon-builtins-baremetal.cmake
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/builtins/aarch64/sme-abi.S
M compiler-rt/lib/builtins/assembly.h
M compiler-rt/lib/builtins/cpu_model/x86.c
M compiler-rt/lib/dfsan/dfsan.cpp
M compiler-rt/lib/fuzzer/FuzzerCorpus.h
M compiler-rt/lib/fuzzer/FuzzerDriver.cpp
M compiler-rt/lib/fuzzer/FuzzerLoop.cpp
M compiler-rt/lib/fuzzer/FuzzerTracePC.cpp
M compiler-rt/lib/gwp_asan/tests/compression.cpp
M compiler-rt/lib/gwp_asan/tests/slot_reuse.cpp
M compiler-rt/lib/gwp_asan/tests/thread_contention.cpp
M compiler-rt/lib/hwasan/hwasan_report.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_common_syscalls.inc
M compiler-rt/lib/sanitizer_common/sanitizer_file.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_mac.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/common.cpp
M compiler-rt/lib/scudo/standalone/common.h
M compiler-rt/lib/scudo/standalone/primary32.h
M compiler-rt/lib/scudo/standalone/primary64.h
M compiler-rt/lib/scudo/standalone/secondary.h
M compiler-rt/lib/scudo/standalone/tests/quarantine_test.cpp
A compiler-rt/lib/scudo/standalone/tracing.h
M compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
M compiler-rt/lib/tsan/rtl/tsan_platform_mac.cpp
A compiler-rt/test/asan/TestCases/Darwin/atos-symbolized-recover.cpp
M compiler-rt/test/asan/TestCases/Darwin/duplicate_os_log_reports.cpp
A compiler-rt/test/asan/TestCases/Darwin/sandbox-vm-region-recurse.cpp
M compiler-rt/test/asan/TestCases/Linux/read_binary_name_regtest.c
M compiler-rt/test/asan/TestCases/suppressions-library.cpp
M compiler-rt/test/asan/TestCases/verbose-log-path_test.cpp
A compiler-rt/test/fuzzer/SimulateEmptyModuleTest.cpp
A compiler-rt/test/fuzzer/empty-module.test
M compiler-rt/test/fuzzer/focus-function.test
M compiler-rt/test/fuzzer/sig-trap.test
M compiler-rt/test/hwasan/TestCases/Posix/dlerror.cpp
M compiler-rt/test/lit.common.cfg.py
M compiler-rt/test/profile/Linux/binary-id-offset.c
M compiler-rt/test/rtsan/unrecognized_flags.cpp
M compiler-rt/test/safestack/pthread-cleanup.c
R compiler-rt/test/sanitizer_common/TestCases/Darwin/atos-symbolized-recover.cpp
M compiler-rt/test/sanitizer_common/TestCases/external_symbolizer_path.cpp
M compiler-rt/test/sanitizer_common/TestCases/suffix-log-path_test.c
M compiler-rt/test/tsan/Darwin/os_unfair_lock.c
M compiler-rt/test/tysan/violation-pr62544.c
M compiler-rt/test/ubsan/TestCases/Misc/coverage-levels.cpp
M compiler-rt/test/ubsan/TestCases/Misc/log-path_test.cpp
M compiler-rt/test/xray/TestCases/Posix/dlopen.cpp
M compiler-rt/test/xray/TestCases/Posix/dso-dep-chains.cpp
M compiler-rt/test/xray/TestCases/Posix/patch-premain-dso.cpp
M compiler-rt/test/xray/TestCases/Posix/patching-unpatching-dso.cpp
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/Debuggers.py
M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
M cross-project-tests/lit.cfg.py
M flang-rt/CMakeLists.txt
M flang-rt/cmake/modules/AddFlangRT.cmake
M flang-rt/include/flang-rt/runtime/descriptor.h
M flang-rt/include/flang-rt/runtime/file.h
M flang-rt/include/flang-rt/runtime/io-stmt.h
M flang-rt/include/flang-rt/runtime/type-info.h
M flang-rt/lib/cuda/descriptor.cpp
M flang-rt/lib/runtime/assign.cpp
M flang-rt/lib/runtime/complex-reduction.h
M flang-rt/lib/runtime/copy.cpp
M flang-rt/lib/runtime/derived.cpp
M flang-rt/lib/runtime/descriptor.cpp
M flang-rt/lib/runtime/extensions.cpp
M flang-rt/lib/runtime/io-stmt.cpp
M flang-rt/lib/runtime/misc-intrinsic.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/lib/runtime/type-info.cpp
M flang-rt/lib/runtime/unit.cpp
M flang-rt/lib/runtime/unit.h
M flang-rt/unittests/Runtime/CUDA/AllocatorCUF.cpp
M flang/docs/Extensions.md
M flang/docs/Intrinsics.md
M flang/docs/ParallelMultiImageFortranRuntime.md
M flang/docs/ReleaseNotes.md
M flang/examples/FeatureList/FeatureList.cpp
M flang/include/flang/Evaluate/match.h
M flang/include/flang/Frontend/CodeGenOptions.def
M flang/include/flang/Lower/AbstractConverter.h
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Lower/HlfirIntrinsics.h
M flang/include/flang/Lower/OpenACC.h
M flang/include/flang/Lower/OpenMP.h
M flang/include/flang/Lower/OpenMP/Clauses.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/CUDA/Descriptor.h
M flang/include/flang/Optimizer/Builder/Runtime/Character.h
M flang/include/flang/Optimizer/Builder/Runtime/Coarray.h
M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/include/flang/Optimizer/Passes/Pipelines.h
M flang/include/flang/Optimizer/Transforms/Passes.td
M flang/include/flang/Parser/dump-parse-tree.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/parse-tree.h
M flang/include/flang/Runtime/CUDA/descriptor.h
M flang/include/flang/Runtime/extensions.h
M flang/include/flang/Runtime/freestanding-tools.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Semantics/tools.h
M flang/include/flang/Support/Fortran-features.h
M flang/include/flang/Tools/CrossToolHelpers.h
M flang/include/flang/Utils/OpenMP.h
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Frontend/CompilerInvocation.cpp
M flang/lib/Frontend/FrontendActions.cpp
M flang/lib/Lower/Allocatable.cpp
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertArrayConstructor.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/HlfirIntrinsics.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.h
M flang/lib/Lower/OpenMP/Clauses.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/OpenMP/Utils.cpp
M flang/lib/Lower/OpenMP/Utils.h
M flang/lib/Lower/Runtime.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/MutableBox.cpp
M flang/lib/Optimizer/Builder/Runtime/CUDA/Descriptor.cpp
M flang/lib/Optimizer/Builder/Runtime/Character.cpp
M flang/lib/Optimizer/Builder/Runtime/Coarray.cpp
M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
M flang/lib/Optimizer/CodeGen/FIROpPatterns.cpp
M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Dialect/FortranVariableInterface.cpp
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/OpenMP/CMakeLists.txt
M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
M flang/lib/Optimizer/Passes/Pipelines.cpp
M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
M flang/lib/Optimizer/Transforms/CMakeLists.txt
M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
A flang/lib/Optimizer/Transforms/ConvertComplexPow.cpp
M flang/lib/Parser/characters.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/unparse.cpp
M flang/lib/Semantics/canonicalize-omp.cpp
M flang/lib/Semantics/check-acc-structure.cpp
M flang/lib/Semantics/check-acc-structure.h
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-do-forall.cpp
M flang/lib/Semantics/check-do-forall.h
M flang/lib/Semantics/check-omp-atomic.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/rewrite-parse-tree.cpp
M flang/lib/Semantics/runtime-type-info.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/unparse-with-symbols.cpp
M flang/lib/Utils/CMakeLists.txt
M flang/lib/Utils/OpenMP.cpp
M flang/module/__fortran_type_info.f90
M flang/test/CMakeLists.txt
M flang/test/Driver/bbc-mlir-pass-pipeline.f90
A flang/test/Driver/fatlto-err.f90
A flang/test/Driver/flang-dwarf-version.f90
A flang/test/Driver/loop-fuse.f90
A flang/test/Driver/lto-fatlto.f90
A flang/test/Driver/lto-lld-flags.f90
M flang/test/Driver/mlir-debug-pass-pipeline.f90
M flang/test/Driver/mlir-pass-pipeline.f90
M flang/test/Driver/optimization-remark.f90
M flang/test/Driver/target-cpu-features.f90
A flang/test/Evaluate/bug157379.f90
M flang/test/Fir/CUDA/cuda-alloc-free.fir
M flang/test/Fir/CUDA/cuda-data-transfer.fir
A flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
M flang/test/Fir/basic-program.fir
A flang/test/Fir/box_addr-codegen-in-global.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/struct-return-x86-64.fir
A flang/test/HLFIR/index-lowering.fir
M flang/test/HLFIR/invalid.fir
A flang/test/Integration/debug-dwarf-flags.f90
A flang/test/Lower/CUDA/cuda-allocatable-device.cuf
R flang/test/Lower/CUDA/cuda-set-allocator.cuf
A flang/test/Lower/CUDA/cuda-stream.cuf
A flang/test/Lower/Coarray/co_broadcast.f90
A flang/test/Lower/Coarray/co_max.f90
A flang/test/Lower/Coarray/co_min.f90
A flang/test/Lower/Coarray/co_sum.f90
A flang/test/Lower/Coarray/sync_all.f90
A flang/test/Lower/Coarray/sync_images.f90
A flang/test/Lower/Coarray/sync_memory.f90
M flang/test/Lower/HLFIR/actual_target_for_dummy_pointer.f90
M flang/test/Lower/HLFIR/allocatable-and-pointer-status-change.f90
M flang/test/Lower/HLFIR/binary-ops.f90
A flang/test/Lower/HLFIR/dummy-proc-ptr-in-entry.f90
M flang/test/Lower/HLFIR/elemental-array-ops.f90
M flang/test/Lower/HLFIR/elemental-result-length.f90
M flang/test/Lower/HLFIR/eoshift.f90
A flang/test/Lower/HLFIR/index.f90
M flang/test/Lower/HLFIR/issue80884.f90
A flang/test/Lower/Intrinsics/dsecnds.f90
M flang/test/Lower/Intrinsics/pow_complex16.f90
M flang/test/Lower/Intrinsics/pow_complex16i.f90
M flang/test/Lower/Intrinsics/pow_complex16k.f90
M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
M flang/test/Lower/OpenACC/acc-declare.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived-allocatable-component.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived-pointer-component.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived-user-assign.f90
A flang/test/Lower/OpenACC/acc-firstprivate-derived.f90
M flang/test/Lower/OpenACC/do-loops-to-acc-loops.f90
A flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map-2.f90
A flang/test/Lower/OpenMP/atomic-update-reassoc-logical.f90
A flang/test/Lower/OpenMP/lastprivate-alloc-scope.f90
R flang/test/Lower/OpenMP/nested-loop-transformation-construct01.f90
M flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
M flang/test/Lower/OpenMP/simd.f90
M flang/test/Lower/OpenMP/wsloop-collapse.f90
M flang/test/Lower/OpenMP/wsloop-variable.f90
M flang/test/Lower/amdgcn-complex.f90
A flang/test/Lower/array-constructor-exactly-once.f90
A flang/test/Lower/array-elemental-calls-char-dynamic.f90
M flang/test/Lower/array-elemental-calls-char.f90
A flang/test/Lower/box-address.f90
A flang/test/Lower/call-character-array-to-polymorphic-pointer.f90
M flang/test/Lower/components.f90
A flang/test/Lower/percent-val-actual-argument.f90
A flang/test/Lower/percent-val-value-argument.f90
M flang/test/Lower/pointer-assignments.f90
M flang/test/Lower/power-operator.f90
M flang/test/Lower/volatile-string.f90
M flang/test/Parser/OpenMP/bind-clause.f90
M flang/test/Parser/OpenMP/declare-reduction-multi.f90
A flang/test/Parser/OpenMP/declare-reduction-unparse-with-symbols.f90
M flang/test/Parser/OpenMP/declare-reduction-unparse.f90
A flang/test/Parser/OpenMP/do-tile-size.f90
M flang/test/Parser/OpenMP/doacross-clause.f90
M flang/test/Parser/OpenMP/if-clause.f90
M flang/test/Parser/OpenMP/in-reduction-clause.f90
M flang/test/Parser/OpenMP/lastprivate-clause.f90
M flang/test/Parser/OpenMP/linear-clause.f90
M flang/test/Parser/OpenMP/loop-transformation-construct01.f90
M flang/test/Parser/OpenMP/loop-transformation-construct02.f90
M flang/test/Parser/OpenMP/loop-transformation-construct03.f90
M flang/test/Parser/OpenMP/masked-unparse.f90
M flang/test/Parser/OpenMP/master-unparse.f90
M flang/test/Parser/OpenMP/order-clause01.f90
M flang/test/Parser/OpenMP/ordered-depend.f90
M flang/test/Parser/OpenMP/reduction-modifier.f90
A flang/test/Parser/OpenMP/replayable-clause.f90
M flang/test/Parser/OpenMP/sections.f90
M flang/test/Parser/OpenMP/target-loop-unparse.f90
A flang/test/Parser/OpenMP/taskgraph.f90
M flang/test/Parser/OpenMP/taskloop.f90
M flang/test/Parser/OpenMP/tile-size.f90
M flang/test/Parser/OpenMP/tile.f90
A flang/test/Parser/OpenMP/transparent-clause.f90
M flang/test/Parser/OpenMP/unroll-full.f90
M flang/test/Parser/OpenMP/unroll-heuristic.f90
M flang/test/Parser/OpenMP/unroll-partial.f90
A flang/test/Parser/utf8-01.f90
M flang/test/Semantics/OpenACC/acc-loop.f90
M flang/test/Semantics/OpenACC/acc-reduction-validity.f90
M flang/test/Semantics/OpenMP/do-collapse.f90
M flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
A flang/test/Semantics/OpenMP/replayable-clause.f90
M flang/test/Semantics/OpenMP/simd-only.f90
A flang/test/Semantics/OpenMP/transparent-clause.f90
A flang/test/Semantics/bug158405.f90
A flang/test/Semantics/cdefined.f90
A flang/test/Semantics/contiguous02.f90
A flang/test/Semantics/definable07.f90
A flang/test/Semantics/resolve127.f90
M flang/test/Semantics/resolve20.f90
A flang/test/Transforms/DoConcurrent/allocatable.f90
A flang/test/Transforms/DoConcurrent/basic_device.f90
M flang/test/Transforms/DoConcurrent/basic_device.mlir
A flang/test/Transforms/DoConcurrent/host_eval.f90
M flang/test/Transforms/DoConcurrent/locally_destroyed_temp.f90
A flang/test/Transforms/DoConcurrent/map_shape_info.f90
M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
A flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
M flang/test/Transforms/DoConcurrent/not_perfectly_nested.f90
A flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
A flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
A flang/test/Transforms/DoConcurrent/use_loop_bounds_in_body.f90
A flang/test/Transforms/convert-complex-pow.fir
A flang/test/Transforms/debug-dwarf-version.fir
M flang/tools/bbc/bbc.cpp
M libc/cmake/modules/CheckCompilerFeatures.cmake
A libc/cmake/modules/LibcParseArguments.cmake
A libc/cmake/modules/compiler_features/check_ext_vector_type.cpp
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/docs/headers/time.rst
M libc/include/llvm-libc-macros/complex-macros.h
M libc/include/llvm-libc-types/cfloat128.h
M libc/include/math.yaml
M libc/shared/math.h
A libc/shared/math/rsqrtf16.h
M libc/src/__support/CMakeLists.txt
M libc/src/__support/CPP/CMakeLists.txt
M libc/src/__support/CPP/bit.h
M libc/src/__support/CPP/new.h
M libc/src/__support/CPP/simd.h
A libc/src/__support/CPP/tuple.h
M libc/src/__support/CPP/type_traits/is_complex.h
M libc/src/__support/CPP/type_traits/is_destructible.h
M libc/src/__support/CPP/type_traits/is_unsigned.h
M libc/src/__support/CPP/utility/integer_sequence.h
M libc/src/__support/FPUtil/FEnvImpl.h
M libc/src/__support/FPUtil/FPBits.h
M libc/src/__support/StringUtil/error_to_string.cpp
M libc/src/__support/StringUtil/signal_to_string.cpp
M libc/src/__support/arg_list.h
M libc/src/__support/big_int.h
M libc/src/__support/common.h
M libc/src/__support/endian_internal.h
M libc/src/__support/macros/CMakeLists.txt
M libc/src/__support/macros/config.h
M libc/src/__support/macros/optimization.h
M libc/src/__support/macros/properties/compiler.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/rsqrtf16.h
M libc/src/__support/math_extras.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/rsqrtf16.cpp
A libc/src/math/generic/sqrtbf16.cpp
A libc/src/math/rsqrtf16.h
A libc/src/math/sqrtbf16.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/float_dec_converter_limited.h
M libc/src/stdio/printf_core/vasprintf_internal.h
M libc/src/stdlib/CMakeLists.txt
M libc/src/stdlib/qsort_data.h
M libc/src/string/CMakeLists.txt
M libc/src/string/memory_utils/CMakeLists.txt
M libc/src/string/memory_utils/generic/inline_strlen.h
M libc/src/string/memory_utils/op_generic.h
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/utils.h
M libc/src/string/stpcpy.cpp
M libc/src/string/string_utils.h
M libc/src/wchar/CMakeLists.txt
M libc/src/wchar/wcpcpy.cpp
M libc/src/wchar/wcscpy.cpp
M libc/src/wchar/wmemcpy.cpp
M libc/src/wchar/wmempcpy.cpp
M libc/startup/baremetal/fini.h
M libc/startup/baremetal/init.h
M libc/test/IntegrationTest/test.h
M libc/test/UnitTest/CMakeLists.txt
M libc/test/UnitTest/ErrnoCheckingTest.h
M libc/test/UnitTest/FPMatcher.h
M libc/test/UnitTest/LibcTest.h
M libc/test/UnitTest/Test.h
M libc/test/integration/src/pthread/pthread_create_test.cpp
M libc/test/integration/src/pthread/pthread_join_test.cpp
M libc/test/integration/src/pthread/pthread_name_test.cpp
M libc/test/integration/src/unistd/getcwd_test.cpp
M libc/test/integration/startup/linux/tls_test.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M libc/test/src/__support/CMakeLists.txt
M libc/test/src/__support/CPP/CMakeLists.txt
A libc/test/src/__support/CPP/simd_test.cpp
A libc/test/src/__support/CPP/tuple_test.cpp
M libc/test/src/__support/str_to_fp_test.h
M libc/test/src/__support/str_to_integer_test.cpp
M libc/test/src/__support/wcs_to_integer_test.cpp
M libc/test/src/dirent/CMakeLists.txt
M libc/test/src/dirent/dirent_test.cpp
M libc/test/src/errno/CMakeLists.txt
M libc/test/src/errno/errno_test.cpp
M libc/test/src/fcntl/CMakeLists.txt
M libc/test/src/fcntl/creat_test.cpp
M libc/test/src/fcntl/fcntl_test.cpp
M libc/test/src/fcntl/openat_test.cpp
M libc/test/src/math/CMakeLists.txt
M libc/test/src/math/FModTest.h
M libc/test/src/math/acosf_test.cpp
M libc/test/src/math/acoshf16_test.cpp
M libc/test/src/math/acoshf_test.cpp
M libc/test/src/math/asinf_test.cpp
M libc/test/src/math/asinhf_test.cpp
M libc/test/src/math/atanf_test.cpp
M libc/test/src/math/atanhf_test.cpp
M libc/test/src/math/cosf_test.cpp
M libc/test/src/math/coshf_test.cpp
M libc/test/src/math/cospif_test.cpp
M libc/test/src/math/exp10_test.cpp
M libc/test/src/math/exp10f_test.cpp
M libc/test/src/math/exp10m1f_test.cpp
M libc/test/src/math/exp2_test.cpp
M libc/test/src/math/exp2f_test.cpp
M libc/test/src/math/exp2m1f_test.cpp
M libc/test/src/math/exp_test.cpp
M libc/test/src/math/expf_test.cpp
M libc/test/src/math/expm1_test.cpp
M libc/test/src/math/expm1f_test.cpp
M libc/test/src/math/log10_test.cpp
M libc/test/src/math/log1p_test.cpp
M libc/test/src/math/log1pf_test.cpp
M libc/test/src/math/log2_test.cpp
M libc/test/src/math/log_test.cpp
A libc/test/src/math/rsqrtf16_test.cpp
M libc/test/src/math/sincosf_test.cpp
M libc/test/src/math/sinf_test.cpp
M libc/test/src/math/sinhf_test.cpp
M libc/test/src/math/sinpif_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/FModTest.h
M libc/test/src/math/smoke/FmaTest.h
M libc/test/src/math/smoke/RoundToIntegerTest.h
M libc/test/src/math/smoke/acos_test.cpp
M libc/test/src/math/smoke/acosf16_test.cpp
M libc/test/src/math/smoke/acosf_test.cpp
M libc/test/src/math/smoke/acoshf16_test.cpp
M libc/test/src/math/smoke/acoshf_test.cpp
M libc/test/src/math/smoke/acospif16_test.cpp
M libc/test/src/math/smoke/asinf16_test.cpp
M libc/test/src/math/smoke/asinf_test.cpp
M libc/test/src/math/smoke/asinhf16_test.cpp
M libc/test/src/math/smoke/asinhf_test.cpp
M libc/test/src/math/smoke/asinpif16_test.cpp
M libc/test/src/math/smoke/atan2f_test.cpp
M libc/test/src/math/smoke/atanf16_test.cpp
M libc/test/src/math/smoke/atanf_test.cpp
M libc/test/src/math/smoke/atanhf16_test.cpp
M libc/test/src/math/smoke/atanhf_test.cpp
M libc/test/src/math/smoke/atanpif16_test.cpp
M libc/test/src/math/smoke/cosf16_test.cpp
M libc/test/src/math/smoke/cosf_test.cpp
M libc/test/src/math/smoke/coshf16_test.cpp
M libc/test/src/math/smoke/coshf_test.cpp
M libc/test/src/math/smoke/cospif16_test.cpp
M libc/test/src/math/smoke/cospif_test.cpp
M libc/test/src/math/smoke/exp10_test.cpp
M libc/test/src/math/smoke/exp10f16_test.cpp
M libc/test/src/math/smoke/exp10f_test.cpp
M libc/test/src/math/smoke/exp10m1f16_test.cpp
M libc/test/src/math/smoke/exp10m1f_test.cpp
M libc/test/src/math/smoke/exp2_test.cpp
M libc/test/src/math/smoke/exp2f16_test.cpp
M libc/test/src/math/smoke/exp2f_test.cpp
M libc/test/src/math/smoke/exp2m1f16_test.cpp
M libc/test/src/math/smoke/exp2m1f_test.cpp
M libc/test/src/math/smoke/exp_test.cpp
M libc/test/src/math/smoke/expf16_test.cpp
M libc/test/src/math/smoke/expf_test.cpp
M libc/test/src/math/smoke/expm1_test.cpp
M libc/test/src/math/smoke/expm1f16_test.cpp
M libc/test/src/math/smoke/expm1f_test.cpp
M libc/test/src/math/smoke/log10_test.cpp
M libc/test/src/math/smoke/log10f16_test.cpp
M libc/test/src/math/smoke/log10f_test.cpp
M libc/test/src/math/smoke/log1p_test.cpp
M libc/test/src/math/smoke/log1pf_test.cpp
M libc/test/src/math/smoke/log2_test.cpp
M libc/test/src/math/smoke/log2f16_test.cpp
M libc/test/src/math/smoke/log2f_test.cpp
M libc/test/src/math/smoke/log_test.cpp
M libc/test/src/math/smoke/logf16_test.cpp
M libc/test/src/math/smoke/logf_test.cpp
A libc/test/src/math/smoke/rsqrtf16_test.cpp
M libc/test/src/math/smoke/sincos_test.cpp
M libc/test/src/math/smoke/sincosf_test.cpp
M libc/test/src/math/smoke/sinf16_test.cpp
M libc/test/src/math/smoke/sinf_test.cpp
M libc/test/src/math/smoke/sinhf16_test.cpp
M libc/test/src/math/smoke/sinhf_test.cpp
M libc/test/src/math/smoke/sinpif16_test.cpp
M libc/test/src/math/smoke/sinpif_test.cpp
A libc/test/src/math/smoke/sqrtbf16_test.cpp
M libc/test/src/math/smoke/tanf16_test.cpp
M libc/test/src/math/smoke/tanf_test.cpp
M libc/test/src/math/smoke/tanhf16_test.cpp
M libc/test/src/math/smoke/tanhf_test.cpp
M libc/test/src/math/smoke/tanpif16_test.cpp
M libc/test/src/math/smoke/tanpif_test.cpp
A libc/test/src/math/sqrtbf16_test.cpp
M libc/test/src/math/tanf_test.cpp
M libc/test/src/math/tanhf_test.cpp
M libc/test/src/poll/CMakeLists.txt
M libc/test/src/poll/poll_test.cpp
M libc/test/src/sched/CMakeLists.txt
M libc/test/src/sched/affinity_test.cpp
M libc/test/src/sched/cpu_count_test.cpp
M libc/test/src/sched/get_priority_test.cpp
M libc/test/src/sched/getcpu_test.cpp
M libc/test/src/sched/param_and_scheduler_test.cpp
M libc/test/src/sched/sched_rr_get_interval_test.cpp
M libc/test/src/sched/yield_test.cpp
M libc/test/src/setjmp/setjmp_test.cpp
M libc/test/src/signal/CMakeLists.txt
M libc/test/src/signal/sigaltstack_test.cpp
M libc/test/src/signal/signal_test.cpp
M libc/test/src/signal/sigprocmask_test.cpp
M libc/test/src/spawn/CMakeLists.txt
M libc/test/src/spawn/posix_spawn_file_actions_test.cpp
M libc/test/src/stdio/CMakeLists.txt
M libc/test/src/stdio/asprintf_test.cpp
M libc/test/src/stdio/printf_core/writer_test.cpp
M libc/test/src/stdio/vasprintf_test.cpp
M libc/test/src/stdlib/quick_sort_test.cpp
M libc/test/src/string/memchr_test.cpp
M libc/test/src/string/memrchr_test.cpp
M libc/test/src/sys/ioctl/linux/CMakeLists.txt
M libc/test/src/sys/ioctl/linux/ioctl_test.cpp
M libc/test/src/termios/CMakeLists.txt
M libc/test/src/termios/termios_test.cpp
M libc/test/src/time/CMakeLists.txt
M libc/test/src/time/asctime_r_test.cpp
M libc/test/src/time/asctime_test.cpp
M libc/test/src/time/ctime_r_test.cpp
M libc/test/src/time/ctime_test.cpp
M libc/test/src/time/gmtime_r_test.cpp
M libc/test/src/time/gmtime_test.cpp
M libc/test/src/time/nanosleep_test.cpp
M libc/test/src/wchar/CMakeLists.txt
M libc/test/src/wchar/WcstolTest.h
M libc/test/src/wchar/mblen_test.cpp
M libc/test/src/wchar/mbrlen_test.cpp
M libc/test/src/wchar/mbrtowc_test.cpp
M libc/test/src/wchar/mbsnrtowcs_test.cpp
M libc/test/src/wchar/mbsrtowcs_test.cpp
M libc/test/src/wchar/mbstowcs_test.cpp
M libc/test/src/wchar/mbtowc_test.cpp
M libc/test/src/wchar/wcrtomb_test.cpp
M libc/test/src/wchar/wctomb_test.cpp
M libc/utils/MPFRWrapper/MPCommon.cpp
M libc/utils/MPFRWrapper/MPCommon.h
M libc/utils/MPFRWrapper/MPFRUtils.cpp
M libc/utils/MPFRWrapper/MPFRUtils.h
M libclc/CMakeLists.txt
M libclc/README.md
M libclc/clc/include/clc/clcfunc.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
A libclc/clc/include/clc/shared/unary_def_with_ptr_scalarize.inc
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.inc
M libclc/clc/lib/generic/atomic/clc_atomic_def.inc
M libclc/clc/lib/generic/integer/clc_clz.inc
M libclc/clc/lib/generic/integer/clc_ctz.inc
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
M libclc/utils/CMakeLists.txt
M libclc/utils/prepare-builtins.cpp
M libcxx/cmake/caches/Armv7M-picolibc.cmake
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/docs/Status/Cxx17Issues.csv
M libcxx/docs/Status/Cxx17Papers.csv
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/Cxx20Papers.csv
M libcxx/docs/Status/Cxx23Issues.csv
M libcxx/docs/Status/Cxx23Papers.csv
M libcxx/docs/Status/Cxx2cIssues.csv
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/docs/TestingLibcxx.rst
M libcxx/include/CMakeLists.txt
M libcxx/include/__algorithm/make_heap.h
M libcxx/include/__algorithm/partial_sort.h
M libcxx/include/__algorithm/partial_sort_copy.h
M libcxx/include/__algorithm/sift_down.h
M libcxx/include/__config
M libcxx/include/__cxx03/__algorithm/find.h
M libcxx/include/__cxx03/__iterator/prev.h
M libcxx/include/__cxx03/__mutex/once_flag.h
M libcxx/include/__cxx03/fstream
M libcxx/include/__cxx03/ios
M libcxx/include/__cxx03/locale
M libcxx/include/__cxx03/sstream
M libcxx/include/__cxx03/string
M libcxx/include/__hash_table
M libcxx/include/__memory/allocate_at_least.h
M libcxx/include/__memory/compressed_pair.h
M libcxx/include/__memory/pointer_traits.h
M libcxx/include/__random/binomial_distribution.h
M libcxx/include/__split_buffer
M libcxx/include/__tree
M libcxx/include/__type_traits/desugars_to.h
A libcxx/include/__utility/default_three_way_comparator.h
A libcxx/include/__utility/lazy_synth_three_way_comparator.h
M libcxx/include/__vector/vector.h
M libcxx/include/deque
M libcxx/include/ext/hash_map
M libcxx/include/map
M libcxx/include/module.modulemap.in
M libcxx/include/string
M libcxx/include/unordered_map
M libcxx/src/filesystem/format_string.h
M libcxx/src/string.cpp
M libcxx/test/benchmarks/algorithms/modifying/unique.bench.cpp
M libcxx/test/benchmarks/algorithms/modifying/unique_copy.bench.cpp
M libcxx/test/benchmarks/atomic_wait_1_waiter_1_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_N_waiter_N_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_multi_waiter_1_notifier.bench.cpp
M libcxx/test/benchmarks/atomic_wait_vs_mutex_lock.bench.cpp
M libcxx/test/benchmarks/containers/string.bench.cpp
M libcxx/test/benchmarks/filesystem.bench.cpp
A libcxx/test/benchmarks/spec.gen.py
M libcxx/test/benchmarks/stringstream.bench.cpp
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
M libcxx/test/libcxx-03/iterators/iterator.primitives/iterator.operations/prev.verify.cpp
M libcxx/test/libcxx-03/strings/basic.string/string.capacity/max_size.pass.cpp
R libcxx/test/libcxx-03/strings/basic.string/string.modifiers/resize_default_initialized.pass.cpp
M libcxx/test/libcxx/algorithms/bad_iterator_traits.verify.cpp
M libcxx/test/libcxx/algorithms/cpp17_iterator_concepts.verify.cpp
M libcxx/test/libcxx/input.output/filesystems/class.directory_entry/directory_entry.mods/last_write_time.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
R libcxx/test/libcxx/strings/basic.string/string.modifiers/resize_default_initialized.pass.cpp
M libcxx/test/libcxx/type_traits/is_replaceable.compile.pass.cpp
M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
A libcxx/test/libcxx/utilities/utility/has_default_three_way.compile.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.rotate/ranges_rotate.pass.cpp
M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
M libcxx/test/std/containers/associative/multimap/multimap.ops/find.pass.cpp
M libcxx/test/std/containers/associative/multiset/find.pass.cpp
M libcxx/test/std/containers/associative/set/find.pass.cpp
M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
M libcxx/test/std/experimental/utilities/meta/meta.detect/detected_t.pass.cpp
M libcxx/test/std/experimental/utilities/meta/meta.detect/is_detected.pass.cpp
M libcxx/test/std/experimental/utilities/meta/meta.detect/is_detected_convertible.pass.cpp
M libcxx/test/std/experimental/utilities/meta/meta.detect/is_detected_exact.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/string.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/string.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/default.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/pointer.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/string.pass.cpp
M libcxx/test/std/input.output/iostreams.base/fpos/fpos.operations/fpos.pass.cpp
M libcxx/test/std/input.output/iostreams.base/ios/basic.ios.members/copyfmt.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/istringstream/istringstream.cons/string.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/ostringstream/ostringstream.cons/string.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/default.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/move.pass.cpp
M libcxx/test/std/input.output/string.streams/stringstream/stringstream.cons/string.pass.cpp
M libcxx/test/std/localization/locale.categories/category.monetary/locale.money.get/locale.money.get.members/get_long_double_overlong.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/awk.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/ecma.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.match/extended.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/awk.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/basic.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/ecma.locale.pass.cpp
M libcxx/test/std/re/re.alg/re.alg.search/extended.locale.pass.cpp
M libcxx/test/std/re/re.traits/lookup_collatename.pass.cpp
M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
M libcxx/test/std/strings/basic.string/string.cons/copy_alloc.pass.cpp
M libcxx/test/std/strings/basic.string/string.modifiers/string_append/pointer_size.pass.cpp
M libcxx/test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp
M libcxx/test/support/MinSequenceContainer.h
M libcxx/test/support/any_helpers.h
A libcxx/utils/benchmark-historical
A libcxx/utils/build-at-commit
R libcxx/utils/cat_files.py
M libcxx/utils/ci/BOT_OWNERS.txt
M libcxx/utils/ci/Dockerfile
M libcxx/utils/ci/build-picolibc.sh
A libcxx/utils/compare-benchmarks
A libcxx/utils/consolidate-benchmarks
R libcxx/utils/libcxx-benchmark-json
R libcxx/utils/libcxx-compare-benchmarks
M libcxx/utils/libcxx/test/format.py
M libcxx/utils/libcxx/test/params.py
A libcxx/utils/parse-google-benchmark-results
A libcxx/utils/parse-spec-results
A libcxx/utils/requirements.txt
M libcxx/utils/synchronize_csv_status_files.py
A libcxx/utils/test-at-commit
A libcxx/utils/visualize-historical
M libcxxabi/test/configs/armv7m-picolibc-libc++abi.cfg.in
M libunwind/test/configs/armv7m-picolibc-libunwind.cfg.in
M lld/COFF/COFFLinkerContext.h
M lld/COFF/Chunks.cpp
M lld/COFF/Config.h
M lld/COFF/Driver.cpp
M lld/COFF/LTO.cpp
M lld/COFF/MinGW.cpp
M lld/COFF/Options.td
M lld/COFF/PDB.cpp
M lld/COFF/PDB.h
M lld/COFF/SymbolTable.cpp
M lld/COFF/Writer.cpp
M lld/Common/DriverDispatcher.cpp
M lld/ELF/Arch/RISCV.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/InputSection.cpp
M lld/ELF/MarkLive.cpp
M lld/ELF/Options.td
M lld/ELF/Target.h
M lld/MachO/ICF.cpp
M lld/MachO/ObjC.cpp
M lld/MachO/Target.h
M lld/docs/ReleaseNotes.rst
M lld/docs/ld.lld.1
A lld/test/COFF/exdllcharacteristics.test
M lld/test/COFF/options.test
M lld/test/COFF/pdb-type-server-simple.test
M lld/test/COFF/precomp-link-samename.test
M lld/test/COFF/precomp-link.test
M lld/test/COFF/precomp-summary-fail.test
A lld/test/COFF/reloc-undefined-weak.s
M lld/test/COFF/wrap-dllimport.s
M lld/test/ELF/emulation-hexagon.s
M lld/test/ELF/gc-sections-print.s
M lld/test/MinGW/driver.test
M lldb/bindings/interface/SBProgressDocstrings.i
M lldb/bindings/python/python.swig
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/.htaccess
M lldb/docs/dil-expr-lang.ebnf
M lldb/docs/use/python-reference.rst
R lldb/docs/use/python.rst
A lldb/docs/use/tutorials/accessing-documentation.md
A lldb/docs/use/tutorials/automating-stepping-logic.md
A lldb/docs/use/tutorials/breakpoint-triggered-scripts.md
A lldb/docs/use/tutorials/creating-custom-breakpoints.md
A lldb/docs/use/tutorials/custom-frame-recognizers.md
A lldb/docs/use/tutorials/extending-target-stop-hooks.md
A lldb/docs/use/tutorials/implementing-standalone-scripts.md
A lldb/docs/use/tutorials/python-embedded-interpreter.md
A lldb/docs/use/tutorials/script-driven-debugging.md
A lldb/docs/use/tutorials/writing-custom-commands.md
M lldb/examples/python/cmdtemplate.py
M lldb/examples/python/templates/parsed_cmd.py
M lldb/examples/synthetic/libcxx.py
M lldb/include/lldb/Core/Architecture.h
M lldb/include/lldb/Core/Opcode.h
M lldb/include/lldb/Expression/Expression.h
M lldb/include/lldb/Expression/IRMemoryMap.h
M lldb/include/lldb/Host/JSONTransport.h
M lldb/include/lldb/Host/common/NativeProcessProtocol.h
M lldb/include/lldb/Protocol/MCP/Server.h
M lldb/include/lldb/Symbol/SymbolFile.h
M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/InstrumentationRuntimeStopInfo.h
M lldb/include/lldb/Target/RegisterContextUnwind.h
M lldb/include/lldb/Target/StackFrameList.h
M lldb/include/lldb/Target/StackID.h
M lldb/include/lldb/Target/Statistics.h
M lldb/include/lldb/Target/StopInfo.h
M lldb/include/lldb/Target/Thread.h
M lldb/include/lldb/Target/UnwindLLDB.h
M lldb/include/lldb/Utility/ArchSpec.h
M lldb/include/lldb/Utility/StringExtractorGDBRemote.h
M lldb/include/lldb/ValueObject/DILAST.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/DILLexer.h
M lldb/include/lldb/ValueObject/DILParser.h
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
M lldb/scripts/framework-header-fix.py
M lldb/source/API/SBFrame.cpp
M lldb/source/API/SBThread.cpp
M lldb/source/Commands/CommandObjectMemory.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Commands/Options.td
M lldb/source/Expression/DWARFExpression.cpp
M lldb/source/Expression/Expression.cpp
M lldb/source/Expression/IRExecutionUnit.cpp
M lldb/source/Expression/IRMemoryMap.cpp
M lldb/source/Host/common/File.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/windows/Host.cpp
M lldb/source/Plugins/ABI/AArch64/ABIMacOSX_arm64.cpp
M lldb/source/Plugins/ABI/ARM/ABISysV_arm.cpp
M lldb/source/Plugins/Architecture/Arm/ArchitectureArm.cpp
M lldb/source/Plugins/Architecture/Arm/ArchitectureArm.h
M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
M lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp
M lldb/source/Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp
M lldb/source/Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp
M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
M lldb/source/Plugins/ObjectFile/JSON/ObjectFileJSON.cpp
M lldb/source/Plugins/ObjectFile/JSON/ObjectFileJSON.h
M lldb/source/Plugins/Process/Utility/HistoryUnwind.cpp
M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
M lldb/source/Plugins/Process/Utility/StopInfoMachException.h
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp
M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.h
M lldb/source/Plugins/Process/elf-core/RegisterUtilities.h
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
M lldb/source/Plugins/Process/wasm/ProcessWasm.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h
M lldb/source/Plugins/Protocol/MCP/Tool.cpp
M lldb/source/Plugins/Protocol/MCP/Tool.h
M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Protocol/MCP/Server.cpp
M lldb/source/Symbol/ObjectFile.cpp
M lldb/source/Symbol/SymbolFileOnDemand.cpp
M lldb/source/Target/ABI.cpp
M lldb/source/Target/InstrumentationRuntimeStopInfo.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/RegisterContextUnwind.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StackID.cpp
M lldb/source/Target/Statistics.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Utility/ArchSpec.cpp
M lldb/source/Utility/Scalar.cpp
M lldb/source/Utility/StringExtractorGDBRemote.cpp
M lldb/source/ValueObject/DILAST.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/DILLexer.cpp
M lldb/source/ValueObject/DILParser.cpp
M lldb/test/API/commands/command/script/add/TestAddParsedCommand.py
M lldb/test/API/commands/command/script/add/test_commands.py
M lldb/test/API/commands/dwim-print/TestDWIMPrint.py
M lldb/test/API/commands/dwim-print/main.cpp
M lldb/test/API/commands/expression/import-std-module/array/TestArrayFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/deque-basic/TestDequeFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/deque-dbg-info-content/TestDbgInfoContentDequeFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/forward_list-dbg-info-content/TestDbgInfoContentForwardListFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/forward_list/TestForwardListFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/iterator/TestIteratorFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/list-dbg-info-content/TestDbgInfoContentListFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/list/TestListFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/non-module-type-separation/TestNonModuleTypeSeparation.py
M lldb/test/API/commands/expression/import-std-module/shared_ptr-dbg-info-content/TestSharedPtrDbgInfoContentFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/vector-dbg-info-content/TestDbgInfoContentVectorFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/vector-of-vectors/TestVectorOfVectorsFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/weak_ptr-dbg-info-content/TestDbgInfoContentWeakPtrFromStdModule.py
M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py
M lldb/test/API/commands/frame/var-dil/expr/Literals/TestFrameVarDILLiterals.py
M lldb/test/API/commands/statistics/basic/TestStats.py
A lldb/test/API/commands/statistics/basic/dwo_error_foo.cpp
A lldb/test/API/commands/statistics/basic/dwo_error_main.cpp
M lldb/test/API/functionalities/asan/TestMemoryHistory.py
M lldb/test/API/functionalities/asan/TestReportData.py
M lldb/test/API/functionalities/data-formatter/data-formatter-objc/Makefile
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unordered_map-iterator/TestDataFormatterStdUnorderedMap.py
M lldb/test/API/functionalities/gdb_remote_client/TestqOffsets.py
M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
M lldb/test/API/functionalities/postmortem/elf-core/gcore/TestGCore.py
A lldb/test/API/functionalities/postmortem/elf-core/linux-arm-vfp.c
A lldb/test/API/functionalities/postmortem/elf-core/linux-arm-vfp.core
M lldb/test/API/functionalities/postmortem/elf-core/thread_crash/TestLinuxCoreThreads.py
M lldb/test/API/functionalities/rerun_and_expr_dylib/TestRerunAndExprDylib.py
M lldb/test/API/functionalities/thread/exit_during_expression/main.c
M lldb/test/API/functionalities/thread/step_until/TestStepUntil.py
M lldb/test/API/functionalities/thread/step_until/TestStepUntilAPI.py
M lldb/test/API/functionalities/tsan/basic/TestTsanBasic.py
M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
A lldb/test/API/functionalities/unwind/cortex-m-exception/Makefile
A lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
A lldb/test/API/functionalities/unwind/cortex-m-exception/armv7m-nofpu-exception.yaml
A lldb/test/API/functionalities/unwind/cortex-m-exception/binary.json
M lldb/test/API/functionalities/valobj_errors/hidden.c
A lldb/test/API/lang/cpp/abi_tag_structors/Makefile
A lldb/test/API/lang/cpp/abi_tag_structors/TestAbiTagStructors.py
A lldb/test/API/lang/cpp/abi_tag_structors/main.cpp
M lldb/test/API/lang/cpp/expr-definition-in-dylib/TestExprDefinitionInDylib.py
M lldb/test/API/lang/cpp/expr-definition-in-dylib/lib.cpp
M lldb/test/API/lang/cpp/expr-definition-in-dylib/lib.h
M lldb/test/API/lang/cpp/expr-definition-in-dylib/main.cpp
M lldb/test/API/macosx/arm-corefile-regctx/TestArmMachoCorefileRegctx.py
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/Makefile
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/TestArmPointerMetadataCFADwarfExpr.py
A lldb/test/API/macosx/arm-pointer-metadata-cfa-dwarf-expr/main.s
R lldb/test/API/macosx/arm-pointer-metadata-stripping/Makefile
R lldb/test/API/macosx/arm-pointer-metadata-stripping/TestArmPointerMetadataStripping.py
R lldb/test/API/macosx/arm-pointer-metadata-stripping/extra_symbols.json
R lldb/test/API/macosx/arm-pointer-metadata-stripping/main.c
M lldb/test/API/macosx/ignore_exceptions/Makefile
M lldb/test/API/macosx/riscv32-corefile/TestRV32MachOCorefile.py
A lldb/test/API/pointer-nonaddressable-bits/Makefile
A lldb/test/API/pointer-nonaddressable-bits/TestArmPointerMetadataStripping.py
A lldb/test/API/pointer-nonaddressable-bits/extra_symbols.json
A lldb/test/API/pointer-nonaddressable-bits/main.c
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/console/TestDAP_console.py
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/test/API/tools/lldb-dap/memory/TestDAP_memory.py
M lldb/test/API/tools/lldb-dap/server/TestDAP_server.py
M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/CMakeLists.txt
A lldb/test/Shell/Commands/command-image-dump-ast-colored.test
M lldb/test/Shell/SymbolFile/NativePDB/disassembly.cpp
M lldb/test/Shell/SymbolFile/NativePDB/inline_sites.test
M lldb/test/Shell/SymbolFile/NativePDB/local-variables-registers.s
M lldb/test/Shell/SymbolFile/NativePDB/nested-blocks-same-address.s
A lldb/test/Shell/SymbolFile/NativePDB/symtab.cpp
M lldb/test/Shell/SymbolFile/PDB/native-setting.cpp
M lldb/test/Shell/SymbolFile/PDB/type-quals.test
M lldb/test/Shell/SymbolFile/PDB/variables.test
M lldb/test/Shell/Unwind/windows-unaligned-x86_64.test
M lldb/test/Shell/lit.cfg.py
M lldb/test/Shell/lit.site.cfg.py.in
M lldb/tools/lldb-dap/EventHelper.cpp
M lldb/tools/lldb-dap/EventHelper.h
M lldb/tools/lldb-dap/Handler/ModuleSymbolsRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/WriteMemoryRequestHandler.cpp
M lldb/tools/lldb-dap/Options.td
M lldb/tools/lldb-dap/Protocol/DAPTypes.h
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolEvents.h
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/README.md
M lldb/tools/lldb-dap/package-lock.json
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
M lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
M lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
M lldb/tools/lldb-mcp/CMakeLists.txt
M lldb/tools/lldb-mcp/lldb-mcp.cpp
M lldb/tools/yaml2macho-core/yaml2macho.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
M lldb/unittests/Expression/CMakeLists.txt
M lldb/unittests/Expression/DWARFExpressionTest.cpp
M lldb/unittests/Expression/ExpressionTest.cpp
M lldb/unittests/Host/JSONTransportTest.cpp
Log Message:
-----------
Merge branch 'main' into users/s.barannikov/decoder-operands-6-aarch64-rest
Compare: https://github.com/llvm/llvm-project/compare/81a9dc0a8c04...5e59a9ac09ee
To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications
More information about the All-commits
mailing list