[all-commits] [llvm/llvm-project] 30b9ef: [RISCV] Factor out the core part of LMULWriteResMX...
Michael Kruse via All-commits
all-commits at lists.llvm.org
Thu Oct 16 01:41:36 PDT 2025
Branch: refs/heads/users/meinersbur/polly_remove-PolyhedralInfo
Home: https://github.com/llvm/llvm-project
Commit: 30b9ef8088c35d86fbdffebe0ba8cdcea1afe6eb
https://github.com/llvm/llvm-project/commit/30b9ef8088c35d86fbdffebe0ba8cdcea1afe6eb
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVScheduleV.td
Log Message:
-----------
[RISCV] Factor out the core part of LMULWriteResMXVariant. NFC (#162347)
LMULWriteResMXVariant is a helper class that makes creating LMUL-aware
`SchedVar` easier. In preparation for later patches that require
- LMUL- _and_ SEW-aware `SchedVar`
- Assign different processor resources for predicated and non-predicated
variants
I factor out the core logics of LMULWriteResMXVariant into another impl
class, such that it'll be easier to add _"LMULSEWWriteResMXSEWVariant"_
easier later. I also extend this class so that users can customize
processor resources for the non-predicated variant.
Despite these, this patch is still a NFC. I thought it'll be cleaner not
to mix the changes here into later patches.
Commit: b54f01e91163abb7cfcca76da34efebbee4622b4
https://github.com/llvm/llvm-project/commit/b54f01e91163abb7cfcca76da34efebbee4622b4
Author: Ahmed Bougacha <ahmed at bougacha.org>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/test/Driver/aarch64-cpu-defaults-appleos26.c
Log Message:
-----------
[AArch64] Bump default CPUs for iOS 18/watchOS 26 to A10/S9. (#162325)
We previously bumped the defaults for 26.0 Apple OS targets to
conservative CPU targets in 69d141712a10.
We can further bump it for watchOS arm64 (which lets us be a little bit
more aggressive than arm64e/arm64_32), as well as for the iOS
predecessor, iOS 18.
Commit: 7ab7554ef6e1eb45791d047eb332837e6d7d603f
https://github.com/llvm/llvm-project/commit/7ab7554ef6e1eb45791d047eb332837e6d7d603f
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M lldb/tools/debugserver/source/RNBRemote.cpp
Log Message:
-----------
[debugserver][NFC] Add helper function for escaping special characters (#162297)
This code was duplicated in multiple places and a subsequent patch will
need to do it again.
Commit: 25933f62dc261c394361ff8b42f40196ee36f44e
https://github.com/llvm/llvm-project/commit/25933f62dc261c394361ff8b42f40196ee36f44e
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M lldb/tools/debugserver/source/RNBRemote.cpp
Log Message:
-----------
[debugserver][NFC] Make helper functions have internal linkage (#162307)
This also allowed deleting unreachable code.
Commit: 2a2324a6eae7447be07ed95a24d5b335c9513450
https://github.com/llvm/llvm-project/commit/2a2324a6eae7447be07ed95a24d5b335c9513450
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/resource_binding_attr.hlsl
M clang/test/AST/HLSL/vk_binding_attr.hlsl
Log Message:
-----------
[HLSL] Do not remove `HLSLVkBindingAttr` if the target is not SPIR-V (#161752)
The attribute needs to be preserved for rewriter scenarios. Two places were updated to use the `ResourceBindingAttrs` helper struct to make sure the `HLSLVkBindingAttr` is ignored when the target is DirectX.
Commit: 84cb38684b03f83f5e7412c1ac447d8037e32fc3
https://github.com/llvm/llvm-project/commit/84cb38684b03f83f5e7412c1ac447d8037e32fc3
Author: CatherineMoore <catmoore at amd.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[OpenMP] Update OpenMP 6.0 implementation status. (#162379)
Please review
Commit: 57b5ba00cb421b9be17bac10036763f42fbe9298
https://github.com/llvm/llvm-project/commit/57b5ba00cb421b9be17bac10036763f42fbe9298
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/getauxval.inc
Log Message:
-----------
[FMV][AArch64] Fix build after edb43192516a55165cc4c158eb4fd4b2d81a8fce (#162383)
Revert removal of local variables.
Commit: 198f29469a159e8418734e18edb60e33cb476462
https://github.com/llvm/llvm-project/commit/198f29469a159e8418734e18edb60e33cb476462
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
A llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-fp.s
Log Message:
-----------
[RISCV] Add missing vector floating point scheduling model tests for SiFive7 (#162386)
This is helpful on validating the non-throttled vector FP64 performance,
compared to the throttled model of sifive-x390.
Commit: 7f82996cd2b5e062e835b7aa3b99ecfdf54eeeb5
https://github.com/llvm/llvm-project/commit/7f82996cd2b5e062e835b7aa3b99ecfdf54eeeb5
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/unittests/CodeGen/MIR2VecTest.cpp
Log Message:
-----------
[MIR2Vec] Fixing non x86 unittest failures (#162381)
Fixing failures due to #161463
Commit: 699f085791872f9006e25d1369327e1ddc44002e
https://github.com/llvm/llvm-project/commit/699f085791872f9006e25d1369327e1ddc44002e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/include/clang/Basic/SanitizerSpecialCaseList.h
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
Log Message:
-----------
[NFC][SanitizerSection] Store Section& instead of Entries and FileIdx (#162382)
Commit: 33e82e663d3ae15c4f73afa79bf8d27d66156311
https://github.com/llvm/llvm-project/commit/33e82e663d3ae15c4f73afa79bf8d27d66156311
Author: Anthony Latsis <alatsis at apple.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-ar/extract.test
M llvm/test/tools/llvm-ar/print.test
Log Message:
-----------
[test] llvm-ar: Adjust 2 tests to pass again after inadvertent unXFAIL for some target triples (#159796)
The problem with the current `target={{.*}}-darwin{{.*}}` XFAIL
condition (changed in https://github.com/llvm/llvm-project/pull/130144)
is that the Swift build script uses Apple platform names like 'macosx',
not 'darwin', for the LLVM target triple, e.g. `arm64-apple-macosx13.0`.
These tests appear to have been originally XFAILed because the default
format on macOS (darwin) adds newlines as padding to align members. See:
https://github.com/llvm/llvm-project/blob/ee8394d9469a2946ffe2e7d192c593ecf3f93098/llvm/lib/Object/ArchiveWriter.cpp#L897-L904
Use `--format=gnu` to cope with the differences in the output and
reenable the tests.
rdar://157213658
Commit: ca1a1f47da0a073de838748b9b7067d7f10e8c92
https://github.com/llvm/llvm-project/commit/ca1a1f47da0a073de838748b9b7067d7f10e8c92
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Generalize "#!special-case-list-v" parsing (#162350)
Commit: 768f438c6a31aecfecb848f560a8f698d80d908f
https://github.com/llvm/llvm-project/commit/768f438c6a31aecfecb848f560a8f698d80d908f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/GlobalISel/atomic-load-store-fp.ll
Log Message:
-----------
[RISCV][GISel] Add Zalasr RUN lines to atomic-load-store-fp.ll. NFC (#162204)
After #161774 and #162042, this works correctly.
Commit: 1a9efac9a255e28ab673fe78b22a23c380f7bebc
https://github.com/llvm/llvm-project/commit/1a9efac9a255e28ab673fe78b22a23c380f7bebc
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZa.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/atomic.s
Log Message:
-----------
[RISCV] Rename atomic instructions to remove underscore between AQ and RL. NFC (#162321)
Instruction names should match the mnemomic with '.' replaced by '_'.
The instruction mnemonics use ".aqrl" not ".aq.rl".
Commit: 681bd80ca5986b85695fdd5e6b4fc205f514ba0c
https://github.com/llvm/llvm-project/commit/681bd80ca5986b85695fdd5e6b4fc205f514ba0c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/test/Driver/print-supported-extensions-riscv.c
M clang/test/Driver/riscv-arch.c
M clang/test/Preprocessor/riscv-target-features.c
M llvm/docs/RISCVUsage.rst
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/attributes.ll
M llvm/test/MC/RISCV/attribute-arch.s
M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
Log Message:
-----------
[RISCV] Bump Zalasr version to 0.9. (#162329)
Update doc repository link.
Commit: fee4c16cf7483741f0a9fa033e6c76ec8f68bd4f
https://github.com/llvm/llvm-project/commit/fee4c16cf7483741f0a9fa033e6c76ec8f68bd4f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZa.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
Log Message:
-----------
[RISCV] Add IsSignExtendingOpW to Zabha and Zalasr instructions. (#162341)
Commit: 235308892ac73d457f4c7763e2f184f3c19fdd43
https://github.com/llvm/llvm-project/commit/235308892ac73d457f4c7763e2f184f3c19fdd43
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Adding tests to check multiple invocations of `getFunctionVector()` and `getInstVecMap()` return same results (#162365)
Tests for #162165. Missed it earlier.
Commit: 9715ccae1f98162f03ac0884a3dce5045b6b9a6e
https://github.com/llvm/llvm-project/commit/9715ccae1f98162f03ac0884a3dce5045b6b9a6e
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/getauxval.inc
Log Message:
-----------
[FMV][AArch64] Fix build after edb43192516a55165cc4c158eb4fd4b2d81a8fce, try 2 (#162393)
Correct the variable names
Commit: 94f290fffd80bd7c7d65db1df78cdacab633aab4
https://github.com/llvm/llvm-project/commit/94f290fffd80bd7c7d65db1df78cdacab633aab4
Author: yonghong-song <yhs at fb.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/BPF/BPFCheckAndAdjustIR.cpp
A llvm/test/CodeGen/BPF/addr-space-memintrinsic-gep.ll
A llvm/test/CodeGen/BPF/addr-space-memintrinsic-no-gep.ll
Log Message:
-----------
[BPF] Handle certain mem intrinsic functions with addr-space arguments (#160025)
In linux kernel commit [1], we have a bpf selftest failure caused by
llvm. In this particular case, the BPFCheckAndAdjustIR pass has a
function insertASpaceCasts() which inserts proper addrspacecast insn
at proper IR places. It does not handle __builtin_memset() and hance
caused selftest failure.
Add support in insertASpaceCasts() to handle
__builtin_(memset,memcpy,memmove,memset_inline,memcpy_inline}()
properly and this can fix the issue in [1] as well.
[1]
https://lore.kernel.org/all/20250920045805.3288551-1-yonghong.song@linux.dev/
Commit: 289e85b18101e058b3f4b81ce3c2b7c47489e7ca
https://github.com/llvm/llvm-project/commit/289e85b18101e058b3f4b81ce3c2b7c47489e7ca
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
Add MIR2Vec and missing IR2Vec files to MLGO label (#162395)
Commit: 566040e1352740ee35927b68fafe5d778a1f2111
https://github.com/llvm/llvm-project/commit/566040e1352740ee35927b68fafe5d778a1f2111
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MIR2Vec.h
M llvm/lib/CodeGen/MIR2Vec.cpp
M llvm/unittests/CodeGen/MIR2VecTest.cpp
Log Message:
-----------
[MIR2Vec] Refactor MIR vocabulary to use opcode-based indexing (#161713)
Refactor MIRVocabulary to improve opcode lookup and add Section enum for better organization. This is useful for embedder lookups (next patches)
(Tracking issue - #141817)
Commit: abc8aac6d242df9f26c8dbaf8b2a65aaa5abe791
https://github.com/llvm/llvm-project/commit/abc8aac6d242df9f26c8dbaf8b2a65aaa5abe791
Author: Derek Schuff <dschuff at chromium.org>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/test/CodeGen/WebAssembly/simd-setcc-reductions.ll
Log Message:
-----------
[WebAssembly] Check intrinsic argument count before Any/All combine (#162163)
This code is activated on all INTRINSIC_WO_CHAIN but only handles
a selection. However it was trying to read the arguments before
checking which intrinsic it was handling. This fails for intrinsics
that have no arguments.
Commit: b7df53380960efca085e3d849d3a163e8e919880
https://github.com/llvm/llvm-project/commit/b7df53380960efca085e3d849d3a163e8e919880
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Rename SpecialCaseList::inSectionBlame and move into Section (#162390)
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Commit: 01a8f9b81870ac9bfe26d80fa3313d56cb8cbe13
https://github.com/llvm/llvm-project/commit/01a8f9b81870ac9bfe26d80fa3313d56cb8cbe13
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
M lldb/test/API/functionalities/unwind/cortex-m-exception/armv7m-nofpu-exception.yaml
M lldb/test/API/functionalities/unwind/cortex-m-exception/binary.json
Log Message:
-----------
[lldb] Cortex-M exception unwind API test cleanup
This test, with a corefile created via yaml2macho-core plus an
ObjectFileJSON binary with symbol addresses and ranges, was failing
on some machines/CI because the wrong ABI was being picked.
The bytes of the functions were not included in the yaml or .json
binary. The unwind falls back to using the ABI plugin default
unwind plans. We have two armv7 ABIs - the Darwin ABI that always
uses r7 as the frame pointer, and the AAPCS ABI which uses r11 code.
In reality, armv7 code uses r11 in arm mode, r7 in thumb code. But
the ABI ArchDefaultUnwindPlan doesn't have any access to the Target's
ArchSpec or Process register state, to determine the correct processor
state (arm or thumb). And in fact, on Cortex-M targets, the
instructions are always thumb, so the arch default unwind plan
(hardcoded r11) is always wrong.
The corefile doesn't specify a vendor/os, only a cpu.
The object file json specifies the armv7m-apple-* triple, which will
select the correct ABI plugin, and the test runs.
In some cases, it looks like the Process ABI was fetched after
opening the corefile, but before the binary.json was loaded and
corrected the Target's ArchSpec. And we never re-evaluate the ABI
once it is set, in a Process. When we picked the AAPCS armv7 ABI,
we would try to use r11 as frame pointer, and the unwind would stop
after one stack frame.
I'm stepping around this problem by (1) adding the register bytes of
the prologues of every test function in the backtrace, and (2)
shortening the function ranges (in binary.json) to specify that the
functions are all just long enough for the prologue where execution
is stopped. The instruction emulation plugin will fail if it can't
get all of the bytes from the function instructions, so I hacked
the function sizes in the .json to cover the prologue plus one and
changed the addresses in the backtrace to fit within those ranges.
Commit: e5d15c12001dc8e066ecad65297fe87e953bcc39
https://github.com/llvm/llvm-project/commit/e5d15c12001dc8e066ecad65297fe87e953bcc39
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Make default version 2 instead of max() (#162398)
This way we can roll out new breaking features as opt-int.
E.g. "#!special-case-list-v3" will enabled something new.
Nothing to enabled yet, but with pinpointed default it's an option.
Follow up #162350.
Commit: 5deb787c02ed4bd26b6554199c539bf5478671a7
https://github.com/llvm/llvm-project/commit/5deb787c02ed4bd26b6554199c539bf5478671a7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVGISel.td
Log Message:
-----------
[RISCV][GISel] Add manual instruction selection for i8/i16/i32->i32/i64 G_SEXT/G_ZEXT. (#161971)
Because GISel doesn't distinquish integer and FP types, we need to allow
s16/s32 as legal inputs/outputs of G_SEXT and G_ZEXT.
This requires a extra isel patterns to support the cross product of
these types that we don't need for SelectionDAG. We also needed to add
i16/i32 to the GPR register class which prevents some type inferencing
in tablegen and increases the size of the RISCVGenDAGISel.inc by 2K.
This patch proposes to do manual selection so we can remove these
patterns and eventually remove the types from the register class.
Commit: 5d5fe11c38caabe97337afa5a426c7c8de10a29e
https://github.com/llvm/llvm-project/commit/5d5fe11c38caabe97337afa5a426c7c8de10a29e
Author: Fei Peng <pengfei.02 at bytedance.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
Log Message:
-----------
[compiler-rt][TSan] Fix compilation error on Android x86 (#162385)
Commit: bdef80f7a9a1f563f7d2f528e12bb3321d836857
https://github.com/llvm/llvm-project/commit/bdef80f7a9a1f563f7d2f528e12bb3321d836857
Author: jimingham <jingham at apple.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M lldb/include/lldb/Utility/Stream.h
Log Message:
-----------
Fix an API that was changed w/o changing the header doc (#162401)
This was causing bot failures if you build with -Werror -Wdocumentation.
Fix the docs to reflect the new headers.
Commit: aed53d19f9f4a6db4210e50712b96d4881d83774
https://github.com/llvm/llvm-project/commit/aed53d19f9f4a6db4210e50712b96d4881d83774
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Extract findMatcher and ::match with callback (#162397)
There are some users who rely on more than line
number. It would be easy to move some logic from
users side here with extracted methods.
Commit: 70b7a3502ee975ad08e2bc3ade32a04db19e31de
https://github.com/llvm/llvm-project/commit/70b7a3502ee975ad08e2bc3ade32a04db19e31de
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A orc-rt/unittests/DirectCaller.h
M orc-rt/unittests/SPSWrapperFunctionTest.cpp
Log Message:
-----------
[orc-rt] Hoist DirectCaller test utility into header to enable re-use. (#162405)
The DirectCaller utility allows "direct" calls (with arguments
serialized into, and then immediately back out of a
WrapperFunctionBuffer) to wrapper functions. It was introduced for the
SPSWrapperFunction tests, but will be useful for testing WrapperFunction
interfaces for various orc-rt APIs too, so this commit hoists it
somewhere where it can be reused.
Commit: 7212d27a44d35a4bd6a9738dc9d883efdb33501e
https://github.com/llvm/llvm-project/commit/7212d27a44d35a4bd6a9738dc9d883efdb33501e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Add Name into Regex version (#162408)
To pass something into Cb in `match()`.
No need to bother with test coverage, as it's
legacy transitional code, maybe we can remove it
soon.
Commit: 3af95f016e1d690670c13b1d33d14999d863f3fe
https://github.com/llvm/llvm-project/commit/3af95f016e1d690670c13b1d33d14999d863f3fe
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
Log Message:
-----------
AMDGPU: Figure out required AGPR count for inline asm (#150910)
For now just try to compute the minimum number of AGPRs required
to allocate the asm. Leave the attributor changes to turn this
into an integer value for later.
Commit: cd33c6b68e7010679517416e87a8abd860bdc747
https://github.com/llvm/llvm-project/commit/cd33c6b68e7010679517416e87a8abd860bdc747
Author: Koakuma <koachan at protonmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.cpp
M llvm/lib/Target/Sparc/SparcISelLowering.h
M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
M llvm/lib/Target/Sparc/SparcInstrInfo.td
M llvm/test/CodeGen/SPARC/atomicrmw-uinc-udec-wrap.ll
A llvm/test/CodeGen/SPARC/atomics-ordering.ll
M llvm/test/Transforms/AtomicExpand/SPARC/partword.ll
Log Message:
-----------
[SPARC] Weaken emitted barriers for atomic ops (#154950)
Weaken barriers for atomic ops to the form that's just enough to enforce
memory model constraints.
In particular, we try to avoid emitting expensive #StoreLoad barriers
whenever possible.
The barriers emitted conform to V9's RMO and V8's PSO memory model, and
is compatible with GCC's lowering.
A quick test with `pgbench` on a T4-1 shows some small (up to about 4%),
but consistent speedup.
Commit: cb53a2de37460e2d59f6828d3c5f1e35ac512dde
https://github.com/llvm/llvm-project/commit/cb53a2de37460e2d59f6828d3c5f1e35ac512dde
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
Log Message:
-----------
AMDGPU: Account for read/write register intrinsics for AGPR usage (#161988)
Fix the special case intrinsics that can directly reference a physical
register. There's no reason to use this.
Commit: 760a1142feee734d044ab546914407f6b8d96062
https://github.com/llvm/llvm-project/commit/760a1142feee734d044ab546914407f6b8d96062
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M flang-rt/lib/runtime/character.cpp
Log Message:
-----------
[flang][NFC] Revise crash msg for GeneralCharFunc (#162292)
Commit: 1a5494ca4a7d2e6884e17c064e5215b34fbe4b40
https://github.com/llvm/llvm-project/commit/1a5494ca4a7d2e6884e17c064e5215b34fbe4b40
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/BUFInstructions.td
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
M llvm/lib/Target/AMDGPU/FLATInstructions.td
M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
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/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP2Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/test/MC/AMDGPU/gfx1250_asm_vflat_err.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop2_err.s
M llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
M llvm/test/MC/AMDGPU/gfx950-unsupported.s
M llvm/test/MC/AMDGPU/misaligned-vgpr-tuples-err.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp8.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop1_dpp8.txt
Log Message:
-----------
AMDGPU: Use RegClassByHwMode to manage operand VGPR operand constraints (#158272)
This removes special case processing in TargetInstrInfo::getRegClass to
fixup register operands which depending on the subtarget support AGPRs,
or require even aligned registers.
This regresses assembler diagnostics, which currently work by hackily
accepting invalid cases and then post-rejecting a validly parsed
instruction.
On the plus side this now emits a comment when disassembling unaligned
registers for targets with the alignment requirement.
Commit: 34fda634f7066bab28031eda0ebb637ccd1478a8
https://github.com/llvm/llvm-project/commit/34fda634f7066bab28031eda0ebb637ccd1478a8
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenFunction.h
Log Message:
-----------
Revert "[Clang][CodeGen] Emit !alloc_token for new expressions" (#162412)
Reverts llvm/llvm-project#162099
Reason: this commit depends on #162098, which I am reverting due to
build breakage (see
https://github.com/llvm/llvm-project/pull/162098#issuecomment-3379070211).
Commit: d9a568034ff817060dc0a83dc3ea160b058a5935
https://github.com/llvm/llvm-project/commit/d9a568034ff817060dc0a83dc3ea160b058a5935
Author: Kyungtak Woo <kevinwkt at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lld/wasm/InputChunks.cpp
Log Message:
-----------
[lld][WebAssembly] update error to continue for R_WASM_FUNCTION_INDEX_I32 (#162403)
with some builds we're getting
`[libcxx/include/optional:874](libcxx/include/optional): libc++
Hardening assertion this->has_value() failed: optional operator* called
on a disengaged value` since error() adds the errmsg into the stream and
continues, but given it's an unsupported relocation type it eventually
crashes.
Given that I see that we're already using Fatal() in some of the other
places where it hits unsupported relocation type, my uneducated guess is
that this should be fine.
Commit: c74fa20c955bae00d70d72b48f85b0143d3a1f3d
https://github.com/llvm/llvm-project/commit/c74fa20c955bae00d70d72b48f85b0143d3a1f3d
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/Basic/Sanitizers.def
M clang/lib/CodeGen/CodeGenFunction.cpp
Log Message:
-----------
Revert "[Clang][CodeGen] Introduce the AllocToken SanitizerKind" (#162413)
Reverts llvm/llvm-project#162098
Reason: buildbot breakage (see
https://github.com/llvm/llvm-project/pull/162098#issuecomment-3379070211)
Commit: 06faca2fec8747adbfcbbaf6a874c96c9cf434ed
https://github.com/llvm/llvm-project/commit/06faca2fec8747adbfcbbaf6a874c96c9cf434ed
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn
Log Message:
-----------
[gn build] Port 879f8616ef93
Commit: 0540f04019717b529461db9762170c34176b1ff6
https://github.com/llvm/llvm-project/commit/0540f04019717b529461db9762170c34176b1ff6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
Log Message:
-----------
[gn build] Port c7d776b06897
Commit: 96e0bbc1df41ede2a13820b8582ee003c18eebc4
https://github.com/llvm/llvm-project/commit/96e0bbc1df41ede2a13820b8582ee003c18eebc4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
Log Message:
-----------
AMDGPU: Fix parsing wrong operand format for read_register/write_register (#162414)
Apparently the IR verifier doesn't enforce the correct structure.
Also I do not know why we have this extra level of wrapper in the
intrinsic,
it just makes it harder to get at the string. I also do not know why
kokkos is using these intrinsics, but it shouldn't.
Commit: d01e1c1061864c795c74e552abfbeb98b0b28a50
https://github.com/llvm/llvm-project/commit/d01e1c1061864c795c74e552abfbeb98b0b28a50
Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Use getNegative instead of subtracting from zero. NFC (#162313)
Commit: 783c1a7617052cf4c520a487c03813ff38f65667
https://github.com/llvm/llvm-project/commit/783c1a7617052cf4c520a487c03813ff38f65667
Author: James Y Knight <jyknight at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Log Message:
-----------
AMDGPU: skip AMDGPUAttributor pass on R600 some more. (#162418)
This is a follow-up for #162207, where I neglected to skip the second
use of AMDGPUAttributor for R600 targets. This use is covered by the
test lld/test/ELF/lto/r600.ll.
Commit: 4ddc0f3ffd9c609b584db2d089aaec2cec820c06
https://github.com/llvm/llvm-project/commit/4ddc0f3ffd9c609b584db2d089aaec2cec820c06
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
Log Message:
-----------
[AMDGPU] Add the missing enabling check of AMDGPUAttributor (#162420)
Commit: bd1561d5f160a949c0bbf9bfbda3558eb62f98d7
https://github.com/llvm/llvm-project/commit/bd1561d5f160a949c0bbf9bfbda3558eb62f98d7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
M llvm/lib/Target/RISCV/RISCVGISel.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZalasr.td
Log Message:
-----------
[RISCV][GISel] Add manual isel for s8/s16/s32 load/store for the GPR bank. (#161995)
GISel doesn't distinquish integer and FP loads and stores. We only
know which it is after register bank selection. This results in
s16/s32 loads/stores on the GPR register bank that need to be
selected. This required extra isel patterns not needed for SDAG
and adding i16 and i32 to the GPR register class. Having i16/i32
on the GPR register class makes type interfence in tablegen less
effective, requiring explicit casts to be added to patterns. It also
increases the size of RISCVGenDAGISel.inc by 2K.
This patch removes the extra isel patterns and replaces it with custom
instruction selection similar to what is done on AArch64. A future
patch will remove i16 and i32 from the GPR register class.
Commit: 3bec46ff95888c537dabbf19895d48e3f0eb7b35
https://github.com/llvm/llvm-project/commit/3bec46ff95888c537dabbf19895d48e3f0eb7b35
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-07 (Tue, 07 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandAtomicPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoA.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZa.td
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/atomic-cmpxchg-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/atomic-cmpxchg-rv64.mir
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/atomicrmw-add-sub-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/atomicrmw-add-sub-rv64.mir
M llvm/test/tools/llvm-exegesis/RISCV/latency-by-extension-A.s
Log Message:
-----------
[RISCV] Reorder ins/outs of atomic instruction to match their assembly order. NFC (#162411)
I think it is more intuitive for the operand order to match the assembly
order than to be sorted by operand name.
I also changed some isel patterns to always use XLenVT for pointer
operands. This shouldn't be a functional change.
Commit: a1f9ad2a38a6a5a8b38918e0d18c6b5672e44892
https://github.com/llvm/llvm-project/commit/a1f9ad2a38a6a5a8b38918e0d18c6b5672e44892
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
Log Message:
-----------
[SPARC] Fix-forward #154950 by returning true if SP::V8BAR is handled (#162424)
Use-after-poison happens because after SP::V8BAR is handled, it erases
MI, which therefore should not be inspected by `ExpandPostRA::run()`.
This fixes a buildbot-reported issue from #154950
(https://lab.llvm.org/buildbot/#/builders/24/builds/13433).
Commit: a29d7a1f04ce2ba50300398fc5670b499e5d89d9
https://github.com/llvm/llvm-project/commit/a29d7a1f04ce2ba50300398fc5670b499e5d89d9
Author: David Green <david.green at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/test/CodeGen/AArch64/fdiv-combine.ll
Log Message:
-----------
[GlobalISel] fdiv to fmul transform (#144305)
This is a port of the SDAG DAGCombiner::combineRepeatedFPDivisors
combine that looks for multiple fdiv operations with the same divisor
and converts them to a single reciprocal fdiv and multiple fmuls. It is
currently a fairly faithful port, with some additions to make sure that
the newly created fdiv dominates all new uses. Compared to the SDAG
version it also drops some logic about splat uses which assumes no
vector fdivs and some logic about x/sqrt(x) which does not yet apply to
GISel.
Commit: df3de1399bfae1bc99b68690926369ae9863d945
https://github.com/llvm/llvm-project/commit/df3de1399bfae1bc99b68690926369ae9863d945
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[mlir][vector] Remove redundant tests (#159804)
We ended up with a duplicate test case post #150284 - this PR removes
that. I am also renaming the corresponding test function name, which is
no longer valid (*).
(*) `@extract_from_0d_splatlike_broadcast_regression` implies that all
the tested vectors are rank-0, but that is not the case.
Commit: cac5bfac11ab352d9e96adeeebce4860ec86e032
https://github.com/llvm/llvm-project/commit/cac5bfac11ab352d9e96adeeebce4860ec86e032
Author: Ryan Cowan <ryan.cowan at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/combine-fconstant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-constant.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-fp16-fconstant.mir
M llvm/test/CodeGen/AArch64/arm64-indexed-memory.ll
M llvm/test/CodeGen/AArch64/f16-instructions.ll
M llvm/test/CodeGen/AArch64/fcvt-fixed.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd-strict.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmul-strict.ll
Log Message:
-----------
[AArch64][GlobalISel] Legalize s16 G_FCONSTANT to avoid widening to G_CONSTANT (#161205)
When widening a `G_FCONSTANT` it is converted to a `G_CONSTANT` to avoid
loss in accuracy (see
https://github.com/llvm/llvm-project/issues/56454). This means that some
folds such as `G_FPEXT(G_FCONSTANT)` fail to work when the scalar has
been widened.
This PR legalizes `s16`s by default in line with how s16 `G_CONSTANT`s
are treated.
Commit: 89e2d58ec8189e77c34e39b1e8c9992315ad682f
https://github.com/llvm/llvm-project/commit/89e2d58ec8189e77c34e39b1e8c9992315ad682f
Author: flovent <flbven at protonmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
Log Message:
-----------
[clang-tidy] Fix false positives about references in `misc-const-correctness` (#160971)
It's not legal to cast const pointer type to it's non-const reference
type implicitly, and will cause compile error.
And for explicit cast, it's legal but the pointer is mutable through
this reference.
Commit: d45b427ed476529a6cc52566c03839ad976ac37f
https://github.com/llvm/llvm-project/commit/d45b427ed476529a6cc52566c03839ad976ac37f
Author: Alexandre Eichenberger <alexe at us.ibm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/test/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation/misc-other.mlir
Log Message:
-----------
[MLIR] Define memory effects for `memref.prefetch` operation (#151261)
Currently `memref.prefetch` has no memory side effects, which are
necessary for some optimizations.
This PR adds the needed side effect, as recommended in
https://discourse.llvm.org/t/modeling-volatility-with-memory-effects/67946
This PR was created after a discussion on this specific topic here
https://discourse.llvm.org/t/memref-prefetch-op-has-no-memory-side-effects-decoration-in-the-def-td-file/87482
---------
Signed-off-by: Alexandre Eichenberger <alexe at us.ibm.com>
Commit: 7296734394ce5e8b4041216872741fec83396616
https://github.com/llvm/llvm-project/commit/7296734394ce5e8b4041216872741fec83396616
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/fixed-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
M llvm/test/Transforms/LoopVectorize/scalable-predication.ll
Log Message:
-----------
[VPlan] Mark ActiveLaneMask as not having mem effects (#162330)
VPInstruction::ActiveLaneMask does not read or write memory. This allows
us to clean up some dead recipes.
Commit: 772071bb75772ddff43c9525f2b66077fd873c04
https://github.com/llvm/llvm-project/commit/772071bb75772ddff43c9525f2b66077fd873c04
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
Log Message:
-----------
[LV] Improve code using VPIRPhi::getIRPhi (NFC) (#162270)
Commit: 1ab69d7004fe8b404c1f83d306838442f549e1ee
https://github.com/llvm/llvm-project/commit/1ab69d7004fe8b404c1f83d306838442f549e1ee
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[CMake] Suppress -Wpass-failed warning (#160472)
libstdc++15 makes use of an unroll pragma inside std::find_if(). This
produces a warning if clang fails to unroll the loop. As this pragma is
outside of our control, suppress the warning. Missed transforms are not
something we care about in this context.
Related to https://github.com/llvm/llvm-project/issues/157666.
Commit: f59736758113c568908c6b9293622c530d6ab827
https://github.com/llvm/llvm-project/commit/f59736758113c568908c6b9293622c530d6ab827
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
M flang/test/HLFIR/declare-codegen.fir
M flang/test/HLFIR/invalid.fir
Log Message:
-----------
[flang][HLFIR] add skip_rebox option to hlfir.declare (#162305)
hlfir.declare with a fir.box input always lead to a fir.rebox being
created to ensure the lower bounds and attributes are set correctly in
the local descriptor for the entity. This is really needed for
hlfir.declare using fir.box function argument that do not come with any
guarantees with regards to the lower bounds.
Sometimes however, this fir.rebox just adds a lot of noise in the SSA
chain, especially at the LLVM level and it is known that the input
descriptor is already correct.
I am making this patch in the context of OpenACC where I want to remap
the variables inside the compute region, creating a fir.rebox on the
way. This fir.rebox cannot be optimized away by FIR because of the
OpenACC ops in the SSA chain.
This patch adds a flag to indicate the the fir.box is known to have the
correct lower bounds and attributes so that it can have a simpler code
generation to FIR.
Commit: 100db538565c80164b05b1c3a5bebeaa0e772fc4
https://github.com/llvm/llvm-project/commit/100db538565c80164b05b1c3a5bebeaa0e772fc4
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[InstCombine][nfc] Remove dead invoke inst check in foldOpIntoPhi (#161871)
There's a check above the pred block is terminated with an unconditional
branch, so this code is unreachable.
Commit: 71586a6a736f03d5a373c51490598c8c0cb16625
https://github.com/llvm/llvm-project/commit/71586a6a736f03d5a373c51490598c8c0cb16625
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/BufferResultsToOutParams.cpp
M mlir/test/Conversion/ConvertToEmitC/tosa.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-out-params.mlir
M mlir/test/Transforms/buffer-results-to-out-params-add-result-attr.mlir
M mlir/test/Transforms/buffer-results-to-out-params-hosit-static-allocs.mlir
M mlir/test/Transforms/buffer-results-to-out-params.mlir
Log Message:
-----------
[mlir][bufferize] Make buffer-results-to-out-params support only functions that are neither public nor extern (#162441)
The callers of public or extern functions are unknown, so their function
signatures cannot be changed.
Commit: 4967bc17dfbfdd6fe38b4444a2e9379c6474ce55
https://github.com/llvm/llvm-project/commit/4967bc17dfbfdd6fe38b4444a2e9379c6474ce55
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AMDGPU/fsub.ll
M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
Log Message:
-----------
[DAGCombiner] Remove NoSignedZerosFPMath in visitFNEG (#162052)
Remove the `NoSignedZerosFPMath` use in `visitFNEG`. Now the only use of
`NoSignedZerosFPMath` is in `foldFPToIntToFP`, but adding fast-math
flags support for `uitofp` may introduce breaking changes.
Commit: 889bfd91728a8ca8d27d3f0e5605464201bf5b3e
https://github.com/llvm/llvm-project/commit/889bfd91728a8ca8d27d3f0e5605464201bf5b3e
Author: Gergely Bálint <gergely.balint at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A bolt/docs/PacRetDesign.md
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
A bolt/include/bolt/Passes/InsertNegateRAStatePass.h
A bolt/include/bolt/Passes/MarkRAStates.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryBasicBlock.cpp
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/Exceptions.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Passes/CMakeLists.txt
A bolt/lib/Passes/InsertNegateRAStatePass.cpp
A bolt/lib/Passes/MarkRAStates.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
A bolt/test/AArch64/negate-ra-state-disallow.s
A bolt/test/AArch64/negate-ra-state-incorrect.s
A bolt/test/AArch64/negate-ra-state-reorder.s
A bolt/test/AArch64/negate-ra-state.s
A bolt/test/AArch64/pacret-split-funcs.s
A bolt/test/runtime/AArch64/negate-ra-state.cpp
A bolt/test/runtime/AArch64/pacret-function-split.cpp
Log Message:
-----------
Reapply "[BOLT][AArch64] Handle OpNegateRAState to enable optimizing binaries with pac-ret hardening" (#162353) (#162435)
Reapply "[BOLT][AArch64] Handle OpNegateRAState to enable optimizing
binaries with pac-ret hardening (#120064)" (#162353)
This reverts commit c7d776b06897567e2d698e447d80279664b67d47.
#120064 was reverted for breaking builders.
Fix: changed the mismatched type in MarkRAStates.cpp to `auto`.
---
Original message:
OpNegateRAState is an AArch64-specific DWARF CFI used to change the value
of the RA_SIGN_STATE pseudoregister. The RA_SIGN_STATE register records
whether the current return address has been signed with PAC.
OpNegateRAState requires special handling in BOLT because its placement
depends on the function layout. Since BOLT reorders basic blocks during
optimization, these CFIs must be regenerated after layout is finalized.
This patch introduces two new passes:
- MarkRAStates (runs before optimizations): assigns a signedness annotation to each
instruction based on OpNegateRAState CFIs in the input binary.
- InsertNegateRAStates (runs after optimizations): reads the annotations and emits
new OpNegateRAState CFIs where RA state changes between instructions.
Design details are described in: `bolt/docs/PacRetDesign.md`.
Commit: 008294c0ccec9df76e236133b1013ba7a54ba7d5
https://github.com/llvm/llvm-project/commit/008294c0ccec9df76e236133b1013ba7a54ba7d5
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/bolt/lib/Passes/BUILD.gn
Log Message:
-----------
[gn build] Port 889bfd91728a
Commit: 53a397a9cb8acaa61d29dfa13a03ad17fb51755c
https://github.com/llvm/llvm-project/commit/53a397a9cb8acaa61d29dfa13a03ad17fb51755c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A llvm/test/Transforms/PhaseOrdering/switch-to-arithmetic-inlining.ll
Log Message:
-----------
[PhaseOrdering] Add test for failure to inline simplifiable switch
The large switch simplifies to a single umin, but only after
inlining, so the trivial call in test2() does not get inlined.
Commit: 301ecc6da9b1633ab9256d32ca23c53146e7d652
https://github.com/llvm/llvm-project/commit/301ecc6da9b1633ab9256d32ca23c53146e7d652
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/llc-pipeline.ll
Log Message:
-----------
[NFC][SPIRV] Add a test documenting the passes in the SPIRV backend (#162057)
Commit: 20f41ed8c195eff6199dc77bdd20f7226cfdae0f
https://github.com/llvm/llvm-project/commit/20f41ed8c195eff6199dc77bdd20f7226cfdae0f
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.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/AMDGPU/gfx1250_asm_salu_lit64.s
M llvm/test/MC/AMDGPU/gfx1250_asm_sop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_valu_lit64.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1-fake16.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_sop1.s
M llvm/test/MC/AMDGPU/gfx12_asm_sop2.s
M llvm/test/MC/AMDGPU/gfx12_asm_sopc.s
M llvm/test/MC/AMDGPU/literals.s
M llvm/test/MC/AMDGPU/vop3-literal.s
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_salu_lit64.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_valu_lit64.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop1.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sop2.txt
M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopc.txt
Log Message:
-----------
[AMDGPU][MC] Avoid creating lit64() operands unless asked or needed. (#161191)
There should normally be no need to generate implicit lit64()
modifiers on the assembler side. It's the encoder's responsibility
to recognise literals that are implicitly 64 bits wide.
The exceptions are where we rewrite floating-point operand values
as integer ones, which would not be assembled back to the original
values unless wrapped into lit64().
Respect explicit lit() modifiers for non-inline values as
necessary to avoid regressions in MC tests. This change still
doesn't prevent use of inline constants where lit()/lit64 is
specified; subject to a separate patch.
On disassembling, only create lit64() operands where necessary for
correct round-tripping.
Add round-tripping tests where useful and feasible.
Commit: a5e6b07521dbd673bdadb9cf334dce9d574477e0
https://github.com/llvm/llvm-project/commit/a5e6b07521dbd673bdadb9cf334dce9d574477e0
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
Log Message:
-----------
[AArch64][SME] Add common helper for expanding conditional pseudos (NFC) (#155398)
Factors out some common slightly tricky code. Hopefully makes adding new
pseudos simpler.
Commit: ad00610831164b22e936aba010a96d46beb497d8
https://github.com/llvm/llvm-project/commit/ad00610831164b22e936aba010a96d46beb497d8
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
Log Message:
-----------
[DFAJumpThreading][NFC] Clear cleanPhiNodes and phi-related code (#162423)
Commit: ff9cdbdb1af25d77014707754e8d4ec72f4b75dd
https://github.com/llvm/llvm-project/commit/ff9cdbdb1af25d77014707754e8d4ec72f4b75dd
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/Basic/CMakeLists.txt
M clang/lib/Sema/SemaARM.cpp
M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_rax1.c
A clang/test/Sema/AArch64/arm_sme_streaming_compatible_sme.c
A clang/test/Sema/AArch64/arm_sme_streaming_compatible_sme_AND_sme2.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_LP_sme-f16f16_OR_sme-f8f16_RP.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-b16b16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-f16f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-f64f64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-f8f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-f8f32.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-i16i64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme-lutv2.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-f64f64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-i16i64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-b16b16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-f16f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-f64f64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-f8f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-f8f32.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-mop4_AND_sme-i16i64.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-tmop.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-tmop_AND_sme-b16b16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-tmop_AND_sme-f16f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-tmop_AND_sme-f8f16.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2_AND_sme-tmop_AND_sme-f8f32.c
A clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2p1.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p1_OR_sme2_RP___sme_AND_LP_sve2p1_OR_sme2_RP.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p1_OR_sme2p1_RP___sme_AND_LP_sve2p1_OR_sme2p1_RP.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p1_OR_sme_RP___sme.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_bf16___sme_AND_bf16.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_i8mm___sme_AND_i8mm.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-aes___sme_AND_ssve-aes.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-b16b16___sme_AND_sme2_AND_sve-b16b16.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-bitperm___sme_AND_ssve-bitperm.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-sha3___sme_AND_sve-sha3_AND_sme2p1.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_faminmax___sme_AND_sme2_AND_faminmax.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_fp8___sme_AND_sme2_AND_fp8.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_fp8dot2___sme_AND_ssve-fp8dot2.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_fp8dot4___sme_AND_ssve-fp8dot4.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_fp8fma___sme_AND_ssve-fp8fma.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_lut___sme_AND_sme2_AND_lut.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2p1___sme_AND_sme2.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme_AND_sme2_AND_ssve-fexpa.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve___sme_AND_sme2p2.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_bf16.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_f32mm.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_f64mm.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_i8mm.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_sve-sm4.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_sve2.c
A clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_sve2p1.c
A clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme-f16f16.c
A clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2.c
A clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2_AND_faminmax.c
A clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2_AND_fp8.c
A clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2_AND_sve-b16b16.c
R clang/test/Sema/aarch64-streaming-sme-or-nonstreaming-sve-builtins.c
M clang/utils/TableGen/SveEmitter.cpp
M clang/utils/TableGen/TableGen.cpp
M clang/utils/TableGen/TableGenBackends.h
A clang/utils/aarch64_builtins_test_generator.py
Log Message:
-----------
[Clang][Sema] Extend test coverage for SVE/SME builtin usage. (#156908)
Adds SEMA tests to verify correct SVE/SME builtin usage based on the
calling function's type (i.e. normal, streaming or streaming
compatible).
For invalid uses the tests verify the expected diagnostic is emitted.
This exposed an issue whereby some builtins are incorrectly callable by
streaming compatible functions, which this PR fixes.
The tests are autogenerated based on the builtin definitions (e.g.
arm_sve.td). This is achieved by extending SVEEmitter, which can now
emit a JSON file containing builtin usage information that can be fed to
aarch64_builtins_test_generator.py that is also part of this PR.
Everything currently in `clang/test/Sema/AArch64` is the result of:
```
clang/utils/aarch64_builtins_test_generator.py --gen-streaming-guard-tests <LLVM_BUILD_DIR>/tools/clang/include/clang/Basic/arm_sve_builtins.json --out-dir clang/test/Sema/AArch64/
clang/utils/aarch64_builtins_test_generator.py --gen-streaming-guard-tests <LLVM_BUILD_DIR>/tools/clang/include/clang/Basic/arm_sme_builtins.json --out-dir clang/test/Sema/AArch64/
```
Commit: fd5bc6033e521b946f04cb9c473d9cca3da2da9b
https://github.com/llvm/llvm-project/commit/fd5bc6033e521b946f04cb9c473d9cca3da2da9b
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizeImplicitBinding.cpp
M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
Log Message:
-----------
[SPIRV][SPIRVLegalizeImplicitBinding] Implement getPassName (#162058)
Commit: 631707d566660c142060d2339b98fec3f389ea33
https://github.com/llvm/llvm-project/commit/631707d566660c142060d2339b98fec3f389ea33
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/literals.s
Log Message:
-----------
[AMDGPU][NFC] Update MC/AMDGPU/literals.s using the script. (#162135)
Commit: 2d8769151f507f342257a5921fb268166e35d72d
https://github.com/llvm/llvm-project/commit/2d8769151f507f342257a5921fb268166e35d72d
Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
Log Message:
-----------
[NFC][MC] Fix build error. (#162442)
Fixes `llvm-mc-assemble-fuzzer.cpp:207:66: error: no viable conversion
from 'MCInstPrinter *' to 'std::unique_ptr<MCInstPrinter>'`
Commit: 4d45718b478940cd11ac80dd64db8408bb21dbca
https://github.com/llvm/llvm-project/commit/4d45718b478940cd11ac80dd64db8408bb21dbca
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/IVDescriptors.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
[IVDescriptors] Add isFPMinMaxNumRecurrenceKind helper (NFC).
Add helper to check for FMinNum and FMaxNum recurrence kinds, as
suggested in https://github.com/llvm/llvm-project/pull/161735.
Commit: a6d1a52b8da9cb3c351a086180f8b871f0fd2a6e
https://github.com/llvm/llvm-project/commit/a6d1a52b8da9cb3c351a086180f8b871f0fd2a6e
Author: Hanchenng Wu <42194432+HanchengWu at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Interfaces/RuntimeVerifiableOpInterface.td
M mlir/include/mlir/Transforms/Passes.h
M mlir/include/mlir/Transforms/Passes.td
M mlir/lib/Dialect/Linalg/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/MemRef/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Dialect/Tensor/Transforms/RuntimeOpVerification.cpp
M mlir/lib/Interfaces/RuntimeVerifiableOpInterface.cpp
M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
M mlir/test/Dialect/Linalg/runtime-verification.mlir
Log Message:
-----------
[MLIR] Reuse AsmState to enable fast generate-runtime-verification pass; add location-only pass option (#160331)
The pass generate-runtime-verification generates additional runtime op
verification checks.
Currently, the pass is extremely expensive. For example, with a
mobilenet v2 ssd network(converted to mlir), running this pass alone in
debug mode will take 30 minutes. The same observation has been made to
other networks as small as 5 Mb.
The culprit is this line "op->print(stream, flags);" in function
"RuntimeVerifiableOpInterface::generateErrorMessage" in File
mlir/lib/Interfaces/RuntimeVerifiableOpInterface.cpp.
As we are printing the op with all the names of the operands in the
middle end, we are constructing a new SSANameState for each
op->print(...) call. Thus, we are doing a new SSA analysis for each
error message printed.
Perf profiling shows that 98% percent of the time is spent in the
constructor of SSANameState.
This change refactored the message generator. We use a toplevel
AsmState, and reuse it with all the op-print(stream, asmState). With a
release build, this change reduces the pass exeuction time from ~160
seconds to 0.3 seconds on my machine.
This change also adds verbose options to generate-runtime-verification
pass.
verbose 0: print only source location with error message.
verbose 1: print the full op, including the name of the operands.
Commit: 2d12eaa68db4dcddfc74bed906bc26ae6b874cc1
https://github.com/llvm/llvm-project/commit/2d12eaa68db4dcddfc74bed906bc26ae6b874cc1
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/literals.s
Log Message:
-----------
[AMDGPU][MC][NFC] Run the literal tests for GFX11+. (#162136)
Commit: 7da07c081c081edb9f6706cb8ec298c3cee8ec17
https://github.com/llvm/llvm-project/commit/7da07c081c081edb9f6706cb8ec298c3cee8ec17
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
Log Message:
-----------
[lldb][test] Remove class level packetLog in MockGDBServerResponder (#162453)
Added in 1902ffd9a4914d4cd03e200ca9050bf3b1564c19 but appears to be
leftover code from some older design.
I can't find any code that reads packetLog via the class itself, or
checks whether it is None.
No tests failed on AArch64 Linux after removing it.
Commit: 8e3eeb854b662beca3e0476199ea6d253dc89752
https://github.com/llvm/llvm-project/commit/8e3eeb854b662beca3e0476199ea6d253dc89752
Author: Joshua Peterson <petersonjm1 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/source/Target/Language.cpp
M lldb/unittests/Target/LanguageTest.cpp
Log Message:
-----------
[lldb] Fix off-by-one error in ToDwarfSourceLanguage (#162315)
The ToDwarfSourceLanguage function incorrectly excluded languages that
equal eLanguageTypeLastStandardLanguage. The comparison used `<` instead
of `<=`, causing the last standard language to fall through to the
default case and return std::nullopt.
This broke language plugins that use eLanguageTypeLastStandardLanguage
(currently Mojo at 0x0033) as their language code, preventing proper
DWARF language conversion and breaking REPL functionality.
The fix changes the comparison from `<` to `<=` to include the last
standard language in the automatic conversion to DWARF source language.
This is a regression from commit
7f51a2a47d2e706d04855b0e41690ebafa2b3238 which introduced the
ToDwarfSourceLanguage function.
Commit: 7f03b22dce1f4dae9db3ec8919db7dbd98202e0b
https://github.com/llvm/llvm-project/commit/7f03b22dce1f4dae9db3ec8919db7dbd98202e0b
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/no_alternate_divrem.ll
Log Message:
-----------
[SLP]Enable SDiv/UDiv support as main op in copyables (#161892)
Allow SDiv/UDiv as a main operation in copyables support
Commit: eac3788b4e2dd305a84f09ebc6fffc050ee84a68
https://github.com/llvm/llvm-project/commit/eac3788b4e2dd305a84f09ebc6fffc050ee84a68
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M orc-rt/unittests/SPSWrapperFunctionTest.cpp
Log Message:
-----------
[orc-rt] Rename unit tests for consistency. NFCI.
Related tests use "TransparentConversion" rather than
"TransparentSerialization".
Commit: 3d4da1ee816f53a48e2b645c17069a80fabfb07b
https://github.com/llvm/llvm-project/commit/3d4da1ee816f53a48e2b645c17069a80fabfb07b
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
M llvm/test/MC/AMDGPU/gfx1250_asm_salu_lit64.s
M llvm/test/MC/AMDGPU/literals.s
Log Message:
-----------
[AMDGPU][MC] Do not inline lit()/lit64() operands. (#162137)
For now treat the modifiers synonymous to each other.
The disassembler side is to be addressed separately.
Commit: 5260920bdcb4f984d167812dd8cd859e51c31b4b
https://github.com/llvm/llvm-project/commit/5260920bdcb4f984d167812dd8cd859e51c31b4b
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/test/MC/AMDGPU/gfx1250_asm_vop1.s
Log Message:
-----------
[AMDGPU][MC][NFC] Fix GFX1250 VOP1 True16 tests. (#162285)
Completes resolving
<https://github.com/llvm/llvm-project/issues/161381>.
Commit: bb36630ecd94c1b7b9f8e3aba31ed2215d43c5b2
https://github.com/llvm/llvm-project/commit/bb36630ecd94c1b7b9f8e3aba31ed2215d43c5b2
Author: SahilPatidar <patidarsahil2001 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M compiler-rt/lib/orc/coff_platform.cpp
M compiler-rt/lib/orc/coff_platform.h
M compiler-rt/lib/orc/dlfcn_wrapper.cpp
M llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
Log Message:
-----------
[ORC][Runtime] Add dlupdate for coff (#115448)
With the help of @lhames, This pull request introduces the dlupdate
function in the ORC runtime. dlupdate enables incremental execution of
new initializers introduced in the REPL environment. Unlike traditional
dlopen, which manages initializers, code mapping, and library reference
counts, dlupdate focuses exclusively on running new initializers.
Commit: 482cd5fe067b0d16abd65acdc693b8d178bb1098
https://github.com/llvm/llvm-project/commit/482cd5fe067b0d16abd65acdc693b8d178bb1098
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
Log Message:
-----------
[OpenMP][docs] Update OpenMP 6.0 OMP_AVAILABLE_DEVICES status (#162440)
The trait support being implemented for OMP_DEFAULT_DEVICES can also be
used for OMP_AVAILABLE_DEVICES, which makes it reasonable to wait to
avoid duplicate effort.
Commit: c7fbe388938b2c9ee78a3160fedebd9bebe5d20d
https://github.com/llvm/llvm-project/commit/c7fbe388938b2c9ee78a3160fedebd9bebe5d20d
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
Log Message:
-----------
[SCEV] Pass loop pred branch as context instruction to getMinTrailingZ. (#160941)
When computing the backedge taken count, we know that the expression
must be valid just before we enter the loop. Using the terminator of the
loop predecessor as context instruction for getConstantMultiple,
getMinTrailingZeros allows using information from things like alignment
assumptions.
When a context instruction is used, the result is not cached, as it is
only valid at the specific context instruction.
Compile-time looks neutral:
http://llvm-compile-time-tracker.com/compare.php?from=9be276ec75c087595ebb62fe11b35c1a90371a49&to=745980f5e1c8094ea1293cd145d0ef1390f03029&stat=instructions:u
No impact on llvm-opt-benchmark
(https://github.com/dtcxzyw/llvm-opt-benchmark/pull/2867), but leads to
additonal unrolling in ~90 files across a C/C++ based corpus including
LLVM on AArch64 using libc++ (which emits alignment assumptions for
things like std::vector::begin).
PR: https://github.com/llvm/llvm-project/pull/160941
Commit: 805451faedabf0e227b51683d43ebe3093115e58
https://github.com/llvm/llvm-project/commit/805451faedabf0e227b51683d43ebe3093115e58
Author: Keshav Vinayak Jha <31160700+keshavvinayak01 at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Dialect/Vector/canonicalize.mlir
Log Message:
-----------
[MLIR][Vector] Added ToElementsOp::fold for broadcast->to_elements pattern rewrite. (#160318)
Adds `::fold` for the new `vector.to_elements` op, folding `broadcast`
into `to_elements` or no-op wherever possible.
---------
Signed-off-by: keshavvinayak01 <keshavvinayakjha at gmail.com>
Signed-off-by: Keshav Vinayak Jha <keshavvinayakjha at gmail.com>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: 4c8275470465528c469436d37b9aaf71d6598899
https://github.com/llvm/llvm-project/commit/4c8275470465528c469436d37b9aaf71d6598899
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SimplifyCFGOptions.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Other/new-pm-print-pipeline.ll
M llvm/test/Transforms/PhaseOrdering/switch-to-arithmetic-inlining.ll
M llvm/test/Transforms/SimplifyCFG/switch-transformations-no-lut.ll
Log Message:
-----------
[SimplifyCFG] Allow some switch optimizations early in the pipeline (#158242)
While we do not want to form actual lookup tables early, we do want to
perform some optimizations, as they may enable inlining of the much
simpler form.
Builds on https://github.com/llvm/llvm-project/pull/156477, which
originally included this change as well. This PR makes two changes on
top of it:
* Do not perform the optimization early if it requires adding a mask
check. These make the resulting IR less analyzable.
* Add a new SimplifyCFG option that controls switch-to-arithmetic
conversion separately from switch-to-lookup conversion. Enable the new
flag at the end of the function simplification pipeline. This means that
we attempt the arithmetic conversion before inlining, but avoid it in
the early pipeline, where it may lose information.
Commit: 81589a39bff58e5a750ea7b656f66cf941803e3b
https://github.com/llvm/llvm-project/commit/81589a39bff58e5a750ea7b656f66cf941803e3b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/mad_int24.ll
M llvm/test/CodeGen/AMDGPU/mad_uint24.ll
Log Message:
-----------
[AMDGPU] Regenerate test checks for mad24 tests (#162455)
Commit: f53b6249c24005d1a6208cd9e355595eb6519dc0
https://github.com/llvm/llvm-project/commit/f53b6249c24005d1a6208cd9e355595eb6519dc0
Author: maxbartel <bartel at roofline.ai>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/IR/LinalgRelayoutOps.td
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
M mlir/test/Dialect/Linalg/decompose-pack.mlir
Log Message:
-----------
[MLIR][Linalg] Fix empty tensor assumptions for linalg.pack decomposition (#160246)
The original code seemed to assume that the tiling dimensions for the
tensor.empty op before applying the transposing were always the last
dimensions. However, pack allows you to choose any dimension to tile.
The easiest way I found to solve this is to prefill the SmallVector with
1s of size (srcRank - numberOfTiles) and then appending the tile sizes.
This way I could also get rid of the first loop in the code.
Commit: 7910ed22320c5f298c4645ffa9072238c95bc7d6
https://github.com/llvm/llvm-project/commit/7910ed22320c5f298c4645ffa9072238c95bc7d6
Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
A llvm/test/Transforms/InstCombine/fold-selective-shift.ll
Log Message:
-----------
[InstCombine] Canonicalise packed-integer-selecting shifts (#162147)
This patch resolves recent regressions related to [issue
#92891](https://github.com/llvm/llvm-project/issues/92891).
It specifically enables the following types of reductions.
```llvm
define i16 @src(i32 %mask, i32 %upper, i32 range(i32 0, 65536) %lower) {
%upper.shl = shl nuw i32 %upper, 16
%pack = or disjoint i32 %upper.shl, %lower
%mask.bit = and i32 %mask, 16
%sel = lshr i32 %pack, %mask.bit
%trunc = trunc i32 %sel to i16
ret i16 %trunc
}
; =>
define i16 @tgt(i32 %mask, i32 %upper, i32 range(i32 0, 65536) %lower) {
%mask.bit = and i32 %mask, 16
%mask.bit.z = icmp eq i32 %mask.bit, 0
%sel = select i1 %mask.bit.z, i32 %lower, i32 %upper
%trunc = trunc i32 %sel to i16
ret i16 %trunc
}
```
Alive2 proofs: [gJ9MpP](https://alive2.llvm.org/ce/z/gJ9MpP)
Commit: c3aa1584e0981d5bbd26c076c3a2298ccf34e3ca
https://github.com/llvm/llvm-project/commit/c3aa1584e0981d5bbd26c076c3a2298ccf34e3ca
Author: Vlad Lazar <lazar_2004 at list.ru>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
M mlir/lib/Conversion/SCFToEmitC/SCFToEmitC.cpp
M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
A mlir/test/Conversion/SCFToEmitC/while.mlir
M mlir/test/Dialect/EmitC/invalid_ops.mlir
M mlir/test/Dialect/EmitC/ops.mlir
A mlir/test/Target/Cpp/do.mlir
Log Message:
-----------
[mlir][emitc] Add emitc.do op to the dialect (#143008)
This patch adds:
- Emission of the corresponding ops in the CppEmitter
- Conversion from the SCF dialect to the EmitC dialect for the ops
- Corresponding tests
Commit: d7eade1379606b984026ec06ea8d8eaa8a6e10ce
https://github.com/llvm/llvm-project/commit/d7eade1379606b984026ec06ea8d8eaa8a6e10ce
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M flang/test/Examples/omp-atomic.f90
M flang/test/Examples/omp-declarative-directive.f90
M flang/test/Examples/omp-device-constructs.f90
M flang/test/Examples/omp-in-reduction-clause.f90
M flang/test/Examples/omp-nowait.f90
M flang/test/Examples/omp-order-clause.f90
M flang/test/Examples/omp-sections.f90
Log Message:
-----------
[Flang][OpenMP] Fix hardcoded library extension in tests (#162290)
Commit: 30415608d7cbe2a9eaae361e359b5b1891f192c9
https://github.com/llvm/llvm-project/commit/30415608d7cbe2a9eaae361e359b5b1891f192c9
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A llvm/test/Transforms/GVN/ptrtoaddr.ll
Log Message:
-----------
[GVN] Add ptrtoaddr test (NFC)
Commit: 801b1dc9cc17ed8b135348add7f95efbd096981d
https://github.com/llvm/llvm-project/commit/801b1dc9cc17ed8b135348add7f95efbd096981d
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/test/Transforms/GVN/ptrtoaddr.ll
Log Message:
-----------
[GVN] Add support for ptrtoaddr
Commit: 0db5ba0ce6c36c78f93ebfe992c0f9ed807328bb
https://github.com/llvm/llvm-project/commit/0db5ba0ce6c36c78f93ebfe992c0f9ed807328bb
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/config/linux/app.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
A libc/src/__support/OSUtil/linux/auxv.h
M libc/src/__support/threads/callonce.h
M libc/src/__support/threads/linux/CMakeLists.txt
R libc/src/__support/threads/linux/callonce.cpp
M libc/src/__support/threads/linux/callonce.h
M libc/src/pthread/pthread_once.cpp
M libc/src/sys/auxv/linux/CMakeLists.txt
M libc/src/sys/auxv/linux/getauxval.cpp
M libc/src/threads/call_once.cpp
M libc/startup/linux/CMakeLists.txt
M libc/startup/linux/do_start.cpp
Log Message:
-----------
[libc] Refactor AUXV handling with new auxv.h header library (#162326)
Closes https://github.com/llvm/llvm-project/issues/153666
This patch introduces a new centralized AUXV (auxiliary vector) handling
mechanism for LLVM libc on Linux, replacing the previous scattered
implementation across multiple files.
## Key Changes:
### New Files:
- **libc/src/__support/OSUtil/linux/auxv.h**: New header library
providing
a clean interface for AUXV access with:
- `auxv::Entry` struct for AUXV entries (type and value)
- `auxv::Vector` class with iterator support for traversing AUXV
- `auxv::get()` function for retrieving specific AUXV values
- Thread-safe initialization with fallback mechanisms (prctl and
/proc/self/auxv)
### Modified Files:
1. **libc/src/__support/OSUtil/linux/CMakeLists.txt**:
- Added `auxv` header library declaration with proper dependencies:
- libc.hdr.fcntl_macros
- libc.src.__support.OSUtil.osutil
- libc.src.__support.common
- libc.src.__support.CPP.optional
- libc.src.__support.threads.callonce
2. **libc/config/linux/app.h**:
- Removed `AuxEntry` struct (moved to auxv.h as `auxv::Entry`)
- Removed `auxv_ptr` from `AppProperties` struct
- Simplified application properties structure
3. **libc/src/sys/auxv/linux/getauxval.cpp**:
- Completely refactored to use new auxv.h interface
- Removed ~200 lines of complex initialization code
- Simplified to just call `auxv::get()` function
- Removed dependencies to external symbols (mman, prctl, fcntl, read,
close, open)
4. **libc/src/sys/auxv/linux/CMakeLists.txt**:
- Updated dependencies to use new auxv header library
- Removed dependencies to external symbols (prctl, mman, fcntl, unistd,
etc.)
5. **libc/startup/linux/do_start.cpp**:
- Updated to use new `auxv::Vector` interface
- Changed from pointer-based to iterator-based AUXV traversal
- Updated field names (`aux_entry->id` → `aux_entry.type`,
`aux_entry->value` → `aux_entry.val`)
- Added call to `auxv::Vector::initialize_unsafe()` for early AUXV setup
6. **libc/startup/linux/CMakeLists.txt**:
- Added dependency on `libc.src.__support.OSUtil.linux.auxv`
Commit: be301a6a3df2a6acf1323965d21ac4c7ad390f00
https://github.com/llvm/llvm-project/commit/be301a6a3df2a6acf1323965d21ac4c7ad390f00
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/in_addr.h
A libc/include/llvm-libc-types/in_addr_t.h
Log Message:
-----------
[libc] add `in_addr{, _t}` type (#162452)
These types will be used in `arpa/inet.h` and `netinet/in.h`.
Commit: d0da85745dac153705bf1e2c465a8f487068085e
https://github.com/llvm/llvm-project/commit/d0da85745dac153705bf1e2c465a8f487068085e
Author: don <122427011+donneypr at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][x86][bytecode] Replace interp__builtin_parity/clrsb/bitreverse/ffs with static bool interp__builtin_elementwise_int_unaryop callback (#162346)
Fixes #160288
Commit: 7815df19deaadceaa55aaa578361afaebfd3cb87
https://github.com/llvm/llvm-project/commit/7815df19deaadceaa55aaa578361afaebfd3cb87
Author: Marco Elver <elver at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/test/Preprocessor/print-header-json.c
Log Message:
-----------
[Clang] Fix brittle print-header-json.c test (#162484)
A recent change adding a new sanitizer kind (via Sanitizers.def) was
reverted in c74fa20c955b ("Revert "[Clang][CodeGen] Introduce the
AllocToken SanitizerKind" (#162413)"). The reason was this ASan report,
when running the test cases in
clang/test/Preprocessor/print-header-json.c:
```
==clang==483265==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7d82b97e8b58 at pc 0x562cd432231f bp 0x7fff3fad0850 sp 0x7fff3fad0848
READ of size 16 at 0x7d82b97e8b58 thread T0
#0 0x562cd432231e in __copy_non_overlapping_range<const unsigned long *, const unsigned long *> zorg-test/libcxx_install_asan_ubsan/include/c++/v1/string:2144:38
#1 0x562cd432231e in void std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>::__init_with_size[abi:nn220000]<unsigned long const*, unsigned long const*>(unsigned long const*, unsigned long const*, unsigned long) zorg-test/libcxx_install_asan_ubsan/include/c++/v1/string:2685:18
#2 0x562cd41e2797 in __init<const unsigned long *, 0> zorg-test/libcxx_install_asan_ubsan/include/c++/v1/string:2673:3
#3 0x562cd41e2797 in basic_string<const unsigned long *, 0> zorg-test/libcxx_install_asan_ubsan/include/c++/v1/string:1174:5
#4 0x562cd41e2797 in clang::ASTReader::ReadString(llvm::SmallVectorImpl<unsigned long> const&, unsigned int&) clang/lib/Serialization/ASTReader.cpp:10171:15
#5 0x562cd41fd89a in clang::ASTReader::ParseLanguageOptions(llvm::SmallVector<unsigned long, 64u> const&, llvm::StringRef, bool, clang::ASTReaderListener&, bool) clang/lib/Serialization/ASTReader.cpp:6475:28
#6 0x562cd41eea53 in clang::ASTReader::ReadOptionsBlock(llvm::BitstreamCursor&, llvm::StringRef, unsigned int, bool, clang::ASTReaderListener&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) clang/lib/Serialization/ASTReader.cpp:3069:11
#7 0x562cd4204ab8 in clang::ASTReader::ReadControlBlock(clang::serialization::ModuleFile&, llvm::SmallVectorImpl<clang::ASTReader::ImportedModule>&, clang::serialization::ModuleFile const*, unsigned int) clang/lib/Serialization/ASTReader.cpp:3249:15
#8 0x562cd42097d2 in clang::ASTReader::ReadASTCore(llvm::StringRef, clang::serialization::ModuleKind, clang::SourceLocation, clang::serialization::ModuleFile*, llvm::SmallVectorImpl<clang::ASTReader::ImportedModule>&, long, long, clang::ASTFileSignature, unsigned int) clang/lib/Serialization/ASTReader.cpp:5182:15
#9 0x562cd421ec77 in clang::ASTReader::ReadAST(llvm::StringRef, clang::serialization::ModuleKind, clang::SourceLocation, unsigned int, clang::serialization::ModuleFile**) clang/lib/Serialization/ASTReader.cpp:4828:11
#10 0x562cd3d07b74 in clang::CompilerInstance::findOrCompileModuleAndReadAST(llvm::StringRef, clang::SourceLocation, clang::SourceLocation, bool) clang/lib/Frontend/CompilerInstance.cpp:1805:27
#11 0x562cd3d0b2ef in clang::CompilerInstance::loadModule(clang::SourceLocation, llvm::ArrayRef<clang::IdentifierLoc>, clang::Module::NameVisibilityKind, bool) clang/lib/Frontend/CompilerInstance.cpp:1956:31
#12 0x562cdb04eb1c in clang::Preprocessor::HandleHeaderIncludeOrImport(clang::SourceLocation, clang::Token&, clang::Token&, clang::SourceLocation, clang::detail::SearchDirIteratorImpl<true>, clang::FileEntry const*) clang/lib/Lex/PPDirectives.cpp:2423:49
#13 0x562cdb042222 in clang::Preprocessor::HandleIncludeDirective(clang::SourceLocation, clang::Token&, clang::detail::SearchDirIteratorImpl<true>, clang::FileEntry const*) clang/lib/Lex/PPDirectives.cpp:2101:17
#14 0x562cdb043366 in clang::Preprocessor::HandleDirective(clang::Token&) clang/lib/Lex/PPDirectives.cpp:1338:14
#15 0x562cdafa84bc in clang::Lexer::LexTokenInternal(clang::Token&, bool) clang/lib/Lex/Lexer.cpp:4512:7
#16 0x562cdaf9f20b in clang::Lexer::Lex(clang::Token&) clang/lib/Lex/Lexer.cpp:3729:24
#17 0x562cdb0d4ffa in clang::Preprocessor::Lex(clang::Token&) clang/lib/Lex/Preprocessor.cpp:896:11
#18 0x562cd77da950 in clang::ParseAST(clang::Sema&, bool, bool) clang/lib/Parse/ParseAST.cpp:163:7
[...]
0x7d82b97e8b58 is located 0 bytes after 3288-byte region [0x7d82b97e7e80,0x7d82b97e8b58)
allocated by thread T0 here:
#0 0x562cca76f604 in malloc zorg-test/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:67:3
#1 0x562cd1cce452 in safe_malloc llvm/include/llvm/Support/MemAlloc.h:26:18
#2 0x562cd1cce452 in llvm::SmallVectorBase<unsigned int>::grow_pod(void*, unsigned long, unsigned long) llvm/lib/Support/SmallVector.cpp:151:15
#3 0x562cdbe1768b in grow_pod llvm/include/llvm/ADT/SmallVector.h:139:11
#4 0x562cdbe1768b in grow llvm/include/llvm/ADT/SmallVector.h:525:41
#5 0x562cdbe1768b in reserve llvm/include/llvm/ADT/SmallVector.h:665:13
#6 0x562cdbe1768b in llvm::BitstreamCursor::readRecord(unsigned int, llvm::SmallVectorImpl<unsigned long>&, llvm::StringRef*) llvm/lib/Bitstream/Reader/BitstreamReader.cpp:230:10
#7 0x562cd41ee8ab in clang::ASTReader::ReadOptionsBlock(llvm::BitstreamCursor&, llvm::StringRef, unsigned int, bool, clang::ASTReaderListener&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) clang/lib/Serialization/ASTReader.cpp:3060:49
#8 0x562cd4204ab8 in clang::ASTReader::ReadControlBlock(clang::serialization::ModuleFile&, llvm::SmallVectorImpl<clang::ASTReader::ImportedModule>&, clang::serialization::ModuleFile const*, unsigned int) clang/lib/Serialization/ASTReader.cpp:3249:15
#9 0x562cd42097d2 in clang::ASTReader::ReadASTCore(llvm::StringRef, clang::serialization::ModuleKind, clang::SourceLocation, clang::serialization::ModuleFile*, llvm::SmallVectorImpl<clang::ASTReader::ImportedModule>&, long, long, clang::ASTFileSignature, unsigned int) clang/lib/Serialization/ASTReader.cpp:5182:15
#10 0x562cd421ec77 in clang::ASTReader::ReadAST(llvm::StringRef, clang::serialization::ModuleKind, clang::SourceLocation, unsigned int, clang::serialization::ModuleFile**) clang/lib/Serialization/ASTReader.cpp:4828:11
#11 0x562cd3d07b74 in clang::CompilerInstance::findOrCompileModuleAndReadAST(llvm::StringRef, clang::SourceLocation, clang::SourceLocation, bool) clang/lib/Frontend/CompilerInstance.cpp:1805:27
#12 0x562cd3d0b2ef in clang::CompilerInstance::loadModule(clang::SourceLocation, llvm::ArrayRef<clang::IdentifierLoc>, clang::Module::NameVisibilityKind, bool) clang/lib/Frontend/CompilerInstance.cpp:1956:31
#13 0x562cdb04eb1c in clang::Preprocessor::HandleHeaderIncludeOrImport(clang::SourceLocation, clang::Token&, clang::Token&, clang::SourceLocation, clang::detail::SearchDirIteratorImpl<true>, clang::FileEntry const*) clang/lib/Lex/PPDirectives.cpp:2423:49
#14 0x562cdb042222 in clang::Preprocessor::HandleIncludeDirective(clang::SourceLocation, clang::Token&, clang::detail::SearchDirIteratorImpl<true>, clang::FileEntry const*) clang/lib/Lex/PPDirectives.cpp:2101:17
#15 0x562cdb043366 in clang::Preprocessor::HandleDirective(clang::Token&) clang/lib/Lex/PPDirectives.cpp:1338:14
#16 0x562cdafa84bc in clang::Lexer::LexTokenInternal(clang::Token&, bool) clang/lib/Lex/Lexer.cpp:4512:7
#17 0x562cdaf9f20b in clang::Lexer::Lex(clang::Token&) clang/lib/Lex/Lexer.cpp:3729:24
#18 0x562cdb0d4ffa in clang::Preprocessor::Lex(clang::Token&) clang/lib/Lex/Preprocessor.cpp:896:11
#19 0x562cd77da950 in clang::ParseAST(clang::Sema&, bool, bool) clang/lib/Parse/ParseAST.cpp:163:7
[...]
SUMMARY: AddressSanitizer: heap-buffer-overflow clang/lib/Serialization/ASTReader.cpp:10171:15 in clang::ASTReader::ReadString(llvm::SmallVectorImpl<unsigned long> const&, unsigned int&)
```
The reason is this particular RUN line:
```
// RUN: env CC_PRINT_HEADERS_FORMAT=json CC_PRINT_HEADERS_FILTERING=direct-per-file CC_PRINT_HEADERS_FILE=%t.txt %clang -fsyntax-only -I %S/Inputs/print-header-json -isystem %S/Inputs/print-header-json/system -fmodules -fimplicit-module-maps -fmodules-cache-path=%t %s -o /dev/null
```
which was added in 8df194f6a933 ("[Clang] Support includes translated to
module imports in -header-include-filtering=direct-per-file (#156756)").
The problem is caused by an incremental build reusing stale cached
module files (.pcm) that are no longer binary-compatible with the
updated compiler. Adding a new sanitizer option altered the implicit
binary layout of the serialized LangOptions data structure. The build +
test system is oblivious to such changes. When the new compiler
attempted to read the old module file (from the previous test
invocation), it misinterpreted the data due to the layout mismatch,
resulting in a heap-buffer-overflow. Unfortunately Clang's PCM format
does not encode nor detect version mismatches here; a more graceful
failure mode would be preferable.
For now, fix the test to be more robust with incremental build + test.
Commit: 55c7c4e6232d8aca182cdd6e48ad4211bba27e97
https://github.com/llvm/llvm-project/commit/55c7c4e6232d8aca182cdd6e48ad4211bba27e97
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A llvm/test/Transforms/NewGVN/ptrtoaddr.ll
Log Message:
-----------
[NewGVN] Add test for ptrtoaddr (NFC)
Commit: bcec41e5e6e67ad2a5e194fe3b64d125543ca461
https://github.com/llvm/llvm-project/commit/bcec41e5e6e67ad2a5e194fe3b64d125543ca461
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/NewGVN.cpp
M llvm/test/Transforms/NewGVN/ptrtoaddr.ll
Log Message:
-----------
[NewGVN] Add support for ptrtoaddr
Commit: ee192315b2db387ce6fd2af08fc5f619178b2439
https://github.com/llvm/llvm-project/commit/ee192315b2db387ce6fd2af08fc5f619178b2439
Author: Bhasawut Singhaphan <bhasawut at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 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/lib/Headers/avx2intrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512vlbwintrin.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/mmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/avx512vlbw-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/sse2-builtins.c
M clang/test/CodeGen/X86/ssse3-builtins.c
Log Message:
-----------
[Headers][X86] Enable constexpr handling for MMX/SSE/AVX/AVX512 PMADDWD/PMADDUBSW intrinsics (#161563)
This PR updates the PMADDWD/PMADDUBSW builtins to support constant
expression handling, by extending the VectorExprEvaluator::VisitCallExpr
that handles interp__builtin_ia32_pmadd builtins.
Closes #155392
Commit: ea78bfae78f63f0a963a9099054411db6c0eecae
https://github.com/llvm/llvm-project/commit/ea78bfae78f63f0a963a9099054411db6c0eecae
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
A llvm/test/CodeGen/X86/ptrtoaddr-fast-isel.ll
Log Message:
-----------
[FastISel] Add support for ptrtoaddr
Handle it the same as ptrtoint. For ptrtoaddr the resulting integer
size is guaranteed to match the address size. For the case where
address size and pointer size match, this will be a no-op. For the
case where the address size is smaller than the pointer size, this
will be a truncate (but this is not testable with in-tree targets).
Commit: 8c3d929f0e0e8bfa535f7958a49695f9142742f2
https://github.com/llvm/llvm-project/commit/8c3d929f0e0e8bfa535f7958a49695f9142742f2
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/src/__support/OSUtil/linux/auxv.h
Log Message:
-----------
[libc] use PR_GET_AUXV only if UAPI provides it (#162492)
Commit: 8ba73840e7f94539ff39f78408e030d21b8f3d6f
https://github.com/llvm/llvm-project/commit/8ba73840e7f94539ff39f78408e030d21b8f3d6f
Author: Marco Elver <elver at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/Basic/Sanitizers.def
M clang/lib/CodeGen/CodeGenFunction.cpp
Log Message:
-----------
[Clang][CodeGen] Introduce the AllocToken SanitizerKind (#162098)
[ Reland after 7815df19deaa ("[Clang] Fix brittle print-header-json.c test") ]
Introduce the "alloc-token" sanitizer kind, in preparation of wiring it
up. Currently this is a no-op, and any attempt to enable it will result
in failure:
clang: error: unsupported option '-fsanitize=alloc-token' for target
'x86_64-unknown-linux-gnu'
In this step we can already wire up the `sanitize_alloc_token` IR
attribute where the instrumentation is enabled. Subsequent changes will
complete wiring up the AllocToken pass.
---
This change is part of the following series:
1. https://github.com/llvm/llvm-project/pull/160131
2. https://github.com/llvm/llvm-project/pull/156838
3. https://github.com/llvm/llvm-project/pull/162098
4. https://github.com/llvm/llvm-project/pull/162099
5. https://github.com/llvm/llvm-project/pull/156839
6. https://github.com/llvm/llvm-project/pull/156840
7. https://github.com/llvm/llvm-project/pull/156841
8. https://github.com/llvm/llvm-project/pull/156842
Commit: ecadd9073ac161a3c0ca77c62065098b1bf6461c
https://github.com/llvm/llvm-project/commit/ecadd9073ac161a3c0ca77c62065098b1bf6461c
Author: Marco Elver <elver at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenFunction.h
Log Message:
-----------
[Clang][CodeGen] Emit !alloc_token for new expressions (#162099)
[ Reland after 7815df19deaa ("[Clang] Fix brittle print-header-json.c test") ]
For new expressions, the allocated type is syntactically known and we
can trivially emit the !alloc_token metadata. A subsequent change will
wire up the AllocToken pass and introduce appropriate tests.
---
This change is part of the following series:
1. https://github.com/llvm/llvm-project/pull/160131
2. https://github.com/llvm/llvm-project/pull/156838
3. https://github.com/llvm/llvm-project/pull/162098
4. https://github.com/llvm/llvm-project/pull/162099
5. https://github.com/llvm/llvm-project/pull/156839
6. https://github.com/llvm/llvm-project/pull/156840
7. https://github.com/llvm/llvm-project/pull/156841
8. https://github.com/llvm/llvm-project/pull/156842
Commit: caacfffc71931797c85d8176ba7eb78195d4072f
https://github.com/llvm/llvm-project/commit/caacfffc71931797c85d8176ba7eb78195d4072f
Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M openmp/runtime/README.txt
Log Message:
-----------
[OpenMP] Add IBM Z as supported architecture in the runtime README
This architecture has been supported since
1111ef025762d9b7ecc3cafc576083987ae63fe6,
but the README file had not been updated.
Commit: 6ccb487392e6c6d16bc1f302d5215d5b87da0937
https://github.com/llvm/llvm-project/commit/6ccb487392e6c6d16bc1f302d5215d5b87da0937
Author: Marek Sedláček <mar3k.sedlacek at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
R llvm/test/Transforms/LoopRotate/multiple-deopt-exits.ll
R llvm/test/Transforms/LoopRotate/multiple-exits.ll
Log Message:
-----------
[LoopRotate] Remove canRotateDeoptimizingLatchExit and multi-rotate (#162482)
This patch removes canRotateDeoptimizingLatchExit check from loop roate
and connected multi rotation option for loop roate (-loop-rotate-multi
option).
The heuristic in canRotateDeoptimizingLatchExit returns true if any of
the loop exits are non-deoptimizing. This means if the loop has multiple
deopt exits, then without multi-rotate, we may still end up having deopt
exit at the latch. This multi-rotate option is introduced but it is off
by default.
We have not seen any improvements downstream as well, where
we have frequent number of deoptimizations in IR. Since the original
heuristic without the multi-rotate effectively ends up being "rotate
under some conditions", but the loop may still not be in the form we
want, we should remove the heuristic and multi-rotate framework entirely
Note that the diff is big, but it's just removal of while loop and
indentation change.
After this patch I would like to continue here and propose adding a
computability check for exit count, but that will be in a separate PR.
Requests for review: @annamthomas @fhahn @davemgreen
Co-authored-by: Marek Sedlacek <msedlacek at azul.com>
Commit: 348ffe8276c2fa0ea2f3df7ca449f4b2b49ec68b
https://github.com/llvm/llvm-project/commit/348ffe8276c2fa0ea2f3df7ca449f4b2b49ec68b
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M .github/workflows/release-asset-audit.py
Log Message:
-----------
[CI] Add dyung and c-rhodes to the Release Asset List (#162478)
We have a list of people authorized to create release assets to prevent
someone adding a release asset to a release without someone getting
alerted. Add dyung and c-rhodes now that they are also release managers.
Fixes #162463 (maybe after backport).
Commit: b7921f8292a9d7d18c472043ac3f0c2b5e20fd5f
https://github.com/llvm/llvm-project/commit/b7921f8292a9d7d18c472043ac3f0c2b5e20fd5f
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/Bitset.h
Log Message:
-----------
[ADT] Modernize Bitset (NFC) (#162430)
This patch modernizes BitWord and BITWORD_SIZE with "using" and
"static constexpr", respectively.
Commit: d6d0664da199d4f93d1d2ab1b68139b326d83e1e
https://github.com/llvm/llvm-project/commit/d6d0664da199d4f93d1d2ab1b68139b326d83e1e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/docs/CFIVerify.rst
Log Message:
-----------
[llvm] Proofread CFIVerify.rst (#162431)
Commit: 0f3ca19483b1f1069144530badfbd66adc5c56b6
https://github.com/llvm/llvm-project/commit/0f3ca19483b1f1069144530badfbd66adc5c56b6
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Dialect/NVGPU/IR/NVGPUDialect.cpp
M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
M mlir/lib/Dialect/NVGPU/Transforms/MmaSyncTF32Transform.cpp
M mlir/lib/Dialect/NVGPU/Utils/MMAUtils.cpp
Log Message:
-----------
[NFC][MLIR][NVGPU] Cleanup namespace usage (#162158)
Eliminate `nvgpu::` prefix in several places.
Commit: 6c4bd66114bc3a284f45112cb2ba57de2aee4f7e
https://github.com/llvm/llvm-project/commit/6c4bd66114bc3a284f45112cb2ba57de2aee4f7e
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
Log Message:
-----------
[RISCV] Remove i32 and i16 from GPR register class. NFC (#162425)
Reduces RISCVGenDAGISel.inc by ~2000 bytes.
I had to adjust some casts to avoid a tablegen error about an immediate
being too large. The error was suppressed before because the type wasn't
"concrete" early enough.
Commit: 2690bb6db6ea583d402bb97ea44c5a1ff930ace7
https://github.com/llvm/llvm-project/commit/2690bb6db6ea583d402bb97ea44c5a1ff930ace7
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SystemOperands.td
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
A llvm/test/MC/AArch64/armv9a-sysp-diagnostics.s
Log Message:
-----------
[AArch64][llvm] Reject assembler for invalid TLBIP instructions (#162090)
Some invalid assembler is currently allowed for `tlbip` sys alias
instructions, since there's only a single table in tablegen for both
`tlbi` and `tlbip` instructions. However, the latter is only a subset of
the former, so invalid machine code is generated for `tlbip`
instructions which don't actually exist.
Define a `TLBI_and_TLBIP` and `TLBI_only` enum (wish tablegen had first
class enum support), so that only valid `tlbip` instructions are created
in the `TLBIPEntry` table, and instructions which are not valid are
correctly rejected. Add new testcases for this.
(See the Arm ARM DDI 0487 L.b pages C5-802 to 809 where valid `tlbi` and
`tlbip` instructions are defined).
For example, before this change, both of the following are accepted.
Subsequent to this change, `tlbip` is correctly rejected:
```
% llvm-mc -triple=aarch64 <<< "tlbi alle1" --show-encoding
tlbi alle1 // encoding: [0x9f,0x87,0x0c,0xd5]
% llvm-mc -triple=aarch64 -mattr=+d128 <<< "tlbip alle1, x0, x1"
<stdin>:1:7: error: invalid operand for TLBIP instruction
tlbip alle1
^
```
Commit: 8c9c91f3918087a1a84e60ac807434d01a41d4c1
https://github.com/llvm/llvm-project/commit/8c9c91f3918087a1a84e60ac807434d01a41d4c1
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/startup/gpu/amdgpu/start.cpp
M libc/startup/gpu/nvptx/start.cpp
M llvm/tools/llvm-gpu-loader/amdhsa.cpp
M llvm/tools/llvm-gpu-loader/llvm-gpu-loader.h
M llvm/tools/llvm-gpu-loader/nvptx.cpp
Log Message:
-----------
[libc] Make GPU `_end` kernel only call exit callbacks (#162371)
Summary:
We use the infrastructure to stand up a pretend hosted environment on
the GPU. Part of that is calling exit codes and handling the callback.
Exiting from inside a GPU region is problematic as it actually relies on
a lot of GPU magic behind the scenes. This is at least *correct* now as
we use `quick_exit` on the CPU when the GPU calls `exit`. However,
calling `quick_exit` will interfere with instrumentation or benchmarking
that expects a nice teardown order. For normal execution we should do
the friendly option and let the loader utility clean everything up
manually.
Commit: a43fb2b11473a5f2025e016794243cba0c1e5ddd
https://github.com/llvm/llvm-project/commit/a43fb2b11473a5f2025e016794243cba0c1e5ddd
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-int.cpp
Log Message:
-----------
[OpenACC] Fix issue with array-section type generation (#162499)
When an array section bound was in a list of bound-types we improperly
generated the list of types of the bounds because
getPointeeOrElementType gets the LOWEST level of type (that is, digs
through ALL array types to get to the base-est of types) when what
we really wanted was 1 layer of pointer/array removed.
This patch fixes it and adds a test that showed the problem by
re-ordering the existing ones. This wasn't previously obvious by chance,
since the 'array-index-only' variants ended up generating the recipe,
and not the bounds.
Commit: 91f4db77b07368b47d32eb4d384fda2b2e5c9617
https://github.com/llvm/llvm-project/commit/91f4db77b07368b47d32eb4d384fda2b2e5c9617
Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
A llvm/test/DebugInfo/X86/instr-ref-opt-bisect2.ll
Log Message:
-----------
[SDAG] Use useDebugInstrRef instead of shouldUseDebugInstrRef (#160686)
`shouldUseDebugInstrRef` can return different value than
`useDebugInstrRef`, since the first depends on opt level which can
change. Inconsistent usage can lead to errors later.
I believe that using `should...` instead of `use...` here is a result of
a minor error during this:
https://github.com/llvm/llvm-project/pull/94149/files#diff-8ec547e1244562c5837ed180dd9bed61b3cd960ef90bb6002ea2db41a67ed693
Notice how before the change `InstrRef` is assigned value from
`should...` *before* the opt change. Now, it's done after -- opt change
happens here:
```c
bool SelectionDAGISelLegacy::runOnMachineFunction(MachineFunction &MF) {
...
// Decide what flavour of variable location debug-info will be used, before
// we change the optimisation level.
MF.setUseDebugInstrRef(MF.shouldUseDebugInstrRef());
....
return Selector->runOnMachineFunction(MF);
}
```
Then `runOnMachineFunction` uses `should...`, which after opt change may
return different value than it did previously.
Commit: 0d6c5e088a777837215c22bac45f1df49604aec2
https://github.com/llvm/llvm-project/commit/0d6c5e088a777837215c22bac45f1df49604aec2
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
Log Message:
-----------
[BOLT][AArch64] Fix perf2bolt-spe test (#162312)
Lit recently started failing on some machines when using a subshell. The
test used a subshell to handle kernels where SPE's brstack option is
unavailable (<6.14), but it appears to work without it now.
Tested with perf 6.8 and 6.17.
Commit: 01ac00b6d7c678840f66c456bf37ada24f3d0427
https://github.com/llvm/llvm-project/commit/01ac00b6d7c678840f66c456bf37ada24f3d0427
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
A llvm/test/CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll
R llvm/test/CodeGen/AMDGPU/amdgpu-attributor-no-agpr.ll
Log Message:
-----------
AMDGPU: Render non-0 values for amdgpu-agpr-alloc
(#162300)
This now tries to compute a lower bound on the number of registers
for individual inline asm uses. Also starts using AACallEdges
to handling indirect calls.
Commit: 9ac8cd636808ef201860a40d0def37eec7caa0f3
https://github.com/llvm/llvm-project/commit/9ac8cd636808ef201860a40d0def37eec7caa0f3
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/unittests/BinaryFormat/DwarfTest.cpp
Log Message:
-----------
[llvm][Dwarf] Add DW_LNAME_ string/enum getters (#162434)
These are going to be used in a follow-up patch. And they are generally
useful for consumers (we have these for most other attributes).
Commit: 5200acc94aa720a2e5333f3934c4043990cef2a4
https://github.com/llvm/llvm-project/commit/5200acc94aa720a2e5333f3934c4043990cef2a4
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/lib/Driver/ToolChains/CommonArgs.cpp
M clang/test/CodeGen/dwarf-version.c
Log Message:
-----------
[clang][Driver] Add -gdwarf-6 option (#162454)
Now that we slowly started adding support for upcoming DWARFv6
attributes add `-gdwarf-6` as a supported flag.
Commit: 7cc1243f70ac6fdb5f45a81c9fe5e9a73653c8f6
https://github.com/llvm/llvm-project/commit/7cc1243f70ac6fdb5f45a81c9fe5e9a73653c8f6
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
M mlir/test/Conversion/XeVMToLLVM/xevm-to-llvm.mlir
Log Message:
-----------
[MLIR][XeVM] Add XeVM 1D block operations to OpenCL calls conversion. (#161702)
XeVM 1D block load store operations are converted to OpenCL subgroup operations
described here:
https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_subgroup_local_block_io.html
Commit: 6308cd871c955490575134e66da8a8d575674724
https://github.com/llvm/llvm-project/commit/6308cd871c955490575134e66da8a8d575674724
Author: Jackson Stogel <jtstogel at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/src/__support/File/linux/lseekImpl.h
Log Message:
-----------
[libc] Fix integer overflow for large offsets in lseek. (#162394)
Currently, the return value `LIBC_NAMESPACE::syscall_impl<int>(SYS_lseek, fd, offset, whence)` will
overflow when seeking on files >4GB.
Commit: 497d648fcc096eff968cbfc32c37c96661d14158
https://github.com/llvm/llvm-project/commit/497d648fcc096eff968cbfc32c37c96661d14158
Author: weiwei chen <weiwei.chen at modular.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURewriteAGPRCopyMFMA.cpp
Log Message:
-----------
[AMDGPU] Make sort ordering in `AMDGPURewriteAGPRCopyMFMAImpl::eliminateSpillsOfReassignedVGPRs()` strict weak. (#162493)
- [x] `sort` needs the comparator with strictly weak ordering, however
current logic doesn't meet the
[**Antisymmetry**](https://tanjim131.github.io/2020-05-22-strict-weak-ordering/#:~:text=Almost%20all%20C++%20STL%20containers,the%20person%20with%20greater%20height.)
requirement with
```
sort 0x561ecd3d3db0,0x561eaba91d10 25
weight 0.000000e+00,0.000000e+00
size 650370,662754
slot 732,733
```
Make the comparator logic strict weak order.
Fixes #162490
Commit: 750e64d07188dbb829c30489ef318ac8d6ce4869
https://github.com/llvm/llvm-project/commit/750e64d07188dbb829c30489ef318ac8d6ce4869
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/test/Driver/fuse-ld.c
M clang/test/Driver/uefi-constructed-args.c
Log Message:
-----------
[UEFI] Add driver path to program paths list (#162387)
UEFI toolchain driver implementation does not set the path where tools
such as lld-link can be found. This patch fixes that.
Commit: 0c087bd4f9157fd2677850ee22be55dff03bc1f7
https://github.com/llvm/llvm-project/commit/0c087bd4f9157fd2677850ee22be55dff03bc1f7
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
A mlir/test/Dialect/OpenACC/pointer-like-interface-alloc.mlir
A mlir/test/Dialect/OpenACC/pointer-like-interface-copy.mlir
A mlir/test/Dialect/OpenACC/pointer-like-interface-free.mlir
M mlir/test/lib/Dialect/CMakeLists.txt
A mlir/test/lib/Dialect/OpenACC/CMakeLists.txt
A mlir/test/lib/Dialect/OpenACC/TestOpenACC.cpp
A mlir/test/lib/Dialect/OpenACC/TestPointerLikeTypeInterface.cpp
M mlir/tools/mlir-opt/CMakeLists.txt
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir][acc] Extend PointerLikeType to provide alloc, dealloc, copy (#162328)
A variable in an acc data clause operation must have a type that
implements either PointerLikeType or a MappableType interface. These
interfaces provide the contract that allows acc dialect and its
transform passes to interact with a source dialect.
One of these requirements is ability to generate code that creates
memory for a private copy and ability to initialize that copy from
another variable. Thus, update the PointerLikeType API to provide the
means to create allocation, deallocation, and copy. This will be used as
a way to fill in privatization and firstprivatization recipes.
This new API was implemented for memref along with testing to exercise
it via the implementation of a testing pass.
Commit: 6cba572d9efefa433a18540f71fefb1392ffea2a
https://github.com/llvm/llvm-project/commit/6cba572d9efefa433a18540f71fefb1392ffea2a
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M llvm/include/llvm/IR/DIBuilder.h
M llvm/include/llvm/IR/DebugInfoMetadata.h
M llvm/lib/Analysis/ModuleDebugInfoPrinter.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/DIBuilder.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/DebugInfoMetadata.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitNonSemanticDI.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
M llvm/lib/Transforms/Utils/Debugify.cpp
M llvm/unittests/CodeGen/InstrRefLDVTest.cpp
M llvm/unittests/CodeGen/LexicalScopesTest.cpp
M llvm/unittests/CodeGen/MachineBasicBlockTest.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
M llvm/unittests/IR/DebugInfoTest.cpp
M llvm/unittests/IR/IRBuilderTest.cpp
M llvm/unittests/IR/MetadataTest.cpp
M llvm/unittests/IR/VerifierTest.cpp
M llvm/unittests/Transforms/Utils/CloningTest.cpp
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
Log Message:
-----------
[llvm][DebugInfo][NFC] Abstract DICompileUnit::SourceLanguage to allow alternate DWARF SourceLanguage encoding (#162255)
This patch sets up `DICompileUnit` to support the DWARFv6
`DW_AT_language_name` and `DW_AT_language_version` attributes (which are
set to replace `DW_AT_language`). This patch changes the
`DICompileUnit::SourceLanguage` field type to a `DISourceLanguageName`
that encapsulates the notion of "versioned vs. unversioned name". A
"versioned" name is one that has an associated version stored separately
in `DISourceLanguageName::Version`.
This patch just changes all the clients of the `getSourceLanguage` API
to the expect a `DISourceLanguageName`. Currently they all just `assert`
(via `DISourceLanguageName::getUnversionedName`) that we're dealing with
"unversioned names" (i.e., the pre-DWARFv6 language codes). In follow-up
patches (e.g., draft is at
https://github.com/llvm/llvm-project/pull/162261), when we start
emitting versioned language codes, the `getUnversionedName` calls can
then be adjusted to `getName`.
**Implementation considerations**
* We could have added a new member to `DICompileUnit` alongside the
existing `SourceLanguage` field. I don't think this would have made the
transition any simpler (clients would still need to be aware of
"versioned" vs. "unversioned" language names). I felt that encapsulating
this inside a `DISourceLanguageName` was easier to reason about for
maintainers.
* Currently DISourceLanguageName is a `12` byte structure. We could
probably pack all the info inside a `uint64_t` (16-bits for the name,
32-bits for the version, 1-bit for answering the `hasVersionedName`).
Just to keep the prototype simple I used a `std::optional`. But since
the guts of the structure are hidden, we can always change the layout to
a more compact representation instead.
**How to review**
* The new `DISourceLanguageName` structure is defined in
`DebugInfoMetadata.h`. All the other changes fall out from changing the
`DICompileUnit::SourceLanguage` from `unsigned` to
`DISourceLanguageName`.
Commit: 030d8e66498d6818300b1a8678861a016bd37e10
https://github.com/llvm/llvm-project/commit/030d8e66498d6818300b1a8678861a016bd37e10
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/unittests/BinaryFormat/DwarfTest.cpp
Log Message:
-----------
[llvm][Dwarf] Add LanguageDescription API that accounts for version (#162048)
Currently `llvm::dwarf::LanguageDescription` returns a stringified
`DW_LNAME`. It would be useful to have an API that returns the language
name for a particular `DW_LNAME_`/version pair. LLDB's use case is that
it wants to emit diagnostics with human readable descriptions of the
language we got from debug-info (see
https://github.com/llvm/llvm-project/pull/161688). We could maintain a
side-table in LLDB but thought this might be generally useful and should
live next to the existing `LanguageDescription` API.
Commit: eb1ce38fd1fc750080a0ee5fe1e16dd457d9c437
https://github.com/llvm/llvm-project/commit/eb1ce38fd1fc750080a0ee5fe1e16dd457d9c437
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/global-init.cpp
Log Message:
-----------
[CIR] Finish global ctor init lowering (#162130)
Implement support for creating a global ctor list during the
cir::LoweringPrepare pass, and add tests for lowering global
constructor-based initialization to LLVM IR.
Commit: 98ce4348703dbb2e2386426ff7e67c2e025d4bfb
https://github.com/llvm/llvm-project/commit/98ce4348703dbb2e2386426ff7e67c2e025d4bfb
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
Log Message:
-----------
[VPlan] Skip VPBlendRecipe in isUsedByLoadStoreAddress.
VPBlendRecipes are introduced as part of if-conversion, potentially adding
a def-use chain from a load used in a compare to another load/store. In
the scalar IR, there is no connection via def-use chains, so the legacy
cost model won't consider the load used by memory operation.
Skipping blends brings the VPlan-based cost-computation in line with the
legacy cost model after https://github.com/llvm/llvm-project/pull/162157.
Commit: 466f691f965a5d4a78fef7560377b0a478636d6e
https://github.com/llvm/llvm-project/commit/466f691f965a5d4a78fef7560377b0a478636d6e
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
M llvm/unittests/Support/SpecialCaseListTest.cpp
Log Message:
-----------
[SpecialCaseList] Remove ./ from file path (#162437)
This extends approach used in WarningsSpecialCaseList
on other types of SpecialCaseList.
SpecialCaseList will remove leading "./" from the Query
for prefixes which looks like file names.
Now affected prefixes are "src", "!src", "mainfile", "source".
To avoid breaking users, this behavior is enabled for
files starting "#!special-case-list-v3".
Commit: 8e62acec9e0228118e2a5a982ca2eaa7b213a049
https://github.com/llvm/llvm-project/commit/8e62acec9e0228118e2a5a982ca2eaa7b213a049
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/source/Core/IOHandler.cpp
M lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
Log Message:
-----------
[lldb] Ignore trailing spaces on quit confirmation (#162263)
Commit: b8beb97b4f577f87f204be78b77ee12e7e232340
https://github.com/llvm/llvm-project/commit/b8beb97b4f577f87f204be78b77ee12e7e232340
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
Add papers from the Aug 2025 WG14 meeting in Brno; NFC
Commit: 9aa94f6b29b722b7b598f2ae50aa22398eb6c247
https://github.com/llvm/llvm-project/commit/9aa94f6b29b722b7b598f2ae50aa22398eb6c247
Author: shreya-jain <sj335 at cornell.edu>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-unique-ptr.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Add unique_ptr <T[]> accesses (#156773)
Add operator[] accesses of `unique_ptr<T[]>` to `-Wunsafe-buffer-usage`
as a subcategory under `-Wunsafe-buffer-usage-unique-ptr-array-access`.
Also discussed in
https://github.com/issues/assigned?issue=llvm%7Cllvm-project%7C73452
Commit: d987465f47ec6460a4865238232a4f59072ef4b8
https://github.com/llvm/llvm-project/commit/d987465f47ec6460a4865238232a4f59072ef4b8
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Frontend/HLSL/RootSignatureMetadata.h
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
Log Message:
-----------
[DirectX] Remove custom error classes from RootSignature Metadata parser (#161921)
We have too many custom error classes that look too much alike when
error handling root signature metadata parser. This PR removes those
custom error classes and instead reuses `StringError` and a few
pre-formatted error messages.
Closes: [#159429](https://github.com/llvm/llvm-project/issues/159429)
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: 7b820b28353e788603e56698035db42bb3327713
https://github.com/llvm/llvm-project/commit/7b820b28353e788603e56698035db42bb3327713
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M compiler-rt/lib/builtins/cpu_model/aarch64.c
M compiler-rt/lib/builtins/cpu_model/aarch64/hwcap.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/lse_atomics/android.inc
M compiler-rt/lib/builtins/cpu_model/aarch64/lse_atomics/getauxval.inc
Log Message:
-----------
[builtins][AArch64] Clean up the sys/auxv.h header handling (#161751)
glibc 2.17 added AArch64 support and already had getauxval().
Commit: f8ba5343ae19651b148e53960597bdff0c877757
https://github.com/llvm/llvm-project/commit/f8ba5343ae19651b148e53960597bdff0c877757
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
M lldb/test/API/functionalities/unwind/cortex-m-exception/armv7m-nofpu-exception.yaml
M lldb/test/API/functionalities/unwind/cortex-m-exception/binary.json
Log Message:
-----------
Revert "[lldb] Cortex-M exception unwind API test cleanup" (#162520)
This reverts commit 01a8f9b81870ac9bfe26d80fa3313d56cb8cbe13.
The reason is "lldb-remote-linux-win" buildbot breakage
(https://lab.llvm.org/buildbot/#/builders/197/builds/9625).
Commit: 33f26682507ec5f2b54c0300f3e1ec4efce45d86
https://github.com/llvm/llvm-project/commit/33f26682507ec5f2b54c0300f3e1ec4efce45d86
Author: Shawn K <kimshawn02 at icloud.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/test/CIR/CodeGen/cast.cpp
Log Message:
-----------
[CIR] Upstream handling of integral-to-pointer casts (#161653)
Fix #153658
Handle integral to pointer casts and port the relevant `cast.cpp` test
cases from incubator.
Commit: 1892e6fbb33a1303f8103132c0122f9713dde21b
https://github.com/llvm/llvm-project/commit/1892e6fbb33a1303f8103132c0122f9713dde21b
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/src/__support/OSUtil/linux/auxv.h
Log Message:
-----------
[libc] fix rv32 mmap in auxv library (#162519)
Fix auxv rv32 build problem
Commit: 81c6f53c19cd29c401355a1c5764b35bfdea6164
https://github.com/llvm/llvm-project/commit/81c6f53c19cd29c401355a1c5764b35bfdea6164
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/test/CIR/CodeGen/dtors.cpp
Log Message:
-----------
[CIR] Add support for destructing class members (#162196)
This adds the necessary cleanup handling to get class destructors to
call the destructor for fields that require it.
Commit: 40fbe32cbad1cec303345cb7908d35ea93d88ef2
https://github.com/llvm/llvm-project/commit/40fbe32cbad1cec303345cb7908d35ea93d88ef2
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
Log Message:
-----------
[DirectX] Update DXILBitcodeWriter for #162255 (#162531)
Fix the build with the DirectX backend enabled by using `getUnversionedName()`
to match the updates of other similar uses of `getSourceLanguage()`.
Commit: 761be78dd73436dfa66090ba921ca8154cc42209
https://github.com/llvm/llvm-project/commit/761be78dd73436dfa66090ba921ca8154cc42209
Author: Folkert de Vries <folkert at folkertdev.nl>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/fpclamptosat_vec.ll
A llvm/test/CodeGen/WebAssembly/saturating-truncation.ll
Log Message:
-----------
[WebAssembly] recognize saturating truncation (#155470)
fixes https://github.com/llvm/llvm-project/issues/153838
using the same approach as
https://github.com/llvm/llvm-project/pull/155377
Recognize a manual saturating truncation and select the corresponding
instruction. This is useful in general, but came up specifically in
https://github.com/rust-lang/stdarch because it will allow us to drop
more target-specific intrinsics in favor of cross-platform ones.
Commit: 774ffe5cce7392e6b4e29c83e725337727c2c994
https://github.com/llvm/llvm-project/commit/774ffe5cce7392e6b4e29c83e725337727c2c994
Author: Marco Elver <elver at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
A clang/docs/AllocToken.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/docs/index.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Driver/Options.td
M clang/include/clang/Driver/SanitizerArgs.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
A clang/test/CodeGen/alloc-token-ignorelist.c
A clang/test/CodeGen/alloc-token-lower.c
A clang/test/CodeGen/alloc-token.c
A clang/test/CodeGenCXX/alloc-token.cpp
A clang/test/Driver/fsanitize-alloc-token.c
A clang/test/Preprocessor/alloc_token.cpp
Log Message:
-----------
[Clang] Wire up -fsanitize=alloc-token (#156839)
Wire up the `-fsanitize=alloc-token` command-line option, hooking up
the `AllocToken` pass -- it provides allocation tokens to compatible
runtime allocators, enabling different heap organization strategies,
e.g. hardening schemes based on heap partitioning.
The instrumentation rewrites standard allocation calls into variants
that accept an additional `size_t token_id` argument. For example,
calls to `malloc(size)` become `__alloc_token_malloc(size, token_id)`,
and a C++ `new MyType` expression will call
`__alloc_token__Znwm(size, token_id)`.
Currently untyped allocation calls do not yet have `!alloc_token`
metadata, and therefore receive the fallback token only. This will be
fixed in subsequent changes through best-effort type-inference.
One benefit of the instrumentation approach is that it can be applied
transparently to large codebases, and scales in deployment as other
sanitizers.
Similarly to other sanitizers, instrumentation can selectively be
controlled using `__attribute__((no_sanitize("alloc-token")))`. Support
for sanitizer ignorelists to disable instrumentation for specific
functions or source files is implemented.
See clang/docs/AllocToken.rst for more usage instructions.
Link:
https://discourse.llvm.org/t/rfc-a-framework-for-allocator-partitioning-hints/87434
---
This change is part of the following series:
1. https://github.com/llvm/llvm-project/pull/160131
2. https://github.com/llvm/llvm-project/pull/156838
3. https://github.com/llvm/llvm-project/pull/162098
4. https://github.com/llvm/llvm-project/pull/162099
5. https://github.com/llvm/llvm-project/pull/156839
6. https://github.com/llvm/llvm-project/pull/156840
7. https://github.com/llvm/llvm-project/pull/156841
8. https://github.com/llvm/llvm-project/pull/156842
Commit: 4f6cb060b105f38d3652886b0f5b183cafe91095
https://github.com/llvm/llvm-project/commit/4f6cb060b105f38d3652886b0f5b183cafe91095
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Basic/Diagnostic.cpp
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Move "LongestMatch" logic from WarningsSpecialCaseList into SpecialCaseList (#162409)
This way we can be more flexible optimizing SpecialCaseList internals.
Commit: 33e6a9ae41413878cf04ff7d688e057dbd3ac256
https://github.com/llvm/llvm-project/commit/33e6a9ae41413878cf04ff7d688e057dbd3ac256
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Analysis/IR2Vec.cpp
Log Message:
-----------
[IR2Vec] Added fixme for cyclic dependency in Flow-Aware embedding computation (#162522)
Commit: c57796dcb2690657a99bf328e0f2e3c10bc0ab4d
https://github.com/llvm/llvm-project/commit/c57796dcb2690657a99bf328e0f2e3c10bc0ab4d
Author: Shreeyash Pandey <shreeyash335 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/docs/headers/stdfix.rst
M libc/include/stdfix.yaml
M libc/src/__support/fixed_point/fx_bits.h
M libc/src/stdfix/CMakeLists.txt
A libc/src/stdfix/rdivi.cpp
A libc/src/stdfix/rdivi.h
M libc/test/src/stdfix/CMakeLists.txt
A libc/test/src/stdfix/DivITest.h
A libc/test/src/stdfix/rdivi_test.cpp
Log Message:
-----------
[libc][stdfix] Implement fxdivi functions (rdivi) (#154914)
This PR includes only one of the fxdivi functions (rdivi). It uses a
polynomial function for initial approximation followed by 4
newton-raphson iterations to calculate the reciprocal and finally
multiplies the numerator with it to get the result.
---------
Signed-off-by: Shreeyash Pandey <shreeyash335 at gmail.com>
Commit: 419f5f1d8986877f089a89bd46188af872446324
https://github.com/llvm/llvm-project/commit/419f5f1d8986877f089a89bd46188af872446324
Author: Kyungtak Woo <kevinwkt1997 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] fix: add dependency for SCFToEmitC due to c3aa1584e098 (#162535)
Adding dependency changes due to bazel build failing since
https://github.com/llvm/llvm-project/pull/143008/files
Commit: 23981c422207c11d0f52191a8af3a60801e92dc7
https://github.com/llvm/llvm-project/commit/23981c422207c11d0f52191a8af3a60801e92dc7
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/vdso.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/sysconf.cpp
Log Message:
-----------
[libc] Refactor internal auxv usage to reduce getauxval dependencies (#162489)
Commit: 4a9e8eaab9cce24efc846d09c77b9627a3549514
https://github.com/llvm/llvm-project/commit/4a9e8eaab9cce24efc846d09c77b9627a3549514
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[bazel][mlir][acc] Port #162328: add ArithDialect dep to OpenACC (#162538)
Commit: 78aa866793a0f27c87a0de31a9fbbf58cf4dab3b
https://github.com/llvm/llvm-project/commit/78aa866793a0f27c87a0de31a9fbbf58cf4dab3b
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel][libc] Port #154914: fxdivi (#162539)
Commit: 9d49fe4eccfdf50faeafdf73ebd05ed6cc9141b6
https://github.com/llvm/llvm-project/commit/9d49fe4eccfdf50faeafdf73ebd05ed6cc9141b6
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/test/OpenMP/nvptx_throw_trap.cpp
Log Message:
-----------
[clang] Fix test to require x86
This test would fail if the x86 target had not been built. This fix
makes the requirement on x86 explicit. Trailing whitespace has also been
removed.
Commit: 02572c6e9bbb60916ce471cbfec339b68a2121e2
https://github.com/llvm/llvm-project/commit/02572c6e9bbb60916ce471cbfec339b68a2121e2
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/unittests/API/CMakeLists.txt
M lldb/unittests/CMakeLists.txt
M lldb/unittests/DAP/CMakeLists.txt
Log Message:
-----------
[lldb] Enforce that only the LLDB API unit tests can link liblldb (#162384)
Enforce that only specific tests can link liblldb. All the other unit
tests statically link the private libraries. Linking both the static
libraries and liblldb results in duplicated symbols.
Fixes #162378
Commit: 9527f9338f9d116b6eaf5771b961ed0210119326
https://github.com/llvm/llvm-project/commit/9527f9338f9d116b6eaf5771b961ed0210119326
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/unittests/API/CMakeLists.txt
Log Message:
-----------
[lldb] Add a blurb about not including private headers (#162404)
Add a blurb about not including private headers in the API tests.
Commit: 6359980f5b555f95429139c2e2e9530d75d4e78f
https://github.com/llvm/llvm-project/commit/6359980f5b555f95429139c2e2e9530d75d4e78f
Author: Marco Elver <elver at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/docs/AllocToken.rst
M clang/lib/CodeGen/CGExpr.cpp
A clang/test/CodeGenCXX/alloc-token-pointer.cpp
M clang/test/CodeGenCXX/alloc-token.cpp
M llvm/docs/LangRef.rst
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Transforms/Instrumentation/AllocToken.cpp
M llvm/test/Instrumentation/AllocToken/extralibfuncs.ll
M llvm/test/Instrumentation/AllocToken/nonlibcalls.ll
M llvm/test/Instrumentation/AllocToken/remark.ll
A llvm/test/Instrumentation/AllocToken/typehashpointersplit.ll
M llvm/test/Transforms/SimplifyCFG/merge-calls-alloc-token.ll
Log Message:
-----------
[AllocToken, Clang] Implement TypeHashPointerSplit mode (#156840)
Implement the TypeHashPointerSplit mode: This mode assigns a token ID
based on the hash of the allocated type's name, where the top half
ID-space is reserved for types that contain pointers and the bottom half
for types that do not contain pointers.
This mode with max tokens of 2 (`-falloc-token-max=2`) may also
be valuable for heap hardening strategies that simply separate pointer
types from non-pointer types.
Make it the new default mode.
Link: https://discourse.llvm.org/t/rfc-a-framework-for-allocator-partitioning-hints/87434
---
This change is part of the following series:
1. https://github.com/llvm/llvm-project/pull/160131
2. https://github.com/llvm/llvm-project/pull/156838
3. https://github.com/llvm/llvm-project/pull/162098
4. https://github.com/llvm/llvm-project/pull/162099
5. https://github.com/llvm/llvm-project/pull/156839
6. https://github.com/llvm/llvm-project/pull/156840
7. https://github.com/llvm/llvm-project/pull/156841
8. https://github.com/llvm/llvm-project/pull/156842
Commit: f3e2c20a23b11fbe1149e5d2e3631109af6d3238
https://github.com/llvm/llvm-project/commit/f3e2c20a23b11fbe1149e5d2e3631109af6d3238
Author: jimingham <jingham at apple.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/source/API/SBBreakpoint.cpp
M lldb/source/API/SBBreakpointLocation.cpp
M lldb/unittests/API/CMakeLists.txt
A lldb/unittests/API/SBBreakpointClearConditionTest.cpp
M lldb/unittests/Breakpoint/CMakeLists.txt
Log Message:
-----------
Make SBBreakpoint/SBBreakpointLocation.SetCondition(nullptr) work again. (#162370)
The addition of the StopCondition in the lldb_private layer meant that
clearing a breakpoint condition with:
sb_break.SetCondition(nullptr);
now crashes. Also, GetCondition for an empty condition used to return a
nullptr, but now it returns "".
This patch fixes that crash and makes the SB GetCondition always return
nullptr for an empty condition.
Commit: 8a32e58425b3c94e9177d7cae538700d029f69bd
https://github.com/llvm/llvm-project/commit/8a32e58425b3c94e9177d7cae538700d029f69bd
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
R clang/lib/Analysis/LifetimeSafety.md
Log Message:
-----------
Delete unintentional doc file added in 6bbd7ea
Commit: 3a3b21461fef83afdc1812fe4ced4815cb70ef34
https://github.com/llvm/llvm-project/commit/3a3b21461fef83afdc1812fe4ced4815cb70ef34
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Frontend/HLSL/RootSignatureMetadata.cpp
M llvm/lib/Frontend/HLSL/RootSignatureValidations.cpp
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootDescriptor-Invalid-Flags_V1.ll
A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-StaticSamplers-Invalid-Flag_V1.ll
Log Message:
-----------
[DirectX] Making sure we always parse, validate and verify Flags (#162171)
This PR makes a few changes to make sure that Root Signature Flags are
always parsed validated and verified, this includes if you use a version
that doesn't support flags. The logic already existed, this PR just
makes sure it is always executed.
Closes: [#161579](https://github.com/llvm/llvm-project/issues/161579)
---------
Co-authored-by: joaosaffran <joao.saffran at microsoft.com>
Commit: 857961d12ae953e1fe7d3ec452e6b0c5a43987fd
https://github.com/llvm/llvm-project/commit/857961d12ae953e1fe7d3ec452e6b0c5a43987fd
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
M llvm/include/llvm/Support/SpecialCaseList.h
Log Message:
-----------
[NFC][SpecialCaseList] Hide more details in private section (#162302)
Commit: ab2c1455ec8dd13ba0dd90775622222aa1da5272
https://github.com/llvm/llvm-project/commit/ab2c1455ec8dd13ba0dd90775622222aa1da5272
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/TrailingObjects.h
Log Message:
-----------
[llvm][NFC] A couple cleanups in `TrailingObjects` (#162521)
1. `verifyTrailingObjectsAlignment` is unused.
2. To spell out the name of a templated base class, we don't need to
repeat all of its template arguments.
Commit: 0ca23a3054cb87dc5a58420fe1f39383d5641eeb
https://github.com/llvm/llvm-project/commit/0ca23a3054cb87dc5a58420fe1f39383d5641eeb
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
Log Message:
-----------
[Flang]Fix the build with the EXPENSIVE_CHECKS enabled (#162541)
Commit: 37af81fbb54aed5a7433c8c48217b1d54384c3cf
https://github.com/llvm/llvm-project/commit/37af81fbb54aed5a7433c8c48217b1d54384c3cf
Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaTemplate.cpp
Log Message:
-----------
[Clang][Sema] Add a nullptr check in template name (#162377)
Static analysis flagged that when calling ActOnTemplateName, `S` can be
a `nullptr`
and we call `isTemplateName` which unconditionally dereferences the `S`
argument at
some point. I added a `nullptr` check to assure we don't dereference `S`
in
`isTemplateName` if it is a `nullptr`.
Commit: 1395d4315bf49be64817b79e3863d183bb28c3e1
https://github.com/llvm/llvm-project/commit/1395d4315bf49be64817b79e3863d183bb28c3e1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/unittests/Breakpoint/CMakeLists.txt
Log Message:
-----------
[lldb] Remove unnecessary LINK_LIBS in LLDBBreakpointTests (NFC)
Commit: cc14b589659b6c6c9fb65de7a274287f2490d345
https://github.com/llvm/llvm-project/commit/cc14b589659b6c6c9fb65de7a274287f2490d345
Author: Isaac Nudelman <62861466+nuudlman at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/WinogradConv2D.cpp
M mlir/test/Dialect/Linalg/winograd-conv2d-rewrite.mlir
Log Message:
-----------
[MLIR][Linalg] Fix winograd op lowering for types smaller than f32 (#158500)
The winograd transform constant array is always emitted as f32, but
previously the creation would pass through the original type. If this
type was smaller (like f16), you would get an assertion failure during
attribute creation.
This fixes this by ensuring that the types match and adding a test for
this case.
Commit: 86ad98c37aee575bc21460a367f3e9b824f289cb
https://github.com/llvm/llvm-project/commit/86ad98c37aee575bc21460a367f3e9b824f289cb
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
Log Message:
-----------
[clang][Driver][RISCV] Rename `getRISCFeaturesFromMcpu`. NFCI (#162545)
This function, which has a typo in the name btw, is no longer doing what
it was created to do: instead of deducting non-extension target features
from `-mcpu` -- a task that was (more or less) subsumed by
`riscv::getRISCVTargetFeatures` -- it is only checking if the `-mcpu`
value is valid or not now. Therefore, this patch renames it into
`isValidRISCVCPU` and exits early if it's not.
NFCI.
Commit: f802acf32d0755d774f9b91c346f17bdf7f9d37e
https://github.com/llvm/llvm-project/commit/f802acf32d0755d774f9b91c346f17bdf7f9d37e
Author: YixingZhang007 <yixing.zhang at intel.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
M llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_predicated_io/predicated_io_generic.ll
Log Message:
-----------
[SPIR-V] Add SPV_INTEL_predicated_io extension (#161591)
This PR introduces the support for the SPIR-V extension
`SPV_INTEL_predicated_io`. This extension adds predicated load and store
instructions. Predicated load performs load from memory if predicate is
true; otherwise, it uses default_value as a result. Predicated store
performs store of value to memory if predicate is true; otherwise, it
does nothing.
Reference Specification:
https://github.com/intel/llvm/blob/sycl/sycl/doc/design/spirv-extensions/SPV_INTEL_predicated_io.asciidoc
Commit: 578314e3a870768926edad755b3fcba28269ea1e
https://github.com/llvm/llvm-project/commit/578314e3a870768926edad755b3fcba28269ea1e
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M bolt/utils/docker/Dockerfile
Log Message:
-----------
[Bolt] Use fully qualified docker image name (NFC) (#162154)
Based on
https://github.com/llvm/llvm-project/pull/162007#issuecomment-3373161948,
we should avoid having short links in docker images.
Commit: 496d0719a2d27ad5ae5dc0feb3f3cb0ec67ea4f3
https://github.com/llvm/llvm-project/commit/496d0719a2d27ad5ae5dc0feb3f3cb0ec67ea4f3
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/utils/ci/Dockerfile
M libcxx/utils/ci/docker-compose.yml
M libcxx/utils/ci/vendor/android/Dockerfile.emulator
Log Message:
-----------
[libc++][CI] Use fully qualified names in docker images (NFC) (#162156)
Based on
https://github.com/llvm/llvm-project/pull/162007#issuecomment-3373161948,
we should avoid having short links in docker images.
Commit: 4d2d21331bf058cf901d30a9b902008e0a8e9e20
https://github.com/llvm/llvm-project/commit/4d2d21331bf058cf901d30a9b902008e0a8e9e20
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang/utils/analyzer/Dockerfile
M libc/utils/buildbot/Dockerfile
M llvm/utils/docker/example/Dockerfile
M llvm/utils/docker/nvidia-cuda/Dockerfile
M polly/lib/External/isl/imath/tests/linux/Dockerfile
Log Message:
-----------
[NFC][CI] Use Fully Qualified Names for All Containers
Fix the rest of the containers sitting around in the monorepo.
Commit: f1eb7e55428ec4b70a7dfbff8a72da33034ee729
https://github.com/llvm/llvm-project/commit/f1eb7e55428ec4b70a7dfbff8a72da33034ee729
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M .github/workflows/build-ci-container-tooling.yml
Log Message:
-----------
[Github] Rename Build CI Tooling Containers Workflow
This was copied and pasted from the main CI container build workflows
and I missed this during code review.
Commit: 72ebda2ba50fbcff44b77076cee06d256835a74a
https://github.com/llvm/llvm-project/commit/72ebda2ba50fbcff44b77076cee06d256835a74a
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M libc/startup/gpu/amdgpu/start.cpp
M libc/startup/gpu/nvptx/start.cpp
Log Message:
-----------
[libc] Ensure the RPC server is alwaus used
Summary:
Previous change made us no longer link `exit` by default which implied
the RPC server. This is a required symbol for the loader. This will be
fixed later when I port the loader to LLVMOffload. For now just work
around it to fix the bots.
Commit: 5ebb05215f1cdbbeb49daace25838d925f8fe589
https://github.com/llvm/llvm-project/commit/5ebb05215f1cdbbeb49daace25838d925f8fe589
Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
Log Message:
-----------
Generalize codegen tests to not hardcode G_MIR opcodes (#162554)
(trivial change, no review expected)
Commit: a2723ddf70aa0bfa1758e47a9d12238141e44f86
https://github.com/llvm/llvm-project/commit/a2723ddf70aa0bfa1758e47a9d12238141e44f86
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Split Matcher into RegexMatcher and GlobMatcher (#162303)
Glob will be optimized
Regex we we will keep intact.
Using std::variant to avoid virtual methods,
and allow to switch unique_ptr to move in future.
Commit: 4e6ee0b674cb84422d78e0cf0416754660f38972
https://github.com/llvm/llvm-project/commit/4e6ee0b674cb84422d78e0cf0416754660f38972
Author: Hanchenng Wu <henrywu at mathworks.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Transforms/GenerateRuntimeVerification.cpp
M mlir/test/Dialect/Linalg/runtime-verification.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/cast-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/copy-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/dim-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/load-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/store-runtime-verification.mlir
M mlir/test/Integration/Dialect/MemRef/subview-runtime-verification.mlir
M mlir/test/Integration/Dialect/Tensor/cast-runtime-verification.mlir
M mlir/test/Integration/Dialect/Tensor/dim-runtime-verification.mlir
M mlir/test/Integration/Dialect/Tensor/extract-runtime-verification.mlir
M mlir/test/Integration/Dialect/Tensor/extract_slice-runtime-verification.mlir
Log Message:
-----------
[MLIR] Fix test failures for generate-runtime-verification pass from PR #160331 (#162533)
[MLIR] Fix test failures for generate-runtime-verification pass from PR #160331
PR #160331 introduced a mistake that removed the error message for
generate-runtime-verification
pass, leading to test failures during
`test-build-check-mlir-build-only-check-mlir`.
This patch restores the missing error message.
In addition, for related tests, the op strings used in FileChecks are
updated with the same op
formats as used in input mlirs.
Verified locally.
Fixes post-merge regression from:
https://github.com/llvm/llvm-project/pull/160331
Commit: 397181d5c191cf2f7ba3b4408383da6e5a149052
https://github.com/llvm/llvm-project/commit/397181d5c191cf2f7ba3b4408383da6e5a149052
Author: Augusto Noronha <anoronha at apple.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/include/lldb/Core/ModuleList.h
M lldb/source/Core/ModuleList.cpp
M lldb/source/Target/Target.cpp
Log Message:
-----------
[lldb] Fix use after free on ModuleList::RemoveSharedModuleIfOrphaned (#155331)
This fixes a potential use after free where
ModuleList::RemoveSharedModuleIfOrphaned ->
SharedModuleList::RemoveIfOrphaned -> SharedModuleList::RemoveFromMap
would potentially dereference a freed pointer. This fixes it by not
calling ModuleList::RemoveSharedModuleIfOrphaned at all if the pointer
was just freed.
Commit: a1c09a95cf5acb81ed1fcd4cca63476f7c871cb2
https://github.com/llvm/llvm-project/commit/a1c09a95cf5acb81ed1fcd4cca63476f7c871cb2
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
M clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp
A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.cpp
A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.h
M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
R clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
R clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.h
M clang-tools-extra/clang-tidy/zircon/ZirconTidyModule.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/clang-tidy/checks/fuchsia/temporary-objects.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/zircon/temporary-objects.rst
A clang-tools-extra/test/clang-tidy/checkers/fuchsia/temporary-objects.cpp
R clang-tools-extra/test/clang-tidy/checkers/zircon/temporary-objects.cpp
Log Message:
-----------
[clang-tidy] Deprecate 'zircon' module (#162012)
As for
[RFC](https://discourse.llvm.org/t/rfc-deprecate-and-remove-zircon-module-moving-its-only-check-to-fuchsia-module/88208/2),
deprecate `zircon` module and remove eventually in LLVM-24.
---------
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Commit: 139a6bf0e448ebd7ef9bd1c26aa92018d90f8add
https://github.com/llvm/llvm-project/commit/139a6bf0e448ebd7ef9bd1c26aa92018d90f8add
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/fuchsia/BUILD.gn
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/zircon/BUILD.gn
Log Message:
-----------
[gn build] Port a1c09a95cf5a
Commit: 941492b6f6fc4dbd1dfdde5f7ed8a361dd51a922
https://github.com/llvm/llvm-project/commit/941492b6f6fc4dbd1dfdde5f7ed8a361dd51a922
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
M mlir/lib/Analysis/DataFlow/DenseAnalysis.cpp
M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp
Log Message:
-----------
[MLIR] Add more logging to DenseAnalysis/DeaDCodeAnalysis/TestDenseBackwardDataFlowAnalysis (NFC) (#161503)
Just some more debugging help here, it may need more tweaking in the future.
Commit: c083fa1597f1a34fcab4c2910158a288defc72f6
https://github.com/llvm/llvm-project/commit/c083fa1597f1a34fcab4c2910158a288defc72f6
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Use BumpPtrAllocator to own strings (#162304)
This simplifies structure of GlobMatcher, and
avoids "no copy/move" requirement.
Commit: 67b789baf47d4e496f9f97912ea03048b63b851b
https://github.com/llvm/llvm-project/commit/67b789baf47d4e496f9f97912ea03048b63b851b
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll
Log Message:
-----------
[NVPTX] Fix global destructor handling not working with a single dtor (#162537)
Summary:
Very small typo here caused it to not enter the main loop if the size
was not greater than 1. The inner loop is "less than" so the inverse
should be
"greater than or equal" but we were only doing "greater than". Did not
notice this because the libc handling does its own implementation and
the OpenMP tests only tested multiple destructors, and most people only
ever use global constructors when they show up on the GPU.
Commit: 992cf9a31e6a182095f260aee0c4687c8e4b7e2b
https://github.com/llvm/llvm-project/commit/992cf9a31e6a182095f260aee0c4687c8e4b7e2b
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/source/Target/Language.cpp
M lldb/unittests/Target/LanguageTest.cpp
Log Message:
-----------
[lldb][Language] Make SourceLanguage::GetDescription for language version (#162050)
Depends on https://github.com/llvm/llvm-project/pull/162048
This makes sure we also include the version number in the description.
For `C++17`, this would, e.g., now return `"C++17"` instead of `"ISO
C++"`.
Commit: d0d2162341e9a5371bbacb481b183b4ae74598ef
https://github.com/llvm/llvm-project/commit/d0d2162341e9a5371bbacb481b183b4ae74598ef
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SPSWrapperFunction.h
M orc-rt/unittests/SPSWrapperFunctionTest.cpp
Log Message:
-----------
[orc-rt] Enable SPS transparent conversion for reference arguments. (#162563)
Ensures that SPS transparent conversion will apply to arguments passed
by reference.
Commit: 074dbfa2e73a8e9680d887271fd1780fb76d37a4
https://github.com/llvm/llvm-project/commit/074dbfa2e73a8e9680d887271fd1780fb76d37a4
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M .github/workflows/build-ci-container-tooling.yml
M .github/workflows/build-ci-container.yml
Log Message:
-----------
[Github][CI] Add quotes to 'find' command argument (#162570)
It appears that new [Build Tooling CI
Containers](https://github.com/llvm/llvm-project/actions/runs/18359418540/job/52299833688)
job run didn't actually push containers, but failed with error:
```
find: paths must precede expression: `ghcr.io-llvm-amd64-ci-ubuntu-24.04-lint-f1eb7e55428e.tar'
find: possible unquoted pattern after predicate `-iname'?
```
Proposed fix is in error message and I confirmed locally with such
setup:
```bash
$ ls -la
a.sh
ghcr.io-ci-a.tar
ghcr.io-ci-b.tar
$ cat a.sh
for f in $(find . -iname '*.tar'); do
echo $f
done
$ ./a.sh # lists fine with quotes but fails without.
```
Thought not sure how `Build CI Container` job push successfully: I
manually downloaded 900MB `tar` AMD-archive with two containers and
failed to `for`-loop over them without quotes, hence I add them to that
script as well.
Commit: 2ff3db0387589a1760cb06d244a4dbbf8af02469
https://github.com/llvm/llvm-project/commit/2ff3db0387589a1760cb06d244a4dbbf8af02469
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/Dwarf.def
Log Message:
-----------
[llvm][Dwarf] Add DW_AT_language_name/DW_AT_language_version codes (#162446)
Adds the constants defined in https://dwarfstd.org/languages-v6.html
Commit: 64ed3903bbb56dd74e120e84442f4bbaae777eb3
https://github.com/llvm/llvm-project/commit/64ed3903bbb56dd74e120e84442f4bbaae777eb3
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M lldb/source/Target/ThreadPlanStepOut.cpp
A lldb/test/API/functionalities/thread/step_out_line0/Makefile
A lldb/test/API/functionalities/thread/step_out_line0/TestThreadStepOutLine0.py
A lldb/test/API/functionalities/thread/step_out_line0/main.c
Log Message:
-----------
[lldb] Fix stepping out if the return address is not allowed to stop at (#161982)
When a thread reaches a breakpoint at the return address set by
`ThreadPlanStepOut`, `ThreadPlanStepOut::ShouldStop()` calls
`ThreadPlanShouldStopHere::InvokeShouldStopHereCallback()`, and if it
returns `false`, `ThreadPlanShouldStopHere::QueueStepOutFromHerePlan()`
is called to queue a new plan to skip the corresponding range. Once the
new plan finishes, `ThreadPlanStepOut::ShouldStop()` should recheck the
stop condition; however, there is no code path in the method that sets
`done` to `true`. Before #126838, if `done` was `false`, the method checked
if a suitable frame had been reached. After the patch, the check is only
performed at a breakpoint; thus, the execution continues.
This patch causes `ThreadPlanStepOut::ShouldStop()` to recheck the stop
condition when `m_step_out_further_plan_sp` completes.
Commit: 04799bb0e57a08c0abf15341467d944c9bdfaa9e
https://github.com/llvm/llvm-project/commit/04799bb0e57a08c0abf15341467d944c9bdfaa9e
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[Profcheck] Remove select-safe-bool-transforms.ll from failing tests (#162568)
Commit: c99259e6105b9027ff1274457de0bbc24e8d1a0e
https://github.com/llvm/llvm-project/commit/c99259e6105b9027ff1274457de0bbc24e8d1a0e
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-profgen/Inputs/coff-profile.exe
M llvm/test/tools/llvm-profgen/Inputs/coff-profile.perfscript
M llvm/test/tools/llvm-profgen/coff-profile.test
M llvm/tools/llvm-profgen/ProfiledBinary.cpp
M llvm/tools/llvm-profgen/ProfiledBinary.h
Log Message:
-----------
[llvm-profgen] Support for decoding pseudo probe for COFF (#158207)
Pseudo probe support for COFF was added in #123870. This patch teaches
llvm-profgen to decode it.
Commit: deef49e4728030e393e301a6b970b0f2681b503b
https://github.com/llvm/llvm-project/commit/deef49e4728030e393e301a6b970b0f2681b503b
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/ResourceManager.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/ResourceManager.cpp
Log Message:
-----------
[orc-rt] Add ResourceManager interface.
The ResourceManager interface can be used to implement ownership for resources
allocated to JIT'd code, e.g. memory and metadata registrations (frame info,
language runtime metadata, etc.).
Resources can be *deallocated*, meaning that they should be cleaned up (memory
released, registrations deregistered, etc.), or they can be *detached*, meaning
that cleanup should be performed automatically when the ResourceManager itself
is destroyed.
The intent is to allow JIT'd code to continue running after the
llvm::orc::ExecutionSession that produced it is disconnected / destroyed.
Commit: a4a98033c3deb6bc9a438f3cb9e0e1716da5bc00
https://github.com/llvm/llvm-project/commit/a4a98033c3deb6bc9a438f3cb9e0e1716da5bc00
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
A llvm/test/CodeGen/X86/and-mask-variable.ll
Log Message:
-----------
[X86] shouldFoldMaskToVariableShiftPair should be true for scalars up to the biggest legal type (#158068)
For X86, we want to do this for scalars up to the biggest legal type.
Having it be for types bigger results in bloated code.
Commit: 1ffff05a38c92ef3a0479e8f86869e5f2008fdd7
https://github.com/llvm/llvm-project/commit/1ffff05a38c92ef3a0479e8f86869e5f2008fdd7
Author: Wenju He <wenju.he at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/test/CodeGenOpenCL/builtins.cl
M clang/test/CodeGenSYCL/address-space-conversions.cpp
Log Message:
-----------
[clang][SPIR][SPIRV] Materialize non-generic null pointers via addrspacecast (#161773)
LLVM models ConstantPointerNull as all-zero, but some GPUs (e.g. AMDGPU
and our downstream GPU target) use a non-zero sentinel for null in
private / local address spaces.
SPIR-V is a supported input for our GPU target. This PR preserves a
canonical zero form in the generic AS while allowing later lowering to
substitute the target’s real sentinel.
Commit: 3ccc888f1a01c9cd5fc432790f6d10bab602a118
https://github.com/llvm/llvm-project/commit/3ccc888f1a01c9cd5fc432790f6d10bab602a118
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/BUILD.bazel
Log Message:
-----------
[bazel][clang-tidy] Port #162012: zircon deps (#162582)
Commit: 891f002026df122b36813b9e1819769c94327503
https://github.com/llvm/llvm-project/commit/891f002026df122b36813b9e1819769c94327503
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M orc-rt/include/CMakeLists.txt
M orc-rt/include/orc-rt/SPSWrapperFunction.h
A orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
A orc-rt/lib/executor/Unix/NativeMemoryAPIs.inc
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Add SimpleNativeMemoryMap. (#162584)
SimpleNativeMemoryMap is a memory allocation backend for use with ORC.
It can...
1. Reserve slabs of address space.
2. Finalize regions of memory within a reserved slab: copying content
into requested addresses, applying memory protections, running
finalization actions, and storing deallocation actions to be run by
deallocate.
3. Deallocate finalized memory regions: running deallocate actions and,
if possible, making memory in these regions available for use by future
finalization operations. (Some systems prohibit reuse of executable
memory. On these systems deallocated memory is no longer usable within
the process).
4. Release reserved slabs. This runs deallocate for any
not-yet-deallocated finalized regions, and then (if possible) returns
the address space to system. (On systems that prohibit reuse of
executable memory parts of the released address space may be permanently
unusable by the process).
SimpleNativeMemoryMap is intended primarily for use by
llvm::orc::JITLinkMemoryManager implementations to allocate JIT'd code
and data.
Commit: 066ee516d5a6dcfa34b21280dcdfdc138e310409
https://github.com/llvm/llvm-project/commit/066ee516d5a6dcfa34b21280dcdfdc138e310409
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/vec-ret.ll
Log Message:
-----------
[RISCV][GISel] Support ret fp16 vector for zvfhmin (#160719)
Commit: 72fe2d2ca10184fa4fd2c5fe863ab3458c666e14
https://github.com/llvm/llvm-project/commit/72fe2d2ca10184fa4fd2c5fe863ab3458c666e14
Author: Changqing Jing <changqing.jing at bmw.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
Log Message:
-----------
[clang-tidy]misc-const-correctness fix fake positive of function pointer (#162079)
Fix clang-tidy misc-const-correctness of function pointer, because
function pointer can't be declared as `const*const`
```
void function_pointer_basic() {
void (*const fp)() = nullptr;
fp();
}
test.cpp:2:3: warning: pointee of variable 'fp' of type 'void (*const)()' can be declared 'const' [misc-const-correctness]
2 | void (*const fp)() = nullptr;
| ^
| const
```
---------
Co-authored-by: Congcong Cai <congcongcai0907 at 163.com>
Commit: bf34b2e2df2ec55483ee678fc7c5c0fbfda35e98
https://github.com/llvm/llvm-project/commit/bf34b2e2df2ec55483ee678fc7c5c0fbfda35e98
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/lower-table-based-cttz-basics.ll
M llvm/test/Transforms/AggressiveInstCombine/lower-table-based-cttz-dereferencing-pointer.ll
M llvm/test/Transforms/AggressiveInstCombine/lower-table-based-cttz-non-argument-value.ll
M llvm/test/Transforms/AggressiveInstCombine/lower-table-based-cttz-zero-element.ll
Log Message:
-----------
[profcheck] Add heuristical profile metadata for lowering table-based cttz. (#161898)
When lowering a `table-based cttz` calculation to the `llvm.cttz`
intrinsic, `AggressiveInstCombine` was not attaching profile metadata to
the newly generated `select` instruction.
This PR adds heuristic branch weights to the `select`. It uses a strong
100-to-1 probability favoring the `cttz` path over the zero-input case.
This allows later passes to optimize code layout and branch prediction.
Commit: 2b14a8dc1b86be27879b674d9c757a28a2fc1927
https://github.com/llvm/llvm-project/commit/2b14a8dc1b86be27879b674d9c757a28a2fc1927
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
M llvm/test/CodeGen/AMDGPU/addsub64_carry.ll
M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
M llvm/test/CodeGen/AMDGPU/sdiv64.ll
M llvm/test/CodeGen/AMDGPU/srem64.ll
M llvm/test/CodeGen/AMDGPU/uaddo.ll
M llvm/test/CodeGen/AMDGPU/uaddsat.ll
M llvm/test/CodeGen/AMDGPU/udiv64.ll
M llvm/test/CodeGen/AMDGPU/urem64.ll
M llvm/test/CodeGen/AMDGPU/usubo.ll
M llvm/test/CodeGen/AMDGPU/usubsat.ll
Log Message:
-----------
[AMDGPU] Remove setcc by using add/sub carryout (#155255)
Remove setcc instruction by utilizing add/sub carryout.
Addresses https://github.com/llvm/llvm-project/issues/152992.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: ab7138154bc75be51189b834723bf9ad97a9fa7c
https://github.com/llvm/llvm-project/commit/ab7138154bc75be51189b834723bf9ad97a9fa7c
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add Session class. (#162590)
An orc-rt Session contains a JIT'd program, managing resources and
communicating with a remote JIT-controller instance (expected to be an
orc::ExecutionSession, though this is not required).
Commit: 2afd71f3183a733144dc43f1848b3c2d3459bc33
https://github.com/llvm/llvm-project/commit/2afd71f3183a733144dc43f1848b3c2d3459bc33
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Log Message:
-----------
[LegalizeTypes] Use GetSplitVector in SplitVec(Res/Op)_PARTIAL_REDUCE_MLA (#162513)
Using DAG.getSplitVector creates new nodes that need to be legalized. We
should use GetSplitVector to get the already legalized copy of the
inputs.
Commit: 822446d74aba5bda31f728f26444d7c03478157d
https://github.com/llvm/llvm-project/commit/822446d74aba5bda31f728f26444d7c03478157d
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
R orc-rt/include/orc-rt-c/orc-rt.h
M orc-rt/lib/executor/CMakeLists.txt
R orc-rt/lib/executor/orc-rt-executor.cpp
M orc-rt/tools/orc-executor/orc-executor.cpp
Log Message:
-----------
[orc-rt] Remove (effectively) unused header orc-rt-c/orc-rt.h. NFCI.
This header was a placeholder in the initial project check-in, but is not used.
Time to remove it.
Commit: 018ae02785da5a35bea8a6eb04f6398c052228f9
https://github.com/llvm/llvm-project/commit/018ae02785da5a35bea8a6eb04f6398c052228f9
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/AST/DeclTemplate.h
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/TemplateName.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Sema/TreeTransform.h
A clang/test/CodeGenCXX/template-cxx20.cpp
Log Message:
-----------
[clang] fix transform for constant template parameter type subst node (#162587)
This fixes the transform to use the correct parameter type for an
AssociatedDecl which has been fully specialized.
Instead of using the type for the parameter of the specialized template,
this uses the type of the argument it has been specialized with.
This fixes a regression reported here:
https://github.com/llvm/llvm-project/pull/161029#issuecomment-3375478990
Since this regression was never released, there are no release notes.
Commit: 1244fd24d9b61cfcebc12a05726a8fc82da0109e
https://github.com/llvm/llvm-project/commit/1244fd24d9b61cfcebc12a05726a8fc82da0109e
Author: Anton Shepelev <44649959+amemov at users.noreply.github.com>
Date: 2025-10-08 (Wed, 08 Oct 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/rsqrtf.h
M libc/shared/math/rsqrtf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/rsqrtf.h
M libc/src/math/CMakeLists.txt
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/rsqrtf.cpp
A libc/src/math/rsqrtf.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/RsqrtTest.h
M libc/test/src/math/exhaustive/CMakeLists.txt
A libc/test/src/math/exhaustive/rsqrtf_test.cpp
A libc/test/src/math/rsqrtf_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
M libc/test/src/math/smoke/rsqrtf16_test.cpp
A libc/test/src/math/smoke/rsqrtf_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Add rsqrtf() function (#159615)
Closes #159614
**Changes:**
- Initial implementation of rsqrt for single precision float
**Some small unrelated style changes to this PR (that I missed in my
rsqrtf16 PR):**
- Added extra - to the top comments to make it look nicer in
libc/shared/math/rsqrtf16.h
- Put rsqrtf16 inside of libc/src/__support/math/CMakeLists.txt in
sorted order
- Rearanged libc_math_function rsqrtf16 in Bazel to match alphabetical
order
Commit: 233d1220f8c88b2b0ac8f281f8e63f15216ede38
https://github.com/llvm/llvm-project/commit/233d1220f8c88b2b0ac8f281f8e63f15216ede38
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-08 (Wed, 08 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.h
Log Message:
-----------
[clang-tidy][NFC] Do less unnecessary work in `modernize-deprecated-headers` (#160967)
- `IncludeModernizePPCallbacks` creates temporary vectors when all it
needs is constant arrays
- The header replacement strings are `std::string` when they can just be
`StringRef`
- `IncludeModernizePPCallbacks`'s constructor
1. Takes `LangOptions` by value (the thing is 832 bytes)
2. Stores it, but none of `IncludeModernizePPCallbacks`'s member
functions use it
Commit: e8e7db1aaadeaf6b6a8f0825e6f2be1d7ea72b09
https://github.com/llvm/llvm-project/commit/e8e7db1aaadeaf6b6a8f0825e6f2be1d7ea72b09
Author: Nathan Ridge <zeratul976 at hotmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.h
Log Message:
-----------
[clangd][Tweaks] Improve test infra for testing tweaks with an index (#160391)
Commit: 40ea56fdb485ffff7501c0cea83811d421328449
https://github.com/llvm/llvm-project/commit/40ea56fdb485ffff7501c0cea83811d421328449
Author: Jim Lin <jim at andestech.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/double-arith.ll
Log Message:
-----------
[RISCV] Remove outdated TODO comment in double-arith.ll. NFC.
That have been fixed by
https://github.com/llvm/llvm-project/commit/49660e5565a3b4f1ec29d6c95b6d6576d398eaf1.
Commit: 45f224d3f0c374c3e381c3f9fe19b087ee9b6eb8
https://github.com/llvm/llvm-project/commit/45f224d3f0c374c3e381c3f9fe19b087ee9b6eb8
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/include/__tree
M libcxx/include/map
M libcxx/include/set
Log Message:
-----------
[libc++] Optimize {set,map}::{lower,upper}_bound (#161366)
Apple M4:
```
Benchmark Baseline Candidate Difference % Difference
--------------------------------------------------------------------------------------------- ---------- ----------- ------------ --------------
std::map<int,_int>::lower_bound(key)_(existent)/0 0.01 0.01 -0.00 -25.78
std::map<int,_int>::lower_bound(key)_(existent)/1024 7.94 4.28 -3.66 -46.09
std::map<int,_int>::lower_bound(key)_(existent)/32 2.73 1.69 -1.03 -37.89
std::map<int,_int>::lower_bound(key)_(existent)/8192 11.63 5.52 -6.11 -52.55
std::map<int,_int>::lower_bound(key)_(non-existent)/0 0.28 0.28 -0.00 -1.35
std::map<int,_int>::lower_bound(key)_(non-existent)/1024 17.21 7.63 -9.58 -55.67
std::map<int,_int>::lower_bound(key)_(non-existent)/32 4.71 3.26 -1.45 -30.71
std::map<int,_int>::lower_bound(key)_(non-existent)/8192 26.82 10.58 -16.24 -60.55
std::map<int,_int>::upper_bound(key)_(existent)/0 0.01 0.01 0.00 20.62
std::map<int,_int>::upper_bound(key)_(existent)/1024 7.93 3.61 -4.32 -54.49
std::map<int,_int>::upper_bound(key)_(existent)/32 2.83 1.98 -0.85 -30.01
std::map<int,_int>::upper_bound(key)_(existent)/8192 11.69 5.72 -5.97 -51.06
std::map<int,_int>::upper_bound(key)_(non-existent)/0 0.28 0.28 -0.00 -1.36
std::map<int,_int>::upper_bound(key)_(non-existent)/1024 17.21 8.00 -9.21 -53.53
std::map<int,_int>::upper_bound(key)_(non-existent)/32 4.70 2.93 -1.78 -37.76
std::map<int,_int>::upper_bound(key)_(non-existent)/8192 26.54 11.18 -15.36 -57.89
std::map<std::string,_int>::lower_bound(key)_(existent)/0 0.04 0.04 -0.00 -3.26
std::map<std::string,_int>::lower_bound(key)_(existent)/1024 27.46 26.25 -1.22 -4.43
std::map<std::string,_int>::lower_bound(key)_(existent)/32 19.17 15.71 -3.46 -18.07
std::map<std::string,_int>::lower_bound(key)_(existent)/8192 35.33 35.03 -0.30 -0.84
std::map<std::string,_int>::lower_bound(key)_(non-existent)/0 0.27 0.27 -0.00 -1.45
std::map<std::string,_int>::lower_bound(key)_(non-existent)/1024 24.88 24.17 -0.70 -2.83
std::map<std::string,_int>::lower_bound(key)_(non-existent)/32 11.67 11.63 -0.04 -0.32
std::map<std::string,_int>::lower_bound(key)_(non-existent)/8192 31.81 32.33 0.52 1.64
std::map<std::string,_int>::upper_bound(key)_(existent)/0 0.04 0.04 -0.00 -2.22
std::map<std::string,_int>::upper_bound(key)_(existent)/1024 29.91 26.51 -3.40 -11.38
std::map<std::string,_int>::upper_bound(key)_(existent)/32 19.69 17.74 -1.95 -9.92
std::map<std::string,_int>::upper_bound(key)_(existent)/8192 32.55 35.24 2.69 8.25
std::map<std::string,_int>::upper_bound(key)_(non-existent)/0 0.27 0.27 -0.00 -1.74
std::map<std::string,_int>::upper_bound(key)_(non-existent)/1024 23.87 26.77 2.91 12.18
std::map<std::string,_int>::upper_bound(key)_(non-existent)/32 11.44 11.81 0.37 3.24
std::map<std::string,_int>::upper_bound(key)_(non-existent)/8192 33.02 32.59 -0.43 -1.29
std::set<int>::lower_bound(key)_(existent)/0 0.01 0.01 0.00 0.48
std::set<int>::lower_bound(key)_(existent)/1024 7.83 4.21 -3.62 -46.23
std::set<int>::lower_bound(key)_(existent)/32 2.74 1.68 -1.06 -38.81
std::set<int>::lower_bound(key)_(existent)/8192 22.75 11.12 -11.63 -51.12
std::set<int>::lower_bound(key)_(non-existent)/0 0.28 0.27 -0.01 -3.52
std::set<int>::lower_bound(key)_(non-existent)/1024 17.15 8.40 -8.75 -51.03
std::set<int>::lower_bound(key)_(non-existent)/32 4.63 2.50 -2.13 -46.03
std::set<int>::lower_bound(key)_(non-existent)/8192 28.88 11.05 -17.82 -61.72
std::set<int>::upper_bound(key)_(existent)/0 0.01 0.01 -0.00 -7.79
std::set<int>::upper_bound(key)_(existent)/1024 7.80 3.63 -4.16 -53.42
std::set<int>::upper_bound(key)_(existent)/32 2.81 1.90 -0.91 -32.44
std::set<int>::upper_bound(key)_(existent)/8192 21.93 11.35 -10.58 -48.26
std::set<int>::upper_bound(key)_(non-existent)/0 0.28 0.27 -0.01 -3.81
std::set<int>::upper_bound(key)_(non-existent)/1024 16.76 7.38 -9.38 -55.98
std::set<int>::upper_bound(key)_(non-existent)/32 4.58 3.10 -1.48 -32.31
std::set<int>::upper_bound(key)_(non-existent)/8192 26.95 10.70 -16.25 -60.29
std::set<std::string>::lower_bound(key)_(existent)/0 0.04 0.04 0.00 0.02
std::set<std::string>::lower_bound(key)_(existent)/1024 28.08 27.04 -1.04 -3.71
std::set<std::string>::lower_bound(key)_(existent)/32 17.53 16.94 -0.58 -3.34
std::set<std::string>::lower_bound(key)_(existent)/8192 32.79 33.28 0.49 1.49
std::set<std::string>::lower_bound(key)_(non-existent)/0 0.28 0.28 -0.00 -0.06
std::set<std::string>::lower_bound(key)_(non-existent)/1024 25.23 24.38 -0.85 -3.38
std::set<std::string>::lower_bound(key)_(non-existent)/32 11.45 11.68 0.24 2.07
std::set<std::string>::lower_bound(key)_(non-existent)/8192 32.30 36.80 4.50 13.95
std::set<std::string>::upper_bound(key)_(existent)/0 0.04 0.04 -0.00 -0.14
std::set<std::string>::upper_bound(key)_(existent)/1024 26.71 26.37 -0.34 -1.27
std::set<std::string>::upper_bound(key)_(existent)/32 20.07 19.06 -1.02 -5.06
std::set<std::string>::upper_bound(key)_(existent)/8192 36.69 35.50 -1.19 -3.25
std::set<std::string>::upper_bound(key)_(non-existent)/0 0.28 0.28 -0.00 -0.16
std::set<std::string>::upper_bound(key)_(non-existent)/1024 24.48 24.90 0.42 1.73
std::set<std::string>::upper_bound(key)_(non-existent)/32 11.68 11.77 0.09 0.77
std::set<std::string>::upper_bound(key)_(non-existent)/8192 33.16 34.12 0.96 2.89
```
Commit: 1760206383fcb93bf97267a2a7a6bb90721d7fda
https://github.com/llvm/llvm-project/commit/1760206383fcb93bf97267a2a7a6bb90721d7fda
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/include/__atomic/atomic.h
M libcxx/include/__atomic/atomic_flag.h
M libcxx/include/__atomic/atomic_sync.h
M libcxx/include/__chrono/file_clock.h
M libcxx/include/__configuration/availability.h
M libcxx/include/__filesystem/directory_entry.h
M libcxx/include/__filesystem/directory_iterator.h
M libcxx/include/__filesystem/filesystem_error.h
M libcxx/include/__filesystem/operations.h
M libcxx/include/__filesystem/path.h
M libcxx/include/__filesystem/path_iterator.h
M libcxx/include/__filesystem/recursive_directory_iterator.h
M libcxx/include/__filesystem/u8path.h
M libcxx/include/__stop_token/atomic_unique_lock.h
M libcxx/include/__stop_token/stop_callback.h
M libcxx/include/__stop_token/stop_source.h
M libcxx/include/__stop_token/stop_state.h
M libcxx/include/__stop_token/stop_token.h
M libcxx/include/__thread/jthread.h
M libcxx/include/__thread/poll_with_backoff.h
M libcxx/include/barrier
M libcxx/include/condition_variable
M libcxx/include/fstream
M libcxx/include/latch
M libcxx/include/semaphore
M libcxx/include/version
M libcxx/test/libcxx/atomics/atomics.syn/wait.issue_85107.pass.cpp
M libcxx/test/libcxx/diagnostics/filesystem.nodiscard.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/class.path/path.member/path.native.obs/string_alloc.pass.cpp
M libcxx/test/libcxx/input.output/filesystems/convert_file_time.pass.cpp
M libcxx/test/libcxx/iterators/iterator.requirements/iterator.assoc.types/iterator.traits/legacy_bidirectional_iterator.compile.pass.cpp
M libcxx/test/libcxx/iterators/iterator.requirements/iterator.assoc.types/iterator.traits/legacy_forward_iterator.compile.pass.cpp
M libcxx/test/libcxx/iterators/iterator.requirements/iterator.assoc.types/iterator.traits/legacy_input_iterator.compile.pass.cpp
M libcxx/test/libcxx/iterators/iterator.requirements/iterator.assoc.types/iterator.traits/legacy_iterator.compile.pass.cpp
M libcxx/test/libcxx/iterators/iterator.requirements/iterator.assoc.types/iterator.traits/legacy_random_access_iterator.compile.pass.cpp
R libcxx/test/libcxx/thread/atomic.availability.verify.cpp
R libcxx/test/libcxx/thread/barrier.availability.verify.cpp
R libcxx/test/libcxx/thread/latch.availability.verify.cpp
R libcxx/test/libcxx/thread/semaphore.availability.verify.cpp
M libcxx/test/libcxx/thread/thread.stoptoken/atomic_unique_lock.pass.cpp
M libcxx/test/libcxx/vendor/apple/disable-availability.sh.cpp
M libcxx/test/std/atomics/atomics.ref/notify_all.pass.cpp
M libcxx/test/std/atomics/atomics.ref/notify_one.pass.cpp
M libcxx/test/std/atomics/atomics.ref/wait.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/notify_all.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/notify_one.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/atomics.types.float/wait.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/general.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.generic/pointer.compile.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_all.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_notify_one.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait.pass.cpp
M libcxx/test/std/atomics/atomics.types.operations/atomics.types.operations.wait/atomic_wait_explicit.pass.cpp
M libcxx/test/std/containers/iterator.rel_ops.compile.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/filebuf.members/open_path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.cons/path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/fstream.members/open_path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.cons/path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/open_path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.cons/path.pass.cpp
M libcxx/test/std/input.output/file.streams/fstreams/ofstream.members/open_path.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_entry/lit.local.cfg
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/copy.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/copy_assign.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/ctor.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/default_ctor.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/equal.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/increment.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/move.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.members/move_assign.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/directory_iterator.nonmembers/begin_end.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/iterator_concept_conformance.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/range_concept_conformance.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/class.directory_iterator/types.pass.cpp
M libcxx/test/std/input.output/filesystems/class.filesystem_error/filesystem_error.members.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.itr/iterator.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.append.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/copy.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/move.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.assign/source.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.charconv.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.compare.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.concat.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/copy.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/default.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/move.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.construct/source.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.decompose/empty.verify.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.decompose/path.decompose.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_relative_and_proximate.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.generic.obs/generic_string_alloc.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.generic.obs/named_overloads.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.hash_enabled.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/clear.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/make_preferred.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/remove_filename.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/replace_extension.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/replace_filename.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.modifiers/swap.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.native.obs/c_str.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.native.obs/named_overloads.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.native.obs/native.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.member/path.native.obs/operator_string.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/append_op.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/append_op.verify.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/comparison_ops.verify.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/path.factory.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/path.io.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/path.io.unicode_bug.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/path.nonmember/swap.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/range_concept_conformance.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/class.path/synop.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/cache_refresh_iter.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/range_concept_conformance.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/copy.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/copy_assign.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/ctor.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/depth.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/disable_recursion_pending.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/equal.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/increment.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/move.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/move_assign.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/pop.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.members/recursion_pending.pass.cpp
M libcxx/test/std/input.output/filesystems/class.rec.dir.itr/rec.dir.itr.nonmembers/begin_end.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.enum/enum.path.format.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.filesystem.synopsis/enable_borrowed_range.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.filesystem.synopsis/enable_view.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.filesystem.synopsis/file_time_type.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.filesystem.synopsis/file_time_type_resolution.compile.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.absolute/absolute.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.canonical/canonical.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy/copy.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_large.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_file/copy_file_procfs.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.copy_symlink/copy_symlink.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_directories/create_directories.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_directory/create_directory.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_directory/create_directory_with_attributes.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_directory_symlink/create_directory_symlink.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_hard_link/create_hard_link.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.create_symlink/create_symlink.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.current_path/current_path.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.equivalent/equivalent.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.exists/exists.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.file_size/file_size.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.hard_lk_ct/hard_link_count.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_block_file/is_block_file.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_char_file/is_character_file.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_directory/is_directory.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_empty/is_empty.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_fifo/is_fifo.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_other/is_other.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_regular_file/is_regular_file.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_socket/is_socket.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.is_symlink/is_symlink.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.permissions/permissions.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.proximate/proximate.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.read_symlink/read_symlink.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.relative/relative.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.remove/remove.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.remove_all/remove_all.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.remove_all/toctou.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.rename/rename.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.resize_file/resize_file.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.space/space.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.status/status.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.status_known/status_known.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.symlink_status/symlink_status.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.temp_dir_path/temp_directory_path.pass.cpp
M libcxx/test/std/input.output/filesystems/fs.op.funcs/fs.op.weakly_canonical/weakly_canonical.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/bool.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/double.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/float.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/int.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/long.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/long_double.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/long_long.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/pointer.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/short.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/unsigned_int.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/unsigned_long.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/unsigned_long_long.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream.formatted.arithmetic/unsigned_short.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.formatted/istream_extractors/streambuf.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get_chart.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get_pointer_size.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get_pointer_size_chart.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get_streambuf.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/get_streambuf_chart.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/getline_pointer_size.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/getline_pointer_size_chart.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/ignore.char_type.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/ignore.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/peek.pass.cpp
M libcxx/test/std/input.output/iostream.format/input.streams/istream.unformatted/read.pass.cpp
M libcxx/test/std/input.output/iostreams.base/ios.base/ios.types/ios_Init/ios_Init.multiple.pass.cpp
M libcxx/test/std/iterators/iterator.primitives/iterator.traits/cxx20_iterator_traits.compile.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array.pass.cpp
M libcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete.pass.cpp
M libcxx/test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/barrier.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/filesystem.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/latch.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/semaphore.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/stop_token.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/thread.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long.pass.cpp
M libcxx/test/std/thread/futures/futures.async/async_race.38682.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_drop.pass.cpp
M libcxx/test/std/thread/thread.barrier/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.barrier/completion.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_for_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_token_pred.pass.cpp
M libcxx/test/std/thread/thread.condition/thread.condition.condvarany/wait_until_token_pred.pass.cpp
M libcxx/test/std/thread/thread.jthread/assign.move.pass.cpp
M libcxx/test/std/thread/thread.jthread/cons.default.pass.cpp
M libcxx/test/std/thread/thread.jthread/cons.func.token.pass.cpp
M libcxx/test/std/thread/thread.jthread/cons.move.pass.cpp
M libcxx/test/std/thread/thread.jthread/copy.delete.compile.pass.cpp
M libcxx/test/std/thread/thread.jthread/detach.pass.cpp
M libcxx/test/std/thread/thread.jthread/dtor.pass.cpp
M libcxx/test/std/thread/thread.jthread/get_id.pass.cpp
M libcxx/test/std/thread/thread.jthread/get_stop_source.pass.cpp
M libcxx/test/std/thread/thread.jthread/get_stop_token.pass.cpp
M libcxx/test/std/thread/thread.jthread/hardware_concurrency.pass.cpp
M libcxx/test/std/thread/thread.jthread/join.deadlock.pass.cpp
M libcxx/test/std/thread/thread.jthread/join.pass.cpp
M libcxx/test/std/thread/thread.jthread/joinable.pass.cpp
M libcxx/test/std/thread/thread.jthread/nodiscard.verify.cpp
M libcxx/test/std/thread/thread.jthread/request_stop.pass.cpp
M libcxx/test/std/thread/thread.jthread/swap.free.pass.cpp
M libcxx/test/std/thread/thread.jthread/swap.member.pass.cpp
M libcxx/test/std/thread/thread.jthread/type.compile.pass.cpp
M libcxx/test/std/thread/thread.latch/arrive_and_wait.pass.cpp
M libcxx/test/std/thread/thread.latch/count_down.pass.cpp
M libcxx/test/std/thread/thread.latch/try_wait.pass.cpp
M libcxx/test/std/thread/thread.semaphore/acquire.pass.cpp
M libcxx/test/std/thread/thread.semaphore/binary.pass.cpp
M libcxx/test/std/thread/thread.semaphore/lost_wakeup.pass.cpp
M libcxx/test/std/thread/thread.semaphore/release.pass.cpp
M libcxx/test/std/thread/thread.semaphore/timed.pass.cpp
M libcxx/test/std/thread/thread.semaphore/try_acquire.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopcallback/cons.const.token.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopcallback/cons.rvalue.token.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopcallback/copy.move.compile.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopcallback/ctad.compile.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopcallback/dtor.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/assign.copy.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.copy.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.default.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.move.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/cons.nostopstate.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/equals.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/get_token.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/move.copy.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/nodiscard.verify.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/request_stop.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/stop_possible.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/stop_requested.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/swap.free.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stopsource/swap.member.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/assign.copy.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/assign.move.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.copy.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.default.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/cons.move.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/equals.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/nodiscard.verify.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/stop_possible.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/stop_requested.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/swap.free.pass.cpp
M libcxx/test/std/thread/thread.stoptoken/stoptoken/swap.member.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.file/now.pass.cpp
M libcxx/test/std/time/time.clock/time.clock.file/to_from_sys.pass.cpp
M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
M libcxx/test/std/utilities/format/format.range/format.range.fmtkind/format_kind.compile.pass.cpp
M libcxx/test/support/make_test_thread.h
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
[libc++] Remove availability annotations that aren't required anymore (#161640)
Apple dropped support for some older platforms, so we can also remove
the annotations for them.
See https://developer.apple.com/support/xcode/ for the supported
versions.
Commit: 7f8d9b0bf9dd46279f4481583e5c128c1fa57d7e
https://github.com/llvm/llvm-project/commit/7f8d9b0bf9dd46279f4481583e5c128c1fa57d7e
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode][x86] Merge interp__builtin_ia32_pmul/interp__builtin_ia32_pmadd implementations (#162504)
The interp__builtin_ia32_pmadd implementation can be correctly used for
PMULDQ/PMULUDQ evaluation as well as we're ignoring the "hi" integers in
each pair
I've replaced the PMULDQ/PMULUDQ evaluation with callbacks and renamed
interp__builtin_ia32_pmadd to interp__builtin_ia32_pmul for consistency
Commit: fb37929414abe02a5eefa040a0e24c0ea965ffdb
https://github.com/llvm/llvm-project/commit/fb37929414abe02a5eefa040a0e24c0ea965ffdb
Author: Jim Lin <jim at andestech.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
Log Message:
-----------
[clang] Remove duplicated 'FunctionType =' in assignment. NFC.
Commit: cc1ca591a4bb2207ebe8b8f400ce0dbf3df43ff7
https://github.com/llvm/llvm-project/commit/cc1ca591a4bb2207ebe8b8f400ce0dbf3df43ff7
Author: Mészáros Gergely <gergely.meszaros at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
M llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
Log Message:
-----------
[GlobalIsel] Add failure memory order to LegalityQuery (NFC) (#162284)
The `cmpxchg` instruction has two memory orders, one for success and one
for failure.
Prior to this patch `LegalityQuery` only exposed a single memory order,
that of the success case. This meant that it was not generally possible
to legalize `cmpxchg` instructions based on their memory orders.
Add a `FailureOrdering` field to `LegalityQuery::MemDesc`; it is only
set for `cmpxchg` instructions, otherwise it is `NotAtomic`. I didn't
rename `Ordering` to `SuccessOrdering` or similar to avoid breaking
changes for out of tree targets.
The new field does not increase `sizeof(MemDesc)`, it falls into
previous padding bits due to alignment, so I'd expect there to be no
performance impact for this change.
Verified no breakage via check-llvm in build with AMDGPU, AArch64, and X86 targets
enabled.
Commit: b32710a56b4742ec393a2a5df97346e9668e9887
https://github.com/llvm/llvm-project/commit/b32710a56b4742ec393a2a5df97346e9668e9887
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/MIR2Vec.h
M llvm/lib/CodeGen/MIR2Vec.cpp
M llvm/test/CodeGen/MIR2Vec/vocab-error-handling.ll
M llvm/unittests/CodeGen/MIR2VecTest.cpp
Log Message:
-----------
[MIR2Vec] Added create factory methods for Vocabulary (#162569)
Added factory methods for vocabulary creation. This also would fix UB
issue introduced by #161713
Commit: 53aad35208d00c8382b62b1d23005938aea77469
https://github.com/llvm/llvm-project/commit/53aad35208d00c8382b62b1d23005938aea77469
Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.h
M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
A llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
M llvm/lib/Target/AMDGPU/CMakeLists.txt
A llvm/test/CodeGen/AMDGPU/amdgpu-simplify-uniform-waterfall.ll
A llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
A llvm/test/CodeGen/AMDGPU/amdgpu-uniform-temporal-divergence.ll
Log Message:
-----------
[AMDGPU] Introduce "amdgpu-uniform-intrinsic-combine" pass to combine uniform AMDGPU lane Intrinsics. (#116953)
This pass introduces optimizations for AMDGPU intrinsics by leveraging
the uniformity of their arguments. When an intrinsic's arguments are
detected as uniform, redundant computations are eliminated, and the
intrinsic calls are simplified accordingly.
By utilizing the UniformityInfo analysis, this pass identifies cases
where intrinsic calls are uniform across all lanes, allowing
transformations that reduce unnecessary operations and improve the IR's
efficiency.
These changes enhance performance by streamlining intrinsic usage in
uniform scenarios without altering the program's semantics.
For background, see PR #99878
Commit: 5f3714c2214c8f08d2908e140f3c934406ade7d6
https://github.com/llvm/llvm-project/commit/5f3714c2214c8f08d2908e140f3c934406ade7d6
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
Log Message:
-----------
[gn build] Port 53aad35208d0
Commit: dfa8732d050dea1fd213c7a68a17501febc80794
https://github.com/llvm/llvm-project/commit/dfa8732d050dea1fd213c7a68a17501febc80794
Author: Marco Elver <elver at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/docs/AllocToken.rst
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/test/CodeGen/alloc-token-lower.c
A clang/test/CodeGen/alloc-token-nonlibcalls.c
M clang/test/CodeGen/alloc-token.c
M clang/test/CodeGenCXX/alloc-token-pointer.cpp
M clang/test/CodeGenCXX/alloc-token.cpp
Log Message:
-----------
[AllocToken, Clang] Infer type hints from sizeof expressions and casts (#156841)
For the AllocToken pass to accurately calculate token ID hints, we
need to attach `!alloc_token` metadata for allocation calls.
Unlike new expressions, untyped allocation calls (like `malloc`,
`calloc`, `::operator new(..)`, `__builtin_operator_new`, etc.) have no
syntactic type associated with them. For -fsanitize=alloc-token, type
hints are sufficient, and we can attempt to infer the type based on
common idioms.
When encountering allocation calls (with `__attribute__((malloc))` or
`__attribute__((alloc_size(..))`), attach `!alloc_token` by inferring
the allocated type from (a) sizeof argument expressions such as
`malloc(sizeof(MyType))`, and (b) casts such as `(MyType*)malloc(4096)`.
Note that non-standard allocation functions with these attributes are
not instrumented by default. Use `-fsanitize-alloc-token-extended` to
instrument them as well.
Link: https://discourse.llvm.org/t/rfc-a-framework-for-allocator-partitioning-hints/87434
---
This change is part of the following series:
1. https://github.com/llvm/llvm-project/pull/160131
2. https://github.com/llvm/llvm-project/pull/156838
3. https://github.com/llvm/llvm-project/pull/162098
4. https://github.com/llvm/llvm-project/pull/162099
5. https://github.com/llvm/llvm-project/pull/156839
6. https://github.com/llvm/llvm-project/pull/156840
7. https://github.com/llvm/llvm-project/pull/156841
8. https://github.com/llvm/llvm-project/pull/156842
Commit: 446d9505246227b514aa6359f17106e1a9c65897
https://github.com/llvm/llvm-project/commit/446d9505246227b514aa6359f17106e1a9c65897
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/include/__hash_table
M libcxx/include/__memory/shared_ptr.h
M libcxx/include/__memory/uninitialized_algorithms.h
M libcxx/include/__utility/scope_guard.h
M libcxx/include/__vector/vector_bool.h
M libcxx/include/deque
M libcxx/include/forward_list
M libcxx/include/future
M libcxx/include/list
M libcxx/include/string
M libcxx/include/valarray
M libcxx/src/filesystem/error.h
M libcxx/src/filesystem/format_string.h
M libcxx/src/locale.cpp
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/TestForwardListFromStdModule.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
Log Message:
-----------
[libc++] Use std::__{scope,exception}_guard throughout the code base (#161322)
This simplifies the code quite a bit and seems to improve code size
slightly in some cases.
Commit: 28b7f669e5c6427402f36c5a08def4b34089c7cd
https://github.com/llvm/llvm-project/commit/28b7f669e5c6427402f36c5a08def4b34089c7cd
Author: Kees Cook <kees at kernel.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/test/Instrumentation/SanitizerCoverage/missing_dbg.ll
Log Message:
-----------
[sancov] Fix stack-depth tracking to use debug locations (#162428)
As fixed in commits llvm/llvm-project at 913f7e9,
llvm/llvm-project at 4a8b124, and llvm/llvm-project at 4eef2e3, also fix the
stack-depth tracking code to use InstrumentationIRBuilder, and set the
Call's Debug location to EntryLoc.
https://github.com/ClangBuiltLinux/linux/issues/2125
cc @nathanchance @melver @JustinStitt @bwendling
Commit: 74acfb2059ba7f82902c68170962cd136ebf56ca
https://github.com/llvm/llvm-project/commit/74acfb2059ba7f82902c68170962cd136ebf56ca
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.h
Log Message:
-----------
[AArch64][SVE] Share code across SVE prologue/epilogue implementations (NFCI) (#162253)
This patch refactors the SVE prologue and epilogue to use a common code
path for both the "Default" and "Split" SVE layouts.
This also factors some code into common helpers, such as:
- `partitionSVECS()` (which returns the MI ranges of the PPR/ZPR
callee-saves)
- `getSVEStackFrameSizes()` (which returns the sizes of the PPR/ZPR
locals/callee-saves)
Since most split-SVE layout code is now shared with the default path,
there should be much less code that is only tested when split-SVE is
enabled.
Commit: 9f1e2715754b24e1d84088fcf046eb5273ec3227
https://github.com/llvm/llvm-project/commit/9f1e2715754b24e1d84088fcf046eb5273ec3227
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for 1244fd24d9b61cfcebc12a05726a8fc82da0109e
Commit: a5d37d5aac543e34bfc9dafdcd5dcaa1e33dd11e
https://github.com/llvm/llvm-project/commit/a5d37d5aac543e34bfc9dafdcd5dcaa1e33dd11e
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Target/LLVMIR/nvvm/convert_fp6x2.mlir
M mlir/test/Target/LLVMIR/nvvm/convert_fp8x2.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Update convert Ops to use builtin types (#159704)
This change updates the `convert.f32x2.to.f6x2`,
`convert.f32x2.to.f8x2`, `convert.f16x2.to.f8x2`, and
`convert.bf16x2.to.f8x2` Ops to use builtin types for the destination
types as a `TypeAttr` instead of custom enums.
The corresponding tests are updated to reflect the changes in the
assembly format.
Commit: 3e64db583d1120f31a52d87a1d414c41e7e3d5cb
https://github.com/llvm/llvm-project/commit/3e64db583d1120f31a52d87a1d414c41e7e3d5cb
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[ConstantFolding] Support ptrtoaddr in cast folds (#162480)
We can support the same folds for as for ptrtoint. For the cast pair
fold we just need to use the address type instead. The gep based folds
were already operating on the address (aka index) width anyway.
Commit: aeed686aab8746e8e794f97c895727fc9e51731e
https://github.com/llvm/llvm-project/commit/aeed686aab8746e8e794f97c895727fc9e51731e
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-exegesis/AArch64/no-aliasing-ld-str.s
Log Message:
-----------
Revert "[llvm-exegesis] Disable load store aliasing test"
This reverts commit 4efe170d858eb54432f520abb4e7f0086236748b.
Not because I know it's working on AArch64 SVE, but because I
cannot reproduce it even on the same machine.
So in the hopes that it was a disk issue, something temporary,
I'm going to enable it again. If it fails again maybe it'll
show some sort of pattern or what I've missed to reproduce it.
Commit: daf81a6c0849c797cb28a505826ec22c8c7e4db6
https://github.com/llvm/llvm-project/commit/daf81a6c0849c797cb28a505826ec22c8c7e4db6
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
M llvm/test/Transforms/DFAJumpThreading/max-path-length.ll
Log Message:
-----------
[DFAJumpThreading] Pretty print anonymous blocks (#162607)
We previously printed the address of anonymous blocks, which makes no
sense for debugging. This patch ensures consistency with the IR printer.
Commit: 9abb344e572e165f01d7789522113d9a4d8b0ca6
https://github.com/llvm/llvm-project/commit/9abb344e572e165f01d7789522113d9a4d8b0ca6
Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Darwin.cpp
Log Message:
-----------
[Darwin][Driver] Avoid duplicate -lc++ with -fsanitize=fuzzer (#161304)
On Darwin, duplicate `-l` options cause a warning to be printed.
Invoking clang as clang++ and using `-fsanitize=fuzzer` will cause `-lc++`
to be passed twice to the linker, causing a warning.
i.e. AddCXXStdlibLibArgs is called twice in this case:
1)
https://github.com/llvm/llvm-project/blob/19c4e86f3e8582c3f087a9fec5ac036838e58ec4/clang/lib/Driver/ToolChains/Darwin.cpp#L743
because `ShouldLinkCXXStdlib(Args)` is true.
2) The subject of this PR
We now skip adding the -lc++ argument if `ShouldLinkCXXStdlib(Args)`
(since that means the other path already added it).
rdar://136431775
Commit: 69f2de1996e238cd1fb6708444b3209538f55c59
https://github.com/llvm/llvm-project/commit/69f2de1996e238cd1fb6708444b3209538f55c59
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[InstCombine] Add test for inttoptr of ptrtoaddr (NFC)
And document that we're intentionally not folding this case.
For inttoptr of ptrtoint this is controlled by the
-disable-i2p-p2i-opt flag, but I don't think there is a need to
replicate this known unsound fold for ptrtoaddr, given their
different usage characteristics.
Commit: 2a02d57efb22956665d91b68de6b3f8d58db9cda
https://github.com/llvm/llvm-project/commit/2a02d57efb22956665d91b68de6b3f8d58db9cda
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_ld1_vnum.c
M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_st1_vnum.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ld1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_ldnt1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_st1.c
M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_stnt1.c
M llvm/include/llvm/IR/Intrinsics.td
A llvm/test/Transforms/LICM/vector-intrinsics.ll
M llvm/test/Transforms/LoopVectorize/RISCV/veclib-function-calls.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/AArch64/expand-exp.ll
Log Message:
-----------
[IR] Mark vector intrinsics speculatable (#162334)
The vector intrinsics in question have no undefined behavior, and have
no other effect besides returning the result: they should hence be
marked speculatable.
Commit: e43da72b018ccbb175655603865e3b6980bb2b18
https://github.com/llvm/llvm-project/commit/e43da72b018ccbb175655603865e3b6980bb2b18
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/Transforms/GVN/assume-equal.ll
Log Message:
-----------
[GVN] Add additional pointer replacement tests (NFC)
Cover the ptrtoint special case and add ptrtoaddr test.
Commit: 4030b276f7e59b66caa483ed4cecf05729611c3c
https://github.com/llvm/llvm-project/commit/4030b276f7e59b66caa483ed4cecf05729611c3c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Analysis/Loads.cpp
M llvm/test/Transforms/GVN/assume-equal.ll
Log Message:
-----------
[Loads] Handle ptrtoaddr in isPointerUseReplaceable()
Unlike the ptrtoint case, this is actually correct for ptrtoaddr.
Commit: 79f102f33938b281b690637003f536755aa265ca
https://github.com/llvm/llvm-project/commit/79f102f33938b281b690637003f536755aa265ca
Author: Mary Kassayova <mary.kassayova at arm.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/test/DebugInfo/AArch64/sve-vector-types.c
M llvm/include/llvm/IR/DIBuilder.h
M llvm/lib/IR/DIBuilder.cpp
Log Message:
-----------
[clang][DWARF] Add DW_AT_bit_stride for SVE predicate types (#161409)
Fixes #159285
Commit: ad64bff35d332f4c61d33838d6ef2d34a1c4583d
https://github.com/llvm/llvm-project/commit/ad64bff35d332f4c61d33838d6ef2d34a1c4583d
Author: Vlad Lazar <lazar_2004 at list.ru>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
Log Message:
-----------
[mlir][emitc] Update description for `ExpressionOp` (NFC) (#156554)
Since the `emitc.expression` was recently updated, the documentation has
been changed
Commit: 631f2608cddf0f622b0936c95763fccedf641399
https://github.com/llvm/llvm-project/commit/631f2608cddf0f622b0936c95763fccedf641399
Author: Ilya Biryukov <ibiryukov at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/AST/TypeBase.h
Log Message:
-----------
[AST] [NFC] Remove unused field from SubstTemplateTypeParmPackType
The field has been moved to the base class, but I forgot to actually
delete it in the derived class.
Commit: 299761113d13eb185e51126be21412a9364b28cf
https://github.com/llvm/llvm-project/commit/299761113d13eb185e51126be21412a9364b28cf
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/utils/lit/tests/xunit-output-report-failures-only.py
Log Message:
-----------
[lit][test] Relax time regex in xunit failure test
We don't care how long any of this took. Due to OS scheduling,
one or more parts of the test may be delayed for any amount of
time.
Commit: 443d0272385aa950e4d296e7b2ba75f933daa6ad
https://github.com/llvm/llvm-project/commit/443d0272385aa950e4d296e7b2ba75f933daa6ad
Author: Rajat Bajpai <rbajpai at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/CodeGen/NVPTX/tcgen05-alloc.ll
M llvm/test/CodeGen/NVPTX/tcgen05-commit.ll
M llvm/test/CodeGen/NVPTX/tcgen05-cp.ll
M llvm/test/CodeGen/NVPTX/tcgen05-shift.ll
Log Message:
-----------
[NFC][NVPTX-Tests] Split tcgen05 cta group tests (#162597)
This change splits cta_group::1 and cta_group::2 into two separate
functions because they are not supported inside a single function. ptxas
from 13.0 release onwards emits an error message for this case.
Commit: fdff191bbe82286d1ec34832bb0d729ebcf23c18
https://github.com/llvm/llvm-project/commit/fdff191bbe82286d1ec34832bb0d729ebcf23c18
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/Hexagon/Hexagon.td
M llvm/lib/Target/Hexagon/HexagonPatterns.td
M llvm/lib/Target/Hexagon/HexagonSubtarget.h
M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
M llvm/test/CodeGen/Hexagon/fmul-v67.ll
Log Message:
-----------
[Hexagon] Use fast-math flags (#162274)
Use fast-math flag `afn` for `fmul` and remove UseUnsafeMath feature,
users now should use fast-math flags only, `unsafe-fp-math` attribute
support will be removed in future. Hopefully `afn` is the right option
This is the Hexagon part.
Commit: bcb60c24cef4c3e140e586569d0f47c074b04d89
https://github.com/llvm/llvm-project/commit/bcb60c24cef4c3e140e586569d0f47c074b04d89
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
R llvm/test/Instrumentation/AddressSanitizer/alloca-offset-lifetime.ll
Log Message:
-----------
[AddressSanitizer] Delete outdated test (NFC)
lifetime intrinsics are now restricted to alloca arguments, so
the scenario that this is testing for cannot occur anymore. The
lifetime intrinsics in this test actually get completely removed
by the IR auto-upgrade.
Commit: 6d905e41bc82f1a6ae88484a700099fbe26460b6
https://github.com/llvm/llvm-project/commit/6d905e41bc82f1a6ae88484a700099fbe26460b6
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/trip-count-minmax.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
Log Message:
-----------
[SCEV] Use getConstantMultiple in to get divisibility info from guards. (#162617)
Simplify and generalize the code to get a common constant multiple for
expressions when collecting guards, replacing the manual implementation.
Split off from https://github.com/llvm/llvm-project/pull/160012.
PR: https://github.com/llvm/llvm-project/pull/162617
Commit: d6d5026b5107b940d7a7853ab16480f83c14384d
https://github.com/llvm/llvm-project/commit/d6d5026b5107b940d7a7853ab16480f83c14384d
Author: A. Jiang <de34 at live.cn>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/include/__algorithm/find.h
Log Message:
-----------
[libc++] Avoid transitive inclusion for `<__algorithm/find.h>` (#162508)
Currently, `size_t` and `__libcpp_is_constant_evaluated` are obtained by
transitive inclusion in `<__algorithm/find.h>` when `<cwchar>` is not
included. This broke module build when `_LIBCPP_HAS_WIDE_CHARACTERS` is
`1` and caused CI failure. We should explicitly include the
corresponding internal headers.
Commit: 22b79fb3b9d051a83520eaa9d03abad782697448
https://github.com/llvm/llvm-project/commit/22b79fb3b9d051a83520eaa9d03abad782697448
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/MachinePipeliner.cpp
Log Message:
-----------
[MachinePipeliner] Limit the number of stores in BB (#154940)
The dependency analysis in MachinePipeliner checks dependencies for
every pair of store instructions in the target basic block. This means
the time complexity of the analysis is `O(N^2)`, where `N` is the number
of store instructions. Therefore, compilation time can become
significantly long when there are too many store instructions.
To mitigate it, this patch introduces logic to count the number of store
instructions at the beginning of the pipeliner and bail out if it
exceeds the threshold. The default value if the threshold should be
large enough. Thus, in most practical cases where the pipeliner is
beneficial, this patch should not cause any performance regression.
Related issue: #150262
Commit: f9b371d6737eddd2d491d74a3939e1069628ec50
https://github.com/llvm/llvm-project/commit/f9b371d6737eddd2d491d74a3939e1069628ec50
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-exegesis/AArch64/no-aliasing-ld-str.s
Log Message:
-----------
[llvm-exegis][test] Ignore file path in no-aliasing-ld-str.s
This test failed on a buildbot where the path happened to contain
"ld2":
/home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build2_hwasan/test/tools/llvm-exegesis/AArch64/Output/no-aliasing-ld-str.s.tmp.obj: file format elf64-littleaarch64
To fix this, make lit consume a line past this one and
do the check-not after that point.
Commit: 825d459ac1aeda2d9dba01de058d92e7f17395c0
https://github.com/llvm/llvm-project/commit/825d459ac1aeda2d9dba01de058d92e7f17395c0
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/Instrumentation/AddressSanitizer/calls-only-smallfn.ll
M llvm/test/Instrumentation/AddressSanitizer/calls-only.ll
Log Message:
-----------
[AddressSanitizer] Make tests independent of variable numbers (NFC)
Commit: b6bf196cdc6a71955dd90968ab96667899cebdb8
https://github.com/llvm/llvm-project/commit/b6bf196cdc6a71955dd90968ab96667899cebdb8
Author: Twice <twice at apache.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/lib/Bindings/Python/Globals.h
M mlir/lib/Bindings/Python/Pass.cpp
Log Message:
-----------
[MLIR][Python] Make the TypeID allocator globally defined in `PassManager.add` (#162594)
Previously, each time we called `PassManager.add(python_pass_callable)`,
a new `TypeID` allocator was created and never released afterward. This
approach could potentially lead to some issues. In this PR, we introduce
a global `TypeIDAllocator` that is shared across all `add` calls to
allocate IDs.
Commit: f8dd127842419d85c41674699fcd8d3e6db622a7
https://github.com/llvm/llvm-project/commit/f8dd127842419d85c41674699fcd8d3e6db622a7
Author: Gábor Horváth <xazax.hun at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
Log Message:
-----------
[clang][analyzer] Remove a copy in a loop in VAListChecker (#162620)
Co-authored-by: Gabor Horvath <gaborh at apple.com>
Commit: 825de7804fa6dcf374e3565de3251a27903e703d
https://github.com/llvm/llvm-project/commit/825de7804fa6dcf374e3565de3251a27903e703d
Author: Max Desiatov <m_desiatov at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/source/Target/StructuredDataPlugin.cpp
Log Message:
-----------
Fix comment typo in `StructuredDataPlugin.cpp` (#162637)
`structured-data ommand` -> `structured-data command`
Commit: 70b19a8ad3e22c581313a8149052004ffa890a93
https://github.com/llvm/llvm-project/commit/70b19a8ad3e22c581313a8149052004ffa890a93
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPSPV.cpp
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HIPUtility.h
M clang/test/Driver/hip-toolchain-no-rdc.hip
M clang/test/Driver/spirv-amd-toolchain.c
Log Message:
-----------
[HIP][SPIRV] Create an intermediate file for the llvm-link output (#162096)
Before this patch we had:
> clang -cc1 source.c -o bitcode.bc
> llvm-link -o a.out bitcode.bc
> llvm-spirv -o a.out a.out
Now we have:
> clang -cc1 source.c -o bitcode.bc
> llvm-link -o a-linked.bc bitcode.bc
> llvm-spirv -o a.out a-linked.bc
Co-authored-by: Manuel Carrasco <macarras at amd.com>
Commit: d12b0e25392e2cc91cc7a8218989cba0cb952719
https://github.com/llvm/llvm-project/commit/d12b0e25392e2cc91cc7a8218989cba0cb952719
Author: Twice <twice at apache.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/include/mlir-c/Pass.h
M mlir/lib/Bindings/Python/Pass.cpp
M mlir/lib/CAPI/IR/Pass.cpp
M mlir/test/python/pass_manager.py
Log Message:
-----------
[MLIR][Python] Expose `PassManager::enableStatistics` to CAPI and Python (#162591)
`PassManager::enableStatistics` seems currently missing in both C API
and Python bindings. So here we added them in this PR, which includes
the `PassDisplayMode` enum type and the `EnableStatistics` method.
Commit: 51db3c9bd4a20edd6c11e8f96304ebbbfcbadce0
https://github.com/llvm/llvm-project/commit/51db3c9bd4a20edd6c11e8f96304ebbbfcbadce0
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-exegesis/AArch64/no-aliasing-ld-str.s
Log Message:
-----------
Reland "[llvm-exegesis] Disable load store aliasing test"
This reverts commit aeed686aab8746e8e794f97c895727fc9e51731e.
The test is no longer causing llvm-objdump to crash, but we're
getting different errors from llvm-exegis, like:
```
FMOVWSr: Not all operands were initialized by the snippet generator for UMOVvi32 opcode.
FMOVWSr: Not all operands were initialized by the snippet generator for FCVTZUSWDri opcode.
```
Commit: 121026b186687ea00e5f792ea84d43b09597088a
https://github.com/llvm/llvm-project/commit/121026b186687ea00e5f792ea84d43b09597088a
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/include/flang/Lower/AbstractConverter.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenACC.cpp
A flang/test/Lower/OpenACC/acc-data-operands-remapping.f90
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
M flang/test/Lower/OpenACC/acc-loop-exit.f90
M flang/test/Lower/OpenACC/acc-private.f90
M flang/test/Lower/OpenACC/do-loops-to-acc-loops.f90
Log Message:
-----------
[flang][openacc] map data operand results to symbols inside compute region (#162306)
Variable references inside OpenACC compute and loop region were
currently always lowered to usages of the same SSA values than in the
host thread, even for variables that appear in data clauses and for
which acc data operations are created.
This makes it a non-trivial task to identify implicit data usages vs
usage of data appearing in clauses because the SSA addresses used in the
region may have a non-trivial SSA relationship with the SSA addresses
used as inputs of the data operations, especially after CSE runs that
may merge component or array element addressing operations with similar
addressing on the host thread (fir.coordinate/hlfir.designate).
This patch updates OpenACC lowering to remap the Symbol that appear in
data clauses to the related acc data operation result for the scope of
the compute or loop region.
To allow FIR passes to reason about these addresses, a new hlfir.declare
operation is created with the acc data operation result. This gives
access to the shape, contiguity, attributes, and dummy argument
relationships inside the region without having FIR extended to
understand the data operations.
Commit: 0c2e900074a4a412afdbee5e56b1a513ea97b90f
https://github.com/llvm/llvm-project/commit/0c2e900074a4a412afdbee5e56b1a513ea97b90f
Author: dvldogg13 <ijmarisclan at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZInstPrinterCommon.cpp
M llvm/lib/Target/SystemZ/SystemZConstantPoolValue.cpp
M llvm/lib/Target/SystemZ/SystemZHazardRecognizer.cpp
Log Message:
-----------
[SystemZ] Fix variable names to reflect Coding Standards (#161899)
Reflecting the [Coding
Standards](https://llvm.org/docs/CodingStandards.html), the following
changes were made to reflect this guideline.
```
Variable names should be nouns (as they represent state). The name should be camel case, and start with an upper-case letter (e.g. Leader or Boats).
```
The first letter in the variable names are changed to upper-case and
reflect being camel case.
Commit: 9abd6f22d4711f229582eed99b749980f29fe6c1
https://github.com/llvm/llvm-project/commit/9abd6f22d4711f229582eed99b749980f29fe6c1
Author: Dan Blackwell <dan_blackwell at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/tsan/rtl/tsan_flags.cpp
M compiler-rt/lib/tsan/rtl/tsan_flags.h
M compiler-rt/lib/tsan/rtl/tsan_flags.inc
M compiler-rt/lib/tsan/rtl/tsan_interceptors.h
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.h
A compiler-rt/test/tsan/Darwin/write-interpose.c
Log Message:
-----------
[TSan] Add lock_during_write flag on Apple platforms to avoid deadlock (#157928)
There is a commonly used library that interposes the write call, and is
interposed itself. When running with `TSAN_OPTIONS=verbosity=(1|2)`,
this leads to a thread locking itself, resulting in the program hanging.
This patch adds a new flag `lock_during_write` to TSan (on Apple
platforms only) that, when set, allows interceptors to be bypassed
during calls to write. The flag can be inherited by children, or not,
depending on the value.
rdar://157565672
Commit: 5841319aca0f2596cc00ab83d54ec07c9b70da3c
https://github.com/llvm/llvm-project/commit/5841319aca0f2596cc00ab83d54ec07c9b70da3c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ConstantFolding.cpp
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[ConstantFolding] Support ptrtoadd in IsConstantOffsetFromGlobal()
Handle ptrtoaddr the same way as ptrtoint. This code is already
working on the index size (= address size) of the pointer only.
Commit: 4f80c064eb2933c00c0ba9b7826aa3631cf3b5c2
https://github.com/llvm/llvm-project/commit/4f80c064eb2933c00c0ba9b7826aa3631cf3b5c2
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/test/std/localization/codecvt_unicode.pass.cpp
M libcxx/test/std/ranges/range.access/include.iterator.pass.cpp
M libcxx/utils/libcxx/test/dsl.py
M libcxx/utils/libcxx/test/features.py
M libcxxabi/test/forced_unwind4.pass.cpp
M libcxxabi/test/native/AArch64/ra_sign_state.pass.cpp
M libunwind/test/aarch64_vg_unwind.pass.cpp
M libunwind/test/aix_signal_unwind.pass.sh.S
M libunwind/test/bad_unwind_info.pass.cpp
M libunwind/test/eh_frame_fde_pc_range.pass.cpp
M libunwind/test/floatregister.pass.cpp
M libunwind/test/forceunwind.pass.cpp
M libunwind/test/unw_resume.pass.cpp
M libunwind/test/unwind_scalable_vectors.pass.cpp
Log Message:
-----------
[runtimes][NFC] Consistently declare main() functions in tests (#162548)
In the libc++ test suite, we consistently declare main() functions with
full parameters and explicitly return from the function. This helps code
that compiles the tests with -ffreestanding, where main() is not a
special function (with an implicit return and special mangling).
This patch fixes a few stray declarations, including in libunwind and
libc++abi.
Commit: 45757b9284cf491072c8c477cd606df8a19061df
https://github.com/llvm/llvm-project/commit/45757b9284cf491072c8c477cd606df8a19061df
Author: Alex Duran <alejandro.duran at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
M offload/plugins-nextgen/common/include/PluginInterface.h
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] Remove unused init_device_info plugin interface (#162650)
This was used for the old interop code. It's dead code after #143491
Commit: 92266681bfc89b71d1846b68da296186cd8bfbec
https://github.com/llvm/llvm-project/commit/92266681bfc89b71d1846b68da296186cd8bfbec
Author: Ed Maste <emaste at freebsd.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/utils/ci/BOT_OWNERS.txt
Log Message:
-----------
[libc++] Add FreeBSD libc++ owner (#162561)
Fixes #160091
Commit: 45458b28e1092fc947a8d72d469ddd084f74bcc7
https://github.com/llvm/llvm-project/commit/45458b28e1092fc947a8d72d469ddd084f74bcc7
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/test/CodeGen/RISCV/rv64zbkb.ll
Log Message:
-----------
[RISCV] Fix accidentally swapped operands in some PACKH+PACKW patterns. (#162598)
Commit: d59f7f2717b88c7a9764d466c026cef8833c6d1f
https://github.com/llvm/llvm-project/commit/d59f7f2717b88c7a9764d466c026cef8833c6d1f
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/test/OpenMP/reduction_complex.c
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[clang][OMPIRBuilder] Fix reduction codegen for SPIR-V (#162529)
When creating function pointers, make sure the pointer is in the program
address space.
Also fix a spot where I forgot to set `setDefaultTargetAS` and one spot
where we didn't use the default AS for a pointer.
---------
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: 17fe934c3df3745e12977b9f4f470857e4494723
https://github.com/llvm/llvm-project/commit/17fe934c3df3745e12977b9f4f470857e4494723
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
Log Message:
-----------
[Clang-tidy][NFC] Fix potential constant overflow (#162647)
This is a find from static analysis tool complaining about potential
constant overflow for `Index`.
Commit: e0c47d58f882eefc0dc408a570c5ff2ff45e2d36
https://github.com/llvm/llvm-project/commit/e0c47d58f882eefc0dc408a570c5ff2ff45e2d36
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/Transforms/InstSimplify/ptr_diff.ll
Log Message:
-----------
[InstSimplify] Add test for ptr diff without inbounds (NFC)
Also regenerate the test in current format.
Commit: c06005cce5ac3384379972ea7e16cda2e8545f0d
https://github.com/llvm/llvm-project/commit/c06005cce5ac3384379972ea7e16cda2e8545f0d
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/test/Transforms/InstSimplify/ptr_diff.ll
Log Message:
-----------
[InstSimplify] Clean up naming in ptr diff test (NFC)
Turns out there already was a test for the non-inbounds variant,
so remove the duplicate. Rename the tests to be more meaningful.
Drop irrelevant target triple.
Commit: 5ba3b523069f92e2d2f0971cd75b056cb8d2a928
https://github.com/llvm/llvm-project/commit/5ba3b523069f92e2d2f0971cd75b056cb8d2a928
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/utils/ci/buildkite-pipeline.yml
Log Message:
-----------
[libc++] Skip AIX build jobs until #162516 has been resolved (#162664)
Commit: a03aef4faedb06ac0a70846dc4deeffd0ee4bff0
https://github.com/llvm/llvm-project/commit/a03aef4faedb06ac0a70846dc4deeffd0ee4bff0
Author: Bruno De Fraine <brunodf at synopsys.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Sema/Sema.h
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaOverload.cpp
A clang/test/Sema/incompatible-function-pointer-types-extinfo.c
Log Message:
-----------
[Clang] [Sema] Fix incomplete C mode incompatible ExtInfo/ExtProtoInfo conversion diagnostic (#160477)
To raise -Wincompatible-function-pointer-type for extended function type
information conversions in C mode, checkPointerTypesForAssignment
contained an invocation of IsFunctionConversion that is quite dubious:
it verifies the conversion from LHS to RHS, while we are converting from
RHS to LHS. Presumably, this was done because result and argument types
don't have to match exactly in C mode (compatible types is sufficient),
while IsFunctionConversion checks that an exact match in function types
can be obtained by transforming extended function type information. As a
result of the dubious invocation, the diagnostic for incompatible
extended function type changes was incomplete and would illogically
disappear when other changes to the function type were involved (this
was already raised in 2019 but left unsolved). Newer additions of
extended function type information such as "cfi_unchecked_callee", ARM
CMSE attributes, ARM SME attributes, and function effect attributes,
worked around the issue by introducing either holes or additional checks
which complicates the logic.
Here, we solve this longstanding issue by using IsFunctionConversion to
verify the extended function type information conversion in the correct
direction (from RHS to LHS), after first removing other differences in
the function type (argument and result type mismatch, prototype vs. no
prototype) to allow IsFunctionConversion to obtain an exact match. The
complications introduced for checking newer attributes are removed.
Fixes #41465
Fixes #85415
Commit: c4f36758b73fbf651650d8b650347e0ac172795f
https://github.com/llvm/llvm-project/commit/c4f36758b73fbf651650d8b650347e0ac172795f
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/DiagnosticInfo.h
M llvm/lib/IR/DiagnosticInfo.cpp
M llvm/lib/Transforms/Coroutines/CoroAnnotationElide.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
A llvm/test/Transforms/Coroutines/coro-elide-safe.ll
R llvm/test/Transforms/Coroutines/coro-transform-must-elide.ll
Log Message:
-----------
[Coroutines] Conditional elide coroutines based on hot/cold information (#162276)
Unconditionally eliding all `[[clang::coro_await_elidable]]` coroutines
is not good.
For example,
```
Task bar();
Task foo(bool b) {
if (b) [[unlikely]] {
co_await bar();
}
}
```
Assume Task is marked with `[[clang::coro_await_elidable]]`, now we will
always elide the call to `bar()` into the frame of `foo()`. But this may
be a regression instead of an optimization if `b` is always false.
This patch tries to mitigate the problem by leveraging hot/cold
information. This can be optimized further in the future but at least
this patch makes things better.
This patch was originally written by ChuanqiXu9 (#145831), but stalled
during PR review because the diagnostics were not integrated with
the existing optimization remarks. I rebased the original patch,
integrated it with the optimization remarks, and did a couple of smaller
cosmetic changes (e.g., made the test case expectations more
targeted, etc.)
Co-Authored-by: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Commit: 36bce68b97316363085ae3681e8dde33a62fc9b1
https://github.com/llvm/llvm-project/commit/36bce68b97316363085ae3681e8dde33a62fc9b1
Author: jimingham <jingham at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/bindings/python/python-swigsafecast.swig
M lldb/bindings/python/python-wrapper.swig
M lldb/docs/use/python-reference.rst
M lldb/docs/use/tutorials/creating-custom-breakpoints.md
M lldb/include/lldb/API/SBBreakpoint.h
M lldb/include/lldb/API/SBBreakpointLocation.h
M lldb/include/lldb/API/SBFrame.h
M lldb/include/lldb/Breakpoint/Breakpoint.h
M lldb/include/lldb/Breakpoint/BreakpointLocation.h
M lldb/include/lldb/Breakpoint/BreakpointLocationCollection.h
M lldb/include/lldb/Breakpoint/BreakpointLocationList.h
M lldb/include/lldb/Breakpoint/BreakpointResolverScripted.h
M lldb/include/lldb/Breakpoint/BreakpointSite.h
M lldb/include/lldb/Breakpoint/StopPointSiteList.h
M lldb/include/lldb/Breakpoint/StoppointSite.h
M lldb/include/lldb/Interpreter/Interfaces/ScriptedBreakpointInterface.h
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/source/API/SBBreakpoint.cpp
M lldb/source/Breakpoint/Breakpoint.cpp
M lldb/source/Breakpoint/BreakpointLocation.cpp
M lldb/source/Breakpoint/BreakpointLocationCollection.cpp
M lldb/source/Breakpoint/BreakpointLocationList.cpp
M lldb/source/Breakpoint/BreakpointResolverScripted.cpp
M lldb/source/Breakpoint/BreakpointSite.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedBreakpointPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
M lldb/source/Target/StopInfo.cpp
M lldb/test/API/functionalities/breakpoint/scripted_bkpt/resolver.py
A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/Makefile
A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/TestWasHit.py
A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/bkpt_resolver.py
A lldb/test/API/functionalities/breakpoint/scripted_bkpt/was_hit/main.c
M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
Log Message:
-----------
Add a scripted way to re-present a stop location (#158128)
This patch adds the notion of "Facade" locations which can be reported
from a ScriptedResolver instead of the actual underlying breakpoint
location for the breakpoint. Also add a "was_hit" method to the scripted
resolver that allows the breakpoint to say which of these "Facade"
locations was hit, and "get_location_description" to provide a
description for the facade locations.
I apologize in advance for the size of the patch. Almost all of what's
here was necessary to (a) make the feature testable and (b) not break
any of the current behavior.
The motivation for this feature is given in the "Providing Facade
Locations" section that I added to the python-reference.rst so I won't
repeat it here.
rdar://152112327
Commit: ec28b95b7491bc2fbb6ec66cdbfd939e71255c42
https://github.com/llvm/llvm-project/commit/ec28b95b7491bc2fbb6ec66cdbfd939e71255c42
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/cmake/modules/AddLLDB.cmake
M lldb/tools/driver/CMakeLists.txt
M lldb/tools/driver/Driver.cpp
Log Message:
-----------
[lldb][windows] add support for out of PATH python.dll resolution (#162509)
This patch adds the `LLDB_PYTHON_DLL_RELATIVE_PATH` Cmake variable which
is the relative path to the directory containing `python.dll`. The path
is relative to the directory containing `lldb.exe`.
If this variable is set and the resolved path points to an existing
directory, we call `SetDllDirectoryW` to add `python.dll` to the list of
DLL search paths.
This, combined with `liblldb.dll` being delay loaded, allows to package
`python.dll` with the `llvm` installer.
Commit: 9155b318f2cbdac1201633c31abada6380d53d7a
https://github.com/llvm/llvm-project/commit/9155b318f2cbdac1201633c31abada6380d53d7a
Author: agozillon <Andrew.Gozillon at amd.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
A flang/test/Lower/OpenMP/map-descriptor-deferral.f90
M flang/test/Transforms/omp-map-info-finalization.fir
A offload/test/offloading/fortran/descriptor-stack-jam-regression.f90
Log Message:
-----------
[Flang][OpenMP] Defer descriptor mapping for assumed dummy argument types (#154349)
This PR adds deferral of descriptor maps until they are necessary for
assumed dummy argument types. The intent is to avoid a problem where a
user can inadvertently map a temporary local descriptor to device
without their knowledge and proceed to never unmap it. This temporary
local descriptor remains lodged in OpenMP device memory and the next
time another variable or descriptor residing in the same stack address
is mapped we incur a runtime OpenMP map error as we try to remap the
same address.
This fix was discussed with the OpenMP committee and applies to OpenMP
5.2 and below, future versions of OpenMP can avoid this issue via the
attach semantics added to the specification.
Commit: 327a89cbaebcc20b6b2484685be6ac8706944b12
https://github.com/llvm/llvm-project/commit/327a89cbaebcc20b6b2484685be6ac8706944b12
Author: Thibault Monnier <97551402+Thibault-Monnier at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
R clang/include/clang/ASTMatchers/GtestMatchers.h
M clang/lib/ASTMatchers/CMakeLists.txt
R clang/lib/ASTMatchers/GtestMatchers.cpp
M clang/unittests/ASTMatchers/CMakeLists.txt
R clang/unittests/ASTMatchers/GtestMatchersTest.cpp
M llvm/utils/gn/secondary/clang/lib/ASTMatchers/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ASTMatchers/BUILD.gn
Log Message:
-----------
Remove GtestMatchers and GtestMatchersTest (#162524)
Fixes issue #161939.
This PR removes the unused GtestMatchers and GtestMatchersTest.
Commit: b7d14ac26277c77f061d1b9ab7e5594b0ffb2e0d
https://github.com/llvm/llvm-project/commit/b7d14ac26277c77f061d1b9ab7e5594b0ffb2e0d
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/ParseExprCXX.cpp
M clang/test/AST/ByteCode/libcxx/deref-to-array.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Ensure compound requirements do not contain placeholder expressions (#162618)
The name of an overload set is not a valid id expression.
Fixes #51246
Commit: e160b2a03c44f254d80287d74026ddacd2868089
https://github.com/llvm/llvm-project/commit/e160b2a03c44f254d80287d74026ddacd2868089
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/neon-partial-reduce-dot-product.ll
Log Message:
-----------
[AArch64] Improve codegen for partial.reduce.add v16i8 -> v2i32 (#161833)
Rather than expanding, we can handle this case natively by
widening the accumulator.
Commit: 644b068b35b430b279eb3924ac94c6c974588519
https://github.com/llvm/llvm-project/commit/644b068b35b430b279eb3924ac94c6c974588519
Author: Ege Beysel <beysel at roofline.ai>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization/linalg-ops.mlir
Log Message:
-----------
[mlir][linalg] set inbounds on `xfer_read/writes` for `assumeDynamicDimsMatchVecSizes ` (#160839)
The idea from #146531 was to introduce the flag
`assumeDynamicDimsMatchVecSizes`, to signal the vectorizer that the
access should not be masked and is in-bounds. Though the masking part is
handled, `xfer_read/write` ops are created without explicitly setting
the inbounds attribute, which defaults to all-false.
In the existence of scalable tile sizes, subsequent patterns tend to
overwrite the inbounds attribute and introduce masks further down when
lowered to loads and stores. This PR explicitly sets the inbounds
attribute to all-true for `xfer_read/write` ops if the
`assumeDynamicDimsMatchVecSizes` flag is set.
---------
Signed-off-by: Ege Beysel <beyselege at gmail.com>
Commit: ec15cdfb328c504298d0ab14e287448804e6bea5
https://github.com/llvm/llvm-project/commit/ec15cdfb328c504298d0ab14e287448804e6bea5
Author: Steven Perron <stevenperron at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
M clang/lib/Sema/HLSLExternalSemaSource.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
M clang/test/AST/HLSL/vk_binding_attr.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
A clang/test/CodeGenHLSL/resources/res-array-rw-counter.hlsl
M clang/test/CodeGenHLSL/vk_binding_attr.hlsl
Log Message:
-----------
[SPIRV][HLSL] Add Sema and CodeGen for implicit typed buffer counters (#162291)
This commit implements the Sema and CodeGen portions of the typed buffer
counter proposal described in the HLSL WG proposal 0023.
This change introduces the necessary Sema and CodeGen logic to handle
implicit counter variables for typed buffers. This includes:
- Extending `HLSLResourceBindingAttr` to store the implicit counter
binding order ID.
- Introducing the
`__builtin_hlsl_resource_counterhandlefromimplicitbinding`
builtin.
- Updating `SemaHLSL` to correctly initialize global resource
declarations
and resource arrays with implicit counter buffers.
- Adding CodeGen support for the new builtin, which generates a
`llvm.spv.resource.counterhandlefromimplicitbinding` intrinsic for the
SPIR-V target and aliases the main resource handle for the DXIL target.
- Adding and updating tests to verify the new functionality.
Fixes #137032
Commit: 5873d6a371655d93df8221c92a51030a4619f84f
https://github.com/llvm/llvm-project/commit/5873d6a371655d93df8221c92a51030a4619f84f
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/include/flang/Lower/OpenACC.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/OpenACC.cpp
A flang/test/Lower/OpenACC/acc-loop-collapse-force-lowering.f90
Log Message:
-----------
[flang][openacc] Add support for force clause for loop collapse (#162534)
Currently the force clause `collapse (force:num_level)` is NYI. Added
support to sink any prologue and epilogue code to the inner most level
as specified.
Commit: 4c2b1d495aa26fa80833fa1508736df984b6f55e
https://github.com/llvm/llvm-project/commit/4c2b1d495aa26fa80833fa1508736df984b6f55e
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/X86/fmaxnum.ll
M llvm/test/CodeGen/X86/fminimum-fmaximum.ll
M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
M llvm/test/CodeGen/X86/fminnum.ll
Log Message:
-----------
[DAGCombiner] Improve FMin/FMax DAGCombines (#161352)
Add several improvements to DAGCombine patterns for fmin/fmax:
* Fix incorrect results due to minimumnum not being marked as IsMin
- e.g. nnan minimumnum(x, +inf) returned +inf instead of x
* Fix incorrect results checking maximumnum for vecreduce patterns
* Make maxnum/minnum return QNaN if one input is SNaN instead of X
* Quiet SNaN inputs when propagating them e.g. maximum(x, SNaN) = QNaN
* Update comments to mark when SNaN propagation is being ignored
Commit: 263345b1b2f7967319fc943597e0a01846e9c186
https://github.com/llvm/llvm-project/commit/263345b1b2f7967319fc943597e0a01846e9c186
Author: Morris Hafner <mmha at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
A clang/test/CIR/CodeGen/record-zero-init-padding.c
Log Message:
-----------
[CIR] Implement zero-initialization of padding in constant records (#162483)
This adds the zero initialization as required by the C standard.
Commit: 42d26a185f9c5569a708f50220e7066e543a5175
https://github.com/llvm/llvm-project/commit/42d26a185f9c5569a708f50220e7066e543a5175
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libc/docs/build_and_test.rst
Log Message:
-----------
[libc][docs] Update VSCode instructions for full host build (#162626)
The VSCode instructions were stale from the transition to the runtimes
directory. This updates will all the options give on the Full Host Build
page.
Tested:
Built libc target.
Commit: 05e723e25efe2af0506b01af22115c684262532e
https://github.com/llvm/llvm-project/commit/05e723e25efe2af0506b01af22115c684262532e
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/EHScopeStack.h
Log Message:
-----------
[CIR][NFC] Remove dead member function from EHScopeStack::Cleanup (#162565)
This removes the `getSize()` member function from EHScopeStack::Cleanup
and all its subclasses. This function had originally been added as a
temporary measure before EHCleanupScope was implemented, but it is no
longer used.
Commit: c20d0292c2939eec18ca7b79736a44539b47adcb
https://github.com/llvm/llvm-project/commit/c20d0292c2939eec18ca7b79736a44539b47adcb
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/global-init.cpp
Log Message:
-----------
[CIR] Add support for global destructors (#162532)
This adds support for generating destructor calls for global variables
that have a destructor. This doesn't handle functions that are marked as
global destructors with `__attribute__((destructor))`. That will be
handled later.
Commit: 4e5306745a09b734000c200d02a54c853409a3b5
https://github.com/llvm/llvm-project/commit/4e5306745a09b734000c200d02a54c853409a3b5
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
A clang/test/CIR/CodeGen/dynamic-cast.cpp
Log Message:
-----------
[CIR] Add initial support for dynamic cast (#162337)
This adds support for dynamic cast handling and generating
`cir.dyn_cast` operations and `cir.dyn_cast_info` attributes.
This does not include support for lowering the dynamic cast to LLVM IR,
which will require changes to the LoweringPrepare pass that will be made
in a future change.
This also does not yet handle dynamic cast to void or exact dynamic
casts.
Commit: 3c7873b75f2454be845af1fe2b601e0e8f791b4a
https://github.com/llvm/llvm-project/commit/3c7873b75f2454be845af1fe2b601e0e8f791b4a
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops-rr.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
Log Message:
-----------
[MLIR][XeGPU] Distribute non-splat constant from wg to sg (#161416)
This PR distributes non-splat constant from wg to sg. The current
pattern has limitations and avoids cases which require SLM access.
Commit: 8523c6a448c3f01396b805aca30376072c469845
https://github.com/llvm/llvm-project/commit/8523c6a448c3f01396b805aca30376072c469845
Author: Augusto Noronha <anoronha at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/source/Core/ModuleList.cpp
Log Message:
-----------
[lldb] Actually use new SharedModuleList class (#162574)
Now that the use after free bug has been fixed (397181d5c), actually use
the new SharedModuleList class.
Commit: 5cef6f38c0c7a59d8ce0854d04613d8606326023
https://github.com/llvm/llvm-project/commit/5cef6f38c0c7a59d8ce0854d04613d8606326023
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
M llvm/benchmarks/Mustache.cpp
M llvm/include/llvm/Support/Mustache.h
M llvm/lib/Support/Mustache.cpp
M llvm/unittests/Support/MustacheTest.cpp
M llvm/utils/llvm-test-mustache-spec/llvm-test-mustache-spec.cpp
Log Message:
-----------
[llvm][mustache] Use BumpPtrAllocator to save ASTNodes (#159194)
We make the Mustache ASTNodes usable in the arena by first removing all
of the memory owning data structures, like std::vector, std::unique_ptr,
and SmallVector. We use standard LLVM list types to hold this data
instead, and make use of a UniqueStringSaver to hold the various
templates strings.
Additionally, update clang-doc APIs to use the new interfaces.
Future work can make better use of Twine interfaces to help avoid any
intermediate copies or allocations.
Commit: d2413d973c8de07427bc87b93cf106c6ff9073e8
https://github.com/llvm/llvm-project/commit/d2413d973c8de07427bc87b93cf106c6ff9073e8
Author: Charles Zablit <c_zablit at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/tools/driver/Driver.cpp
Log Message:
-----------
[lldb][windows] fix undeclared identifier error (#162705)
This patch fixes the `'LLDB_PYTHON_DLL_RELATIVE_PATH': undeclared
identifier` error introduced by
https://github.com/llvm/llvm-project/pull/162509.
Commit: b6fbf66e5936f47137ab24d0a123ae39ea73f6fc
https://github.com/llvm/llvm-project/commit/b6fbf66e5936f47137ab24d0a123ae39ea73f6fc
Author: Artem Belevich <tra at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
A llvm/test/CodeGen/NVPTX/i32x2-instructions.ll
Log Message:
-----------
[NVPTX] properly expand operations that we do not support on v2i32 (#162391)
Follow-up on #153478 and #161715.
v2i32 register class exists mostly to facilitate v2f32's use of integer
registers. There are no actual instructions that can apply to v2i32
directly (except bitwise logical ops). Everything else must be done
elementwise.
Commit: 2c3f0e541d0d96eaf284abf6992ae55db2a5035a
https://github.com/llvm/llvm-project/commit/2c3f0e541d0d96eaf284abf6992ae55db2a5035a
Author: Grigory Pastukhov <99913765+grigorypas at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
A llvm/test/CodeGen/X86/pgo-profile-o0.ll
M llvm/tools/llc/llc.cpp
Log Message:
-----------
[CodeGen] Preserve branch weights from PGO profile during instruction selection at -O0 (#161620)
Branch probabilities from PGO profile data were not preserved during
instruction selection at -O0 because BranchProbabilityInfo was only
requested when OptLevel != None.
Commit: 1b627da8cfb6188c5bcf3f9a3bd35501387a462b
https://github.com/llvm/llvm-project/commit/1b627da8cfb6188c5bcf3f9a3bd35501387a462b
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/test/CIR/CodeGen/dtors.cpp
Log Message:
-----------
[CIR] Call base class destructors (#162562)
This adds handling for calling virtual and non-virtual base class
destructors. Non-virtual base class destructors are call from the base
(D2) destructor body for derived classes. Virtual base class destructors
are called only from the complete (D1) destructor.
Commit: e07914b56325e2b614ae070250847ac8cee581e3
https://github.com/llvm/llvm-project/commit/e07914b56325e2b614ae070250847ac8cee581e3
Author: Schrodinger ZHU Yifan <yifanzhu at rochester.edu>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libc/src/__support/OSUtil/linux/auxv.h
M libc/src/__support/OSUtil/linux/syscall.h
M libc/src/__support/threads/linux/thread.cpp
M libc/src/sys/mman/linux/mmap.cpp
M libc/startup/linux/aarch64/tls.cpp
M libc/startup/linux/riscv/tls.cpp
M libc/startup/linux/x86_64/tls.cpp
Log Message:
-----------
[libc] fix sysconf test for rv32 (#162685)
Commit: b0d252da3cbc1c6e5747b618c301881da663de86
https://github.com/llvm/llvm-project/commit/b0d252da3cbc1c6e5747b618c301881da663de86
Author: Paul Kirth <paulkirth at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Support/Mustache.cpp
Log Message:
-----------
[llvm][mustache] Avoid extra copy for json strings (#159195)
Commit: a19c9a8ba1b01f324f893481d825a375a5a68bc6
https://github.com/llvm/llvm-project/commit/a19c9a8ba1b01f324f893481d825a375a5a68bc6
Author: Chad Smith <cssmith at fb.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
M lldb/source/Plugins/Platform/Android/PlatformAndroid.h
Log Message:
-----------
support attaching by name for platform android (#160931)
## Bug
Trying to attach to an android process by name fails:
```
(lldb) process attach -n com.android.bluetooth
error: attach failed: could not find a process named com.android.bluetooth
```
## Root Cause
PlatformAndroid does not implement the `FindProcesses` method.
As described in `include/lldb/Target/Platform.h`:
```
// The base class Platform will take care of the host platform. Subclasses
// will need to fill in the remote case.
virtual uint32_t FindProcesses(const ProcessInstanceInfoMatch &match_info,
ProcessInstanceInfoList &proc_infos);
```
## Fix
Implement the `FindProcesses` method in PlatformAndroid. Use adb to get
the pid of the process name on the device with the adb client connection
using `adb shell pidof <name>`.
## Reproduce
With an android device connected, run the following
Install and start lldb-server on device
```
adb push lldb-server /data/local/tmp/
adb shell chmod +x /data/local/tmp/lldb-server
adb shell /data/local/tmp/lldb-server platform --listen 127.0.0.1:9500 --server
```
Start lldb, and run
```
platform select remote-android
platform connect connect://127.0.0.1:9500
log enable lldb platform
```
Connect to the process by name:
```
process attach -n com.android.bluetooth
```
## Test Plan
Before:
```
(lldb) process attach -n com.android.bluetooth
error: attach failed: could not find a process named com.android.bluetooth
```
After:
```
(lldb) process attach -n com.android.bluetooth
lldb AdbClient::ResolveDeviceID Resolved device ID: 127.0.0.1
lldb AdbClient::AdbClient(device_id='127.0.0.1') - Creating AdbClient with device ID
lldb Connecting to ADB server at connect://127.0.0.1:5037
lldb Connected to Android device "127.0.0.1"
lldb Forwarding remote TCP port 38315 to local TCP port 35243
lldb AdbClient::~AdbClient() - Destroying AdbClient for device: 127.0.0.1
lldb gdbserver connect URL: connect://127.0.0.1:35243
lldb AdbClient::AdbClient(device_id='127.0.0.1') - Creating AdbClient with device ID
lldb Connecting to ADB server at connect://127.0.0.1:5037
lldb Selecting device: 127.0.0.1
lldb PlatformAndroid::FindProcesses found process 'com.android.bluetooth' with PID 2223
lldb AdbClient::~AdbClient() - Destroying AdbClient for device: 127.0.0.1
llvm-worker-48 PlatformRemoteGDBServer::GetModuleSpec - got module info for (/apex/com.android.art/lib64/libc++.so:aarch64-unknown-linux-android) : file = '/apex/com.android.art/lib64/libc++.so', arch = aarch64-unknown-linux-android, uuid = 552995D0-A86D-055F-1F03-C13783A2A16C, object size = 754128
llvm-worker-9 PlatformRemoteGDBServer::GetModuleSpec - got module info for (/apex/com.android.art/lib64/liblzma.so:aarch64-unknown-linux-android) : file = '/apex/com.android.art/lib64/liblzma.so', arch = aarch64-unknown-linux-android, uuid = E51CAC98-666F-6C3F-F605-1498079542E0, object size = 179944
Process 2223 stopped
```
Commit: 6a02c0f2fa696b226e9d3c5250802cc045985876
https://github.com/llvm/llvm-project/commit/6a02c0f2fa696b226e9d3c5250802cc045985876
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
Log Message:
-----------
[Flang]Fix propagation of loop collapse number for target-based directives (#162707)
Commit: 514f82924e997691faad258282c1f3ededc9e932
https://github.com/llvm/llvm-project/commit/514f82924e997691faad258282c1f3ededc9e932
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Use explicit i32/i64 to remove some PACK patterns from RISCVGenDAGISel.inc. NFC
Simplify patterns by removing unnecessary mentions of XLenVT.
Commit: 1d63892bbcf5655ced016aca606e03c36e07bb6c
https://github.com/llvm/llvm-project/commit/1d63892bbcf5655ced016aca606e03c36e07bb6c
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[bazel][libc] Port #162685: sysconf (#162719)
Commit: eb06c7e7d25da30dd611812a9bec56bf5c3f5ac3
https://github.com/llvm/llvm-project/commit/eb06c7e7d25da30dd611812a9bec56bf5c3f5ac3
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/source/Symbol/Function.cpp
Log Message:
-----------
[lldb] Fix assertion caused by invalid SupportFileSP (#162710)
SupportFileSP should never be null, and instead should use a default
constructed SupportFile to represent an invalid instance. This is
because the class used to be a value type before it became polymorphic.
We have various places in LLDB where we check this precondition,
including in DisplaySourceLinesWithLineNumbers. The assertion was
tripped when calling GetStartLineSourceInfo which starts by resetting
the SupportFileSP and has a series of early returns which leave the
shared pointer in that state.
rdar://161607247
Commit: a4015d98d2ad3faba12d8c1a82942330852b9efd
https://github.com/llvm/llvm-project/commit/a4015d98d2ad3faba12d8c1a82942330852b9efd
Author: Valery Dmitriev <valeryd at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/include/flang/Semantics/symbol.h
A flang/test/Lower/generic-shadows-specific.F90
Log Message:
-----------
[flang] Fix crash resolving interface procedure type. (#162205)
When generic interface name shadows specific, bypass to specific
procedure while resolving its type.
Commit: 3a6b818132e3133c7d33f8f577e62503f12869b4
https://github.com/llvm/llvm-project/commit/3a6b818132e3133c7d33f8f577e62503f12869b4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M flang/include/flang/Parser/parse-tree.h
Log Message:
-----------
[flang][OpenMP] Expand top-level WRAPPER_CLASSs into struct, NFC (#162723)
Most of the time OpenMP types use WRAPPER_CLASS_BOILERPLATE inside of a
struct definition. Expand the few remaining cases of WRAPPER_CLASS to
use the same form everywhere.
Commit: 5a7d8a37ac4dbd47d997f8e4c8f8905708c38964
https://github.com/llvm/llvm-project/commit/5a7d8a37ac4dbd47d997f8e4c8f8905708c38964
Author: Tom Stellard <tstellar at redhat.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M .ci/generate_test_report_github.py
M .ci/utils.sh
M .github/workflows/premerge.yaml
Log Message:
-----------
Add AArch64 support to the premerge tests (#155274)
The tests are configured to always report a passing result temporarily
until we are confident that they are stable.
---------
Co-authored-by: ultimateforce21 <abdullahmohammad155 at gmail.com>
Co-authored-by: David Spickett <david.spickett at linaro.org>
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 31103efb777ce409f7a50ff6fe84e19f601c9868
https://github.com/llvm/llvm-project/commit/31103efb777ce409f7a50ff6fe84e19f601c9868
Author: Jin Huang <jinhuang1102 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Transforms/AggressiveInstCombine/TruncInstCombine.cpp
M llvm/test/Transforms/AggressiveInstCombine/trunc_select.ll
M llvm/test/Transforms/AggressiveInstCombine/trunc_select_cmp.ll
Log Message:
-----------
[profcheck] Propagate profile metadata in trunc(select) transform (#162406)
In the `AggressiveInstCombine` pass, profile metadata was being dropped during the transformation of `trunc(select(...))` operations. This change fixes the issue by propagating the metadata from the original `select` to the new `trunc-select` instruction.
Commit: 82a427702eb2c83ff571670a73071420f0b31546
https://github.com/llvm/llvm-project/commit/82a427702eb2c83ff571670a73071420f0b31546
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/lib/AST/StmtProfile.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
Log Message:
-----------
[OpenACC][NFC] AST changes for Reduction combiner (#162573)
This is the first patch of a handful to get the reduction combiner
recipe lowering properly. THIS patch is NFC as it doesn't actually
change anything except the structure of the AST.
For each 'combiner' recipe we need a 'LHS' 'RHS' and expression to
represent the operation.
Each var-reference can have 1 or more combiners.
IF it is a plain scalar, or a struct with the proper operator, or an
array of either of those, there will be 1.
HOWEVER, aggregates without the proper operator are supposed to be
broken down and done from their elements (which can only be scalars). In
this case, we will represent 1 'combiner' recipe per field-decl.
This patch only puts the infrastructure in place to do so, future
patches wll do the work to fill this in.
Commit: 74858f366bad87d24f41819b015bcc1043daead7
https://github.com/llvm/llvm-project/commit/74858f366bad87d24f41819b015bcc1043daead7
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
A lld/utils/speed-test-reproducers/collect.nix
A lld/utils/speed-test-reproducers/ld-wrapper.sh
Log Message:
-----------
Add Nix recipe for collecting linker reproducers. (#145789)
As proposed in:
https://discourse.llvm.org/t/improving-the-reproducibility-of-linker-benchmarking/86057
This is a Nix recipe for collecting reproducers for benchmarking
purposes
in a reproducible way. It works by injecting a linker wrapper that
embeds
a reproducer tarball into a non-allocated section of every linked
object,
which generally causes them to be smuggled out of the build tree in a
section of the final binaries.
It may be used in conjunction with the script lld/utils/run_benchmark.py
to measure the relative performance of linker changes or compare
the performance of different linkers.
Commit: 7886ae315ae9674dedd65320d002b1c7211ce5e2
https://github.com/llvm/llvm-project/commit/7886ae315ae9674dedd65320d002b1c7211ce5e2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
Log Message:
-----------
[SelectionDAG] Add stricter SDTypeProfile for strict_fsetcc(s). (#162724)
We can say the operand type is FP.
Commit: ba69e33e13e41481cd9eca1ab31c90058896fffa
https://github.com/llvm/llvm-project/commit/ba69e33e13e41481cd9eca1ab31c90058896fffa
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/X86/x86-predication.ll
Log Message:
-----------
[LV] Consistently apply address def scalarization across loop.
Consistently scalarize loads used as part of address computations across
all uses in the loop. This aligns the VPlan and legacy cost model and
fixes a divergence crash. It doesn't matter if the load and address
users are in different blocks, as long as they are in the same loop, the
scalar value can be used. This removes a number of insert/extracts.
Commit: e02c645f9089f3fa397627043351319880d88673
https://github.com/llvm/llvm-project/commit/e02c645f9089f3fa397627043351319880d88673
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Add an explicit i32 to QC_SETWMI pattern to reduce RISCVGenDAGISel.inc. NFC (#162720)
Commit: b7e256dce9b86ff35e38c4d0bf590969f689a8c5
https://github.com/llvm/llvm-project/commit/b7e256dce9b86ff35e38c4d0bf590969f689a8c5
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
Log Message:
-----------
[alpha.webkit.NoUnretainedMemberChecker] Allow a retaining property synthesis (#162576)
Don't emit a warning when an Objective-C property is defined using copy
or strong semantics.
Commit: ddd7fc3b46ee9d3632494ae878ab189b9adac8f9
https://github.com/llvm/llvm-project/commit/ddd7fc3b46ee9d3632494ae878ab189b9adac8f9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrAVX10.td
Log Message:
-----------
[X86] Add missing isel pattern for VCVTTPD2UDQSZ128rm. Remove duplicate pattern. (#162700)
Addresses my comment here
https://github.com/llvm/llvm-project/pull/162036#issuecomment-3386628215
Commit: 6fe878a0e26d9e3a27f7c90a35e7487fd9edd705
https://github.com/llvm/llvm-project/commit/6fe878a0e26d9e3a27f7c90a35e7487fd9edd705
Author: Maksim Panchenko <maks at fb.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Modify warning when --use-old-text fails. NFC (#162731)
When --use-old-text fails, we are emitting all code meant for the
original `.text` section into the new section. This could be more bytes
compared to those emitted under no `--use-old-text`, especially under
`--lite`. As a result, `--use-old-text` results in a larger binary, not
smaller which could be confusing to the user.
Add more information to the warning, including recommendation to rebuild
without `--use-old-text` for smaller binary size.
Commit: 06cffb72cc2d8e610ae45d0c0a14c92d8b5626b0
https://github.com/llvm/llvm-project/commit/06cffb72cc2d8e610ae45d0c0a14c92d8b5626b0
Author: Davide Cunial <dcunial at proton.me>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/list.rst
Log Message:
-----------
[clang-tidy][NFC] Update list.rst fix-its info for readability-braces-around-statements check (#162698)
The check 'readability-braces-around-statements' do offer fixes!
Commit: ab897ae2e08646e7c60fb61d71df5616950beb66
https://github.com/llvm/llvm-project/commit/ab897ae2e08646e7c60fb61d71df5616950beb66
Author: Amir Ayupov <aaupov at fb.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
A bolt/test/X86/fragment-alias.s
Log Message:
-----------
[BOLT] Support fragment symbol mapped to the parent address (#162727)
Observed in GCC-produced binary. Emit a warning for the user.
Test Plan: added bolt/test/X86/fragment-alias.s
Commit: e9205ca8cf4235647c3ec2a1946850751ce4e1c8
https://github.com/llvm/llvm-project/commit/e9205ca8cf4235647c3ec2a1946850751ce4e1c8
Author: dianqk <dianqk at dianqk.net>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/SimplifyCFG/switch-range-to-icmp.ll
Log Message:
-----------
[SimplifyCFG] Remove all incoming values from OtherDest if OtherDest is unreachable (#162677)
Fixes #162585.
#161000 changed `br i1 true, label %if, label %else` to `br label %if`,
so we should remove one more incoming value.
Commit: 9e0d3bcbf2a6597353c3ab5844941b92c4a2e70e
https://github.com/llvm/llvm-project/commit/9e0d3bcbf2a6597353c3ab5844941b92c4a2e70e
Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/docs/MLGO.rst
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/test/Analysis/IR2Vec/unreachable.ll
M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Restrict caching only to Flow-Aware computation (#162559)
Removed all the caching maps (BB, Inst) in `Embedder` as we don't want
to cache embeddings in general. Our earlier experiments on Symbolic
embeddings show recomputation of embeddings is cheaper than cache
lookups.
OTOH, Flow-Aware embeddings would benefit from instruction level
caching, as computing the embedding for an instruction would depend on
the embeddings of other instructions in a function. So, retained
instruction embedding caching logic only for Flow-Aware computation.
This also necessitates an `invalidate` method that would clean up the
cache when the embeddings would become invalid due to transformations.
Commit: a75565a54401571b896e1a3c60939e4dcdc0b13a
https://github.com/llvm/llvm-project/commit/a75565a54401571b896e1a3c60939e4dcdc0b13a
Author: Chenguang Wang <w3cing at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M mlir/test/lib/Dialect/Test/TestOps.td
M mlir/test/lib/Dialect/Test/TestPatterns.cpp
M mlir/test/mlir-tblgen/pattern.mlir
M mlir/tools/mlir-tblgen/RewriterGen.cpp
Log Message:
-----------
[mlir] Execute same operand name constraints before user constraints. (#162526)
For a pattern like this:
Pat<(MyOp $x, $x),
(...),
[(MyCheck $x)]>;
The old implementation generates:
Pat<(MyOp $x0, $x1),
(...),
[(MyCheck $x0),
($x0 == $x1)]>;
This is not very straightforward, because the $x name appears in the
source pattern; it's attempting to assume equality check will be
performed as part of the source pattern matching.
This commit moves the equality checks before the other constraints,
i.e.:
Pat<(MyOp $x0, $x1),
(...),
[($x0 == $x1),
(MyCheck $x0)]>;
Commit: 9146ef5df0543f08a86686cfeb3bd1ea7338f4c6
https://github.com/llvm/llvm-project/commit/9146ef5df0543f08a86686cfeb3bd1ea7338f4c6
Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M libcxx/include/string
M libcxx/test/std/strings/basic.string/string.capacity/resize_and_overwrite.pass.cpp
A libcxx/test/std/strings/basic.string/string.capacity/resize_and_overwrite.verify.cpp
Log Message:
-----------
[libc++][string] Assert resize_and_overwrite operation returns integer-like type (#162030)
Verify that the operation passed to resize_and_overwrite returns an
integer-like type, matching the behavior of other standard library
implementations like GCC's libstdc++
Fixes #160577
Commit: 0c2913afc82a683d82f16f09442d49b1fb25ca67
https://github.com/llvm/llvm-project/commit/0c2913afc82a683d82f16f09442d49b1fb25ca67
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/docs/TestingLibcxx.rst
M libcxx/test/benchmarks/spec.gen.py
M libcxx/test/configs/apple-libc++-shared.cfg.in
M libcxx/test/configs/apple-libc++-system.cfg.in
M libcxx/test/configs/armv7m-picolibc-libc++.cfg.in
M libcxx/test/configs/ibm-libc++-shared.cfg.in
M libcxx/test/configs/llvm-libc++-android.cfg.in
M libcxx/test/configs/llvm-libc++-mingw.cfg.in
M libcxx/test/configs/llvm-libc++-shared-clangcl.cfg.in
M libcxx/test/configs/llvm-libc++-shared-gcc.cfg.in
M libcxx/test/configs/llvm-libc++-shared-no-vcruntime-clangcl.cfg.in
M libcxx/test/configs/llvm-libc++-shared.cfg.in
M libcxx/test/configs/llvm-libc++-static-clangcl.cfg.in
M libcxx/test/configs/llvm-libc++-static.cfg.in
M libcxx/test/configs/stdlib-libstdc++.cfg.in
M libcxx/test/configs/stdlib-native.cfg.in
M libcxx/test/selftest/dsl/dsl.sh.py
M libcxx/test/selftest/dsl/lit.local.cfg
M libcxx/test/selftest/file_dependencies/absolute-and-relative-paths.sh.cpp
M libcxx/test/selftest/file_dependencies/substitute-in-dependencies.sh.cpp
M libcxx/test/selftest/tmpdir-exists.sh.cpp
M libcxx/utils/libcxx/test/dsl.py
M libcxx/utils/libcxx/test/format.py
M libcxx/utils/ssh.py
M libcxx/utils/test-at-commit
M libcxxabi/test/configs/apple-libc++abi-shared.cfg.in
M libcxxabi/test/configs/apple-libc++abi-system.cfg.in
M libcxxabi/test/configs/armv7m-picolibc-libc++abi.cfg.in
M libcxxabi/test/configs/ibm-libc++abi-shared.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-android.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-merged.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-mingw.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-shared-clangcl.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-shared.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-static-clangcl.cfg.in
M libcxxabi/test/configs/llvm-libc++abi-static.cfg.in
M libunwind/test/configs/apple-libunwind-system.cfg.in
M libunwind/test/configs/armv7m-picolibc-libunwind.cfg.in
M libunwind/test/configs/ibm-libunwind-shared.cfg.in
M libunwind/test/configs/llvm-libunwind-merged.cfg.in
M libunwind/test/configs/llvm-libunwind-shared-mingw.cfg.in
M libunwind/test/configs/llvm-libunwind-shared.cfg.in
M libunwind/test/configs/llvm-libunwind-static-mingw.cfg.in
M libunwind/test/configs/llvm-libunwind-static.cfg.in
Log Message:
-----------
[libcxx] Use %{temp} instead of %T (#162323)
Based on review feedback in #160026.
This makes the substitution a lot more clear now that there is no
documentation around %T.
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: 3c080edd565f55d224e9e3e59df134cb5b3a0be7
https://github.com/llvm/llvm-project/commit/3c080edd565f55d224e9e3e59df134cb5b3a0be7
Author: ravil-mobile <ravil.aviva.com at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 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:
-----------
[ROCDL] Added missing named barrier ops (gfx1250) (#162488)
This patch introduces some missing s.barrier instructions in the ROCDL
dialect handling named barriers
Specifically:
```
@llvm.amdgcn.s.barrier.init - s_barrier_init
@llvm.amdgcn.s.barrier.join - s_barrier_join
@llvm.amdgcn.s.barrier.leave - s_barrier_leave
@llvm.amdgcn.s.barrier.signal.isfirst - s_barrier_signal_isfirst
@llvm.amdgcn.s.get.barrier.state - s_get_barrier_state
```
Commit: 7a391e32eaf2f2232bd7c81e651dd949f39cc9e1
https://github.com/llvm/llvm-project/commit/7a391e32eaf2f2232bd7c81e651dd949f39cc9e1
Author: John Harrison <harjohn at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/unittests/Host/JSONTransportTest.cpp
Log Message:
-----------
[lldb] Adjusting the naming for gcc11. (#162693)
In gcc11 we're getting an error with a `using Req = Req` statement. This
changes the name of the types in JSONTransportTest from `Req` >
`Request`, `Evt` > `Event`, `Resp` > `Response`.
Commit: 69f913821d82f82cce3309da84b21375d5a128ee
https://github.com/llvm/llvm-project/commit/69f913821d82f82cce3309da84b21375d5a128ee
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/test/CodeGen/RISCV/features-info.ll
Log Message:
-----------
[RISCV] Add a new subtarget feature for throttled FP64 vector performance (#162399)
sifive-x390 and sifive-x280 both share the SiFIve7 scheduling model, yet
the former has a limited FP64 vector performance. Right now we account
for it by instantiating two separate scheduling models (throttled v.s.
non-throttled) from the base SiFive7 model. However, this approach
(which is also used in other performance features like fast vrgather in
SiFive7) does not scale if we add more of these performance features in
the future -- the number of scheduling models will simply become
unmanageable.
The new solution I've been working on is to let a _single_ scheduling
model be configured by subtarget features on performance features like
these, such that we no longer need to create those derived models. This
patch creates the subtarget feature that'll ultimately replace the
`isFP64Throttled` knob in SiFive7 scheduling model mentioned earlier.
There will be a follow-up patch to integrate this into the scheduling
model.
Commit: 6e784afcb5a75b60ccb9bd74f9e0033787a01282
https://github.com/llvm/llvm-project/commit/6e784afcb5a75b60ccb9bd74f9e0033787a01282
Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/docs/DebuggingCoroutines.rst
Log Message:
-----------
[docs][coroutines] Update gdb debugger script (#162145)
In "Debugging C++ Coroutines", we provide a gdb script to aid with
debugging C++ coroutines in gdb. This commit updates said script to make
it easier to use and more robust.
The commit contains the following user-facing changes:
* `show-coro-frame` was replaced by a pretty-printer for
`std::coroutine_handle`. This is much easier to use than a custom
command since it works out-of-the-box with `p` and in my IDE's variable
view (tested using VS-Code)
* the new `get_coro_{frame,promise}` functions can be called from
expressions to access nested members. Example: `p
get_coro_promise(fib.coro_hdl)->current_state`
* `async-bt` was replaced by a frame filter. This way, the builtin `bt`
command directly shows all the async coroutine frames.
Under the covers, the script became more robust:
* For devirtualization, we now look up the `__coro_frame` variable in
the resume function instead of relying on the `.coro_frame_ty` naming
convention. Thereby, devirtualization works slightly better also on
gcc-compiled binaries (however, there is still more work to be done).
* We use the LLVM-generated `__coro_resume_<N>` labels to get the exact
line at which a coroutine was suspended.
* The continuation handle is now looked up by name instead of via
dereferencing a calculated pointer. Thereby, the script should be
simpler to adjust for various coroutine libraries without requiring
pointer arithmetic hacks.
Other sections of the documentation were adjusted accordingly to reflect
the newly added features of the gdb script.
Commit: c8afc6a12d5b949cca70e86812899a1168c8e668
https://github.com/llvm/llvm-project/commit/c8afc6a12d5b949cca70e86812899a1168c8e668
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M libcxx/test/benchmarks/spec.gen.py
M libcxx/utils/test-at-commit
Log Message:
-----------
[libc++] Fix a few incorrect find-and-replace in the %{temp} change
Commit: 37aa3473983a3c463d09749ab13fc2182db9328e
https://github.com/llvm/llvm-project/commit/37aa3473983a3c463d09749ab13fc2182db9328e
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVScheduleV.td
M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/vector-fp.s
Log Message:
-----------
[RISCV] Toggle throttled FP64 feature in SiFive7 scheduling model with subtarget feature (#162400)
This patch teaches the SiFive7 scheduling model to configure / toggle
the throttled FP64 vector feature with subtarget feature rather than
hard-coded TableGen parameter, which inevitably forces us to instantiate
a new scheduling model for every performance features like this.
Commit: 47d3c5f3cb159fd261ab5c3efa55afae246c5e0d
https://github.com/llvm/llvm-project/commit/47d3c5f3cb159fd261ab5c3efa55afae246c5e0d
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
M lldb/test/API/functionalities/unwind/cortex-m-exception/armv7m-nofpu-exception.yaml
M lldb/test/API/functionalities/unwind/cortex-m-exception/binary.json
Log Message:
-----------
[lldb] Cortex-M exception unwind API test cleanup
This test, with a corefile created via yaml2macho-core plus an
ObjectFileJSON binary with symbol addresses and ranges, was failing
on some machines/CI because the wrong ABI was being picked.
The bytes of the functions were not included in the yaml or .json
binary. The unwind falls back to using the ABI plugin default
unwind plans. We have two armv7 ABIs - the Darwin ABI that always
uses r7 as the frame pointer, and the AAPCS ABI which uses r11 code.
In reality, armv7 code uses r11 in arm mode, r7 in thumb code. But
the ABI ArchDefaultUnwindPlan doesn't have any access to the Target's
ArchSpec or Process register state, to determine the correct processor
state (arm or thumb). And in fact, on Cortex-M targets, the
instructions are always thumb, so the arch default unwind plan
(hardcoded r11) is always wrong.
The corefile doesn't specify a vendor/os, only a cpu.
The object file json specifies the armv7m-apple-* triple, which will
select the correct ABI plugin, and the test runs.
In some cases, it looks like the Process ABI was fetched after
opening the corefile, but before the binary.json was loaded and
corrected the Target's ArchSpec. And we never re-evaluate the ABI
once it is set, in a Process. When we picked the AAPCS armv7 ABI,
we would try to use r11 as frame pointer, and the unwind would stop
after one stack frame.
I'm stepping around this problem by (1) adding the register bytes of
the prologues of every test function in the backtrace, and (2)
shortening the function ranges (in binary.json) to specify that the
functions are all just long enough for the prologue where execution
is stopped. The instruction emulation plugin will fail if it can't
get all of the bytes from the function instructions, so I hacked
the function sizes in the .json to cover the prologue plus one and
changed the addresses in the backtrace to fit within those ranges.
[ updated this commit to keep the @skipIfRemote on the API test
because two remote CI bots are failing for reasons I don't quite
see. ]
Commit: 07ca4db1e1f53876b14e5773e8b9d77c20774fca
https://github.com/llvm/llvm-project/commit/07ca4db1e1f53876b14e5773e8b9d77c20774fca
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Linux.cpp
Log Message:
-----------
[Driver] Remove special handling for older Ubuntu (#162518)
Releases of Ubuntu that do not support the GNU hash style
are long unsupported.
Commit: 4df4b369a795abd520f6d66ed15eda9ebf0ac457
https://github.com/llvm/llvm-project/commit/4df4b369a795abd520f6d66ed15eda9ebf0ac457
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add support for fneg/fabs (#162690)
This patch adds support for fneg/fabs operations. For other bit
manipulation operations (select/copysign), we don't need new APIs.
Commit: a16477a52fcb49fa029b7ec215ec707b0a344223
https://github.com/llvm/llvm-project/commit/a16477a52fcb49fa029b7ec215ec707b0a344223
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/Bitset.h
A llvm/unittests/ADT/BitsetTest.cpp
M llvm/unittests/ADT/CMakeLists.txt
Log Message:
-----------
ADT: Add constructor from uint64_t array for Bitset (#162703)
Avoids exposing the implementation detail of uintptr_t to
the constructor.
This is a replacement of b738f630f73975bc591a82fdcb4858ae5da67477
which avoids needing tablegen to know the underlying storage type.
Commit: f9498048cc48ce7bf8604d07dfdef35ba076c363
https://github.com/llvm/llvm-project/commit/f9498048cc48ce7bf8604d07dfdef35ba076c363
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
Log Message:
-----------
AMDGPU/GlobalISel: Fix using wrong regbank for smfmac (#162762)
Make sure to apply the option+number of register logic from
the selection pattrn.
Commit: 958f320f4c98be2ffd7290b032610bab4f53de8d
https://github.com/llvm/llvm-project/commit/958f320f4c98be2ffd7290b032610bab4f53de8d
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn
Log Message:
-----------
[gn build] Port a16477a52fcb
Commit: c8205d6661267401983f0cad098b908d18baf9e5
https://github.com/llvm/llvm-project/commit/c8205d6661267401983f0cad098b908d18baf9e5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonPatterns.td
Log Message:
-----------
[Hexagon] Remove unreachable isel patterns. NFC (#162754)
These patterns are for setcc with scalar result type and vector operands
or shifts with vector result and scalar shift amount.
Commit: be9e747d49f7e21b97210cde6b9f458c90d2c6a4
https://github.com/llvm/llvm-project/commit/be9e747d49f7e21b97210cde6b9f458c90d2c6a4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
Log Message:
-----------
[SelectionDAG] Add SDTCisSameNumEltsAs to SDTIntShiftOp. (#162756)
The shift amount may have a different scalar size than the result, but
they should have the same number of elements or they should both
be scalar.
Commit: 067a11015d54bb8822601f7d242e4f8a0c7c5a7d
https://github.com/llvm/llvm-project/commit/067a11015d54bb8822601f7d242e4f8a0c7c5a7d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/RegisterCoalescer.cpp
A llvm/test/CodeGen/AMDGPU/coalescer-avoid-coalesce-class-with-no-registers.ll
A llvm/test/CodeGen/AMDGPU/coalescer-avoid-coalesce-class-with-no-registers.mir
Log Message:
-----------
RegisterCoalescer: Do not introduce uses of empty register classes (#161809)
Check RegisterClassInfo if any registers of the new class are
actually available for use. Currently AMDGPU overrides shouldCoalesce
to avoid this situation. The target hook does not have access to the
dynamic register class counts, but ideally the target hook would
only be used for profitability concerns.
The new test doesn't change, due to the AMDGPU shouldCoalesce override,
but would be unallocatable if we dropped the override and switched
to the default implementation. The existing limit-coalesce.mir already
tests the behavior of this override, but it's too conservative and
isn't checking the case where the new class is unallocatable. Add
this check so it can be relaxed.
Commit: a1b5e975c92a2f425817e321648036b386fc6b03
https://github.com/llvm/llvm-project/commit/a1b5e975c92a2f425817e321648036b386fc6b03
Author: Alan Zhao <ayzhao at google.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/Transforms/InstCombine/select-safe-transforms.ll
Log Message:
-----------
[InstCombine][profcheck] Preserve profile when folding constant value equivalences (#162736)
Commit: 3a9440b9f73b5b85917cff123ba0ce7f2e8115c4
https://github.com/llvm/llvm-project/commit/3a9440b9f73b5b85917cff123ba0ce7f2e8115c4
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2025-10-09 (Thu, 09 Oct 2025)
Changed paths:
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/DeclSpec.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseDeclCXX.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseObjc.cpp
M clang/lib/Parse/ParseStmt.cpp
M clang/lib/Parse/ParseTemplate.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/DeclSpec.cpp
M clang/lib/Sema/ParsedAttr.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/test/Sema/internal_linkage.c
Log Message:
-----------
[Sema] Keep attribute lists in the order the attributes were parsed (#162714)
This renames some attribute list related functions, to make callers
think about whether they want to append or prepend to the list, instead
of defaulting to prepending which is often not the desired behaviour
(for the cases where it matters, sometimes we're just adding to an empty
list). Then it adjusts some of these calls to append where they were
previously prepending. This has the effect of making
`err_attributes_are_not_compatible` consistent in emitting diagnostics
as `<new-attr> and <existing-attr> are not compatible`, regardless of
the syntax used to apply the attributes.
Commit: 0f3d0cf6d744ac58d7762b73b154b4e2cbe8b144
https://github.com/llvm/llvm-project/commit/0f3d0cf6d744ac58d7762b73b154b4e2cbe8b144
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/docs/UsersManual.rst
Log Message:
-----------
[clang][doc] Simplify Sampling-PGO use example (#162588)
The -fprofile-sample-use implies codegenoptions::LocTrackingOnly. No
need to explicitly specify -g if debug info is not required in final binary.
Also fix -fuse-ld=lld.
Commit: 22a02b63e80d6e9bc4a328b1c7256034003de7c0
https://github.com/llvm/llvm-project/commit/22a02b63e80d6e9bc4a328b1c7256034003de7c0
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/test/Transforms/DFAJumpThreading/dfa-unfold-select.ll
A llvm/test/Transforms/DFAJumpThreading/equivalent-states.ll
Log Message:
-----------
[DFAJumpThreading] Unify equivalent states (#162447)
DFAJumpThreading determines the switch destination of a threadable path
based on its next state and cannot reuse cloned blocks if their
destinations differ.
However, different states may lead to the same destination. This patch
unifies equivalent states, thereby avoiding redundant duplication of
cloned blocks.
Commit: 8a505a11ee6394596d48cfc689010cc68cdb724a
https://github.com/llvm/llvm-project/commit/8a505a11ee6394596d48cfc689010cc68cdb724a
Author: tcottin <timcottin at gmx.de>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/SymbolDocumentation.cpp
M clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
Log Message:
-----------
[clangd] Doxygen Parsing: Add proper handling of \note, \warning and \retval command + change render kind of command arguments + add preprocessing for markdown code blocks/spans (#156365)
Fixes some followup issues from clangd/clangd#529.
`\note` and `\warning`:
In the hover card, they are now displayed with heading and enclosing
rulers.
`\retval` commands:
Each `\retval` command is now a bullet point under the return section of
the hover card.
Added a Markdown preprocessing step before parsing the documentation
with the doxygen parser.
This mainly replaces markdown code blocks with `@code... at endcode`
commands.
Commit: 0df4e63798d208d7e0fe1f4693046bbe7f7ca704
https://github.com/llvm/llvm-project/commit/0df4e63798d208d7e0fe1f4693046bbe7f7ca704
Author: Henrik G. Olsson <hnrklssn at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/test/SemaOpenCL/address-spaces.cl
Log Message:
-----------
[OpenCL] update address-spaces.cl (#162785)
This test was broken by
https://github.com/llvm/llvm-project/pull/162714. Previously the
`[[clang::opencl_private]]` attribute was applied first, resulting in
the clashing `__global` attribute being ignored. Now that `__global` is
applied first, it results in an error, and then
`[[clang::opencl_private]]` is applied, resulting in another error.
Commit: cadddaf255c93759f7f630cc6de98062f4d2b2e4
https://github.com/llvm/llvm-project/commit/cadddaf255c93759f7f630cc6de98062f4d2b2e4
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Driver/Distro.h
M clang/lib/Driver/Distro.cpp
Log Message:
-----------
[clang] Remove support for really old Ubuntu releases (#162778)
After 07ca4db1e1f53876b14e5773e8b9d77c20774fca remove support
for really old and older Ubunutu (Hardy and Intrepid) releases.
Commit: 66da680330b27be569eb6a93056e53f3769a2910
https://github.com/llvm/llvm-project/commit/66da680330b27be569eb6a93056e53f3769a2910
Author: Ryan Cowan <ryan.cowan at arm.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/test/CodeGen/AArch64/arm64-indexed-memory.ll
M llvm/test/CodeGen/AArch64/f16-instructions.ll
M llvm/test/CodeGen/AArch64/fcvt-fixed.ll
M llvm/test/CodeGen/AArch64/frem-power2.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd-strict.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmul-strict.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
Log Message:
-----------
[AArch64][GlobalISel] Add G_FPEXT(G_FCONSTANT) folding (#160902)
This change adds a new folding pattern, folding a G_FPEXT(G_FCONSTANT)
to a G_FCONSTANT.
To make this work on AArch64, the `G_FCONSTANT` should not be widened
due to the `G_FCONSTANT` being converted to a `G_CONSTANT`. This should
fix some other floating point combines when the `G_FCONSTANT` is widened
due to being an fp16.
Commit: 0dff52ba9068ebf00ee81b5eb530f2f879303f01
https://github.com/llvm/llvm-project/commit/0dff52ba9068ebf00ee81b5eb530f2f879303f01
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/BinaryFormat/Dwarf.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
A llvm/test/tools/llvm-dwarfdump/X86/DW_AT_language_name.s
A llvm/test/tools/llvm-dwarfdump/X86/DW_AT_language_version.s
Log Message:
-----------
[llvm-dwarfdump] Support for DW_AT_language_name and DW_AT_language_version (#162449)
Depends on:
* https://github.com/llvm/llvm-project/pull/162434
* https://github.com/llvm/llvm-project/pull/162446
Makes sure we dump the attributes in a user-friendly way.
More info on the attributes here: https://dwarfstd.org/languages-v6.html
Commit: 187a8e3e086ae8e4e62929847ff2d11ebf77d4a9
https://github.com/llvm/llvm-project/commit/187a8e3e086ae8e4e62929847ff2d11ebf77d4a9
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[InstSimplify] Support ptrtoaddr in pointer subtraction fold (#162672)
Add a new m_PtrToIntOrAddr() matcher which matches both ptrtoint and
ptrtoaddr. Pointer arithmetic only works on the address bits, so
supporting ptrtoaddr is always fine here.
Commit: 2aeefcf40f513b56ccb74abe851415a81a02d1b8
https://github.com/llvm/llvm-project/commit/2aeefcf40f513b56ccb74abe851415a81a02d1b8
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCall.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/test/CodeGen/backend-unsupported-error.ll
M clang/test/CodeGen/fp-function-attrs.cpp
M clang/test/CodeGen/func-attr.c
M clang/test/CodeGenCUDA/propagate-attributes.cu
M clang/test/CodeGenOpenCL/relaxed-fpmath.cl
Log Message:
-----------
[clang][CodeGen] Remove "unsafe-fp-math" attribute support (#162779)
These global flags block furthur improvements for clang, users should
always use fast-math flags
see also
https://discourse.llvm.org/t/rfc-honor-pragmas-with-ffp-contract-fast/80797
Remove them incrementally, this is the clang part.
Commit: 31e85cc57222c5f3bf5abe2b0d45a3a0b11d1676
https://github.com/llvm/llvm-project/commit/31e85cc57222c5f3bf5abe2b0d45a3a0b11d1676
Author: Brad Smith <brad at comstyle.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/lib/Analysis/TargetLibraryInfo.cpp
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/test/CodeGen/ARM/sincos.ll
M llvm/test/CodeGen/X86/stack-protector-target.ll
M llvm/test/Instrumentation/AddressSanitizer/with-ifunc.ll
M llvm/test/Transforms/InstCombine/sprintf-1.ll
M llvm/test/Transforms/SafeStack/X86/abi_ssp.ll
Log Message:
-----------
[Android] Drop workarounds for older Android API levels pre 9, 17 and 21 (#161911)
Drop workarounds for Android API levels pre 9, 17, 21.
The minimum Android API currently supported by the LTS NDK is 21.
Commit: 261580cacd0be842ab62466193a385384a95c61a
https://github.com/llvm/llvm-project/commit/261580cacd0be842ab62466193a385384a95c61a
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/ptr_diff.ll
Log Message:
-----------
[InstSimplify] Support non-inbounds GEP in ptrdiff fold (#162676)
We can fold ptrdiff(ptradd(p, x), p) to x regardless of whether the
ptradd is inbounds.
Proof: https://alive2.llvm.org/ce/z/Xuvc7N
Commit: eace84dd5d50831227b5863a3ae1ab68d71ea736
https://github.com/llvm/llvm-project/commit/eace84dd5d50831227b5863a3ae1ab68d71ea736
Author: quic_hchandel <hchandel at qti.qualcomm.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVFeatures.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/test/CodeGen/RISCV/cmov-branch-opt.ll
M llvm/test/CodeGen/RISCV/xqcicli.ll
M llvm/test/CodeGen/RISCV/xqcics.ll
Log Message:
-----------
[RISCV] Prioritize Qualcomm uC Xqcics over Xqcicli (#162416)
In cases where both Xqcics and Xqcicli patterns can be used, Xqcics
should be used because some instructions in this extension are
commutable.
Commit: aa406aaa671888540ec9e908742c26229d6d7508
https://github.com/llvm/llvm-project/commit/aa406aaa671888540ec9e908742c26229d6d7508
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.h
M llvm/test/TableGen/RuntimeLibcallEmitter-calling-conv.td
M llvm/test/TableGen/RuntimeLibcallEmitter-conflict-warning.td
M llvm/test/TableGen/RuntimeLibcallEmitter.td
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
Log Message:
-----------
RuntimeLibcalls: Add bitset for available libcalls (#150869)
This is a step towards separating the set of available libcalls
from the lowering decision of which call to use. Libcall recognition
now directly checks availability instead of indirectly checking through
the lowering table.
Commit: ef4598fbc6038d47c33a1746e47885833cd69ade
https://github.com/llvm/llvm-project/commit/ef4598fbc6038d47c33a1746e47885833cd69ade
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SPSWrapperFunction.h
M orc-rt/include/orc-rt/WrapperFunction.h
M orc-rt/unittests/SPSWrapperFunctionTest.cpp
Log Message:
-----------
[orc-rt] Enable span<const char> use in SPSWrapperFunctions. (#162792)
SPS deserialization for span<const char> produces a value that points
directly into the argument buffer for efficiency. This was broken by an
unnecessary std::move of the buffer inside WrapperFunction, which this
commit removes.
Commit: 51eee2010d3184f21502d12d69c0234549ee3fb4
https://github.com/llvm/llvm-project/commit/51eee2010d3184f21502d12d69c0234549ee3fb4
Author: yingopq <115543042+yingopq at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/test/MC/Mips/branch-pseudos-bad.s
Log Message:
-----------
[Mips] Fix clang crashes when assembling invalid MIPS beql instructions with --arch=mips (#156413)
>From clang version 4, mips append new instruction BeqImm and
BEQLImm, the second operand format of instruction is imm64:$imm.
1.When Mips process `beql $t0, ($t0), 1`, it think the second operand
was an imm, so match success. Then mips backend process expandBranchImm,
check the second operand `$t0` was not imm, reported asserts.
We can strengthen the second operand matching restrictions.
2.Similarly, when Mips process `beql $t0, (1), 1`, it think the second
was an imm. so match success. Then mips backend process expandBranchImm,
check the third operand `1` was not expression, reported asserts. Permit
the third operand of `beql` to be imm.
Fixes #151453.
Commit: c32753a77a724244bfac60405390a14c93fd92fa
https://github.com/llvm/llvm-project/commit/c32753a77a724244bfac60405390a14c93fd92fa
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
A llvm/test/Assembler/dicompileunit-conflicting-language-fields.ll
A llvm/test/Assembler/dicompileunit-invalid-language.ll
M llvm/test/Assembler/invalid-dicompileunit-missing-language.ll
A llvm/test/Bitcode/dwarf-source-language-name.ll
Log Message:
-----------
[llvm][DebugInfo] Add 'sourceLanguageName' field support to DICompileUnit (#162445)
Depends on:
* https://github.com/llvm/llvm-project/pull/162255
* https://github.com/llvm/llvm-project/pull/162434
Part of a patch series to support the DWARFv6
`DW_AT_language_name`/`DW_AT_language_version` attributes.
Commit: 6c2781e187b7a1e9a90f76009352c9f63fef4642
https://github.com/llvm/llvm-project/commit/6c2781e187b7a1e9a90f76009352c9f63fef4642
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/GVN.h
M llvm/include/llvm/Transforms/Utils/Local.h
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Utils/Local.cpp
M llvm/test/Transforms/GVN/condprop.ll
Log Message:
-----------
[GVN] Share equality propagation for assume and condition (#161639)
GVN currently has two different implementation of equality propagation.
One of them is used for branch conditions (dominating an edge), which
performs replacements across multiple blocks. This is also used for
assumes to handle uses outside the current block.
However, uses inside the block are handled using a completely separate
implementation, which involves populating a replacement map and then
checking it for individual instructions during normal GVN. While this
approach generally makes sense, it is kind of pointless if we already do
a use walk to handle the cross-block case anyway.
This PR generalizes propagateEquality() to accept either a
BasicBlockEdge or an Instruction* and replace dominated users. This
removes the need for special handling of uses in the same block for
assumes, as they're covered by instruction dominance, and ensures that
both implementations do not go out of sync.
Commit: 881a57b99568c6d0790ca81cb36376618640f4b3
https://github.com/llvm/llvm-project/commit/881a57b99568c6d0790ca81cb36376618640f4b3
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
Log Message:
-----------
[DFAJumpThreading] Use a single lazy DTU (#162802)
Resolves
https://github.com/llvm/llvm-project/pull/162240#pullrequestreview-3309102803
Commit: de55329b6ed7184771fb036e52475a63ebc67c97
https://github.com/llvm/llvm-project/commit/de55329b6ed7184771fb036e52475a63ebc67c97
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/HLFIRTools.h
M flang/lib/Lower/Bridge.cpp
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
M flang/lib/Optimizer/Builder/HLFIRTools.cpp
M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
M flang/test/HLFIR/as_expr-codegen.fir
M flang/test/HLFIR/associate-codegen.fir
M flang/test/HLFIR/bufferize-poly-expr.fir
M flang/test/HLFIR/element-codegen-issue-118922.fir
M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
M flang/test/Lower/OpenMP/delayed-privatization-allocatable-array.f90
M flang/test/Lower/OpenMP/delayed-privatization-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array-lb.f90
M flang/test/Lower/OpenMP/parallel-reduction-array.f90
M flang/test/Lower/OpenMP/parallel-reduction-array2.f90
M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
M flang/test/Lower/OpenMP/parallel-reduction3.f90
M flang/test/Lower/OpenMP/reduction-array-intrinsic.f90
M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
Log Message:
-----------
[flang][NFC] update createTempFromMold interface to return a bool (#162680)
Some createTempFromMold users are looking for a compile time constant
for the `mustFree`. Instead of having them retrieving it, update the
interface to return a bool. The only users that needs a value was
`packageBufferizedExpr` and it has an overload that accept bool too.
Tests are updated to reflect that this changes the place where the
boolean is created in BufferizeHLFIR, and just removes its creation in
contexts it is not needed.
Commit: 9aaec5550dbc58b0946fc10f5fe69542ca5dadfb
https://github.com/llvm/llvm-project/commit/9aaec5550dbc58b0946fc10f5fe69542ca5dadfb
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-semicolon.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters-strict.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx03.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx11.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-disallow-copy-and-assign-macro.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-bool-literals.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints-first-greatergreater.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-override-and-final.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-ms.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-no-destructors.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-templates.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-macro.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-no-macro-inscope.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/duplicate-include.h
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-anon-record-fields.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-bugfix-name-conflicts.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-case-match.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-c-language.c
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-cfgfile.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-ignored-regexp.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-fixing.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/make-member-function-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-alternative.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-traditional.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers-check-first-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-control-flow.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.c
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-msvc.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance-nesting-threshold.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uniqueptr-delete-release.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove regex hacks to match full lines in tests (#162293)
This is part of the migration started by #133756. The next step would be
moving many tests away from `--match-partial-fixes`.
Commit: 97cf55b2ce1aa3cfee033704ac899e0bf53a1c50
https://github.com/llvm/llvm-project/commit/97cf55b2ce1aa3cfee033704ac899e0bf53a1c50
Author: Pragyansh Chaturvedi <76248539+r41k0u at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-smulh.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-umulh.mir
M llvm/test/CodeGen/AArch64/pr58431.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
Log Message:
-----------
[GlobalISel] add KnownBits tracking for G_UMULH and G_SMULH (#158445)
The code is taken from `SelectionDAG::computeKnownBits`.
This ticks off `MULHU` and `MULHS` from
https://github.com/llvm/llvm-project/issues/150515
Commit: fab7bd48fc170c2f7ad74671dfcc55a69bb24851
https://github.com/llvm/llvm-project/commit/fab7bd48fc170c2f7ad74671dfcc55a69bb24851
Author: Ryan Cowan <ryan at holycowman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/test/CodeGen/AArch64/arm64-indexed-memory.ll
M llvm/test/CodeGen/AArch64/f16-instructions.ll
M llvm/test/CodeGen/AArch64/fcvt-fixed.ll
M llvm/test/CodeGen/AArch64/frem-power2.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd-strict.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmul-strict.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
Log Message:
-----------
Revert "[AArch64][GlobalISel] Add G_FPEXT(G_FCONSTANT) folding" (#162805)
Reverts llvm/llvm-project#160902 as the tests need updating to prevent
breaking the build. More specifically, the `AMDGPU` tests.
Commit: f2ffb4d20b61ca5e23287dea34dc4d17a8b6c134
https://github.com/llvm/llvm-project/commit/f2ffb4d20b61ca5e23287dea34dc4d17a8b6c134
Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/Sema/SemaAMDGPU.cpp
A clang/test/CodeGen/builtins-image-load.c
A clang/test/CodeGen/builtins-image-store.c
A clang/test/SemaOpenCL/builtins-image-load-param-gfx1100-err.cl
A clang/test/SemaOpenCL/builtins-image-load-param-gfx942-err.cl
A clang/test/SemaOpenCL/builtins-image-store-param-gfx1100-err.cl
A clang/test/SemaOpenCL/builtins-image-store-param-gfx942-err.cl
Log Message:
-----------
[AMDGPU] Support for type inferring image load/store builtins for AMDGPU (#140210)
Introduces the builtins for amdgcn_image_load/store/sample.
Commit: 8ad5a217906db80c6d6502246b70947f26de9bbd
https://github.com/llvm/llvm-project/commit/8ad5a217906db80c6d6502246b70947f26de9bbd
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M libcxx/utils/libcxx/test/format.py
Log Message:
-----------
[libc++] Fix %{temp} replacements when running benchmarks
Commit: 6f1ce2b25b56d0fac317d93e7b59a22afbb54931
https://github.com/llvm/llvm-project/commit/6f1ce2b25b56d0fac317d93e7b59a22afbb54931
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/Bitset.h
M llvm/unittests/ADT/BitsetTest.cpp
Log Message:
-----------
[llvm][ADT] Fix uint64_t array BitSet construction on 32-bit systems (#162814)
When the underlying storage element is 32-bit, we may only need half of
the last value in the uint64_t array. I've adjusted the constructor to
account for that.
For example, if you construct a 65 bit bitset you will need both 32-bit
halves of the first array value but only the bottom half of the second
value. The storage will only have 3 elements, so attempting to assign
the top 32-bits into the storage will fail.
This happened on our buildbot:
https://lab.llvm.org/buildbot/#/builders/154/builds/22555
(though the traceback is not useful)
Then added tests for < 32 bit sizes, and assertions for the number of
elements we decide to use. Given that the only member of BitSet is a
std::array, I think the size will be consistent across systems.
Tested on 32 and 64-bit Arm machines.
Follow up to #162703.
Commit: b52efa5f05861d0b471c25261b2f2c3af78759cb
https://github.com/llvm/llvm-project/commit/b52efa5f05861d0b471c25261b2f2c3af78759cb
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/sve-vector-deinterleave.ll
M llvm/test/CodeGen/AArch64/sve-vector-interleave.ll
Log Message:
-----------
[LLVM][CodeGen][SVE] Add lowering for 3-way VECTOR_(DE)INTERLEAVE operations. (#162502)
SVE has no in-register instructions to do this, but we can perform the
operation through memory by using ld3/st3.
Commit: 86ab51935baa876e29496da2bd20d433766a1b11
https://github.com/llvm/llvm-project/commit/86ab51935baa876e29496da2bd20d433766a1b11
Author: JaydeepChauhan14 <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
R llvm/test/CodeGen/X86/fast-isel-fneg.ll
A llvm/test/CodeGen/X86/isel-fneg.ll
Log Message:
-----------
[X86][NFC] Moved/Updated FNEG testcases (#162269)
- Moved existing testcases from
```llvm/test/CodeGen/X86/fast-isel-fneg.ll``` to
```llvm/test/CodeGen/X86/isel-fneg.ll```.
- Added **x86_fp80** testcase and **GISEL** RUN lines as precommit
testcases for GISEL.
- Two i686 testcases are disabled because it is crashing in later passes
only for GISEL. It will resolve after adding **FNEG GISEL
implementation**, I will add that in next PR.
Commit: 50cda17e32fd528e5b342836e69e28b5a8841a8f
https://github.com/llvm/llvm-project/commit/50cda17e32fd528e5b342836e69e28b5a8841a8f
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme2_RP_AND_faminmax___sme_AND_sme2_AND_faminmax.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme2_RP_AND_fp8___sme_AND_sme2_AND_fp8.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme2_RP_AND_lut___sme_AND_sme2_AND_lut.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2_OR_sme_RP___sme.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-sha3___sme_AND_sme2p1_AND_sve-sha3.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve-sha3___sme_AND_sve-sha3_AND_sme2p1.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_faminmax___sme_AND_sme2_AND_faminmax.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_fp8___sme_AND_sme2_AND_fp8.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2_AND_lut___sme_AND_sme2_AND_lut.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2___sme.c
A clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2p1___sme_AND_LP_sve2p1_OR_sme2_RP.c
R clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2p1___sme_AND_sme2.c
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_fp8.c
M clang/utils/TableGen/SveEmitter.cpp
Log Message:
-----------
[Clang][AArch64] Relax SVE2 requirement for builtins available via +sme. (#162457)
Having both SVE and SME environments essentially means the majority of
SVE2 instructions are always available. This PR reflects this at the
builtins level whereby +sve+sme is enough to enable this subset.
It's a similar story for +sve2p1 whereby the feature means a subset of
SME2 instructions are always available.
Commit: be7f85168df418a97a1206a7bf35a8c314ba8f29
https://github.com/llvm/llvm-project/commit/be7f85168df418a97a1206a7bf35a8c314ba8f29
Author: Vladimir Radosavljevic <129192835+vladimirradosavljevic at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/CodeGenPrepare.cpp
A llvm/test/Transforms/CodeGenPrepare/X86/baseoffs-sext-bug.ll
Log Message:
-----------
[CGP] Fix missing sign extension for base offset in optimizeMemoryInst (#161377)
If we have integers larger than 64-bit we need to explicitly sign extend
them, otherwise we will get wrong zero extended values.
Commit: e26058cefc5c81cf8ce4fbd31eebfe28de1c607c
https://github.com/llvm/llvm-project/commit/e26058cefc5c81cf8ce4fbd31eebfe28de1c607c
Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-break-large-phis-heuristics.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-fdiv.ll
M llvm/test/CodeGen/AMDGPU/fdiv_flags.f32.ll
M llvm/test/CodeGen/AMDGPU/uniform-select.ll
Log Message:
-----------
[AMDGPU] Use reverse iteration in CodeGenPrepare (#145484)
In order to make this easier, I also removed all "removeFromParent"
calls from the visitors, instead adding instructions
to a set of instructions to delete once the function has been visited.
This avoids crashes due to functions deleting their operands. In theory
we could allow functions to delete the
instruction they visited (and only that one) but I think having one
idiom for everything is less error-prone.
Fixes #140219
Commit: 80f48b849378dd46b5ff19945995c0f1598eb16b
https://github.com/llvm/llvm-project/commit/80f48b849378dd46b5ff19945995c0f1598eb16b
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A clang/test/C/C2y/n3532.c
M clang/www/c_status.html
Log Message:
-----------
[C2y] Claim support for WG14 N3532; NFC (#162718)
This paper was ensuring that the left operand of . and -> must be a
complete object type. This has always been required in every version of
Clang.
Commit: 1c5bba1e4716547e24d07ca830e9db64cc9221da
https://github.com/llvm/llvm-project/commit/1c5bba1e4716547e24d07ca830e9db64cc9221da
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/sve-asrd.ll
Log Message:
-----------
[LLVM][CodeGen][SVE] ASRD cannot represent sdiv-by-one. (#162708)
We lower signed divides by a power-of-two to ASRD. However, ASRD's
immediate is log2(shift_amount) in the range 1 to elt-bitwidth, which
means it cannot represent sdiv-by-one.
Fixes https://github.com/llvm/llvm-project/issues/162616
Commit: 2eb8c47b88e83cf310b86480b5b8d0f45a1f91af
https://github.com/llvm/llvm-project/commit/2eb8c47b88e83cf310b86480b5b8d0f45a1f91af
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M .github/new-prs-labeler.yml
R clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
M clang/lib/Analysis/CMakeLists.txt
R clang/lib/Analysis/LifetimeAnnotations.cpp
R clang/lib/Analysis/LifetimeSafety.cpp
A clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
A clang/lib/Analysis/LifetimeSafety/Checker.cpp
A clang/lib/Analysis/LifetimeSafety/Dataflow.h
A clang/lib/Analysis/LifetimeSafety/Facts.cpp
A clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
A clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
A clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
A clang/lib/Analysis/LifetimeSafety/Loans.cpp
A clang/lib/Analysis/LifetimeSafety/Origins.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
Log Message:
-----------
[LifetimeSafety] Reorganize code into modular components (#162474)
Restructure the C++ Lifetime Safety Analysis into modular components
with clear separation of concerns.
This PR reorganizes the C++ Lifetime Safety Analysis code by:
1. Breaking up the monolithic `LifetimeSafety.cpp` (1500+ lines) into
multiple smaller, focused files
2. Creating a dedicated `LifetimeSafety` directory with a clean
component structure
3. Introducing header files for each component with proper documentation
4. Moving existing code into the appropriate component files:
- `Checker.h/cpp`: Core lifetime checking logic
- `Dataflow.h`: Generic dataflow analysis framework
- `Facts.h`: Lifetime-relevant events and fact management
- `FactsGenerator.h/cpp`: AST traversal for fact generation
- `LiveOrigins.h/cpp`: Backward dataflow analysis for origin liveness
- `LoanPropagation.h/cpp`: Forward dataflow analysis for loan tracking
- `Loans.h`: Loan and access path definitions
- `Origins.h`: Origin management
- `Reporter.h`: Interface for reporting lifetime violations
- `Utils.h`: Common utilities for the analysis
The code functionality remains the same, but is now better organized
with clearer interfaces between components.
Commit: 5eef98ba319a53567bb1a145852f946e7d72bc5b
https://github.com/llvm/llvm-project/commit/5eef98ba319a53567bb1a145852f946e7d72bc5b
Author: Valery Pykhtin <valery.pykhtin at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SlotIndexes.h
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
M llvm/test/CodeGen/AMDGPU/regpressure_printer.mir
Log Message:
-----------
[AMDGPU] Use correct SlotIndex to calculate live-out register set. (#161720)
Using SlotIndexes::getMBBEndIdx() isn't the correct choice here because
it returns the starting index of the next basic block, causing live-ins
of the next block to be calculated instead of the intended live-outs of
the current block.
Add SlotIndexes::getMBBLastIdx() method to return the last valid
SlotIndex within a basic block, enabling correct live-out calculations.
Commit: 3fdef23873c61522e8de2ba5171d05b4c6d127be
https://github.com/llvm/llvm-project/commit/3fdef23873c61522e8de2ba5171d05b4c6d127be
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
Remove WG14 N3563
This paper had only non-normative changes and was already covered by
existing nullptr_t test coverage.
Commit: b298421e0c59c38a0dd9f13a0c45383e4e68a286
https://github.com/llvm/llvm-project/commit/b298421e0c59c38a0dd9f13a0c45383e4e68a286
Author: Ryan Cowan <ryan at holycowman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/test/CodeGen/AArch64/arm64-indexed-memory.ll
M llvm/test/CodeGen/AArch64/f16-instructions.ll
M llvm/test/CodeGen/AArch64/fcvt-fixed.ll
M llvm/test/CodeGen/AArch64/frem-power2.ll
M llvm/test/CodeGen/AArch64/vecreduce-fadd-strict.ll
M llvm/test/CodeGen/AArch64/vecreduce-fmul-strict.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
M llvm/test/CodeGen/AMDGPU/maximumnum.ll
M llvm/test/CodeGen/AMDGPU/minimumnum.ll
Log Message:
-----------
[AArch64][GlobalISel] Add G_FPEXT(G_FCONSTANT) folding (#162829)
Commit: 0a21b06e0b4cad19010191983d695ac8ebec362f
https://github.com/llvm/llvm-project/commit/0a21b06e0b4cad19010191983d695ac8ebec362f
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
Remove WG14 N3544
This paper had only non-normative changes about the classification list
of storage class specifiers. There is nothing here to test for
conformance.
Commit: bea786d12819c4e9616c6e4bba8be3253f853cd2
https://github.com/llvm/llvm-project/commit/bea786d12819c4e9616c6e4bba8be3253f853cd2
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/NewGVN.cpp
M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Log Message:
-----------
[NFC][LLVM] Use namespace qualifier to define DenseMapInfo specializations (#162683)
Use `llvm::DenseMapInfo` to define `DenseMapInfo` specializations
instead of surrounding it with `namespace llvm {}`.
Commit: ea5648b1a85238ee435a851c032f02f5abc05a7b
https://github.com/llvm/llvm-project/commit/ea5648b1a85238ee435a851c032f02f5abc05a7b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/LowerInvoke.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in LowerInvoke.cpp (#162691)
Fix indentation for `LowerInvokeLegacyPass` and use namespace qualifiers
for defining variables and functions in `llvm` namespace.
Commit: 97031a6e0926797fcd5f7fefc13b10b33f98c9d9
https://github.com/llvm/llvm-project/commit/97031a6e0926797fcd5f7fefc13b10b33f98c9d9
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/MisExpect.h
M llvm/lib/Transforms/Utils/MisExpect.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in MisExpect.cpp (#162695)
- Make instruction arguments to the `misexpect` functions const and drop
const for `ArrayRef` arguments.
- Remove namespace llvm/misexpect surrounding all the code in .cpp file
and instead use `using namespace`.
- Change static helper functions to also use const references or
pointers when possible.
Commit: 167c00e4a4b44f2c0b7bd278526f1017fc94ae41
https://github.com/llvm/llvm-project/commit/167c00e4a4b44f2c0b7bd278526f1017fc94ae41
Author: Syadus Sefat <42645939+mssefat at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smax.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smin.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umax.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umin.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/smed3.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/umed3.ll
M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add register bank legalization for G_SMIN/G_SMAX/G_UMIN/G_UMAX (#159821)
[AMDGPU][GlobalISel] Add register bank legalization for
G_SMIN/G_SMAX/G_UMIN/G_UMAX
This patch adds register bank legalization support for min/max
operations in the AMDGPU GlobalISel pipeline.
- Add support S16, S32, and V2S16 types
- For V2S16 uniform operations implements UnpackMinMax lowering
Commit: e297184ba1b6f3683ba3e8f6197876b22c90ff7d
https://github.com/llvm/llvm-project/commit/e297184ba1b6f3683ba3e8f6197876b22c90ff7d
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/docs/analyzer/developer-docs/Statistics.rst
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/lib/StaticAnalyzer/Core/EntryPointStats.cpp
Log Message:
-----------
[clang][analyzer] Remove boolean per-entry-point metrics (#162817)
The complexity of maintaining an extra kind of metrics have not
justified itself, as it is not used upstream, and we have only a single
use of boolean stats per entrypoint downstream.
As I will do downstream, you can use an unsigned statistic type with
values 0 and 1 to model a boolean flag.
--
CPP-7097
Commit: f04ae1f4b1d49c042fbbb6c811bffba5fa88a66c
https://github.com/llvm/llvm-project/commit/f04ae1f4b1d49c042fbbb6c811bffba5fa88a66c
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
Log Message:
-----------
[InstCombine] Perform common cast transforms for ptrtoaddr
Commit: a833d902ae041e597cf7252d07198df470c0b736
https://github.com/llvm/llvm-project/commit/a833d902ae041e597cf7252d07198df470c0b736
Author: Nico Weber <thakis at chromium.org>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/Analysis/LifetimeSafety/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
Log Message:
-----------
[gn build] Port 2eb8c47b88e8
Commit: 1d3ad74667e86a1ba19285e58d14156cce3de89d
https://github.com/llvm/llvm-project/commit/1d3ad74667e86a1ba19285e58d14156cce3de89d
Author: flovent <flbven at protonmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
Log Message:
-----------
[clang-tidy] Fix insertion location for certain function pointers in `cppcoreguidelines-init-variables` (#162218)
This patch starts to find terminator from `VarDecl`'s end location
rather than it's `getLocation()` to ignore terminator(`,`) in function
paramaters list.
Kind of follow up to #112091
Closes #161978 .
Commit: 027b64789662997c9bf27d39c59f0fb32c96f270
https://github.com/llvm/llvm-project/commit/027b64789662997c9bf27d39c59f0fb32c96f270
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/test/CodeGen/X86/fp-int-fp-cvt.ll
Log Message:
-----------
[X86] Add additional test coverage for #160111 (#162838)
Commit: 1e84cb512748742e244d1062ef64f76764127423
https://github.com/llvm/llvm-project/commit/1e84cb512748742e244d1062ef64f76764127423
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
M llvm/test/Analysis/DependenceAnalysis/SameSDLoops.ll
Log Message:
-----------
[DA] Address followup comments on #128782 (#162645)
This is a follow-up PR for post-commit comments in #128782 .
- Fix variable name to camel case.
- Change the output format to make it easier to handle with FileCheck.
- Regenerate assertions of regression tests.
Commit: 394e7ded8b6bcff1382468b407ca620a2837f41b
https://github.com/llvm/llvm-project/commit/394e7ded8b6bcff1382468b407ca620a2837f41b
Author: aokblast <aokblast at FreeBSD.org>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/source/Host/freebsd/Host.cpp
Log Message:
-----------
[LLDB, x86, FreeBSD] Fix Architecture parsing by reading the ELF header. (#162811)
Currently, LLDB in FreeBSD host sets the Process Architecture used by
lldbserver as Default one. Which cause problem when trying to debug a
32bit binary on amd64 platform since the lldb itself will found mismatch
architecture with lldbserver's return.
Notice that this patch is only a partial fix for the debugging problem.
We are still unable to debug x86 on x86_64 so that we don't provide
testcase in this patch.
See: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=289945
Commit: e18461a14eee06a1c83301a8b02d31ac4d275061
https://github.com/llvm/llvm-project/commit/e18461a14eee06a1c83301a8b02d31ac4d275061
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/test/API/lang/cpp/floating-types-specialization/TestCppFloatingTypesSpecialization.py
Log Message:
-----------
[lldb][test] Skip TestCppFloatingTypesSpecialization.py on older compilers
Fails with:
```
08:19:28 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/clang_1501_build/bin/clang++ -std=c++11 -g -O0 -isysroot "/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.2.sdk" -arch arm64 -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make/../../../../..//include -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/lldb-build/tools/lldb/include -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/cpp/floating-types-specialization -I/Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make -include /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/packages/Python/lldbsuite/test/make/test_common.h -fno-limit-debug-info -nostdlib++ -nostdinc++ -cxx-isystem /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/clang_1501_build/include/c++/v1/ --driver-mode=g++ -MT main.o -MD -MP -MF main.d -c -o main.o /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/cpp/floating-types-specialization/main.cpp
08:19:28 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/cpp/floating-types-specialization/main.cpp:3:24: error: __bf16 is not supported on this target
08:19:28 template <> struct Foo<__bf16> {};
08:19:28 ^
08:19:28 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/cpp/floating-types-specialization/main.cpp:5:40: error: __bf16 is not supported on this target
08:19:28 template <> struct Foo<_Float16> : Foo<__bf16> {};
08:19:28 ^
08:19:28 /Users/ec2-user/jenkins/workspace/llvm.org/lldb-cmake-matrix/llvm-project/lldb/test/API/lang/cpp/floating-types-specialization/main.cpp:8:7: error: __bf16 is not supported on this target
08:19:28 Foo<__bf16> f0;
08:19:28 ^
08:19:28 3 errors generated.
08:19:28 make: *** [main.o] Error 1
```
On our Clang-15.0 CI.
Commit: 9922d8dd799dd22f3e34e774ed2750df56a4ca4d
https://github.com/llvm/llvm-project/commit/9922d8dd799dd22f3e34e774ed2750df56a4ca4d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
Log Message:
-----------
AMDGPU: Stop using aligned VGPR classes for addRegisterClass (#158278)
This is unnecessary. At use emission time, InstrEmitter will
use the common subclass of the value type's register class and
the use instruction register classes. This removes one of the
obstacles to treating special case instructions that do not have
the alignment requirement overly conservatively.
Commit: 311d1138e7e736f887dadba16ffb64ee9b47b159
https://github.com/llvm/llvm-project/commit/311d1138e7e736f887dadba16ffb64ee9b47b159
Author: Tom Tromey <tromey at adacore.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
M llvm/test/DebugInfo/X86/DW_OP_LLVM_extract_bits.ll
Log Message:
-----------
Do not emit right shift by 0 in DWARF expressions (#162738)
DW_OP_LLVM_extract_bits_zext and DW_OP_LLVM_extract_bits_sext can end up
emitting "DW_OP_constu 0; DW_OP_shr" when given certain arguments.
However, a shift by zero is not useful, and so it can be omitted.
Commit: 83d3a2efe462e16165ef2c9d58e30f8d3ad2f2b0
https://github.com/llvm/llvm-project/commit/83d3a2efe462e16165ef2c9d58e30f8d3ad2f2b0
Author: Md Abdullah Shahneous Bari <98356296+mshahneo at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A mlir/include/mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h
A mlir/include/mlir/Dialect/XeGPU/uArch/uArchBase.h
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
Log Message:
-----------
[uArch][XeGPU] Add XeGPU uArch definition. (#153706)
The uArch infrastructure provides:
- A set data structures to represent, uArch and it's necessary
components (e.g., instructions, register-files, caches).
- A set of utility interfaces that are common to a family of ops (e.g.,
mma ops, 2DBlockIO ops). The implementation of these interfaces are
provided by the specific instructions. Each family of ops provides these
5 common APIs. However, some family of ops may have more utility APIs.
The common 5 APIs are:
- getSupportedShapes
- getSupportedTypes
- checkSupportedShapesAndTypes
- checkSupportedTypes
- validate
Add support for PVC and BMG architectures.
Add support for DPAS instruction.
Commit: 2992d3dfef31ff0cc284f23ee18245fa480d20f5
https://github.com/llvm/llvm-project/commit/2992d3dfef31ff0cc284f23ee18245fa480d20f5
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A clang/test/C/C2y/n3623.c
M clang/www/c_status.html
Log Message:
-----------
[C2y] Claim support for WG14 N3623 (#162843)
This requires invalid signatures of main to be diagnosed while still
allowing for common extensions. Clang has always supported this.
Commit: 424fa833352177da4ea39238c040703e1dc3a0ab
https://github.com/llvm/llvm-project/commit/424fa833352177da4ea39238c040703e1dc3a0ab
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/lib/Target/SPIRV/SPIRVMergeRegionExitTargets.cpp
M llvm/lib/Target/SPIRV/SPIRVStripConvergentIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
CodeGen: Remove unused IntrinsicLowering includes (#162844)
Commit: 3340b245afb3d6b0cf5d7a61be1ef00a6c539a51
https://github.com/llvm/llvm-project/commit/3340b245afb3d6b0cf5d7a61be1ef00a6c539a51
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
Log Message:
-----------
[DFAJumpThreading] Precompute value => successor mapping (#162824)
Address some previous comments. Note that the value => successor mapping
is invalid during DFA transformation unless we update it correctly.
Commit: 21b2bdd91c0e5c3643eea6c55700740228054c2d
https://github.com/llvm/llvm-project/commit/21b2bdd91c0e5c3643eea6c55700740228054c2d
Author: Connector Switch <c8ef at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M libcxx/docs/VendorDocumentation.rst
Log Message:
-----------
[libcxx][NFC] Added `libunwind` to `LLVM_ENABLE_RUNTIMES` for Windows… (#162682)
… builds using MinGW.
I tried running the original command, but the error told me I had to
include libunwind.
Commit: fca40b3b6fdc621e25166cd4b287a9b36b6f46a8
https://github.com/llvm/llvm-project/commit/fca40b3b6fdc621e25166cd4b287a9b36b6f46a8
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
Log Message:
-----------
[lldb][docs] State that the extension packets doc should be alphabetised
I did this when I converted it but never stated so. Adding a comment
stating so. We'll probably forget at some point but might as well.
Also moved the x packet to the last place, after wasm which was
added to the end recently.
Commit: 31d260211a27a59788c6a00a3bf55df8e5047940
https://github.com/llvm/llvm-project/commit/31d260211a27a59788c6a00a3bf55df8e5047940
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/include/lldb/Host/JSONTransport.h
Log Message:
-----------
[lldb] Add a missing <atomic> include. NFC. (#162809)
This fixes building LLDB for mingw with libstdc++, after
8ae30a3facd25c9c7c2cfb96b69466a6c4d22baa.
Previously, building errored out with errors like these:
In file included from llvm-project/lldb/include/lldb/Protocol/MCP/Transport.h:12,
from llvm-project/lldb/include/lldb/Protocol/MCP/Server.h:16,
from llvm-project/lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h:15,
from llvm-project/lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp:9:
llvm-project/lldb/include/lldb/Host/JSONTransport.h:608:23: error: field ‘replied’ has incomplete type ‘std::atomic<bool>’
608 | std::atomic<bool> replied = {false};
| ^~~~~~~
In file included from gcc-mingw/x86_64-w64-mingw32/include/c++/12.1.0/bits/shared_ptr_atomic.h:33,
from gcc-mingw/x86_64-w64-mingw32/include/c++/12.1.0/memory:78,
from llvm-project/lldb/include/lldb/Host/Socket.h:12,
from llvm-project/lldb/include/lldb/Core/ProtocolServer.h:13,
from llvm-project/lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h:12:
gcc-mingw/x86_64-w64-mingw32/include/c++/12.1.0/bits/atomic_base.h:162:12: note: declaration of ‘struct std::atomic<bool>’
162 | struct atomic;
| ^~~~~~
Commit: 13784f7a4de4d33689aa517c0c45ac34ebd367e5
https://github.com/llvm/llvm-project/commit/13784f7a4de4d33689aa517c0c45ac34ebd367e5
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/cmake/modules/HandleLLVMOptions.cmake
Log Message:
-----------
[cmake] Unconditionally use -Wno-pass-failed with Clang (#162835)
Since 4feae05c6abda364a9295aecfa600d7d4e7dfeb6, most of the handling of
warning options was rewritten to add such options based on hardcoded
knowledge about what compilers support which options, and since which
versions. This avoids a number of configure time checks, speeding up the
cmake configuration.
This avoids erroneously adding this option with GCC, which doesn't
really support it.
If testing for a warning option like -Wno-<foo> with GCC, GCC won't
print any diagnostic at all, leading to the options being accepted
incorrectly. However later, if compiling a file that actually prints
another warning, GCC will also print warnings about these -Wno-<foo>
options being unrecognized.
This avoids extra warning spam like this, for every source file that
does produce warnings with GCC:
At global scope:
cc1plus: note: unrecognized command-line option ‘-Wno-pass-failed’ may have been intended to silence earlier diagnostics
Commit: 93d326038959fd87fb666a8bf97d774d0abb3591
https://github.com/llvm/llvm-project/commit/93d326038959fd87fb666a8bf97d774d0abb3591
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/cmake/modules/AddLLDB.cmake
Log Message:
-----------
[lldb] [cmake] Fix delayloading liblldb.dll in mingw builds (#162831)
ec28b95b7491bc2fbb6ec66cdbfd939e71255c42 made liblldb delayloaded, but
the supplied command line parameter is only valid for MSVC style builds.
For mingw builds using LLD, we can easily pass a similar option. For
mingw builds with ld.bfd, we can't quite as easily delayload it - for
these cases, just keep linking it like we usually do, and warn if the
user tried to set LLDB_PYTHON_DLL_RELATIVE_PATH in a build where it
won't have any effect.
Also change the setting for MSVC style builds, to use the simpler
`$<TARGET_FILE_NAME:liblldb>` instead of
`$<TARGET_FILE_BASE_NAME:liblldb>.dll`. The former pattern is what we
use for mingw targets, and it makes the code clearer to use that for
both, as that same expression should do the right thing for both.
Commit: a9c8e94b43e2c1777247e3b99769b948b1a38c66
https://github.com/llvm/llvm-project/commit/a9c8e94b43e2c1777247e3b99769b948b1a38c66
Author: Yi-Chi Lee <55395582+yichi170 at users.noreply.github.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/sve-streaming-mode-cvt-fp-int-fp.ll
A llvm/test/CodeGen/AMDGPU/fptoui_uitofp.ll
Log Message:
-----------
[DAGCombiner] Extend FP-to-Int cast without requiring nsz (#161093)
This patch updates the FP-to-Int conversion handling:
- For signed integers: use `ftrunc` followed by clamping to the target
integer range.
- For unsigned integers: apply `fabs` + `ftrunc`, then clamp.
This removes the previous dependence on `nsz` and ensures correct
lowering for both signed and unsigned cases.
I've tested the code generation of -mtriple=amdgcn. It seems that the
assembly code is expected, but I'm not sure how to write a general
testcase for every target.
Fixes #160623.
Commit: f6caec67fa5e2e15c1a947e128ff0d018b732cd4
https://github.com/llvm/llvm-project/commit/f6caec67fa5e2e15c1a947e128ff0d018b732cd4
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/test/C/C2y/n3623.c
Log Message:
-----------
Speculatively fix build bots
https://github.com/llvm/llvm-project/pull/162843 landed a test that is
broken on darwin:
https://lab.llvm.org/buildbot/#/builders/190/builds/28819
This is an attempted quick fix.
Commit: 85dd8f4bffc72a12307dc5227dae93645274d45e
https://github.com/llvm/llvm-project/commit/85dd8f4bffc72a12307dc5227dae93645274d45e
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][uArch][XeGPU] Port #153706: add uArch package (#162872)
Commit: 5391c6849fa2cf8bce606bb8435689da382a538d
https://github.com/llvm/llvm-project/commit/5391c6849fa2cf8bce606bb8435689da382a538d
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaAMDGPU.cpp
Log Message:
-----------
[AMDGPU][NFC] Fix clang frontend<->sema layering issue (#162865)
#140210 added `#include "clang/Frontend/FrontendDiagnostic.h"` to
clang/lib/Sema/SemaAMDGPU.cpp, but Frontend itself has a dependency on
Sema. This creates a layering issue as described in
https://llvm.org/docs/CodingStandards.html#library-layering.
Fortunately, d076608d58d1ec55016eb747a995511e3a3f72aa made this easy to
fix, as clang/Frontend/FrontendDiagnostic.h just forwards to
clang/Basic/DiagnosticFrontend.h, so it's trivial to make this depend on
basic instead of frontend.
Commit: de67a78c30acc48fd3982f36ac468dc05a1ba185
https://github.com/llvm/llvm-project/commit/de67a78c30acc48fd3982f36ac468dc05a1ba185
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/dereferenceable-declaration.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.large.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-misaligned-bug.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.workitem.id.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-assert-sext.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-assert-zext.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize support for G_ASSERT_{S|Z}EXT ops (#162728)
Commit: 24a5d8a9cae9b766351d2f500a190471aa23cb13
https://github.com/llvm/llvm-project/commit/24a5d8a9cae9b766351d2f500a190471aa23cb13
Author: Shilei Tian <i at tianshilei.me>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M .github/new-prs-labeler.yml
A clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
M clang/lib/Analysis/CMakeLists.txt
A clang/lib/Analysis/LifetimeAnnotations.cpp
A clang/lib/Analysis/LifetimeSafety.cpp
R clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
R clang/lib/Analysis/LifetimeSafety/Checker.cpp
R clang/lib/Analysis/LifetimeSafety/Dataflow.h
R clang/lib/Analysis/LifetimeSafety/Facts.cpp
R clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
R clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
R clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
R clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
R clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
R clang/lib/Analysis/LifetimeSafety/Loans.cpp
R clang/lib/Analysis/LifetimeSafety/Origins.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
Log Message:
-----------
Revert "[LifetimeSafety] Reorganize code into modular components (#162474)"
This reverts commit 2eb8c47b88e83cf310b86480b5b8d0f45a1f91af since it completely breaks dylib build.
Commit: 04d396512554bb8c07e80edd1319510c6b2485a7
https://github.com/llvm/llvm-project/commit/04d396512554bb8c07e80edd1319510c6b2485a7
Author: Akash Dutta <137309513+akadutta at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/test/CodeGen/AMDGPU/unpack-non-coissue-insts-post-ra-scheduler.mir
Log Message:
-----------
[AMDGPU]: Packed instructions unpacking to co-issue post-RA scheduling - fix flag handling (#160195)
This is a follow up to https://github.com/llvm/llvm-project/pull/157968.
This fixes flag handling in inserted instructions.
Commit: c25a2c7284ffddd9bb982b5fa794575bed8fef53
https://github.com/llvm/llvm-project/commit/c25a2c7284ffddd9bb982b5fa794575bed8fef53
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenException.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
A clang/test/CIR/CodeGen/try-catch.cpp
Log Message:
-----------
[CIR] Upstream Exception with empty try block (#162737)
Upstream, the basic support for the C++ try catch statement with an
empty try block
Issue https://github.com/llvm/llvm-project/issues/154992
Commit: 672672bed30b28b53ec6b874b5827bdecaf3638d
https://github.com/llvm/llvm-project/commit/672672bed30b28b53ec6b874b5827bdecaf3638d
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
Log Message:
-----------
[SelectionDAG] Add SDTCisSameNumEltsAs to more operations. NFC (#162759)
Commit: c265d7aebf8c5bc136805d75cd009bee82df8613
https://github.com/llvm/llvm-project/commit/c265d7aebf8c5bc136805d75cd009bee82df8613
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
Log Message:
-----------
[SelectionDAG] Add SDTCisInt<1> to SDTVecReduce and SDTCisEltOfVec to SDTFPVecReduce. NFC (#162761)
Commit: 5d1636d89a6e2b9b5a4128d81736172139ac761e
https://github.com/llvm/llvm-project/commit/5d1636d89a6e2b9b5a4128d81736172139ac761e
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
M mlir/test/Conversion/XeVMToLLVM/xevm-to-llvm.mlir
Log Message:
-----------
[MLIR][XeVM] XeVM to LLVM: Add conversion patterns for id ops (#162536)
XeVM to LLVM pass: Add conversion patterns for XeVM id ops.
Target OpenCL functions described here:
https://registry.khronos.org/OpenCL/sdk/3.0/docs/man/html/get_group_id.html
Commit: b0b3320821aefb01608efb977264115eec497a65
https://github.com/llvm/llvm-project/commit/b0b3320821aefb01608efb977264115eec497a65
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index-c++03.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove stale comment in test (#162857)
Commit cb18647 removed the `| count 0` in this file but left behind this
stale comment.
Commit: a47cb9b65221d1c8f889cf37cde9e581e0b5c184
https://github.com/llvm/llvm-project/commit/a47cb9b65221d1c8f889cf37cde9e581e0b5c184
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M libcxx/utils/ci/buildkite-pipeline.yml
Log Message:
-----------
[libc++] Fix number of characters in skip reason on BuildKite
Commit: bd6da1feaacf58a42ecdfd3cfa3c489bc911d317
https://github.com/llvm/llvm-project/commit/bd6da1feaacf58a42ecdfd3cfa3c489bc911d317
Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
A mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
M mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[mlir][xegpu] Add more tests in XeGPU subgroup distribution. (#162543)
This PR adds some tests for covering some useful corner cases.
1. more tests for `vector.shape_cast` distribution.
2. testing for `MoveFuncBodyToWarpOp` pattern that was not possible
before.
Commit: 8aa49974df0cc27ca28e5e50bfd275a480e84182
https://github.com/llvm/llvm-project/commit/8aa49974df0cc27ca28e5e50bfd275a480e84182
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
Log Message:
-----------
[NFC][InstCombine] Make use of `unknown` profile info clear in the API name (#162766)
Making the choice more clear from the API name, otherwise it'd be very easy for one to just "not bother" with the `MDFrom`, especially since it is optional and follows the optional `Name` - but this time we'd have a harder time detecting it's effectivelly dropped metadata.
Commit: 30ccb60d8a37710c0b9759bccf54b9715c6f4585
https://github.com/llvm/llvm-project/commit/30ccb60d8a37710c0b9759bccf54b9715c6f4585
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/test/CodeGen/X86/pr162812.ll
Log Message:
-----------
[X86] Add test coverage for #162812 (#162878)
Commit: f071cacc6b52a9813909b679dd5deb18d62fe723
https://github.com/llvm/llvm-project/commit/f071cacc6b52a9813909b679dd5deb18d62fe723
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add `getWithout[NaN|Inf]` (#162696)
This patch adds getWithoutNaN/getWithoutInf. We will apply nnan/ninf
flags to the range of operands/results for a more precise range.
Commit: 10021c737a3565183d13eabbd29fc3254e4b30c4
https://github.com/llvm/llvm-project/commit/10021c737a3565183d13eabbd29fc3254e4b30c4
Author: 小钟 <2211261685 at qq.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Object/XCOFFObjectFile.cpp
Log Message:
-----------
Fix typo in comment: 'unit64_t' to 'uint64_t' (#162869)
Corrects a typo in comments within XCOFFObjectFile.cpp, changing
'unit64_t' to the correct type 'uint64_t' for clarity.
Commit: 6ed18d85258b90a40cb3bc832195c38860c0c3e8
https://github.com/llvm/llvm-project/commit/6ed18d85258b90a40cb3bc832195c38860c0c3e8
Author: Alexandre Perez <alexandreperez at meta.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/source/Commands/CommandObjectProtocolServer.cpp
M lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp
M lldb/test/API/commands/protocol/TestMCPUnixSocket.py
Log Message:
-----------
[lldb][mcp] Get the running MCP server connection information (#162752)
Currently AFAICT we don't have a way to get the MCP server socket after
it started. So this change introduces a new `protocol-server` subcommand
that allows us to query the location of a running server:
```
(lldb) protocol-server start MCP listen://localhost:0
MCP server started with connection listeners: connection://[::1]:36051, connection://[127.0.0.1]:36051
(lldb) protocol-server get MCP
MCP server connection listeners: connection://[::1]:36051, connection://[127.0.0.1]:36051
(lldb) protocol-server stop MCP
(lldb) protocol-server get MCP
error: MCP server is not running
```
Commit: ea291d0e8c93d47d7953eff5ca1048891a5fcc55
https://github.com/llvm/llvm-project/commit/ea291d0e8c93d47d7953eff5ca1048891a5fcc55
Author: James Newling <james.newling at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
M mlir/docs/Dialects/Vector.md
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
M mlir/lib/Conversion/ArmSMEToSCF/ArmSMEToSCF.cpp
M mlir/lib/Conversion/VectorToArmSME/VectorToArmSME.cpp
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
M mlir/test/Conversion/ConvertToSPIRV/vector.mlir
M mlir/test/Conversion/VectorToArmSME/vector-to-arm-sme.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Dialect/Math/canonicalize_ipowi.mlir
M mlir/test/Dialect/Vector/canonicalize.mlir
R mlir/test/Dialect/Vector/canonicalize/vector-splat.mlir
M mlir/test/Dialect/Vector/int-range-interface.mlir
M mlir/test/Dialect/Vector/invalid.mlir
M mlir/test/Dialect/Vector/linearize.mlir
M mlir/test/Dialect/Vector/ops.mlir
M mlir/test/Dialect/Vector/vector-emulate-masked-load-store.mlir
M mlir/test/IR/invalid-ops.mlir
M mlir/test/Integration/Dialect/Vector/CPU/0-d-vectors.mlir
M mlir/test/mlir-runner/utils.mlir
M mlir/utils/tree-sitter-mlir/queries/highlights.scm
Log Message:
-----------
[MLIR][Vector] Remove vector.splat (#162167)
vector.splat has been deprecated (user: please use the very similar vector.broadcast instead)
with the last PR landing about 6 weeks ago.
The discourse discussion is at
https://discourse.llvm.org/t/rfc-mlir-vector-deprecate-then-remove-vector-splat/87143/1
The last PR was #152230
This PR completely removes vector.splat. In addition to removing vector.splat from VectorOps.td, it
- Updates the few remaining places where vector::SplatOp is created (now vector::BroadcastOp is created)
- Removes temporary patterns where vector.splat is replaced by vector.broadcast
The only place 'vector.splat' appears is now the files
https://github.com/llvm/llvm-project/blob/main/mlir/utils/tree-sitter-mlir/test/corpus/op.txt
and
https://github.com/llvm/llvm-project/blob/main/mlir/utils/tree-sitter-mlir/dialect/vector.js
---------
Signed-off-by: James Newling <james.newling at gmail.com>
Commit: 8b930895c47ef64b414ddd4e61a361c90b60c4dd
https://github.com/llvm/llvm-project/commit/8b930895c47ef64b414ddd4e61a361c90b60c4dd
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/structconst11.f90
Log Message:
-----------
[flang] Don't misinterpret valid component value for ancestor type (#161910)
As a common language extension, this compiler accepts a structure
constructor whose first value has no keyword and whose type matches an
ancestral type as if the constructor had had a keyword whose name was
the ancestral type. For example, given
TYPE PARENT; REAL X; END TYPE
TYPE, EXTENDS(PARENT) :: CHILD; END TYPE
we accept the nonconforming constructor "child(parent(1.))" as if it had
been the conforming "child(1.)" or "child(parent=parent(1.))".
The detection of this case needs to be constrained a bit to avoid a
false positive misinterpretation of conforming code in the case where
the actual first component of the derived type is a POINTER or
ALLOCATABLE whose type and rank would allow it to correspond with the
keywordless first value in the component value list.
Fixes https://github.com/llvm/llvm-project/issues/161887.
Commit: e2ee91ed34207859fa6afaaf0573bdf1396e7f27
https://github.com/llvm/llvm-project/commit/e2ee91ed34207859fa6afaaf0573bdf1396e7f27
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/docs/C++17.md
M flang/docs/C++style.md
M flang/include/flang/Semantics/type.h
M flang/lib/Evaluate/check-expression.cpp
M flang/lib/Evaluate/fold-logical.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-declarations.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/expression.cpp
Log Message:
-----------
[flang] Clean up some optional<bool> usage (#161925)
Audit the use of std::optional<bool> as a tri-state logical value in
flang, correct a couple cases that need ".value_or()", add some explicit
".has_value()" calls, and document the possible pitfalls.
Commit: 471ed9ad6251429253c9441eadff87439a2fbfb7
https://github.com/llvm/llvm-project/commit/471ed9ad6251429253c9441eadff87439a2fbfb7
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/include/flang/Evaluate/common.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/symbol.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/lib/Semantics/symbol.cpp
M flang/lib/Semantics/type.cpp
M flang/test/Semantics/kinds03.f90
A flang/test/Semantics/pdt05.f90
M flang/test/Semantics/real10-x86-01.f90
M flang/test/Semantics/symbol17.f90
M flang/test/Semantics/type-parameter-constant.f90
Log Message:
-----------
[flang] Rework component KIND= values in PDT instantiations (#162367)
When processing the KIND= values of type specifications in parameterized
derived type component declarations, it turns out to be necessary to
analyze their expressions' parse trees rather than to just fold their
typed expression representations. The types of the subexpressions may
depend on the values of KIND parameters.
Further, when checking the values of KIND= actual arguments to type
conversion intrinsic functions (e.g., INT(..., KIND=)) that appear in
KIND specifiers for PDT component declarations, don't emit an error for
the derived type definition, but instead emit them for derived type
instantiations.
Fixes https://github.com/llvm/llvm-project/issues/161961.
Commit: 05a3f76dca134a1d6b58acc257d46902706539ea
https://github.com/llvm/llvm-project/commit/05a3f76dca134a1d6b58acc257d46902706539ea
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/lib/Semantics/check-data.cpp
M flang/lib/Semantics/check-data.h
M flang/lib/Semantics/resolve-names.cpp
A flang/test/Semantics/bug161989.f90
M flang/test/Semantics/data21.f90
Log Message:
-----------
[flang] Process legacy DATA-style /initializers/ sooner (#162722)
The compiler can't defer the conversion of legacy DATA-style
/initializers/ in component declarations to their init() expressions to
the general DATA statement conversion pass, since default component
values must be present during structure constructor analysis. So move
their conversions into name resolution and handle them at the same times
as standard '=' initializers are processed. Avoid any potential problems
with type parameters being used as repetition counts or values by
disallowing legacy DATA-style initializers in PDTs.
Fixes https://github.com/llvm/llvm-project/issues/161989.
Commit: 01c7ef655643b70cede51bb9047b17e72f84bfd5
https://github.com/llvm/llvm-project/commit/01c7ef655643b70cede51bb9047b17e72f84bfd5
Author: James Newling <james.newling at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/0-d-vectors.mlir
Log Message:
-----------
[MLIR][Vector] Fix test following vector.splat removal (#162892)
This is a fix for the failing integration test (see
https://lab.llvm.org/buildbot/#/builders/177/builds/22398) reported in
https://github.com/llvm/llvm-project/pull/162167.
Commit: 01e19e850ff40c2642da811c4dde58f323b1af1a
https://github.com/llvm/llvm-project/commit/01e19e850ff40c2642da811c4dde58f323b1af1a
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
[InstCombine] Mark as unknown the branch weights of packed integer selecting shifts (#162726)
Follow up from PR #162147. We do not have existing !prof metadata to synthesize one for the new `select` .
Fixes https://lab.llvm.org/staging/#/builders/221/builds/3091
Issue #147390
Commit: 0f73e75bf78c4adebcc674c30ca253118f0bcdfc
https://github.com/llvm/llvm-project/commit/0f73e75bf78c4adebcc674c30ca253118f0bcdfc
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] exclude CodeGen/AMDGPU/amdgpu-attributor-min-agpr-alloc.ll (#162898)
Commit: 7dbf115a924dee4d0adc4d8c0aec1849e79fc21d
https://github.com/llvm/llvm-project/commit/7dbf115a924dee4d0adc4d8c0aec1849e79fc21d
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
A llvm/test/DebugInfo/Generic/compileunit-source-language-name.ll
A llvm/test/DebugInfo/Generic/compileunit-source-language.ll
Log Message:
-----------
[llvm][DebugInfo] Add support for emitting DW_AT_language_name (#162621)
Depends on:
* https://github.com/llvm/llvm-project/pull/162445
* https://github.com/llvm/llvm-project/pull/162449
Emit `DW_AT_language_name` (new in DWARFv6) if `DICompileUnit` has a
`sourceLanguageName` field. Emit a `DW_AT_language` otherwise.
Commit: 8e60adcaafbd5b6859f54879496e017dd218e541
https://github.com/llvm/llvm-project/commit/8e60adcaafbd5b6859f54879496e017dd218e541
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaExpr.cpp
A clang/test/C/C2y/n3622.c
M clang/test/Sema/inline.c
M clang/www/c_status.html
Log Message:
-----------
[C2y] Implement WG14 N3622 static used in an inline (#162877)
This paper removes the constraint that a static variable or function
cannot be used within an extern inline function. The diagnostic is still
being produced in earlier language modes for conformance reasons but has
always been accepted as an extension.
Commit: c17eca0410ad25e1f757679faeb2d78f8a453329
https://github.com/llvm/llvm-project/commit/c17eca0410ad25e1f757679faeb2d78f8a453329
Author: LU-JOHN <John.Lu at amd.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
Log Message:
-----------
[AMDGPU][NFC] Pre-commit test for redundant s_cmp_lg_* sX, 0 removal (#162351)
Pre-commit test for redundant s_cmp_lg_* sX, 0 removal.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
Commit: 4188e18a5b0746e1aecee827551934a981848898
https://github.com/llvm/llvm-project/commit/4188e18a5b0746e1aecee827551934a981848898
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/dotest.py
Log Message:
-----------
[lldb][test] Don't run libc++ API tests without a locally built libc++ (#162657)
API tests in the `libc++` category will try their best to build against
a locally built libc++. If none exists, the `Makefile.rules` currently
fall back to using the system libc++.
The issue with falling back to the system libc++ is that we are now
potentially not testing what we intended to. But we also can't rely on
certain libc++ features being available that the tests are trying to
use. On Apple platforms this is a configuration error (because libc++ is
the only stdlib supported), but we can't make it an error on Linux
because a user might want to run the API tests with libstdc++.
The Ubunutu 22.04 bots on the Apple fork are failing to run following
tests are failing:
* `TestLibcxxInternalsRecognizer.py`
* `TestDataFormatterStdRangesRefView.py` because the system stdlib
doesn't have `std::ranges` support yet. And the tests just fail to
build. Building libc++ on those bots is also not possible because the
system compiler is too old (and the Apple fork builds all the
subprojects standalone, so it requires the system compiler).
This patch marks tests in the `libc++` category as `UNSUPPORTED` if no
local libc++ is available.
The downside is that we will inevitably lose coverage on bots that were
running these tests without a local libc++. Arguably those weren't
really testing the right thing. But for vendors with LLDB forks it might
have been useful to at least know that the tests on the fork don't fail
against the system libc++.
Confirmed that the libc++ pre-merge CI still runs these tests (since it
uses the explicit `--category libc++` dotest flag). Also confirmed that
LLDB pre-merge CI runs the tests (because it builds `libcxx` locally).
**Workaround**
If you do need want to run libc++ tests against the system stdlib, you
can invoke `lldb-dotest` with the `--category libc++` flag:
```
./path/to/build/lldb-dotest --category libc++
OR
./path/to/build/bin/llvm-lit -sv --param dotest-args='--category libc++' "/path/to/monorepo/lldb/test/API
```
rdar://136231390
Commit: e3620fe0685c656915977d55f822a82090041965
https://github.com/llvm/llvm-project/commit/e3620fe0685c656915977d55f822a82090041965
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.h
M lldb/source/Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp
M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
M lldb/test/API/python_api/interpreter/TestCommandInterpreterAPI.py
A lldb/test/Shell/Expr/TestExprLanguageNote.test
Log Message:
-----------
[lldb][Expression] Emit a 'Note' diagnostic that indicates the language used for expression evaluation (#161688)
Depends on:
* https://github.com/llvm/llvm-project/pull/162050
Since it's a 'Note' diagnostic it would only show up when expression
evaluation actually failed. This helps with expression evaluation
failure reports in mixed language environments where it's not quite
clear what language the expression ran as. It may also reduce confusion
around why the expression evaluator ran an expression in a language it
wasn't asked to run (a softer alternative to what I attempted in
https://github.com/llvm/llvm-project/pull/156648).
Here are some example outputs:
```
# Without target
(lldb) expr blah
note: Falling back to default language. Ran expression as 'Objective C++'.
# Stopped in target
(lldb) expr blah
note: Ran expression as 'C++14'.
(lldb) expr -l objc -- blah
note: Expression evaluation in pure Objective-C not supported. Ran expression as 'Objective C++'.
(lldb) expr -l c -- blah
note: Expression evaluation in pure C not supported. Ran expression as 'ISO C++'.
(lldb) expr -l c++14 -- blah
note: Ran expression as 'C++14'
(lldb) expr -l c++20 -- blah
note: Ran expression as 'C++20'
(lldb) expr -l objective-c++ -- blah
note: Ran expression as 'Objective C++'
(lldb) expr -l D -- blah
note: Expression evaluation in D not supported. Falling back to default language. Ran expression as 'Objective C++'.
```
I didn't put the diagnostic on the same line as the inline diagnostic
for now because of implementation convenience, but if reviewers deem
that a blocker I can take a stab at that again.
Also, other language plugins (namely Swift), won't immediately benefit
from this and will have to emit their own diagnistc. I played around
with having a virtual API on `UserExpression` or `ExpressionParser` that
will be called consistently, but by the time we're about to parse the
expression we are already several frames deep into the plugin. Before
(and at the beginning of) the generic `UserExpression::Parse` call we
don't have enough information to notify which language we're going to
parse in (at least for the C++ plugin).
rdar://160297649
rdar://159669244
Commit: 6ad662d32294006dc1d71f70cee8eabdf9b0c415
https://github.com/llvm/llvm-project/commit/6ad662d32294006dc1d71f70cee8eabdf9b0c415
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
A mlir/test/Dialect/AMDGPU/inlining.mlir
Log Message:
-----------
[mlir][amdgpu] Add Inliner interface (#162873)
All the `amdgpu` dialect ops can be inlined.
---------
Signed-off-by: Ivan Butygin <ivan.butygin at gmail.com>
Commit: 41f5f3be30105260ccc30433b49f60d5885e731b
https://github.com/llvm/llvm-project/commit/41f5f3be30105260ccc30433b49f60d5885e731b
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/AST/Expr.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/Expr.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
Log Message:
-----------
[OpenACC] Fix uses of getBaseOriginalType when we really want elt type. (#162880)
Lately, I've been using 'getBaseOriginalType' in ArraySectionExpr
incorrectly: it gets the base-ist of element type, when in reality, I
want a single type of indirection. This patch corrects the handful of
uses that I had for it.
Commit: 24feeb201325eb9416cbea10af46c2859eb72073
https://github.com/llvm/llvm-project/commit/24feeb201325eb9416cbea10af46c2859eb72073
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/test/DebugInfo/Generic/compileunit-source-language-name.ll
M llvm/test/DebugInfo/Generic/compileunit-source-language.ll
Log Message:
-----------
[llvm][test] Don't specify target for tests in Generic directory
Fixes buildbot failures where no arm64 target was available.
Commit: 312f1fa8f2e5866a22556e6596c0aa649d8a111c
https://github.com/llvm/llvm-project/commit/312f1fa8f2e5866a22556e6596c0aa649d8a111c
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/Dwarf.h
M llvm/unittests/BinaryFormat/DwarfTest.cpp
Log Message:
-----------
[llvm][DebugInfo][test] DwarfTest: parameterize LanguageDescription tests (#162863)
Better test coverage.
The round-tripping test makes sure that if we ever change
`llvm::dwarf::toDW_Lang` or `llvm::dwarf::toDW_LName`, we don't break
the `LanguageDescription` API.
The round-tripping test found an incorrect version check in
`llvm::dwarf::toDW_Lang`, which I corrected as part of this PR (see the
table at the bottom of https://dwarfstd.org/languages-v6.html for
reference).
Commit: b3f2d93766a10ec4f42b3a60157c0b7bdc9c8008
https://github.com/llvm/llvm-project/commit/b3f2d93766a10ec4f42b3a60157c0b7bdc9c8008
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
A clang/lib/CIR/Dialect/Transforms/LoweringPrepareCXXABI.h
A clang/lib/CIR/Dialect/Transforms/LoweringPrepareItaniumCXXABI.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/dynamic-cast.cpp
Log Message:
-----------
[CIR] Add lowering support for dynamic cast (#162715)
This adds support for lowering cir.dyn_cast operations to a form that
can be lowered to LLVM IR.
Commit: 6fb87b231f59e0e9df061cecec53aa746c838e92
https://github.com/llvm/llvm-project/commit/6fb87b231f59e0e9df061cecec53aa746c838e92
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/docs/CallGraphSection.md
M llvm/docs/CodeGenerator.rst
M llvm/docs/Reference.rst
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
A llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
A llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
A llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
A llvm/test/CodeGen/ARM/call-graph-section.ll
A llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
Log Message:
-----------
[llvm][AsmPrinter] Call graph section format. (#159866)
Make .callgraph section's layout efficient in space. Document the layout
of the section.
Commit: 6010df0402e2f5cca0ded446a70492dedc43ab7e
https://github.com/llvm/llvm-project/commit/6010df0402e2f5cca0ded446a70492dedc43ab7e
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-ast.cpp
Log Message:
-----------
[OpenACC] Sema changes for +*&|^ reduction combiner recipes (#162740)
As a followup to the previous AST changes, the next step is to generate
the proper expressions in Sema. This patch does so for +,*,&,|,^ by
modeling them as compound operators.
This also causes the legality of some expressions to change, as these
have to be legal operations, but were previously unchecked, so there are
some test changes.
This does not yet generate any CIR, that will happen in the next patch.
Commit: bd3ddcf7e16af3358f4f2ef17079b3fcc41d41c4
https://github.com/llvm/llvm-project/commit/bd3ddcf7e16af3358f4f2ef17079b3fcc41d41c4
Author: James Y Knight <jyknight at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
Bazel: fix after [mlir][amdgpu] Add Inliner interface (#162873)
Commit: 28c5a2c46d810b70040b711afbb2532374a5b67d
https://github.com/llvm/llvm-project/commit/28c5a2c46d810b70040b711afbb2532374a5b67d
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
A llvm/test/Transforms/GVN/PRE/no-pre-load-for-token-like.ll
Log Message:
-----------
[Clang][HLSL][GVN] Prevent phi codgen of isTokenLike types (#162363)
fixes #161754
When the GVN pass calls `PerformLoadPRE` or `processNonLocalLoad` it can
invoke the `SSAUpdater` which adds a phi node for our tokenLike type. If
we check for if the load is on a token like type at the `processLoad` we
can cover both cases. This is because if we don't GVN will use the
SSAUpdater to insert a phi node to reduce duplicate resource.getpointer
calls.
Because in an earlier commit:
https://github.com/llvm/llvm-project/commit/01c0a8409a21344c822deba9467bd9d547f6e5d8
we made the verifier error with `PHI nodes cannot have token type!`
This test case will fail today if we try to perform this load
optimization
https://godbolt.org/z/xM69fY8zM
This will impact clang aswell because `isTokenLikeTy` also checks for
`isTokenTy` Clang is likely also failing validation with token types but
just doesn't have a test case because the validator would error if it
were in a phi node.
Commit: 2084655d1e06a87efa45800f65ec6773ec63dabb
https://github.com/llvm/llvm-project/commit/2084655d1e06a87efa45800f65ec6773ec63dabb
Author: Nico Weber <thakis at chromium.org>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
R llvm/utils/gn/secondary/clang/lib/Analysis/LifetimeSafety/BUILD.gn
M llvm/utils/gn/secondary/clang/lib/Sema/BUILD.gn
Log Message:
-----------
Revert "[gn build] Port 2eb8c47b88e8"
This reverts commit a833d902ae041e597cf7252d07198df470c0b736.
2eb8c47b88e8 was reverted in 24a5d8a9ca
Commit: 9f0f6e8dda5a3f87458acbb4daf09c2bfbac25f2
https://github.com/llvm/llvm-project/commit/9f0f6e8dda5a3f87458acbb4daf09c2bfbac25f2
Author: Tom Stellard <tstellar at redhat.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
R .github/workflows/release-binaries-save-stage/action.yml
R .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
Log Message:
-----------
workflows/release-binaries: Run tests on the same runner as the build (#162421)
Also, ignore the test results since they almost always fail. This allows
us to simplify the build process and skip uploading and downloading the
build and source directories which are huge.
Commit: 3af43e303ce74a3df6e3349a50ecdb501f559b26
https://github.com/llvm/llvm-project/commit/3af43e303ce74a3df6e3349a50ecdb501f559b26
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/Representation.h
Log Message:
-----------
[clang-doc] simplify filename selection for namespaces (#162885)
determineFileName was confusing regarding namespaces. The comment and
conditional were both misleading. Now, we just check against a static
global namespace USR to make a file use "index", or just use the name.
Commit: 190886ddc99b81f7efebec3ab128809be19c0cd7
https://github.com/llvm/llvm-project/commit/190886ddc99b81f7efebec3ab128809be19c0cd7
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
Log Message:
-----------
[lldb][NFC] enable unwind logging in TestCortexMExceptionUnwind
Still seeing a failure on a CI bot with this test that
I cannot reproduce locally, but luckily this one CI bot is giving
me trace output from the tests. Turn on the unwind log when tracing
is enabled, migth get a better hint what's up with this test fail.
Commit: d78c93077b940d650a1b2eae75bdbf2105de7380
https://github.com/llvm/llvm-project/commit/d78c93077b940d650a1b2eae75bdbf2105de7380
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLPVectorizer] Move size checks (NFC). (#161867)
Add the `analyzeRtStrideCandidate` function. In the future commits we're
going to add the capability to widen strided loads to it. So, in this
commit, we move the size / type checks into it, since it can possibly
change size / type of load.
Commit: fabd1c418a6b20266cf191b5d8c92476567c77af
https://github.com/llvm/llvm-project/commit/fabd1c418a6b20266cf191b5d8c92476567c77af
Author: Ian Li <ian.li at intel.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A mlir/include/mlir/Conversion/MathToXeVM/MathToXeVM.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/MathToXeVM/CMakeLists.txt
A mlir/lib/Conversion/MathToXeVM/MathToXeVM.cpp
A mlir/test/Conversion/MathToXeVM/math-to-xevm.mlir
A mlir/test/Conversion/MathToXeVM/native-spirv-builtins.mlir
Log Message:
-----------
[MLIR][Math][XeVM] Add MathToXeVM (`math-to-xevm`) pass (#159878)
This PR introduces a `MathToXeVM` pass, which implements support for the
`afn` fastmath flag for SPIRV/XeVM targets - It takes supported `Math`
Ops with the `afn` flag, and converts them to function calls to OpenCL
`native_` intrinsics.
These intrinsic functions are supported by the SPIRV backend, and are
automatically converted to `OpExtInst` calls to `native_` ops from the
OpenCL SPIRV ext. inst. set when outputting to SPIRV/XeVM.
Note:
- This pass also supports converting `arith.divf` to native equivalents.
There is an option provided in the pass to turn this behavior off.
- This pass preserves fastmath flags, but these flags are currently
ignored by the SPIRV backend. Thus, in order to generate SPIRV that
truly preserves fastmath flags, support needs to be added to the SPIRV
backend.
Commit: 004270d247962167ba934efc4b21e3b134c0c0c7
https://github.com/llvm/llvm-project/commit/004270d247962167ba934efc4b21e3b134c0c0c7
Author: Mikhail Gudim <mgudim at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/RISCV/x264-satd-8x4.ll
Log Message:
-----------
[RISCV][SLP][NFC]Add a test for satd-8x4 from x264 benchmark. (#162542)
Precommit a test.
Commit: 8d9aecce064776a9a890f3c898165f99e8eaa13e
https://github.com/llvm/llvm-project/commit/8d9aecce064776a9a890f3c898165f99e8eaa13e
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-ast.cpp
Log Message:
-----------
Revert "[OpenACC] Sema changes for +*&|^ reduction combiner recipes (… (#162920)
…#162740)"
This reverts commit 6010df0402e2f5cca0ded446a70492dedc43ab7e.
This apparently fails some sanitizer test as reported here:
https://github.com/llvm/llvm-project/pull/162740
It isn't really clear where this happens, but reverting as it is a
friday, and I have no idea if I'll be able to repro this anytime soon,
let alone fix it.
Commit: 44c5dabea33f77ff18a4d4a9771148619604c7c8
https://github.com/llvm/llvm-project/commit/44c5dabea33f77ff18a4d4a9771148619604c7c8
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A clang/test/InstallAPI/project-header-only-args-visibility.test
Log Message:
-----------
[clang-installapi] Add test for -Xproject -fvisibility=* (#162908)
Commit: a4a0a4b9b18ad68b482e6a764cf3df7cf771edca
https://github.com/llvm/llvm-project/commit/a4a0a4b9b18ad68b482e6a764cf3df7cf771edca
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/InstructionNamer.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in InstructionNamer.cpp (#162689)
Make file local function static and use explicit type for Arg.
Commit: 7e7c923b5890e62f4b5920c2f8a2e51f586a186c
https://github.com/llvm/llvm-project/commit/7e7c923b5890e62f4b5920c2f8a2e51f586a186c
Author: Arjun Ramesh <90422058+arjunr2 at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/OSTargets.h
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Driver/Driver.cpp
M clang/test/Driver/wasm-toolchain.c
M clang/test/Driver/wasm-toolchain.cpp
M libunwind/src/UnwindRegistersRestore.S
M libunwind/src/UnwindRegistersSave.S
M llvm/include/llvm/TargetParser/Triple.h
M llvm/lib/TargetParser/Triple.cpp
Log Message:
-----------
[WebAssembly] Support for new target `wasm32-linux-muslwali` (#162581)
Add toolchain support for the
[WALI](https://doc.rust-lang.org/rustc/platform-support/wasm32-wali-linux.html)
target as per its corresponding
[RFC](https://discourse.llvm.org/t/rfc-new-wasm-linux-target-support/88203)
Commit: b92483c42cf6732615243bd6eec911db9caf7275
https://github.com/llvm/llvm-project/commit/b92483c42cf6732615243bd6eec911db9caf7275
Author: Md Abdullah Shahneous Bari <98356296+mshahneo at users.noreply.github.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
R mlir/include/mlir/Conversion/MathToXeVM/MathToXeVM.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/CMakeLists.txt
R mlir/lib/Conversion/MathToXeVM/CMakeLists.txt
R mlir/lib/Conversion/MathToXeVM/MathToXeVM.cpp
R mlir/test/Conversion/MathToXeVM/math-to-xevm.mlir
R mlir/test/Conversion/MathToXeVM/native-spirv-builtins.mlir
Log Message:
-----------
Revert "[MLIR][Math][XeVM] Add MathToXeVM (`math-to-xevm`) pass" (#162923)
Reverts llvm/llvm-project#159878
Commit: 1a8057fd473c436e86ac5ff2123d611f97dfe622
https://github.com/llvm/llvm-project/commit/1a8057fd473c436e86ac5ff2123d611f97dfe622
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interface and lower barrier_init (#162929)
Add interface for `barrier_init` and lower it to the NVVM Op.
https://github.com/clementval/llvm-project/pull/new/cuf_barrier_init
Commit: 56e3e30cebfd40853e57639e9f2e5672e5f4124f
https://github.com/llvm/llvm-project/commit/56e3e30cebfd40853e57639e9f2e5672e5f4124f
Author: Reid Kleckner <rnk at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/include/clang/Driver/Options.td
M clang/test/DebugInfo/KeyInstructions/flag.cpp
M clang/test/Driver/debug-options.c
Log Message:
-----------
[clang] Remove -g[no-]-* bool flags from g_Group (#162750)
There are four uses of BoolGOption, and all of them are essentially debug
info feature flags, which I believe should not the enablement or
disablement of all debug info emission. `OPT_g_group` is used to control
the debug info level here:
https://github.com/llvm/llvm-project/blob/main/clang/lib/Driver/ToolChains/Clang.cpp#L4387
This doesn't cause any test failures, and seems like the right behavior
for all four flags:
* -g[no-]flag-base
* -g[no-]inline-line-tables
* -g[no-]key-instructions
* -g[no-]structor-decl-linkage-names
None of these, even in the positive form, should enable debug info
emission.
Fixes #162747
Commit: 0aef9ebc14f5bc6d47d77e0905f0df0bfd846d1a
https://github.com/llvm/llvm-project/commit/0aef9ebc14f5bc6d47d77e0905f0df0bfd846d1a
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
A llvm/test/CodeGen/X86/global-variable-partition-with-dap.ll
Log Message:
-----------
[NFC] Pre-commit test case for https://github.com/llvm/llvm-project/pull/162348 (#162938)
Commit: 27e2d5c46fab4a976a7700e0ced0cddd2cc58a13
https://github.com/llvm/llvm-project/commit/27e2d5c46fab4a976a7700e0ced0cddd2cc58a13
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Align SimpleNativeMemoryMap Segment with LLVM type. (#162823)
This commit aims to align SimpleNativeMemoryMap::FinalizeRequest::Segment with
llvm::orc::tpctypes::SegFinalizeRequest. This will simplify construction of a
new LLVM JITLinkMemoryManager that's capable of using SimpleNativeMemoryMap as
a backend.
Commit: d3233e806e1a80020b09c161def31ce2c75804d5
https://github.com/llvm/llvm-project/commit/d3233e806e1a80020b09c161def31ce2c75804d5
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/poison-within-divisions.ll
Log Message:
-----------
[SLP]Do not allow undefs being combined with divs
Undefs/poisons with divs in vector operations lead to undefined
behavior, disabling this combination
Fixes #162663
Commit: 8faeed042af2c1278cc71f0a5ef1a4d45f905eb8
https://github.com/llvm/llvm-project/commit/8faeed042af2c1278cc71f0a5ef1a4d45f905eb8
Author: Chengjun <chengjunp at Nvidia.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/vector-promotion-cannot-tree-structure-merge.ll
Log Message:
-----------
[SROA] Add Stored Value Size Check for Tree-Structured Merge (#162921)
The change fixes a bug in the SROA where tree-structured merge
optimization was incorrectly applied when the size of the stored value
was not a multiple of the new allocated element type size. The original
change is https://github.com/llvm/llvm-project/pull/152793. A simple
repro would be
```
define <1 x i32> @foo(<1 x i16> %a, <1 x i16> %b) {
entry:
%alloca = alloca [1 x i32]
%ptr0 = getelementptr inbounds [2 x i16], ptr %alloca, i32 0, i32 0
store <1 x i16> %a, ptr %ptr0
%ptr1 = getelementptr inbounds [2 x i16], ptr %alloca, i32 0, i32 1
store <1 x i16> %b, ptr %ptr1
%result = load <1 x i32>, ptr %alloca
ret <1 x i32> %result
}
```
Currently, this will lead to a compile time crash.
In this change, we will skip the tree-structured merge for this case and
fall back to normal SROA.
Commit: 720007e4b782c2446c5f10dd1e7733f4b6b323f1
https://github.com/llvm/llvm-project/commit/720007e4b782c2446c5f10dd1e7733f4b6b323f1
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/CMakeLists.txt
M llvm/lib/Target/SPIRV/SPIRVCombine.td
A llvm/lib/Target/SPIRV/SPIRVCombinerHelper.cpp
A llvm/lib/Target/SPIRV/SPIRVCombinerHelper.h
M llvm/lib/Target/SPIRV/SPIRVPreLegalizerCombiner.cpp
Log Message:
-----------
[NFC] [SPIRV] Add SPIRVCombinerHelper and refactor pre legalizer combiner to use it (#162735)
Lots of the code/structure was based off `AMDGPUCombinerHelper`,
`AMDGPUPreLegalizerCombiner`, etc.
Tasks completed:
- Create new `SPIRVCombinerHelper` inheriting from `CombinerHelper`
- Move combiner logic in `SPIRVPreLegalizerCombiner` to helper methods
in `SPIRVCombinerHelper`
- Update `SPIRVPreLegalizerCombiner` to use the new helper class
- Simplify `applySPIRVDistance` code
Commit: cb4fdc00102f351606c57afc497d939103cac026
https://github.com/llvm/llvm-project/commit/cb4fdc00102f351606c57afc497d939103cac026
Author: Scott Pillow <scott.pillow at intel.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/raw_ostream.h
M llvm/unittests/Support/raw_ostream_test.cpp
Log Message:
-----------
[Support] Fix thread safety issue in raw_null_ostream (#162787)
The global raw_null_ostream singleton returned by llvm::nulls() is
marked as InternalBuffer rather than Unbuffered, causing it to
allocate a buffer when first written to. In multithreaded environments,
multiple threads can simultaneously trigger buffer allocation via
SetBuffered(), leading to race conditions on the buffer pointer
fields (OutBufCur, OutBufEnd).
For example:
raw_ostream::write(const char *Ptr, size_t Size)
->
raw_ostream::SetBuffered()
->
raw_ostream::SetBufferSize(size_t Size)
->
raw_ostream::SetBufferAndMode(char *BufferStart, size_t Size,
BufferKind Mode)
This can manifest as a heap corruption when multiple threads write to
the
null stream concurrently, as the buffer pointers will become corrupted
during the race.
The fix is to explicitly pass Unbuffered=true to the raw_pwrite_stream
constructor, ensuring the null stream never allocates a buffer and
all writes go directly to the no-op write_impl().
For example, this can fix multithreaded applications using MCELFStreamer
where getCommentOS() returns the shared nulls() singleton.
Commit: 19b9b54158b9d4653e26f02981e43b6f45048e55
https://github.com/llvm/llvm-project/commit/19b9b54158b9d4653e26f02981e43b6f45048e55
Author: Twice <twice at apache.org>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/docs/Bindings/Python.md
Log Message:
-----------
[MLIR][Docs] Add docs for Python-defined pass in Python bindings (#162833)
Python-defined passes have been merged into the main branch for some
time now. I believe adding a corresponding section in the documentation
will help more users learn about this feature and understand how to use
it.
This PR adds such a section to the docs of Python bindings, summarizing
the feature and providing an example.
Commit: 26eca2439c664c648c4e293c68c18c2d6e7d7855
https://github.com/llvm/llvm-project/commit/26eca2439c664c648c4e293c68c18c2d6e7d7855
Author: Mingjie Xu <xumingjie.enna1 at bytedance.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/tools/bugpoint/OptimizerDriver.cpp
M llvm/tools/llvm-as/llvm-as.cpp
M llvm/tools/llvm-dis/llvm-dis.cpp
M llvm/tools/llvm-extract/llvm-extract.cpp
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/opt/optdriver.cpp
Log Message:
-----------
Move the preserve-{bc,ll}-uselistorder options out of individual tools, make them global defaults for AsmWriter and BitcodeWriter (#160079)
This patch moves the `preserve-bc-uselistorder` and
`preserve-ll-uselistorder` options out of individual tools(opt, llvm-as,
llvm-dis, llvm-link, llvm-extract) and make them global defaults for
AsmWriter and BitcodeWriter.
These options are useful when we use `-print-*` options to dump LLVM IR.
Commit: d95f8ffee401f79e1f37b274eda6c750b5f890a9
https://github.com/llvm/llvm-project/commit/d95f8ffee401f79e1f37b274eda6c750b5f890a9
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.h
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMISelLowering.h
M llvm/lib/Target/Mips/MipsISelLowering.cpp
M llvm/lib/Target/Mips/MipsISelLowering.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
Log Message:
-----------
[ARM][TargetLowering] Combine Level should not be a factor in shouldFoldConstantShiftPairToMask (NFC) (#156949)
This should be based on the type and instructions, and only thumb uses
combine level anyway.
Commit: 4cc0bae159e56dc02145f9154005dc1eb9ed1fd7
https://github.com/llvm/llvm-project/commit/4cc0bae159e56dc02145f9154005dc1eb9ed1fd7
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M clang/lib/AST/DeclTemplate.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/partial-spec-instantiate.cpp
Log Message:
-----------
[clang] fix getReplacedTemplateParameter for partial specialziations (#162955)
The template argument returned should be relative to the partial
specialization, which would correspond to the partial template parameter
list.
Unfortunately we don't save this anywhere in the AST, and would
otherwise need to deduce them again.
Simply avoid providing this argument for now, until we make it
available.
This fixes regressions which were never released, so there are no
release notes.
Fixes #162770
Fixes #162855
Commit: 9e63b7ae4c6f6a06882ade921795c42108355c71
https://github.com/llvm/llvm-project/commit/9e63b7ae4c6f6a06882ade921795c42108355c71
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/fold-select-fmul-if-zero.ll
M llvm/test/Transforms/InstCombine/select-binop-foldable-floating-point.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
Log Message:
-----------
[InstCombine] Fix flag propagation in `foldSelectIntoOp` (#162003)
Consider the following transform:
```
C = binop float A, nnan OOp
D = select ninf, i1 cond, float C, float A
->
E = select ninf, i1 cond, float OOp, float Identity
F = binop float A, E
```
We cannot propagate ninf from the original select, because OOp may be
inf, and the flag only guarantees that FalseVal (op OOp) is never
infinity.
Examples: -inf + +inf = NaN, -inf - -inf = NaN, 0 * inf = NaN
Specifically, if the original select has both ninf and nnan, we can
safely propagate the flag.
Alive2:
+ fadd: https://alive2.llvm.org/ce/z/TWfktv
+ fsub: https://alive2.llvm.org/ce/z/RAsjJb
+ fmul: https://alive2.llvm.org/ce/z/8eg4ND
Closes https://github.com/llvm/llvm-project/issues/161634.
Commit: c18de24d9d67bc469f41d31362068257a9facedc
https://github.com/llvm/llvm-project/commit/c18de24d9d67bc469f41d31362068257a9facedc
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M libc/src/__support/GPU/allocator.cpp
Log Message:
-----------
[libc] Add a config option to disable slab reclaiming (#151599)
Summary:
Without slab reclaiming this interface is much simpler and it can speed
up cases with a lot of churn. Basically, wastes memory for performance.
Commit: 11571a005a38c91b0519772d9639e91a382cc1db
https://github.com/llvm/llvm-project/commit/11571a005a38c91b0519772d9639e91a382cc1db
Author: beetrees <b at beetr.ee>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/fabs.bf16.ll
M llvm/test/CodeGen/AMDGPU/fneg-fabs.bf16.ll
M llvm/test/CodeGen/AMDGPU/fneg.bf16.ll
M llvm/test/CodeGen/ARM/fp16-promote.ll
A llvm/test/CodeGen/Generic/bfloat-op.ll
A llvm/test/CodeGen/Generic/bfloat.ll
A llvm/test/CodeGen/Generic/half-op.ll
M llvm/test/CodeGen/RISCV/half-arith.ll
M llvm/test/CodeGen/Thumb2/mve-vabd.ll
Log Message:
-----------
Fix legalizing `FNEG` and `FABS` with `TypeSoftPromoteHalf` (#156343)
Based on top of #157211.
`FNEG` and `FABS` must preserve signalling NaNs, meaning they should not
convert to f32 to perform the operation. Instead legalize to `XOR` and
`AND`.
Fixes almost all of #104915
Commit: 8a598f1044040ac07d098bec66100f9928c5cbdd
https://github.com/llvm/llvm-project/commit/8a598f1044040ac07d098bec66100f9928c5cbdd
Author: Lei Wang <wlei at fb.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/MachineSink.cpp
M llvm/lib/CodeGen/RegisterPressure.cpp
Log Message:
-----------
[NFC] Simplify checks using isDebugOrPseudoInstr API (#145127)
Merge the two checks using the existing API, NFC.
Commit: d7e7cd05410f32614c77d6127856261d73d02d24
https://github.com/llvm/llvm-project/commit/d7e7cd05410f32614c77d6127856261d73d02d24
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] Update xfail list (#162912)
Cleanup after a bunch of work landed.
Commit: 0b462f6f8363cc09494d3df102bdd9c114d4558a
https://github.com/llvm/llvm-project/commit/0b462f6f8363cc09494d3df102bdd9c114d4558a
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add support for cast operations (#162686)
This patch adds support for fpext/fptrunc operations.
I noticed that finite-only semantics are not supported by the current
representation of constant FP ranges. It should be okay for now, as we
don't expose these types in the IR.
Commit: 7aec3f2864e8ea968e7d164e784f9d7038807a5d
https://github.com/llvm/llvm-project/commit/7aec3f2864e8ea968e7d164e784f9d7038807a5d
Author: Twice <twice at apache.org>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/include/mlir-c/Rewrite.h
M mlir/include/mlir/CAPI/Rewrite.h
M mlir/lib/Bindings/Python/Rewrite.cpp
M mlir/lib/CAPI/Transforms/Rewrite.cpp
A mlir/test/python/rewrite.py
Log Message:
-----------
[MLIR][Python] Support Python-defined rewrite patterns (#162699)
This PR adds support for defining custom **`RewritePattern`**
implementations directly in the Python bindings.
Previously, users could define similar patterns using the PDL dialect’s
bindings. However, for more complex patterns, this often required
writing multiple Python callbacks as PDL native constraints or rewrite
functions, which made the overall logic less intuitive—though it could
be more performant than a pure Python implementation (especially for
simple patterns).
With this change, we introduce an additional, straightforward way to
define patterns purely in Python, complementing the existing PDL-based
approach.
### Example
```python
def to_muli(op, rewriter):
with rewriter.ip:
new_op = arith.muli(op.operands[0], op.operands[1], loc=op.location)
rewriter.replace_op(op, new_op.owner)
with Context():
patterns = RewritePatternSet()
patterns.add(arith.AddIOp, to_muli) # a pattern that rewrites arith.addi to arith.muli
frozen = patterns.freeze()
module = ...
apply_patterns_and_fold_greedily(module, frozen)
```
---------
Co-authored-by: Maksim Levental <maksim.levental at gmail.com>
Commit: 07eeb5f08d92d5d396f210c7d5eddd091639121e
https://github.com/llvm/llvm-project/commit/07eeb5f08d92d5d396f210c7d5eddd091639121e
Author: AZero13 <gfunni234 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
M llvm/test/CodeGen/PowerPC/memcmp.ll
M llvm/test/CodeGen/PowerPC/ucmp.ll
Log Message:
-----------
[PowerPC] Lower ucmp using subtractions (#146446)
Source: Hacker's delight, page 21.
Using the carry, we can use contractions to use the ucmp.
Commit: 3f84e162cc8fd152ec9212f9fd5912bd037c53c0
https://github.com/llvm/llvm-project/commit/3f84e162cc8fd152ec9212f9fd5912bd037c53c0
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck] remove tests failing because of LIT_USE_INTERNAL_DIFFERENCES (#162967)
Issue #162966
Commit: 0746ff319e0ced82cccee545b3d13afe0ca66004
https://github.com/llvm/llvm-project/commit/0746ff319e0ced82cccee545b3d13afe0ca66004
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-10 (Fri, 10 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoF.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
Log Message:
-----------
[RISCV] Explicitly use i32 in RV32 Zdinx patterns to prune tablegen patterns. NFC (#162790)
Tablegen was creating unnecessary patterns for the RV64 HwMode.
Commit: 24d5c4ff75c5881404c4d8ab4d9a9c2db1f4bfcb
https://github.com/llvm/llvm-project/commit/24d5c4ff75c5881404c4d8ab4d9a9c2db1f4bfcb
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/test/Transforms/AtomicExpand/X86/expand-atomic-non-integer.ll
Log Message:
-----------
AtomicExpand: Switch X86 test to generated checks (#162968)
Commit: 53c785d8595f42a47ecc2f0f09d8315b10edfb79
https://github.com/llvm/llvm-project/commit/53c785d8595f42a47ecc2f0f09d8315b10edfb79
Author: Dharuni R Acharya <125176188+DharuniRAcharya at users.noreply.github.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
Log Message:
-----------
[NFC][MLIR] Refactor NVVM_CpAsyncBulkGlobalToSharedClusterOp's lowering (#162611)
Commit: 885d4163379b800b7a5535826b5744b387bc204a
https://github.com/llvm/llvm-project/commit/885d4163379b800b7a5535826b5744b387bc204a
Author: LeeYoungJoon <dog3hk.dev at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/docs/QualGroup.rst
Log Message:
-----------
[QualGroup][docs] Add new members to LLVM Qualification Working Group (#161113)
## Summary
This PR adds three new members to the LLVM Qualification Working Group
member table in the documentation.
## Changes
- **Jorge Pinto Sousa** (Critical Techworks)
- **José Rui Simões** (Critical Software)
- **Zaky Hermawan** (Individual contributor)
## Background
These new members have been nominated and approved through the working
group's established nomination process as outlined in the QualGroup
documentation. They meet the membership criteria for individuals with
relevant experience in qualification-related efforts.
## Testing
- [x] Documentation builds successfully
- [x] Member table formatting is correct
- [x] All links and handles are properly formatted
## Related Links
- [LLVM Qualification Working Group
Documentation](https://llvm.org/docs/QualGroup.html)
Commit: 5a05fa1f7d031120581aefd8ab1d10aad898abdc
https://github.com/llvm/llvm-project/commit/5a05fa1f7d031120581aefd8ab1d10aad898abdc
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/DropEquivalentBufferResults.cpp
Log Message:
-----------
[mlir][bufferize] Delete getCalledFunction in drop-equivalent-buffer-results pass (NFC) (#162432)
Use resolveCallable replace getCalledFunction.
Commit: 688cbe41ca7d40552d201758bbf8f26a7cd20b4b
https://github.com/llvm/llvm-project/commit/688cbe41ca7d40552d201758bbf8f26a7cd20b4b
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Fix a bug when checking non-dependent constraints (#162969)
We check the non-dependent constraints early with empty template
arguments when we build a nested requirement. Therefore we cannot assume
a non-empty MLTAL within the Checker.
No release note because this is a regression on trunk.
Commit: 24ac5066dd13c6167f90a9a4510a45f2e03f5a07
https://github.com/llvm/llvm-project/commit/24ac5066dd13c6167f90a9a4510a45f2e03f5a07
Author: Twice <twice at apache.org>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/include/mlir/CAPI/Rewrite.h
M mlir/lib/Bindings/Python/Rewrite.cpp
M mlir/lib/CAPI/Transforms/Rewrite.cpp
Log Message:
-----------
[MLIR][NFC] Clean up rewrite CAPI implementation and Python bindings (#162974)
This is a follow-up PR of #162699.
In this PR we clean CAPI and Python bindings of MLIR rewrite part by:
- remove all manually-defined `wrap`/`unwrap` functions;
- remove useless nanobind-defined Python class `RewritePattern`.
Commit: 28b3f2f04bf178a4813c16ca445cc01df233cb58
https://github.com/llvm/llvm-project/commit/28b3f2f04bf178a4813c16ca445cc01df233cb58
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SPSWrapperFunction.h
M orc-rt/include/orc-rt/SimplePackedSerialization.h
M orc-rt/unittests/SPSWrapperFunctionTest.cpp
M orc-rt/unittests/SimplePackedSerializationTest.cpp
Log Message:
-----------
[orc-rt] Add SPSExecutorAddr <-> T* serialization. (#162992)
This replaces SPS transparent conversion for pointers. Transparent
conversion only applies to argument/return types, not nested types. We
want to be able to serialize / deserialize structs containing pointers.
We may need to replace this in the near future with a new SPSPointer tag
type, since SPSExecutorAddr is meant to be serialization for pure
addresses, and pointers may carry other information (e.g. tag bits), but
we can do that in a follow-up commit.
Commit: c16eaa4d8580a7a48b952ba961d2691dd084c892
https://github.com/llvm/llvm-project/commit/c16eaa4d8580a7a48b952ba961d2691dd084c892
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
M llvm/unittests/ExecutionEngine/Orc/SymbolStringPoolTest.cpp
Log Message:
-----------
[ORC] Enable hashing of [NonOwning]SymbolStringPtr objects. (#162990)
This will be used by an upcoming patch to hash collections of
SymbolStringPtrs.
Commit: 3bfb5b0e7ccbcb9f127f5b9c958e6499ba9c0523
https://github.com/llvm/llvm-project/commit/3bfb5b0e7ccbcb9f127f5b9c958e6499ba9c0523
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
M llvm/test/DebugInfo/Generic/compileunit-source-language-name.ll
Log Message:
-----------
[llvm][DebugInfo] Support versioned source language names in DwarfUnit (#162625)
Depends on:
* https://github.com/llvm/llvm-project/pull/162621
Now we can start emitting `DW_AT_language_name`, make sure
`DwarfUnit::getSourceLanguage` is equipped to handle this. Otherwise the
new test-case would assert.
Commit: b0b4a8e9e343306e8070e31cb4839ce4af2ad7c8
https://github.com/llvm/llvm-project/commit/b0b4a8e9e343306e8070e31cb4839ce4af2ad7c8
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
M lldb/test/Shell/Expr/TestExprLanguageNote.test
Log Message:
-----------
[lldb][test] Fix language note tests on Windows (#162995)
The LLDB test-suite compiles the tests on Windows with 'C++14' by
default:
https://github.com/llvm/llvm-project/blob/3bfb5b0e7ccbcb9f127f5b9c958e6499ba9c0523/lldb/packages/Python/lldbsuite/test/make/Makefile.rules#L357-L360
This fixes Windows buildbot failures.
Commit: 7eee67202378932d03331ad04e7d07ed4d988381
https://github.com/llvm/llvm-project/commit/7eee67202378932d03331ad04e7d07ed4d988381
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/lib/Lower/OpenMP/OpenMP.cpp
Log Message:
-----------
[flang] Fix build breakage with FLANG_ENABLE_WERROR on (NFC) (#162894)
Commit: 0820266651649c0eb6c384df91da4c6f662e5136
https://github.com/llvm/llvm-project/commit/0820266651649c0eb6c384df91da4c6f662e5136
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/examples/toy/Ch2/mlir/MLIRGen.cpp
M mlir/examples/toy/Ch3/mlir/MLIRGen.cpp
M mlir/examples/toy/Ch4/mlir/MLIRGen.cpp
M mlir/examples/toy/Ch5/mlir/MLIRGen.cpp
M mlir/examples/toy/Ch6/mlir/MLIRGen.cpp
M mlir/examples/toy/Ch7/mlir/MLIRGen.cpp
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
M mlir/lib/Conversion/VectorToAMX/VectorToAMX.cpp
M mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/lib/Dialect/GPU/Utils/DistributionUtils.cpp
M mlir/lib/Dialect/Linalg/Transforms/ShardingInterfaceImpl.cpp
M mlir/lib/Dialect/Quant/Utils/UniformSupport.cpp
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Dialect/Shard/IR/ShardOps.cpp
M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
M mlir/lib/Dialect/Utils/IndexingUtils.cpp
M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/lib/Dialect/Vector/Transforms/LowerVectorShapeCast.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/lib/IR/Operation.cpp
M mlir/lib/IR/OperationSupport.cpp
M mlir/lib/IR/TypeUtilities.cpp
M mlir/lib/Rewrite/ByteCode.cpp
M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[mlir] Use llvm accumulate wrappers. NFCI. (#162957)
Use wrappers around `std::accumulate` to make the code more concise and
less bug-prone: https://github.com/llvm/llvm-project/pull/162129.
With `std::accumulate`, it's the initial value that determines the
accumulator type. `llvm::sum_of` and `llvm::product_of` pick the right
accumulator type based on the range element type.
Found some funny bugs like a local accumulate helper that calculated a
sum with initial value of 1 -- we didn't hit the bug because the code
was actually dead...
Commit: 6a0e5b2fd7c340a872ae1e011cfb9de0d188feba
https://github.com/llvm/llvm-project/commit/6a0e5b2fd7c340a872ae1e011cfb9de0d188feba
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/test/Transforms/IndVarSimplify/loop-guard-order.ll
Log Message:
-----------
[IndVars] Add test for missed optimizations depending on guard order.
The added tests show missed optimizations, depending on the order of
loop guard conditions.
Commit: 1c95c7ae201c8f89e2ecbeb630813c9fcd23471f
https://github.com/llvm/llvm-project/commit/1c95c7ae201c8f89e2ecbeb630813c9fcd23471f
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interfaces and lowering for barrier_arrive (#162949)
Commit: ca55c07337d59aa65a19284f7b1307d16b2b0a44
https://github.com/llvm/llvm-project/commit/ca55c07337d59aa65a19284f7b1307d16b2b0a44
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoD.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td
Log Message:
-----------
[RISCV] Use i32 in more RV32 only patterns. NFC
This reduces RISCVGenDAGISel.inc by about 750 bytes.
Commit: ae7b15f2e29cea642ca847a4f0ae91d2d793f6ad
https://github.com/llvm/llvm-project/commit/ae7b15f2e29cea642ca847a4f0ae91d2d793f6ad
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/invalid-costs.ll
A llvm/test/Transforms/LoopVectorize/invalid-costs.ll
Log Message:
-----------
[VPlan] Return invalid for scalable VF in VPReplicateRecipe::computeCost
Replication is currently not supported for scalable VFs. Make sure
VPReplicateRecipe::computeCost returns an invalid cost early, for
scalable VFs if the recipe is not a single-scalar.
Note that this moves the existing invalid-costs.ll out of the AArch64
subdirectory, as it does not use a target triple.
Fixes https://github.com/llvm/llvm-project/issues/160792.
Commit: 4446aa7fdc3013a12c223b2891f5466195a48a19
https://github.com/llvm/llvm-project/commit/4446aa7fdc3013a12c223b2891f5466195a48a19
Author: Björn Schäpers <bjoern at hazardy.de>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-include.rst
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/moc_foo.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-include.cpp
Log Message:
-----------
[clang-tidy] Add IgnoredRegex to 'bugprone-suspicious-include' (#160958)
The use case is shown in the test: Qt's moc output not to trigger a
warning.
Commit: c37c82de1acbec165d39d725fe1c7e1d96710219
https://github.com/llvm/llvm-project/commit/c37c82de1acbec165d39d725fe1c7e1d96710219
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M .github/new-prs-labeler.yml
R clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
R clang/include/clang/Analysis/Analyses/LifetimeSafety.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
M clang/lib/Analysis/CMakeLists.txt
R clang/lib/Analysis/LifetimeAnnotations.cpp
R clang/lib/Analysis/LifetimeSafety.cpp
A clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
A clang/lib/Analysis/LifetimeSafety/Checker.cpp
A clang/lib/Analysis/LifetimeSafety/Dataflow.h
A clang/lib/Analysis/LifetimeSafety/Facts.cpp
A clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
A clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
A clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
A clang/lib/Analysis/LifetimeSafety/Loans.cpp
A clang/lib/Analysis/LifetimeSafety/Origins.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/CMakeLists.txt
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/SemaAPINotes.cpp
M clang/unittests/Analysis/LifetimeSafetyTest.cpp
M llvm/include/llvm/ADT/ImmutableSet.h
Log Message:
-----------
Reapply "[LifetimeSafety] Reorganize code into modular components (#162474)"
This reverts commit 24a5d8a9cae9b766351d2f500a190471aa23cb13.
Add link libs to the new clang library
Commit: 56c604961eba3e4a7168b2cbe2ee2b7ceca0c502
https://github.com/llvm/llvm-project/commit/56c604961eba3e4a7168b2cbe2ee2b7ceca0c502
Author: Lucie Choi <ychoi0407 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
A llvm/test/CodeGen/SPIRV/hlsl-resources/NonUniformIdx/RWStructuredBufferNonUniformIdx.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/NonUniformIdx/StructuredBufferNonUniformIdx.ll
R llvm/test/CodeGen/SPIRV/hlsl-resources/StorageImageNonUniformIdx.ll
Log Message:
-----------
[SPIR-V] Support `nonuniformindex` intrsinsic in SPIRV CodeGen. (#162540)
Support `@llvm.spv.resource.nonuniformindex` in SPIRV Codegen.
- Add `NonUniformEXT` decoration to the registers marked as
`nonuniformindex`, and recursively decorate its child registers (e.g.
Copy, AccessChain, Load) that access such index.
- `OpCapability ShaderNonUniformEXT` is already added in the code.
-
[SPV_EXT_descriptor_indexing](https://github.khronos.org/SPIRV-Registry/extensions/EXT/SPV_EXT_descriptor_indexing.html)
is skipped because it's added to SPIRV Core in 1.5.
## Unit test
- The unit test checks that the register being used in the final
Store/Load/Write instruction is decorated, as required by the spec.
- The implementation follows [DXC](https://godbolt.org/z/zhqGThcaf) in
that it recursively decorates all the child elements until the end.
```hlsl
RWStructuredBuffer<uint4> StructuredOut[64];
RWBuffer<uint> UnStructuredOut[64];
[numthreads(64,1,1)]
void main(uint3 GTID: SV_GroupThreadID) {
StructuredOut[(NonUniformResourceIndex(GTID.x + 1))][98][0] = 99;
UnStructuredOut[(NonUniformResourceIndex(GTID.x))][96] = 95;
}
```
Resolves https://github.com/llvm/llvm-project/issues/160231,
https://github.com/llvm/llvm-project/issues/161852.
Verified
[offload-test-suite](https://github.com/llvm/offload-test-suite/blob/cfc37840c8ad0d9c08ee900ecbc0b02cc56478ae/test/Feature/ResourceArrays/unbounded-array-nuri.test)
started passing for clang.
Commit: 886e797469dd33413a49b0bb15f4c0fe9c8a66c2
https://github.com/llvm/llvm-project/commit/886e797469dd33413a49b0bb15f4c0fe9c8a66c2
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interfaces and lowering for tma_bulk_[commit|wait]_group subroutine (#163012)
https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/#load-and-store-functions-using-bulk-tma-operations
Commit: 04dbb44b9ec7c65c26a98dfc6fcf7a70dd306b0f
https://github.com/llvm/llvm-project/commit/04dbb44b9ec7c65c26a98dfc6fcf7a70dd306b0f
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopSimplifyCFG/pr117537.ll
Log Message:
-----------
[LoopSimplifyCFG] Remove Extra Redirection From Test
This test would redirect stderr into /dev/null for no reason. Update it
to better match the tests around it. This extra indirection also caused
the test to not play nicely with lit's internal shell with profcheck
enabled.
Related to #162966.
Commit: 548e0137bb9dd473927e5d0e8a8140f66aee747c
https://github.com/llvm/llvm-project/commit/548e0137bb9dd473927e5d0e8a8140f66aee747c
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add fence after barrier_init (#163016)
Add a fence after the barrier init instruction as it is done in the
reference compiler.
Commit: ff79c7148eaa57f6a283e52a8b87be6d0a8d1a17
https://github.com/llvm/llvm-project/commit/ff79c7148eaa57f6a283e52a8b87be6d0a8d1a17
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[ProfCheck] Update XFail List After Fixing #162966
We can pull out two tests that were failing in the external shell but do
not fail with the internal shell. We have to keep the LoopSimplifyCFG
test as it fails on a ProfCheck assertion, which is expected.
Fully fixes #162966.
Commit: 9f068436d388cb02eea87fe4f6dcab085f7c32ee
https://github.com/llvm/llvm-project/commit/9f068436d388cb02eea87fe4f6dcab085f7c32ee
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interface and lowering for fence_proxy_async (#163014)
Part of TMA operation defined here:
https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/#load-and-store-functions-using-bulk-tma-operations
Commit: 878527651a87ffa6655916c58372613e4187ee8f
https://github.com/llvm/llvm-project/commit/878527651a87ffa6655916c58372613e4187ee8f
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M libc/shared/math.h
A libc/shared/math/exp2f16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/exp2f16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/exp2f16.cpp
M libc/test/shared/CMakeLists.txt
M libc/test/shared/shared_math_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Refactor exp2f16 implementation to header-only in src/__support/math folder. (#161993)
Part of #147386
in preparation for: https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
Commit: e6b49ceeaa0645a68c03f6526745354c085b045b
https://github.com/llvm/llvm-project/commit/e6b49ceeaa0645a68c03f6526745354c085b045b
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-10-11 (Sat, 11 Oct 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/CommonArgs.cpp
A clang/test/Driver/call-graph-section.c
Log Message:
-----------
[clang] Introduce CallGraphSection codegen option (#117037)
Commit: 4b8cac2bcc3707802b3c34d7352e5376dc0b962f
https://github.com/llvm/llvm-project/commit/4b8cac2bcc3707802b3c34d7352e5376dc0b962f
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Don't reset canonical IV start value. (#161589)
Instead of re-setting the start value of the canonical IV when
vectorizing the epilogue we can emit an Add VPInstruction to provide
canonical IV value, adjusted by the resume value from the main loop.
This is in preparation to make the canonical IV a VPValue defined by
loop regions. It ensures that the canonical IV always starts at 0.
PR: https://github.com/llvm/llvm-project/pull/161589
Commit: 72d6d6e25a33bdea389002c699734e5ee68fe75a
https://github.com/llvm/llvm-project/commit/72d6d6e25a33bdea389002c699734e5ee68fe75a
Author: owenca <owenpiano at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M clang/lib/Format/FormatTokenLexer.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in OneLineFormatOffRegex (#162961)
Fixes #162402
Commit: 3bca1e41e4a449a07ad69e6331f09d71db25589a
https://github.com/llvm/llvm-project/commit/3bca1e41e4a449a07ad69e6331f09d71db25589a
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M mlir/test/Examples/standalone/test.wheel.toy
M mlir/test/lit.cfg.py
M mlir/test/lit.site.cfg.py.in
Log Message:
-----------
[mlir][Examples] Do not run `test.wheel.toy` by default (#163009)
This test takes ~16s to execute on my machine, which is an order of
magnitude longer than any other mlir test. Put the `test.wheel.toy` test
behind a `requires` check for expensive checks.
LLVM already has some tests enabled conditionally under expensive
checks.
Commit: 220a96924a0a36beef9906ca2b2931a316ad4c89
https://github.com/llvm/llvm-project/commit/220a96924a0a36beef9906ca2b2931a316ad4c89
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
A clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
Log Message:
-----------
[clang-doc] create namespace names according to their paths (#162886)
Namespace filenames didn't consider their paths, so foo::tools would use
the same file as bar::tools. Now we consider their paths to avoid that
problem.
Commit: 8589d8fbbe996662f79f0aea1454af27fe47c938
https://github.com/llvm/llvm-project/commit/8589d8fbbe996662f79f0aea1454af27fe47c938
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-remarkutil/filter.test
M llvm/tools/llvm-remarkutil/RemarkFilter.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
Log Message:
-----------
[llvm-remarkutil] Auto-detect serializer format based on file extension (#160545)
If serializer format is set to Auto, try to detect user intent based on
the file extension of the output file name.
Pull Request: https://github.com/llvm/llvm-project/pull/160545
Commit: 87f2ba0ee7048a2b1dcb0a8c5907d1299f794b32
https://github.com/llvm/llvm-project/commit/87f2ba0ee7048a2b1dcb0a8c5907d1299f794b32
Author: Michael Liao <michael.hliao at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M clang/unittests/Analysis/CMakeLists.txt
Log Message:
-----------
[LifetimeSafety] Fix unittest shared build. NFC
Commit: 765060be88443950b71edf15f0125e95a8e89f1e
https://github.com/llvm/llvm-project/commit/765060be88443950b71edf15f0125e95a8e89f1e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/docs/MergeFunctions.rst
Log Message:
-----------
[llvm] Proofread MergeFunctions.rst (#162596)
Commit: d4a413797681426a921124d0c9b462fa7886fb76
https://github.com/llvm/llvm-project/commit/d4a413797681426a921124d0c9b462fa7886fb76
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Add multi-addr dealloc/release to SimpleNativeMemoryMap. (#163025)
In an ORC JIT it's common for multiple memory regions to be deallocated
at once, e.g. when a ResourceTracker covering multiple object files is
removed. This commit adds SimpleNativeMemoryMap::deallocateMultiple and
SimpleNativeMemoryMap::releaseMultiple APIs that can be used to reduce
the number of calls (and consequently IPC messages in cross-process
setups) in these cases.
Adding these operations will make it easier to write an
llvm::orc::MemoryMapper class that can use SimpleNativeMemoryMap as a
backend.
Commit: a61107472b62b3d6f94861dfa981eecd0f63ab0c
https://github.com/llvm/llvm-project/commit/a61107472b62b3d6f94861dfa981eecd0f63ab0c
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/AMDGPU/fma-combine.ll
M llvm/test/CodeGen/X86/fma_patterns.ll
M llvm/test/CodeGen/X86/fma_patterns_wide.ll
Log Message:
-----------
[SelectionDAG] Remove NoInfsFPMath uses (#162788)
Users should use fast-math flags instead.
Commit: 78b363ce1d35e8617c79e9c85acb4ac5db044082
https://github.com/llvm/llvm-project/commit/78b363ce1d35e8617c79e9c85acb4ac5db044082
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M flang/module/cudadevice.f90
Log Message:
-----------
[flang][cuda] Set value attribute to count for barrier procedures (#163031)
Commit: 3f46a5cf438ce6eaad406b8780289ee9b8a6941a
https://github.com/llvm/llvm-project/commit/3f46a5cf438ce6eaad406b8780289ee9b8a6941a
Author: Daniel Rodríguez Troitiño <danielrodriguez at meta.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M llvm/tools/llvm-nm/llvm-nm.cpp
Log Message:
-----------
[llvm-nm] Improve performance while faking symbols from function starts (#162755)
By default `nm` will look into `LC_FUNCTION_STARTS` for binaries that
have the flag `MH_NLIST_OUTOFSYNC_WITH_DYLDINFO` set unless
`--no-dyldinfo` flag is passed.
The implementation that looked for those `LC_FUNCTION_STARTS` in the
symbol list was a double nested loop that checked the symbol list over
and over again for each of the `LC_FUNCTION_STARTS` entries. For
binaries with couple million function starts and hundreds of thousands
of symbols, the double nested loop doesn't seem to finish and takes
hours even in powerful machines.
Instead of the nested loop, exchange time for memory and add all the
addresses of the symbols into a set that can be checked then for each of
the `LC_FUNCTION_STARTS` very quickly. What took hours and hours and did
not seem to finish now takes less than 10 seconds.
Fixes #93944
Commit: 911e9e999159239450eb779e93ce8a9b23caf3b0
https://github.com/llvm/llvm-project/commit/911e9e999159239450eb779e93ce8a9b23caf3b0
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-11 (Sat, 11 Oct 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
Revert "[GitHub][docker] Add python3 venv package to CI container (#161024)"
This reverts commit 5a13c857f9aaa262e846444e0d3db4ee60854f7d.
Now that pr-code-format.yml will be using a purpose-built container, we
no longer need support for this in the main CI container.
Commit: a5e30f835097d6b210bb7896e6a4dad77b5b4742
https://github.com/llvm/llvm-project/commit/a5e30f835097d6b210bb7896e6a4dad77b5b4742
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
Log Message:
-----------
[clang][bytecode][NFC] Avoid creating pointers in CopyArray op (#163042)
Since these are all primitive arrays, use the new `elem()` and
`initializeElement()` functions.
Commit: 4d29460b43e7826300b396a1ff30e5069f42c56c
https://github.com/llvm/llvm-project/commit/4d29460b43e7826300b396a1ff30e5069f42c56c
Author: flovent <flbven at protonmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
Log Message:
-----------
[clang-tidy] Correctly add parentheses in `readability-implicit-bool-conversion` (#162215)
For `CompoundAssignOperator` in condition, there will be two layers of
`ImplicitCastExpr`, for code:
```
int val = -1;
while(val >>= 7) {
}
```
While statement's AST:
```
WhileStmt <line:4:5, line:5:5>
|-ImplicitCastExpr <line:4:11, col:18> 'bool' <IntegralToBoolean>
| `-ImplicitCastExpr <col:11, col:18> 'int' <LValueToRValue>
| `-CompoundAssignOperator <col:11, col:18> 'int' lvalue '>>=' ComputeLHSTy='int' ComputeResultTy='int'
| |-DeclRefExpr <col:11> 'int' lvalue Var 0x20290cb8 'val' 'int'
| `-IntegerLiteral <col:18> 'int' 7
`-CompoundStmt <col:21, line:5:5>
```
This is not taken into account by the check when determining whether
brackets need to be added.
Closes #161318.
Commit: 6c5cb97cf4f5c4abfc9351f79f08c6b4a1a61267
https://github.com/llvm/llvm-project/commit/6c5cb97cf4f5c4abfc9351f79f08c6b4a1a61267
Author: Kunqiu Chen <camsyn at foxmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/utils/lit/lit/llvm/config.py
Log Message:
-----------
[lit] Fix the missing comma in LIT config (#162998)
This pull request makes a minor fix to the
`llvm/utils/lit/lit/llvm/config.py` file.
The change corrects a missing comma in the list of environment
variables, ensuring that `"UBSAN_SYMBOLIZER_PATH"` and `"ASAN_OPTIONS"`
are treated as separate entries instead of a single concatenated string.
* Fixed a missing comma between `"UBSAN_SYMBOLIZER_PATH"` and
`"ASAN_OPTIONS"` in the environment variable list in
`llvm/utils/lit/lit/llvm/config.py`, preventing potential configuration
issues.
Commit: ae1cd7cccfcbcd578e6f59c306a8c0ebc6a442d0
https://github.com/llvm/llvm-project/commit/ae1cd7cccfcbcd578e6f59c306a8c0ebc6a442d0
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add support for add/sub (#162962)
This patch adds support for fadd/fsub operations. I only tested this
patch with some special ranges because the exhaustive check is too
expensive.
Commit: 322c1a25c3df587b34cd606c2c266598b351cd24
https://github.com/llvm/llvm-project/commit/322c1a25c3df587b34cd606c2c266598b351cd24
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Fix a few coding style mishaps (#163045)
PrimType variables end in T, not PT. Remove const from local primitive
variables.
Commit: eaa6a28757edea72d97e245125f8e1128b0bdef2
https://github.com/llvm/llvm-project/commit/eaa6a28757edea72d97e245125f8e1128b0bdef2
Author: Sylvestre Ledru <sylvestre at debian.org>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/include/clang/Driver/Distro.h
M clang/lib/Driver/Distro.cpp
Log Message:
-----------
Add support of the next Ubuntu (Ubuntu 26.04 - Resolute Raccoon)
Commit: e5827e7b90d8edb5eb98e39b37a7d59f71074be5
https://github.com/llvm/llvm-project/commit/e5827e7b90d8edb5eb98e39b37a7d59f71074be5
Author: David Green <david.green at arm.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/vecreduce-add.ll
Log Message:
-----------
[AArch64] Protect against scalable vectors in performUADDVAddCombine.
Fixes #162983
Commit: 5db774a8224fd71418877fa4b90349381cb257d5
https://github.com/llvm/llvm-project/commit/5db774a8224fd71418877fa4b90349381cb257d5
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar.ll
Log Message:
-----------
[LV] Add additional test for narrowing to single scalars.
Add extra test coverage for narrowing stores to single scalars, with the
store address being uniform-per-part, not uniform-across-all-parts.
Test for https://github.com/llvm/llvm-project/issues/162498.
Commit: fd7aae382c9ad7d56294cf20e55d0e227a93ce47
https://github.com/llvm/llvm-project/commit/fd7aae382c9ad7d56294cf20e55d0e227a93ce47
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M .github/workflows/build-ci-container-tooling.yml
M .github/workflows/containers/github-action-ci-tooling/Dockerfile
Log Message:
-----------
[Github][CI] Add missing git-clang-format to format-container (#163054)
Commit: 63452220292b51b19c3fe98ec62c4098f35e9989
https://github.com/llvm/llvm-project/commit/63452220292b51b19c3fe98ec62c4098f35e9989
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
Log Message:
-----------
[AArch64][NFC] Use member variable RI instead getRegisterInfo in copyPhysReg (#162826)
This patch uses the RI member variable directly in the member function
AArch64InstrInfo::copyPhysReg, instead of redundant calls to the public
API.
Commit: ab71b7793a0480f820c62c0bbc69e6c8e7434c2a
https://github.com/llvm/llvm-project/commit/ab71b7793a0480f820c62c0bbc69e6c8e7434c2a
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
A mlir/test/Dialect/LLVMIR/inlining-rocdl.mlir
Log Message:
-----------
[mlir][rocdl] Add rocdl inlining interface (#163058)
All rocdl ops should be safe to inline.
Commit: 4bf5ab4f9d483c6cefbbd8d04774cea5571dce45
https://github.com/llvm/llvm-project/commit/4bf5ab4f9d483c6cefbbd8d04774cea5571dce45
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
Log Message:
-----------
[VPlan] Set flags when constructing truncs using VPWidenCastRecipe.
VPWidenCastRecipes with Trunc opcodes where missing the correct OpType
for IR flags. Update createWidenCast to set the correct flags for
truncs, and use it consistenly.
Fixes https://github.com/llvm/llvm-project/issues/162374.
Commit: c3c74eb5b4c21040497fdb86be3175b7311cc234
https://github.com/llvm/llvm-project/commit/c3c74eb5b4c21040497fdb86be3175b7311cc234
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/unittests/Support/JobserverTest.cpp
Log Message:
-----------
JobserverTest.cpp: Suppress a warning. [-Wunused-lambda-capture]
I don't know how to mark an item as `maybe_unused` on capture list.
I also guess `i` may be removed out of byval capture.
Commit: 1fde14bc7f69aeb874dd69c5bb3fa43b771d67cc
https://github.com/llvm/llvm-project/commit/1fde14bc7f69aeb874dd69c5bb3fa43b771d67cc
Author: NAKAMURA Takumi <geek4civic at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[bazel] Update clang/Analysis/LifetimeSafety for #162474
Commit: 6eef045365d825a7bdbd2bb89a61fa603fdcc7ea
https://github.com/llvm/llvm-project/commit/6eef045365d825a7bdbd2bb89a61fa603fdcc7ea
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M offload/libomptarget/omptarget.cpp
Log Message:
-----------
[Offload] Silence warning via maybe unused (NFC) (#163076)
Commit: 3b42d621120bb818cc35d3f547ae31bcb0cdaacc
https://github.com/llvm/llvm-project/commit/3b42d621120bb818cc35d3f547ae31bcb0cdaacc
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/PointerUnion.h
Log Message:
-----------
[ADT] Use TypeAtIndex in PointerUnion (NFC) (#163036)
This patch replaces GetFirstType with TypeAtIndex.
Commit: ac0f95aa88a07434856decdfd6649b8853b5cdbf
https://github.com/llvm/llvm-project/commit/ac0f95aa88a07434856decdfd6649b8853b5cdbf
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/STLExtras.h
Log Message:
-----------
[ADT] Simplify addEnumValues with llvm::to_underlying (NFC) (#163037)
llvm::to_underlying, forward ported from C++23, conveniently packages
static_cast and std::underlying_type_t like so:
static_cast<std::underlying_type_t<EnumTy>>(E)
Commit: 6333e05751a3b278347166f0ff8d720217881cde
https://github.com/llvm/llvm-project/commit/6333e05751a3b278347166f0ff8d720217881cde
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/Sequence.h
Log Message:
-----------
[ADT] Simplify CheckedInt::from with llvm::to_underlying (NFC) (#163038)
llvm::to_underlying, forward ported from C++23, conveniently packages
static_cast and std::underlying_type_t like so:
static_cast<std::underlying_type_t<EnumTy>>(E)
Commit: d72cd24ac43861b885dbcac395f2cc53246d6042
https://github.com/llvm/llvm-project/commit/d72cd24ac43861b885dbcac395f2cc53246d6042
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/temp/temp.param/p10-2a.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Preserve more sugars in constraint evaluation (#162991)
Using the canonical form of SugarConverted was an oversight during the
iteration of e9972debc9. We now retain sugar for better diagnostics.
Commit: 8f168376c11d45834a59da9d61b2d850f2342f32
https://github.com/llvm/llvm-project/commit/8f168376c11d45834a59da9d61b2d850f2342f32
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/non-commutative-second-arg-only-copyable.ll
Log Message:
-----------
[SLP]Support non-ordered copyable argument in non-commutative instructions
If the non-commutative user has several same operands and at least one
of them (but not the first) is copyable, need to consider this
opportunity when calculating the number of dependencies. Otherwise, the
schedule bundle might be not scheduled correctly and cause a compiler
crash
Fixes #162925
Commit: 0d1f2f439d699cd0fe3ec6893b2703c1edf3eea9
https://github.com/llvm/llvm-project/commit/0d1f2f439d699cd0fe3ec6893b2703c1edf3eea9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[SCEV] Use APInt for DividesBy when collecting loop guard info (NFC). (#163017)
Follow-up as suggested in
https://github.com/llvm/llvm-project/pull/162617.
Just use an APInt for DividesBy, as the existing code already operates
on APInt and thus handles the case of DividesBy being 1.
PR: https://github.com/llvm/llvm-project/pull/163017
Commit: e6358ab75c0928bc7d8356e60f25c4f97bab9533
https://github.com/llvm/llvm-project/commit/e6358ab75c0928bc7d8356e60f25c4f97bab9533
Author: 小钟 <2211261685 at qq.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M libunwind/test/aix_signal_unwind.pass.sh.S
M llvm/include/llvm/BinaryFormat/XCOFF.h
M llvm/lib/Object/XCOFFObjectFile.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/test/CodeGen/PowerPC/aix-alloca-r31.ll
M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-clobber-register.ll
M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-redzone-boundary.mir
M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-vectorinfo.ll
M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable-vectorinfo_hasvarg.ll
M llvm/test/CodeGen/PowerPC/aix-emit-tracebacktable.ll
M llvm/test/CodeGen/PowerPC/aix-exception.ll
M llvm/test/DebugInfo/XCOFF/empty.ll
M llvm/test/DebugInfo/XCOFF/explicit-section.ll
M llvm/test/DebugInfo/XCOFF/function-sections.ll
M openmp/runtime/src/z_AIX_asm.S
Log Message:
-----------
Fix typo: IsGlobaLinkage -> IsGlobalLinkage in XCOFF (#161960)
Corrects the spelling of 'IsGlobaLinkage' to 'IsGlobalLinkage' in
XCOFF-related code, comments, and tests across the codebase.
Commit: 5e3ac2a6f22aa4d1d055c2d430913a960b9bb60b
https://github.com/llvm/llvm-project/commit/5e3ac2a6f22aa4d1d055c2d430913a960b9bb60b
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/test/Transforms/LoopVectorize/loop-form.ll
Log Message:
-----------
[LV] Bail out on loops with switch as latch terminator.
Currently we cannot vectorize loops with latch blocks terminated by a
switch. In the future this could be handled by materializing appropriate
compares.
Fixes https://github.com/llvm/llvm-project/issues/156894.
Commit: d81ffd4ebb45235b4d106f6a0d5e5032bad41018
https://github.com/llvm/llvm-project/commit/d81ffd4ebb45235b4d106f6a0d5e5032bad41018
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/parent-phi-node-reordered.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi-nodes-incoming-same-blocks.ll
Log Message:
-----------
[SLP]INsert postponed vector value after all uses, if the parent node is PHI
Need to insert the vector value for the postponed gather/buildvector
node after all uses non only if the vector value of the user node is
phi, but also if the user node itself is PHI node, which may produce
vector phi + shuffle.
Fixes #162799
Commit: 706ffa15a6cb8d7d54d8d22f37b829ab4c111cc5
https://github.com/llvm/llvm-project/commit/706ffa15a6cb8d7d54d8d22f37b829ab4c111cc5
Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/test/CodeGen/X86/GlobalISel/add-scalar.ll
M llvm/test/CodeGen/X86/GlobalISel/legalize-add.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-leading-zeros.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-sub.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-trailing-zeros-undef.mir
M llvm/test/CodeGen/X86/GlobalISel/legalize-trailing-zeros.mir
A llvm/test/CodeGen/X86/GlobalISel/pr49087.ll
M llvm/test/CodeGen/X86/GlobalISel/regbankselect-X32.mir
M llvm/test/CodeGen/X86/GlobalISel/select-add-x32.mir
A llvm/test/CodeGen/X86/GlobalISel/select-get-carry-bit.ll
M llvm/test/CodeGen/X86/GlobalISel/sub-scalar.ll
R llvm/test/CodeGen/X86/pr49087.ll
Log Message:
-----------
[X86][GlobalISel] Improve carry value selection (#146586)
Generally G_UADDE, G_UADDO, G_USUBE, G_USUBO are used together and it
was enough to simply define EFLAGS. But if extractvalue is used, we end
up with a copy of EFLAGS into GPR.
Always generate SETB instruction to put the carry bit on GPR and CMP to
set the carry bit back. It gives the correct lowering in all the cases.
Closes #120029
Commit: 62ac791b67bf55d8b1b2783006eb698d79259850
https://github.com/llvm/llvm-project/commit/62ac791b67bf55d8b1b2783006eb698d79259850
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M lldb/test/Shell/Expr/TestExprLanguageNote.test
Log Message:
-----------
[lldb][test] TestExprLanguageNote.test: require LLD on Windows
Otherwise debug-info is stripped, which influences the language of the
current frame.
Also, set explicit breakpoint because Windows seems to not obey the
debugtrap.
Log from failing test on Windows:
```
(lldb) command source -s 0 'lit-lldb-init-quiet'
Executing commands in 'D:\test\lit-lldb-init-quiet'.
(lldb) command source -C --silent-run true lit-lldb-init
(lldb) target create "main.out"
Current executable set to 'D:\test\main.out' (x86_64).
(lldb) settings set interpreter.stop-command-source-on-error false
(lldb) command source -s 0 'with-target.input'
Executing commands in 'D:\test\with-target.input'.
(lldb) expr blah
^
error: use of undeclared identifier 'blah'
note: Falling back to default language. Ran expression as 'Objective C++'.
(lldb) run
Process 29404 launched: 'D:\test\main.out' (x86_64)
Process 29404 stopped
* thread #1, stop reason = Exception 0x80000003 encountered at address 0x7ff7b3df7189
frame #0: 0x00007ff7b3df718a main.out
-> 0x7ff7b3df718a: xorl %eax, %eax
0x7ff7b3df718c: popq %rcx
0x7ff7b3df718d: retq
0x7ff7b3df718e: int3
(lldb) expr blah
^
error: use of undeclared identifier 'blah'
note: Falling back to default language. Ran expression as 'Objective C++'.
(lldb) expr -l objc -- blah
^
error: use of undeclared identifier 'blah'
note: Expression evaluation in pure Objective-C not supported. Ran expression as 'Objective C++'.
(lldb) expr -l c -- blah
^
error: use of undeclared identifier 'blah'
note: Expression evaluation in pure C not supported. Ran expression as 'ISO C++'.
```
Commit: 92f1af332c909e7afffb4dc1eecbfbb9d8e1ba83
https://github.com/llvm/llvm-project/commit/92f1af332c909e7afffb4dc1eecbfbb9d8e1ba83
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
M lldb/unittests/DAP/ProtocolTypesTest.cpp
Log Message:
-----------
[lldb-dap] DataBreakpointInfoArguments make frameId optional. (#162845)
Add unittest for `DataBreakpointInfoArguments`
Commit: 513b10df4308a4704989655241090399173c69dd
https://github.com/llvm/llvm-project/commit/513b10df4308a4704989655241090399173c69dd
Author: Ruoyu Zhong <zhongruoyu at outlook.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix formatting of `requires` expressions in braced initializers (#163005)
`UnwrappedLineParser::parseBracedList` had no
explicit handling for the `requires` keyword, so it would just call
`nextToken()` instead of properly parsing the `requires` expression.
This fix adds a case for `tok::kw_requires` in `parseBracedList`,
calling `parseRequiresExpression` to handle it correctly, matching the
existing behavior in `parseParens`.
Fixes https://github.com/llvm/llvm-project/issues/162984.
Commit: 8d03a37b9844070b6ccd83aa7cc8b28e91f8d213
https://github.com/llvm/llvm-project/commit/8d03a37b9844070b6ccd83aa7cc8b28e91f8d213
Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/test/CodeGen/LoongArch/calling-conv-half.ll
M llvm/test/CodeGen/LoongArch/ir-instruction/atomicrmw-fp.ll
Log Message:
-----------
[llvm][LoongArch] Replace unnecessary ZERO_EXTEND to ANY_EXTEND (#162593)
Commit: 7381558ef8b8639831dfdedf7edbd5e635afc85e
https://github.com/llvm/llvm-project/commit/7381558ef8b8639831dfdedf7edbd5e635afc85e
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Rename SimpleNativeMemoryMap finalize & deallocate. NFCI. (#163114)
This commit renames the "finalize" operation to "initialize", and
"deallocate" to "deinitialize".
The new names are chosen to better fit the point of view of the
ORC-runtime and executor-process: After memory is *reserved* it can be
*initialized* with some content, and *deinitialized* to return that
memory to the reserved region.
This seems more understandable to me than the original scheme, which
named these operations after the controller-side JITLinkMemoryManager
operations that they partially implemented. I.e.
SimpleNativeMemoryMap::finalize implemented the final step of
JITLinkMemoryManager::finalize, initializing the memory in the executor;
and SimpleNativeMemoryMap::deallocate implemented the final step of
JITLinkMemoryManager::deallocate, running dealloc actions and releasing
the finalized region.
The proper way to think of the relationship between these operations now
is that:
1. The final step of finalization is to initialize the memory in the
executor.
2. The final step of deallocation is to deinitialize the memory in the
executor.
Commit: 5a76e14b04577232eef0fb4856c505fc6f571551
https://github.com/llvm/llvm-project/commit/5a76e14b04577232eef0fb4856c505fc6f571551
Author: Jim Lin <jim at andestech.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/vim/syntax/llvm.vim
Log Message:
-----------
[Utils][vim] Match hexadecimal constants with u or s prefixes (#162613)
We can add 's' or 'u' before the hexadecimal constants to denote its
signedness.
See https://llvm.org/docs/LangRef.html#simple-constants for reference.
Commit: ed0ca8402cbc58fb2c3d21ad0cf935c2f3534307
https://github.com/llvm/llvm-project/commit/ed0ca8402cbc58fb2c3d21ad0cf935c2f3534307
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/utils/git/code-format-helper.py
Log Message:
-----------
[Github] Add --diff_from_common_commit to code format repro command (#163043)
This ensures that we are not including any branches on main that are not
in the current user's branch in the diff. We can add this to the command
now that --diff_from_common_commit (or at least the fixed version) has
landed in a release (21.1.1).
Commit: aaf5493fd3f783746ac5d8d384509bf40fe7cfd4
https://github.com/llvm/llvm-project/commit/aaf5493fd3f783746ac5d8d384509bf40fe7cfd4
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
Log Message:
-----------
TableGen: Account for Unsupporte LibcallImpl in bitset size (#163083)
The Unsupported case is special and doesn't have an entry in the
vector, and is directly emitted as the 0 case. This should be
harmless as it is, but could break if the right number of new
libcalls is added.
Commit: 853760bca6aa7a960b154cef8c61f87271870b8a
https://github.com/llvm/llvm-project/commit/853760bca6aa7a960b154cef8c61f87271870b8a
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/test/CodeGen/target-data.c
M clang/test/CodeGenOpenCL/amdgpu-env-amdgcn.cl
M lld/test/ELF/lto/amdgcn-oses.ll
M lld/test/ELF/lto/amdgcn.ll
M lld/test/ELF/lto/r600.ll
M llvm/lib/TargetParser/TargetDataLayout.cpp
M llvm/test/CodeGen/AMDGPU/global-constant.ll
M llvm/test/CodeGen/AMDGPU/global-variable-relocs.ll
M llvm/test/CodeGen/AMDGPU/llvm.memcpy.ll
M llvm/test/CodeGen/AMDGPU/naked-fn-with-frame-pointer.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
AMDGPU: Use ELF mangling in data layout (#163011)
Closes #95219
Commit: cd1f94c249e59600a9aa7a42d1d7006f9b365f34
https://github.com/llvm/llvm-project/commit/cd1f94c249e59600a9aa7a42d1d7006f9b365f34
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/APFloat.h
Log Message:
-----------
[ADT] Add [[nodiscard]] to makeQuiet (NFC) (#161776)
FWIW, this [[nodiscard]] led to the discovery of #161625.
Commit: f06824db78d2903b83e9b9da1bc2ef64e74f4b82
https://github.com/llvm/llvm-project/commit/f06824db78d2903b83e9b9da1bc2ef64e74f4b82
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/docs/HowToBuildOnARM.rst
Log Message:
-----------
[llvm] Proofread HowToBuildOnARM.rst (#163039)
Commit: 4412cfa854a755ea62811e29ea7615668e365159
https://github.com/llvm/llvm-project/commit/4412cfa854a755ea62811e29ea7615668e365159
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/ExtractAPI/API.h
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M clang/lib/Interpreter/InterpreterValuePrinter.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
Log Message:
-----------
[clang] Use [[fallthrough]] instead of LLVM_FALLTHROUGH (NFC) (#163085)
[[fallthrough]] is now part of C++17, so we don't need to use
LLVM_FALLTHROUGH.
Commit: 6f13b94e61d3f9e8b711a83d96ddf0de7e2b1427
https://github.com/llvm/llvm-project/commit/6f13b94e61d3f9e8b711a83d96ddf0de7e2b1427
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/lib/Support/VirtualOutputBackends.cpp
M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/Xtensa/MCTargetDesc/XtensaMCTargetDesc.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[llvm] Use [[fallthrough]] instead of LLVM_FALLTHROUGH (NFC) (#163086)
[[fallthrough]] is now part of C++17, so we don't need to use
LLVM_FALLTHROUGH.
Commit: 59ac5b7eee30ad7a4860946a5e3d2c8822f9655b
https://github.com/llvm/llvm-project/commit/59ac5b7eee30ad7a4860946a5e3d2c8822f9655b
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/BinaryStreamWriter.h
Log Message:
-----------
[Support] Use llvm::to_underlying in BinaryStreamWriter.h (NFC) (#163087)
llvm::to_underlying, forward ported from C++23, conveniently packages
static_cast and std::underlying_type_t like so:
static_cast<std::underlying_type_t<EnumTy>>(E)
Commit: cf8943a0dc3c68bd1726540dd9d2bedd79c6e264
https://github.com/llvm/llvm-project/commit/cf8943a0dc3c68bd1726540dd9d2bedd79c6e264
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/ScopedPrinter.h
Log Message:
-----------
[Support] Use llvm::to_underlying in ScopedPrinter.h (NFC) (#163088)
llvm::to_underlying, forward ported from C++23, conveniently packages
static_cast and std::underlying_type_t like so:
static_cast<std::underlying_type_t<EnumTy>>(E)
Commit: b86a4e146ade4c60fe8832abb8d68d0bbd14c6da
https://github.com/llvm/llvm-project/commit/b86a4e146ade4c60fe8832abb8d68d0bbd14c6da
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M llvm/docs/AArch64SME.rst
Log Message:
-----------
[llvm] Proofread AArch64SME.rst (#163103)
Commit: 8bd915d07b44aa2d3f9b6ec14df3c16e31488653
https://github.com/llvm/llvm-project/commit/8bd915d07b44aa2d3f9b6ec14df3c16e31488653
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
Log Message:
-----------
[clang] Remove unused local variables (NFC) (#163104)
Identified with bugprone-unused-local-non-trivial-variable.
Commit: a2a146b67c517aa324760d106ad0f44ddbe512e3
https://github.com/llvm/llvm-project/commit/a2a146b67c517aa324760d106ad0f44ddbe512e3
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
M mlir/tools/mlir-tblgen/CppGenUtilities.cpp
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
[mlir] Remove unused local variables (NFC) (#163105)
Identified with bugprone-unused-local-non-trivial-variable.
Commit: 6785c4f2ff16b4453d1140d9ccbbf00a93d6542e
https://github.com/llvm/llvm-project/commit/6785c4f2ff16b4453d1140d9ccbbf00a93d6542e
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M mlir/tools/mlir-tblgen/PassGen.cpp
M mlir/unittests/TableGen/passes.td
Log Message:
-----------
[mlir][tblgen] Avoid compilation failure (#161545)
This would have failed during compilation post generation later, trim
and use raw string literals to avoid such failures.
Probably a few more places where similar failures could occur, but this
was unexpected failure user ran into.
Commit: 06e2c78680d753d97b0cd6b7a86b4dbd0dbfb1e9
https://github.com/llvm/llvm-project/commit/06e2c78680d753d97b0cd6b7a86b4dbd0dbfb1e9
Author: Twice <twice at apache.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/lib/Bindings/Python/Rewrite.cpp
M mlir/python/mlir/dialects/arith.py
M mlir/test/python/rewrite.py
Log Message:
-----------
[MLIR][Python] Pass OpView subclasses instead of Operation in rewrite patterns (#163080)
This is a follow-up PR for #162699.
Currently, in the function where we define rewrite patterns, the `op` we
receive is of type `ir.Operation` rather than a specific `OpView` type
(such as `arith.AddIOp`). This means we can’t conveniently access
certain parts of the operation — for example, we need to use
`op.operands[0]` instead of `op.lhs`. The following example code
illustrates this situation.
```python
def to_muli(op, rewriter):
# op is typed ir.Operation instead of arith.AddIOp
pass
patterns.add(arith.AddIOp, to_muli)
```
In this PR, we convert the operation to its corresponding `OpView`
subclass before invoking the rewrite pattern callback, making it much
easier to write patterns.
---------
Co-authored-by: Maksim Levental <maksim.levental at gmail.com>
Commit: 47e9df8a74bc21dd14be4b619aeb28697e30b0f5
https://github.com/llvm/llvm-project/commit/47e9df8a74bc21dd14be4b619aeb28697e30b0f5
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interface and lowering for tma_bulk_g2s (#163034)
https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/#load-and-store-functions-using-bulk-tma-operations
Commit: 211872176514f7f8e7329dff6747d33c4d9406b4
https://github.com/llvm/llvm-project/commit/211872176514f7f8e7329dff6747d33c4d9406b4
Author: Jasmine Tang <jjasmine at igalia.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
Log Message:
-----------
[MLIR] [NFC] Add static assert to subclass AbstractSparseLattice (#162547)
SparseForwardDataFlowAnalysis, with the comments specifying that StateT
must be subclassing AbstractSparseLattice, also places a static assert
in the class itself.
This commit adds the same missing assert for
SparseBackwardDataFlowAnalysis.
Commit: 36f26d435087fda290e6d08acda59201a91f1d15
https://github.com/llvm/llvm-project/commit/36f26d435087fda290e6d08acda59201a91f1d15
Author: Twice <twice at apache.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/docs/Bindings/Python.md
Log Message:
-----------
[MLIR][Docs] Add a section for Python-defined dialects, passes and rewrite patterns in bindings (#163123)
The MLIR Python bindings now support defining new passes, new rewrite
patterns (through either `RewritePatternSet` or `PDLModule`), as well as
new dialects using the IRDL bindings. Adding a dedicated section to
document these features would make it easier for users to discover and
understand the full capabilities of the Python bindings.
Commit: 1d0a85a78b7ec7b994b280d30ca125fe58dbbd84
https://github.com/llvm/llvm-project/commit/1d0a85a78b7ec7b994b280d30ca125fe58dbbd84
Author: Carl Ritson <carl.ritson at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/function-args.ll
M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
M llvm/test/CodeGen/AMDGPU/idot4u.ll
Log Message:
-----------
[AMDGPU][True16][CodeGen] Add patterns to reduce intermediates (#162047)
Add patterns which reduce or operations to register sequences when
combining i16 values to i32. This removes many intermediate VGPRs and
reduces registers pressure.
Commit: acdd3eaa28a58730697bf0657be54e647cc7b64a
https://github.com/llvm/llvm-project/commit/acdd3eaa28a58730697bf0657be54e647cc7b64a
Author: Florian Mayer <fmayer at google.com>
Date: 2025-10-12 (Sun, 12 Oct 2025)
Changed paths:
M clang/unittests/Analysis/FlowSensitive/CMakeLists.txt
A clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
A clang/unittests/Analysis/FlowSensitive/MockHeaders.h
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M llvm/utils/gn/secondary/clang/unittests/Analysis/FlowSensitive/BUILD.gn
Log Message:
-----------
[FlowSensitive] [NFC] Move mock headers to separate file (#162970)
Commit: 982c9e6ac52a13483a08fdcf007a565d41cf4615
https://github.com/llvm/llvm-project/commit/982c9e6ac52a13483a08fdcf007a565d41cf4615
Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][NFC] Use `getScoreUB` for XCNT insertion. (#162448)
Commit: 678303cd92983b75e35df298a9ee5a6d26ca4a26
https://github.com/llvm/llvm-project/commit/678303cd92983b75e35df298a9ee5a6d26ca4a26
Author: Ruoyu Zhong <zhongruoyu at outlook.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Log Message:
-----------
[clangd] Fix code action kind for readability-identifier-naming fixes (#162808)
https://github.com/llvm/llvm-project/pull/78454 converted
readability-identifier-naming fixes to use rename mechanism to rename
the symbol project-wide. However, it set the code action kind to
"refactor" instead of "quickfix", which caused the fixes to be filtered
out when editors (like VS Code) request quick fixes for diagnostics. On
VS Code, for example, users would see "No quick fixes available" despite
the diagnostic indicating "(fix available)".
Fix that by changing the code action kind back to "quickfix".
Signed-off-by: Ruoyu Zhong <zhongruoyu at outlook.com>
Commit: 2db5b326e18be5e1af57e433b90e8d89cd70b4d5
https://github.com/llvm/llvm-project/commit/2db5b326e18be5e1af57e433b90e8d89cd70b4d5
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/MemoryMapper.h
M llvm/lib/ExecutionEngine/Orc/MapperJITLinkMemoryManager.cpp
M llvm/lib/ExecutionEngine/Orc/MemoryMapper.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
M llvm/unittests/ExecutionEngine/Orc/MapperJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/MemoryMapperTest.cpp
M llvm/unittests/ExecutionEngine/Orc/SharedMemoryMapperTest.cpp
Log Message:
-----------
[ORC] Add LinkGraph& argument to MemoryMapper::prepare. (#163121)
This gives MemoryMapper implementations a chance to allocate working
memory using the LinkGraph's allocator.
Commit: 7314565281ec28b745502c3f429fd431e16673eb
https://github.com/llvm/llvm-project/commit/7314565281ec28b745502c3f429fd431e16673eb
Author: Frederik Harwath <frederik.harwath at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/ExpandFp.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
M llvm/test/CodeGen/AMDGPU/frem.ll
M llvm/test/Transforms/ExpandFp/AMDGPU/frem.ll
Log Message:
-----------
[AMDGPU] expand-fp: unify scalarization (NFC) (#158588)
Extend the existing "scalarize" function which is used for the
fp-integer conversion instruction expansion to BinaryOperator
instructions and reuse it for the frem expansion; a similar function
for scalarizing BinaryOperator instructions exists in the ExpandLargeDivRem
pass and this change is a step towards merging that pass with ExpandFp.
Further refactoring: Scalarize directly instead of using the
"ReplaceVector" as a worklist, rename "Replace" vector to "Worklist",
and hoist a check for unsupported scalable vectors to the top of the
instruction visiting loop.
Commit: 869c76dda32315a435221fc6220763496f5c6364
https://github.com/llvm/llvm-project/commit/869c76dda32315a435221fc6220763496f5c6364
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlan] Allow zero-operand m_BranchOn(Cond|Count) (NFC) (#162721)
Commit: 0eb354223bf1507cfade3058770c3d94992264a2
https://github.com/llvm/llvm-project/commit/0eb354223bf1507cfade3058770c3d94992264a2
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependencies for 0820266651649c0eb6c384df91da4c6f662e5136
Commit: 74513f5ff7a7fcce58d93a45c754a3afe762d45c
https://github.com/llvm/llvm-project/commit/74513f5ff7a7fcce58d93a45c754a3afe762d45c
Author: Benjamin Kramer <benny.kra at googlemail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] Add missing dependency for ab71b7793a0480f820c62c0bbc69e6c8e7434c2a
Commit: 1389980ed746910c31196a46ff4ebb67b81f2263
https://github.com/llvm/llvm-project/commit/1389980ed746910c31196a46ff4ebb67b81f2263
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
M llvm/test/CodeGen/AArch64/framelayout-sve-win.mir
M llvm/test/CodeGen/AArch64/win-sve.ll
M llvm/test/DebugInfo/COFF/AArch64/codeview-sve.ll
Log Message:
-----------
[AArch64][SVE] Avoid extra pop of "FixedObject" with CalleeSavesAboveFrameRecord (#156452)
Previously, we would pop `FixedObject`-bytes after deallocating the SVE
area, then again as part of the "AfterCSRPopSize". This could be seen in
the tests `@f6` and `@f9`.
This patch removes the erroneous pop, and refactors
`CalleeSavesAboveFrameRecord` to reuse more of the existing GPR
deallocation logic, which allows for post-decrements.
Commit: 89c9f7e34c145bfa33e4235e7c205300eb1c0333
https://github.com/llvm/llvm-project/commit/89c9f7e34c145bfa33e4235e7c205300eb1c0333
Author: Gil Rapaport <gil.rapaport at mobileye.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/lib/Target/Cpp/TranslateToCpp.cpp
M mlir/test/Target/Cpp/expressions.mlir
Log Message:
-----------
[mlir][emitc] Inline expressions with side-effects (#161356)
So far the translator only inlined expressions having no side effects,
as rescheduling their evaluation doesn't break semantics. This patch
adds inlining of expressions containing side effects if defined just
before their use, e.g.,
```mlir
%c = emitc.expression %a, %b : (i32, !emitc.ptr<i32>) -> i32 {
%e = emitc.sub %a, %b : (!emitc.ptr<i32>, i32) -> !emitc.ptr<i32>
%d = emitc.apply "*"(%e) : (!emitc.ptr<i32>) -> i32
emitc.yield %d : i32
}
emitc.return %c : i32
```
This restriction is meant to keep the translator as simple as possible,
leaving it to transformations to analyze and reorder ops as needed in
more complicated cases.
The patch handles inlining into `emitc.return`, `emitc.if`,
`emitc.switch` and (to some extent) `emitc.assign`.
Commit: af4367a6db633f979a3f8c565335d279a9c1d976
https://github.com/llvm/llvm-project/commit/af4367a6db633f979a3f8c565335d279a9c1d976
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/test/Transforms/InstCombine/add-sitofp.ll
M llvm/test/Transforms/InstCombine/binop-itofp.ll
Log Message:
-----------
[InstCombine] Skip foldFBinOpOfIntCastsFromSign for vector ops (#162804)
Converting a vector float op into a vector int op may be non-profitable,
especially for targets where the float op for a given type is legal, but
the integer op is not.
We could of course also try to address this via a reverse transform in
the backend, but I don't think it's worth the bother, given that vectors
were never the intended use case for this transform in the first place.
Fixes https://github.com/llvm/llvm-project/issues/162749.
Commit: 9f552ee6d20040a4f007ac59c8fd8ad7acc58079
https://github.com/llvm/llvm-project/commit/9f552ee6d20040a4f007ac59c8fd8ad7acc58079
Author: AMS21 <AMS21.github at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm-c/Core.h
M llvm/lib/IR/Core.cpp
Log Message:
-----------
[LLVM-C] Allow `LLVMGetVolatile` to work with any kind of Instruction (#163060)
Allow LLVMGetVolatile() to work with any kind of Instruction, rather
than only memory instructions that accept a volatile flag. For
instructions that can never be volatile, the function now return false
instead of asserting. This matches the behavior of
`Instruction::isVolatile()` in the C++ API.
Commit: 9ace31123d86220544f6d668e83ee3ff6f9f20db
https://github.com/llvm/llvm-project/commit/9ace31123d86220544f6d668e83ee3ff6f9f20db
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/DebugCounter.h
M llvm/lib/Support/DebugCounter.cpp
M llvm/test/Other/debugcounter-dce.ll
Log Message:
-----------
[DebugCounter] Add -print-debug-counter-queries option (#162827)
Add a `-print-debug-counter-queries` option which prints the current
value of the counter and whether it is executed/skipped each time it is
queried. This is useful when interleaving the output with the usual
transform debug output, in order to find the correct counter value to
use to hit a specific point in the transform.
Commit: e90f8d84b0063b47455430fd8b57c1b1dafe7735
https://github.com/llvm/llvm-project/commit/e90f8d84b0063b47455430fd8b57c1b1dafe7735
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Linalg/decompose-pack.mlir
Log Message:
-----------
[mlir][linalg] Extend DecomposeOuterUnitDimsPackOpPattern (linalg.pack) (#162666)
Similarly to #152960, this PR fixes `getTiledOuterDims` for `linalg.pack` by
ensuring that the `outer_dims_perm` attributeis properly taken into account.
This enables the main change in this PR: relaxing the constraints in
* `DecomposeOuterUnitDimsPackOpPattern`.
Specifically, the pattern is extended to allow non-unit untiled outer
dimensions. For example:
```mlir
func.func @example(
%src: tensor<2x32x16x8xf32>,
%dest: tensor<2x1x16x8x32xf32>) -> tensor<2x1x16x8x32xf32> {
%pack = linalg.pack %src
inner_dims_pos = [1]
inner_tiles = [32] into %dest
: tensor<2x32x16x8xf32> -> tensor<2x1x16x8x32xf32>
return %pack : tensor<2x1x16x8x32xf32>
}
```
decomposes as:
```mlir
func.func @example(
%src: tensor<2x32x16x8xf32>,
%dest: tensor<2x1x16x8x32xf32>) -> tensor<2x1x16x8x32xf32> {
%0 = tensor.empty() : tensor<2x16x8x32xf32>
%transposed = linalg.transpose
ins(%src : tensor<2x32x16x8xf32>)
outs(%init : tensor<2x16x8x32xf32>)
permutation = [0, 2, 3, 1]
%inserted_slice = tensor.insert_slice %transposed
into %dest[0, 0, 0, 0, 0] [2, 1, 16, 8, 32] [1, 1, 1, 1, 1]
: tensor<2x16x8x32xf32> into tensor<2x1x16x8x32xf32>
return %inserted_slice : tensor<2x1x16x8x32xf32>
}
```
Importantly, this change makes `DecomposeOuterUnitDimsPackOpPattern` (the
decomposition pattern for `linalg.pack`) consistent with the corresponding
pattern for `linalg.unpack`:
* `DecomposeOuterUnitDimsUnPackOpPattern`.
One notable assumption remains: untiled outer dimensions are not permuted. This
was already the case but is now explicitly documented.
Co-authored by: Max Bartel <bartel at roofline.ai>
Commit: cdc8e8d092619b318d69c61a941246a31c8cd26f
https://github.com/llvm/llvm-project/commit/cdc8e8d092619b318d69c61a941246a31c8cd26f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
Log Message:
-----------
[libc++] Add more benchmarks for the associative container hint interfaces (#162840)
The current benchmarks test a very specific case, which makes them
rather misleading. This adds new benchmarks so we have better coverage.
Commit: ea251536d55f493d9eb4bb18fb027709c4d39509
https://github.com/llvm/llvm-project/commit/ea251536d55f493d9eb4bb18fb027709c4d39509
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/Format.h
M llvm/unittests/Support/CMakeLists.txt
A llvm/unittests/Support/Format.cpp
Log Message:
-----------
[LLVM][Support] Allow `char[N]` parameters in `llvm::format` (#159541)
Cygwin builds are currently broken after #157312, which effectively
reverted #138117. The root cause is that Cygwin defines
`DL_info::dli_fname` as `char[N]`, which is not a valid parameter type
for `llvm::format`.
This patch allows `llvm::format` to accept `char[N]` by decaying it to
`const char *`. As a result, string literals are also accepted without
an explicit cast.
Other array types remain rejected:
- Wide/unicode character arrays (e.g., `wchar_t[N]`) are not supported,
as LLVM does not use them and they are less compatible with platform's
`printf` implementations.
- Non-character arrays (e.g., `int[N]`) are also rejected, since passing
such arrays to `printf` is meaningless.
Commit: 4a3e0001e367a930cb7dec2dcd072cc512825aff
https://github.com/llvm/llvm-project/commit/4a3e0001e367a930cb7dec2dcd072cc512825aff
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/IR/Instructions.cpp
M llvm/test/Transforms/InstCombine/ptrtoaddr.ll
M llvm/unittests/IR/InstructionsTest.cpp
Log Message:
-----------
[IR] Handle trunc for ptrtoaddr(inttoptr) cast pair (#162842)
For ptrtoint(inttoptr) and ptrtoaddr(inttoptr), handle the case where
the source and destination size do not match and convert to either zext
or trunc. We can't do this if the middle size is smaller than both
src/dest, because we'd have to perform an additional masking operation
in that case.
Most of these cases are handled by dint of ptrtoint/inttoptr size
canonicalization (so I added some unit tests instead). However, the
ptrtoaddr(inttoptr) case where the pointer size and address size differ
is relevant, as in that case the mismatch in integer sizes is canonical.
Commit: 2ba960c40437593e9069b23d73a3867087284c11
https://github.com/llvm/llvm-project/commit/2ba960c40437593e9069b23d73a3867087284c11
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Rename InitializeRequest variables after 7381558ef8b. NFCI.
7381558ef8b renamed the FinalizeRequest type to InitializeRequest. This commit
updates InitializeRequest variable names to follow suit ("FR"s become "IR"s).
Commit: a4eb7ea22575afa40d79475c15fc2d0ad3f4498a
https://github.com/llvm/llvm-project/commit/a4eb7ea22575afa40d79475c15fc2d0ad3f4498a
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fnma.ll
M llvm/test/MC/WebAssembly/simd-encodings.s
Log Message:
-----------
[WebAssembly] Lower fmuladd to madd and nmadd (#161355)
Lower v4f32 and v2f64 fmuladd calls to relaxed_madd instructions.
If we have FP16, then lower v8f16 fmuladds to FMA.
I've introduced an ISD node for fmuladd to maintain the rounding
ambiguity through legalization / combine / isel.
Commit: 648b3aab478840cd72913d23cbbb425dc890f86a
https://github.com/llvm/llvm-project/commit/648b3aab478840cd72913d23cbbb425dc890f86a
Author: nerix <nerixdev at outlook.de>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
A lldb/test/Shell/SymbolFile/NativePDB/simple-types.cpp
Log Message:
-----------
[LLDB][NativePDB] Use typedef compiler type for typedef types (#156250)
Before this PR, the native PDB plugin would create the following LLDB
`Type` for `using SomeTypedef = long`:
```
Type{0x00002e03} , name = "SomeTypedef", size = 4, compiler_type = 0x000002becd8d8620 long
```
with this PR, the following is created:
```
Type{0x00002e03} , name = "SomeTypedef", size = 4, compiler_type = 0x0000024d6a7e3c90 typedef SomeTypedef
```
This matches the behavior of the DIA PDB plugin and works towards making
[`Shell/SymbolFile/PDB/typedefs.test`](https://github.com/llvm/llvm-project/blob/main/lldb/test/Shell/SymbolFile/PDB/typedefs.test)
pass with the native plugin.
I added a similar test to the `NativePDB` shell tests to capture the
current state, which doesn't quite match that of DIA yet. I'll add some
comments on what's missing on this PR, because I'm not fully sure what
the correct output would be.
Commit: e3f22d9ee4d743a43db8f4de5ba1d57d3dee67b1
https://github.com/llvm/llvm-project/commit/e3f22d9ee4d743a43db8f4de5ba1d57d3dee67b1
Author: Shawn K <kimshawn02 at icloud.com>
Date: 2025-10-13 (Mon, 13 Oct 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/lib/Headers/avxintrin.h
M clang/lib/Headers/smmintrin.h
M clang/lib/Headers/xmmintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/sse41-builtins.c
Log Message:
-----------
[X86][Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - add SSE/AVX VPTEST/VTESTPD/VTESTPS intrinsics to be used in constexpr (#160428)
Fix #158653
Add handling for:
```
ptestz128 / ptestz256 → (a & b) == 0.
ptestc128 / ptestc256 → (~a & b) == 0
ptestnzc128 / ptestnzc256 → (a & b) != 0 AND (~a & b) != 0.
vtestzps / vtestzps256 → (S(a) & S(b)) == 0.
vtestcps / vtestcps256 → (~S(a) & S(b)) == 0.
vtestnzcps / vtestnzcps256 → (S(a) & S(b)) != 0 AND (~S(a) & S(b)) != 0.
vtestzpd / vtestzpd256 → (S(a) & S(b)) == 0.
vtestcpd / vtestcpd256 → (~S(a) & S(b)) == 0.
vtestnzcpd / vtestnzcpd256 → (S(a) & S(b)) != 0 AND (~S(a) & S(b)) != 0.
```
Add corresponding test cases for:
```
int _mm_test_all_ones (__m128i a)
int _mm_test_all_zeros (__m128i mask, __m128i a)
int _mm_test_mix_ones_zeros (__m128i mask, __m128i a)
int _mm_testc_pd (__m128d a, __m128d b)
int _mm256_testc_pd (__m256d a, __m256d b)
int _mm_testc_ps (__m128 a, __m128 b)
int _mm256_testc_ps (__m256 a, __m256 b)
int _mm_testc_si128 (__m128i a, __m128i b)
int _mm256_testc_si256 (__m256i a, __m256i b)
int _mm_testnzc_pd (__m128d a, __m128d b)
int _mm256_testnzc_pd (__m256d a, __m256d b)
int _mm_testnzc_ps (__m128 a, __m128 b)
int _mm256_testnzc_ps (__m256 a, __m256 b)
int _mm_testnzc_si128 (__m128i a, __m128i b)
int _mm256_testnzc_si256 (__m256i a, __m256i b)
int _mm_testz_pd (__m128d a, __m128d b)
int _mm256_testz_pd (__m256d a, __m256d b)
int _mm_testz_ps (__m128 a, __m128 b)
int _mm256_testz_ps (__m256 a, __m256 b)
int _mm_testz_si128 (__m128i a, __m128i b)
int _mm256_testz_si256 (__m256i a, __m256i b)
```
Commit: dd0fc259c09967227edfe158f5d19aad942c6308
https://github.com/llvm/llvm-project/commit/dd0fc259c09967227edfe158f5d19aad942c6308
Author: ArielCPU <ariel.mataev at mobileye.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/Basic/Targets/Mips.cpp
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/test/Preprocessor/init-mips.c
Log Message:
-----------
[Mips] Fix mcpu flag with i6400/i6500 (#161330)
The compiler is missing cases where it checks mips64r6 but not
i6400/i6500 causing wrong defines to be generated
Commit: 4ec78f56c2e6ae08950c0b057c9b354916d2f54c
https://github.com/llvm/llvm-project/commit/4ec78f56c2e6ae08950c0b057c9b354916d2f54c
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
Log Message:
-----------
[LV] Increase coverage of uniformity-rewriter (#161219)
Add a test with a non-uniform load of an argument (SCEVUnknown), showing
that SCEVUnknown cannot always be considered uniform.
Commit: 946238e74866524466bb98bb75e54577c6fa3e85
https://github.com/llvm/llvm-project/commit/946238e74866524466bb98bb75e54577c6fa3e85
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanDominatorTree.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
Log Message:
-----------
[VPlan] Strip VPDT's default constructor (NFC) (#162692)
Commit: 9bb0eedb59b9a2c4a2e1d2e9f87d1ecf836f70da
https://github.com/llvm/llvm-project/commit/9bb0eedb59b9a2c4a2e1d2e9f87d1ecf836f70da
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Assign custom opcodes to recipes not mapping to IR opcodes. (#162267)
We can perform CSE on recipes that do not directly map to Instruction
opcodes. One example is VPVectorPointerRecipe. Currently this is handled
by supporting them in ::canHandle, but currently that means that we
return std::nullopt from getOpcodeOrIntrinsicID() for it. This currently
only works, because the only case we return std::nullopt and perform CSE
is VPVectorPointerRecipe. But that does not work if we support more such
recipes, like VPPredInstPHIRecipe
(https://github.com/llvm/llvm-project/pull/162110).
To fix this, return a custom opcode from getOpcodeOrIntrinsicID for
recipes like VPVectorPointerRecipe, using the VPDefID after all regular
instruction opcodes.
PR: https://github.com/llvm/llvm-project/pull/162267
Commit: 735ee5cc1f0d3566b548432d24a6b539a6a02af9
https://github.com/llvm/llvm-project/commit/735ee5cc1f0d3566b548432d24a6b539a6a02af9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
Log Message:
-----------
[SCEV] Add test with ptrtoint guards and their order swapped.
Additional test coverage for https://github.com/llvm/llvm-project/pull/160500.
Commit: 34c7cf07507841a8e6480dcaad88c6a4dfa40e4b
https://github.com/llvm/llvm-project/commit/34c7cf07507841a8e6480dcaad88c6a4dfa40e4b
Author: Amina Chabane <amina.chabane at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGAtomic.cpp
A clang/test/CodeGen/AArch64/atomic-ops-float-check-minmax.c
A clang/test/Sema/atomic-ops-fp-minmax.c
Log Message:
-----------
[Clang] Add support for fp when using min_fetch/max_fetch atomics (#160330)
Previously when using min_fetch/max_fetch atomics with floating point
types, LLVM would emit a crash. This patch updates the
EmitPostAtomicMinMax function in CGAtomic.cpp to take floating point
types. Included is a clang CodeGen test atomic-ops-float-check-minmax.c
and Sema test atomic-ops-fp-minmax.c.
Commit: 032df4b6f716b71d3e12f98cb3d44d4ab24ce8f4
https://github.com/llvm/llvm-project/commit/032df4b6f716b71d3e12f98cb3d44d4ab24ce8f4
Author: Tuomas Kärnä <tuomas.karna at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/python/mlir/dialects/transform/structured.py
M mlir/test/Dialect/Linalg/transform-op-fuse.mlir
M mlir/test/Dialect/Tensor/tiling.mlir
M mlir/test/Interfaces/TilingInterface/tile-and-fuse-using-interface.mlir
M mlir/test/python/dialects/transform_structured_ext.py
Log Message:
-----------
[MLIR][Transform] FuseOp: accept transform params, add use_forall argument (#161883)
Changes to linalg `structured.fuse` transform op:
* Adds an optional `use_forall` boolean argument which generates a tiled
`scf.forall` loop instead of `scf.for` loops.
* `tile_sizes` can now be any parameter or handle.
* `tile_interchange` can now be any parameter or handle.
* IR formatting changes from `transform.structured.fuse %0 [4, 8] ...`
to `transform.structured.fuse %0 tile_sizes [4, 8] ...`
- boolean arguments are now `UnitAttrs` and should be set via the op
attr-dict: `{apply_cleanup, use_forall}`
Commit: c4bcbf02a5ae40be72d4221a4195ca69871fdde0
https://github.com/llvm/llvm-project/commit/c4bcbf02a5ae40be72d4221a4195ca69871fdde0
Author: Yatao Wang <ningxinr at live.cn>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-ashr.mir
M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-shl.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-sub.mir
M llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-bitcounts.mir
M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
Log Message:
-----------
[GlobalISel] Add G_SUB for computeNumSignBits (#158384)
This patch ports the ISD::SUB handling from SelectionDAG’s ComputeNumSignBits to GlobalISel.
Related to https://github.com/llvm/llvm-project/issues/150515.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 3f3ca76d0e88be713aec38a9949da1e92e8cfe66
https://github.com/llvm/llvm-project/commit/3f3ca76d0e88be713aec38a9949da1e92e8cfe66
Author: Renato Golin <rengolin at systemcall.eu>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/docs/Rationale/RationaleLinalgDialect.md
Log Message:
-----------
[MLIR][Linalg][Docs] Add forms to Linalg rationale docs (#156859)
As discussed in:
* https://discourse.llvm.org/t/rfc-linalg-forms/87994/
*
https://discourse.llvm.org/t/rfc-extend-linalg-elemwise-named-ops-semantics/83927
* https://discourse.llvm.org/t/rfc-op-explosion-in-linalg/82863/1
* https://discourse.llvm.org/t/rfc-mlir-linalg-operation-tree/83586
* #148424
Co-designed by Javed Absar
---------
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: 30d3441cf082c3672cd7b8495cb8cc1d6ca2c8e0
https://github.com/llvm/llvm-project/commit/30d3441cf082c3672cd7b8495cb8cc1d6ca2c8e0
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fnma.ll
M llvm/test/MC/WebAssembly/simd-encodings.s
Log Message:
-----------
Revert "[WebAssembly] Lower fmuladd to madd and nmadd" (#163171)
Reverts llvm/llvm-project#161355
Looks like I've broken some intrinsic code generation.
Commit: fe76f7276d40198b77c939bb9059d7cba0978b37
https://github.com/llvm/llvm-project/commit/fe76f7276d40198b77c939bb9059d7cba0978b37
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/AMDGPU/amdgcn-ieee.ll
Log Message:
-----------
[NFC][AMDGPU] Precommit test amdgcn-ieee.ll (#163118)
The purpose of this commit is to observe the effects of PR #154069.
Commit: 4c3ec9cda0158bed7e55aeb7e8e0c54e14f02824
https://github.com/llvm/llvm-project/commit/4c3ec9cda0158bed7e55aeb7e8e0c54e14f02824
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/ARM/carry.ll
Log Message:
-----------
[ARM] carry.ll - regenerate test checks (#163172)
Commit: 8a436b942a82f674cfbb7cda262e4da87a0c5265
https://github.com/llvm/llvm-project/commit/8a436b942a82f674cfbb7cda262e4da87a0c5265
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/Thumb2/carry.ll
Log Message:
-----------
[Thumb2] carry.ll - regenerate test checks (#163173)
Commit: 14a42e64cf2bd1e6dcc3bbc417d02cf773cb9752
https://github.com/llvm/llvm-project/commit/14a42e64cf2bd1e6dcc3bbc417d02cf773cb9752
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
Log Message:
-----------
[AMDGPU] Remove NoInfsFPMath uses (#163028)
Only `ninf` should be used.
Commit: 6dfd73a0bd3730a5138fb033f84bd2f14419b271
https://github.com/llvm/llvm-project/commit/6dfd73a0bd3730a5138fb033f84bd2f14419b271
Author: Twice <twice at apache.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/docs/Bindings/Python.md
Log Message:
-----------
[MLIR][Docs] Move back the "other functionality" section in bindings (#163129)
In the previous PR #163123 I made a mistake that unexpectedly moved the
"other functionality" section from the "[Providing Python bindings for a
dialect](https://mlir.llvm.org/docs/Bindings/Python/#providing-python-bindings-for-a-dialect)"
section to the newly-added section ([Extending MLIR in
Python](https://mlir.llvm.org/docs/Bindings/Python/#extending-mlir-in-python)).
This PR is to fix it.
Commit: dbab36ad47393097ecf11c8add8e37d814cffabc
https://github.com/llvm/llvm-project/commit/dbab36ad47393097ecf11c8add8e37d814cffabc
Author: Sohaib Iftikhar <sohaib1692 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bazel]: Add missing dependency for 24ac5066 (#163179)
[mlir][bazel]: Add missing dependency for 24ac5066
Commit: 625aa09fc3ce9e9f8715527b3c62533b10920b10
https://github.com/llvm/llvm-project/commit/625aa09fc3ce9e9f8715527b3c62533b10920b10
Author: Nathan Corbyn <me at nathancorbyn.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/lib/Transforms/Scalar/LowerMatrixIntrinsics.cpp
A llvm/test/Transforms/LowerMatrixIntrinsics/data-layout-multiply-fused.ll
A llvm/test/Transforms/LowerMatrixIntrinsics/data-layout.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/strided-load-double.ll
M llvm/test/Transforms/LowerMatrixIntrinsics/strided-store-double.ll
Log Message:
-----------
[Matrix] Use data layout index type for lowering matrix intrinsics (#162646)
To properly support the matrix intrinsics on, e.g., 32-bit platforms
(without the need to emit `libc` calls), `LowerMatrixIntrinsics` pass
should generate code that performs strided index calculations using the
same pointer bit-width as the matrix pointers, as determined by the data
layout. This patch updates the `LowerMatrixInstrics` transform to make
this the case.
PR: https://github.com/llvm/llvm-project/pull/162646
Commit: 0e3fdc222a04f723f85b1c78322bf20d71dcdafc
https://github.com/llvm/llvm-project/commit/0e3fdc222a04f723f85b1c78322bf20d71dcdafc
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Headers/float.h
M clang/test/C/C2y/n3364.c
Log Message:
-----------
[C23] Support the SNAN macros in <float.h> (#162858)
These macros were brought in as part of the TS 18661-1 integration in
C23, and then renamed in WG14 N2710.
Test coverage is being added to WG14 N3364 from C2y because that paper
was fixing a bug with the way these macros are handled with unary + and
- operators, so all the existing test coverage was there, just needed to
use a header file instead of defining the macros manually.
Fixes #162830
Commit: 739bfdeb91f409ef326cc407be01b935a58f2d3c
https://github.com/llvm/llvm-project/commit/739bfdeb91f409ef326cc407be01b935a58f2d3c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/crash_reordering_undefs.ll
M llvm/test/Transforms/SLPVectorizer/X86/gather-with-cmp-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/identity-match-splat-less-defined.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-reused-as-last-inst.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/reschedule-only-scheduled.ll
M llvm/test/Transforms/SLPVectorizer/minbitwidth-node-with-multi-users.ll
Log Message:
-----------
[SLP]Enable support for logical ops in copyables (#162945)
Allows to use And, Or and Xor instructions as base for copyables.
Commit: 1ab59745eeafd288d7139eb95d8f35ded2f0b583
https://github.com/llvm/llvm-project/commit/1ab59745eeafd288d7139eb95d8f35ded2f0b583
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/test/CodeGen/AArch64/adds_cmn.ll
M llvm/test/CodeGen/AArch64/sat-add.ll
Log Message:
-----------
[AArch64] Support commuted operands in performFlagSettingCombine (#162496)
Fixes #122624.
Assisted-by: gpt-5-codex
Commit: 8642762ac356f0b8432b78d7a32c1f5213e494b3
https://github.com/llvm/llvm-project/commit/8642762ac356f0b8432b78d7a32c1f5213e494b3
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/StringSwitch.h
M llvm/unittests/ADT/StringSwitchTest.cpp
Log Message:
-----------
[ADT] Allow arbitrary number of cases in StringSwitch (#163117)
Prior to this patch, `.Cases` and `.CasesLower` were **not** variadic
functions and accepted a fixed number of arguments: up to 10 for the
former and up to 5 for the latter.
This is close to unfixable with variadic templates because of the
following constraints:
* There would be a variadic number of cases and the single value would
be at the very end. For a parameter pack approach to work, we would want
the value to be the head and the cases strings to follow, but rotating a
parameter pack is quite awkward and requires heavy template
metaprogramming.
* Even if we did rotate the parameter pack, the existing function
signature forces conversion of cases to `StringLiteral` and the value to
`T`. This is hard to achieve with variadic templates because we can't
specify that all cases must be of type `StringLiteral`, and doing the
conversion later won't work because of the attribute enable_if in
`StringLiteral`'s constructor that doesn't work on non-literal character
arrays.
* Refactoring all the existing code to put the value first is very
intrusive and bugprone when the value parameter is also a string
literal.
Instead, generalize `.Cases` and `.CasesLower` and make the code
manageable by taking an initializer list. The added benefit is that this
clearly delineates where case strings end and where the value begins,
which can be hard to tell when the value parameter is also a string
literal.
I plan to eventually deprecate the manually-enumerated overloads of
`.Cases.` and `.CasesLower`.
Commit: b9877ec82f692b2e237bf4c834493d70d70817cd
https://github.com/llvm/llvm-project/commit/b9877ec82f692b2e237bf4c834493d70d70817cd
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/AMX/AMX.td
M mlir/lib/Dialect/AMX/IR/AMXDialect.cpp
M mlir/test/Dialect/AMX/legalize-for-llvm.mlir
M mlir/test/Dialect/AMX/roundtrip.mlir
M mlir/test/Target/LLVMIR/amx.mlir
Log Message:
-----------
[mlir][amx] Optional stride for tile load and store (#159569)
Adds an optional stride argument to `amx.tile_load` and `amx.tile_store`
operations.
The stride argument aligns ops closer to the hardware intrinsics.
However, stride remains optional to preserve current op behavior.
Explicit stride allows greater flexibility in terms of the base buffer
shapes and allows different read and write memory patterns.
When stride is not provided, it is inferred from the buffer shape as
before.
Operations documentation is expanded to make ops easier to use.
Commit: 8a27b48122b9e11d62739cdbf28522ea497f2e31
https://github.com/llvm/llvm-project/commit/8a27b48122b9e11d62739cdbf28522ea497f2e31
Author: Hristo Hristov <hghristov.rmm at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/docs/Status/Cxx2cPapers.csv
M libcxx/include/__atomic/atomic_ref.h
M libcxx/include/version
A libcxx/test/libcxx/diagnostics/atomic.nodiscard.verify.cpp
A libcxx/test/std/atomics/atomics.ref/address.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/atomic.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++][atomic] P2835R7: Expose `std::atomic_ref`'s object address (#162236)
Implements https://wg21.link/P2835R7
Closes #118377
# References
- https://wg21.link/atomics.ref.generic.general
- https://wg21.link/atomics.ref.int
- https://wg21.link/atomics.ref.float
- https://wg21.link/atomics.ref.pointer
---------
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: 32fffe5680d0fa3854787b95bbd2712085f611ad
https://github.com/llvm/llvm-project/commit/32fffe5680d0fa3854787b95bbd2712085f611ad
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Lex/PPDirectives.cpp
A clang/test/Preprocessor/embed_empty_file.c
Log Message:
-----------
[Clang] prevent assertion on empty filename in #embed directive (#163072)
Fixes #162951
---
This PR addresses the issue of Clang asserting when processing `#embed`
with an empty filename
```c
#embed <>
```
Commit: 0e025418abda731629160639e2994f02f5fac1ab
https://github.com/llvm/llvm-project/commit/0e025418abda731629160639e2994f02f5fac1ab
Author: Valery Pykhtin <valery.pykhtin at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Utils/SSAUpdaterBulk.h
M llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp
M llvm/unittests/Transforms/Utils/SSAUpdaterBulkTest.cpp
Log Message:
-----------
[SSAUpdaterBulk] Add PHI simplification pass. (#150936)
This optimization is performed as a separate pass over newly inserted PHI nodes to simplify and deduplicate them. By processing PHIs separately, we avoid the complexity of tracking reference bookkeeping needed to update BBValueInfo structures during insertion.
Commit: c6e4a6329525c714dbc603c2bb38de03450a68a0
https://github.com/llvm/llvm-project/commit/c6e4a6329525c714dbc603c2bb38de03450a68a0
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/examples/python/lldbtk.py
Log Message:
-----------
[lldb][examples] Remove Python 2 compatibility code in lldbtk.py
The Tkinter module was renamed to tkinter in Python 3.0.
https://docs.python.org/2/library/tkinter.html
https://docs.python.org/3/library/tkinter.html
Rest of it appears to work when imported inside of LLDB:
```
$ ./bin/lldb /tmp/test.o
(lldb) target create "/tmp/test.o"
Current executable set to '/tmp/test.o' (x86_64).
(lldb) b main
Breakpoint 1: where = test.o`main + 8 at test.c:1:18, address = 0x0000000000001131
(lldb) run
Process 121572 launched: '/tmp/test.o' (x86_64)
Process 121572 stopped
* thread #1, name = 'test.o', stop reason = breakpoint 1.1
frame #0: 0x0000555555555131 test.o`main at test.c:1:18
-> 1 int main() { int a = 1; char b = '?'; return 0; }
(lldb) command script import <...>/llvm-project/lldb/examples/python/lldbtk.py
(lldb) tk-
Available completions:
tk-process -- For more information run 'help tk-process'
tk-target -- For more information run 'help tk-target'
tk-variables -- For more information run 'help tk-variables'
(lldb) tk-process
(lldb) tk-target
(lldb) tk-variables
```
Commit: f2f9f7721155cd6c21884900e7e92d2bd0c44673
https://github.com/llvm/llvm-project/commit/f2f9f7721155cd6c21884900e7e92d2bd0c44673
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in CloneFunction.cpp (#162875)
- Use explicit types instead of auto when type is not obvious.
- Move local function out of anonymous namespace and make them static.
- Use structured bindings in some range for loops.
- Simplify PHI handling code a bit.
Commit: c0fb07c2da6ac6f92c9afdefe4c4c5cc45287eb3
https://github.com/llvm/llvm-project/commit/c0fb07c2da6ac6f92c9afdefe4c4c5cc45287eb3
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/tools/bugpoint/BugDriver.cpp
M llvm/tools/bugpoint/BugDriver.h
M llvm/tools/bugpoint/CrashDebugger.cpp
M llvm/tools/bugpoint/ExecutionDriver.cpp
M llvm/tools/bugpoint/ExtractFunction.cpp
M llvm/tools/bugpoint/Miscompilation.cpp
M llvm/tools/bugpoint/OptimizerDriver.cpp
M llvm/tools/bugpoint/ToolRunner.cpp
M llvm/tools/bugpoint/bugpoint.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in bugpoint (#162909)
- Move file local variables and functions out of anonymous namespace and
mark them static.
- Change a few function names to conform to LLVM coding standard
(camelCase).
- Add end of namespace comments for anonymous namespaces.
Commit: 44463630f1660a75d6fa2fbfa5fc71f515e96139
https://github.com/llvm/llvm-project/commit/44463630f1660a75d6fa2fbfa5fc71f515e96139
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/IR/Constants.cpp
M llvm/test/CodeGen/X86/relptr-rodata.ll
Log Message:
-----------
[Constants] Handle ptrtoaddr in getRelocationInfo()
Treat it the same way as ptrtoint.
Commit: 2c9659689097e15764d0aef7d995aa490819624c
https://github.com/llvm/llvm-project/commit/2c9659689097e15764d0aef7d995aa490819624c
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Interpreter/embedded_interpreter.py
Log Message:
-----------
[lldb] Remove Python 2 compatibility code in embedded_interpreter.py
LLDB requires Python >= 3.8.
https://docs.python.org/3/whatsnew/3.0.html#library-changes
explains the renaming in Python 3.0.
Commit: 14a1d3e0aeb7b8fe2cfdb2e8e029ddee8a334d14
https://github.com/llvm/llvm-project/commit/14a1d3e0aeb7b8fe2cfdb2e8e029ddee8a334d14
Author: Matej Košík <99839051+sedymrak at users.noreply.github.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/test/API/python_api/sbtype_basic_type/TestSBTypeBasicType.py
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
Log Message:
-----------
[lldb] Fix TypeSystemClang::GetBasicTypeEnumeration for 128-bit int types (#162278)
When we take the following C program:
```
int main() {
return 0;
}
```
and create a statically-linked executable from it:
```
clang -static -g -o main main.c
```
Then we can observe the following `lldb` behavior:
```
$ lldb
(lldb) target create main
Current executable set to '.../main' (x86_64).
(lldb) breakpoint set --name main
Breakpoint 1: where = main`main + 11 at main.c:2:3, address = 0x000000000022aa7b
(lldb) process launch
Process 3773637 launched: '/home/me/tmp/built-in/main' (x86_64)
Process 3773637 stopped
* thread #1, name = 'main', stop reason = breakpoint 1.1
frame #0: 0x000000000022aa7b main`main at main.c:2:3
1 int main() {
-> 2 return 0;
3 }
(lldb) script lldb.debugger.GetSelectedTarget().FindFirstType("__int128").size
0
(lldb) script lldb.debugger.GetSelectedTarget().FindFirstType("unsigned __int128").size
0
(lldb) quit
```
The value return by the `SBTarget::FindFirstType` method is wrong for
the `__int128` and `unsigned __int128` basic types.
The proposed changes make the `TypeSystemClang::GetBasicTypeEnumeration`
method consistent with `gcc` and `clang` C [language
extension](https://gcc.gnu.org/onlinedocs/gcc/_005f_005fint128.html)
related to 128-bit integer types as well as with the
`BuiltinType::getName` method in the LLVM codebase itself.
When the above change is applied, the behavior of the `lldb` changes in
the following (desired) way:
```
$ lldb
(lldb) target create main
Current executable set to '.../main' (x86_64).
(lldb) breakpoint set --name main
Breakpoint 1: where = main`main + 11 at main.c:2:3, address = 0x000000000022aa7b
(lldb) process launch
Process 3773637 launched: '/home/me/tmp/built-in/main' (x86_64)
Process 3773637 stopped
* thread #1, name = 'main', stop reason = breakpoint 1.1
frame #0: 0x000000000022aa7b main`main at main.c:2:3
1 int main() {
-> 2 return 0;
3 }
(lldb) script lldb.debugger.GetSelectedTarget().FindFirstType("__int128").size
16
(lldb) script lldb.debugger.GetSelectedTarget().FindFirstType("unsigned __int128").size
16
(lldb) quit
```
---------
Co-authored-by: Matej Košík <matej.kosik at codasip.com>
Commit: 0dd51f92fc2390f7fc7fb527b156de1bd8478afd
https://github.com/llvm/llvm-project/commit/0dd51f92fc2390f7fc7fb527b156de1bd8478afd
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/support/seven.py
M lldb/packages/Python/lldbsuite/test/lldbtest.py
M lldb/packages/Python/lldbsuite/test_event/build_exception.py
M lldb/test/API/tools/lldb-server/TestGdbRemoteFork.py
Log Message:
-----------
[lldb][test] Replace seven.join_for_shell with shlex.join (#163191)
shlex.join is available in Python 3.8, which is the LLVM Project's
minimum version.
https://docs.python.org/3/library/shlex.html#shlex.join
Commit: 885da07a9fb169f45ba19c2ff20c7b7fccaa27c5
https://github.com/llvm/llvm-project/commit/885da07a9fb169f45ba19c2ff20c7b7fccaa27c5
Author: Rajat Bajpai <rbajpai at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
M llvm/test/CodeGen/NVPTX/tcgen05-alloc.ll
M llvm/test/CodeGen/NVPTX/tcgen05-commit.ll
M llvm/test/CodeGen/NVPTX/tcgen05-cp.ll
M llvm/test/CodeGen/NVPTX/tcgen05-fence.ll
M llvm/test/CodeGen/NVPTX/tcgen05-ld.ll
M llvm/test/CodeGen/NVPTX/tcgen05-shift.ll
M llvm/test/CodeGen/NVPTX/tcgen05-st.ll
Log Message:
-----------
[NVPTX] Update architecture support checks for tcgen05 intrinsics (#161519)
This change updates architecture support checks for tcgen05 intrinsics
(except tcgen05.mma.*). The newer checks will support family-specific
architecture variants as well. After this change, the arch checks will
be accurate and match with PTX ISA.
Intrinsics affected:
- tcgen05.ld/st
- tcgen05.alloc/dealloc/relinquish
- tcgen05.cp
- tcgen05.fence/wait
- tcgen05.commit
- tcgen05.shift
Commit: 38a52828fa60f007f936f2ba752016553a7a550b
https://github.com/llvm/llvm-project/commit/38a52828fa60f007f936f2ba752016553a7a550b
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_tokens.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Return None instead of null cursors from Token.cursor (#163183)
Since https://github.com/llvm/llvm-project/pull/138103 , the `Cursor`
class throws an error when any of its methods is called on a null
cursor. Simultaneously, we adapted all methods to return `None` instead
of a null cursor, so users should not encounter these. We have
overlooked one way to end up with null cursors, namely the
`Token.cursor` property, which may return null cursors under some
circumstances.
Fixes #163180
Commit: 50ddc26f4c90274b11ad879e516469860ab655ca
https://github.com/llvm/llvm-project/commit/50ddc26f4c90274b11ad879e516469860ab655ca
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/test/Shell/helper/build.py
Log Message:
-----------
[lldb][test][Shell] Remove Python 2 compatibility in build.py (#163192)
_winreg was renamed to winreg in 3.0, and we require >= 3.8.
https://docs.python.org/3/whatsnew/3.0.html#library-changes
Commit: 7429a08e735b3537e630fb11e2c63f0261280818
https://github.com/llvm/llvm-project/commit/7429a08e735b3537e630fb11e2c63f0261280818
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/test/Verifier/llvm.used-invalid-init.ll
Log Message:
-----------
[NFC][Verifier] Fix typo initalizer->initializer (#163193)
Commit: a80a6b31a721c8d73445c458f1ea2312d9262750
https://github.com/llvm/llvm-project/commit/a80a6b31a721c8d73445c458f1ea2312d9262750
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/avg.ll
Log Message:
-----------
[X86] avg.ll - fix repeated operand typo in v64i8 avg pattern test (#163194)
Commit: 8823efe77dad40eaea63b539c4d3d1036587ceb0
https://github.com/llvm/llvm-project/commit/8823efe77dad40eaea63b539c4d3d1036587ceb0
Author: Valery Pykhtin <valery.pykhtin at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
M llvm/lib/Target/AMDGPU/GCNRegPressure.h
M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
Log Message:
-----------
[AMDGPU] Add register usage debug printing the point of maximum register pressure. (#161850)
Basically this allows to analyze "why so many VGPRs used?".
It prints all live registers at the point of maximum register pressure
and for each register its defs/uses are dumped.
Currently can be run before and after the scheduler but would be nice if
it can be ran inbetween any passes (not sure this is possible with
legacy pass-manager). Requires debug or built with asserts compiler.
Highly recommended to run with debug info to have debug locations for
instructions.
Example output:
```
*** Register pressure info (VGPRs) for _ZN7ck_tile6ken.... ***
Max pressure is 256 VGPRs at 41780e at BB.18 (LoopHdr BB.16, Depth 1): %9858:vreg_512_align2 = contract V_MFMA_F32_32X32X16_BF16_mac_vgprcd_e64 %10137:vreg_128_align2, %10141:vreg_128_align2, %9858:vreg_512_align2(tied-def 0), 0, 0, 0, implicit $mode, implicit $exec
Live registers with single definition (123 VGPRs):
%10126:VReg_128_Align2, LiveMask 00000000000000FF (4 VGPRs)
def 41600r at BB.18 (LoopHdr BB.16, Depth 1): undef %10126.sub0_sub1:vreg_128_align2 = DS_READ_B64_TR_B16 %478:vgpr_32, 15232, 0, implicit $exec :: (load (s64) from %ir.sunkaddr1314, !noalias !60, addrspace 3)
def 41608r at BB.18 (LoopHdr BB.16, Depth 1): %10126.sub2_sub3:vreg_128_align2 = DS_READ_B64_TR_B16 %478:vgpr_32, 16320, 0, implicit $exec :: (load (s64) from %ir.sunkaddr1315, !noalias !60, addrspace 3)
use 41848r at BB.18 (LoopHdr BB.16, Depth 1): %9856:vreg_512_align2 = contract V_MFMA_F32_32X32X16_BF16_mac_vgprcd_e64 %10126:vreg_128_align2, %10138:vreg_128_align2, %9856:vreg_512_align2(tied-def 0), 0, 0, 0, implicit $mode, implicit $exec
%10136:VReg_128_Align2, LiveMask 00000000000000FF (4 VGPRs)
def 41264r at BB.18 (LoopHdr BB.16, Depth 1): undef %10136.sub0_sub1:vreg_128_align2 = DS_READ_B64_TR_B16 %478:vgpr_32, 2176, 0, implicit $exec :: (load (s64) from %ir.sunkaddr1294, !noalias !60, addrspace 3)
def 41272r at BB.18 (LoopHdr BB.16, Depth 1): %10136.sub2_sub3:vreg_128_align2 = DS_READ_B64_TR_B16 %478:vgpr_32, 3264, 0, implicit $exec :: (load (s64) from %ir.sunkaddr1295, !noalias !60, addrspace 3)
use 41788r at BB.18 (LoopHdr BB.16, Depth 1): %9858:vreg_512_align2 = contract V_MFMA_F32_32X32X16_BF16_mac_vgprcd_e64 %10136:vreg_128_align2, %10140:vreg_128_align2, %9858:vreg_512_align2(tied-def 0), 0, 0, 0, implicit $mode, implicit $exec
%10129:VReg_128_Align2, LiveMask 00000000000000FF (4 VGPRs)
...
Live registers with multiple definitions (133 VGPRs):
%9856:VReg_512_Align2, LiveMask 00000000FFFFFFFF (16 VGPRs)
def 16544r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def undef %9856.sub0_sub1:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16592r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub2_sub3:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16608r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub4_sub5:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16656r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub6_sub7:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16672r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub8_sub9:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16720r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub10_sub11:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16736r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub12_sub13:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def 16784r at BB.8: INLINEASM &"v_pk_mul_f32 $0, $1, $2" [sideeffect] [isconvergent] [attdialect], $0:[regdef:VReg_64_Align2], def %9856.sub14_sub15:vreg_512_align2, $1:[reguse:VReg_64_Align2], %4069:vreg_64_align2, $2:[reguse:VReg_64_Align2], %10159:vreg_64_align2, !52
def use 41828r at BB.18 (LoopHdr BB.16, Depth 1): %9856:vreg_512_align2 = contract V_MFMA_F32_...
...
********** INTERVALS **********
...
********** MACHINEINSTRS **********
# Machine code for function _ZN7ck_tile6kentr...
```
Commit: 0dc44b31347c48e5ec966901bb729f60a10a4a42
https://github.com/llvm/llvm-project/commit/0dc44b31347c48e5ec966901bb729f60a10a4a42
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add support for flushDenormals (#163074)
This patch provides a helper function to handle non-IEEE denormal
flushing behaviours. For the dynamic mode, it returns a union of all
possible results.
Commit: 55ed34cb1528a1f5285e8432f05b19057dcecbb9
https://github.com/llvm/llvm-project/commit/55ed34cb1528a1f5285e8432f05b19057dcecbb9
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/setcc-wide-types.ll
Log Message:
-----------
[X86] setcc-wide-types.ll - add tests for anyof/allof bits tests for i128/i256/i512 memory as scalar integers (#163198)
Commit: b06e0a2f904fc7b76d995e14bd15475ec3d747d5
https://github.com/llvm/llvm-project/commit/b06e0a2f904fc7b76d995e14bd15475ec3d747d5
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/lib/IR/AsmPrinter.cpp
Log Message:
-----------
[NFC][MLIR][AsmPrinter] Use interleaveComma instead of interleave (#163197)
Commit: 3a24fc38eba81bd155299ceb907a52b06bd1e0ca
https://github.com/llvm/llvm-project/commit/3a24fc38eba81bd155299ceb907a52b06bd1e0ca
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/time-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/use-new-mlir-op-builder.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp
Log Message:
-----------
[clang-tidy][NFC] Migrate tests away from `--match-partial-fixes` (#162851)
Follow up to #162293.
Commit: 68f121e9ade61d681b610bd53bc0c8084759a618
https://github.com/llvm/llvm-project/commit/68f121e9ade61d681b610bd53bc0c8084759a618
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/TableGen/Record.cpp
M llvm/test/TableGen/listsplat.td
Log Message:
-----------
[TableGen] Diagnose negative !listsplat count (#163152)
Commit: c10e79e4f6465427c0f29368523e2bfc051f6c1d
https://github.com/llvm/llvm-project/commit/c10e79e4f6465427c0f29368523e2bfc051f6c1d
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/MIRNamerPass.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in MIRNamerPass.cpp (#162996)
Commit: 2a4f5b2751efbddd7bfe9818ab9ea57d03a13752
https://github.com/llvm/llvm-project/commit/2a4f5b2751efbddd7bfe9818ab9ea57d03a13752
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AIXException.cpp
M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
M llvm/lib/CodeGen/BasicBlockPathCloning.cpp
M llvm/lib/CodeGen/BreakFalseDeps.cpp
M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
M llvm/lib/CodeGen/EdgeBundles.cpp
M llvm/lib/CodeGen/GlobalMergeFunctions.cpp
M llvm/lib/CodeGen/LiveIntervals.cpp
M llvm/lib/CodeGen/MIR2Vec.cpp
M llvm/lib/CodeGen/MIRFSDiscriminator.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
M llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp
M llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp
M llvm/lib/CodeGen/MachineOutliner.cpp
M llvm/lib/CodeGen/MachinePipeliner.cpp
M llvm/lib/CodeGen/MachineScheduler.cpp
M llvm/lib/CodeGen/MachineTraceMetrics.cpp
M llvm/lib/CodeGen/NonRelocatableStringpool.cpp
M llvm/lib/CodeGen/SafeStack.cpp
M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
M llvm/lib/CodeGen/ScheduleDAGPrinter.cpp
M llvm/lib/CodeGen/StackFrameLayoutAnalysisPass.cpp
M llvm/lib/CodeGen/TargetRegisterInfo.cpp
Log Message:
-----------
[NFC][LLVM][CodeGen] Namespace related cleanups (#162999)
Commit: 9c10b4483a64ab3cb44ddc4233ebc7b7be43df23
https://github.com/llvm/llvm-project/commit/9c10b4483a64ab3cb44ddc4233ebc7b7be43df23
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Transforms/Coroutines/MaterializationUtils.h
M llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
M llvm/lib/Transforms/Coroutines/CoroCloner.h
M llvm/lib/Transforms/Coroutines/CoroEarly.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
M llvm/lib/Transforms/Coroutines/SpillUtils.cpp
Log Message:
-----------
[NFC][LLVM][Coroutines] Namespace related code cleanup (#163065)
Commit: db829cdb33fcae112face4906de7b2489b7d1bf1
https://github.com/llvm/llvm-project/commit/db829cdb33fcae112face4906de7b2489b7d1bf1
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/XRay/BlockIndexer.h
M llvm/include/llvm/XRay/BlockPrinter.h
M llvm/include/llvm/XRay/BlockVerifier.h
M llvm/include/llvm/XRay/FDRLogBuilder.h
M llvm/include/llvm/XRay/FDRRecordConsumer.h
M llvm/include/llvm/XRay/FDRRecordProducer.h
M llvm/include/llvm/XRay/FDRRecords.h
M llvm/include/llvm/XRay/FDRTraceExpander.h
M llvm/include/llvm/XRay/FDRTraceWriter.h
M llvm/include/llvm/XRay/FileHeaderReader.h
M llvm/include/llvm/XRay/Graph.h
M llvm/include/llvm/XRay/InstrumentationMap.h
M llvm/include/llvm/XRay/Profile.h
M llvm/include/llvm/XRay/RecordPrinter.h
M llvm/include/llvm/XRay/Trace.h
M llvm/include/llvm/XRay/XRayRecord.h
M llvm/include/llvm/XRay/YAMLXRayRecord.h
M llvm/lib/XRay/BlockIndexer.cpp
M llvm/lib/XRay/BlockPrinter.cpp
M llvm/lib/XRay/BlockVerifier.cpp
M llvm/lib/XRay/FDRRecordProducer.cpp
M llvm/lib/XRay/FDRRecords.cpp
M llvm/lib/XRay/FDRTraceExpander.cpp
M llvm/lib/XRay/FDRTraceWriter.cpp
M llvm/lib/XRay/FileHeaderReader.cpp
M llvm/lib/XRay/LogBuilderConsumer.cpp
M llvm/lib/XRay/Profile.cpp
M llvm/lib/XRay/RecordInitializer.cpp
M llvm/lib/XRay/RecordPrinter.cpp
M llvm/lib/XRay/Trace.cpp
Log Message:
-----------
[NFC][LLVM][XRay] Namespace related code cleanup (#163068)
Commit: 474ed533100a9287f764b321532083a22d332ae6
https://github.com/llvm/llvm-project/commit/474ed533100a9287f764b321532083a22d332ae6
Author: Daniel Chen <cdchen at ca.ibm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/lib/Lower/IO.cpp
M flang/test/Lower/namelist.f90
Log Message:
-----------
[flang] To use the fir::ClassType for namelist item if it is local polymorphic entity. (#162701)
This patch is to use the namelist item descriptor instead of creating a
temporary one when the item is a local polymorphic entity so it's
dynamic type is preserved.
Fixes #152527
Fixes #154130
Commit: f140491dcc906e18aa67a6c204774245c69fc606
https://github.com/llvm/llvm-project/commit/f140491dcc906e18aa67a6c204774245c69fc606
Author: Sohaib Iftikhar <sohaib1692 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/SSAUpdaterBulk.cpp
Log Message:
-----------
[LLVM][CppCompile] Fix unused variable warning after 0e025418 (#163203)
[LLVM][CppCompile] Fix unused variable warning after 0e025418
Fixes unused variable warning for libTransform with non debug builds.
Folds the unused variable into the assert.
Commit: 1d89844bd4152af93f5dbf475996d6bd66c74bd5
https://github.com/llvm/llvm-project/commit/1d89844bd4152af93f5dbf475996d6bd66c74bd5
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-ast.cpp
Log Message:
-----------
Reapply "[OpenACC] Sema changes for +*&|^ reduction combiner recipes … (#163205)
…(… (#162920)
This reverts commit 8d9aecce064776a9a890f3c898165f99e8eaa13e.
That was reverted because of an ASAN failure that I believe this fixes.
The std::uninitialized_copy of an array of a type that contained a
llvm::vector using operator= instead of the copy constructor, so it made
ASan think it was overwriting existing data? However, it also probably
would have tried to do some sort of deallocation if had the 'right'
amount of wrong data.
So this version switches over to using placement-new instead.
Commit: 50aac2cd9386e32355aedb2439af42e3b0709d24
https://github.com/llvm/llvm-project/commit/50aac2cd9386e32355aedb2439af42e3b0709d24
Author: Brandon Wu <songwu0813 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/TargetParser/RISCVTargetParser.h
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXSf.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
M llvm/lib/TargetParser/RISCVTargetParser.cpp
A llvm/test/CodeGen/RISCV/rvv/sifive-xsfmm-vset-insert.mir
Log Message:
-----------
[RISCV] Add XSfmm pseudo instruction and vset* insertion support (#143068)
This patch supports the naive vset* insertion. If the state(tm, tn, tk,
sew, widen) changes, it emits all of the vset* instructions that are
needed, partial compatibility is not supported yet.
This is follow up patch for:
https://github.com/llvm/llvm-project/pull/133031
Co-authored-by: Piyou Chen <piyou.chen at sifive.com>
Co-authored-by: Craig Topper <craig.topper at sifive.com>
Commit: 1db148cc946eb95fefd5399766e379fc030eef78
https://github.com/llvm/llvm-project/commit/1db148cc946eb95fefd5399766e379fc030eef78
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
Log Message:
-----------
[clang][Sema] Split SYCLKernel back into its own attribute (#162868)
Based on feedback from https://github.com/llvm/llvm-project/pull/161905,
partially revert https://github.com/llvm/llvm-project/pull/137882/ so
that `sycl_kernel` is a separate attribute and not just a spelling of
`device_kernel`.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: bb3b0203c0fb25a2aa0712b44c78562dd2021b83
https://github.com/llvm/llvm-project/commit/bb3b0203c0fb25a2aa0712b44c78562dd2021b83
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/docs/analyzer/developer-docs/Statistics.rst
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/lib/StaticAnalyzer/Core/EntryPointStats.cpp
M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
M clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
M clang/unittests/StaticAnalyzer/CMakeLists.txt
A clang/unittests/StaticAnalyzer/UnsignedStatDemo.cpp
Log Message:
-----------
[clang][analyzer] Print empty per-EP metrics as empty CSV cells, fix missing PathRunningTime metric (#162839)
To avoid information loss, introduce a difference between unset stats
and 0 for statistics that are supposed to be set once per entry point.
Now, if the statistic is not set for an entry point, the corresponding
CSV cell will be empty, and not 0.
Thanks to this differentiation, I noticed that `PathRunningTime` was
actually never set, and fixed that.
Additionally, this patch enables the timers if
`DumpEntryPointStatsToCSV` is set, because in most cases you dump these
stats to get a detailed view on analyzer performance.
Finally, I added a dedicated debug checker that demonstrates the use of
a statistic and tested the set and unset scenarios explicitly.
--
CPP-7097
---------
Co-authored-by: Donát Nagy <donat.nagy at ericsson.com>
Commit: 8cc862ce3bd51d1fe8ff84c35aee03457077ac54
https://github.com/llvm/llvm-project/commit/8cc862ce3bd51d1fe8ff84c35aee03457077ac54
Author: Frederik Harwath <frederik.harwath at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/ExpandFp.cpp
Log Message:
-----------
[AMDGPU] expand-fp: always report modifications (#163153)
The last change to the pass in PR #158588 lost the assignment to the
"Modified" variable for one of the pass optimizations.
Add it back. This fixes the test failure in
`CodeGen/AMDGPU/itofp.i128.bf.ll` (in a
`LLVM_ENABLE_EXPENSIVE_CHECKS=ON` build).
Commit: a263c34617a5aa735bfa4cd791edc252603cdf6d
https://github.com/llvm/llvm-project/commit/a263c34617a5aa735bfa4cd791edc252603cdf6d
Author: Dan Blackwell <dan_blackwell at apple.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
M compiler-rt/lib/tsan/rtl/tsan_flags.cpp
M compiler-rt/lib/tsan/rtl/tsan_flags.h
M compiler-rt/lib/tsan/rtl/tsan_flags.inc
M compiler-rt/lib/tsan/rtl/tsan_interceptors.h
M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.cpp
M compiler-rt/lib/tsan/rtl/tsan_rtl.h
Log Message:
-----------
[TSan] guard lock_during_write flag on Apple platforms changes to exclude Go (#163204)
There are currently build errors when checking the TSan Go runtime due
to the implementation of this flag (as pointed out
[here](https://github.com/llvm/llvm-project/pull/157928#issuecomment-3397443983)):
```
../rtl/tsan_rtl.cpp:46:11: error: no member named 'cur_thread_init' in namespace '__tsan'
46 | __tsan::cur_thread_init()->in_internal_write_call = value;
| ^~~~~~~~~~~~~~~
../../sanitizer_common/sanitizer_mac.cpp:109:38: error: redefinition of '__tsan_set_in_internal_write_call'
109 | SANITIZER_WEAK_ATTRIBUTE extern void __tsan_set_in_internal_write_call(
| ^
../rtl/tsan_rtl.cpp:45:13: note: previous definition is here
45 | extern void __tsan_set_in_internal_write_call(bool value) {
| ^
```
This patch guards all changes related to the flag behind `!SANITIZER_GO`
to avoid these errors occurring.
Commit: e09daa7431b63724ac212781e23cd54daa6cd2c5
https://github.com/llvm/llvm-project/commit/e09daa7431b63724ac212781e23cd54daa6cd2c5
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[profcheck]Exclude LowerMatrixIntrinsics test introduced in #162646 (#163211)
Commit: c386cc2dce0fcbe7c0910ff15a3dd19ae7f888a4
https://github.com/llvm/llvm-project/commit/c386cc2dce0fcbe7c0910ff15a3dd19ae7f888a4
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
Log Message:
-----------
[RISCV] Fix a warning
This patch fixes:
llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h:256:18: error:
unused variable 'TSFlags' [-Werror,-Wunused-variable]
Commit: 65811e4963e64586c06e9c52ebd96b5d0095fe13
https://github.com/llvm/llvm-project/commit/65811e4963e64586c06e9c52ebd96b5d0095fe13
Author: Joe Nash <joseph.nash at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/MIMGInstructions.td
Log Message:
-----------
[AMDGPU] Use RegisterOperand instead of RegisterClass in MIMGNSAHelper (#162911)
NFC
Commit: 095cad6add16df3f6273f5b24293e48a08e3230e
https://github.com/llvm/llvm-project/commit/095cad6add16df3f6273f5b24293e48a08e3230e
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/Bitfields.h
M llvm/unittests/ADT/BitFieldsTest.cpp
Log Message:
-----------
[ADT] Simplify Bitfields.h (NFC) (#163035)
BitPatterns and Compressor collectively provide three main features:
- check the value range
- truncate the value before going into the bitfield
- sign-extend the signed bitfield
This patch retains the range check as separate function checkValue
while inlining the rest into their respective callers, update() and
extract().
Commit: 1820102167a5ace14a5c1f79d11d5eb4cce93001
https://github.com/llvm/llvm-project/commit/1820102167a5ace14a5c1f79d11d5eb4cce93001
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M cross-project-tests/intrinsic-header-tests/wasm_simd128.c
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/CodeGen/TargetLoweringBase.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll
M llvm/test/CodeGen/WebAssembly/simd-relaxed-fnma.ll
M llvm/test/MC/WebAssembly/simd-encodings.s
Log Message:
-----------
Wasm fmuladd relaxed (#163177)
Reland #161355, after fixing up the cross-projects-tests for the wasm
simd intrinsics.
Original commit message:
Lower v4f32 and v2f64 fmuladd calls to relaxed_madd instructions.
If we have FP16, then lower v8f16 fmuladds to FMA.
I've introduced an ISD node for fmuladd to maintain the rounding
ambiguity through legalization / combine / isel.
Commit: ec2d6add367acbc03dba038b7d4e519b11bbadec
https://github.com/llvm/llvm-project/commit/ec2d6add367acbc03dba038b7d4e519b11bbadec
Author: Tsche <2440422+Tsche at users.noreply.github.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/docs/UsersManual.rst
M clang/include/clang/Driver/Options.td
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ExprConstant.cpp
Log Message:
-----------
[clang] introduce constexpr step limit opt-out (#160440)
To address @AaronBallman's feedback from
https://github.com/llvm/llvm-project/pull/143785 this patch implements
an explicit opt-out for `-fconstexpr-steps` by setting
`-fconstexpr-steps=0`.
This does not change any defaults, but gives users an easy way to opt
out of this limit altogether (and instead let the compiler reach the
system's resource limits).
Currently users set `constexpr-steps` to some arbitrary high number (and
I mean _arbitrary_ - see the tables in the previous PR). This isn't
actually opting out of the limit though - you're still bound by the
upper bound of the counter's type. If you have enough resources to
evaluate more than 18446744073709551615 steps that's bad news.
In any case, `=0` conveys the intent clearer. This is in line with how
we handle other flags, ie `-ftemplate-backtrace-limit` or
`-ferror-limit`.
Commit: 769976261249109d02516eb684584c1c8576a882
https://github.com/llvm/llvm-project/commit/769976261249109d02516eb684584c1c8576a882
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/IRBuilder.h
M llvm/lib/IR/IRBuilder.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[slp][profcheck] Mark `select`s as having unknown profile (#162960)
There are 2 cases:
- either the `select` condition is a vector of bools, case in which we don't currently have a way to represent the per-element branch probabilities anyway;
- or the select condition is a scalar, for example from a `llvm.vector.reduce`. We could potentially try and do more here - if the reduced vector contained conditions from other selects, for instance
In either case, IIUC, chances are the `select` doesn't get lowered to a branch, at least I'm not seeing any evidence of that in an internal complex application (CSFDO + ThinLTO). Seems sufficient to mark the selects are unknown (for profiled functions); since that metadata carries with it the pass name (`DEBUG_TYPE`) that marked it as such, we can revisit this if we detect later lowerings of these selects that would have required an actual profile.
Issue #147390
Commit: 55b0d143d654d9f6c0bc515eaf5a66980a151a4d
https://github.com/llvm/llvm-project/commit/55b0d143d654d9f6c0bc515eaf5a66980a151a4d
Author: Chad Smith <cssmith at fb.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
Log Message:
-----------
[lldb] fix Android host build failure: use of undeclared identifier 'HostInfo' (#163075)
This should fix
https://github.com/llvm/llvm-project/issues/163050#issuecomment-3394533840
Thank you for tagging me @trcrsired!
```
[105/1932] Building CXX object tools/lldb/source/Plugins/Platfor...d/CMakeFiles/lldbPluginPlatformAndroid.dir/PlatformAndroid.cpp.
FAILED: [code=1] tools/lldb/source/Plugins/Platform/Android/CMakeFiles/lldbPluginPlatformAndroid.dir/PlatformAndroid.cpp.o
/home/cqwrteur/toolchains/llvm/x86_64-linux-gnu/llvm/bin/clang++ --target=aarch64-linux-android30 --sysroot=/home/cqwrteur/toolchains/llvm/aarch64-linux-android30/aarch64-linux-android30 -DGTEST_HAS_RTTI=0 -DHAVE_ROUND -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/cqwrteur/toolchains_build/toolchainbuildscripts/llvm/.artifacts/llvm/aarch64-linux-android30/llvm/tools/lldb/source/Plugins/Platform/Android -I/home/cqwrteur/toolchains_build/llvm-project/lldb/source/Plugins/Platform/Android -I/home/cqwrteur/toolchains_build/llvm-project/lldb/include -I/home/cqwrteur/toolchains_build/toolchainbuildscripts/llvm/.artifacts/llvm/aarch64-linux-android30/llvm/tools/lldb/include -I/home/cqwrteur/toolchains_build/toolchainbuildscripts/llvm/.artifacts/llvm/aarch64-linux-android30/llvm/include -I/home/cqwrteur/toolchains_build/llvm-project/llvm/include -I/home/cqwrteur/toolchains_build/llvm-project/llvm/../clang/include -I/home/cqwrteur/toolchains_build/toolchainbuildscripts/llvm/.artifacts/llvm/aarch64-linux-android30/llvm/tools/lldb/../clang/include -I/home/cqwrteur/toolchains_build/llvm-project/lldb/source -I/home/cqwrteur/toolchains_build/toolchainbuildscripts/llvm/.artifacts/llvm/aarch64-linux-android30/llvm/tools/lldb/source -isystem /home/cqwrteur/toolchains/llvm/aarch64-linux-android30/aarch64-linux-android30/usr/include/libxml2 -fuse-ld=lld -fuse-lipo=llvm-lipo -flto=thin -Wno-unused-command-line-argument -rtlib=compiler-rt -stdlib=libc++ --unwindlib=libunwind -lc++abi -stdlib=libc++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -flto=thin -Wno-unknown-pragmas -Wno-strict-aliasing -Wno-vla-extension -O3 -DNDEBUG -std=c++17 -fPIC -fno-exceptions -funwind-tables -fno-rtti -MD -MT tools/lldb/source/Plugins/Platform/Android/CMakeFiles/lldbPluginPlatformAndroid.dir/PlatformAndroid.cpp.o -MF tools/lldb/source/Plugins/Platform/Android/CMakeFiles/lldbPluginPlatformAndroid.dir/PlatformAndroid.cpp.o.d -o tools/lldb/source/Plugins/Platform/Android/CMakeFiles/lldbPluginPlatformAndroid.dir/PlatformAndroid.cpp.o -c /home/cqwrteur/toolchains_build/llvm-project/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
/home/cqwrteur/toolchains_build/llvm-project/lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp:66:48: error: use of undeclared identifier 'HostInfo'
66 | default_platform_sp->SetSystemArchitecture(HostInfo::GetArchitecture());
| ^
1 error generated.
[118/1932] Linking CXX shared library lib/libLLVMAnalysis.so.22.0git
ninja: build stopped: subcommand failed.
llvm: Ninja build failed for aarch64-linux-android30
```
Commit: 7a11eb96d591e980f347c01b8a559da441164bf8
https://github.com/llvm/llvm-project/commit/7a11eb96d591e980f347c01b8a559da441164bf8
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/FindTarget.cpp
M clang/include/clang/AST/NestedNameSpecifierBase.h
M clang/include/clang/AST/TypeLoc.h
M clang/lib/AST/TypeLoc.cpp
Log Message:
-----------
[clang] NFC: NNS getLocalSourceRange user cleanup (#163206)
This adds a note to the documentation of getLocalSourceRange, and cleans
up one of the users of this function which was changed in
https://github.com/llvm/llvm-project/pull/147835
This also removes `TypeLoc::getNonPrefixBeginLoc`, which was recently
introduced in the above patch, as that became unused.
Commit: 09d9f508a44a30a323bd06fe14a5962b2cf95866
https://github.com/llvm/llvm-project/commit/09d9f508a44a30a323bd06fe14a5962b2cf95866
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
Log Message:
-----------
[OpenACC] Fix memory leak for recipe list in Reduction (#163219)
After misunderstanding what was going on in the ASAN patches, I finally
realize I just missed a call to a destructor! This patch ensures that
the Recipe is deleted properly with the AST.
Commit: a042cd0cfe1f00e82f7688e9a50f1b85e82eaff7
https://github.com/llvm/llvm-project/commit/a042cd0cfe1f00e82f7688e9a50f1b85e82eaff7
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/ConstantFPRange.h
M llvm/lib/IR/ConstantFPRange.cpp
M llvm/unittests/IR/ConstantFPRangeTest.cpp
Log Message:
-----------
[ConstantFPRange] Add support for mul/div (#163063)
This patch adds support for fmul/fdiv operations.
Commit: b176efed78f108329cfd064538eca7c4b5292a29
https://github.com/llvm/llvm-project/commit/b176efed78f108329cfd064538eca7c4b5292a29
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/utils/lui/lui.py
M lldb/utils/lui/sandbox.py
Log Message:
-----------
[lldb][utils] Remove Python 2 compatibility code in lui scripts
Queue was renamed to queue in Python 3:
https://docs.python.org/3/whatsnew/3.0.html#library-changes
We require Python >= 3.8.
Commit: 5a636c6e847b56556299d78fa040148eb54e6919
https://github.com/llvm/llvm-project/commit/5a636c6e847b56556299d78fa040148eb54e6919
Author: Ivan Butygin <ivan.butygin at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/ViewLikeInterface.h
M mlir/include/mlir/Interfaces/ViewLikeInterface.td
M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp
M mlir/test/Analysis/test-alias-analysis.mlir
Log Message:
-----------
[mlir][LocalAliasAnalysis] Check for `memref.distinct_objects` in `LocalAliasAnalysis` (#161533)
Continuation of https://github.com/llvm/llvm-project/pull/156913, I'm
planning to use it to infer LLVM alias scope attributes.
* Introduce `DistinctObjectsTrait` so analysis won't need to depend on
memref dialect directly.
* Check the trairin `LocalAliasAnalysis::aliasImpl`.
Commit: 267fa8dd1efce0b79ebcaa804d54542c99918df2
https://github.com/llvm/llvm-project/commit/267fa8dd1efce0b79ebcaa804d54542c99918df2
Author: Julian Lettner <jlettner at apple.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/test/API/macosx/mte/TestDarwinMTE.py
Log Message:
-----------
[lldb][Darwin] Refine naming of test
Update name of `TestDarwinMTE` test method to
`test_memory_read_show_tags` to correspond to LLDB
command invocation:
```
memory read <start-addr> <end-addr> --show-tags
```
Commit: ad69fefb975edf8cd1f2d2429ea177f485e5ab10
https://github.com/llvm/llvm-project/commit/ad69fefb975edf8cd1f2d2429ea177f485e5ab10
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
[NFC][InstCombine] Use the `Builder`'s `CreateSelectWithUnknownProfile` (#163116)
Commit: bc4e14b6daedcd4b0dd1f6c02909c88944f972d9
https://github.com/llvm/llvm-project/commit/bc4e14b6daedcd4b0dd1f6c02909c88944f972d9
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
Log Message:
-----------
[SCEV] Add m_scev_Trunc pattern matcher. (#163169)
This patch adds a new m_scev_Trunc pattern matcher for SCEVTruncateExpr
and uses it in a few places to slightly simplify the code.
PR: https://github.com/llvm/llvm-project/pull/163169
Commit: fc22b58c25963ece6b041cadbdc931c2338955e4
https://github.com/llvm/llvm-project/commit/fc22b58c25963ece6b041cadbdc931c2338955e4
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/test/Shell/Expr/TestExprLanguageNote.test
Log Message:
-----------
[lldb][test] TestExprLanguageNote.test: fix test on Windows
This still fails on Windows because the default language for the C++
frame is not the same as on Unix.
Also remove the LLD requirement, since we're not relying on DWARF here.
Commit: 14a7c8a741678766953fb5c14acec3fe301f48e1
https://github.com/llvm/llvm-project/commit/14a7c8a741678766953fb5c14acec3fe301f48e1
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Plugins/Process/wasm/RegisterContextWasm.cpp
M lldb/source/Plugins/Process/wasm/RegisterContextWasm.h
M lldb/source/Plugins/Process/wasm/UnwindWasm.cpp
Log Message:
-----------
[lldb] Use the correct Wasm register context (#162942)
When implementing the WebAssembly Process Plugin, I initially added
WasmGDBRemoteRegisterContext as a placeholder in the UnwindWasm TU.
After implementing RegisterContextWasm (#151056), I forgot to switch
over to the new implementation. This meant we were using the wrong
register context for all frames, except frame 0. The register context
deals with the virtual registers, so this only becomes an issue when
trying to evaluate a `DW_OP_WASM_location`, which is why this went
unnoticed.
This PR removes the WasmGDBRemoteRegisterContext placeholder and updates
UnwindWasm to use RegisterContextWasm instead for all frames.
In terms of testing, I considered updating TestWasm but that would
require adding even more state to the already complicated GDB stub. This
doesn't scale and my focus over the next weeks/months will be coming up
with a comprehensive testing strategy that involves running (a subset of
the) API tests under a Wasm runtime, which will cover this and much
more.
rdar://159297244
Commit: 15cde999d47c3edc7647faf5fd967f5d5d88416a
https://github.com/llvm/llvm-project/commit/15cde999d47c3edc7647faf5fd967f5d5d88416a
Author: nerix <nerixdev at outlook.de>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
M lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.h
M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
M lldb/source/Plugins/Language/CPlusPlus/MsvcStlAtomic.cpp
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic-simulators/invalid-atomic/Makefile
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic-simulators/invalid-atomic/TestDataFormatterInvalidAtomic.py
A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic-simulators/invalid-atomic/main.cpp
Log Message:
-----------
[LLDB] Check type before creating `std::atomic` synthetic children (#163176)
From
https://github.com/llvm/llvm-project/pull/163077#issuecomment-3396435083:
Currently, `std::atomic<T>` will always use the MSVC STL synthetic
children and summary. When inspecting types from other STLs, the output
would not show any children.
This PR adds a check that `std::atomic` contains `_Storage` to be
classified as coming from MSVC's STL.
Commit: 55d4e92c8821d5543469118a76fe38db866377b7
https://github.com/llvm/llvm-project/commit/55d4e92c8821d5543469118a76fe38db866377b7
Author: Jasmine Tang <jjasmine at igalia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
A llvm/test/CodeGen/WebAssembly/simd-dot-reductions.ll
Log Message:
-----------
[WebAssembly] Add extra pattern for dot (#151775)
Fixes https://github.com/llvm/llvm-project/issues/50154
Commit: a6fdbcbb2ccca07af2154509801fc6b6d27542a3
https://github.com/llvm/llvm-project/commit/a6fdbcbb2ccca07af2154509801fc6b6d27542a3
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/test/Transforms/PGOProfile/data-access-profile.ll
Log Message:
-----------
[StaticDataLayout][MemProf] Record whether the IR is compiled with data access profiles by module flag. (#162333)
The codegen pass in the pipeline can read the module flag to tell
whether the IR is compiled with data access profile, to support two use
cases when `memprof-annotate-static-data-prefix=true` is enabled
1. The binary is compiled with data access profiles.
- The module flag will have value 1, and codegen pass should regard an
empty section prefix as 'unknown' and conservatively not placing the
data into `.unlikely` data sections.
2. The binary is compiled without data access profiles (e.g., during
incremental rollout, etc)
- The module flag will have value 0, and codegen pass can override an
empty section prefix based on PGO counters.
https://github.com/llvm/llvm-project/pull/155337 shows the motivating
use case in function `StaticDataProfileInfo::getConstantSectionPrefix`
in `llvm/lib/Analysis/StaticDataProfileInfo.cpp`
This is the 1st patch as a split of
https://github.com/llvm/llvm-project/pull/155337
Commit: c67c5b47ad6cc1316f21c2cdd993d994755c976b
https://github.com/llvm/llvm-project/commit/c67c5b47ad6cc1316f21c2cdd993d994755c976b
Author: Brandon Wu <songwu0813 at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[llvm][RISCV] Correct the order of statement in insertVSETMTK (#163215)
We need to set register to noreg before shrinking interval
Commit: 92e6fa84eab45c318e7569488486eff19e056078
https://github.com/llvm/llvm-project/commit/92e6fa84eab45c318e7569488486eff19e056078
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/Sema/SemaOpenACC.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-ast.cpp
Log Message:
-----------
Revert OpenACC Reduction recipe Sema changes. (#163225)
This reverts commit 09d9f508a44a30a323bd06fe14a5962b2cf95866. This
reverts commit 1d89844bd4152af93f5dbf475996d6bd66c74bd5.
Even after my fix, it seems that this still fails ASAN/the sanitizer
build. I'm going to revert everything and see if I can get this to repro
locally.
Commit: d81e8c02d478ddad13b724b86e6302160f11295a
https://github.com/llvm/llvm-project/commit/d81e8c02d478ddad13b724b86e6302160f11295a
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/Address.h
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
A clang/test/CIR/CodeGen/virtual-destructor-calls.cpp
Log Message:
-----------
[CIR] Add support for virtual destructor calls (#162725)
This adds support for calling virtual destructors.
Commit: 8d29a3bb6f3d92d65bf5811b53bf42bf63685359
https://github.com/llvm/llvm-project/commit/8d29a3bb6f3d92d65bf5811b53bf42bf63685359
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
Log Message:
-----------
[lldb][API test] TestCortexMExceptionUnwind needs ARM llvm target
Finally figured out the issue with TestCortexMExceptionUnwind.py
failing on some CI. When the llvm is configured without the ARM
target enabled, the ARM ABI plugins will not be initialized in lldb,
and the unwind engine won't backtrace more than one stack frame.
This test requires that the ARM target be enabled in the llvm cmake.
Update the decorator to specify that; should be the end of these
mysterious fails.
Commit: 34c0a5f1b44172de0a9464356b12bd7f6c25023c
https://github.com/llvm/llvm-project/commit/34c0a5f1b44172de0a9464356b12bd7f6c25023c
Author: Bruno Cardoso Lopes <bruno.cardoso at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
A mlir/include/mlir/Dialect/LLVMIR/LLVMDialectBytecode.td
M mlir/lib/Dialect/LLVMIR/CMakeLists.txt
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
A mlir/lib/Dialect/LLVMIR/IR/LLVMDialectBytecode.cpp
A mlir/lib/Dialect/LLVMIR/IR/LLVMDialectBytecode.h
A mlir/test/Dialect/LLVMIR/bytecode.mlir
M mlir/test/Dialect/LLVMIR/debuginfo.mlir
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
Log Message:
-----------
[MLIR][LLVM] Add bytecode support for several attributes (#162577)
For a total of 20 attributes, 18 debug information related + 2 regular
ones (loop and alias_scope).
Quick background on how this work: if a given attribute isn't supported,
by default its textual form is dumped into the bytecode. In order to get
proper encoding, an attribute needs a tablegen description of it and its
element. There's an additional rule here: if an attribute is only used
by another attribute, it's user need also to have an encoding in order
for it to be encoded. (e.g. `DICompileUnitAttr` only gets encoded while
in `DISubprogramAttr` if the later also has an encoded form), otherwise
text is used. For this reason, this PR does a bunch at the same time,
otherwise there isn't really much to test (easy to break it down if
needed though).
The PR is tested against some of our internal apps, successfully
round-tripping around 14Gb of llvm dialect text. Some interesting
findings include a 800K mlir textual file that used to become 1.2G in
bytecode format - now down to 100K due to proper encoding of debug info
attributes.
In the future we should find a way to merge this together in the
attribute definitions (perhaps autogenerate the entries from LLVM
attribute descriptions), seems like we can benefit from the boilerplate.
It's not clear yet how to solve some of the tablegen issues; some fields
require manual translation of flag values using `LocalVar`, others
require custom getters, etc. Ideas on that front are welcome.
A next natural step here is to add type support, LLVM structs can also
lead to non-neglible disk footprint.
Commit: d74290319e3db3425bf2f0f87ef6c32f1078371f
https://github.com/llvm/llvm-project/commit/d74290319e3db3425bf2f0f87ef6c32f1078371f
Author: pveras <verasbs at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Target/RegisterContextUnwind.cpp
Log Message:
-----------
Delegate to ABI plugin to check if call frame addresses are valid (#161398)
Specially when dealing with different address spaces, CFAs could start
from addresses like 0. For instance, Nvidia GPUs have instructions to
read from local memory that use 0-based offsets and stack memory can be
referenced by these offsets rather than global addresses. Note that ABIs
could already specify what they consider to be valid CFA values but this
was never used in these parts of the unwinder code. For most ABIs, this
makes the validation more strict, as they already used to discard 0s and
then checked for alignment which would discard 1s. There a few
exceptions where 0s were possible and this makes it less strict, like
the RISCV and ARC ABIs.
@jasonmolenda Would you be the appropriate reviewer for this?
Also cc. @clayborg @walter-erquinigo
Commit: 7905ec387e7a4470255b7856c71b2ec654ac397a
https://github.com/llvm/llvm-project/commit/7905ec387e7a4470255b7856c71b2ec654ac397a
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M libc/src/string/memory_utils/op_aarch64.h
Log Message:
-----------
[libc] Use UMAXV.4S to reduce bcmp result.
We can use UMAXV.4S to reduce the comparison result in a single
instruction. This improves performance by roughly 4% on Apple M1:
Summary
bin/libc.src.string.bcmp_benchmark3 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10 ran
1.01 ± 0.02 times faster than bin/libc.src.string.bcmp_benchmark3 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.01 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark3 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.01 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark3 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.01 ± 0.02 times faster than bin/libc.src.string.bcmp_benchmark2 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.02 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark2 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.03 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark2 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.03 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark2 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.05 ± 0.02 times faster than bin/libc.src.string.bcmp_benchmark1 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.05 ± 0.02 times faster than bin/libc.src.string.bcmp_benchmark1 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.05 ± 0.03 times faster than bin/libc.src.string.bcmp_benchmark1 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
1.05 ± 0.02 times faster than bin/libc.src.string.bcmp_benchmark1 --study-name="new bcmp" --sweep-mode --sweep-max-size=128 --output=/dev/null --num-trials=10
(1 = original, 2 = a variant of this patch that uses UMAXV.16B, 3 = this patch)
Reviewers: michaelrj-google, gchatelet, overmighty, SchrodingerZhu
Pull Request: https://github.com/llvm/llvm-project/pull/99260
Commit: 068e1796bac5229210f57862862e8995d4b6f009
https://github.com/llvm/llvm-project/commit/068e1796bac5229210f57862862e8995d4b6f009
Author: Wanyi <wanyi at meta.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/bindings/python/python-typemaps.swig
M lldb/test/API/python_api/default-constructor/sb_filespec.py
Log Message:
-----------
[lldb][swig] Support SBFileSpec::GetPath (#162964)
# Summary
`SBFileSpec::GetPath(char *dst_path, size_t dst_len)` contains `char*`
type argument. Need to handle this for python. Fortunately there're
already similar definitions we can reuse.
# Test Plan
Start the freshly built lldb and run the following code
```
$ lldb
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> debugger = lldb.SBDebugger.Create()
>>> debugger.SetAsync (False)
>>> target = debugger.CreateTarget("~/tmp/hello")
>>> target.IsValid()
True
>>> breakpoint = target.BreakpointCreateByName('main', 'hello')
>>> breakpoint.GetNumLocations()
1
>>> process = target.LaunchSimple (None, None, os.getcwd())
>>> process.IsValid()
True
>>> thread = process.GetThreadAtIndex(0)
>>> frame = thread.GetFrameAtIndex(0)
>>> line = frame.GetLineEntry()
# Important line below
>>> file = line.GetFileSpec().GetPath(1024)
# Important line above
>>> print(file)
/home/wanyi/tmp/main.cpp
```
## Before this change
```
$ lldb
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> debugger = lldb.SBDebugger.Create()
>>> debugger.SetAsync (False)
>>> target = debugger.CreateTarget("~/tmp/hello")
>>> target.IsValid()
True
>>> breakpoint = target.BreakpointCreateByName('main', 'hello')
>>> breakpoint.GetNumLocations()
1
>>> process = target.LaunchSimple (None, None, os.getcwd())
>>> process.IsValid()
True
>>> thread = process.GetThreadAtIndex(0)
>>> frame = thread.GetFrameAtIndex(0)
>>> line = frame.GetLineEntry()
>>> file = line.GetFileSpec().GetPath(1024)
Traceback (most recent call last):
File "<console>", line 1, in <module>
TypeError: SBFileSpec.GetPath() missing 1 required positional argument: 'dst_len'
>>> print(file)
Traceback (most recent call last):
File "<console>", line 1, in <module>
NameError: name 'file' is not defined
```
Commit: e313bc834ea8c511e1665c738a33cb2eee4f94d8
https://github.com/llvm/llvm-project/commit/e313bc834ea8c511e1665c738a33cb2eee4f94d8
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
M llvm/lib/Analysis/StaticDataProfileInfo.cpp
M llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/lib/CodeGen/StaticDataSplitter.cpp
M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
M llvm/test/CodeGen/X86/global-variable-partition.ll
M llvm/test/Transforms/PGOProfile/data-access-profile.ll
Log Message:
-----------
[StaticDataLayout] Factor out a helper function for section prefix eligibility and use it in both optimizer and codegen (#162348)
This change introduces new helper functions to check if a global
variable is eligible for section prefix annotation.
This shared logic is used by both MemProfUse and StaticDataSplitter to
avoid annotating ineligible variables.
This is the 2nd patch as a split of
https://github.com/llvm/llvm-project/pull/155337
Commit: b86503efe51aae792da0a27acc01af66ceff0418
https://github.com/llvm/llvm-project/commit/b86503efe51aae792da0a27acc01af66ceff0418
Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
A llvm/test/CodeGen/AMDGPU/sched.group.classification.mir
Log Message:
-----------
[AMDGPU] Do not put memory instructions in *ALU SchedGroups (#162560)
Classifying some memory instructions as VALU leads to unexpected
behavior from the sched*barrier intrinsics.
Commit: 48c9a8a9c859701d3bd401dc1e8c5002c9bd9c86
https://github.com/llvm/llvm-project/commit/48c9a8a9c859701d3bd401dc1e8c5002c9bd9c86
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUBlocking.cpp
M mlir/test/Dialect/XeGPU/xegpu-blocking.mlir
Log Message:
-----------
[MLIR][XeGPU] Enable blocking for scatter ops with offsets (#162896)
The unroll patterns for these ops were added in the previous PR but the
getTileShape method was not changed to handle these ops and hence
blocking pass was not kicking in.
Commit: 32adfb561277a8680ac694223deea19d6e4565fa
https://github.com/llvm/llvm-project/commit/32adfb561277a8680ac694223deea19d6e4565fa
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/module/cudadevice.f90
M flang/test/Lower/CUDA/cuda-device-proc.cuf
Log Message:
-----------
[flang][cuda] Add interface and lowering for tma_bulk_s2g (#163232)
https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/index.html#load-and-store-functions-using-cache-hints
Commit: 9bf88d09b340380c314ca0ccbb1b283fafb96449
https://github.com/llvm/llvm-project/commit/9bf88d09b340380c314ca0ccbb1b283fafb96449
Author: Sarah Spall <sarahspall at microsoft.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/Sema/SemaHLSL.cpp
Log Message:
-----------
[NFC][HLSL] Remove unused function 'ContainsBitField' (#163230)
Remove unused function, 'ContainsBitField', which was meant to be
removed when bitfield support was added to HLSLAggregateSplatCast and
HLSLElementwiseCast.
Commit: 13e563e5c60d9d71f8807477b6ecf555037a35bc
https://github.com/llvm/llvm-project/commit/13e563e5c60d9d71f8807477b6ecf555037a35bc
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/StaticDataAnnotator.cpp
M llvm/test/CodeGen/X86/global-variable-partition-with-dap.ll
Log Message:
-----------
[NFCI][StaticDataLayout] Get rid of section prefix validation in codegen (#162349)
The section prefix validation was initially added when global variable's
section prefix is only added in the codegen pass.
Now the optimizer pass MemProfUse can annotate data section prefix by
making use of data access profiles, so we can remove the validation.
Also calls `setSectionPrefix` which returns whether section prefix is
updated.
This is the 3rd patch as a split of
https://github.com/llvm/llvm-project/pull/155337
Commit: 01a87f2e057f89bc16f76499d5d600d9573a4cd3
https://github.com/llvm/llvm-project/commit/01a87f2e057f89bc16f76499d5d600d9573a4cd3
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-data-transfer.fir
Log Message:
-----------
[flang][cuda] Make sure dstEleTy is set when used in CUFOpConversion (#163240)
When the src is an i1, we use the dst element type. In some case, the
dst element type was null. Make sure we pass one to `emboxSrc` and add
an assertion when we use it to catch it in case it is null.
Commit: e56b5921899d303b481150c1beecb6368c252a63
https://github.com/llvm/llvm-project/commit/e56b5921899d303b481150c1beecb6368c252a63
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
R clang/test/OpenMP/amdgcn_parallel_num_threads_strict_messages.cpp
M clang/test/OpenMP/target_indirect_codegen.cpp
A clang/test/OpenMP/target_parallel_num_threads_strict_messages.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
Log Message:
-----------
[clang][OMPIRBuilder] Fix two missed function pointer type issues (#162914)
Two small issues, when storing function pointers we need to use the
program address space.
With this change there are no asserts if I run all OpenMP tests with the
offload target manually changed to SPIR-V, so we are getting somewhere.
About 10 test fails though.
Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>
Commit: e10e2f7288c88ef31ef9ca2a1eb0eaba610080e0
https://github.com/llvm/llvm-project/commit/e10e2f7288c88ef31ef9ca2a1eb0eaba610080e0
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
Log Message:
-----------
[RISCV] Remove 'Use' from name of two members of DemandedFields. NFC (#163234)
Every member represents a vtype field that is used/demanded, but the
others don't say 'Use'. Make them consistent.
Commit: 7f04ee19d21d28f7a533fff98c69c16863e6984a
https://github.com/llvm/llvm-project/commit/7f04ee19d21d28f7a533fff98c69c16863e6984a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
Log Message:
-----------
[SCEV] Move URem matching to ScalarEvolutionPatternMatch.h (#163170)
Move URem matching to ScalarEvolutionPatternMatch.h so it can
be re-used together with other matchers.
Depends on https://github.com/llvm/llvm-project/pull/163169
PR: https://github.com/llvm/llvm-project/pull/163170
Commit: e95cedd31be6cc4d9e46ad2e38a77473808e373f
https://github.com/llvm/llvm-project/commit/e95cedd31be6cc4d9e46ad2e38a77473808e373f
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Sema/SemaOpenACC.h
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/Sema/SemaOpenACC.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/SemaOpenACC/combined-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/compute-construct-clause-ast.cpp
M clang/test/SemaOpenACC/compute-construct-reduction-clause.c
M clang/test/SemaOpenACC/compute-construct-reduction-clause.cpp
M clang/test/SemaOpenACC/loop-construct-reduction-ast.cpp
Log Message:
-----------
Reapply "[OpenACC] Sema changes for +*&|^ reduction combiner recipes (… (https://github.com/llvm/llvm-project/pull/162920) (#163246)
This reverts commit
https://github.com/llvm/llvm-project/commit/8d9aecce064776a9a890f3c898165f99e8eaa13e.
Additionally, this refactors how we're doing the AST storage to put it
all in the trailing storage, which will hopefully prevent it from
leaking. The problem was that the AST doesn't call destructors on things
in ASTContext storage, so we weren't actually able to delete the
combiner
SmallVector (which I should have known...). This patch instead moves all
of that SmallVector data into trailing storage, which shouldn't have the
same
problem with leaking as before.
Commit: 7e690517bceea62a6b9c7e05622fb48bb6316efc
https://github.com/llvm/llvm-project/commit/7e690517bceea62a6b9c7e05622fb48bb6316efc
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lld/COFF/DLL.cpp
M lld/test/COFF/arm64-delayimport.yaml
M lld/test/COFF/arm64x-delayimport.test
Log Message:
-----------
[LLD] [COFF] Fix aarch64 delayimport of sret arguments (#163096)
For sret arguments on aarch64, the x8 register is used as input
parameter to functions, even though x8 normally isn't an input parameter
register.
When delayloading a DLL, the first call of a delayloaded function ends
up calling a helper which resolves the function. Therefore, any input
arguments to the actual function to be called need to be backed up and
restored - this also includes x8.
This matches how MS link.exe also changed its delayloading trampoline,
between MSVC 2019 16.7 and 16.8 (between link.exe 14.27.29110.0 and
14.28.29333.0).
This fixes running LLDB on aarch64 mingw, after
ec28b95b7491bc2fbb6ec66cdbfd939e71255c42 and
93d326038959fd87fb666a8bf97d774d0abb3591. Those commits make LLDB load
liblldb.dll with delayloading, and the first function to be called,
SBDebugger::InitializeWithErrorHandling(), returns an SBError, which in
the itanium C++ ABI is returned as an sret via a pointer in x8.
Commit: fe00ab4c108d46b8ed092862f67534828f20300d
https://github.com/llvm/llvm-project/commit/fe00ab4c108d46b8ed092862f67534828f20300d
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/StringExtras.h
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/test/CodeGen/MIR/AArch64/return-address-signing.mir
M llvm/unittests/ADT/StringExtrasTest.cpp
Log Message:
-----------
[NFC][MIR] Fix extra whitespace in MIR printing (#162928)
Fix a whitespace regression in MIR printing that was introduced in
https://github.com/llvm/llvm-project/pull/137361.
The default value for `ListSeparator` is `", "`, so we don't need to
print an additional space in front of tokens for optional symbols and
other things printed after operands.
Note, the modified LIT test will fail at trunk without the fix,
demonstrating that the extra space before `, pre-instr-symbol <mcsymbol
>` on Line 63 exists currently and is fixed with this change.
Commit: c5bd68cbd522e6ac477d2b99a67d8b6054cb8bee
https://github.com/llvm/llvm-project/commit/c5bd68cbd522e6ac477d2b99a67d8b6054cb8bee
Author: Florian Mayer <fmayer at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/Analysis/LifetimeSafety/BUILD.gn
Log Message:
-----------
[gn] Fix after c37c82de1acbec165d39d725fe1c7e1d96710219 (#163227)
Commit: 88928259173ba6fe99b20258fcde512d82b72a46
https://github.com/llvm/llvm-project/commit/88928259173ba6fe99b20258fcde512d82b72a46
Author: carlobertolli <carlo.bertolli at amd.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/sgpr-phys-copy.mir
Log Message:
-----------
[AMDGPU] Enable saving SHARED_BASE to VCC (#163244)
Commit: ce8abef25e242e65e459bcb7d9998a4e85ae03d2
https://github.com/llvm/llvm-project/commit/ce8abef25e242e65e459bcb7d9998a4e85ae03d2
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ModuleCache.cpp
M clang/test/Modules/fmodules-validate-once-per-build-session.c
Log Message:
-----------
[clang][modules] Derive mtime from PCM timestamps, not PCM files (#162965)
#137363 was supposed to be NFC for the `CrossProcessModuleCache` (a.k.a
normal implicit module builds), but accidentally passed the wrong path
to `sys::fs::status`. Then, #141358 removed the correct path that
should've been passed instead. (The variable was flagged as unused.)
None of our existing tests caught this regression, we only found out due
to a SourceKit-LSP benchmark getting slower.
This PR re-implements the original behavior, adds new remark to Clang
for PCM input file validation, and uses it to create more reliable tests
of the `-fmodules-validate-once-per-build-session` flag.
Commit: 578c03f7e52132951227f673f3ab6b0ea5ed9d4c
https://github.com/llvm/llvm-project/commit/578c03f7e52132951227f673f3ab6b0ea5ed9d4c
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Utility/AnsiTerminal.h
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Support OSC escape codes for native progress (#162162)
This PR adds support for emitting the OSC `9;4` sequences to show a GUI
native progress bar.
There's a limited number of terminal emulators that support this, so for
now this requires explicit opt-in through a setting. I'm reusing the
existing `show-progress` setting, which became a NOOP with the
introduction of the statusline. The option now defaults to off.
Implements #160369
Commit: b5d75b24fdebc303b7b855b19d2992c5dd71dfda
https://github.com/llvm/llvm-project/commit/b5d75b24fdebc303b7b855b19d2992c5dd71dfda
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
M flang/test/Fir/CUDA/cuda-data-transfer.fir
Log Message:
-----------
[flang][cuda] Get the descriptor pointer for data transfer (#163262)
When the sea value in the `cuf.data_transfer` is the result of a
`fir.load` operation, get the memref from the `fir.load`. Otherwise the
conversion fails with an invalid conversion from `fir.box` to `fir.ref`.
Commit: dc365b24172161cf98517f8d839ab5b45c9a97ed
https://github.com/llvm/llvm-project/commit/dc365b24172161cf98517f8d839ab5b45c9a97ed
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/TableGen/CodeGenHelpers.h
M mlir/test/mlir-tblgen/dialect.td
Log Message:
-----------
[NFC][TableGen] Emit nested namespace definitions in NamespaceEmitter (#161958)
Change NamespaceEmitter to emit nested namespace using C++17 nested
namespace definitions.
Commit: 1fe6bdcd7afa531aef43491bb045f87f97929fbd
https://github.com/llvm/llvm-project/commit/1fe6bdcd7afa531aef43491bb045f87f97929fbd
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/StaticAnalyzer/BUILD.gn
Log Message:
-----------
[gn build] Port bb3b0203c0fb
Commit: b1717f475a10a70f44859da6bc54c29ba4514080
https://github.com/llvm/llvm-project/commit/b1717f475a10a70f44859da6bc54c29ba4514080
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn
Log Message:
-----------
[gn build] Port ea251536d55f
Commit: 0ceb32d06d4881d7d9c2182a05d41f8fd61220ab
https://github.com/llvm/llvm-project/commit/0ceb32d06d4881d7d9c2182a05d41f8fd61220ab
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M .ci/metrics/metrics.py
Log Message:
-----------
[CI] Add AArch64 Premerge Jobs to Metrics (#163257)
This enables storing the results in Prometheus/Visualizing them in
Grafana.
Commit: 57726bdca274b152d2f36aaad7c961767bb1f91a
https://github.com/llvm/llvm-project/commit/57726bdca274b152d2f36aaad7c961767bb1f91a
Author: Guillaume Chatelet <gchatelet at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/x86_64/inline_bcmp.h
Log Message:
-----------
Revert "[libc] Implement branchless head-tail comparison for bcmp" (#162859)
Reverts llvm/llvm-project#107540
This PR demonstrated improvements on micro-benchmarks but the gains did
not seem to materialize in production. We are reverting this change for
now to get more data. This PR might be reintegrated later once we're
more confident in its effects.
Commit: 1c8cd1ed97cf78fdbe843a31306aba0dfc8cd853
https://github.com/llvm/llvm-project/commit/1c8cd1ed97cf78fdbe843a31306aba0dfc8cd853
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
Log Message:
-----------
[flang][cuda] Add a TODO for code generation of CONSTANT variable (#163268)
Commit: a289e2f9e69cdc6eef852adc45d7ce8458f38377
https://github.com/llvm/llvm-project/commit/a289e2f9e69cdc6eef852adc45d7ce8458f38377
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
Log Message:
-----------
[OpenACC] Ensure ArrayRef and SmallVector are kept in sync. (#163273)
My OpenACCReductionRecipeWithStorage attempted to get its allocations in
sync with the ArrayRef so I could use the arrayref to refer to the
allocation. Unfortunately I'd forgotten about the move constructor,
which made it get out of sync, which Asan caught.
Commit: 794f3dfd75225bd1a1844631f054723bcba68c9b
https://github.com/llvm/llvm-project/commit/794f3dfd75225bd1a1844631f054723bcba68c9b
Author: Tarun Prabhu <tarun at lanl.gov>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M flang/docs/GettingInvolved.md
Log Message:
-----------
[flang][docs] Update flang call details
The technical call has been cancelled, so that text has been removed.
The description of the "general" call has been updated to indicate that
it is intended for both technical and general discussions.
Commit: e9b935ecefddfbd7090a36c0765396dc46b7854f
https://github.com/llvm/llvm-project/commit/e9b935ecefddfbd7090a36c0765396dc46b7854f
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
[NFC][MLIR][TableGen] Adopt NamespaceEmitter more widely (#162015)
Adopt `NamespaceEmitter` more widely in MLIR TableGen.
Commit: bf6880c9970c760f3459a0ec25fac142211e6f78
https://github.com/llvm/llvm-project/commit/bf6880c9970c760f3459a0ec25fac142211e6f78
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/test/Shell/Driver/LocalLLDBInit.test
Log Message:
-----------
[lldb] Don't emit .lldbinit warning as an error (#163265)
Actually emit a warning, rather than an error, when there's an .lldbinit
file in the current directly. Currently, the message is prepended by
"error" which looks rather odd, as the warning refers to itself as a
warning.
Commit: f9910a22aea77442fba67160fe33273073f47c8c
https://github.com/llvm/llvm-project/commit/f9910a22aea77442fba67160fe33273073f47c8c
Author: Fazlay Rabbi <106703039+mdfazlay at users.noreply.github.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/docs/OpenMPSupport.rst
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/StmtProfile.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
A clang/test/OpenMP/nowait_ast_print.cpp
M clang/test/OpenMP/target_enter_data_nowait_messages.cpp
M clang/test/OpenMP/target_exit_data_nowait_messages.cpp
M clang/test/OpenMP/target_nowait_messages.cpp
M clang/test/OpenMP/target_parallel_for_nowait_messages.cpp
M clang/test/OpenMP/target_parallel_for_simd_nowait_messages.cpp
M clang/test/OpenMP/target_parallel_nowait_messages.cpp
M clang/test/OpenMP/target_simd_nowait_messages.cpp
M clang/test/OpenMP/target_teams_distribute_nowait_messages.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_nowait_messages.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_nowait_messages.cpp
M clang/test/OpenMP/target_teams_distribute_simd_nowait_messages.cpp
M clang/test/OpenMP/target_teams_nowait_messages.cpp
M clang/test/OpenMP/target_update_nowait_messages.cpp
M clang/tools/libclang/CIndex.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[OpenMP 60] Update parsing and semantic support for `nowait` clause to accept optional argument (#159628)
This PR enhances the OpenMP `nowait` clause implementation by adding
support for optional argument in both parsing and semantic analysis
phases.
Reference:
1. OpenMP 6.0 Specification, page 481
Commit: 1b2a956d13ee1df96d5ca9bc32e9b6d1237a129a
https://github.com/llvm/llvm-project/commit/1b2a956d13ee1df96d5ca9bc32e9b6d1237a129a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/SpecialCaseList.h
Log Message:
-----------
[NFC][SpecialCaseList] Re-order methods (#163278)
To match lifetime usage order.
Co-authored-by: Tarun Prabhu <tarun at lanl.gov>
Commit: e9814fbf640d63f8d4db991f4e7c153549def564
https://github.com/llvm/llvm-project/commit/e9814fbf640d63f8d4db991f4e7c153549def564
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
Revert "[NFC][MLIR][TableGen] Adopt NamespaceEmitter more widely" (#163285)
Reverts llvm/llvm-project#162015
Looks like this is causing failures in bots so reverting.
Commit: d9a6ed73ebbb6a6b6be11b5153afa443d72fbee3
https://github.com/llvm/llvm-project/commit/d9a6ed73ebbb6a6b6be11b5153afa443d72fbee3
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Utils/CloneFunction.cpp
Log Message:
-----------
[NFC][LLVM] Fix build warning in CloneFunction.cpp (#163267)
Commit: 472ee437b832270168e3625f5cd1a8df62897896
https://github.com/llvm/llvm-project/commit/472ee437b832270168e3625f5cd1a8df62897896
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/SpecialCaseListBM.cpp
Log Message:
-----------
[NFC][SpecialCaseList] Add SpecialCaseList Benchmark (#163274)
At the moment it's focused on "src:" patterns.
Commit: 645745f9de7ea7bfc63848bf900dc424896a37e9
https://github.com/llvm/llvm-project/commit/645745f9de7ea7bfc63848bf900dc424896a37e9
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/global-ctor-dtor.cpp
M clang/test/CIR/IR/func.cir
Log Message:
-----------
[CIR] Add support for global ctor/dtor attributes (#163247)
This adds support for adding the `global_ctor` or `global_dtor`
attribute to the CIR representation of functions defined with
`__attribute__((constructor))` or `__attribute__((destructor))` and
adding them to the `@llvm.global_ctors` or `@llvm.global_dtors` list
during lowering to LLVM IR.
Commit: 301d0089fe408ef34907e74a5abb613aa68d2680
https://github.com/llvm/llvm-project/commit/301d0089fe408ef34907e74a5abb613aa68d2680
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/Basic/Diagnostic.cpp
M llvm/include/llvm/Support/SpecialCaseList.h
M llvm/lib/Support/SpecialCaseList.cpp
Log Message:
-----------
[SpecialCaseList] Support early return from matching (#163279)
On average it saves half positive of Glob matching.
However, in real build most SpecialCaseList unmatched,
this change should not affect this case.
To be able to do so without breaking behavior, we
need to re-order matches according precedence.
Usually it's LineNo, and it's already ordered,
but Diagnostic requires reordering by rule length.
Co-authored-by: Rahul Joshi <rjoshi at nvidia.com>
Commit: 3e22438320003f0c2ed8a8d10b17071d6a093325
https://github.com/llvm/llvm-project/commit/3e22438320003f0c2ed8a8d10b17071d6a093325
Author: Derek Schuff <dschuff at chromium.org>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/WebAssembly/mem-intrinsics-offsets.ll
Log Message:
-----------
[CodeGen] Use getObjectPtrOffset to generate loads/stores for mem intrinsics (#80184)
This causes address arithmetic to be generated with the 'nuw' flag,
allowing WebAssembly constant offset folding.
Fixes #79692
Commit: 1c00a001f605eb87b54d47ce9d7992f7021474b4
https://github.com/llvm/llvm-project/commit/1c00a001f605eb87b54d47ce9d7992f7021474b4
Author: Jim Lin <jim at andestech.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/test/CodeGen/RISCV/and-negpow2-cmp.ll
M llvm/test/CodeGen/RISCV/i64-icmp.ll
M llvm/test/CodeGen/RISCV/select-to-and-zext.ll
M llvm/test/CodeGen/RISCV/setcc-logic.ll
M llvm/test/CodeGen/RISCV/sext-zext-trunc.ll
M llvm/test/CodeGen/RISCV/xaluo.ll
Log Message:
-----------
[RISCV] Merge ADDI and SIGN_EXTEND_INREG to ADDIW during selectSETCC. (#162614)
That we can merge ADDI with its LHS to ADDIW if its LHS is a
SIGN_EXTEND_INREG.
Commit: e8f721e621d85a2670f13307b1b99528cf5e8708
https://github.com/llvm/llvm-project/commit/e8f721e621d85a2670f13307b1b99528cf5e8708
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/docs/UsersManual.rst
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[clang][docs] Update doc and release note for probe instrumentation (#162606)
-fpseudo-probe-for-profiling is supported for COFF in #123870.
llvm-profgen supports decoding pseudo probe in #158207.
This PR updates release note and adds an example to use it in
UsersManual.rst.
Commit: 8706ef474c4bbc7cf7bf8895649789b96e07c842
https://github.com/llvm/llvm-project/commit/8706ef474c4bbc7cf7bf8895649789b96e07c842
Author: Jason Molenda <jmolenda at apple.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/test/API/functionalities/unwind/cortex-m-exception/TestCortexMExceptionUnwind.py
Log Message:
-----------
[lldb] Remove obsolete comment in TestCortexMExceptionUnwind
Commit: 812a225811bd43aff1e5a5cf1117a0531e533504
https://github.com/llvm/llvm-project/commit/812a225811bd43aff1e5a5cf1117a0531e533504
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_flags.inc
M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_signal_interceptors.inc
M compiler-rt/test/sanitizer_common/TestCases/Linux/allow_user_segv.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/cloak_sigaction.cpp
A compiler-rt/test/sanitizer_common/TestCases/Linux/cloak_signal.cpp
Log Message:
-----------
[sanitizer] Add cloak_sanitizer_signal_handlers runtime option (#162746)
If set, signal/sigaction will pretend that the sanitizers did not preinstall any signal handlers. If a user successfully installs a signal handler, it will not be cloaked.
The flag is currently off by default, which means this patch should not affect the behavior of any sanitizers.
This can be useful in an ecosystem where:
1) there exists a library that will install a signal handler iff it does not detect a preinstalled signal handler (a heuristic to prevent overriding user-installed exception handlers etc.)
2) the aforementioned library is linked in to some, but not all, apps
3) user-installed signal handlers are intended to have the highest priority, followed by the library-installed signal handler, and then the sanitizer's signal handler
The flag is in sanitizer_common, though it is currently only supported in ASan, LSan, MSan, TSan and UBSan.
Commit: 6cec3622f63c565b8fb42b63539a797d5d786be9
https://github.com/llvm/llvm-project/commit/6cec3622f63c565b8fb42b63539a797d5d786be9
Author: Brandon Wu <songwu0813 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsRISCVXsf.td
M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h
M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td
A llvm/test/CodeGen/RISCV/rvv/sifive-O0-ATM-ATK.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_e4m3_e4m3.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_e4m3_e5m2.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_e5m2_e4m3.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_e5m2_e5m2.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_f_f.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_s_s.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_s_u.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_u_s.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_mm_u_u.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vlte16.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vlte32.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vlte64.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vlte8.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vsettk.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vsettm.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vsettnt.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vste16.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vste32.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vste64.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vste8.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vtdiscard.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vtmv_t_v.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vtmv_v_t.ll
A llvm/test/CodeGen/RISCV/rvv/sifive_sf_vtzero_t.ll
Log Message:
-----------
[RISCV] Support XSfmm LLVM IR and CodeGen (#143069)
stack on: https://github.com/llvm/llvm-project/pull/143068
Co-authored-by: Piyou Chen <piyou.chen at sifive.com>
Commit: 107ca636352bcf31535924fa03df2852b70d0af3
https://github.com/llvm/llvm-project/commit/107ca636352bcf31535924fa03df2852b70d0af3
Author: ShivaChen <32083954+ShivaChen at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
Log Message:
-----------
[mlir][tosa] Support RescaleOp with dynamic extension in TosaToLinalg (#155967)
The shift, multiplier, inputZp, and outputZp can be either constant or
non-constant, depending on whether dynamic extension is enabled.
When these values are non-constant, they are added as inputs to
linalg::GenericOp, and corresponding affine maps are appended to the
indexingMaps.
The commit help to pass following Tosa conformance tests.
rescale_22x20_i32_outi8_sc0_rmS_pc0_iu0_ou0_dyn
rescale_31x18_i8_outi8_sc0_rmS_pc0_iu1_ou0_dyn
rescale_20x19_i16_outi8_sc0_rmS_pc0_iu1_ou0_dyn
Commit: 9bcf8f088ba5c76687b3b0431afe0dfbe65c77f6
https://github.com/llvm/llvm-project/commit/9bcf8f088ba5c76687b3b0431afe0dfbe65c77f6
Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
R llvm/test/CodeGen/PowerPC/check-zero-vector.ll
A llvm/test/CodeGen/PowerPC/compare-vector-with-zero.ll
Log Message:
-----------
[NFC][PowerPC] Lockdown instructions for floating point comparison with zero-vector (#162828)
This NFC patch adds a new function which aids in emitting machine
instructions for floating point vectors. This was previously not
included in the test file as it currently only checks for integer
vectors.
---------
Co-authored-by: himadhith <himadhith.v at ibm.com>
Commit: 27d8441f8282c740903529d8a6b73401fc6c17fa
https://github.com/llvm/llvm-project/commit/27d8441f8282c740903529d8a6b73401fc6c17fa
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_common.h
M compiler-rt/lib/sanitizer_common/sanitizer_flags.inc
M compiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
M compiler-rt/lib/sanitizer_common/sanitizer_signal_interceptors.inc
M compiler-rt/test/sanitizer_common/TestCases/Linux/allow_user_segv.cpp
R compiler-rt/test/sanitizer_common/TestCases/Linux/cloak_sigaction.cpp
R compiler-rt/test/sanitizer_common/TestCases/Linux/cloak_signal.cpp
Log Message:
-----------
Revert "[sanitizer] Add cloak_sanitizer_signal_handlers runtime option" (#163308)
Reverts llvm/llvm-project#162746
Reason: buildbot breakage
(https://lab.llvm.org/buildbot/#/builders/51/builds/25195)
Commit: b09dea1ee81d37dbac65e973179f071e5b3dcc78
https://github.com/llvm/llvm-project/commit/b09dea1ee81d37dbac65e973179f071e5b3dcc78
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M clang/unittests/Basic/DiagnosticTest.cpp
Log Message:
-----------
[NFC][Diagnostic] Try all permutations in longest match test (#163277)
* Test reordering of rules.
* Test same length rules for emit and suppress.
Follow up to #162409, to confirm it does not affect this behavior.
Commit: a3330253b6b98a800b969cfebf823502dd5aaeaa
https://github.com/llvm/llvm-project/commit/a3330253b6b98a800b969cfebf823502dd5aaeaa
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lldb/tools/lldb-mcp/lldb-mcp.cpp
Log Message:
-----------
[lldb-mcp] Register a NoOpMonitorCallback when launching lldb from lldb-mcp (#163270)
Commit: 0f4659621371a99f2b92b2b95cb06cbbd80d972b
https://github.com/llvm/llvm-project/commit/0f4659621371a99f2b92b2b95cb06cbbd80d972b
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M .github/workflows/containers/github-action-ci/Dockerfile
Log Message:
-----------
[Github] Bump LLVM Version in CI Container to 21.1.3
Just to keep things up to date.
Commit: 3f3ffed9c226e2753cfe6646bfc219fe5ea48869
https://github.com/llvm/llvm-project/commit/3f3ffed9c226e2753cfe6646bfc219fe5ea48869
Author: Ian Li <ian.li at intel.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
A mlir/include/mlir/Conversion/MathToXeVM/MathToXeVM.h
M mlir/include/mlir/Conversion/Passes.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/CMakeLists.txt
A mlir/lib/Conversion/MathToXeVM/CMakeLists.txt
A mlir/lib/Conversion/MathToXeVM/MathToXeVM.cpp
A mlir/test/Conversion/MathToXeVM/lit.local.cfg
A mlir/test/Conversion/MathToXeVM/math-to-xevm.mlir
A mlir/test/Conversion/MathToXeVM/native-spirv-builtins.mlir
Log Message:
-----------
[MLIR][Math][XeVM] Reintroduce MathToXeVM (math-to-xevm) pass (#162934)
This PR is a fix for https://github.com/llvm/llvm-project/pull/159878,
which failed in postcommit testing due to linker errors that were not
caught in precommit.
Original PR:
---
This PR introduces a `MathToXeVM` pass, which implements support for the
`afn` fastmath flag for SPIRV/XeVM targets - It takes supported `Math`
Ops with the `afn` flag, and converts them to function calls to OpenCL
`native_` intrinsics.
These intrinsic functions are supported by the SPIRV backend, and are
automatically converted to `OpExtInst` calls to `native_` ops from the
OpenCL SPIRV ext. inst. set when outputting to SPIRV/XeVM.
Note:
- This pass also supports converting `arith.divf` to native equivalents.
There is an option provided in the pass to turn this behavior off.
- This pass preserves fastmath flags, but these flags are currently
ignored by the SPIRV backend. Thus, in order to generate SPIRV that
truly preserves fastmath flags, support needs to be added to the SPIRV
backend.
Commit: 0376b863bd1b2b1e5f47e6c4685589d4bbd8954c
https://github.com/llvm/llvm-project/commit/0376b863bd1b2b1e5f47e6c4685589d4bbd8954c
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/test/CodeGen/RISCV/min-max.ll
Log Message:
-----------
[RISCV][NFC] Add More Int Min/Max Coverage (#163302)
Both for Xqci, and for Short Forward Branches alone.
Commit: 401308fc163521bffd700a2c55e88074148de404
https://github.com/llvm/llvm-project/commit/401308fc163521bffd700a2c55e88074148de404
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrFormats.td
M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
Log Message:
-----------
[RISCV] Use a tablegen class for AltFmtType. NFC (#163251)
This should provide stronger type checking to prevent misuse.
Commit: 5a560b306dbc93c5f9dde3a0a4e39d5d56a287dc
https://github.com/llvm/llvm-project/commit/5a560b306dbc93c5f9dde3a0a4e39d5d56a287dc
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/compound-requirement.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CXX/temp/temp.param/p10-2a.cpp
M clang/test/SemaHLSL/BuiltIns/Buffers.hlsl
M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
Revert "[Clang] Preserve more sugars in constraint evaluation" (#163322)
Reverts llvm/llvm-project#162991
That patch breaks certain uses of VLAs when combined with constrained
types.
This is a pre-existing issue that occurs when concepts are instantiated
with sugar. See also #102353 and related PRs. I tried to fix it on top
of the status quo in #163167, but that approach turned out to be
unfeasible, and our maintainer was clearly unhappy with it, hence this
revert.
Even after this patch, some VLA uses remain broken on trunk (see the
example below), because our normalization patch depends on sugar to
correctly compile libc++, due to a very subtle underlying bug. Still,
this is the best attempt to mitigate the problem for now.
We discussed this and agreed that the long-term solution is to remove
the sugar dependencies from concepts, before the VLA issue is properly
resolved through a larger refactoring.
I'll add a related test (which passes with partially applied sugar)
after this revert, since I don't have a reduced example yet.
Commit: 22bf331933c2b072bc2b2fd00c70b2b3b1c21a98
https://github.com/llvm/llvm-project/commit/22bf331933c2b072bc2b2fd00c70b2b3b1c21a98
Author: Fangrui Song <i at maskray.me>
Date: 2025-10-13 (Mon, 13 Oct 2025)
Changed paths:
M lld/ELF/Arch/Mips.cpp
M lld/ELF/Arch/PPC64.cpp
A lld/ELF/RelocScan.h
M lld/ELF/Relocations.cpp
M lld/ELF/Relocations.h
M lld/ELF/Target.cpp
M lld/ELF/Target.h
Log Message:
-----------
[ELF] Refactor RelocScan::scan to be target-specific (#163138)
- Extract RelocScan to RelocScan.h. The file includes Target.h, and
cannot be merged with Relocations.h
- Add MIPS and PPC64 specific relocation scanners, removing runtime
checks for other targets.
This refactoring prepares the codebase for better target-specific
optimizations and easier addition of target-specific behavior.
Commit: e9e9ba4a694b778038bbda0120fca075e9b6bd1e
https://github.com/llvm/llvm-project/commit/e9e9ba4a694b778038bbda0120fca075e9b6bd1e
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
M clang/test/Analysis/string.c
Log Message:
-----------
[clang][analyzer] Support strlen with offset to string literal in CStringChecker (#159795)
Handle cases like `strlen(string_constant + 3)` in `CStringChecker` by
returning the original string length minus offset.
Commit: 782dd178fcb3b146dd16792b54c867095b863ccc
https://github.com/llvm/llvm-project/commit/782dd178fcb3b146dd16792b54c867095b863ccc
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
A llvm/test/CodeGen/SPIRV/llvm-compiler-used.ll
Log Message:
-----------
[SPIRV] Do not emit @llvm.compiler.used (#162678)
`@llvm.compiler.used` holds a series of global values and prevents the compiler from optimizing them out.
However, the symbols in the variable can be optimized after compilation
as usual by a linker (notice that `@llvm.used` instead doesn't allow for
the linker to optimize-out the global variables referenced in it).
This was already done for `@llvm.global.annotations`.
Commit: 489a921796fe8d33de0f055ca6084e8f54cb1d84
https://github.com/llvm/llvm-project/commit/489a921796fe8d33de0f055ca6084e8f54cb1d84
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
M llvm/test/Instrumentation/AddressSanitizer/asan-funclet.ll
M llvm/test/Instrumentation/AddressSanitizer/fake-stack.ll
M llvm/test/Instrumentation/AddressSanitizer/lifetime.ll
M llvm/test/Instrumentation/AddressSanitizer/local_stack_base.ll
M llvm/test/Instrumentation/AddressSanitizer/stack-poisoning-byval-args.ll
M llvm/test/Instrumentation/AddressSanitizer/stack_dynamic_alloca.ll
Log Message:
-----------
[AddressSanitizer] Avoid unnecessary ptr<->int casts for stack poisoning (#162634)
Instead of casting pointers to integers to perform arithmetic on them,
use ptradd. We still need some casts when interfacing with the asan
runtime.
Commit: aa731e190457eb0509548e255d69db4376209365
https://github.com/llvm/llvm-project/commit/aa731e190457eb0509548e255d69db4376209365
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h
M llvm/unittests/ExecutionEngine/Orc/ExecutorAddressTest.cpp
Log Message:
-----------
[ORC] Add ExecutorAddrRange::contains overload for ranges. (#163321)
Can be used to test that one address range is fully contained within
another. This will be used in upcoming SimpleExecutorMemoryManager
changes.
Commit: fa57074d146925a303263905af415cc78f58f353
https://github.com/llvm/llvm-project/commit/fa57074d146925a303263905af415cc78f58f353
Author: Piyou Chen <piyou.chen at sifive.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/CodeGen/Targets/RISCV.cpp
A clang/test/CodeGen/RISCV/bitint.c
M clang/test/CodeGen/ext-int-cc.c
Log Message:
-----------
[clang][RISCV] support BITINT with mixed-type (#156592)
Implement https://github.com/riscv-non-isa/riscv-elf-psabi-doc/pull/419.
This patch makes the type extension based on the variable type for
BIGINT, rather than using sign extension for all cases.
Commit: a8057ff12956b7dd6dec44f9610c446c828c4af8
https://github.com/llvm/llvm-project/commit/a8057ff12956b7dd6dec44f9610c446c828c4af8
Author: Sjoerd Meijer <smeijer at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
A llvm/test/Analysis/DependenceAnalysis/becount-couldnotcompute.ll
Log Message:
-----------
[DA] getBackedgeTakenCount in isKnownLessThan can return CouldNotCompute (#162495)
Bail out when the backedge taken count is a CouldNotCompute SCEV in
function isKnownLessThan; we cannot and do not want to query things like
its Type.
Fixes #159979
Commit: d49aa40fc703d061f48e520b9c1b63e6646c6907
https://github.com/llvm/llvm-project/commit/d49aa40fc703d061f48e520b9c1b63e6646c6907
Author: guillem-bartrina-sonarsource <guillem.bartrina at sonarsource.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
A clang/test/Analysis/loc-folding.cpp
Log Message:
-----------
[analyzer] `SValBuilder::evalBinOpLN`: try simplifying the RHS first (#161537)
The first thing `SValBuilder::evalBinOpNN` does is simplify both
operators
([here](https://github.com/llvm/llvm-project/blob/main/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp#L430-L437)),
why wouldn't we simplify the RHS in `SValBuilder::evalBinOpLN`?
When the LHS is an `Element`, the right side is simplified incidentally
when calling `evalBinOpNN`
([here](https://github.com/llvm/llvm-project/blob/main/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp#L1169-L1170)).
Without this patch, the “base_complex” test case is **UNKNOWN** instead of **TRUE**.
Commit: 400faf912e40c17c79f58fd5d599fc9268221466
https://github.com/llvm/llvm-project/commit/400faf912e40c17c79f58fd5d599fc9268221466
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/Utils/AArch64SMEAttributes.cpp
M llvm/test/CodeGen/AArch64/sme-za-exceptions.ll
Log Message:
-----------
[AArch64][SME] Treat agnostic ZA invokes like private ZA callees (#162684)
An invoke of an agnostic ZA function behaves like a private ZA callee.
If the invoke does not return normally (and we end up in an exception
block in the caller), ZA must be committed to the caller's save buffer
(and off).
We can ensure this by setting up a ZA save before an agnostic ZA invoke.
This will result in the agnostic ZA invoke committing ZA to its caller's
save buffer, rather than its local buffer, which allows us to reload the
correct contents of ZA within exception blocks.
Note: This also means we must restore ZA on the non-exceptional path
from the `invoke` (since ZA could have been committed to the save buffer
in either case).
Commit: ee6c92f8d7acdd633f5fd9a2d92c6e4861148604
https://github.com/llvm/llvm-project/commit/ee6c92f8d7acdd633f5fd9a2d92c6e4861148604
Author: dyung <douglas.yung at sony.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/unittests/Basic/DiagnosticTest.cpp
Log Message:
-----------
Revert "[NFC][Diagnostic] Try all permutations in longest match test" (#163342)
Reverts llvm/llvm-project#163277
The test is failing on many bots including:
- https://lab.llvm.org/buildbot/#/builders/46/builds/24812
- https://lab.llvm.org/buildbot/#/builders/55/builds/18592
- https://lab.llvm.org/buildbot/#/builders/63/builds/11216
- https://lab.llvm.org/buildbot/#/builders/161/builds/8401
Commit: 4a8dd4998dae8b7d67e416d20a1fa8a9451c64f5
https://github.com/llvm/llvm-project/commit/4a8dd4998dae8b7d67e416d20a1fa8a9451c64f5
Author: Slava Gurevich <sgurevich at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
Log Message:
-----------
[BOLT][NFC] Fix for a dangling reference UB (#163344)
Fix UB caused by accessing the top element of the stack via a dangling
reference after a call to .pop() This is tripping static analysis.
No functional changes. Performance impact is negligible, but alt.
implementation of the fix is possible if needed.
Testing: Both functional and unit tests are passing.
Commit: 15d36fc72e176b1eed03a37efc9212202dd2b6cd
https://github.com/llvm/llvm-project/commit/15d36fc72e176b1eed03a37efc9212202dd2b6cd
Author: Sohaib Iftikhar <sohaib1692 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[MLIR][BUILD]: Add table gen defs missing in 34c0a5f1 (#163345)
[MLIR][BUILD]: Add table gen defs missing in 34c0a5f1
Commit: 3793e75b7af7e4908316e7869d8fc61517401865
https://github.com/llvm/llvm-project/commit/3793e75b7af7e4908316e7869d8fc61517401865
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/regex
M libcxx/test/std/re/re.alg/re.alg.match/ecma.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #129348 (#162821)
Commit: 6712e20c5261376a6b0015fb3c8d15124757d47d
https://github.com/llvm/llvm-project/commit/6712e20c5261376a6b0015fb3c8d15124757d47d
Author: anoopkg6 <anoop.kumar6 at ibm.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/include/clang/Basic/TargetInfo.h
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/SystemZ.cpp
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/CodeGen/CGStmt.cpp
A clang/test/CodeGen/inline-asm-systemz-flag-output.c
A clang/test/Preprocessor/systemz_asm_flag_output.c
M llvm/lib/Target/SystemZ/SystemZ.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/SystemZ/SystemZISelLowering.h
M llvm/test/CodeGen/SystemZ/htm-intrinsics.ll
A llvm/test/CodeGen/SystemZ/inline-asm-flag-output-01.ll
A llvm/test/CodeGen/SystemZ/inline-asm-flag-output-02.ll
Log Message:
-----------
Add support for flag output operand "=@cc" for SystemZ. (#125970)
Added Support for flag output operand "=@cc", inline assembly constraint
for
SystemZ.
- Clang now accepts "=@cc" assembly operands, and sets 2-bits condition
code
for output operand for SyatemZ.
- Clang currently emits an assertion that flag output operands are
boolean
values, i.e. in the range [0, 2). Generalize this mechanism to allow
targets to specify arbitrary range assertions for any inline assembly
output operand. This will be used to assert that SystemZ two-bit
condition-code values are in the range [0, 4).
- SystemZ backend lowers "@cc" targets by using ipm sequence to extract
condition code from PSW.
- DAGCombine tries to optimize lowered ipm sequence by combining
CCReg and computing effective CCMask and CCValid in combineCCMask for
select_ccmask and br_ccmask.
- Cost computation is done for merging conditionals for branch
instruction
in SelectionDAG, as split may cause branches conditions evaluation goes
across basic block and difficult to combine.
---------
Co-authored-by: anoopkg6 <anoopkg6 at github.com>
Co-authored-by: Ulrich Weigand <ulrich.weigand at de.ibm.com>
Commit: d7fc7703402184792319f65570ad6a49ffe8cde7
https://github.com/llvm/llvm-project/commit/d7fc7703402184792319f65570ad6a49ffe8cde7
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/combine-sdiv.ll
Log Message:
-----------
[LLVM][DAGCombiner] Improve simplifyDivRem's effectiveness after type legalisation. (#162706)
simplifyDivRem does not work as well after type legalisation because
splatted constants can have a size mismatch between the scalar to splat
and the element type of the splatted result. simplifyDivRem does not
seem to care about this mismatch so I've updated the "is one" check
for the divisor to allow truncation.
Commit: 3f99d2fc9a3df3c84756c49d0fc67a97b5134610
https://github.com/llvm/llvm-project/commit/3f99d2fc9a3df3c84756c49d0fc67a97b5134610
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/DropEquivalentBufferResults.cpp
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-allow-return-allocs.mlir
M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
M mlir/test/Dialect/Linalg/one-shot-bufferize.mlir
M mlir/test/Dialect/SCF/one-shot-bufferize.mlir
M mlir/test/Dialect/Tensor/one-shot-bufferize.mlir
Log Message:
-----------
[mlir][bufferize] Make drop-equivalent-buffer-results only support functions that are neither public nor extern (#163001)
The callers of public or extern functions are unknown, so their function
signatures cannot be changed.
Commit: 1e4a54bb6438dc6ba828cd8754c183b152df60de
https://github.com/llvm/llvm-project/commit/1e4a54bb6438dc6ba828cd8754c183b152df60de
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
M libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
Log Message:
-----------
[libc++][C++03] Remove a few XFAILs in test/libcxx
We've split the libc++ tests into C++03 and non-C++03 tests, so these
XFAILs aren't needed anymore.
Commit: f345d9b58e19b77c95553a220fc5a3f7663e9cb4
https://github.com/llvm/llvm-project/commit/f345d9b58e19b77c95553a220fc5a3f7663e9cb4
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Analysis/IVDescriptors.cpp
Log Message:
-----------
[IVDesc] Improve isConditionalRdxPattern (NFC) (#162818)
Commit: 6f514313263da0fb4b6793689f6849e0f8fdb18b
https://github.com/llvm/llvm-project/commit/6f514313263da0fb4b6793689f6849e0f8fdb18b
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/IR/ConstantFold.cpp
M llvm/unittests/IR/ConstantsTest.cpp
Log Message:
-----------
[ConstantFold] Support ptrtoaddr in global alignment fold
Treat it the same way as ptrtoint.
Commit: 69e0fd6d8dea666205fca52265f09b3eb5ee2f3d
https://github.com/llvm/llvm-project/commit/69e0fd6d8dea666205fca52265f09b3eb5ee2f3d
Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/test/Preprocessor/predefined-arch-macros.c
M llvm/lib/Target/X86/X86.td
M llvm/lib/TargetParser/X86TargetParser.cpp
Log Message:
-----------
[X86] Remove PREFETCHI from PTL (#163196)
Per Intel Architecture Instruction Set Extensions Programming Reference
rev. 59 (https://cdrdv2.intel.com/v1/dl/getContent/671368), table 1-2,
PTL doesn't have support for PREFETCHI.
Commit: 53ddeb493529a98d10acea77b84c73315f83d7f3
https://github.com/llvm/llvm-project/commit/53ddeb493529a98d10acea77b84c73315f83d7f3
Author: why <2199125155 at qq.com>
Date: 2025-10-14 (Tue, 14 Oct 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/lib/Headers/avx2intrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/pmmintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/test/CodeGen/X86/avx-builtins.c
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/sse3-builtins.c
M clang/test/CodeGen/X86/ssse3-builtins.c
Log Message:
-----------
[X86] Add MMX/SSE/AVX PHADD/SUB & HADDPS/D intrinsics to be used in constexpr (#156822)
[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - add MMX/SSE/AVX PHADD/SUB & HADDPS/D intrinsics to be used in constexpr
Fixes #155395
cover func:
_mm_hadd_pi16 _mm_hadd_epi16 _mm256_hadd_epi16
_mm_hadd_pi32 _mm_hadd_epi32 _mm256_hadd_epi32
_mm_hadds_pi16 _mm_hadds_epi16 _mm256_hadds_epi16
_mm_hsub_pi16 _mm_hsub_epi16 _mm256_hsub_epi16
_mm_hsub_pi32 _mm_hsub_epi32 _mm256_hsub_epi32
_mm_hsubs_pi16 _mm_hsubs_epi16 _mm256_hsubs_epi16
_mm_hadd_pd _mm256_hadd_pd
_mm_hadd_ps _mm256_hadd_ps
_mm_hsub_pd _mm256_hsub_pd
_mm_hsub_ps _mm256_hsub_ps
---------
Co-authored-by: whyuuwang <whyuuwang at tencent.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Co-authored-by: Simon Pilgrim <git at redking.me.uk>
Commit: 3d7c632bfbb9a98a1302f6f0f95bde4c2d4d4e8f
https://github.com/llvm/llvm-project/commit/3d7c632bfbb9a98a1302f6f0f95bde4c2d4d4e8f
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/regex
M libcxx/test/std/re/re.regex/re.regex.construct/bad_range.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #148231 (#163360)
Commit: 775ae160df1fb8160a2dc0702d010611a886d9a3
https://github.com/llvm/llvm-project/commit/775ae160df1fb8160a2dc0702d010611a886d9a3
Author: Yatao Wang <ningxinr at live.cn>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-add.mir
M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp
Log Message:
-----------
[GlobalISel] Add G_ADD for computeNumSignBits (#159202)
This patch ports the ISD::ADD handling from SelectionDAG’s ComputeNumSignBits to GlobalISel.
Related to https://github.com/llvm/llvm-project/issues/150515.
---------
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Co-authored-by: Simon Pilgrim <llvm-dev at redking.me.uk>
Commit: 0ebcc97e1148b5a3863ebf8c669a71450fe3a531
https://github.com/llvm/llvm-project/commit/0ebcc97e1148b5a3863ebf8c669a71450fe3a531
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/vector
M libcxx/test/std/containers/sequences/vector/vector.cons/exceptions.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #116449 and #113086 (#163362)
Commit: 6fc2318192178c788cb62b49b27e965c5f41270a
https://github.com/llvm/llvm-project/commit/6fc2318192178c788cb62b49b27e965c5f41270a
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/__atomic/atomic.h
M libcxx/include/__cxx03/__atomic/atomic_base.h
M libcxx/test/libcxx-03/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add.verify.cpp
M libcxx/test/libcxx-03/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit.verify.cpp
M libcxx/test/libcxx-03/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub.verify.cpp
M libcxx/test/libcxx-03/atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit.verify.cpp
M libcxx/test/std/atomics/types.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #123236 and #147835 (#163363)
Commit: 782a91e1fc94d9c82495f60afc5ed5edd72de776
https://github.com/llvm/llvm-project/commit/782a91e1fc94d9c82495f60afc5ed5edd72de776
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/sstream
M libcxx/test/libcxx-03/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
M libcxx/test/std/input.output/string.streams/stringbuf/stringbuf.cons/default.pass.cpp
Log Message:
-----------
[libc++][C++03] Cherry-pick #100879 (#163370)
Commit: 90cbc37905665151216a8b9074ac5e9a411e22c7
https://github.com/llvm/llvm-project/commit/90cbc37905665151216a8b9074ac5e9a411e22c7
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/test/Transforms/DFAJumpThreading/dfa-constant-propagation.ll
M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-analysis.ll
M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
M llvm/test/Transforms/DFAJumpThreading/dfa-unfold-select.ll
M llvm/test/Transforms/DFAJumpThreading/equivalent-states.ll
M llvm/test/Transforms/DFAJumpThreading/single_succ_switch.ll
Log Message:
-----------
[DFAJumpThreading] Verify dominator tree by option (#163334)
Note that the test coverage misses the dominator tree verification. This
patch controls verification by option, instead of using the
EXPENSIVE_CHECKS macro.
Commit: cf3765752b3669eb6efba00379b95c79b86b272d
https://github.com/llvm/llvm-project/commit/cf3765752b3669eb6efba00379b95c79b86b272d
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/test/Transforms/InstSimplify/ptrmask.ll
Log Message:
-----------
[InstSimplify] Support ptrtoaddr in ptrmask fold
Treat it the same way as ptrtoint. ptrmask only operates on the
address bits of the pointer.
Commit: 24c5926bd69a0dc0abc6d63f63a38b1e6f6d6ae6
https://github.com/llvm/llvm-project/commit/24c5926bd69a0dc0abc6d63f63a38b1e6f6d6ae6
Author: Dan Blackwell <dan_blackwell at apple.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M compiler-rt/test/tsan/Darwin/write-interpose.c
Log Message:
-----------
[TSan][Test-Only] Mark write-interpose.c unsupported on ios (#163178)
This test is currently failing on ios-sim. This patch follows other
sanitizer tests that use DYLD_INSERT_LIBRARIES and marks itself
unsupported on ios platforms.
rdar://162287951
Commit: b228a18e572ac7ab7a2f61b97c0a2dd3565a8201
https://github.com/llvm/llvm-project/commit/b228a18e572ac7ab7a2f61b97c0a2dd3565a8201
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/utils/generate-test-checks.py
Log Message:
-----------
[mlir] Use MLIR op names when generating FileCheck variables in generate-test-checks.py (#160820)
Motivation
----------
Improve readability and stability of autogenerated CHECK lines by using
operation-aware FileCheck variable names instead of generic VAL_N.
What changes
------------
- When possible, variable names are derived from the MLIR op name, e.g.
`vector.transfer_read` → `TRANSFER_READ_0`.
- Unknown ops (e.g., from out-of-tree dialects) fall back to the prior
`VAL_N` scheme.
Before
------
```mlir
// CHECK: %[[VAL_4:.*]] = vector.transfer_read ...
// CHECK: %[[VAL_5:.*]] = "val_use"(%[[VAL_4]]) : ...
```
After
-----
```mlir
// CHECK: %[[TRANSFER_READ_0:.*]] = vector.transfer_read ...
// CHECK: %[[VAL_1:.*]] = "val_use"(%[[TRANSFER_READ_0]]) : ...
```
Rationale
---------
Using op-derived names (e.g., `TRANSFER_READ_0`) makes tests easier to
read and audit, while remaining more stable across unrelated edits (e.g.
there will always be fewer `TRANSFER_READ_#N` variables than `VAL_#N`).
The fallback to `VAL_N` preserves compatibility for unknown ops.
Commit: 0fc05aa1c6d76a1830f2cf9227e15b168ccc1c08
https://github.com/llvm/llvm-project/commit/0fc05aa1c6d76a1830f2cf9227e15b168ccc1c08
Author: Christian Clauss <cclauss at me.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M bolt/docs/BinaryAnalysis.md
M bolt/docs/CommandLineArgumentReference.md
M bolt/docs/RuntimeLibrary.md
M bolt/docs/doxygen.cfg.in
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/DebugNames.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/FrameAnalysis.h
M bolt/include/bolt/Passes/LongJmp.h
M bolt/include/bolt/Passes/ProfileQualityStats.h
M bolt/include/bolt/Passes/ReorderAlgorithm.h
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/BinaryFunctionCallGraph.cpp
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/DebugNames.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/RegReAssign.cpp
M bolt/lib/Passes/SplitFunctions.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Rewrite/BuildIDRewriter.cpp
M bolt/lib/Rewrite/DWARFRewriter.cpp
M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/hugify.cpp
M bolt/runtime/instr.cpp
M bolt/runtime/sys_aarch64.h
M bolt/runtime/sys_riscv64.h
M bolt/runtime/sys_x86_64.h
M bolt/test/AArch64/constant-island-alignment.s
M bolt/test/AArch64/ifunc.test
M bolt/test/X86/cdsplit-call-scale.s
M bolt/test/X86/dwarf5-two-cu-str-offset-table.test
M bolt/test/X86/dwarf5-type-unit-no-cu-str-offset-table.test
M bolt/test/X86/jt-symbol-disambiguation-3.s
M bolt/test/X86/split-landing-pad.s
M bolt/test/runtime/X86/asm-dump.c
M bolt/test/runtime/wait_file.sh
M bolt/utils/bughunter.sh
Log Message:
-----------
[bolt] Fix typos discovered by codespell (#124726)
https://github.com/codespell-project/codespell
```bash
codespell bolt --skip="*.yaml,Maintainers.txt" --write-changes \
--ignore-words-list=acount,alledges,ans,archtype,defin,iself,mis,mmaped,othere,outweight,vas
```
Commit: 145f21cfe3ca59fffea4840189b672a26f698250
https://github.com/llvm/llvm-project/commit/145f21cfe3ca59fffea4840189b672a26f698250
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M .github/workflows/pr-code-format.yml
Log Message:
-----------
[Github] Make pr-code-format.yml use ci-*-format container (#163044)
This allows us to not spend 60-90s per job installing all of the tools
as they are prebuilt into the container.
Commit: 0832f1afe99b7c87a7a92b5c0600380b6defeebe
https://github.com/llvm/llvm-project/commit/0832f1afe99b7c87a7a92b5c0600380b6defeebe
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
M flang/include/flang/Optimizer/Support/Utils.h
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
M flang/lib/Optimizer/Support/Utils.cpp
M flang/test/Lower/OpenACC/acc-firstprivate-derived-allocatable-component.f90
M flang/test/Lower/OpenACC/acc-private.f90
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
Log Message:
-----------
[flang][OpenACC] generate Destroy region to free memory of private and firstprivate if needed (#162702)
This patch extends the MappableTypeInterface to:
- allow genPrivateInit to indicate that a Destroy region will be needed.
- add genPrivateDestroy to generate the destruction code
- Implement both interfaces in FIR
- Update OpenACC lowering to generate the Destroy region when needed
using those interfaces.
Commit: 83ac8084385aa8b08bb9050a16add6c44432e8f1
https://github.com/llvm/llvm-project/commit/83ac8084385aa8b08bb9050a16add6c44432e8f1
Author: Mahesh-Attarde <mahesh.attarde at intel.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
M llvm/test/CodeGen/X86/isel-fpclass.ll
Log Message:
-----------
[X86][GlobalIsel] Support G_IS_FPCLASS (#162232)
Some of dependency opcodes for G_IS_FPCLASS are now supported. This
patch adds lowering for G_IS_FPCLASS.
Test is updated for GISEL Run separately [Test
PR] #160741.
Commit: 7e59abd079cb2eb9fbce3106eb285abf40561748
https://github.com/llvm/llvm-project/commit/7e59abd079cb2eb9fbce3106eb285abf40561748
Author: Sirui Mu <msrlancern at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/atomic.c
M clang/test/CIR/IR/atomic.cir
Log Message:
-----------
[CIR][NFC] Update existing atomic ops to match assembly conventions (#161543)
This patch updates the definitions of `cir.atomic.xchg` and
`cir.atomic.cmpxchg` to make them follow the established CIR assembly
conventions. Some other minor changes are also made along the way:
- The verifier for `cir.atomic.cmpxchg` is now fully declared in
TableGen.
- The `Op` suffix is appended to `CIR_AtomicXchg` and
`CIR_AtomicCmpXchg` to follow the naming conventions for TableGen
operation records.
Commit: b110b7d30ac1ec996f2de39f1baddb15e654b5ab
https://github.com/llvm/llvm-project/commit/b110b7d30ac1ec996f2de39f1baddb15e654b5ab
Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
Date: 2025-10-14 (Tue, 14 Oct 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/lib/Headers/avx512ifmaintrin.h
M clang/lib/Headers/avx512ifmavlintrin.h
M clang/lib/Headers/avxifmaintrin.h
M clang/test/CodeGen/X86/avx512ifma-builtins.c
M clang/test/CodeGen/X86/avx512ifmavl-builtins.c
M clang/test/CodeGen/X86/avxifma-builtins.c
Log Message:
-----------
[X86][Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - Allow AVX/AVX512 IFMA madd52 intrinsics to be used in constexpr (#161056)
Resolves #160498
Commit: 45495b5b5da551f7e4b5c466402ef07fa678e664
https://github.com/llvm/llvm-project/commit/45495b5b5da551f7e4b5c466402ef07fa678e664
Author: manik-muk <134753557+manik-muk at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/2007-08-09-IllegalX86-64Asm.ll
A llvm/test/CodeGen/X86/pr160612.ll
M llvm/test/CodeGen/X86/x86-shrink-wrap-unwind.ll
Log Message:
-----------
[X86] logical AND and OR in if-conditionals can turn to multiple branch instructions (#162041)
Addresses #160612
Commit: cc6d4d55727948d65ad07e98de5b2eecef704a88
https://github.com/llvm/llvm-project/commit/cc6d4d55727948d65ad07e98de5b2eecef704a88
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/include/clang/AST/OpenACCClause.h
M clang/lib/AST/OpenACCClause.cpp
Log Message:
-----------
[OpenACC][NFC] Simplify Reduction Recipe Storage (#163393)
The inheritence link between the Reduction Recipe and the version with
storage made it overly complicated of an implementation for near zero
gain. This patch removes that link, and uses the private constructor of
the non-storage version to ensure only the 'right' ones get created in
the right place.
Commit: 07e4907319897406ea2630dd47994f69c03a62b4
https://github.com/llvm/llvm-project/commit/07e4907319897406ea2630dd47994f69c03a62b4
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang-tools-extra/clangd/FindTarget.cpp
Log Message:
-----------
[clangd] NFC: FindTarget code cleanup post #163206
Commit: aa8499863ad23350da0912d99d189f306d0ea139
https://github.com/llvm/llvm-project/commit/aa8499863ad23350da0912d99d189f306d0ea139
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A mlir/include/mlir/Analysis/DataFlow/StridedMetadataRangeAnalysis.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRef.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/CMakeLists.txt
M mlir/include/mlir/Interfaces/InferIntRangeInterface.h
A mlir/include/mlir/Interfaces/InferStridedMetadataInterface.h
A mlir/include/mlir/Interfaces/InferStridedMetadataInterface.td
M mlir/lib/Analysis/CMakeLists.txt
A mlir/lib/Analysis/DataFlow/StridedMetadataRangeAnalysis.cpp
M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/InferIntRangeInterface.cpp
A mlir/lib/Interfaces/InferStridedMetadataInterface.cpp
A mlir/test/Analysis/DataFlow/test-strided-metadata-range-analysis.mlir
M mlir/test/lib/Analysis/CMakeLists.txt
A mlir/test/lib/Analysis/DataFlow/TestStridedMetadataRangeAnalysis.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
[mlir] Add strided metadata range dataflow analysis (#161280)
Introduces a dataflow analysis for tracking offset, size, and stride
ranges of operations.
Inference of the metadata is accomplished through the implementation of
the interface
`InferStridedMetadataOpInterface`.
To keep the size of the patch small, this patch only implements the
interface for the
`memref.subview` operation. It's future work to add more operations.
Example:
```mlir
func.func @memref_subview(%arg0: memref<8x16x4xf32, strided<[64, 4, 1]>>) {
%c0 = arith.constant 0 : index
%c1 = arith.constant 1 : index
%c2 = arith.constant 2 : index
%0 = test.with_bounds {smax = 13 : index, smin = 11 : index, umax = 13 : index, umin = 11 : index} : index
%1 = test.with_bounds {smax = 7 : index, smin = 5 : index, umax = 7 : index, umin = 5 : index} : index
%subview = memref.subview %arg0[%c0, %c0, %c1] [%1, %0, %c2] [%c1, %c1, %c1] : memref<8x16x4xf32, strided<[64, 4, 1]>> to memref<?x?x?xf32, strided<[?, ?, ?], offset: ?>>
return
}
```
Applying `mlir-opt --test-strided-metadata-range-analysis` prints:
```
Op: %subview = memref.subview %arg0[%c0, %c0, %c1] [%1, %0, %c2] [%c1, %c1, %c1] : memref<8x16x4xf32, strided<[64, 4, 1]>> to memref<?x?x?xf32, strided<[?, ?, ?], offset: ?>>
result[0]: strided_metadata<offset = [{unsigned : [1, 1] signed : [1, 1]}], sizes = [{unsigned : [5, 7] signed : [5, 7]}, {unsigned : [11, 13] signed : [11, 13]}, {unsigned : [2, 2] signed : [2, 2]}], strides = [{unsigned : [64, 64] signed : [64, 64]}, {unsigned : [4, 4] signed : [4, 4]}, {unsigned : [1, 1] signed : [1, 1]}]>
```
---------
Signed-off-by: Fabian Mora <fabian.mora-cordero at amd.com>
Commit: b604562cfa056af9bec31ea27761cd19b809411d
https://github.com/llvm/llvm-project/commit/b604562cfa056af9bec31ea27761cd19b809411d
Author: Erich Keane <ekeane at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
Log Message:
-----------
[OpenACC][CIR] Implement 'reduction' combiner lowering for 5 ops (#162906)
Following on the Sema changes, this does the lowering for all of the
operators that can be done as a compound operator. Lowering is very
simply looping through the objects based on array/compound/etc, and
doing a call to the operation.
Commit: e1daa3ff4f625226476f349b418bc82f547e6115
https://github.com/llvm/llvm-project/commit/e1daa3ff4f625226476f349b418bc82f547e6115
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/CAS/CASID.h
Log Message:
-----------
[CAS] Call hash_combine_range with a range (NFC) (#163327)
We can pass a range directly to hash_combine_range these days.
Commit: 324f8d09f8cc676eb8d2faeae9a96c7e0957a3fb
https://github.com/llvm/llvm-project/commit/324f8d09f8cc676eb8d2faeae9a96c7e0957a3fb
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/Format/FormatToken.cpp
Log Message:
-----------
[clang-format] Use llvm::binary_search (NFC) (#163328)
We can directly pass a range to llvm::binary_search.
Commit: 6ca1f3b14e437e748e4f5ccb0e12acca1b210605
https://github.com/llvm/llvm-project/commit/6ca1f3b14e437e748e4f5ccb0e12acca1b210605
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/lib/Target/Wasm/TranslateFromWasm.cpp
Log Message:
-----------
[mlir] Use llvm::fill (NFC) (#163329)
We can pass a range directly to llvm::fill.
Commit: 358513f662773754ce567891b8b9a60f1ae29ae0
https://github.com/llvm/llvm-project/commit/358513f662773754ce567891b8b9a60f1ae29ae0
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/LiveIntervals.h
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
M llvm/lib/Support/TextEncoding.cpp
M llvm/lib/Support/UnicodeNameToCodepoint.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/CSKY/Disassembler/CSKYDisassembler.cpp
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/unittests/ADT/TypeTraitsTest.cpp
Log Message:
-----------
[llvm] Replace LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]] (NFC) (#163330)
This patch replaces LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]] where
we do not need to move the position of [[maybe_unused]] within
declarations.
Notes:
- [[maybe_unused]] is a standard feature of C++17.
- The compiler is far more lenient about the placement of
__attribute__((unused)) than that of [[maybe_unused]].
I'll follow up with another patch to finish up the rest.
Commit: bc0c232a2acf784072d53648ba0c617e4c990fee
https://github.com/llvm/llvm-project/commit/bc0c232a2acf784072d53648ba0c617e4c990fee
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
Log Message:
-----------
[llvm] Proofread AMDGPUUsage.rst (#163331)
Commit: 8c6b499f066e2b39da1936e0f9ef994fcf0884b3
https://github.com/llvm/llvm-project/commit/8c6b499f066e2b39da1936e0f9ef994fcf0884b3
Author: Jay Foad <jay.foad at amd.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
Log Message:
-----------
[AMDGPU] Simplify vcc handling in copyPhysReg. NFC. (#163340)
Commit: 2d027260b0f8ef9b2e0b2fc8c254b2b8da0ae4f7
https://github.com/llvm/llvm-project/commit/2d027260b0f8ef9b2e0b2fc8c254b2b8da0ae4f7
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/ptrtoint.ll
M llvm/test/Transforms/IndVarSimplify/pointer-loop-guards.ll
M llvm/test/Transforms/LoopUnroll/scevunroll.ll
Log Message:
-----------
[SCEV] Collect guard info for ICMP NE w/o constants. (#160500)
When collecting information from loop guards, use UMax(1, %b - %a) for
ICMP NE %a, %b, if neither are constant.
This improves results in some cases, and will be even more useful
together with
* https://github.com/llvm/llvm-project/pull/160012
* https://github.com/llvm/llvm-project/pull/159942
https://alive2.llvm.org/ce/z/YyBvoT
PR: https://github.com/llvm/llvm-project/pull/160500
Commit: 4c0692edb445c5d90a189f5c12e5433b8e84a713
https://github.com/llvm/llvm-project/commit/4c0692edb445c5d90a189f5c12e5433b8e84a713
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
R mlir/include/mlir/Analysis/DataFlow/StridedMetadataRangeAnalysis.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRef.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/CMakeLists.txt
M mlir/include/mlir/Interfaces/InferIntRangeInterface.h
R mlir/include/mlir/Interfaces/InferStridedMetadataInterface.h
R mlir/include/mlir/Interfaces/InferStridedMetadataInterface.td
M mlir/lib/Analysis/CMakeLists.txt
R mlir/lib/Analysis/DataFlow/StridedMetadataRangeAnalysis.cpp
M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/InferIntRangeInterface.cpp
R mlir/lib/Interfaces/InferStridedMetadataInterface.cpp
R mlir/test/Analysis/DataFlow/test-strided-metadata-range-analysis.mlir
M mlir/test/lib/Analysis/CMakeLists.txt
R mlir/test/lib/Analysis/DataFlow/TestStridedMetadataRangeAnalysis.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
Revert "[mlir] Add strided metadata range dataflow analysis" (#163403)
Reverts llvm/llvm-project#161280
Commit: 4a35c4d38af4844f26d944047ca1f6aefd6a0eff
https://github.com/llvm/llvm-project/commit/4a35c4d38af4844f26d944047ca1f6aefd6a0eff
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M offload/liboffload/API/Common.td
M offload/liboffload/src/OffloadImpl.cpp
Log Message:
-----------
[Offload] Lazily initialize platforms in the Offloading API (#163272)
Summary:
The Offloading library wraps around the underlying plugins. The problem
is that we currently initialize all plugins we find, even if they are
not needed for the program. This is very expensive for trivial uses, as
fully heterogenous usage is quite rare. In practice this means that you
will always pay a 200 ms penalty for having CUDA installed.
This patch changes the behavior to provide accessors into the plugins
and devices that allows them to be initialized lazily. We use a
once_flag, this should properly take a fast-path check while still
blocking on concurrent use.
Making full use of this will require a way to filter platforms more
specifically. I'm thinking of what this would look like as an API.
I'm thinking that we either have an extra iterate function that takes a
callback on the platform, or we just provide a helper to find all the
devices that can run a given image. Maybe both?
Fixes: https://github.com/llvm/llvm-project/issues/159636
Commit: e8ee944a4f2e9f70c8b49452878c2ebe038a8da4
https://github.com/llvm/llvm-project/commit/e8ee944a4f2e9f70c8b49452878c2ebe038a8da4
Author: David Spickett <david.spickett at linaro.org>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/docs/GettingStartedVS.rst
Log Message:
-----------
[llvm][docs] Note Windows on Arm setting in Visual Studio guide (#147710)
As it very specifically wants ARM64 not what you'd guess which is arm64.
This guide talks about VS2019 that probably has little or no Windows on
Arm support, but I don't have the bandwidth to follow the whole thing
and update it right now.
I think this small change will be enough for most people who download
the latest Visual Studio on a Windows on Arm machine.
https://cmake.org/cmake/help/latest/variable/CMAKE_GENERATOR_TOOLSET.html
https://cmake.org/cmake/help/latest/variable/CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE.html#variable:CMAKE_VS_PLATFORM_TOOLSET_HOST_ARCHITECTURE
"CMake provides the selected toolchain architecture preference in this
variable (x86, x64, ARM64 or empty)."
Commit: eb76690ea17d7c03b5893a68e306760a79743dac
https://github.com/llvm/llvm-project/commit/eb76690ea17d7c03b5893a68e306760a79743dac
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/Decl.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
Log Message:
-----------
[Clang] Destructors should not be immediate-escalating (#163390)
We allow destructors to become immediate functions, which makes little
sense as the standard disallow
consteval destructors
Related CWG issue https://github.com/cplusplus/CWG/issues/780
Fixes #109096
Commit: da5fb5e964c213d0ec834ad0b560a523a57ce5cc
https://github.com/llvm/llvm-project/commit/da5fb5e964c213d0ec834ad0b560a523a57ce5cc
Author: Chris B <chris.bieneman at me.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/ObjCopy/ConfigManager.cpp
M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
A llvm/test/tools/llvm-objcopy/DXContainer/dump-section-errors.yaml
A llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
Log Message:
-----------
[ObjCopy][DX] Support for -dump-section flag (#159999)
This adds support for the `-dump-section=<section>=<file>` flag for the
DXContainer file format. This flag dumps the contents of a named section
to the specified file.
This flag is particularly handy for ripping DXIL bitcode out of the
object files so that we can use LLVM tools to inspect and operate on the
bitcode. To facilitate that workflow this flag also strips the program
headers from parts containing DXIL so that the resulting file is a valid
bitcode file.
---------
Co-authored-by: Justin Bogner <mail at justinbogner.com>
Commit: f973d77f9cf26d736b24f7c83895dc08aa92edd4
https://github.com/llvm/llvm-project/commit/f973d77f9cf26d736b24f7c83895dc08aa92edd4
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/FlattenCFGPass.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in FlattenCFGPass.cpp (#163304)
Commit: 5fa41f0064b39706480d928640e0e352b87c6049
https://github.com/llvm/llvm-project/commit/5fa41f0064b39706480d928640e0e352b87c6049
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/phi-and-select.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[sroa][profcheck] Propagate `select` profile (#163317)
Commit: 932a7d685f1a683cdec903ecfe7ee28622a54b1e
https://github.com/llvm/llvm-project/commit/932a7d685f1a683cdec903ecfe7ee28622a54b1e
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/StringSwitch.h
Log Message:
-----------
[ADT] Clean up StringSwitch class. NFC. (#163396)
Commit: b2797d9b8236a40ee30d6daf4e603a82da9a94d4
https://github.com/llvm/llvm-project/commit/b2797d9b8236a40ee30d6daf4e603a82da9a94d4
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A mlir/include/mlir/Analysis/DataFlow/StridedMetadataRangeAnalysis.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRef.h
M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
M mlir/include/mlir/Interfaces/CMakeLists.txt
M mlir/include/mlir/Interfaces/InferIntRangeInterface.h
A mlir/include/mlir/Interfaces/InferStridedMetadataInterface.h
A mlir/include/mlir/Interfaces/InferStridedMetadataInterface.td
M mlir/lib/Analysis/CMakeLists.txt
A mlir/lib/Analysis/DataFlow/StridedMetadataRangeAnalysis.cpp
M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
M mlir/lib/Interfaces/CMakeLists.txt
M mlir/lib/Interfaces/InferIntRangeInterface.cpp
A mlir/lib/Interfaces/InferStridedMetadataInterface.cpp
A mlir/test/Analysis/DataFlow/test-strided-metadata-range-analysis.mlir
M mlir/test/lib/Analysis/CMakeLists.txt
A mlir/test/lib/Analysis/DataFlow/TestStridedMetadataRangeAnalysis.cpp
M mlir/tools/mlir-opt/mlir-opt.cpp
Log Message:
-----------
Reland "[mlir] Add strided metadata range dataflow analysis" (#163403)" (#163408)
This relands commit aa8499863ad23350da0912d99d189f306d0ea139. That
commit was originally reverted because it caused failures in shared lib
builds due to missing link dependencies. This patch relands the commit
with the missing libs added.
Signed-off-by: Fabian Mora <fabian.mora-cordero at amd.com>
Commit: f4359301c033694d36865c7560714164d2050240
https://github.com/llvm/llvm-project/commit/f4359301c033694d36865c7560714164d2050240
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/setcc-wide-types.ll
Log Message:
-----------
[X86] combineVectorSizedSetCCEquality - allow 256/512-bit vector icmp_ne/eq zero comparisons (#163373)
We avoid creating vector movmsk/ptest comparisons with zero if we can
just use scalar OR instead, but this doesn't make sense for 256-bit or
larger vectors which creates a more complex OR chain.
This more closely matches what we do for icmp_ne/eq against non-zero
values.
I'm hoping that we can eventually allow even larger vectors to be
handled with a OR/AND chains - but for now this just allows us to handle
legal 256/512-bit vector widths.
Commit: e156d1ee6cc3ce75f9da70ba0aab1d91401c6e47
https://github.com/llvm/llvm-project/commit/e156d1ee6cc3ce75f9da70ba0aab1d91401c6e47
Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
Log Message:
-----------
[VPlan] Strip dead code, cleanup includes in header (NFC) (#162641)
Commit: 66bf252707d79be4bb1d61e1b2ff6dc71a4ccced
https://github.com/llvm/llvm-project/commit/66bf252707d79be4bb1d61e1b2ff6dc71a4ccced
Author: Guray Ozen <guray.ozen at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/include/mlir/IR/Remarks.h
M mlir/include/mlir/Remark/RemarkStreamer.h
M mlir/include/mlir/Tools/mlir-opt/MlirOptMain.h
M mlir/lib/IR/MLIRContext.cpp
M mlir/lib/IR/Remarks.cpp
M mlir/lib/Remark/RemarkStreamer.cpp
M mlir/lib/Tools/mlir-opt/MlirOptMain.cpp
A mlir/test/Pass/remark-final.mlir
M mlir/test/lib/Pass/TestRemarksPass.cpp
M mlir/unittests/IR/RemarkTest.cpp
Log Message:
-----------
[MLIR] Implement remark emitting policies in MLIR (#161202)
This update introduces two new remark emitting policies:
1. `RemarkEmittingPolicyAll`, which emits all remarks,
2. `RemarkEmittingPolicyFinal`, which only emits final remarks after
processing.
The `RemarkEngine` is modified to support these policies, allowing for
more flexible remark handling based on user configuration.
PR also adds flag to `mlir-opt`
```
--remark-policy=<value> - Specify the policy for remark output.
=all - Print all remarks
=final - Print final remarks
```
Relanding https://github.com/llvm/llvm-project/pull/160526
This PR requires RemarkEngine to be finalize manually. So here is usage:
```
MLIRContext ctx;
ctx.setRemarkEngine(...)
...
ctx.getRemarkEngine().shutdown() <-- PR adds this, it is required when the emission policy is final
```
Commit: 3f9e712402fea234bdd871948decd7ef394d0538
https://github.com/llvm/llvm-project/commit/3f9e712402fea234bdd871948decd7ef394d0538
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/include/clang/Sema/Template.h
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Drop unrelated template arguments in substituted parameter mapping (#163221)
The unused template arguments living in different levels would confuse
the substitution otherwise.
This is a trunk regression, so no release note.
Fixes https://github.com/llvm/llvm-project/issues/163057
Commit: 55d4d2ee0d92599cd1f19aa700b3ad2de5d09c85
https://github.com/llvm/llvm-project/commit/55d4d2ee0d92599cd1f19aa700b3ad2de5d09c85
Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/test/Integration/GPU/SPIRV/simple_add.mlir
Log Message:
-----------
[mlir][spirv] Fix test (NFC) (#163413)
This test had a CHECK-RAW command. The intention behind this command
appears to be to avoid using the regular expression matching
capabilities. However, this was interpretted as a comment by FileCheck.
In order to check for literal strings the {LITERAL} modifier should be
used.
https://llvm.org/docs/CommandGuide/FileCheck.html#directive-modifiers
Commit: 4f75877cc18ece48937e7fff40301f75c7197192
https://github.com/llvm/llvm-project/commit/4f75877cc18ece48937e7fff40301f75c7197192
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
Log Message:
-----------
[X86] masked_gather_scatter.ll - add test coverage for #163023 (#163411)
Commit: 6dcdf270566b746186c78c28beb0a16371f0542b
https://github.com/llvm/llvm-project/commit/6dcdf270566b746186c78c28beb0a16371f0542b
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
M llvm/test/Transforms/InstCombine/select-safe-impliedcond-transforms.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[InstCombine] Propagate Profile when Folding Implied Conditionals (#163412)
In the case where we have a conditional that is implied by a previous
conditional (like x < 10 => x < 20 in a select), we can simply propagate
the profile information along the select.
Commit: 1b74b7fb389ca8d5f7324871a446216225faa2fa
https://github.com/llvm/llvm-project/commit/1b74b7fb389ca8d5f7324871a446216225faa2fa
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M libcxx/test/benchmarks/bitset.bench.cpp
Log Message:
-----------
[libc++] Rename bitset benchmark to be self-descriptive (#162139)
It's important for the name of each benchmark to fully describe the
benchmark since we aggregate the results of all benchmarks in a single
.lnt file for analysis.
Commit: 3b93af5b30c3fea3f31f3cdf4e3775b3e0a5ebd3
https://github.com/llvm/llvm-project/commit/3b93af5b30c3fea3f31f3cdf4e3775b3e0a5ebd3
Author: Utkarsh Saxena <usx at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
Log Message:
-----------
[LifetimeSafety] Fix a crash caused by nullptr to llvm::isa
Commit: f275d2b05777edf00779963e2519d231afb33b4a
https://github.com/llvm/llvm-project/commit/f275d2b05777edf00779963e2519d231afb33b4a
Author: Usman Nadeem <mnadeem at quicinc.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll
Log Message:
-----------
[DFAJumpThreading] Don't insert existing edge to DomTree while unfolding (#163296)
The edge `StartBlock -> EndBlock` already exists before unfolding.
The instructions for `applyUpdates()` say that you are supposed not
to insert an existing edge.
Fixes issues reported by @mikaelholmen in
https://github.com/llvm/llvm-project/pull/162802
Commit: 242411880a9e16b3c4df32870bffc6212def0205
https://github.com/llvm/llvm-project/commit/242411880a9e16b3c4df32870bffc6212def0205
Author: aokblast <aokblast at FreeBSD.org>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/source/Host/freebsd/Host.cpp
Log Message:
-----------
[LLDB][FreeBSD] Reorder header for Host.cpp (#163359)
As per requirement in https://github.com/llvm/llvm-project/pull/162811.
Commit: 3901f130e3e8ca2489d73476fa00aec21f0cdfc9
https://github.com/llvm/llvm-project/commit/3901f130e3e8ca2489d73476fa00aec21f0cdfc9
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/phi-gep.ll
M llvm/test/Transforms/SROA/select-gep.ll
Log Message:
-----------
[sroa][profcheck] Propagate profile in `unfoldGEPSelect` (#163318)
Also applied `ProfcheckDisableMetadataFixes` to previous (PR #163317) PR.
Commit: 04d2b5da1ab326fb3fd5220dfefc22a8917c4f0c
https://github.com/llvm/llvm-project/commit/04d2b5da1ab326fb3fd5220dfefc22a8917c4f0c
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
Log Message:
-----------
[lldb][DataFormatter][NFC] LibCxxUnorderedMap: remove unused variable (#163226)
Unused since its introduction in
`e2e220a805b143d9bc8544abedff30204dcf6629`.
Commit: 2e11538ab9d81d36257cdcfa37a8cef250946742
https://github.com/llvm/llvm-project/commit/2e11538ab9d81d36257cdcfa37a8cef250946742
Author: lonely eagle <2020382038 at qq.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
Log Message:
-----------
[mlir] Use isPure and skipRegions to print region op (NFC) (#163422)
Commit: 5eeae08f7e05524c24a84b8c29304f673e845c0b
https://github.com/llvm/llvm-project/commit/5eeae08f7e05524c24a84b8c29304f673e845c0b
Author: wdx727 <wdxpjpj at foxmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/ObjectYAML/ELFYAML.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Object/ELF.cpp
M llvm/lib/ObjectYAML/ELFEmitter.cpp
M llvm/lib/ObjectYAML/ELFYAML.cpp
M llvm/test/tools/llvm-readobj/ELF/bb-addr-map.test
M llvm/test/tools/obj2yaml/ELF/bb-addr-map.yaml
M llvm/test/tools/yaml2obj/ELF/bb-addr-map.yaml
M llvm/tools/llvm-readobj/ELFDumper.cpp
M llvm/tools/obj2yaml/elf2yaml.cpp
M llvm/unittests/Object/ELFObjectFileTest.cpp
M llvm/unittests/Object/ELFTypesTest.cpp
Log Message:
-----------
Adding Matching and Inference Functionality to Propeller (#160706)
We have optimized the implementation of introducing the "matching and
inference" technique into Propeller. In this new implementation, we have
made every effort to avoid introducing new compilation parameters while
ensuring compatibility with Propeller's current usage. Instead of
creating a new profile format, we reused the existing one employed by
Propeller. This new implementation is fully compatible with Propeller's
current usage patterns and reduces the amount of code changes. For
detailed information, please refer to the following RFC:
https://discourse.llvm.org/t/rfc-adding-matching-and-inference-functionality-to-propeller/86238.
We plan to submit the relevant changes in several pull requests (PRs).
The current one is the first PR, which adds the basic block hash to the
SHT_LLVM_BB_ADDR_MAP section.
co-authors: lifengxiang1025 <lifengxiang at kuaishou.com>; zcfh
<wuminghui03 at kuaishou.com>
Co-authored-by: lifengxiang1025 <lifengxiang at kuaishou.com>
Co-authored-by: zcfh <wuminghui03 at kuaishou.com>
Co-authored-by: Rahman Lavaee <rahmanl at google.com>
Commit: 484284ef5e240dbe5dfd6ba4ba5003363d19ca09
https://github.com/llvm/llvm-project/commit/484284ef5e240dbe5dfd6ba4ba5003363d19ca09
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
A mlir/test/Dialect/OpenACC/recipe-populate-firstprivate.mlir
A mlir/test/Dialect/OpenACC/recipe-populate-private.mlir
M mlir/test/lib/Dialect/OpenACC/CMakeLists.txt
M mlir/test/lib/Dialect/OpenACC/TestOpenACC.cpp
M mlir/test/lib/Dialect/OpenACC/TestPointerLikeTypeInterface.cpp
A mlir/test/lib/Dialect/OpenACC/TestRecipePopulate.cpp
Log Message:
-----------
[mlir][acc] Introduce createAndPopulate for recipe creation (#162917)
Private and firstprivate recipes can now be created and populated
through the createAndPopulate method. The populating of recipe bodies is
done through using the PointerLikeType and MappableType interfaces (with
MappableType support still in progress).
The existing create() API remains available for cases where dialects
need manual recipe population (e.g., for frontend-specific semantics
like default value initialization or constructor calls).
Testing exercises the new API with memref types.
Commit: 225ee03f41107449d270014676fd9842bd7e9266
https://github.com/llvm/llvm-project/commit/225ee03f41107449d270014676fd9842bd7e9266
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
Log Message:
-----------
[DAG] foldCONCAT_VECTORS - fold concat_vectors(v1xX insertelt(v,e,0), ...) -> build_vector(e,...) (#163420)
Extend the foldCONCAT_VECTORS BUILD_VECTOR construction to handle cases where the scalars have come from <1 x X> vector insertions
Fixes #163023
Commit: 227bc5786fbd4111c7ec2ed2874be16158c452e4
https://github.com/llvm/llvm-project/commit/227bc5786fbd4111c7ec2ed2874be16158c452e4
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M offload/liboffload/src/OffloadImpl.cpp
Log Message:
-----------
Revert "[Offload] Lazily initialize platforms in the Offloading API" (#163272)
Summary:
This causes issues with CUDA's teardown order when the init is separated
from the total init scope.
Commit: f5ca0bcbc8c74721e2c079f216da88c6d8888a1a
https://github.com/llvm/llvm-project/commit/f5ca0bcbc8c74721e2c079f216da88c6d8888a1a
Author: Chris B <chris.bieneman at me.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
Log Message:
-----------
[objdump] Fix dxcontainer tests on big endian host (#163427)
This fixes a build regression on big endian systems introduced in
#159999.
Commit: 4e3b7df47608c02f3b07845bd414a61a991348a7
https://github.com/llvm/llvm-project/commit/4e3b7df47608c02f3b07845bd414a61a991348a7
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/BinaryFormat/ELFRelocs/AArch64.def
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h
M llvm/test/MC/AArch64/data-directive-specifier.s
Log Message:
-----------
MC: Introduce R_AARCH64_FUNCINIT64 relocation type.
R_AARCH64_FUNCINIT64 is a dynamic relocation type for relocating
word-sized data in the output file using the return value of
a function. An R_AARCH64_FUNCINIT64 shall be relocated as an
R_AARCH64_IRELATIVE with the target symbol address if the target
symbol is non-preemptible, and it shall be a usage error to relocate an
R_AARCH64_FUNCINIT64 with a preemptible or STT_GNU_IFUNC target symbol.
The initial use case for this relocation type shall be for emitting
global variable field initializers for structure protection. With
structure protection, the relocation value computation is tied to the
compiler implementation in such a way that it would not be reasonable to
define a relocation type for it (for example, it may involve computing
a hash using a compiler-determined algorithm), hence the need for the
computation to be implemented as code in the binary.
Part of the AArch64 psABI extension:
https://github.com/ARM-software/abi-aa/issues/340
Reviewers: smithp35
Reviewed By: smithp35
Pull Request: https://github.com/llvm/llvm-project/pull/133531
Commit: fc2afbda360478904f3630c36ec65dc8ee3e6a60
https://github.com/llvm/llvm-project/commit/fc2afbda360478904f3630c36ec65dc8ee3e6a60
Author: Valery Pykhtin <valery.pykhtin at amd.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/StructurizeCFG.cpp
Log Message:
-----------
[AMDGPU] Improve StructurizeCFG pass performance by using SSAUpdaterBulk. (#150937)
SSAUpdaterBulk replaces legacy SSAUpdater.
Commit: df258c07c313bae1648f309ec73067ef0ff2e536
https://github.com/llvm/llvm-project/commit/df258c07c313bae1648f309ec73067ef0ff2e536
Author: Chris Bieneman <chris.bieneman at me.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
Log Message:
-----------
[obdjum] Fix broken test on some *nix bots
This test is failing on some *nix base systems.
../llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
Commit: d6b22a347f813cf4a9832627323a43074f57bbcf
https://github.com/llvm/llvm-project/commit/d6b22a347f813cf4a9832627323a43074f57bbcf
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M .github/workflows/containers/github-action-ci-windows/Dockerfile
M .github/workflows/containers/github-action-ci/Dockerfile
M libcxx/utils/ci/docker-compose.yml
Log Message:
-----------
[Github] Bump Actions Runner to v2.329.0
Bump the runner version to keep things up to date and ensure we do not
run past the runner support time horizon.
Commit: b358af10a7b783e771a1e5ad6ded3e3535648b06
https://github.com/llvm/llvm-project/commit/b358af10a7b783e771a1e5ad6ded3e3535648b06
Author: Daniel Sanders <daniel_l_sanders at apple.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
Log Message:
-----------
[lldb] Add type hints to gdbclientutils.py and use abstract base class (#162172)
Everything in this commit should be python 3.8 compatible which has
required using older styles of type hints (e.g. `Optional[T]` rather
than 3.10's `T | None` and `List[T]` rather than 3.9's `list[T]`. There
are some python 3.9 type hints in other files which have not been
changed by this commit.
Issues:
qEcho() is passed an argument by the callers that the function didn't
have Several functions in the base class would silently do nothing if
not overriden. These now use `@abstractmethod` to require overrides
sendall() had inconsistent return types between overrides
Compatibility was checked with:
```
uvx vermin -t 3.8 $(find lldb/packages/Python -name '*.py')
```
Compability of the type hints was checked with:
```
uvx vermin -t 3.8 --eval-annotations $(find lldb/packages/Python -name '*.py')
```
and type hint correctness was checked with
```
uvx pyright lldb/packages/Python/lldbsuite/test/gdbclientutils.py
```
Commit: b6b426257509c147c53a74c138eb87b48630579f
https://github.com/llvm/llvm-project/commit/b6b426257509c147c53a74c138eb87b48630579f
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/test/CodeGen/DirectX/ContainerData/PSVResources.ll
Log Message:
-----------
[DirectX] Fix DXIL container generating invalid PSV0 part for unbounded resources (#163287)
When calculating the upper bound for resource binding to be stored in the PSV0 part of the DXIL container, the compiler needs to take into account that the resource range could be _unbounded_, which is indicated by the binding size being `UINT32_MAX`.
Fixes [#159679](https://github.com/llvm/llvm-project/issues/159679)
Commit: 3e0bf3d65e040058d99c285d6084c488789c3f82
https://github.com/llvm/llvm-project/commit/3e0bf3d65e040058d99c285d6084c488789c3f82
Author: Greg Clayton <gclayton at fb.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/DebugInfo/GSYM/DwarfTransformer.h
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
M llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
Log Message:
-----------
Don't warn about missing DWO files when converting mach-o files. (#152598)
Apple uses the DW_AT_GNU_dwo_id for non split DWARF cases. Any compile
units with this attribute would cause many warnings to be emitted:
"warning: Unable to retrieve DWO .debug_info section for"
This patch fixes the DWARFTransformer to not look for skeleton compile
unit in mach-o based binaries and adds a unit test.
Commit: 975fba1b499422713e88cd6f374569f3bd38335e
https://github.com/llvm/llvm-project/commit/975fba1b499422713e88cd6f374569f3bd38335e
Author: Hongyu Chen <xxs_chy at outlook.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/LiveIntervals.cpp
A llvm/test/CodeGen/RISCV/rvv/regcoal-liveinterval-pruning-crash.ll
A llvm/test/CodeGen/RISCV/rvv/regcoal-liveinterval-pruning-crash.mir
Log Message:
-----------
[RegisterCoalescer] Prune live range of early-clobber from live-in (#157628)
Fixes #134424
Fixes #71023
Refer to the context of #71024, when RegisterCoalescer tries to merge
`early-clobber %1:vr = PseudoVRGATHER_VI_M1 undef %1, ...`, JoinVals
reports `CR_Replace` as the conflict with `undef` can be ignored.
However, when pruning values, we need to remove any live ranges that
overlap a `CR_Replace` resolution. `LiveIntervals::pruneValue` missed
pruning the early-clobber part of the live ranges. This patch implements
it by removing the ranges from live-in.
I am not familiar with the RegisterCoalescer component. Any advice is
appreciated.
https://github.com/llvm/llvm-project/issues/156249 seems to be related,
but not resolved with this patch. I am still investigating.
Commit: 6a7754f2acd19a8045073f7aaadc8d78fc219c7c
https://github.com/llvm/llvm-project/commit/6a7754f2acd19a8045073f7aaadc8d78fc219c7c
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/test/Fir/CUDA/cuda-code-gen.mlir
Log Message:
-----------
[flang][cuda] Set address space for constant variables (#163430)
Set the correct address space for constant variables. Address of
operation will introduce an address cast.
Commit: 3b46556cb7034409a4bb2566c6d0df7620c56bba
https://github.com/llvm/llvm-project/commit/3b46556cb7034409a4bb2566c6d0df7620c56bba
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
Log Message:
-----------
[SCEV] Use context instruction for SCEVUnknowns in getConstantMultiple. (#163260)
Follow-up to https://github.com/llvm/llvm-project/pull/160941.
Even if we don't have a context instruction for the caller, we should be
able to provide context instructions for SCEVUnknowns. Unless I am
missing something, SCEVUnknown only become available at the point their
underlying IR instruction has been defined. If it is an argument, it
should be safe to use the first instruction in the entry block or the
instruction itself if it wraps an instruction.
This allows getConstantMultiple to make better use of alignment
assumptions.
PR: https://github.com/llvm/llvm-project/pull/163260
Commit: f47b5148de3001388e802efd1f30a7e70ca62139
https://github.com/llvm/llvm-project/commit/f47b5148de3001388e802efd1f30a7e70ca62139
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #162934: MathToXeVM (#163441)
Commit: 8fb33a439381221d3081e70537fbb115c440e7f0
https://github.com/llvm/llvm-project/commit/8fb33a439381221d3081e70537fbb115c440e7f0
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/masked_gather_scatter.ll
Log Message:
-----------
[X86] masked_gather_scatter.ll - add zext test coverage for #163023 (#163435)
Commit: 43f901774529f8b86847238b60a8686831a4c7d6
https://github.com/llvm/llvm-project/commit/43f901774529f8b86847238b60a8686831a4c7d6
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/TableGen/CodeGenHelpers.h
M llvm/test/TableGen/directive1.td
M llvm/test/TableGen/directive2.td
M llvm/utils/TableGen/Basic/DirectiveEmitter.cpp
Log Message:
-----------
[NFC][TableGen] Add `IncludeGuardEmitter` to emit header include guards (#163283)
Add a RAII class `IncludeGuardEmitter` which is similar to
`IfDefEmitter` but emits header include guards and adopt it in
DirectiveEmitter.
Commit: 53575e7d3afd0f97ea7a41b5ff52fd5f48f0b777
https://github.com/llvm/llvm-project/commit/53575e7d3afd0f97ea7a41b5ff52fd5f48f0b777
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A llvm/test/Analysis/ScalarEvolution/ptrtoaddr.ll
Log Message:
-----------
[SCEV] Add initial tests for ptrtoaddr.
Add tests with ptrtoaddr instructions for
https://github.com/llvm/llvm-project/pull/158032.
Based on llvm/test/Analysis/ScalarEvolution/ptrtoint.ll.
Commit: ced01f367183520e4b1a21dadfc1c3be044f5be3
https://github.com/llvm/llvm-project/commit/ced01f367183520e4b1a21dadfc1c3be044f5be3
Author: Julian Lettner <yln at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/include/lldb/lldb-enumerations.h
M lldb/source/Commands/CommandOptionsProcessLaunch.cpp
M lldb/source/Commands/Options.td
M lldb/source/Host/macosx/objcxx/Host.mm
M lldb/test/API/macosx/mte/Makefile
M lldb/test/API/macosx/mte/TestDarwinMTE.py
Log Message:
-----------
[lldb][Darwin] Add `process launch --memory-tagging` option (#162944)
For debugging and bug-finding workflows on Darwin, support
launching processes with memory tagging for binaries that are
not entitled.
This will cause the process to behave as if the binary was entitled
with:
```
<key>com.apple.security.hardened-process.checked-allocations</key>
<true/>
```
This has no effect on hardware without MTE support.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 966dc5023813e1df6ec260cf952406691c9a22ca
https://github.com/llvm/llvm-project/commit/966dc5023813e1df6ec260cf952406691c9a22ca
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #163408: strided metadata range dataflow analysis (#163442)
Commit: 20bcf123e2db033f208462f34f63e292efbe0946
https://github.com/llvm/llvm-project/commit/20bcf123e2db033f208462f34f63e292efbe0946
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M .ci/generate_test_report_lib.py
Log Message:
-----------
[CI] Refactor generate_test_report_lib to expose more functionality
This is intended to be used in the premerge advisor. This makes it quite
a bit easier to reuse for the future script to upload failure information to
the premerge advisor.
Reviewers: DavidSpickett, cmtice
Reviewed By: DavidSpickett, cmtice
Pull Request: https://github.com/llvm/llvm-project/pull/163275
Commit: 1e6df640e2bae9e20b640bb9ebdba140ba7bc0c1
https://github.com/llvm/llvm-project/commit/1e6df640e2bae9e20b640bb9ebdba140ba7bc0c1
Author: Keshav Vinayak Jha <31160700+keshavvinayak01 at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
M mlir/test/Conversion/MathToROCDL/math-to-rocdl.mlir
Log Message:
-----------
[MLIR][ROCDL] Add math.clampf -> rocdl.fmed3 conversion (#163259)
Added Pattern for lowering `Math::ClampFOp` to `ROCDL::FMED3`.
Also added `chipset` option to `MathToRocdl` pass to check for arch
support ISA instructions
Solves [#15072](https://github.com/llvm/llvm-project/issues/157052)
Reapplies https://github.com/llvm/llvm-project/pull/160100
---------
Signed-off-by: Keshav Vinayak Jha <keshavvinayakjha at gmail.com>
Commit: e34b71e351be7fcb7b0225eea91e4a5022bce64f
https://github.com/llvm/llvm-project/commit/e34b71e351be7fcb7b0225eea91e4a5022bce64f
Author: Fabian Mora <fmora.dev at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M mlir/include/mlir/Conversion/MathToROCDL/MathToROCDL.h
M mlir/include/mlir/Conversion/Passes.td
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Conversion/MathToROCDL/MathToROCDL.cpp
M mlir/test/Conversion/MathToROCDL/math-to-rocdl.mlir
Log Message:
-----------
Revert "[MLIR][ROCDL] Add math.clampf -> rocdl.fmed3 conversion" (#163447)
Reverts llvm/llvm-project#163259. Reverting due to missing link libraries
causing failures in shared build bots.
Commit: 0e4fb17971532302ca804e55f1ef5c2f8d31a42e
https://github.com/llvm/llvm-project/commit/0e4fb17971532302ca804e55f1ef5c2f8d31a42e
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-14 (Tue, 14 Oct 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] Add support for ns_returns_autoreleased (#161236)
Recognize ns_returns_autoreleased on a function and treat its return
value as a safe pointer origin.
Commit: 5ef56f1d1538befef796b5062f06a6db44c4c121
https://github.com/llvm/llvm-project/commit/5ef56f1d1538befef796b5062f06a6db44c4c121
Author: John Harrison <harjohn at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/source/Host/windows/MainLoopWindows.cpp
Log Message:
-----------
[lldb] Adjust MainLoop on Win32 to work with mingw (#163419)
This adjusts the monitor tear down to only call CancelIoEx a single
time, which should cancel all IO operations in the monitoring thread,
instead of calling it in a loop.
This removes the `m_monitor_thread.native_handle()` call that returns a
different type on windows/mingw compiles with pthreads enabled and
should fix #162801.
Commit: 7b10e977f869488d2965b834f278ee0be45267e2
https://github.com/llvm/llvm-project/commit/7b10e977f869488d2965b834f278ee0be45267e2
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
Log Message:
-----------
[flang][cuda] Do not fail if global is not found (#163445)
Commit: d4ca6f6710c3e8bcd77477d1d19f52186f98a429
https://github.com/llvm/llvm-project/commit/d4ca6f6710c3e8bcd77477d1d19f52186f98a429
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Add missing deps from #593894 (#163451)
Needed for CppCompileHeader actions that build headers standalone.
Commit: 93185ea6fe0ad4a26e46635c190f1a8d7bf1933c
https://github.com/llvm/llvm-project/commit/93185ea6fe0ad4a26e46635c190f1a8d7bf1933c
Author: Greg Clayton <gclayton at fb.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
M llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
Log Message:
-----------
Fix a spurious error that was emitted for invalid DW_AT_decl_file. (#152608)
The GSYM code was trying to warn if there are no line table entries for
a function and if the DW_AT_decl_file attribute had a file index that
was invalid. The code was always emitting a error even if a
DW_TAG_subprogram DIE had no DW_AT_decl_file. We should only emit an
error if there is a DW_AT_decl_file attribute and it's file index isn't
valid.
Commit: bed17c03fee09eabbd35eca3a8829f913a374424
https://github.com/llvm/llvm-project/commit/bed17c03fee09eabbd35eca3a8829f913a374424
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
Log Message:
-----------
[lldb][NFCI] Refactor AppleObjCClassDescriptorV2 method_t parsing functions (#163291)
This rewrites ClassDescriptorV2::method_t::Read (and the loop calling
that function) in an NFCI way to perform a couple of things:
1. Cleanup code with indirect style. For example, the old loop would
have default-constructor a `unique_ptr<method_t>`, which was *reused* on
every iteration of the loop. It called `method_t::Read` on each
iteration, and never checked the return value prior to invoking the
callback. In other words, if `Read` failed, the callback was called on
random values.
2. Exposed memory reads that could benefit from the MultiMemoryRead
packet proposed in [1].
[1]:
https://discourse.llvm.org/t/rfc-a-new-vectorized-memory-read-packet/88441
Commit: 6338ad5af488da8218ca4042aa5d598de68f42ec
https://github.com/llvm/llvm-project/commit/6338ad5af488da8218ca4042aa5d598de68f42ec
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
R clang/test/CodeGenHLSL/resources/RWBuffer-constructor.hlsl
R clang/test/CodeGenHLSL/resources/RWBuffer-elementtype.hlsl
R clang/test/CodeGenHLSL/resources/RWBuffer-subscript.hlsl
A clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
A clang/test/CodeGenHLSL/resources/TypedBuffers-elementtype.hlsl
A clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
A clang/test/CodeGenHLSL/resources/TypedBuffers-subscript.hlsl
Log Message:
-----------
[HLSL][NFC] Add test coverage for `Buffer` (#161909)
Extending test coverage for `Buffer` resource class. Most of the typed buffer tests were using just `RWBuffer`. This change adds `Buffer` tests cases to existing `RWBuffer-*.test` files and renames them to `TypedBuffer-*.test`. The `Load` method test is separate into `TypedBuffers-methods.tests`.
Commit: 0fefa56b03c98cab7c0f9c61f4eaa735005f7b59
https://github.com/llvm/llvm-project/commit/0fefa56b03c98cab7c0f9c61f4eaa735005f7b59
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A llvm/test/Transforms/LoopVectorize/reduction-minmax-users-and-predicated.ll
Log Message:
-----------
[LV] Add additional min/max reduction tests.
Add test coverage for min/max reductions with various combinations of
users (in and outside loops, used by stores) and predicated variants.
This adds missing test coverage for min/max reductions.
Commit: d098f19e0a7bcb259eaca634966f7ff0446443d5
https://github.com/llvm/llvm-project/commit/d098f19e0a7bcb259eaca634966f7ff0446443d5
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M orc-rt/include/orc-rt/ExecutorAddress.h
M orc-rt/unittests/ExecutorAddressTest.cpp
Log Message:
-----------
[orc-rt] Add ExecutorAddrRange::contains overload for ranges. (#163458)
Can be used to test that one address range is fully contained within
another. This is an orc-rt counterpart to aa731e19045, which added the
same operation to llvm::orc::ExecutorAddrRange.
Commit: 511c1f9f151e22757cdac0b291022bf1cccbfc1d
https://github.com/llvm/llvm-project/commit/511c1f9f151e22757cdac0b291022bf1cccbfc1d
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
Log Message:
-----------
[HLSL][NFC] Refactor structured buffer methods tests (#161908)
Refactoring methods tests for structured buffers to make it clearer that:
- the test functions call the buffer methods and do not directly call the LLVM intrinsic
- the buffer methods are defined after each test function
- show what the buffer methods bodies look like
- use buffers with different element types, not just `float`
- use `llvm-cxxfilt` tool to de-mangle names
Commit: 19a58a520820a0678e767abdf418f101cfd5ca1a
https://github.com/llvm/llvm-project/commit/19a58a520820a0678e767abdf418f101cfd5ca1a
Author: Derek Schuff <dschuff at chromium.org>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/test/CodeGen/WebAssembly/bulk-memory.ll
M llvm/test/CodeGen/WebAssembly/bulk-memory64.ll
Log Message:
-----------
[WebAssembly] Optimize lowering of constant-sized memcpy and memset (#163294)
We currently emit a check that the size operand isn't zero, to avoid
executing the wasm memory.copy instruction when it would trap.
But this isn't necessary if the operand is a constant.
Fixes #163245
Commit: 6ae457d0b2f5efa7032406239bd0684016c30d7b
https://github.com/llvm/llvm-project/commit/6ae457d0b2f5efa7032406239bd0684016c30d7b
Author: Thurston Dang <thurston at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M compiler-rt/lib/msan/msan.h
M compiler-rt/lib/msan/msan_allocator.cpp
M compiler-rt/lib/msan/msan_report.cpp
A compiler-rt/test/msan/allocator_padding.cpp
M compiler-rt/test/msan/zero_alloc.cpp
Log Message:
-----------
[msan] Mark allocator padding as uninitialized, with new origin tag (#157187)
This is follow-up work per discussion in
https://github.com/llvm/llvm-project/pull/155944#discussion_r2311688571.
If the allocator reserves more space than the user requested (e.g.,
`malloc(7)` and `calloc(7,1)` actually have 16 bytes reserved), the
padding bytes will now be marked as uninitialized.
Padding poisoning is controlled by the existing flag `poison_in_malloc`
(which applies to all allocation functions, not only malloc).
Origin tag:
- For `calloc` or with track-origins > 1, the origin will be set as a
new tag, `ALLOC_PADDING`
- Otherwise, the existing `ALLOC` tag will be used.
- In the case of ambiguity caused by origin granularity, `ALLOC` will
take precedence.
Commit: a7f1910621e7a68631a61c0f4d50ad6542ee1cd7
https://github.com/llvm/llvm-project/commit/a7f1910621e7a68631a61c0f4d50ad6542ee1cd7
Author: Alex Langford <alangford at apple.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M lldb/cmake/modules/LLDBFramework.cmake
Log Message:
-----------
[lldb][NFC] Remove unused find_program logic (#163446)
All the unifdef logic was moved to source/API/CMakeLists.txt. This was
left behind during that move.
Commit: 3e5fc80dfe7536f8fcbd50fc58f7cc66e0bf8f16
https://github.com/llvm/llvm-project/commit/3e5fc80dfe7536f8fcbd50fc58f7cc66e0bf8f16
Author: Volodymyr Sapsai <vsapsai at apple.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/test/C/C23/n3037.c
Log Message:
-----------
[C23] Fix treating unnamed records nested in different types as compatible. (#162933)
Don't compare and accept unnamed records from different types only
because they are defined in `RecordDecl` `DeclContext`. During recursive
comparison don't reject unnamed records defined inside other ordered
containers like Objective-C classes.
rdar://161592007
Commit: 3984d19826cbe724a006971266d15eabc4d59287
https://github.com/llvm/llvm-project/commit/3984d19826cbe724a006971266d15eabc4d59287
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
Log Message:
-----------
Revert "[HLSL][NFC] Refactor structured buffer methods tests (#161908)" (#163472)
This reverts commit 511c1f9f151e22757cdac0b291022bf1cccbfc1d because of
build break.
Commit: 1127dd775426238cdc57b2581fbb91a0252e06ae
https://github.com/llvm/llvm-project/commit/1127dd775426238cdc57b2581fbb91a0252e06ae
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
A clang/test/Analysis/Checkers/WebKit/unretained-obj-arg.mm
Log Message:
-----------
[WebKit Checkers] Treat a NS/CF global defined in a system header as a safe pointer origin (#161146)
Commit: a848c1b7381cc01e960352902e1b405163e700d5
https://github.com/llvm/llvm-project/commit/a848c1b7381cc01e960352902e1b405163e700d5
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/test/Transforms/SROA/slice-width.ll
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[sroa][profcheck] Vector selects have "unknown" branch weights (#163319)
Commit: f0b701dfe4d786428a51b32b60bb7bf388140f0e
https://github.com/llvm/llvm-project/commit/f0b701dfe4d786428a51b32b60bb7bf388140f0e
Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
A flang/test/Fir/OpenACC/openacc-type-categories-declare-storage.mlir
Log Message:
-----------
[acc][flang] Checking scalar like variables when there's storage operand to fir.declare (#163439)
currently this variable
```
%7 = fir.declare %6 storage(%4[0]) {uniq_name = "_QFEpi"} : (!fir.ref<f32>, !fir.ref<!fir.array<4xi8>>) -> !fir.ref<f32>
[2:19]
```
is categorized as a scalar type when it really should be an aggregate
type, because it is part of !fir.ref<!fir.array<4xi8>>
This MR adds a classification to capture the storage operand in
fir.declare.
Commit: 2f50a9913552d41ae93af5e9a8c1927b0f4b3833
https://github.com/llvm/llvm-project/commit/2f50a9913552d41ae93af5e9a8c1927b0f4b3833
Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/test/CIR/CodeGen/goto.cpp
M clang/test/CIR/CodeGen/label.c
Log Message:
-----------
[CIR] Fix error in cir.label when using cir.br in entry block (#163280)
This PR fixes an error I found while working on cir.indirectbr. The
issue occurs when a branching operator points to the entry block LLVM’s
verifier does not allow this.
This PR is the same as the one I submitted in the
incubator:https://github.com/llvm/clangir/pull/1939
Commit: dd44e63c8ed04b4f9d62e7d104b5339e1cf18b9d
https://github.com/llvm/llvm-project/commit/dd44e63c8ed04b4f9d62e7d104b5339e1cf18b9d
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/PowerPC/fmf-propagation.ll
M llvm/test/CodeGen/X86/sqrt-fastmath-mir.ll
Log Message:
-----------
[DAGCombiner] Use `FlagInserter` in `visitFSQRT` (#163301)
Propagate fast-math flags for TLI.getSqrtEstimate etc.
Commit: 23848e606baea5c8e5239d56b032399811f54b77
https://github.com/llvm/llvm-project/commit/23848e606baea5c8e5239d56b032399811f54b77
Author: Oliver Hunt <oliver at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/PointerAuthentication.rst
M clang/lib/Headers/ptrauth.h
Log Message:
-----------
[clang][PAC] Add ptrauth.h helpers for computing type discriminators (#163456)
Adds an additional helper that had not been upstreamed, and adds
documentation for both `ptrauth_type_discriminator` and
`ptrauth_function_pointer_type_discriminator`
Commit: 8b60c05a7e390a0f06d26c5884aeeb4f3278877c
https://github.com/llvm/llvm-project/commit/8b60c05a7e390a0f06d26c5884aeeb4f3278877c
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/Shared/AllocationActions.h
M llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp
M llvm/lib/ExecutionEngine/Orc/MemoryMapper.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/AllocationActions.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorSharedMemoryMapperService.cpp
Log Message:
-----------
Revert "[ORC] Make runAllocActions and runDeallocActions asynchorous." (#163480)
This reverts commit 3b5842c9c41a441280100045ef62bb8a0fe7200f.
The intent of the original commit was to begin enabling asynchronous
alloation actions (calls attached to JIT'd memory initialization and
deinitialization). The asynchronous allocation actions scheme was
fleshed-out in a development branch, but ran into an issue: Functions
implementing actions are allowed to live in JIT'd code (e.g. in the ORC
runtime), but we can't genally rely on tail-call elimination kicking in.
This resulting in dealloc actions returning via stack frames that had
been deallocated, triggering segfaults.
It's possible that there are other approaches that would allow
asynchronous allocation actions to work, but they're not on the critical
path for JIT improvements so for now we'll just revert.
Commit: 30e323bf907a6bd585474bea86c42773e0878f64
https://github.com/llvm/llvm-project/commit/30e323bf907a6bd585474bea86c42773e0878f64
Author: ZhaoQi <zhaoqi01 at loongson.cn>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/CodeGen/LoongArch/lasx/vselect.ll
M llvm/test/CodeGen/LoongArch/lsx/vselect.ll
Log Message:
-----------
[LoongArch][NFC] Add more tests for vselect (#163375)
Commit: 96da982128bf7b005afa24a8e6e41e5867d30bc4
https://github.com/llvm/llvm-project/commit/96da982128bf7b005afa24a8e6e41e5867d30bc4
Author: Andrew Haberlandt <ndrewh at users.noreply.github.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M compiler-rt/CMakeLists.txt
M compiler-rt/lib/asan/tests/CMakeLists.txt
Log Message:
-----------
[sanitizers] COMPILER_RT_ASAN_UNIT_TESTS_USE_HOST_RUNTIME to build only unit tests (#161455)
When COMPILER_RT_TEST_STANDALONE_BUILD_LIBS=OFF, none of the asan unit
tests depend on a just-built asan runtime, and instead use the host
runtime.
However, some unit tests currently explicitly depend on the `asan`
target which builds an asan runtime.
COMPILER_RT_ASAN_UNIT_TESTS_USE_HOST_RUNTIME removes this erroneous
dependency when set to ON.
rdar://99760364
Commit: 9a46060aedc6bde26e939999de36442a23c07783
https://github.com/llvm/llvm-project/commit/9a46060aedc6bde26e939999de36442a23c07783
Author: Longsheng Mou <longshengmou at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/test/Dialect/Linalg/match-ops-interpreter.mlir
Log Message:
-----------
[mlir][linalg] Fix crash caused by nullptr dereference (#163132)
This PR fixes a crash caused by nullptr dereference in
`isContractionBody` if reductionOp is nullptr. Fixes #162772.
Commit: c63002eb9a7eafd2eab4f25b17d38f5fe73ae6b5
https://github.com/llvm/llvm-project/commit/c63002eb9a7eafd2eab4f25b17d38f5fe73ae6b5
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
M llvm/lib/Analysis/StaticDataProfileInfo.cpp
Log Message:
-----------
[NFC][StaticDataProfileInfo] Refactor StaticDataProfileInfo::getConstantSectionPrefix and extract analysis based on PGO-counter to be a helper function (#162388)
`StaticDataProfileInfo::getConstantSectionPrefix` is used twice in
codegen ([1] and [2]) to emit section prefix for constants.
Before this patch, its implementation does analysis using PGO-counters,
and PGO-counters are only available on module-internal constants.
After this patch, the PGO-counter analysis are extracted to a helper
function, and returns enum rather than StringPrefix. This way, the
follow up patch https://github.com/llvm/llvm-project/pull/163325 can
extend this function to use global variable section prefix and compute a
max (the hotter one).
[1]
https://github.com/llvm/llvm-project/blob/975fba1b499422713e88cd6f374569f3bd38335e/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp#L3014-L3019
[2]
https://github.com/llvm/llvm-project/blob/975fba1b499422713e88cd6f374569f3bd38335e/llvm/lib/CodeGen/StaticDataAnnotator.cpp#L77-L84
Commit: 856555bfd843e50a0d869bf45b58a514b11cbdb6
https://github.com/llvm/llvm-project/commit/856555bfd843e50a0d869bf45b58a514b11cbdb6
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/test/Conversion/BUILD.bazel
Log Message:
-----------
[bazel][mlir][test] Skip MathToXeVM when SPIRV is not enabled (#163491)
This passes buildkite CI, but fails downstream if the SPIRV target is
not enabled.
This is needed after #162934
Commit: 60ee515b8cc2f14d548d7e0a20f44434a237f22b
https://github.com/llvm/llvm-project/commit/60ee515b8cc2f14d548d7e0a20f44434a237f22b
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.h
A llvm/test/CodeGen/PowerPC/lxvkq-vec-constant.ll
M llvm/test/CodeGen/PowerPC/vector-reduce-add.ll
Log Message:
-----------
[PowerPC] Emit lxvkq and vsrq instructions for build vector patterns (#157625)
### Optimize BUILD_VECTOR having special quadword patterns
This change optimizes `BUILD_VECTOR` operations by using the `lxvkq` or
`xxpltib + vsrq` instructions to inline constants matching specific
128-bit patterns:
- **MSB set pattern**: `0x8000_0000_0000_0000_0000_0000_0000_0000`
- **LSB set pattern**: `0x0000_0000_0000_0000_0000_0000_0000_0001`
### Implementation Details
The `lxvkq` instruction loads special quadword values into VSX
registers:
```asm
lxvkq XT, UIM
# When UIM=16: loads 0x8000_0000_0000_0000_0000_0000_0000_0000
```
The optimization reconstructs the 128-bit register pattern from
`BUILD_VECTOR` operands, accounting for target endianness. For example,
the MSB pattern can be represented as:
- **Big-Endian**: `<i64 -9223372036854775808, i64 0>`
- **Little-Endian**: `<i64 0, i64 -9223372036854775808>`
Both produce the same register value:
`0x8000_0000_0000_0000_0000_0000_0000_0000`
### MSB Pattern (`0x8000...0000`)
All vector types (`v2i64`, `v4i32`, `v8i16`, `v16i8`) generate:
```asm
lxvkq v2, 16
```
### LSB Pattern (`0x0000...0001`)
All vector types generate:
```asm
xxspltib v2, 255
vsrq v2, v2, v2
```
---------
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: d83fe1201e9d91da192d9292fea1a65579086e04
https://github.com/llvm/llvm-project/commit/d83fe1201e9d91da192d9292fea1a65579086e04
Author: Tony Varghese <tonypalampalliyil at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrP10.td
M llvm/test/CodeGen/PowerPC/xxeval-vselect-x-eqv.ll
M llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nand.ll
M llvm/test/CodeGen/PowerPC/xxeval-vselect-x-nor.ll
M llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-b.ll
M llvm/test/CodeGen/PowerPC/xxeval-vselect-x-not-c.ll
Log Message:
-----------
[PowerPC] Exploit xxeval instruction for operations of the form ternary(A, X, nor(B,C)), ternary(A, X, eqv(B,C)), ternary(A, X, nand(B,C)), ternary(A, X, not(B)) and ternary(A, X, not(C)) (#158096)
Adds support for ternary equivalent operations of the form `ternary(A,
X, nor(B,C))`, `ternary(A, X, eqv(B,C))`, `ternary(A, X, nand(B,C))`,
`ternary(A, X, not(B))` and `ternary(A, X, not(C))` where `X=[xor(B,C)|
nor(B,C)| eqv(B,C)| not(B)| not(C)| and(B,C)| nand(B,C)]`.
This adds support for `v4i32, v2i64, v16i8, v8i16` operand types for the
following patterns.
List of xxeval equivalent ternary operations added and the corresponding
imm value required:
```
ternary(A, and(B,C), nor(B,C)) 129
ternary(A, B, nor(B,C)) 131
ternary(A, C, nor(B,C)) 133
ternary(A, xor(B,C), nor(B,C)) 134
ternary(A, not(C), nor(B,C)) 138
ternary(A, not(B), nor(B,C)) 140
ternary(A, nand(B,C), nor(B,C)) 142
ternary(A, or(B,C), eqv(B,C)) 151
ternary(A, nor(B,C), eqv(B,C)) 152
ternary(A, not(C), eqv(B,C)) 154
ternary(A, nand(B,C), eqv(B,C)) 158
ternary(A, and(B,C), not(C)) 161
ternary(A, B, not(C)) 163
ternary(A, xor(B,C), not(C)) 166
ternary(A, or(B,C), not(C)) 167
ternary(A, not(B), not(C)) 172
ternary(A, nand(B,C), not(C)) 174
ternary(A, and(B,C), not(B)) 193
ternary(A, xor(B,C), not(B)) 198
ternary(A, or(B,C), not(B)) 199
ternary(A, nand(B,C), not(B)) 206
ternary(A, B, nand(B,C)) 227
ternary(A, C, nand(B,C)) 229
ternary(A, xor(B,C), nand(B,C)) 230
ternary(A, or(B,C), nand(B,C)) 231
ternary(A, eqv(B,C), nand(B,C)) 233
```
eg. `xxeval XT, XA, XB, XC, 129`
performs the ternary operation: `XA ? and(XB, XC) : nor(XB, XC)` and
places the result in `XT`.
This is the continuation of:
- [[PowerPC] Exploit xxeval instruction for ternary patterns -
ternary(A, X,
and(B,C))](https://github.com/llvm/llvm-project/pull/141733#top)
- [[PowerPC] Exploit xxeval instruction for operations of the form
ternary(A,X,B) and
ternary(A,X,C).](https://github.com/llvm/llvm-project/pull/152956#top)
- [[PowerPC] Exploit xxeval instruction for operations of the form
ternary(A,X, XOR(B,C)) and ternary(A,X,
OR(B,C))](https://github.com/llvm/llvm-project/pull/157909#top)
Co-authored-by: Tony Varghese <tony.varghese at ibm.com>
Commit: de9013fa18a12f982a223ea30819b523e86667d4
https://github.com/llvm/llvm-project/commit/de9013fa18a12f982a223ea30819b523e86667d4
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp
Log Message:
-----------
[ORC] Use MapperJITLinkMemoryManager for ReOptimizeLayerTest. (#163495)
This is an attempted fix for
https://github.com/llvm/llvm-project/issues/158270.
The issue described sounds like it may be caused by non-contiguous
regions returned for separate allocations by the default memory manager.
Using MapperJITLinkMemoryMnaager with a 10Mb slab size should fix the
issue.
Commit: e98de2ed7c1db5144b52c5284118a95229d0a8b2
https://github.com/llvm/llvm-project/commit/e98de2ed7c1db5144b52c5284118a95229d0a8b2
Author: Srinivasa Ravi <srinivasar at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 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/convert_fp4x2.mlir
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Add support for f32x2 to f4x2 conversion (#162273)
This change adds the `convert.f32x2.to.f4x2` op to the NVVM Dialect
for converting a pair of f32 values to an f4x2 (`e2m1x2`) value.
PTX reference:
https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#data-movement-and-conversion-instructions-cvt
Commit: cd2f263a1de0ebce790c570c3cdbc9331792fc67
https://github.com/llvm/llvm-project/commit/cd2f263a1de0ebce790c570c3cdbc9331792fc67
Author: Ebin-McW <ebin.jose at multicorewareinc.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/FCmpFalse_Vec.ll
A llvm/test/CodeGen/SPIRV/builtin_duplicate.ll
A llvm/test/CodeGen/SPIRV/complex-constexpr.ll
A llvm/test/CodeGen/SPIRV/dominator-order.ll
Log Message:
-----------
[SPIRV] Porting 4 tests from Translator (#151646)
- Lowering of fcmp false in llvm IR
- Handling duplicate builtins
- Pointer conversion and address space cast
- Dominator ordering
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Commit: 37eda40dd2d5d2a490549e6e42bcf7cd3bab58f0
https://github.com/llvm/llvm-project/commit/37eda40dd2d5d2a490549e6e42bcf7cd3bab58f0
Author: Subash B <subash.boopathi at multicorewareinc.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
A llvm/test/CodeGen/SPIRV/FCmpFalse.ll
A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fake_use.ll
A llvm/test/CodeGen/SPIRV/transcoding/AtomicCompareExchange_cl20.ll
Log Message:
-----------
[SPIRV] Porting Test from Translator (#152247)
These tests verify SPIR-V code generation for LLVM intrinsics and atomic
operations, ensuring correct translation of fcmp false, llvm.fake.use,
and atomic_compare_exchange.
---------
Co-authored-by: Michal Paszkowski <michal at michalpaszkowski.com>
Commit: 393d57c68a00a586622a85bc246c2023f5ecdeb1
https://github.com/llvm/llvm-project/commit/393d57c68a00a586622a85bc246c2023f5ecdeb1
Author: Christian Ulmann <christianulmann at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Target/LLVMIR/DebugImporter.cpp
M mlir/test/Target/LLVMIR/Import/debug-info.ll
Log Message:
-----------
[MLIR][LLVM] Avoid creating unused NameLocs for imported functions (#163506)
This commit removes the creation of NameLocs when importing locations
for LLVM IR functions. This made the generated fused location more
complex by adding no valuable additional information to it. Note that
removing it has no effect on the roundtrip from LLVM IR back to LLVM IR.
Commit: 778d3c8cccbc6ab72cea7f8fb4fd680b8f679e86
https://github.com/llvm/llvm-project/commit/778d3c8cccbc6ab72cea7f8fb4fd680b8f679e86
Author: Sushant Gokhale <sgokhale at nvidia.com>
Date: 2025-10-14 (Tue, 14 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
Log Message:
-----------
[NFC] Partial reduce test to demonstrate regression post commit #cc9c64d (#162681)
We have seen performance regression for several instances of the Numba
benchmark, with some ranging around 70%, on Neoverse-v2 post #158641.
The mentioned case is short reproducer of the same. See
https://godbolt.org/z/j9Mj5WM7c for the IR differences.. A future patch
will address this.
Commit: 11bf9013d2ba7ed56cbc5f26fe9acfc1daa4c484
https://github.com/llvm/llvm-project/commit/11bf9013d2ba7ed56cbc5f26fe9acfc1daa4c484
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
M llvm/test/Assembler/autoupgrade-lifetime-intrinsics.ll
M llvm/test/Assembler/autoupgrade-wasm-intrinsics.ll
M llvm/test/Assembler/implicit-intrinsic-declaration-invalid3.ll
Log Message:
-----------
[AsmParser] Upgrade intrinsics without declaration (#163402)
Usually calls to intrinsics get auto-upgraded if the intrinsic
name/signature changes. However, this currently doesn't happen if the
intrinsic declaration is omitted, which is the preferred form in new
tests.
Make sure that intrinsic calls without declaration also get upgraded.
Commit: eca614485e5c13ef13b3bbe18f5ddf42a8da75ce
https://github.com/llvm/llvm-project/commit/eca614485e5c13ef13b3bbe18f5ddf42a8da75ce
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/test/Conversion/MathToXeVM/native-spirv-builtins.mlir
Log Message:
-----------
[MathToXeVM] Require asserts in test
This test uses -debug-only, so it requires an assertion-enabled
build.
Commit: ad2986f73c154782164b72b77182f4025e933212
https://github.com/llvm/llvm-project/commit/ad2986f73c154782164b72b77182f4025e933212
Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
Log Message:
-----------
[AArch64] Replace undef with poison in sve-intrinsics.ll (NFC) (#163399)
Commit: 4f2c8677564fc09431c9ff662d4ee40fad599e59
https://github.com/llvm/llvm-project/commit/4f2c8677564fc09431c9ff662d4ee40fad599e59
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
Log Message:
-----------
[LV][NFC] Fix "cpu" attribute in some partial-reduce*.ll tests (#163518)
Commit: 0e6557d71ca97f3f831fae4ac8d4196fbb870def
https://github.com/llvm/llvm-project/commit/0e6557d71ca97f3f831fae4ac8d4196fbb870def
Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Basic/Targets/X86.cpp
M clang/test/CodeGen/attr-target-mv.c
M clang/test/CodeGen/target-builtin-noerror.c
M clang/test/Driver/x86-march.c
M clang/test/Misc/target-invalid-cpu-note/x86.c
M clang/test/Preprocessor/predefined-arch-macros.c
M clang/test/Sema/attr-cpuspecific-cpus.c
M compiler-rt/lib/builtins/cpu_model/x86.c
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/TargetParser/X86TargetParser.def
M llvm/include/llvm/TargetParser/X86TargetParser.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/TargetParser/X86TargetParser.cpp
M llvm/test/CodeGen/X86/cpus-intel.ll
Log Message:
-----------
[X86] Add support for Wildcat Lake (#163214)
Add support for Wildcat Lake, per Intel Architecture Instruction Set
Extensions Programming Reference rev. 59
(https://cdrdv2.intel.com/v1/dl/getContent/671368)
Commit: 0a71fd15283e70def97a9919186548a8ccbbbcae
https://github.com/llvm/llvm-project/commit/0a71fd15283e70def97a9919186548a8ccbbbcae
Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
Log Message:
-----------
[MLIR][Vector] Improve warp distribution robustness (#161647)
Commit: c9b07f34d46237ea547f379f979e7d0106e5a910
https://github.com/llvm/llvm-project/commit/c9b07f34d46237ea547f379f979e7d0106e5a910
Author: aokblast <aokblast at FreeBSD.org>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp
Log Message:
-----------
[LLDB, FreeBSD, x86] Fix empty register set when trying to get size of register (#162890)
The register set information is stored as a singleton in
GetRegisterInfo_i386. However, other functions later access this
information assuming it is stored in GetSharedRegisterInfoVector. To
resolve this inconsistency, we remove the original construction logic
and instead initialize the singleton using llvm::call_once within the
appropriate function (GetSharedRegisterInfoVector_i386).
Commit: cd24d108a2c19c23c4ac80b501fa7361963cca3d
https://github.com/llvm/llvm-project/commit/cd24d108a2c19c23c4ac80b501fa7361963cca3d
Author: Peter Arzt <peter at arzt-fd.de>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M openmp/runtime/src/kmp.h
M openmp/runtime/src/kmp_affinity.cpp
M openmp/runtime/src/kmp_affinity.h
M openmp/runtime/src/kmp_alloc.cpp
M openmp/runtime/src/kmp_dispatch.h
M openmp/runtime/src/kmp_global.cpp
M openmp/runtime/src/kmp_settings.cpp
Log Message:
-----------
[OpenMP] Fix preprocessor mismatches between include and usages of hwloc (#158349)
Fix https://github.com/llvm/llvm-project/issues/156679
There is a mismatch between the preprocessor guards around the include
of `hwloc.h` and those protecting its usages, leading to build failures
on Darwin: https://github.com/spack/spack-packages/pull/1212
This change introduces `KMP_HWLOC_ENABLED` that reflects
whether hwloc is actually used.
Commit: 7f7f24944ad854139981051d1138940195a1cd73
https://github.com/llvm/llvm-project/commit/7f7f24944ad854139981051d1138940195a1cd73
Author: XiaShark <xiajingze1 at huawei.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h
M llvm/lib/Target/AArch64/AArch64PostCoalescerPass.cpp
A llvm/test/CodeGen/AArch64/aarch64-post-coalescer.mir
A llvm/test/CodeGen/AArch64/mir-yaml-has-streaming-mode-changes.ll
Log Message:
-----------
[AArch64PostCoalescer] Propagate undef flag after replacing (#163119)
I encountered a compilation crash issue, and after analysis, it was
caused by the AArch64PostCoalescerPass, see https://godbolt.org/z/vPeqeo5Pa.
When replacing the register, if the source register has undef flag, we
should propagate the flag to all uses of the destination register.
Commit: 9734aa8c02b787d8d13f429e8f2917b20465174c
https://github.com/llvm/llvm-project/commit/9734aa8c02b787d8d13f429e8f2917b20465174c
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/AST/DeclBase.cpp
Log Message:
-----------
[NFC] [clang] Add comments for a defect
See the patch for details.
I tried to solve the defect left in previous refactorings
but found it was more complex. Add the comment to state
it more clearly.
Commit: 140d46579f815de26c116dd36f32c7dc5dc827df
https://github.com/llvm/llvm-project/commit/140d46579f815de26c116dd36f32c7dc5dc827df
Author: shashank1545 <37805084+shashank1545 at users.noreply.github.com>
Date: 2025-10-15 (Wed, 15 Oct 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/lib/Headers/avx2intrin.h
M clang/lib/Headers/avx512bwintrin.h
M clang/lib/Headers/avx512vlbwintrin.h
M clang/lib/Headers/tmmintrin.h
M clang/test/CodeGen/X86/avx2-builtins.c
M clang/test/CodeGen/X86/avx512bw-builtins.c
M clang/test/CodeGen/X86/avx512vlbw-builtins.c
M clang/test/CodeGen/X86/mmx-builtins.c
M clang/test/CodeGen/X86/ssse3-builtins.c
Log Message:
-----------
[X86][ByteCode] Allow PSHUFB intrinsics to be used in constexpr #156612 (#163148)
The PSHUFB instruction shuffles bytes within each 128-bit lane: for each
control byte, if bit 7 is set, the output byte is zeroed; otherwise, the
low 4 bits select a source byte (0–15) from the same lane.
Note: _mm_shuffle_pi8 function had to change as __anyext128 had negative
indices which are invalid in constant expression context.
Fixes #156612
Commit: 8a09111fe481e6b1be98c323cbba20d37fe9e31a
https://github.com/llvm/llvm-project/commit/8a09111fe481e6b1be98c323cbba20d37fe9e31a
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bfmul.c
A clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bfscale.c
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
A llvm/test/CodeGen/AArch64/sme2-intrinsics-bfmul.ll
A llvm/test/CodeGen/AArch64/sme2-intrinsics-bfscale.ll
Log Message:
-----------
[AArch64] Add intrinsics for multi-vector FEAT_SVE_BFSCALE instructions (#163346)
This patch add intrinsics support for multi-vector BFMUL and BFSCALE
instruction based on
[this](https://github.com/ARM-software/acle/pull/410) ACLE specification
proposal
Commit: 4145818aa23d1203bff39f3aa5bcad6280914092
https://github.com/llvm/llvm-project/commit/4145818aa23d1203bff39f3aa5bcad6280914092
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/include/clang/Basic/arm_sve.td
R clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bfmul.c
R clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_bfscale.c
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
R llvm/test/CodeGen/AArch64/sme2-intrinsics-bfmul.ll
R llvm/test/CodeGen/AArch64/sme2-intrinsics-bfscale.ll
Log Message:
-----------
Revert "[AArch64] Add intrinsics for multi-vector FEAT_SVE_BFSCALE instructions" (#163535)
Reverts llvm/llvm-project#163346
Commit: fbd6ac3596528e69b57a89796f168a453bcfa788
https://github.com/llvm/llvm-project/commit/fbd6ac3596528e69b57a89796f168a453bcfa788
Author: Shenghang Tsai <jackalcooper at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Shard/IR/ShardOps.td
Log Message:
-----------
[MLIR][shard] Fix tblgen description of `shard.neighbors_linear_indices` (#163409)
This PR fixed an issue where inline code blocks in the ODS description of `shard.neighbors_linear_indices` were not properly closed.
Commit: 8395a36f22edb01518d8f0995f8c8053d60d9e93
https://github.com/llvm/llvm-project/commit/8395a36f22edb01518d8f0995f8c8053d60d9e93
Author: Shawn K <kimshawn02 at icloud.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/Headers/avx512cdintrin.h
M clang/lib/Headers/avx512vlcdintrin.h
M clang/test/CodeGen/X86/avx512cd-builtins.c
M clang/test/CodeGen/X86/avx512vlcd-builtins.c
Log Message:
-----------
[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - allow AVX512 mask broadcast intrinsics to be used in constexpr (#163475)
Fix #161334
Commit: bcf9e917142de4a5c4799b4debe7d11500cee426
https://github.com/llvm/llvm-project/commit/bcf9e917142de4a5c4799b4debe7d11500cee426
Author: Corentin Jabot <corentinjabot at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/test/SemaCXX/type-traits.cpp
Log Message:
-----------
[Clang] Fix a regression introduced by #161163. (#162612)
Classes with a user provided constructor are still implicit lifetime if
they have an implicit, trivial copy ctr.
Commit: 8b93f27cf7e6e53636db870873b53269efa3cca4
https://github.com/llvm/llvm-project/commit/8b93f27cf7e6e53636db870873b53269efa3cca4
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
A llvm/test/CodeGen/AArch64/machine-sme-abi-find-insert-pt.mir
M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
M llvm/test/CodeGen/AArch64/sme-lazy-sve-nzcv-live.mir
Log Message:
-----------
[AArch64][SME] Fixup ABI routine insertion points to avoid clobbering NZCV (#161353)
This updates the `MachineSMEABIPass` to find insertion points for state
changes (i.e., calls to ABI routines), where the NZCV register (status
flags) are not live.
It works by stepping backwards from where the state change is needed
until we find an instruction where NZCV is not live, a previous state
change, or a call sequence. We conservatively don't move into/over
calls, as they may require a different state before the start of the
call sequence.
Commit: bf643165eec6cb57493c6f443606976fd7f9b8b2
https://github.com/llvm/llvm-project/commit/bf643165eec6cb57493c6f443606976fd7f9b8b2
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
Log Message:
-----------
[DAG] Fix incorrect doxygen comment for isZeroOrZeroSplat (NFC) (#163527)
Commit: 3141bdefff4e6ec8dd266ce5ff7c4db4fff1ea23
https://github.com/llvm/llvm-project/commit/3141bdefff4e6ec8dd266ce5ff7c4db4fff1ea23
Author: Andrei Golubev <andrey.golubev at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/test/Dialect/Bufferization/Transforms/one-shot-non-module-bufferize.mlir
M mlir/test/lib/Dialect/Bufferization/TestOneShotModuleBufferize.cpp
M mlir/test/lib/Dialect/Test/TestAttrDefs.td
M mlir/test/lib/Dialect/Test/TestAttributes.cpp
M mlir/test/lib/Dialect/Test/TestAttributes.h
M mlir/test/lib/Dialect/Test/TestDialect.h
M mlir/test/lib/Dialect/Test/TestDialect.td
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[mlir][bufferization] Test tensor encoding -> memref layout conversion (#161166)
Support custom types (4/N): test that it is possible to customize memref
layout specification for custom operations and function boundaries.
This is purely a test setup (no API modifications) to ensure users are
able to pass information from tensors to memrefs within bufferization
process. To achieve this, a test pass is required (since bufferization
options have to be set manually). As there is already a
--test-one-shot-module-bufferize pass present, it is extended for the
purpose.
Commit: e249c5101003cec2c885ea825a0be9fc24fa422d
https://github.com/llvm/llvm-project/commit/e249c5101003cec2c885ea825a0be9fc24fa422d
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/stackTraceDisassemblyDisplay/TestDAP_stackTraceDisassemblyDisplay.py
Log Message:
-----------
[lldb-dap][test] create temp source file in test directory. (#163383)
Fixes #163288
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: 17e06aa88f4651d1fc4523ee15c043e0d9dc738d
https://github.com/llvm/llvm-project/commit/17e06aa88f4651d1fc4523ee15c043e0d9dc738d
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/MsvcStlAtomic.cpp
Log Message:
-----------
[lldb] Only get child if m_storage and m_element_type is valid (#163077)
This causes a crash because lldb-dap will check the first child to see
if it is array like to lazy load the children.
Commit: 727525629ed4fec4b802ab0d53ea61696316b045
https://github.com/llvm/llvm-project/commit/727525629ed4fec4b802ab0d53ea61696316b045
Author: Paul Walker <paul.walker at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
Log Message:
-----------
[NFC] Rename AArch64ISD::SRAD_MERGE_OP1 as ASRD_MERGE_OP1.
This aligns with the specific instruction it represents.
Commit: fcd7b8daa1633ae2549365438aab03eca92b1a44
https://github.com/llvm/llvm-project/commit/fcd7b8daa1633ae2549365438aab03eca92b1a44
Author: azwolski <antoni.zwolski at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/CodeGen/X86/apx/cf.ll
Log Message:
-----------
[X86] Add baseline test for X86 conditional load/store optimization bug (#163354)
This PR adds a baseline test that exposes a bug in the current
`combineX86CloadCstore` optimization. The generated assembly
demonstrates incorrect behavior when the optimization is applied without
proper constraints.
Without any assumptions about `X` this transformation is only valid when
`Y` is a non zero power of two/single-bit mask.
```cpp
// res, flags2 = sub 0, (and (xor X, -1), Y)
// cload/cstore ..., cond_ne, flag2
// ->
// res, flags2 = sub 0, (and X, Y)
// cload/cstore ..., cond_e, flag2
```
In the provided test case, the value in `%al` is unknown at compile
time. If `%al` contains `0`, the optimization cannot be applied, because
`(and (xor X, -1), 0)` is not equal to `(and X, 0)`.
Fix: https://github.com/llvm/llvm-project/pull/163353
Commit: 4ad625b15bc17b55138f9dd3abe35d13bed17d89
https://github.com/llvm/llvm-project/commit/4ad625b15bc17b55138f9dd3abe35d13bed17d89
Author: KAWASHIMA Takahiro <t-kawashima at fujitsu.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/UsersManual.rst
Log Message:
-----------
[clang][docs] Fix typos in option names (#163482)
Commit: f29f23711dce5d1a81b867ff5b472aa24ca7ee55
https://github.com/llvm/llvm-project/commit/f29f23711dce5d1a81b867ff5b472aa24ca7ee55
Author: David Sherwood <david.sherwood at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/cast.ll
M llvm/test/Analysis/CostModel/AArch64/no-sve-no-neon.ll
M llvm/test/Analysis/CostModel/AArch64/sve-cast.ll
M llvm/test/Analysis/CostModel/AArch64/sve-ext.ll
M llvm/test/Analysis/CostModel/AArch64/sve-fpext.ll
M llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll
M llvm/test/Analysis/CostModel/AArch64/sve-fptrunc.ll
M llvm/test/Analysis/CostModel/AArch64/sve-trunc.ll
Log Message:
-----------
[Analysis][AArch64][NFC] Change undef to poison in most tests (#163532)
Whenever someone modifies an existing test that has `undef` in it the
github code formatter will complain so it's not easy to know if it's due
to a new or old use. I figured I may as well just do a simple sed
replace of undef with poison in all the tests to clean them up.
Hopefully it makes the contribution process a bit easier.
Commit: 4b89704504dde687ba7983e034cb246581fd1407
https://github.com/llvm/llvm-project/commit/4b89704504dde687ba7983e034cb246581fd1407
Author: nerix <nerixdev at outlook.de>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/PdbUtil.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/test/Shell/SymbolFile/NativePDB/local-variables-registers.s
M lldb/test/Shell/SymbolFile/NativePDB/simple-types.cpp
Log Message:
-----------
[LLDB][NativePDB] Consolidate simple types (#163209)
This aligns the simple types created by the native plugin with the ones
from DIA as well as LLVM and the original cvdump.
- A few type names weren't handled when creating the LLDB `Type` name
(e.g. `short`)
- 64-bit integers were created as `(u)int64_t` and are now created as
`(unsigned) long long` (matches DIA)
- 128-bit integers (only supported by clang-cl) weren't created as types
(they have `SimpleTypeKind::(U)Int128Oct`)
- All complex types had the same name - now they have `_Complex
<float-type>`
Some types like `SimpleTypeKind::Float48` can't be tested because they
can't be created in C++.
Commit: 861519327ab0797edfed9288718ba1484bf71e4a
https://github.com/llvm/llvm-project/commit/861519327ab0797edfed9288718ba1484bf71e4a
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
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:
-----------
[VPlan] Move getCanonicalIV to VPRegionBlock (NFC). (#163020)
The canonical IV is tied to region blocks; move getCanonicalIV there and
update all users.
PR: https://github.com/llvm/llvm-project/pull/163020
Commit: 67e6a376209c9cc9576012c1c042bee9b852d584
https://github.com/llvm/llvm-project/commit/67e6a376209c9cc9576012c1c042bee9b852d584
Author: Carlos Galvez <carlosgalvezp at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Driver/Options.td
Log Message:
-----------
[clang] Remove `HelpHidden` from the `-resource-dir` option (#163131)
Currently the "getter" option `-print-resource-dir` is visible when
typing `--help`, but the corresponding "setter" option `-resource-dir`
is not.
This option is useful when one is using clang on a non-standard
location, or when one is building a libtooling-based tool (e.g. IWYU)
based on a local clang build. In that case, we need to specify the
correct path to the resource directory for things to work.
Existing documentation already makes use of this option, for example
here:
https://clang.llvm.org/docs/StandardCPlusPlusModules.html#possible-issues-failed-to-find-system-headers
There is thus no reason to keep this option hidden from the help and
documentation.
---------
Co-authored-by: Carlos Gálvez <carlos.galvez at zenseact.com>
Commit: 55bd6fb8dbb0b167a98bbea751d74493353e60b3
https://github.com/llvm/llvm-project/commit/55bd6fb8dbb0b167a98bbea751d74493353e60b3
Author: Ed Maste <emaste at freebsd.org>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_implicit_lifetime.pass.cpp
M libcxx/utils/ci/buildkite-pipeline.yml
Log Message:
-----------
[libc++] Bump the FreeBSD builder to Clang 20 (#162564)
Commit: 7f54fccc0e556a9ca6e6df42911f05f23eb9889d
https://github.com/llvm/llvm-project/commit/7f54fccc0e556a9ca6e6df42911f05f23eb9889d
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/replicating-load-store-costs.ll
M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar.ll
Log Message:
-----------
[VPlan] Add ExtractLastLanePerPart, use in narrowToSingleScalar. (#163056)
When narrowing stores of a single-scalar, we currently use
ExtractLastElement, which extracts the last element across all parts.
This is not correct if the store's address is not uniform across all
parts. If it is only uniform-per-part, the last lane per part must be
extracted. Add a new ExtractLastLanePerPart opcode to handle this
correctly. Most transforms apply to both ExtractLastElement and
ExtractLastLanePerPart, with the only difference being their treatment
during unrolling.
Fixes https://github.com/llvm/llvm-project/issues/162498.
PR: https://github.com/llvm/llvm-project/pull/163056
Commit: 2f33a2c1c9035f6c84e9f04ca931eb8a5dbb8624
https://github.com/llvm/llvm-project/commit/2f33a2c1c9035f6c84e9f04ca931eb8a5dbb8624
Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M bolt/include/bolt/Passes/PLTCall.h
M bolt/include/bolt/Passes/TailDuplication.h
Log Message:
-----------
[BOLT][NFC] Rename getNames for PLT, TailDuplication (#119870)
Commit: a26f4a4c2c1cb16b17ee9b9107b94a45bdb8ba16
https://github.com/llvm/llvm-project/commit/a26f4a4c2c1cb16b17ee9b9107b94a45bdb8ba16
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/Analysis/CostModel/AArch64/sve-illegal-types.ll
Log Message:
-----------
[CostModel] Generate test checks (NFC)
Commit: 9b9eefa922b50c87475a705c8861d055de319060
https://github.com/llvm/llvm-project/commit/9b9eefa922b50c87475a705c8861d055de319060
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/Analysis/BasicAA/intrinsics.ll
M llvm/test/Analysis/BasicAA/scalable-dse-aa.ll
M llvm/test/Analysis/TypeBasedAliasAnalysis/intrinsics.ll
Log Message:
-----------
[AA] Generate test checks (NFC)
Commit: bfee9db7857757e63b64fb4d411a264690ff711a
https://github.com/llvm/llvm-project/commit/bfee9db7857757e63b64fb4d411a264690ff711a
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/ARM/nnan-fsub.ll
Log Message:
-----------
[DAGCombiner] Remove NoNaNsFPMath uses (#163504)
Users should use `nnan` flag instead.
Commit: 2ed7baafc3bf5b4321e3f77dfb1ce291e62bcadc
https://github.com/llvm/llvm-project/commit/2ed7baafc3bf5b4321e3f77dfb1ce291e62bcadc
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
M clang/lib/Basic/Targets/AVR.cpp
M clang/lib/Driver/Job.cpp
M clang/lib/Driver/XRayArgs.cpp
M clang/lib/Frontend/FrontendOptions.cpp
M clang/lib/InstallAPI/HeaderFile.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
M lldb/source/Plugins/ABI/LoongArch/ABISysV_loongarch.cpp
M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
M lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
M lldb/source/Plugins/ABI/X86/ABIWindows_x86_64.cpp
M llvm/lib/BinaryFormat/XCOFF.cpp
M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
M llvm/lib/Target/RISCV/MCA/RISCVCustomBehaviour.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTypeUtilities.cpp
M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
M llvm/lib/TargetParser/Triple.cpp
M llvm/utils/TableGen/FastISelEmitter.cpp
Log Message:
-----------
[ADT] Migrate StringSwitch Cases with 6+ arguments to new overload. NFC. (#163549)
Switch to the `.Cases({S0, S1, ...}, Value)` overload instead, and the
manually-enumerated overloads with 6+ arguments are getting deprecated
in https://github.com/llvm/llvm-project/pull/163405.
This pre-commits API updates ahead of the deprecation to make potential
reverts cleaner. This was already reviewed in #163405.
Commit: acf4e174b05e608de92eeeab3d0e3b0e83f5722e
https://github.com/llvm/llvm-project/commit/acf4e174b05e608de92eeeab3d0e3b0e83f5722e
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Parse/Parser.cpp
M clang/test/Parser/DelayedTemplateParsing.cpp
Log Message:
-----------
[clang] fix parsing of late parsed attributes with delayed template parsing (#163483)
This simply ignores 'delayed template parsing' when functions have late
parsed attributes, since these are not MSVC compatible anyway.
Besides ignoring the attribute, this would also cause a memory leak.
Commit: bd2ba04ee60cc71d606d56460f7233564e60f477
https://github.com/llvm/llvm-project/commit/bd2ba04ee60cc71d606d56460f7233564e60f477
Author: Akash Banerjee <akash.banerjee at amd.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
A flang/test/Lower/OpenMP/cptr-usm-close-and-use-device-ptr.f90
Log Message:
-----------
[Flang][OpenMP] Fix USM `close` semantics and `use_device_ptr` (#163258)
- Add CLOSE map flag when USM is required.
- use_device_ptr: prevent implicitly expanding member operands.
- Fixes test offload/test/offloading/fortran/usm_map_close.f90.
Commit: deaf7b914b1ce91e0aada8b59d00587e7b0739c6
https://github.com/llvm/llvm-project/commit/deaf7b914b1ce91e0aada8b59d00587e7b0739c6
Author: Nikita Popov <npopov at redhat.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-basic.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-reduce.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/tail-pred-widen.ll
M llvm/test/CodeGen/Thumb2/LowOverheadLoops/vector-reduce-mve-tail.ll
Log Message:
-----------
[LowOverheadLoops] Generate test checks (NFC)
Commit: 316c0766942a1ed87e1a440efaa2fa4d0bad0418
https://github.com/llvm/llvm-project/commit/316c0766942a1ed87e1a440efaa2fa4d0bad0418
Author: azwolski <antoni.zwolski at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/apx/cf.ll
Log Message:
-----------
[X86] Fix X86 conditional load/store optimization for non-constant operands (#163353)
This PR fixes a bug in combineX86CloadCstore where an optimization was
being applied too broadly, causing incorrect code generation.
Without any assumptions about `X` this transformation is only valid when
`Y` is a non zero power of two/single-bit mask.
```cpp
// res, flags2 = sub 0, (and (xor X, -1), Y)
// cload/cstore ..., cond_ne, flag2
// ->
// res, flags2 = sub 0, (and X, Y)
// cload/cstore ..., cond_e, flag2
```
We can restrict the optimization to most important case, so only apply
when `llvm::isOneConstant(Op1.getOperand(1))`. It might be not trivial
to find code that creates a SelectionDag with other values of `Y`.
Basline test: https://github.com/llvm/llvm-project/pull/163354
Commit: 4ff8f118cc91870aed357be351230df63ef14dcf
https://github.com/llvm/llvm-project/commit/4ff8f118cc91870aed357be351230df63ef14dcf
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
M mlir/test/Dialect/Vector/vector-unroll-options.mlir
Log Message:
-----------
[MLIR][Vector] Extend elementwise pattern to support unrolling from higher rank to lower rank (#162515)
This PR enhances the elementwise unrolling pattern to support higher
rank to lower rank unroll. The approach is to add leading unit dims to
lower rank targetShape to match the rank of original vector (because
ExtractStridedSlice requires same rank to extractSlices), extract slice,
reshape to targetShape's rank and perform the operation.
Commit: f2306b6304df4ed7dfdc4692034c23c5e21db8d9
https://github.com/llvm/llvm-project/commit/f2306b6304df4ed7dfdc4692034c23c5e21db8d9
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/TargetLibraryInfo.h
M llvm/include/llvm/CodeGen/LiveRangeCalc.h
M llvm/include/llvm/Support/DebugLog.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/MachineCopyPropagation.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugFrame.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/Support/PrettyStackTrace.cpp
M llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
M llvm/lib/Target/Hexagon/HexagonCommonGEP.cpp
M llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
M llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp
M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
M llvm/lib/Target/Sparc/SparcFrameLowering.cpp
M llvm/lib/Target/X86/X86FloatingPoint.cpp
M llvm/lib/TargetParser/Host.cpp
M llvm/lib/Transforms/Instrumentation/ControlHeightReduction.cpp
M llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp
M llvm/lib/Transforms/ObjCARC/PtrState.h
M llvm/lib/Transforms/Scalar/SROA.cpp
M llvm/unittests/ADT/SmallVectorTest.cpp
M llvm/utils/TableGen/Common/Types.cpp
Log Message:
-----------
[llvm] Replace LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]] (NFC) (#163507)
This patch replaces LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]]. Note
that this patch adjusts the placement of [[maybe_unused]] to comply
with the C++17 language.
Commit: e07cd236125bd1bf51947410443ab9d4b2d1fc06
https://github.com/llvm/llvm-project/commit/e07cd236125bd1bf51947410443ab9d4b2d1fc06
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst
Log Message:
-----------
[llvm] Proofread AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst (#163508)
Commit: b82baf0f5bce0aa787ac280f2a43943d211b9cc5
https://github.com/llvm/llvm-project/commit/b82baf0f5bce0aa787ac280f2a43943d211b9cc5
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/lib/CAS/OnDiskTrieRawHashMap.cpp
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
Log Message:
-----------
[llvm] Remove redundant control flow statements (NFC) (#163509)
Commit: 334d8854e9fab12b1112313163199ef353dd8d22
https://github.com/llvm/llvm-project/commit/334d8854e9fab12b1112313163199ef353dd8d22
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
Log Message:
-----------
[AsmParser] Remove a redundant call to std::unique_ptr<T>::get (NFC) (#163511)
Commit: 251ae559be00ed0401f3ba3d6e07769c3f57060d
https://github.com/llvm/llvm-project/commit/251ae559be00ed0401f3ba3d6e07769c3f57060d
Author: Kazu Hirata <kazu at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/InterpState.h
Log Message:
-----------
[ByteCode] Remove a redundant call to std::unique_ptr<T>::get (NFC) (#163512)
Commit: e2db9a9036408eeac69389258d38e15aed93cd71
https://github.com/llvm/llvm-project/commit/e2db9a9036408eeac69389258d38e15aed93cd71
Author: Mircea Trofin <mtrofin at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Analysis/MLInlineAdvisor.cpp
A llvm/test/Transforms/Inline/ML/state-accounting-skip-non-cold.ll
Log Message:
-----------
[mlgo][inliner] Fix incorrect state tracking when deferring to the default policy (#163477)
Identified in https://issues.chromium.org/issues/369637577
The problem was that we were missing edge updates when deferring to
non-cold edges.
Commit: c4eaf56122d791d06c0a6f6be0224d8491d3beed
https://github.com/llvm/llvm-project/commit/c4eaf56122d791d06c0a6f6be0224d8491d3beed
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/StringSwitch.h
Log Message:
-----------
[ADT] Mark StringSwitch Cases with 6+ arguments as deprecated. NFC. (#163405)
Switch to the `.Cases({S0, S1, ...}, Value)` overload instead.
Update existing uses affected by the deprecation and the surrounding
code (for consistency).
This is a part of a larger cleanup of StringSwitch. The goal is to
eventually deprecate all manually-enumerated overloads of Cases with a
hardcoded number of case values (in favor of passing them via an
initializer list). You can find the full explanation here:
https://github.com/llvm/llvm-project/pull/163117.
Start small (6+ arguments) to keep the number of changes manageable.
Commit: be93399e619848c96b101172e68c29336fa589fe
https://github.com/llvm/llvm-project/commit/be93399e619848c96b101172e68c29336fa589fe
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandard.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Driver/Options.td
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/LangStandards.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/unittests/Basic/CMakeLists.txt
A clang/unittests/Basic/LangOptionsTest.cpp
Log Message:
-----------
[clang][Basic] Add helper APIs to get language version codes from LangOptions (#163348)
Motivated by this discussion:
https://github.com/llvm/llvm-project/pull/163208#discussion_r2426842999
We will soon want to emit language version codes into debug-info.
Instead of replicating the `LangOptions -> version code` mapping we
thought we'd try to share some of the logic with the Clang frontend.
This patch teaches `LangStandard` about language versions (currently just C++ and C).
Commit: aa435772780ec17fda440f58d00d3d8703d7bfda
https://github.com/llvm/llvm-project/commit/aa435772780ec17fda440f58d00d3d8703d7bfda
Author: Tim Creech <timothy.m.creech at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/docs/LangRef.rst
Log Message:
-----------
[LangRef] Clarify that selects can have !unpredictable (#162753)
Originally `!unpredictable` could only appear on branches and switches,
but now it can also appear on selects. This change updates the LangRef
accordingly.
Commit: ccf6e0250b5757197788f0fadb896a8912419329
https://github.com/llvm/llvm-project/commit/ccf6e0250b5757197788f0fadb896a8912419329
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
Log Message:
-----------
[lldb] Parse qSupported MultiMemRead tag in GDB Remote Client (#163249)
This is in preparation for the new MultiMemRead packet discussed in the
RFC [1].
An alternative to using `qSupported` would be having clients send an
empty `MultiMemRead` packet. However, this is problematic because the
already-existing packet `M` is a prefix of `MultiMemRead`; an empty
reply would be ambiguous in this case. It is also risky that the stub
might interpret the `MultiMemRead` as a valid `M` packet.
Another advantage of `qSupported` is that this packet is already
exchanged, so parsing a new field is simpler than having to exchange one
extra packet.
[1]:
https://discourse.llvm.org/t/rfc-a-new-vectorized-memory-read-packet/88441
Commit: 4721202f353aa39a6a652447de8ba4a0195b0e81
https://github.com/llvm/llvm-project/commit/4721202f353aa39a6a652447de8ba4a0195b0e81
Author: acture <acturea at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/docs/CMakeLists.txt
Log Message:
-----------
[OCaml] Make ocaml_doc installation conditional on LLVM_BUILD_DOCS (#154412)
This makes two changes:
* Only install ocaml docs if LLVM_BUILD_DOCS=ON.
* Add ocaml_doc target to ALL if LLVM_BUILD_DOCS=ON.
If LLVM_BUILD_DOCS=ON, this ensures that the docs are actually
built before an installation is attempted. For LLVM_BUILD_DOCS=OFF
(the default) this means that there is no attempt to install the
(non-built) ocaml docs anymore.
Fixes #154411.
Fixes #125437.
Fixes #108742.
Commit: b54709e9f68a6687eece0585e46f12e5fa218520
https://github.com/llvm/llvm-project/commit/b54709e9f68a6687eece0585e46f12e5fa218520
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/TableGen/CodeGenHelpers.h
M mlir/test/mlir-tblgen/cpp-class-comments.td
M mlir/tools/mlir-tblgen/EnumsGen.cpp
M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp
Log Message:
-----------
[NFC][MLIR][TableGen] Adopt NamespaceEmitter more widely (#163289)
Adopt NamespaceEmitter more widely in MLIR TableGen.
Commit: 8d66114a0379d8d564d4ef0f1d53749d0489dd12
https://github.com/llvm/llvm-project/commit/8d66114a0379d8d564d4ef0f1d53749d0489dd12
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/Driver/ToolChains/Clang.cpp
R clang/test/Driver/gpu-libc-headers.c
A clang/test/Driver/gpu-libc.c
Log Message:
-----------
[Clang] Only link C device libraries by default for OpenMP (#151239)
Summary:
We link these implicitly for OpenMP because it's the canonical
implementation of those C language features. This was inhereted by HIP
and ended up with these resolving functions. There are some useful
functions in here, but this can be problematic as it could potentially
override functions intended to be provided by the ROCm device libraries.
Additionally the HIP runtime does not currently provide the handling for
the RPC server required to run the host resources so those just
segfault.
Commit: cac8bdb56c1d1e02e6ed0cf24361518318a92a73
https://github.com/llvm/llvm-project/commit/cac8bdb56c1d1e02e6ed0cf24361518318a92a73
Author: Prabhu Rajasekaran <prabhukr at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/docs/CallGraphSection.md
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/MC/MCObjectFileInfo.cpp
M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
M llvm/test/CodeGen/ARM/call-graph-section.ll
M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
M llvm/test/CodeGen/X86/call-graph-section.ll
M llvm/test/MC/X86/verify-callgraph-section.s
Log Message:
-----------
[NFC][llvm] Update call graph section's name. (#163429)
Call graph section emitted by LLVM was named `.callgraph`. Renaming it
to `.llvm.callgraph`.
Commit: e91786a84967e006b21f2eb0eb59a56b2f925eac
https://github.com/llvm/llvm-project/commit/e91786a84967e006b21f2eb0eb59a56b2f925eac
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
Log Message:
-----------
[gdbremote] Document MultiMemRead packet in protocol extensions (#162675)
This adds a specification for the new packet discussed in the RFC [1].
[1]:
https://discourse.llvm.org/t/rfc-a-new-vectorized-memory-read-packet/88441/12
Commit: 479e118a33ac80b6bc2227bdc6b17b2f232ebccd
https://github.com/llvm/llvm-project/commit/479e118a33ac80b6bc2227bdc6b17b2f232ebccd
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/clang/unittests/Basic/BUILD.gn
Log Message:
-----------
[gn build] Port be93399e6198
Commit: 7d3729d381a0d6d091e4f4929b9a5f06f6cba906
https://github.com/llvm/llvm-project/commit/7d3729d381a0d6d091e4f4929b9a5f06f6cba906
Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-value-dependent-crash.cpp
Log Message:
-----------
[clang-tidy] Fix crash in bugprone-not-null-terminated-result check (#160727)
The check was crashing when trying to evaluate value-dependent
expressions using EvaluateAsInt() in cases where the src parameter of
memcpy is value-dependent, but the length is not. Added
isValueDependent() check before EvaluateAsInt() call to prevent the
crash.
Commit: a0b8261610395c3ef121958417251f552d6c1bb5
https://github.com/llvm/llvm-project/commit/a0b8261610395c3ef121958417251f552d6c1bb5
Author: sstwcw <su3e8a96kzlver at posteo.net>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Continue aligned lines better (#161903)
Fixes #53497.
Fixes #56078.
after with config `{AlignConsecutiveAssignments: true}`
```C++
auto aaaaaaaaaaaaaaaaaaaaa = {};
auto b = [] {
x = {.one_foooooooooooooooo = 2, //
.two_fooooooooooooo = 3, //
.three_fooooooooooooo = 4};
};
A B = {"Hello "
"World"};
BYTE payload = 2;
float i2 = 0;
auto v = type{i2 = 1, //
i = 3};
```
before
```C++
auto aaaaaaaaaaaaaaaaaaaaa = {};
auto b = [] {
x = {.one_foooooooooooooooo = 2, //
.two_fooooooooooooo = 3, //
.three_fooooooooooooo = 4};
};
A B = {"Hello "
"World"};
BYTE payload = 2;
float i2 = 0;
auto v = type{i2 = 1, //
i = 3};
```
When a line gets aligned, the following lines may need to move with it.
This patch replaces the old algorithm with a simpler one. It uses the
`IsAligned` attribute. It makes most of the scope stack irrelevant.
Now the stack only needs to keep track of 2 levels.
The old algorithm had problems like these.
- Whether lines inside a braced list moved depended on whether there was
a type at the start. It should depend on whether the inside was
aligned to the brace. The first case that came up with a type name at
the start happened to have a comma at the end of the list so the
inside was not aligned to the brace.
- Excluding lines inside closures did not always work.
- A continued string could move twice as much as it should.
The following problems are not fixed yet.
A token that opens a scope is needed. Operator precedence is not
enough.
```C++
auto aaaaaaaaaaaaaaaaaaaaa = {};
auto b = 0 + //
0;
```
The algorithm has trouble when things that should not move and things
that should move are nested. This is related to the `IsAligned`
attribute being a boolean. It also affects how spaces and tabs are
selected.
```C++
auto aaaaaaaaaaaaaaaaaaaaa = {};
auto b = {.a = {
.a = 0,
}};
```
Commit: 74197baadf9d6f13e9cb7d14197641c1fc3d1fc0
https://github.com/llvm/llvm-project/commit/74197baadf9d6f13e9cb7d14197641c1fc3d1fc0
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/tools/llc/llc.cpp
M llvm/tools/lli/lli.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in llc/lli.cpp (#162936)
Move file local function and variables out of anonymous namespace and
mark them static.
Commit: 1394e39b1ba065edb4cc6c75ace7b949f932e816
https://github.com/llvm/llvm-project/commit/1394e39b1ba065edb4cc6c75ace7b949f932e816
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in DeadStoreElimination (#163303)
Commit: e938e022f2bc454f53e2fed894ede34a82d2833b
https://github.com/llvm/llvm-project/commit/e938e022f2bc454f53e2fed894ede34a82d2833b
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/GVNSink.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in GVNSink (#163305)
Commit: 16dfd317f38ebfc0bd39a5e20e2a8851daa4f8b8
https://github.com/llvm/llvm-project/commit/16dfd317f38ebfc0bd39a5e20e2a8851daa4f8b8
Author: Victor Vianna <victor.vianna10 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/AST/ParentMapContext.cpp
Log Message:
-----------
[llvm] Fix C++23 error in ParentMapContext (#163553)
ParentMapContext::ParentMapContext(ASTContext &Ctx) instantiates
~unique_ptr<ParentMapContext::ParentMap>, so it must be defined after
that class is a complete type.
Co-authored-by: Victor Hugo Vianna Silva <victorvianna at google.com>
Commit: cfe6becdefa082692dd22eab74860c6159851ccc
https://github.com/llvm/llvm-project/commit/cfe6becdefa082692dd22eab74860c6159851ccc
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/test/CodeGen/DirectX/Metadata/cbuffer_metadata.ll
Log Message:
-----------
[DirectX] Make a test a bit more readable. NFC (#160747)
CHECK-lines ignore whitespace, so we can remove some here and make this
a bit easier to read.
Commit: bea77ed52e2d714a9f1a836673733dc5f44a29e3
https://github.com/llvm/llvm-project/commit/bea77ed52e2d714a9f1a836673733dc5f44a29e3
Author: James Newling <james.newling at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
A mlir/test/Dialect/Vector/canonicalize/vector-step.mlir
Log Message:
-----------
[mlir][Vector] Fold vector.step compared to constant (#161615)
This PR adds a canonicalizer to vector.step that folds vector.step iff
the result of the fold is a splat value. An alternative would be to
always constant fold it, but that might result in some very
large/cumbersome constants.
I do wonder if vector.step might be better represented as some sort of
attribute in the arith dialect, like %step = arith.constant iota<32> :
vector<32xindex>.
---------
Signed-off-by: James Newling <james.newling at gmail.com>
Commit: 5e668fe84f77599da10e90ebba09695445ead358
https://github.com/llvm/llvm-project/commit/5e668fe84f77599da10e90ebba09695445ead358
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
A lldb/test/API/macosx/debugserver-multimemread/Makefile
A lldb/test/API/macosx/debugserver-multimemread/TestDebugserverMultiMemRead.py
A lldb/test/API/macosx/debugserver-multimemread/main.c
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/debugserver/source/RNBRemote.h
Log Message:
-----------
[debugserver] Implement MultiMemRead packet (#162670)
This commit implements, in debugserver, the packet as discussed in the
RFC [1].
[1]:
https://discourse.llvm.org/t/rfc-a-new-vectorized-memory-read-packet/88441
Commit: a1b0db82cf5fdf0a2981877c9a939a8097393049
https://github.com/llvm/llvm-project/commit/a1b0db82cf5fdf0a2981877c9a939a8097393049
Author: Michael Halkenhäuser <MichaelGerald.Halkenhauser at amd.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M openmp/tools/omptest/include/InternalEvent.h
M openmp/tools/omptest/src/InternalEventOperators.cpp
A openmp/tools/omptest/test/unittests/internal-event-eq-test.cpp
R openmp/tools/omptest/test/unittests/internal-event-test.cpp
A openmp/tools/omptest/test/unittests/internal-event-tostring-test.cpp
Log Message:
-----------
[OpenMP][omptest] Add Dispatch equality operator (#162667)
Add equality op which checks 'Kind'
- For now this seems more reasonable than defaulting to true
Chose to keep toString and equality unit tests separate
Commit: cf1cdde24e76a4ff5bbda2128800ba3ca4132b6d
https://github.com/llvm/llvm-project/commit/cf1cdde24e76a4ff5bbda2128800ba3ca4132b6d
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/AsmWriter.cpp
A llvm/test/Assembler/dicompileunit-invalid-language-version.ll
A llvm/test/Bitcode/Inputs/compile-unit-no-versioned-language.bc
A llvm/test/Bitcode/dwarf-source-language-version.ll
A llvm/test/Bitcode/upgrade-DICompileUnit-no-versioned-language.test
Log Message:
-----------
[llvm][DebugInfo] Add 'sourceLanguageVersion' field support to DICompileUnit (#162632)
Depends on:
* https://github.com/llvm/llvm-project/pull/162445
In preparation to emit DWARFv6's `DW_AT_language_version`.
Commit: 7775ef6549589c7e006130832346ab369c992f88
https://github.com/llvm/llvm-project/commit/7775ef6549589c7e006130832346ab369c992f88
Author: Jacques Pienaar <jpienaar at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[mlir][bzl] Add CAPI targets for Shape and Tensor. (#163579)
Commit: d02f8b42f8111dd2ec828fc04f0305a4dc7feb73
https://github.com/llvm/llvm-project/commit/d02f8b42f8111dd2ec828fc04f0305a4dc7feb73
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
Log Message:
-----------
[RISCV] Rename ExtraVALU->DualVALU. NFC (#163486)
"Extra" makes it sound excessive or unusual.
Commit: 724c2aa9cbda71c971dc994c604203be339264bc
https://github.com/llvm/llvm-project/commit/724c2aa9cbda71c971dc994c604203be339264bc
Author: Victor Vianna <victor.vianna10 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/Support/Caching.h
Log Message:
-----------
Fix C++23 build error in llvm/Support/Caching.h (#163545)
[1] instantiates ~std::unique_ptr<MemoryBuffer>, so it must be a
complete type.
[1]
https://github.com/llvm/llvm-project/blob/4b89704504dde687ba7983e034cb246581fd1407/llvm/include/llvm/Support/Caching.h#L121
Co-authored-by: Victor Hugo Vianna Silva <victorvianna at google.com>
Commit: 0ded75c2d1bc9816e5e90289fa746caef6a0bc38
https://github.com/llvm/llvm-project/commit/0ded75c2d1bc9816e5e90289fa746caef6a0bc38
Author: Victor Vianna <victor.vianna10 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/ProfileData/InstrProfCorrelator.h
Log Message:
-----------
[llvm] Fix C++23 error in InstrProfCorrelator.h (#163554)
[1] instantiates ~unique_ptr<DwarfContext>, so that must be a complete
type.
[1]
https://github.com/llvm/llvm-project/blob/67e6a376209c9cc9576012c1c042bee9b852d584/llvm/include/llvm/ProfileData/InstrProfCorrelator.h#L182
Co-authored-by: Victor Hugo Vianna Silva <victorvianna at google.com>
Commit: 71ad307d231c8048327c7a74c1bb38f0b86fde15
https://github.com/llvm/llvm-project/commit/71ad307d231c8048327c7a74c1bb38f0b86fde15
Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/PPMacroExpansion.cpp
M clang/test/Preprocessor/embed___has_embed_parsing_errors.c
Log Message:
-----------
[Clang] prevent crash on unterminated __has_embed (#163107)
Fixes #162953
---
This PR addresses the issue of Clang crashing on unterminated
`__has_embed` by guarding all `DiscardUntilEndOfDirective` paths with
the contextual end token and diagnosing the missing `)` before reporting
_unknown_ parameters.
Commit: cc251197a0a12a289acf99c7ead7938d695b0905
https://github.com/llvm/llvm-project/commit/cc251197a0a12a289acf99c7ead7938d695b0905
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/legalize-vector-compress.mir
Log Message:
-----------
[GISel] Use G_ZEXT when widening G_EXTRACT_VECTOR_ELT/G_INSERT_VECTOR_ELT index. (#163416)
Commit: 22cd3807d187f5bf16a5abf893933aa9c7944ca4
https://github.com/llvm/llvm-project/commit/22cd3807d187f5bf16a5abf893933aa9c7944ca4
Author: Amr Hesham <amr96 at programmer.net>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/throws.cpp
Log Message:
-----------
[CIR] ThrowOp with Complex type as Subexpr (#163078)
Upstream support to throw Complex type with RTTI and update
`getComdatAttr` to perform symtab lookup before adding new selector to
comdat, to avoid generating duplicate symbol in comdat.
Ref from FIR:
https://github.com/llvm/clangir/blob/8c0951a3efbc6fec04312d36739771b2c840c8d2/flang/lib/Optimizer/CodeGen/CodeGen.cpp#L3281-L3283
Issue #154992
Commit: c89d721165da0c50a810c3f72bf000925e756e4b
https://github.com/llvm/llvm-project/commit/c89d721165da0c50a810c3f72bf000925e756e4b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
A lldb/test/API/tools/lldb-dap/attach-commands/Makefile
A lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
A lldb/test/API/tools/lldb-dap/attach-commands/main.c
M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
M lldb/test/API/tools/lldb-dap/attach/main.c
Log Message:
-----------
[lldb-dap] Remove timings from TestDAP_attach (#163452)
This PR split TestDAP_attach into two tests and removes any reliance on
timing from the simple attach tests. Instead, it uses stdin and stdout
to synchronize between the test and the inferior, and to check that
we're attached to the correct inferior.
Fixes #163295
Commit: 097f1e7625966673b881df63a241f755317b0bb9
https://github.com/llvm/llvm-project/commit/097f1e7625966673b881df63a241f755317b0bb9
Author: Ebuka Ezike <yerimyah1 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/Process/Utility/GDBRemoteSignals.cpp
M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
M llvm/docs/ReleaseNotes.md
Log Message:
-----------
[lldb] Do not stop the process on SIGWINCH by default. (#163182)
SIGWINCH is sent when the terminal window size changes.. Most people
debugging do not want the process on this signal.
When using lldb-dap, the user may be using an integrated terminal and
may resize the pane/window mulitple times when debugging. this causes
the signal to be sent multiple times. It gets in the way.
The process ignores this signal by default
Commit: 9deba01c1d5db607da5b943bd5a6185384608605
https://github.com/llvm/llvm-project/commit/9deba01c1d5db607da5b943bd5a6185384608605
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/tools/driver/cc1as_main.cpp
M llvm/include/llvm/CodeGen/AsmPrinter.h
M llvm/include/llvm/Support/SourceMgr.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp
M llvm/lib/Support/SourceMgr.cpp
M llvm/lib/TableGen/Main.cpp
M llvm/lib/TableGen/Parser.cpp
M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp
M llvm/tools/llvm-mc/llvm-mc.cpp
M llvm/tools/llvm-ml/llvm-ml.cpp
M llvm/unittests/Support/SourceMgrTest.cpp
M mlir/lib/IR/Diagnostics.cpp
M mlir/lib/Tools/PDLL/Parser/Parser.cpp
M mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp
M mlir/tools/mlir-pdll/mlir-pdll.cpp
Log Message:
-----------
[support] Use VFS in `SourceMgr` for loading includes (#162903)
Most `SourceMgr` clients don't make use of include files, but those that
do might want to specify the file system to use. This patch enables that
by making it possible to pass a `vfs::FileSystem` instance into
`SourceMgr`.
Commit: ce60a03573a4d9f28dd6de42f61f0a3c4b0f2be9
https://github.com/llvm/llvm-project/commit/ce60a03573a4d9f28dd6de42f61f0a3c4b0f2be9
Author: sc-clulzze <d.marakulin at syntacore.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/BranchRelaxation.cpp
A llvm/test/CodeGen/RISCV/branch-rel.mir
Log Message:
-----------
[BranchRelaxation] Fix invalid branch generation in branch-relaxation (#162065)
If we have MBB with only one successor which is accessable through both
conditional and unconditional branches (TBB == FBB), in
`fixupConditionalBranch` we will first replace FBB with NewMBB in
successors list - `MBB->replaceSuccessor(FBB, NewBB);`, and then create
branch to TBB - `insertBranch(MBB, &NextBB, TBB, Cond);`, ending up with
two branches to different blocks, but only one successor.
Fixes: https://github.com/llvm/llvm-project/issues/162063
Commit: f49e3d178b8b8ab3ad6a87f999b42a5a76353c2e
https://github.com/llvm/llvm-project/commit/f49e3d178b8b8ab3ad6a87f999b42a5a76353c2e
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/test/C/C2y/n3364.c
Log Message:
-----------
Repair test for WG14 N3364 (#163551)
The CodeGen test was missing a call to FileCheck which is now added
Commit: 67790d3fb06b184b7be9c4d3e36ab01f0ac4198e
https://github.com/llvm/llvm-project/commit/67790d3fb06b184b7be9c4d3e36ab01f0ac4198e
Author: Victor Vianna <victor.vianna10 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/CFG.h
Log Message:
-----------
[llvm] Fix C++23 error in {Succ,Pred}Iterator (#163555)
[1] calls insert in an underlying vector and in C++23 that requires the
iterators to satisfy stricter constraints [2][3].
[1]
https://github.com/llvm/llvm-project/blob/67e6a376209c9cc9576012c1c042bee9b852d584/llvm/lib/Analysis/LazyValueInfo.cpp#L333
[2]
https://github.com/llvm/llvm-project/blob/20bcf123e2db033f208462f34f63e292efbe0946/libcxx/include/__vector/vector.h#L645-L649
[3]
https://github.com/llvm/llvm-project/blob/20bcf123e2db033f208462f34f63e292efbe0946/libcxx/include/__algorithm/ranges_copy_n.h#L61
Co-authored-by: Victor Hugo Vianna Silva <victorvianna at google.com>
Commit: 24a4ad89416325aabea8cc1e443a13a893457ec2
https://github.com/llvm/llvm-project/commit/24a4ad89416325aabea8cc1e443a13a893457ec2
Author: Petr Hosek <phosek at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libc/config/baremetal/config.json
Log Message:
-----------
[libc] Disable null checks on baremetal platforms (#163515)
On baremetal platforms, 0 is often a valid address and the null checks
can break otherwise correct code.
Commit: e71287177ad00d15c3d5806cd1da508f2f67e1c2
https://github.com/llvm/llvm-project/commit/e71287177ad00d15c3d5806cd1da508f2f67e1c2
Author: Stefan Mada <smada at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
M mlir/test/Target/LLVMIR/nvvmir.mlir
Log Message:
-----------
[MLIR][NVVM] Fix assertion failure for insufficient parsing validation of nvvm dialect PureSpecialRangeableRegisterOp (#163434)
The nvvm dialect instruction PureSpecialRangeableRegisterOp will trigger
an assertion failure in LLVM's constant range class when the lower and
upper range bounds are equal, but not equal to the integer minimum or
max (as required by constant ranges). This requirement is at [line 56 of
ConstantRange.cpp](https://llvm.org/doxygen/ConstantRange_8cpp_source.html#l00056):
`assert((Lower != Upper || (Lower.isMaxValue() || Lower.isMinValue()))
&& "Lower == Upper, but they aren't min or max value!");`
However, you can write an NVVM dialect operation such as:
`%0 = nvvm.read.ptx.sreg.warpsize range <i32, 32, 32> : i32`
which triggers this assertion. This change adds a fix to ensure that
this requirement is also enforced by NVVM.
Commit: d60d0381b41ee814c270ccee0e764b84096f8171
https://github.com/llvm/llvm-project/commit/d60d0381b41ee814c270ccee0e764b84096f8171
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/test/Conversion/XeGPUToXeVM/loadstoreprefetch.mlir
Log Message:
-----------
[MLIR][Conversion] XeGPU to XeVM: Remove unused type converter source materializations. (#162947)
And add source materialization for single element vector.
Commit: 1cec6be8d6783d94f7e70ea157ecc0563cf11ee8
https://github.com/llvm/llvm-project/commit/1cec6be8d6783d94f7e70ea157ecc0563cf11ee8
Author: Mingming Liu <mingmingl at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
M llvm/lib/Analysis/StaticDataProfileInfo.cpp
M llvm/test/CodeGen/X86/global-variable-partition-with-dap.ll
Log Message:
-----------
[StaticDataLayout] Reconcile data hotness based on PGO counters and data access profiles (#163325)
This PR enhances the `StaticDataProfileInfo::getConstantSectionPrefix`
pass to reconcile data hotness information from both PGO counters and
data access profiles. When both profiles are available for a global
variable, the pass will now use the "hotter" of the two to determine the
variable's section placement.
This is a follow-up patch of
https://github.com/llvm/llvm-project/pull/162388
Commit: c4d7c42b1de2117f104e202ac0f4b808bce4d28b
https://github.com/llvm/llvm-project/commit/c4d7c42b1de2117f104e202ac0f4b808bce4d28b
Author: Julian Lettner <jlettner at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Host/macosx/objcxx/Host.mm
Log Message:
-----------
[LLDB][Darwin] Clarify which API call enables memory tagging
Commit: 4f23767852893419cf22d30f8437c54a98ae4000
https://github.com/llvm/llvm-project/commit/4f23767852893419cf22d30f8437c54a98ae4000
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
Log Message:
-----------
[VPlan] Add m_FirstActiveLane matcher (NFC).
Add m_FirstActiveLane, to slightly simplify pattern matching in
preparation for https://github.com/llvm/llvm-project/pull/149042.
Commit: ed8ad46fbe62e5b959914652536a3e2acb0d5bb0
https://github.com/llvm/llvm-project/commit/ed8ad46fbe62e5b959914652536a3e2acb0d5bb0
Author: Joshua Rodriguez <josh.rodriguez at arm.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
M llvm/test/CodeGen/AArch64/aarch64-matmul.ll
Log Message:
-----------
[AArch64][GlobalISel] Added usdot intrinsic support (#162615)
GlobalISel now selects usdot intrinsic, without falling back to SDAG.
Commit: 1673501fe5df963dbb0efec355d04c7fd8716347
https://github.com/llvm/llvm-project/commit/1673501fe5df963dbb0efec355d04c7fd8716347
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/include/llvm/ADT/StringSwitch.h
Log Message:
-----------
[ADT] Make argument order consistent in StringSwitch helpers. NFC. (#163592)
Now that we do not need to deal with variadic templates in `CasesImpl`,
align all helper functions to the same argument order as the public API.
Commit: bd6ed29f342ef273ead8f4d57a0cd4e95e0a6354
https://github.com/llvm/llvm-project/commit/bd6ed29f342ef273ead8f4d57a0cd4e95e0a6354
Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/X86/X86InstrCompiler.td
A llvm/test/CodeGen/X86/absolute-symbol-kernel-code-model.ll
Log Message:
-----------
[X86] Do not use movq in -mcmodel=kernel on an out of range abs global (#163323)
CFI can lead to some `relocation R_X86_64_32S out of range` errors when
using thinlto. We have an instance of an `inline_bits` alias with a
value of 0x8000008000000001 which cannot fit into a signed 32-bit reloc
hence the error. This reloc is used because the instruction for reading
the alias is `movq` which uses a signed 32-bit immediate. The proper
instruction to use in this instance is `movabs` for the full 64-bit
reloc.
Under the kernel model, a signed 32-bit immediate was always used but if
the target is a global with `absolue_symbol` we should reject the
MOV64ri32. The pattern matching logic will eventually lead to a match for
MOV64ri which emits the `movabs`.
Commit: 4b84e0f3f0d1e1b67782c4f619d466d1314b1e35
https://github.com/llvm/llvm-project/commit/4b84e0f3f0d1e1b67782c4f619d466d1314b1e35
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
A offload/test/offloading/interop-print.c
Log Message:
-----------
[OpenMP] Add test to print interop identifiers (#161434)
The test covers some of the identifier symbols in the interop runtime.
This test, for now, is to guard against complete breakage, which was the
result of the other `interop.c` test not being enabled on AMD and thus,
not caught by our buildbots.
Commit: 59ab4d4bbc07518118a1dab7a0978cbd5f489f8d
https://github.com/llvm/llvm-project/commit/59ab4d4bbc07518118a1dab7a0978cbd5f489f8d
Author: Krish Gupta <krishom70 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Semantics/check-omp-atomic.cpp
M flang/lib/Semantics/check-omp-structure.h
A flang/test/Semantics/OpenMP/omp-atomic-write-pointer-derived.f90
Log Message:
-----------
[flang][OpenMP] Add diagnostic for ATOMIC WRITE with pointer to non-intrinsic type (#162364)
Fixes https://github.com/llvm/llvm-project/issues/161932
Added a check for non-intrinsic types in non-pointer assignments.
Added bool checkTypeOnPointer = true to both CheckAtomicVariable and
CheckAtomicType. All atomic assignment functions now pass
!IsPointerAssignment(...) to control the check. The pointer-to-non-intrinsic
check lives in CheckAtomicType, guarded by the checkTypeOnPointer flag.
The check now applies uniformly to all atomic operations while properly
excluding pointer assignments (=>).
---------
Co-authored-by: Krish Gupta <krishgupta at Krishs-MacBook-Air.local>
Commit: 86b89a6dcc7909409dbc50f469008009f27df257
https://github.com/llvm/llvm-project/commit/86b89a6dcc7909409dbc50f469008009f27df257
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.h
Log Message:
-----------
[VPlan] Mark VPlan argument in isHeaderMask as const (NFC).
isHeaderMask should not modify the VPlan; mark as const to allow easy
re-use in the VPlanVerifier.
Commit: eeca8947588ef1276b6f9ed8c5bb4cdb499f8611
https://github.com/llvm/llvm-project/commit/eeca8947588ef1276b6f9ed8c5bb4cdb499f8611
Author: Florian Hahn <flo at fhahn.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
Log Message:
-----------
[VPlan] Use switch over opcodes in verifier (NFC).
Preparation to make it easier to extend to verify additional opcodes.
Commit: b516dcc998d06c97d874af543489887f7e5a680c
https://github.com/llvm/llvm-project/commit/b516dcc998d06c97d874af543489887f7e5a680c
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
M clang-tools-extra/clangd/refactor/tweaks/PopulateSwitch.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/RecursiveASTVisitor.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/ASTMatchersInternal.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Pointer.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclarationName.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/InheritViz.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenTBAA.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/ARC.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/CodeGen/Targets/Lanai.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/Mips.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
M clang/lib/Index/IndexTypeSourceInfo.cpp
M clang/lib/Index/USRGeneration.cpp
M clang/lib/InstallAPI/Visitor.cpp
M clang/lib/Interpreter/InterpreterValuePrinter.cpp
M clang/lib/Sema/SemaAvailability.cpp
M clang/lib/Sema/SemaBPF.cpp
M clang/lib/Sema/SemaCXXScopeSpec.cpp
M clang/lib/Sema/SemaCast.cpp
M clang/lib/Sema/SemaChecking.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaCoroutine.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaDeclObjC.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprObjC.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaInit.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaSYCL.cpp
M clang/lib/Sema/SemaStmt.cpp
M clang/lib/Sema/SemaStmtAsm.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaTemplateInstantiate.cpp
M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/SemaTypeTraits.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/TemplateArgumentHasher.cpp
M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CIndexCodeCompletion.cpp
M clang/tools/libclang/CXCursor.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/tools/libclang/CXType.cpp
M clang/unittests/AST/ASTContextParentMapTest.cpp
M clang/unittests/AST/ASTImporterTest.cpp
M clang/unittests/AST/StructuralEquivalenceTest.cpp
M clang/unittests/StaticAnalyzer/SValTest.cpp
M clang/unittests/Tooling/LookupTest.cpp
M clang/unittests/Tooling/RecursiveASTVisitorTests/MemberPointerTypeLoc.cpp
M clang/unittests/Tooling/RecursiveASTVisitorTests/NestedNameSpecifiers.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTImporter.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/ExpressionParser/Clang/NameSearchContext.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
Log Message:
-----------
[clang] NFC: rename TagType::getOriginalDecl back to getDecl (#163271)
This rename was made as part of
https://github.com/llvm/llvm-project/pull/147835 in order to ease
rebasing the PR, and give a nice window for other patches to get rebased
as well.
It has been a while already, so lets go ahead and rename it back.
Commit: a561a0802d57dba1e0ba3cbf465efbbf097aefb6
https://github.com/llvm/llvm-project/commit/a561a0802d57dba1e0ba3cbf465efbbf097aefb6
Author: ravil-mobile <ravil.aviva.com at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 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:
-----------
[ROCDL] Added asynccnt and tensorcnt wait ops (gfx1250) (#163533)
This patch introduces some missing `s.wait.asynccnt` and `tensorcnt`
instructions in the ROCDL dialect.
The op is lowered to `@llvm.amdgcn.s.wait.asynccnt(i16 0)` and
`@llvm.amdgcn.s.wait.tensorcnt(i16 0)` intrinsic calls
Commit: 914fbe367e141a0d2958d8fd7efc482a7c113087
https://github.com/llvm/llvm-project/commit/914fbe367e141a0d2958d8fd7efc482a7c113087
Author: Joseph Huber <huberjn at outlook.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M offload/test/offloading/CUDA/basic_launch_multi_arg.cu
M offload/test/offloading/barrier_fence.c
Log Message:
-----------
[OpenMP] Disable a few more tests to get the bot green (#163614)
Commit: 422c0f37af1bcdd968c4fcae783ed6d51842a9e5
https://github.com/llvm/llvm-project/commit/422c0f37af1bcdd968c4fcae783ed6d51842a9e5
Author: Craig Topper <craig.topper at sifive.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/utils/TableGen/Basic/RISCVTargetDefEmitter.cpp
Log Message:
-----------
[TableGen][RISCV] Don't use auto where the type isn't obvious. NFC (#163611)
Commit: 72c6e4b230ddb5ca85361e145e177245319b271e
https://github.com/llvm/llvm-project/commit/72c6e4b230ddb5ca85361e145e177245319b271e
Author: Peter Collingbourne <pcc at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libc/test/src/sys/mman/linux/CMakeLists.txt
M libc/test/src/sys/mman/linux/mincore_test.cpp
M libc/test/src/sys/mman/linux/mlock_test.cpp
M libc/test/src/sys/mman/linux/msync_test.cpp
M libc/test/src/sys/mman/linux/remap_file_pages_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/libc/test/src/sys/mman/BUILD.bazel
Log Message:
-----------
libc: Introduce calls to sysconf to get page size.
sysconf(_SC_PAGESIZE) is implemented now.
Reviewers: michaelrj-google, aaronmondal, rupprecht, keith
Reviewed By: michaelrj-google
Pull Request: https://github.com/llvm/llvm-project/pull/163462
Commit: c87e0e8fe0ea14dcd84e835c0f7b02c5b0edca70
https://github.com/llvm/llvm-project/commit/c87e0e8fe0ea14dcd84e835c0f7b02c5b0edca70
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
Log Message:
-----------
[DirectX] Move triple/DL compat to bitcode writer (#163587)
Move our handling of setting up a compatible triple for DXIL to the
bitcode writer itself, and do the same for the datalayout. This avoids
us needing to temporarily change the triple just to change it back, and
it also allows us to make the datalayout truly compatible, including the
`i8:32` alignment that isn't accepted by modern LLVM's DataLayout.
Commit: bf5f4417316a287726c2d75d04cacb1e0a27d519
https://github.com/llvm/llvm-project/commit/bf5f4417316a287726c2d75d04cacb1e0a27d519
Author: Justin Bogner <mail at justinbogner.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/Basic/Targets/DirectX.h
M clang/test/CodeGenHLSL/basic-target.c
M llvm/lib/TargetParser/TargetDataLayout.cpp
M llvm/test/CodeGen/DirectX/CBufferAccess/memcpy.ll
Log Message:
-----------
[DirectX] Add 32- and 64-bit 3-element vectors to DataLayout (#160955)
This explicitly adds two 3-element vectors to the DataLayout so that
they'll be element-aligned. We need to do this more generally for
vectors, but this unblocks some very common cases.
Workaround for #123968
Commit: 1c2f01e2c60c8e1351009bcf1c0c1d2a9895f2ff
https://github.com/llvm/llvm-project/commit/1c2f01e2c60c8e1351009bcf1c0c1d2a9895f2ff
Author: Stefan Mada <smada at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Fixed assertion failure for insufficient parsing validation of nvvm dialect MMAOp (#163432)
Commit: 2b135b931338a57c38d9c4a34ffdd59877ba82d6
https://github.com/llvm/llvm-project/commit/2b135b931338a57c38d9c4a34ffdd59877ba82d6
Author: Steven Wu <stevenwu at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M cmake/Modules/FindGRPC.cmake
Log Message:
-----------
[CMake][gRPC] Update FindGRPC.cmake to support newer gRPC versions (#162935)
Update the logic to find gRPC to always favor CMake `find_package`
implementation including for builds on macOS that uses homebrew, where
gRPCConfig.cmake is also installed to provide an accurate target
dependencies to link against.
This fixes the problem that newer gRPC version has broken up the
libraries into smaller pieces and the hard coded list of libraries in
the implementation can no longer work.
Fixes: https://github.com/llvm/llvm-project/issues/59844
Commit: 856de0501b5a53376a0112e36b4bf10e1e2867b7
https://github.com/llvm/llvm-project/commit/856de0501b5a53376a0112e36b4bf10e1e2867b7
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
M mlir/test/Dialect/LLVMIR/canonicalize.mlir
Log Message:
-----------
[MLIR][Conversion] Vector to LLVM: Remove unneeded vector shuffle (#162946)
if vector.broadcast source is a scalar and target is a single element 1D
vector.
Commit: 6a0416af54639cdac5b134b7d4f060908892428b
https://github.com/llvm/llvm-project/commit/6a0416af54639cdac5b134b7d4f060908892428b
Author: Florian Mayer <fmayer at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
Log Message:
-----------
[FlowSensitive] [StatusOr] [1/N] Add mock headers (#163261)
This precommits the mock headers needed for that StatusOr model tests.
Commit: 995eb4ca2ee15daffcc5a20121de955a0e2ca023
https://github.com/llvm/llvm-project/commit/995eb4ca2ee15daffcc5a20121de955a0e2ca023
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/tools/lldb-dap/ProtocolUtils.cpp
Log Message:
-----------
[lldb-dap] Add readOnly attribute for variables (#151884)
This patch adds `readOnly`
[attribute](https://microsoft.github.io/debug-adapter-protocol/specification#Types_VariablePresentationHint)
for variables. When this attribute is returned for a variable, VS Code
prevents editing (and grays out the `Set Value` button). Without this,
users might be confused if the UI allows edits but the debug adapter
often returns an error. I checked `SetValueFromCString` function
implementation and found that it doesn't support aggregate data types,
so I added simple check for them. Also, I found that I can update value
of registers sets (but without any effects). So I also added checks for
those as well.
Commit: 4a44f03271246d64bee4edd8bcaf47f06db76475
https://github.com/llvm/llvm-project/commit/4a44f03271246d64bee4edd8bcaf47f06db76475
Author: Alexey Bader <alexey.bader at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/CodeGen/BackendUtil.cpp
A clang/test/CodeGen/unified-lto-module-flag.ll
Log Message:
-----------
[Clang][LTO] Fix use of funified-lto and save-temps flags together (#162763)
> clang -flto -funified-lto -save-temps test.c
Fails with the following error message:
```bash
module flag identifiers must be unique (or of 'require' type)
!"UnifiedLTO"
fatal error: error in backend: Broken module found, compilation aborted!
clang: error: clang frontend command failed with exit code 70 (use -v to see invocation)
```
Here is what the driver does when `-save-temps` flag is set:
> clang -flto -funified-lto -save-temps test.c -ccc-print-phases
> +- 0: input, "test.c", c
> +- 1: preprocessor, {0}, cpp-output
> +- 2: compiler, {1}, ir
> +- 3: backend, {2}, lto-bc
> 4: linker, {3}, image
The IR output of "compiler" step has "UnifiedLTO" module flag. "backend"
step adds another module flag with "UnifiedLTO" identifier, which
invalidates the LLVM IR module.
Commit: 2d23a60de866f2f858e54e1c87ec5a7948b82079
https://github.com/llvm/llvm-project/commit/2d23a60de866f2f858e54e1c87ec5a7948b82079
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Lower/Allocatable.cpp
A flang/test/Lower/CUDA/TODO/cuda-allocate-default-init.cuf
Log Message:
-----------
[flang][cuda] Add TODO for allocate with default initialization (#163625)
Commit: 85265a93cc796bfbfb6ee88a5b48bbd68b73aa63
https://github.com/llvm/llvm-project/commit/85265a93cc796bfbfb6ee88a5b48bbd68b73aa63
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
A clang/test/CIR/CodeGen/vla.c
Log Message:
-----------
[CIR] Upstream support for variable length arrays (#163297)
This adds the code needed to emit alloca operations for variable length
array local variables and the necessary calls to stacksave and
stackrestore to adjust the local stack as the array variables go in an
out of scope.
Commit: b936f2ceeba3e0b17858660a828f36e3415f0288
https://github.com/llvm/llvm-project/commit/b936f2ceeba3e0b17858660a828f36e3415f0288
Author: erichkeane <ekeane at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
Log Message:
-----------
[OpenACC] Call 'cleanup' on lexical scopes before yield
When creating a 'yield', we have to make sure that the lexical scope we
created gets cleaned up. This isn't really testable until a followup
patch, but I got this wrong in quite a few places.
Commit: b6262825bd52fb9a106ad6feb0358ad3113ecc5f
https://github.com/llvm/llvm-project/commit/b6262825bd52fb9a106ad6feb0358ad3113ecc5f
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
Log Message:
-----------
[alpha.webkit.UnretainedCallArgsChecker] Treat NSStringFromSelector and alike as trivial and returns a retained value (#161135)
Treat NSStringFromSelector, NSSelectorFromString, NSStringFromClass,
NSClassFromString, NSStringFromProtocol, and NSProtocolFromString as
trivial, and treat their return values as a safe pointer origin since
the return value of these functions don't need to be retained.
Commit: 441587af3f5e126a7273e885b0273d7cf9a81396
https://github.com/llvm/llvm-project/commit/441587af3f5e126a7273e885b0273d7cf9a81396
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/JSONUtils.h
M lldb/tools/lldb-dap/Options.td
M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
M lldb/tools/lldb-dap/package.json
M lldb/tools/lldb-dap/tool/lldb-dap.cpp
Log Message:
-----------
[lldb-dap] Add stdio redirection for integrated and external terminals (#161089)
This patch extends stdio redirection support to integrated and external
terminals. Currently, these cases are not covered by the standard logic
because `attach` is used instead of `launch`. To be honest,
`runInTerminal` in
[VSCode](https://github.com/microsoft/vscode/blob/main/src/vs/workbench/contrib/debug/node/terminals.ts#L188)
request supports `>` and `<` for redirection, but not `2>`. We could use
the `argsCanBeInterpretedByShell` option to use full power of shell,
however it requieres proper escaping of arguments on lldb-dap side. So,
I think it will be better to have the only one option to control stdio
redirection that works consistently across all console modes.
Also, fixed a small typo in a comparison that was leading to
out-of-bound access, and added `null` as a possible value for `stdio`
array in package.json.
Commit: a1f233ae07124783b18d9e11351a3e4f7ace05ca
https://github.com/llvm/llvm-project/commit/a1f233ae07124783b18d9e11351a3e4f7ace05ca
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py
Log Message:
-----------
[lldb] Fix bot failure due to new qSupported packet reply (#163643)
When [1] landed, gdbremote server tests had to be updated to understand
the new packet field.
[1]: https://github.com/llvm/llvm-project/pull/163249
Commit: 6574a2e5e0c1c4d13cba7f986605dc516dded2c2
https://github.com/llvm/llvm-project/commit/6574a2e5e0c1c4d13cba7f986605dc516dded2c2
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Lower/Allocatable.cpp
A flang/test/Lower/CUDA/TODO/cuda-allocate-source-device.cuf
Log Message:
-----------
[flang][cuda] Add TODO for allocate with device source (#163630)
Commit: 3e251e727f6a214d11272c58db50b56544ee023d
https://github.com/llvm/llvm-project/commit/3e251e727f6a214d11272c58db50b56544ee023d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/include/lldb/Utility/XcodeSDK.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Utility/XcodeSDK.cpp
M lldb/unittests/Utility/XcodeSDKTest.cpp
Log Message:
-----------
[lldb] Correct bridgeOS -> BridgeOS spelling (#163479)
The BridgeOS SDK is capitalized, but previously failed to parse because
we were looking for bridgeOS. This PR updates the enum value and the
canonical spelling.
rdar://162641896
Commit: e61e6251b692ffe71910bad22b82e41313f003cf
https://github.com/llvm/llvm-project/commit/e61e6251b692ffe71910bad22b82e41313f003cf
Author: Ryosuke Niwa <rniwa at webkit.org>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
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/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
M clang/test/Analysis/Checkers/WebKit/mock-types.h
Log Message:
-----------
[alpha.webkit.ForwardDeclChecker] Ignore unary operator when detecting a parameter (#160994)
This PR updates the forward declaration checker so that unary operator &
and * will be ignored for the purpose of determining if a given function
argument is also a function argument of the caller / call-site.
Commit: dc4cef81d47c7bc4a3c4d58fbacf8a6359683fae
https://github.com/llvm/llvm-project/commit/dc4cef81d47c7bc4a3c4d58fbacf8a6359683fae
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang-tools-extra/clang-tidy/.clang-format
Log Message:
-----------
[clang-tidy][NFC] Enforce Unix line endings (#163650)
With https://github.com/llvm/llvm-project/pull/161460 merged, we should
also enforce it in CI (although nothing changed for current files)
Commit: c422881670faf30b545362b3af2c310a6800cde5
https://github.com/llvm/llvm-project/commit/c422881670faf30b545362b3af2c310a6800cde5
Author: Alexander Richardson <alexrichardson at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
Log Message:
-----------
[SelectionDAGBuilder] Use address width when lowering ptrtoaddr
Instead of just deferring to ptrtoint, we should truncate to the index
width and then perform the ZextOrTrunc.
This is effectively NFC since ptrtoint ends up doing the same thing, but
handling it explicitly is cleaner and will make it easier to eventually
upstream the changes needed for CHERI support.
Reviewed By: nikic, arsenm
Pull Request: https://github.com/llvm/llvm-project/pull/139423
Commit: 49f03eed05192312bcede7f9dce5daf24edd422a
https://github.com/llvm/llvm-project/commit/49f03eed05192312bcede7f9dce5daf24edd422a
Author: Petr Hosek <phosek at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libc/config/baremetal/config.json
Log Message:
-----------
[libc] Enable intermediate computation in float for baremetal (#163622)
This can improve performance on 32-bit baremetal targets.
Commit: fd08af0a969a13d505c47a1f64e8f8def65a6aca
https://github.com/llvm/llvm-project/commit/fd08af0a969a13d505c47a1f64e8f8def65a6aca
Author: Peng Liu <winner245 at hotmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/docs/ReleaseNotes/22.rst
M libcxx/include/__iterator/distance.h
A libcxx/test/benchmarks/iterators/distance.bench.cpp
M libcxx/test/std/iterators/iterator.primitives/iterator.operations/distance.pass.cpp
M libcxx/test/std/iterators/iterator.primitives/range.iter.ops/range.iter.ops.distance/iterator_sentinel.pass.cpp
Log Message:
-----------
[libc++] Optimize {std,ranges}::distance for segmented iterators (#133612)
This patch enhances the performance of `std::distance` and
`std::ranges::distance` for non-random-access segmented iterators, e.g.,
`std::join_view` iterators. The original implementation operates in
linear time, `O(n)`, where `n` is the total number of elements. The
optimized version reduces this to approximately `O(n / segment_size)` by
leveraging segmented structure, where `segment_size` is the average size
of each segment.
The table below summarizes the peak performance improvements observed
across different segment sizes, with the total element count `n` ranging
up to `1 << 20` (1,048,576 elements), based on benchmark results.
```
----------------------------------------------------------------------------------------
Container/n/segment_size std::distance std::ranges::distance
----------------------------------------------------------------------------------------
join_view(vector<vector<int>>)/1048576/256 401.6x 422.9x
join_view(deque<deque<int>>)/1048576/256 112.1x 132.6x
join_view(vector<vector<int>>)/1048576/1024 1669.2x 1559.1x
join_view(deque<deque<int>>)/1048576/1024 487.7x 497.4x
```
## Benchmarks
#### Segment size = 1024
```
-----------------------------------------------------------------------------------------
Benchmark Before After Speedup
-----------------------------------------------------------------------------------------
std::distance(join_view(vector<vector<int>>))/50 38.8 ns 1.01 ns 38.4x
std::distance(join_view(vector<vector<int>>))/1024 660 ns 1.02 ns 647.1x
std::distance(join_view(vector<vector<int>>))/4096 2934 ns 1.98 ns 1481.8x
std::distance(join_view(vector<vector<int>>))/8192 5751 ns 3.92 ns 1466.8x
std::distance(join_view(vector<vector<int>>))/16384 11520 ns 7.06 ns 1631.7x
std::distance(join_view(vector<vector<int>>))/65536 46367 ns 32.2 ns 1440.6x
std::distance(join_view(vector<vector<int>>))/262144 182611 ns 114 ns 1601.9x
std::distance(join_view(vector<vector<int>>))/1048576 737785 ns 442 ns 1669.2x
std::distance(join_view(deque<deque<int>>))/50 53.1 ns 6.13 ns 8.7x
std::distance(join_view(deque<deque<int>>))/1024 854 ns 7.53 ns 113.4x
std::distance(join_view(deque<deque<int>>))/4096 3507 ns 14.7 ns 238.6x
std::distance(join_view(deque<deque<int>>))/8192 7114 ns 17.6 ns 404.2x
std::distance(join_view(deque<deque<int>>))/16384 13997 ns 30.7 ns 455.9x
std::distance(join_view(deque<deque<int>>))/65536 55598 ns 114 ns 487.7x
std::distance(join_view(deque<deque<int>>))/262144 214293 ns 480 ns 446.4x
std::distance(join_view(deque<deque<int>>))/1048576 833000 ns 2183 ns 381.6x
rng::distance(join_view(vector<vector<int>>))/50 39.1 ns 1.10 ns 35.5x
rng::distance(join_view(vector<vector<int>>))/1024 689 ns 1.14 ns 604.4x
rng::distance(join_view(vector<vector<int>>))/4096 2753 ns 2.15 ns 1280.5x
rng::distance(join_view(vector<vector<int>>))/8192 5530 ns 4.61 ns 1199.6x
rng::distance(join_view(vector<vector<int>>))/16384 10968 ns 7.97 ns 1376.2x
rng::distance(join_view(vector<vector<int>>))/65536 46009 ns 35.3 ns 1303.4x
rng::distance(join_view(vector<vector<int>>))/262144 190569 ns 124 ns 1536.9x
rng::distance(join_view(vector<vector<int>>))/1048576 746724 ns 479 ns 1559.1x
rng::distance(join_view(deque<deque<int>>))/50 51.6 ns 6.57 ns 7.9x
rng::distance(join_view(deque<deque<int>>))/1024 826 ns 6.50 ns 127.1x
rng::distance(join_view(deque<deque<int>>))/4096 3323 ns 12.5 ns 265.8x
rng::distance(join_view(deque<deque<int>>))/8192 6619 ns 19.1 ns 346.5x
rng::distance(join_view(deque<deque<int>>))/16384 13495 ns 33.2 ns 406.5x
rng::distance(join_view(deque<deque<int>>))/65536 53668 ns 114 ns 470.8x
rng::distance(join_view(deque<deque<int>>))/262144 236277 ns 475 ns 497.4x
rng::distance(join_view(deque<deque<int>>))/1048576 914177 ns 2157 ns 423.8x
-----------------------------------------------------------------------------------------
```
#### Segment size = 256
```
-----------------------------------------------------------------------------------------
Benchmark Before After Speedup
-----------------------------------------------------------------------------------------
std::distance(join_view(vector<vector<int>>))/50 38.1 ns 1.02 ns 37.4x
std::distance(join_view(vector<vector<int>>))/1024 689 ns 2.06 ns 334.5x
std::distance(join_view(vector<vector<int>>))/4096 2815 ns 7.01 ns 401.6x
std::distance(join_view(vector<vector<int>>))/8192 5507 ns 14.3 ns 385.1x
std::distance(join_view(vector<vector<int>>))/16384 11050 ns 33.7 ns 327.9x
std::distance(join_view(vector<vector<int>>))/65536 44197 ns 118 ns 374.6x
std::distance(join_view(vector<vector<int>>))/262144 175793 ns 449 ns 391.5x
std::distance(join_view(vector<vector<int>>))/1048576 703242 ns 2140 ns 328.7x
std::distance(join_view(deque<deque<int>>))/50 50.2 ns 6.12 ns 8.2x
std::distance(join_view(deque<deque<int>>))/1024 835 ns 11.4 ns 73.2x
std::distance(join_view(deque<deque<int>>))/4096 3353 ns 32.9 ns 101.9x
std::distance(join_view(deque<deque<int>>))/8192 6711 ns 64.2 ns 104.5x
std::distance(join_view(deque<deque<int>>))/16384 13231 ns 118 ns 112.1x
std::distance(join_view(deque<deque<int>>))/65536 53523 ns 556 ns 96.3x
std::distance(join_view(deque<deque<int>>))/262144 219101 ns 2166 ns 101.2x
std::distance(join_view(deque<deque<int>>))/1048576 880277 ns 15852 ns 55.5x
rng::distance(join_view(vector<vector<int>>))/50 37.7 ns 1.13 ns 33.4x
rng::distance(join_view(vector<vector<int>>))/1024 697 ns 2.14 ns 325.7x
rng::distance(join_view(vector<vector<int>>))/4096 2804 ns 7.52 ns 373.0x
rng::distance(join_view(vector<vector<int>>))/8192 5749 ns 15.2 ns 378.2x
rng::distance(join_view(vector<vector<int>>))/16384 11742 ns 34.8 ns 337.4x
rng::distance(join_view(vector<vector<int>>))/65536 47274 ns 116 ns 407.7x
rng::distance(join_view(vector<vector<int>>))/262144 187774 ns 444 ns 422.9x
rng::distance(join_view(vector<vector<int>>))/1048576 749724 ns 2109 ns 355.5x
rng::distance(join_view(deque<deque<int>>))/50 53.0 ns 6.09 ns 8.7x
rng::distance(join_view(deque<deque<int>>))/1024 895 ns 11.0 ns 81.4x
rng::distance(join_view(deque<deque<int>>))/4096 3825 ns 30.6 ns 125.0x
rng::distance(join_view(deque<deque<int>>))/8192 7550 ns 60.5 ns 124.8x
rng::distance(join_view(deque<deque<int>>))/16384 14847 ns 112 ns 132.6x
rng::distance(join_view(deque<deque<int>>))/65536 56888 ns 453 ns 125.6x
rng::distance(join_view(deque<deque<int>>))/262144 231395 ns 2034 ns 113.8x
rng::distance(join_view(deque<deque<int>>))/1048576 933093 ns 15012 ns 62.2x
-----------------------------------------------------------------------------------------
```
Addresses a subtask of #102817.
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Co-authored-by: A. Jiang <de34 at live.cn>
Commit: 6cae29fb3a139c37bbaa09fbaa1179a643a231c9
https://github.com/llvm/llvm-project/commit/6cae29fb3a139c37bbaa09fbaa1179a643a231c9
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/lib/Conversion/XeGPUToXeVM/CMakeLists.txt
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Conversion/XeGPUToXeVM/dpas.mlir
A mlir/test/Conversion/XeGPUToXeVM/loadstore_matrix.mlir
M mlir/test/Dialect/XeGPU/invalid.mlir
M mlir/test/Dialect/XeGPU/ops.mlir
Log Message:
-----------
[MLIR][XeGPU] XeVM lowering support for load_matrix/store_matrix (#162780)
This PR adds lowering of xegpu.load_matrix/store_matrix to
xevm.blockload/blockstore or and llvm.load/store, depending on wi level
attributes.
It includes a few components:
1. adds wi-level attributes: subgroup_block_io.
2. expand load_matrix/store_matrix op definition to support scalar data
(besides vector data).
2. adds a member function to mem_desc to compute the linearized address
for a nd offsets.
3. add lowering depending on wi-level attributes:
a) if subgroup_block_io attribute presents, lower to
xevm.blockload/blockstore
c) else lower to llvm.load/store. If result is a vector, lower to
llvm.load/store with vector operand.
Commit: 25c62bca9bc671ae5ce18a79fdef8d6e948c1064
https://github.com/llvm/llvm-project/commit/25c62bca9bc671ae5ce18a79fdef8d6e948c1064
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-15 (Wed, 15 Oct 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/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
M lldb/test/API/tools/lldb-dap/cancel/TestDAP_cancel.py
M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
M lldb/test/API/tools/lldb-dap/io/TestDAP_io.py
M lldb/test/API/tools/lldb-dap/module-event/TestDAP_module_event.py
M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_console.py
Log Message:
-----------
[lldb-dap] Unify the timeouts for the DAP tests (#163292)
Various DAP tests are specifying their own timeouts, with values ranging
from "1" to "20". Most of them seem arbitrary, but some come with a
comment.
The performance characters of running these tests in CI are
unpredictable (they generally run much slower than developers expect)
and really not something we can make assumptions about. I suspect these
timeouts are a contributing factor to the flakiness of the DAP tests.
This PR unifies the timeouts around a central value in the DAP server.
Fixes #162523
Commit: 0cdebdaf59d20f34158d97d193381e95a0ba90b0
https://github.com/llvm/llvm-project/commit/0cdebdaf59d20f34158d97d193381e95a0ba90b0
Author: quic-areg <aregmi at quicinc.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp
A llvm/test/tools/llvm-objdump/ELF/Hexagon/packet-reset-on-label.s
M llvm/tools/llvm-objdump/llvm-objdump.cpp
Log Message:
-----------
[Hexagon][llvm-objdump] Start a fresh packet at symbol boundaries. (#163466)
Hexagon packets can visually straddle labels when data (e.g. jump
tables) in the text section does not carry end-of-packet bits. In such
cases the next instruction, even at a new symbol, appears to continue
the previous packet.
This patch resets packet state when encountering a new symbol so that
packets at symbol starts are guaranteed to start in their own packet.
Commit: d2b27caec60dceb543ff2ce0800317d120c92ccb
https://github.com/llvm/llvm-project/commit/d2b27caec60dceb543ff2ce0800317d120c92ccb
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/GuardWidening.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in GuardWidening (#163585)
Commit: 883c99f71d872294f653565711db145c115996fc
https://github.com/llvm/llvm-project/commit/883c99f71d872294f653565711db145c115996fc
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in JumpTableToSwitch (#163586)
Commit: 721a3604c7758052e85795fcf6a26fc806abda26
https://github.com/llvm/llvm-project/commit/721a3604c7758052e85795fcf6a26fc806abda26
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LICM.cpp
Log Message:
-----------
[NFC][LLVM] Namespace cleanup in LICM (#163594)
Commit: df3f245fcfc24b035d6d26225dbc68c581e5f74a
https://github.com/llvm/llvm-project/commit/df3f245fcfc24b035d6d26225dbc68c581e5f74a
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
Log Message:
-----------
[NFC][LLVM] Code cleanup in LoopBoundSplit (#163595)
Commit: 333c75846d34b0b486385136f22d1d4d4f108b62
https://github.com/llvm/llvm-project/commit/333c75846d34b0b486385136f22d1d4d4f108b62
Author: Rahul Joshi <rjoshi at nvidia.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M mlir/include/mlir/TableGen/CodeGenHelpers.h
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/TableGen/CodeGenHelpers.cpp
M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
Log Message:
-----------
[NFC][MLIR][TableGen] Drop namespace around static Op constraint functions (#162120)
Op constraints are emitted as static standalone functions and need not
be surrounded by the Dialect's C++ namespace. Currently they are, and
this change stops emitting a namespace around these static functions.
Commit: 78d98161b9e38e492023ea2abda72a570bcdbee3
https://github.com/llvm/llvm-project/commit/78d98161b9e38e492023ea2abda72a570bcdbee3
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M llvm/docs/DirectX/DXILResources.rst
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
A llvm/test/CodeGen/DirectX/bufferGetDimensions.ll
Log Message:
-----------
[DirectX] Add `llvm.dx.resource.getdimensions.x` intrinsic and lowering to DXIL (#161753)
Introduces LLVM intrinsic `llvm.dx.resource.getdimensions.x` and its lowering to DXIL op `op.dx.getDimensions`.
The intrinsic will be used to implement `GetDimension` for buffers. The lowering is using `undef` value since it is required by the DXIL format which is based on LLVM 3.7.
Proposal update: https://github.com/llvm/wg-hlsl/pull/350
Closes #112982
Commit: f77756e4acc2d9e0d50f10b3e94fe772b7450e79
https://github.com/llvm/llvm-project/commit/f77756e4acc2d9e0d50f10b3e94fe772b7450e79
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fake_stack.cpp
Log Message:
-----------
[NFC][asan] Clang-format asan_fake_stack.cpp
Reviewers: thurstond, fmayer
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/163667
Commit: 1c7ae8927439e5dbc3c1e9a9df4769ace491f9f6
https://github.com/llvm/llvm-project/commit/1c7ae8927439e5dbc3c1e9a9df4769ace491f9f6
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fake_stack.cpp
M compiler-rt/lib/asan/asan_fake_stack.h
Log Message:
-----------
[NFC][Asan] Make GetTLSFakeStack static
Reviewers: fmayer, thurstond
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/163669
Commit: 8d1454be414449bce0869d521313a355cd062d45
https://github.com/llvm/llvm-project/commit/8d1454be414449bce0869d521313a355cd062d45
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fake_stack.cpp
Log Message:
-----------
[NFC][Asan] Replace 0 with nullptr in asan_fake_stack (#163670)
Commit: 36f7f3442ccbbb1a5aa32ea56d45a5761d01be21
https://github.com/llvm/llvm-project/commit/36f7f3442ccbbb1a5aa32ea56d45a5761d01be21
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libc/include/CMakeLists.txt
M libc/include/stdio.yaml
Log Message:
-----------
[libc] Update generated libc header to include missing functions/files. (#163658)
* Add a missing dependency to install struct_itimerval.h
* Add fseeko/ftello declarations to stdio.h
Commit: 4e996e5d177a6fe834340d87e202d167af7392b2
https://github.com/llvm/llvm-project/commit/4e996e5d177a6fe834340d87e202d167af7392b2
Author: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/utils/git/code-format-helper.py
Log Message:
-----------
fix #163478: false positive in the github actions undef warning
Happened with 'undef,' -- comma not being recognized as a word boundary
Commit: 939d3d03458ac1d284c65a3daf31c1a632dd0fbe
https://github.com/llvm/llvm-project/commit/939d3d03458ac1d284c65a3daf31c1a632dd0fbe
Author: Denis.G <34353767+DenisGZM at users.noreply.github.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/lib/CodeGen/GlobalISel/LegalizeMutations.cpp
M llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
Log Message:
-----------
[GISel][Legalizer] Rework `changeElementCountTo` (NFC) (#158617)
Mutation `changeElementCountTo` now uses `ElementCount`
Commit: 5fb788be03c6adbe0afa33c129df442e280f5bfa
https://github.com/llvm/llvm-project/commit/5fb788be03c6adbe0afa33c129df442e280f5bfa
Author: Nuno Lopes <nuno.lopes at tecnico.ulisboa.pt>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/utils/git/code-format-helper.py
Log Message:
-----------
github actions/undef warnings: allow newlines after undef
Commit: 6fbc7d3d1f17e09aaa9ead004011f4204f0a691f
https://github.com/llvm/llvm-project/commit/6fbc7d3d1f17e09aaa9ead004011f4204f0a691f
Author: Lucie Choi <ychoi0407 at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Driver/Options.td
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
A clang/test/CodeGenHLSL/vk-features/maximal_reconvergence.hlsl
Log Message:
-----------
[HLSL][SPIR-V] Add `-fspv-enable-maximal-reconvergence` flag to clang dxc. (#163474)
Implement the frontend change to support maximal reconvergence feature.
The next work is to generate the corresponding SPIR-V instructions
(`OpExtension` and `OpExecutionMode`) based on the llvm ir added in this
CL `"enable-maximal-reconvergence"="true"`.
Addresses https://github.com/llvm/llvm-project/issues/136930
Commit: 082efbaac1b706bcdae624243465268ca23d1655
https://github.com/llvm/llvm-project/commit/082efbaac1b706bcdae624243465268ca23d1655
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fake_stack.cpp
M compiler-rt/lib/asan/asan_fake_stack.h
Log Message:
-----------
[asan] Make GetFakeStackFast()/GetFakeStackFastAlways() lazily init fake_stack_tls (#163481)
To simplify implementation of #160135
Commit: 754ebc6ebb9fb9fbee7aef33478c74ea74949853
https://github.com/llvm/llvm-project/commit/754ebc6ebb9fb9fbee7aef33478c74ea74949853
Author: Wenju He <wenju.he at intel.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libclc/CMakeLists.txt
Log Message:
-----------
[NFC][libclc] Add missing evaluation for variable ${tool}_target (#163540)
The variabls should be evaluated before checking for empty.
Commit: 5eba975f58d152454519bad387b2fb963659c03c
https://github.com/llvm/llvm-project/commit/5eba975f58d152454519bad387b2fb963659c03c
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Evaluate/intrinsics.cpp
A flang/test/Semantics/dynamic-type-intrinsics.f90
Log Message:
-----------
[flang][semantics] make sure dynamic type inquiry functions take extensible or unlimited polymorphic types (#162931)
Adds error message when type is derived but not extensible and more
detailed error message when the type doesn't match.
fixes [#162712](https://github.com/llvm/llvm-project/issues/162712)
Commit: d70801b4e7c81932994e7a2c4328ef7c998e2b35
https://github.com/llvm/llvm-project/commit/d70801b4e7c81932994e7a2c4328ef7c998e2b35
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M flang/lib/Semantics/check-declarations.cpp
M flang/test/Semantics/io11.f90
Log Message:
-----------
[flang][semantics] ensure defined io dummies are not arrays. (#162744)
fixes [#162709](https://github.com/llvm/llvm-project/issues/162709)
Commit: f7f6f6dbf6ec3beaf99f32c219b759214dbbb611
https://github.com/llvm/llvm-project/commit/f7f6f6dbf6ec3beaf99f32c219b759214dbbb611
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M compiler-rt/lib/asan/asan_fake_stack.cpp
M compiler-rt/lib/asan/asan_fake_stack.h
M compiler-rt/lib/asan/asan_thread.cpp
M compiler-rt/lib/asan/asan_thread.h
Log Message:
-----------
[asan] Hide SetTLSFakeStack and replaces uses with ResetTLSFakeStack (#163674)
To simplify implementation of
https://github.com/llvm/llvm-project/pull/160135
To keep the logic of figuring out what should be in TLS to one place.
The rest of the code should just reset it and rely on
GetFakeStackFast()/GetFakeStackFastAlways().
Commit: f98b955f7cc749931ac82dc8454e121b393f364d
https://github.com/llvm/llvm-project/commit/f98b955f7cc749931ac82dc8454e121b393f364d
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-minmax-const-combine.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fmed3-min-max-const-combine.ll
M llvm/test/CodeGen/AMDGPU/fmed3.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
Log Message:
-----------
[GlobalIsel] Remove NoNaNsFPMath uses (#163484)
Users should use `nnan` instead.
This is the GlobalIsel part.
Commit: f98a2567ae1d31da86e95bdfd9766d78a7870c94
https://github.com/llvm/llvm-project/commit/f98a2567ae1d31da86e95bdfd9766d78a7870c94
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel][mlir] Port #162780: add XeVM dep (#163678)
Commit: 705b99607c0c1aadc75fddef8738f22be206da25
https://github.com/llvm/llvm-project/commit/705b99607c0c1aadc75fddef8738f22be206da25
Author: akrieger <andrewskrieger at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
M clang/test/CXX/module/module.import/p6.cpp
Log Message:
-----------
Allow weak/selectany external definitions in header units. (#162713)
weak and selectany are mechanisms for allowing the linker to resolve ODR
violations. [module.import/6] states
> A header unit shall not contain a definition of a non-inline function
or variable whose name has external linkage.
But this prevents compiling any headers with such weak symbols defined.
These occur in eg. some Windows SDK headers like `DirectXMath.h`.
```
#ifndef XMGLOBALCONST
#if defined(__GNUC__) && !defined(__MINGW32__)
#define XMGLOBALCONST extern const __attribute__((weak))
#else
#define XMGLOBALCONST extern const __declspec(selectany)
#endif
#endif
XMGLOBALCONST XMVECTORF32 g_XMSinCoefficients0 = { { { -0.16666667f, +0.0083333310f, -0.00019840874f, +2.7525562e-06f } } };
```
Proposed solution: Do not emit `diag::err_extern_def_in_header_unit` if
the `FD` or `VDecl` have either `SelectAnyAttr` or `WeakAttr`.
Commit: d0d001df99fdd4bf8b727b79c88951d3194e38f6
https://github.com/llvm/llvm-project/commit/d0d001df99fdd4bf8b727b79c88951d3194e38f6
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
Log Message:
-----------
[lldb] Support shared cache relative objc method types (#163663)
Support the types and name field in the relative method list to be
relative to a buffer in the shared cache, not relative to the field in
the method list itself.
A new magic bit, 0x20000000, is attached to method lists where the types
are encoded in this way. This is covered by the existing tests when
running against a shared cache that uses this encoding.
rdar://147545351
Commit: 705b6cf52f8928d2b70b740634a316c8c13ed64a
https://github.com/llvm/llvm-project/commit/705b6cf52f8928d2b70b740634a316c8c13ed64a
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
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/rvv/legalize-insertelement-rv32.mir
A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insertelement-rv64.mir
Log Message:
-----------
[RISCV][GISel] Legalize G_INSERT_VECTOR_ELT for supported vector types (#159708)
Commit: d43581aaee8aa60f93f884d7161169435c40dc0a
https://github.com/llvm/llvm-project/commit/d43581aaee8aa60f93f884d7161169435c40dc0a
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
M mlir/lib/Conversion/XeGPUToXeVM/CMakeLists.txt
M mlir/lib/Conversion/XeGPUToXeVM/XeGPUToXeVM.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUUnroll.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/test/Conversion/XeGPUToXeVM/dpas.mlir
R mlir/test/Conversion/XeGPUToXeVM/loadstore_matrix.mlir
M mlir/test/Dialect/XeGPU/invalid.mlir
M mlir/test/Dialect/XeGPU/ops.mlir
Log Message:
-----------
Revert "[MLIR][XeGPU] XeVM lowering support for load_matrix/store_matrix" (#163684)
Reverts llvm/llvm-project#162780
Breaks build bots, see #162780.
Commit: 405f30f2bfab4bfceb7a113bac3bce462f92067b
https://github.com/llvm/llvm-project/commit/405f30f2bfab4bfceb7a113bac3bce462f92067b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/include/llvm/IR/RuntimeLibcalls.td
M llvm/unittests/IR/RuntimeLibcallsTest.cpp
Log Message:
-----------
RuntimeLibcalls: Rename long double libcall entries to include suffix (#163675)
Commit: c2e42e356c379bf73b62b4fd8196bb4afddc0cd7
https://github.com/llvm/llvm-project/commit/c2e42e356c379bf73b62b4fd8196bb4afddc0cd7
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
A .ci/premerge_advisor_upload.py
M .ci/utils.sh
Log Message:
-----------
[CI] Make CI Jobs Upload Failures to Premerge Advisor (#163276)
This allows the premerge advisor infrastructure to start ingesting data
so we can get to work on making failure explanations work.
Commit: 20fdd53e49938dd772a2f10304b92fc241e154e0
https://github.com/llvm/llvm-project/commit/20fdd53e49938dd772a2f10304b92fc241e154e0
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M flang/include/flang/Evaluate/tools.h
M flang/lib/Evaluate/tools.cpp
A flang/test/Lower/CUDA/cuda-associate-data-transfer.cuf
Log Message:
-----------
[flang][cuda] Handle associated variables in data transfer (#163668)
Commit: 4374ca3cab7db2526cc87311a58dda68000a81dd
https://github.com/llvm/llvm-project/commit/4374ca3cab7db2526cc87311a58dda68000a81dd
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.h
M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.h
M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.h
M llvm/lib/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManager.cpp
M llvm/lib/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
M llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp
M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp
M llvm/unittests/ExecutionEngine/Orc/EPCGenericJITLinkMemoryManagerTest.cpp
M llvm/unittests/ExecutionEngine/Orc/SimpleExecutorMemoryManagerTest.cpp
Log Message:
-----------
[ORC] Align ExecutorSimpleMemoryManager w/ orc_rt::SimpleNativeMemoryMap (#163693)
Teach ExecutorSimpleMemoryManager to handle slab reserve/release
operations, plus separate initialize/deinitialize for regions within the
slab. The release operation automatically deinitializes any regions
within each slab that have not already been released.
EPCGenericJITLinkMemoryManager is updated to use the reserve (allocate),
initialize (finalize), and relesae (deallocate) operations.
This brings ExecutorSimpleMemoryManager into alignment with the
orc_rt::SimpleNativeMemoryMap class, allowing SimpleNativeMemoryMap to
be used as a backend for EPCGenericJITLinkMemoryManager.
A future commit will introduce a new MemoryMapper class that will make
SimpleNativeMemoryMap usable as a backend for
MapperJITLinkMemoryManager.
This work will make it easier to re-use in-tree APIs and tools with the
new ORC runtime.
Commit: 43364151d72ab9a5873f1800f84f710dd792b72d
https://github.com/llvm/llvm-project/commit/43364151d72ab9a5873f1800f84f710dd792b72d
Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
A llvm/test/CodeGen/PowerPC/addition-vector-all-ones.ll
R llvm/test/CodeGen/PowerPC/vector-all-ones.ll
Log Message:
-----------
[NFC][PowerPC] Patch to add the remaining types v2i64, v8i16 and v16i8 into exisiting testfile (#163201)
The previous [NFC
patch](https://github.com/llvm/llvm-project/pull/160476#top) addressed
only the vector type `v4i32`, this is a continuation for the previous
patch which adds the remaining 3 vector types which were left out.
This should include the following operands:
- `v2i64`: `A + vector {1, 1,}`
- `v8i16`: `A + vector {1, 1, 1, 1, 1, 1, 1, 1}`
- `v16i8`: `A + vector {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}`
---------
Co-authored-by: himadhith <himadhith.v at ibm.com>
Commit: db2d8fc868e2a697b20c5a54c938659f0dc380e8
https://github.com/llvm/llvm-project/commit/db2d8fc868e2a697b20c5a54c938659f0dc380e8
Author: Gergely Bálint <gergely.balint at arm.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M bolt/unittests/Core/MCPlusBuilder.cpp
Log Message:
-----------
[BOLT][NFC] Add MCPlusBuilder unittests for PAuth helpers (#162251)
PR #120064 added several MCPlusBuilder helpers for recognising
instructions which sign or authenticate the link register.
This patch adds MCPlusBuilder unittests for these helpers.
Commit: 65363e64f808b0411e5011e7e37a6f3b134ed5bd
https://github.com/llvm/llvm-project/commit/65363e64f808b0411e5011e7e37a6f3b134ed5bd
Author: Sam Parker <sam.parker at arm.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
M llvm/test/CodeGen/WebAssembly/int-mac-reduction-loops.ll
Log Message:
-----------
[WebAssembly] Partial SMLA with relaxed dot (#163529)
Lower v16i8 to v4i32 partial_smla to relaxed_dot_add. I'm still unsure
whether we could/should take advantage of the unknown signedness of the
rhs, and also lower the partial_sumla operation too.
Commit: 4c4c028fe462554ef279729ddeb559191854e04f
https://github.com/llvm/llvm-project/commit/4c4c028fe462554ef279729ddeb559191854e04f
Author: Congcong Cai <congcongcai0907 at 163.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
A utils/bazel/llvm-project-overlay/clang-tools-extra/clang-query/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-tidy/BUILD.bazel
Log Message:
-----------
[clang-tidy][bazel][NFC] enable custom checks in bazel build (#160548)
Commit: 0ede5637ff192398abd09b3d104d43e3be3dfa24
https://github.com/llvm/llvm-project/commit/0ede5637ff192398abd09b3d104d43e3be3dfa24
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/lib/CodeGen/CGDebugInfo.cpp
A clang/test/DebugInfo/CXX/versioned-language.cpp
A clang/test/DebugInfo/Generic/versioned-language.c
A clang/test/DebugInfo/ObjC/versioned-language.m
A clang/test/DebugInfo/ObjCXX/versioned-language.mm
Log Message:
-----------
[clang][DebugInfo] Emit DW_AT_language_{name, version} for DWARFv6 (#163208)
Depends on:
* https://github.com/llvm/llvm-project/pull/163348
* https://github.com/llvm/llvm-project/pull/162632
With this patch Clang will start emitting `DW_AT_language_{name,
version}` for C++/C/Objective-C/Objective-C++ when using `-gdwarf-6`. We
adjust the `DISourceLanguageName` (which we pass to `DICompileUnit`) to
hold a `DW_AT_language_name_` and version code when in DWARFv6.
Otherwise we continue using the `DW_LANG_` version of
`DISourceLanguageName`.
We didn't back-port emitting
`DW_AT_language_name`/`DW_AT_language_version` to DWARFv5 (unlike GCC,
which emits both the new and old language attributes in DWARFv5) because
there wasn't a compelling reason to do so (yet).
Commit: 06cc20c10fe6d669a2a12747a7dabac161163c19
https://github.com/llvm/llvm-project/commit/06cc20c10fe6d669a2a12747a7dabac161163c19
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/cxx11.cpp
Log Message:
-----------
[clang][bytecode] Diagnose out-of-bounds enum values in .... (#163530)
... non-constexpr variable initializers.
Commit: 8570ba2d87eb4877c428fa616b6fe4141684e467
https://github.com/llvm/llvm-project/commit/8570ba2d87eb4877c428fa616b6fe4141684e467
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/docs/analyzer/checkers.rst
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
M clang/test/Analysis/analyzer-enabled-checkers.c
A clang/test/Analysis/null-pointer-arithm.c
M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
Log Message:
-----------
[clang][analyzer] Add checker 'core.NullPointerArithm' (#157129)
Commit: d50423e182e397b92d2502f3a833e645b6867f14
https://github.com/llvm/llvm-project/commit/d50423e182e397b92d2502f3a833e645b6867f14
Author: Petr Hosek <phosek at google.com>
Date: 2025-10-15 (Wed, 15 Oct 2025)
Changed paths:
M libc/config/baremetal/config.json
Log Message:
-----------
Revert "[libc] Enable intermediate computation in float for baremetal" (#163712)
Reverts llvm/llvm-project#163622, see #163711 for details.
Commit: 10be254587da24d56e2c6817b382beaca612b6c3
https://github.com/llvm/llvm-project/commit/10be254587da24d56e2c6817b382beaca612b6c3
Author: Martin Storsjö <martin at martin.st>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/lib/CodeGen/TargetInfo.cpp
M clang/test/CodeGenCXX/sizeof-unwind-exception.cpp
Log Message:
-----------
[clang] Fix catching pointers by reference on mingw targets (#162546)
For this specific case, when catching a pointer data type, by reference,
Clang generates a special code pattern, which directly accesses the
exception data by skipping past the `_Unwind_Exception` manually (rather
than using the return value of `__cxa_begin_catch`).
On most platforms, `_Unwind_Exception` is 32 bytes, but in some
configurations it's different. (ARM EHABI is one preexisting case.) In
the case of SEH, it's also different - it is 48 bytes in 32 bit mode and
64 bytes in 64 bit mode. (See the SEH ifdef in `_Unwind_Exception` in
`clang/lib/Headers/unwind.h`.)
Handle this case in `TargetCodeGenInfo::getSizeOfUnwindException`,
fixing the code generation for catching pointers by reference.
This fixes https://github.com/mstorsjo/llvm-mingw/issues/522.
Commit: ef4fbb55b2d4b2899eb1c8bb50ece18de4015c30
https://github.com/llvm/llvm-project/commit/ef4fbb55b2d4b2899eb1c8bb50ece18de4015c30
Author: jeanPerier <jperier at nvidia.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M flang/include/flang/Optimizer/CMakeLists.txt
A flang/include/flang/Optimizer/OpenACC/CMakeLists.txt
A flang/include/flang/Optimizer/OpenACC/Passes.h
A flang/include/flang/Optimizer/OpenACC/Passes.td
M flang/lib/Optimizer/OpenACC/CMakeLists.txt
A flang/lib/Optimizer/OpenACC/Transforms/ACCRecipeBufferization.cpp
A flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
A flang/test/Fir/OpenACC/recipe-bufferization.mlir
M flang/tools/fir-opt/CMakeLists.txt
M flang/tools/fir-opt/fir-opt.cpp
Log Message:
-----------
[flang][OpenACC] add pass to bufferize fir.box recipes (#163543)
When working on privatization, it is easier to work with fir.box
explicitly in memory, otherwise, there is no way to express that the
fir.box will end-up being a descriptor address in FIR which makes it
hard to deal with data management.
However, introducing fir.ref<fir.box> early can pessimize early HLFIR
optimization because it is harder to reason about the aliasing of
`fir.ref<fir.box>` because of the extra memory indirection.
This patch introduces a pass that turns acc `!fir.box<T>` recipes into
`!fir.ref<!fir.box<T>>` recipes and updated the related recipe usages to
use `!fir.ref<!fir.box<T>>` (creating new alloca+store+load).
It is added to flang and not OpenACC because it is specific to the
`fir.box` type, so it makes little sense to make it an OpenACC generic
pass and to create a new OpenACC dialect type interface for this use
case.
Commit: bef39e6b5c3d6be221f63b5c308507b8ae9cc702
https://github.com/llvm/llvm-project/commit/bef39e6b5c3d6be221f63b5c308507b8ae9cc702
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/test/std/language.support/support.runtime/cstdalign.compile.pass.cpp
Log Message:
-----------
[libc++][C++03] Don't run cstdalign.compile.pass.cpp (#163357)
`__alignas_is_defined` and `__alignof_is_defined` are a C++11 feature
which we only recently added. I don't think it will break anybody if we
don't provide these macros in C++03, so this simply disable the test
instead.
Commit: be5941e9740d750a5253d36b9b1358b3fbfd895e
https://github.com/llvm/llvm-project/commit/be5941e9740d750a5253d36b9b1358b3fbfd895e
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/__bit_reference
M libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/copy.pass.cpp
Log Message:
-----------
[libc++][C++03] Fix alg.copy/copy.pass.cpp (#163365)
Commit: 35d83600f3bb0c5e313a9b5acdacbd8256366476
https://github.com/llvm/llvm-project/commit/35d83600f3bb0c5e313a9b5acdacbd8256366476
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/include/__cxx03/__verbose_abort
M libcxx/test/libcxx-03/assertions/customize_verbose_abort.link-time.pass.cpp
Log Message:
-----------
[libc++][C++03] Make __libcpp_verbose_abort noexcept and fix the test for it (#163372)
Commit: 1f9a70fb39a11b7d4704b3de6bb3f6f84c3e863d
https://github.com/llvm/llvm-project/commit/1f9a70fb39a11b7d4704b3de6bb3f6f84c3e863d
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/test/libcxx-03/language.support/support.dynamic/libcpp_deallocate.sh.cpp
Log Message:
-----------
[libc++][C++03] Fix support.dynamic/libcpp_deallocate.sh.cpp (#163378)
This basically reverts the test changes in #118837.
Commit: bc3bc74160bb250c61c171c96f7512bbc70327a3
https://github.com/llvm/llvm-project/commit/bc3bc74160bb250c61c171c96f7512bbc70327a3
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M libcxx/include/__hash_table
Log Message:
-----------
[libc++] Remove a redundant check from __hash_table::__emplace_unique (#162856)
The `|| __bc == 0` case will never be relevant, since we know that
`size() + 1` will always be exactly 1 if `__bc == 0` and `0 *
max_load_factor()` will be zero, so the branch will already be taken due
to the first condition.
Commit: cf55dfbc5a73d584bab468229a96c63fa7de1f6e
https://github.com/llvm/llvm-project/commit/cf55dfbc5a73d584bab468229a96c63fa7de1f6e
Author: term-est <cancagri.dev at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M clang/lib/AST/ByteCode/Interp.h
M clang/test/AST/ByteCode/typeid.cpp
Log Message:
-----------
[clang][bytecode] Fix null Descriptor dereference in ArrayElemPtrPop (#163386)
Fixes #163127
Commit: 9c456e5eb7edd38da44f08a2122c4372093be669
https://github.com/llvm/llvm-project/commit/9c456e5eb7edd38da44f08a2122c4372093be669
Author: Lang Hames <lhames at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
A llvm/include/llvm/ExecutionEngine/Orc/SimpleRemoteMemoryMapper.h
M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
A llvm/lib/ExecutionEngine/Orc/SimpleRemoteMemoryMapper.cpp
M llvm/tools/llvm-jitlink/llvm-jitlink.cpp
Log Message:
-----------
[ORC] Add SimpleRemoteMemoryMapper (new MemoryMapper implementation). (#163707)
SimpleRemoteMemoryMapper is a MemoryMapper implementation that manages
remote memory via EPC-calls to reserve, initialize, deinitialize, and
release operations. It is compatible with the
SimpleExecutorMemoryManager backend, and its introduction allows
MapperJITLinkMemoryManager to use this backend.
It is also intended to be compatible with the
orc_rt::SimpleNativeMemoryMap backend.
Commit: a42546e982c525883ebcd62f455cbe48d5a4b0c5
https://github.com/llvm/llvm-project/commit/a42546e982c525883ebcd62f455cbe48d5a4b0c5
Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
Log Message:
-----------
[gn build] Port 9c456e5eb7ed
Commit: 71b001e32955719627542c40290acbaf905d7772
https://github.com/llvm/llvm-project/commit/71b001e32955719627542c40290acbaf905d7772
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
A llvm/test/CodeGen/Hexagon/swp-many-stores.mir
Log Message:
-----------
[MachinePipeliner] Add test missed in #154940 (NFC) (#163350)
This PR adds a testcase where pipeliner bails out early because the
number of the store instructions exceeds the threshold set by
`pipeliner-max-num-stores`. The test should have been added in #154940,
but it was missed.
Commit: a4a6d2e04c659e60eaadf14aa39805887517dc33
https://github.com/llvm/llvm-project/commit/a4a6d2e04c659e60eaadf14aa39805887517dc33
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M mlir/test/Dialect/Linalg/vectorization/linalg-ops-with-patterns.mlir
M mlir/test/Dialect/Linalg/vectorization/linalg-ops.mlir
Log Message:
-----------
[mlir][linalg][nfc] Clean up vectorization tests (#163379)
* Added high-level section labels in linalg-ops-with-patterns.mlir.
* Moved tests for `memref.copy` to the bottom, after all Linalg ops.
* Removed duplicate `@test_vectorize_padded_pack_no_vector_sizes` tests
- they differed only in tensor dimensions (both static).
* Updated comments and test names for `linalg.pack` to improve clarity
and align with https://mlir.llvm.org/getting_started/TestingGuide/.
* Re-grouped tests for `linalg.pack`.
For a broader context, I plan to update the vectorization logic for
`linalg.pack`. This clean-up will make the following PRs easier to
review.
Commit: 262b569deeecfbb3501d4c32193cc2d958ea95d2
https://github.com/llvm/llvm-project/commit/262b569deeecfbb3501d4c32193cc2d958ea95d2
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2025-10-16 (Thu, 16 Oct 2025)
Changed paths:
M .ci/all_requirements.txt
A .ci/cache_lit_timing_files.py
M .ci/compute_projects.py
M .ci/compute_projects_test.py
R .ci/generate-buildkite-pipeline-premerge
R .ci/generate_test_report_buildkite.py
M .ci/generate_test_report_github.py
M .ci/generate_test_report_lib.py
M .ci/generate_test_report_lib_test.py
M .ci/metrics/metrics.py
A .ci/metrics/metrics_test.py
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
A .ci/premerge_advisor_upload.py
M .ci/requirements.txt
A .ci/utils.sh
M .clang-format
M .clang-tidy
M .git-blame-ignore-revs
M .github/CODEOWNERS
A .github/copilot-instructions.md
R .github/dependabot.yml
M .github/new-prs-labeler.yml
A .github/renovate.json
A .github/workflows/bazel-checks.yml
A .github/workflows/build-ci-container-tooling.yml
M .github/workflows/build-ci-container-windows.yml
M .github/workflows/build-ci-container.yml
M .github/workflows/build-metrics-container.yml
A .github/workflows/check-ci.yml
M .github/workflows/ci-post-commit-analyzer.yml
M .github/workflows/commit-access-greeter.yml
M .github/workflows/commit-access-review.yml
A .github/workflows/containers/github-action-ci-tooling/Dockerfile
M .github/workflows/containers/github-action-ci-windows/Dockerfile
M .github/workflows/containers/github-action-ci/Dockerfile
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
A .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/issue-release-workflow.yml
M .github/workflows/issue-subscriber.yml
M .github/workflows/issue-write.yml
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libc-overlay-tests.yml
M .github/workflows/libclang-abi-tests.yml
M .github/workflows/libclang-python-tests.yml
M .github/workflows/libcxx-build-and-test.yaml
M .github/workflows/libcxx-build-containers.yml
M .github/workflows/libcxx-check-generated-files.yml
R .github/workflows/libcxx-restart-preempted-jobs.yaml
A .github/workflows/libcxx-run-benchmarks.yml
A .github/workflows/llvm-abi-tests.yml
M .github/workflows/llvm-bugs.yml
R .github/workflows/llvm-project-tests.yml
R .github/workflows/llvm-project-workflow-tests.yml
R .github/workflows/llvm-tests.yml
M .github/workflows/merged-prs.yml
A .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
A .github/workflows/pr-code-lint.yml
M .github/workflows/pr-request-release-note.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/premerge.yaml
M .github/workflows/release-asset-audit.py
M .github/workflows/release-asset-audit.yml
R .github/workflows/release-binaries-save-stage/action.yml
R .github/workflows/release-binaries-setup-stage/action.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-lit.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/scorecard.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/unprivileged-download-artifact/action.yml
M .github/workflows/version-check.yml
M .gitignore
M bolt/CMakeLists.txt
M bolt/Maintainers.txt
M bolt/docs/BinaryAnalysis.md
M bolt/docs/CommandLineArgumentReference.md
M bolt/docs/Heatmaps.md
A bolt/docs/PacRetDesign.md
M bolt/docs/RuntimeLibrary.md
M bolt/docs/doxygen.cfg.in
M bolt/include/bolt/Core/BinaryBasicBlock.h
M bolt/include/bolt/Core/BinaryContext.h
M bolt/include/bolt/Core/BinaryFunction.h
M bolt/include/bolt/Core/BinarySection.h
M bolt/include/bolt/Core/DIEBuilder.h
M bolt/include/bolt/Core/DebugData.h
M bolt/include/bolt/Core/DebugNames.h
M bolt/include/bolt/Core/FunctionLayout.h
A bolt/include/bolt/Core/MCInstUtils.h
M bolt/include/bolt/Core/MCPlus.h
M bolt/include/bolt/Core/MCPlusBuilder.h
M bolt/include/bolt/Passes/FrameAnalysis.h
A bolt/include/bolt/Passes/InsertNegateRAStatePass.h
M bolt/include/bolt/Passes/LongJmp.h
A bolt/include/bolt/Passes/MarkRAStates.h
M bolt/include/bolt/Passes/PAuthGadgetScanner.h
M bolt/include/bolt/Passes/PLTCall.h
M bolt/include/bolt/Passes/ProfileQualityStats.h
M bolt/include/bolt/Passes/ReorderAlgorithm.h
M bolt/include/bolt/Passes/SplitFunctions.h
M bolt/include/bolt/Passes/TailDuplication.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Profile/Heatmap.h
M bolt/include/bolt/Profile/ProfileYAMLMapping.h
M bolt/include/bolt/Rewrite/DWARFRewriter.h
M bolt/include/bolt/Rewrite/MetadataRewriters.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/include/bolt/Utils/CommandLineOpts.h
M bolt/lib/Core/BinaryBasicBlock.cpp
M bolt/lib/Core/BinaryContext.cpp
M bolt/lib/Core/BinaryEmitter.cpp
M bolt/lib/Core/BinaryFunction.cpp
M bolt/lib/Core/BinaryFunctionCallGraph.cpp
M bolt/lib/Core/CMakeLists.txt
M bolt/lib/Core/DIEBuilder.cpp
M bolt/lib/Core/DebugData.cpp
M bolt/lib/Core/DebugNames.cpp
M bolt/lib/Core/Exceptions.cpp
M bolt/lib/Core/FunctionLayout.cpp
M bolt/lib/Core/GDBIndex.cpp
M bolt/lib/Core/HashUtilities.cpp
A bolt/lib/Core/MCInstUtils.cpp
M bolt/lib/Core/MCPlusBuilder.cpp
M bolt/lib/Core/Relocation.cpp
M bolt/lib/Passes/ADRRelaxationPass.cpp
M bolt/lib/Passes/Aligner.cpp
M bolt/lib/Passes/AsmDump.cpp
M bolt/lib/Passes/BinaryPasses.cpp
M bolt/lib/Passes/CMakeLists.txt
M bolt/lib/Passes/FrameAnalysis.cpp
M bolt/lib/Passes/FrameOptimizer.cpp
M bolt/lib/Passes/HFSort.cpp
M bolt/lib/Passes/IndirectCallPromotion.cpp
A bolt/lib/Passes/InsertNegateRAStatePass.cpp
M bolt/lib/Passes/Instrumentation.cpp
M bolt/lib/Passes/LongJmp.cpp
A bolt/lib/Passes/MarkRAStates.cpp
M bolt/lib/Passes/PAuthGadgetScanner.cpp
M bolt/lib/Passes/PettisAndHansen.cpp
M bolt/lib/Passes/ProfileQualityStats.cpp
M bolt/lib/Passes/RegReAssign.cpp
M bolt/lib/Passes/RetpolineInsertion.cpp
M bolt/lib/Passes/ShrinkWrapping.cpp
M bolt/lib/Passes/SplitFunctions.cpp
M bolt/lib/Profile/BoltAddressTranslation.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Profile/Heatmap.cpp
M bolt/lib/Profile/YAMLProfileReader.cpp
M bolt/lib/Profile/YAMLProfileWriter.cpp
M bolt/lib/Rewrite/BinaryPassManager.cpp
M bolt/lib/Rewrite/BuildIDRewriter.cpp
M bolt/lib/Rewrite/CMakeLists.txt
M bolt/lib/Rewrite/DWARFRewriter.cpp
A bolt/lib/Rewrite/GNUPropertyRewriter.cpp
M bolt/lib/Rewrite/LinuxKernelRewriter.cpp
M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
M bolt/lib/Target/AArch64/CMakeLists.txt
M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
M bolt/lib/Utils/CMakeLists.txt
M bolt/lib/Utils/CommandLineOpts.cpp
M bolt/runtime/CMakeLists.txt
M bolt/runtime/hugify.cpp
M bolt/runtime/instr.cpp
M bolt/runtime/sys_aarch64.h
M bolt/runtime/sys_riscv64.h
M bolt/runtime/sys_x86_64.h
A bolt/test/AArch64/Inputs/property-note-bti.yaml
A bolt/test/AArch64/Inputs/property-note-nobti.yaml
A bolt/test/AArch64/adr-relaxation-fail.s
M bolt/test/AArch64/adr-relaxation.s
A bolt/test/AArch64/bti-note.test
A bolt/test/AArch64/cfi-state-list.test
M bolt/test/AArch64/check-init-not-moved.s
M bolt/test/AArch64/constant-island-alignment.s
R bolt/test/AArch64/data-at-0-offset.c
A bolt/test/AArch64/data-marker-invalidates-extra-entrypoint.s
A bolt/test/AArch64/dwarf4-dwp-aarch64.s
A bolt/test/AArch64/function-data-marker.s
M bolt/test/AArch64/ifunc.test
A bolt/test/AArch64/instrumentation_sequence.s
M bolt/test/AArch64/lite-mode.s
A bolt/test/AArch64/missing-code-marker.s
A bolt/test/AArch64/negate-ra-state-disallow.s
A bolt/test/AArch64/negate-ra-state-incorrect.s
A bolt/test/AArch64/negate-ra-state-reorder.s
A bolt/test/AArch64/negate-ra-state.s
A bolt/test/AArch64/no-bti-note.test
A bolt/test/AArch64/pacret-split-funcs.s
M bolt/test/AArch64/pad-before-funcs.s
A bolt/test/AArch64/patch-ignored.s
A bolt/test/AArch64/print-mem-data.test
A bolt/test/AArch64/print-sorted-by-order.s
M bolt/test/AArch64/r_aarch64_prelxx.s
M bolt/test/AArch64/test-indirect-branch.s
A bolt/test/AArch64/tls-desc-call.s
M bolt/test/AArch64/unmarked-data.test
A bolt/test/AArch64/unsupported-passes.test
M bolt/test/AArch64/validate-secondary-entry-point.s
M bolt/test/AArch64/veneer-lld-abs.s
A bolt/test/Inputs/multi-func.cpp
M bolt/test/RISCV/reloc-jt.s
M bolt/test/RISCV/reloc-label-diff.s
M bolt/test/RISCV/reorder-blocks-reverse.s
A bolt/test/X86/Inputs/pre-aggregated-basic.txt
M bolt/test/X86/callcont-fallthru.s
M bolt/test/X86/cdsplit-call-scale.s
M bolt/test/X86/debug-fission-single-convert.s
M bolt/test/X86/debug-fission-single.s
M bolt/test/X86/double-jump.test
M bolt/test/X86/double-rel-scan.s
M bolt/test/X86/double-rel.s
A bolt/test/X86/dwarf4-dwp-x86.s
A bolt/test/X86/dwarf5-debug-line-print.s
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-dwarf4-gdb-index-types-lld-generated.test
A bolt/test/X86/dwarf5-dwoid-no-dwoname.s
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb11.test
M bolt/test/X86/dwarf5-gdb-index-types-gdb-generated-gdb9.test
M bolt/test/X86/dwarf5-gdb-index-types-lld-generated.test
M bolt/test/X86/dwarf5-two-cu-str-offset-table.test
A bolt/test/X86/dwarf5-two-cus.s
M bolt/test/X86/dwarf5-type-unit-no-cu-str-offset-table.test
M bolt/test/X86/entry-point-fallthru.s
A bolt/test/X86/fix-branches-broken-cfg.s
A bolt/test/X86/fragment-alias.s
M bolt/test/X86/heatmap-preagg.test
A bolt/test/X86/hlt-terminator.s
M bolt/test/X86/inlined-function-mixed.test
M bolt/test/X86/jmp-optimization.test
M bolt/test/X86/jt-symbol-disambiguation-3.s
A bolt/test/X86/jump-table-ambiguous-unreachable.s
M bolt/test/X86/jump-table-icp.test
M bolt/test/X86/linux-version.S
A bolt/test/X86/multi-cu-debug-line.s
A bolt/test/X86/patch-ignored.s
M bolt/test/X86/pre-aggregated-perf.test
M bolt/test/X86/register-fragments-bolt-symbols.s
M bolt/test/X86/shrinkwrapping.test
M bolt/test/X86/split-landing-pad.s
M bolt/test/X86/unclaimed-jt-entries.s
A bolt/test/X86/zero-density.s
M bolt/test/binary-analysis/AArch64/cmdline-args.test
M bolt/test/binary-analysis/AArch64/gs-pacret-autiasp.s
A bolt/test/binary-analysis/AArch64/gs-pauth-address-checks.s
M bolt/test/binary-analysis/AArch64/gs-pauth-address-materialization.s
A bolt/test/binary-analysis/AArch64/gs-pauth-authentication-oracles.s
M bolt/test/binary-analysis/AArch64/gs-pauth-calls.s
M bolt/test/binary-analysis/AArch64/gs-pauth-debug-output.s
A bolt/test/binary-analysis/AArch64/gs-pauth-signing-oracles.s
A bolt/test/binary-analysis/AArch64/gs-pauth-tail-calls.s
A bolt/test/binary-analysis/AArch64/trap-instructions.s
A bolt/test/code-at-high-address.c
A bolt/test/dump-dot-func.test
A bolt/test/dwo-name-retrieving.test
M bolt/test/link_fdata.py
M bolt/test/lit.cfg.py
M bolt/test/lit.local.cfg
M bolt/test/lsda-section-name.cpp
A bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
A bolt/test/perf2bolt/X86/perf2bolt-spe.test
M bolt/test/perf2bolt/perf_test.test
M bolt/test/permission.test
A bolt/test/process-debug-line
A bolt/test/program-header.test
R bolt/test/runtime/AArch64/adrrelaxationpass.s
A bolt/test/runtime/AArch64/inline-memcpy.s
A bolt/test/runtime/AArch64/negate-ra-state.cpp
A bolt/test/runtime/AArch64/pacret-function-split.cpp
M bolt/test/runtime/X86/asm-dump.c
M bolt/test/runtime/X86/tail-duplication-constant-prop.s
A bolt/test/runtime/copy_file.py
M bolt/test/runtime/instrumentation-indirect-2.c
M bolt/test/runtime/wait_file.sh
M bolt/test/timers.c
M bolt/tools/bat-dump/bat-dump.cpp
M bolt/tools/driver/llvm-bolt.cpp
M bolt/tools/heatmap/heatmap.cpp
M bolt/unittests/Core/BinaryContext.cpp
M bolt/unittests/Core/CMakeLists.txt
A bolt/unittests/Core/ClusteredRows.cpp
M bolt/unittests/Core/MCPlusBuilder.cpp
M bolt/unittests/Core/MemoryMaps.cpp
M bolt/unittests/Profile/CMakeLists.txt
A bolt/unittests/Profile/PerfSpeEvents.cpp
M bolt/utils/bughunter.sh
M bolt/utils/docker/Dockerfile
M bolt/utils/dot2html/d3-graphviz-template.html
M bolt/utils/llvm-bolt-wrapper.py
M bolt/utils/nfc-check-setup.py
M clang-tools-extra/CMakeLists.txt
M clang-tools-extra/README.txt
M clang-tools-extra/clang-apply-replacements/lib/Tooling/ApplyReplacements.cpp
M clang-tools-extra/clang-apply-replacements/tool/ClangApplyReplacementsMain.cpp
M clang-tools-extra/clang-change-namespace/ChangeNamespace.cpp
M clang-tools-extra/clang-change-namespace/tool/ClangChangeNamespace.cpp
M clang-tools-extra/clang-doc/BitcodeReader.cpp
M clang-tools-extra/clang-doc/BitcodeReader.h
M clang-tools-extra/clang-doc/BitcodeWriter.cpp
M clang-tools-extra/clang-doc/BitcodeWriter.h
M clang-tools-extra/clang-doc/CMakeLists.txt
M clang-tools-extra/clang-doc/Generators.cpp
M clang-tools-extra/clang-doc/Generators.h
M clang-tools-extra/clang-doc/HTMLGenerator.cpp
M clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
A clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/MDGenerator.cpp
M clang-tools-extra/clang-doc/Mapper.cpp
M clang-tools-extra/clang-doc/Mapper.h
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/Serialize.cpp
M clang-tools-extra/clang-doc/Serialize.h
M clang-tools-extra/clang-doc/YAMLGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/class-template.mustache
A clang-tools-extra/clang-doc/assets/comment-template.mustache
R clang-tools-extra/clang-doc/assets/comments-template.mustache
M clang-tools-extra/clang-doc/assets/enum-template.mustache
M clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/clang-doc/assets/namespace-template.mustache
M clang-tools-extra/clang-doc/support/CMakeLists.txt
A clang-tools-extra/clang-doc/support/Utils.cpp
A clang-tools-extra/clang-doc/support/Utils.h
M clang-tools-extra/clang-doc/tool/CMakeLists.txt
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/FindAllSymbols.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/SymbolInfo.cpp
M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/run-find-all-symbols.py
M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
M clang-tools-extra/clang-move/Move.cpp
M clang-tools-extra/clang-move/Move.h
M clang-tools-extra/clang-move/tool/ClangMove.cpp
M clang-tools-extra/clang-query/Query.cpp
M clang-tools-extra/clang-reorder-fields/CMakeLists.txt
A clang-tools-extra/clang-reorder-fields/Designator.cpp
A clang-tools-extra/clang-reorder-fields/Designator.h
M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
M clang-tools-extra/clang-reorder-fields/tool/ClangReorderFields.cpp
A clang-tools-extra/clang-tidy/.clang-format
A 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/ExpandModularHeadersPPCallbacks.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/AbseilMatcher.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
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/CommandProcessorCheck.h
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.h
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
A clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
A 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
A clang-tools-extra/clang-tidy/bugprone/MisleadingSetterOfReferenceCheck.cpp
A 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/NondeterministicPointerIterationOrderCheck.h
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
A clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.cpp
A clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.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
R clang-tools-extra/clang-tidy/cert/CommandProcessorCheck.cpp
R 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
R clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.cpp
R clang-tools-extra/clang-tidy/cert/SetLongJmpCheck.h
R clang-tools-extra/clang-tidy/cert/StaticObjectExceptionCheck.cpp
R 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
R clang-tools-extra/clang-tidy/cert/VariadicFunctionDefCheck.cpp
R 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/CMakeLists.txt
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
A clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.cpp
A 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
A clang-tools-extra/clang-tidy/cppcoreguidelines/UseEnumClassCheck.cpp
A 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/CMakeLists.txt
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
A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.cpp
A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.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
A clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
A 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
A clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
A 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/CMakeLists.txt
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/ConfusableTable/confusables.txt
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
A clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
A 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
A clang-tools-extra/clang-tidy/modernize/AvoidSetjmpLongjmpCheck.cpp
A clang-tools-extra/clang-tidy/modernize/AvoidSetjmpLongjmpCheck.h
A clang-tools-extra/clang-tidy/modernize/AvoidVariadicFunctionsCheck.cpp
A clang-tools-extra/clang-tidy/modernize/AvoidVariadicFunctionsCheck.h
M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
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.cpp
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
A clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
A 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/plugin/ClangTidyPlugin.cpp
A clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.cpp
A clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.h
M clang-tools-extra/clang-tidy/portability/CMakeLists.txt
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/CMakeLists.txt
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
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
A clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.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.cpp
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
A clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
A 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/CMakeLists.txt
R clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
R 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/CMakeLists.txt
M clang-tools-extra/clangd/ClangdLSPServer.cpp
M clang-tools-extra/clangd/ClangdLSPServer.h
M clang-tools-extra/clangd/ClangdServer.cpp
M clang-tools-extra/clangd/ClangdServer.h
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/CodeCompletionStrings.cpp
M clang-tools-extra/clangd/CompileCommands.cpp
M clang-tools-extra/clangd/Compiler.cpp
M clang-tools-extra/clangd/Config.h
M clang-tools-extra/clangd/ConfigCompile.cpp
M clang-tools-extra/clangd/ConfigFragment.h
M clang-tools-extra/clangd/ConfigYAML.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/DumpAST.cpp
M clang-tools-extra/clangd/FeatureModule.cpp
M clang-tools-extra/clangd/FeatureModule.h
M clang-tools-extra/clangd/FindSymbols.cpp
M clang-tools-extra/clangd/FindTarget.cpp
M clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
M clang-tools-extra/clangd/HeaderSourceSwitch.cpp
M clang-tools-extra/clangd/Headers.cpp
M clang-tools-extra/clangd/Hover.cpp
M clang-tools-extra/clangd/Hover.h
M clang-tools-extra/clangd/IncludeCleaner.cpp
M clang-tools-extra/clangd/IncludeCleaner.h
M clang-tools-extra/clangd/IncludeFixer.cpp
M clang-tools-extra/clangd/InlayHints.cpp
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/Protocol.cpp
M clang-tools-extra/clangd/Protocol.h
M clang-tools-extra/clangd/Quality.cpp
M clang-tools-extra/clangd/ScanningProjectModules.cpp
M clang-tools-extra/clangd/Selection.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang-tools-extra/clangd/SemanticSelection.cpp
A clang-tools-extra/clangd/SymbolDocumentation.cpp
A clang-tools-extra/clangd/SymbolDocumentation.h
M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
M clang-tools-extra/clangd/XRefs.cpp
M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
M clang-tools-extra/clangd/index/FileIndex.cpp
M clang-tools-extra/clangd/index/SymbolCollector.cpp
M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
M clang-tools-extra/clangd/refactor/Rename.cpp
M clang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
M clang-tools-extra/clangd/refactor/tweaks/CMakeLists.txt
M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExpandDeducedType.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExtractFunction.cpp
M clang-tools-extra/clangd/refactor/tweaks/ExtractVariable.cpp
A clang-tools-extra/clangd/refactor/tweaks/OverridePureVirtuals.cpp
M clang-tools-extra/clangd/refactor/tweaks/PopulateSwitch.cpp
M clang-tools-extra/clangd/support/DirectiveTree.cpp
M clang-tools-extra/clangd/support/DirectiveTree.h
M clang-tools-extra/clangd/support/Markup.cpp
M clang-tools-extra/clangd/support/Markup.h
M clang-tools-extra/clangd/test/formatting.test
M clang-tools-extra/clangd/test/initialize-params.test
M clang-tools-extra/clangd/test/lit.cfg.py
A clang-tools-extra/clangd/test/module_dependencies.test
A clang-tools-extra/clangd/test/modules_no_cdb.test
M clang-tools-extra/clangd/test/path-mappings.test
A clang-tools-extra/clangd/test/positionencoding.test
A clang-tools-extra/clangd/test/signature-help-unescaped.test
M clang-tools-extra/clangd/test/system-include-extractor.test
M clang-tools-extra/clangd/tool/ClangdMain.cpp
M clang-tools-extra/clangd/unittests/ASTTests.cpp
M clang-tools-extra/clangd/unittests/CMakeLists.txt
M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
M clang-tools-extra/clangd/unittests/ClangdTests.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
M clang-tools-extra/clangd/unittests/DumpASTTests.cpp
A clang-tools-extra/clangd/unittests/FeatureModulesRegistryTests.cpp
M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
M clang-tools-extra/clangd/unittests/HeadersTests.cpp
M clang-tools-extra/clangd/unittests/HoverTests.cpp
M clang-tools-extra/clangd/unittests/IncludeCleanerTests.cpp
M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/clangd/unittests/ProjectAwareIndexTests.cpp
M clang-tools-extra/clangd/unittests/QualityTests.cpp
M clang-tools-extra/clangd/unittests/RenameTests.cpp
M clang-tools-extra/clangd/unittests/SelectionTests.cpp
M clang-tools-extra/clangd/unittests/SemanticSelectionTests.cpp
A clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
M clang-tools-extra/clangd/unittests/SyncAPI.cpp
M clang-tools-extra/clangd/unittests/SyncAPI.h
M clang-tools-extra/clangd/unittests/XRefsTests.cpp
M clang-tools-extra/clangd/unittests/support/MarkupTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/ExpandDeducedTypeTests.cpp
A clang-tools-extra/clangd/unittests/tweaks/OverridePureVirtualsTests.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.h
M clang-tools-extra/clangd/unittests/tweaks/TweakTests.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
A clang-tools-extra/docs/ReleaseNotesTemplate.txt
A clang-tools-extra/docs/clang-change-namespace.rst
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/command-processor.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/compare-pointer-to-member-virtual-function.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-init.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.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/invalid-enum-default-initialization.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/misleading-setter-of-reference.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/multi-level-implicit-pointer-conversion.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/nondeterministic-pointer-iteration-order.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/redundant-branch-condition.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/standalone-empty.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-include.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
A clang-tools-extra/docs/clang-tidy/checks/bugprone/throwing-static-initialization.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/dcl50-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err34-c.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cert/err58-cpp.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-goto.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/missing-std-forward.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-avoid-unchecked-container-access.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-pointer-arithmetic.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/rvalue-reference-param-not-moved.rst
M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
A clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
A clang-tools-extra/docs/clang-tidy/checks/fuchsia/temporary-objects.rst
A clang-tools-extra/docs/clang-tidy/checks/google/runtime-float.rst
M clang-tools-extra/docs/clang-tidy/checks/list.rst
M clang-tools-extra/docs/clang-tidy/checks/llvm/namespace-comment.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/prefer-static-over-anonymous-namespace.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/use-new-mlir-op-builder.rst
A clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
A clang-tools-extra/docs/clang-tidy/checks/misc/override-with-different-visibility.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-setjmp-longjmp.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-variadic-functions.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/deprecated-headers.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/loop-convert.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/make-shared.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/pass-by-value.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-auto-ptr.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-disallow-copy-and-assign-macro.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-auto.rst
A clang-tools-extra/docs/clang-tidy/checks/modernize/use-scoped-lock.rst
M clang-tools-extra/docs/clang-tidy/checks/modernize/use-trailing-return-type.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/enum-size.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/noexcept-move-constructor.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-copy-initialization.rst
M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
A clang-tools-extra/docs/clang-tidy/checks/portability/avoid-pragma-once.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/function-cognitive-complexity.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/function-size.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/misleading-indentation.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/named-parameter.rst
M clang-tools-extra/docs/clang-tidy/checks/readability/qualified-auto.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-parentheses.rst
A clang-tools-extra/docs/clang-tidy/checks/readability/use-concise-preprocessor-directives.rst
M clang-tools-extra/docs/clang-tidy/checks/zircon/temporary-objects.rst
M clang-tools-extra/docs/clang-tidy/index.rst
M clang-tools-extra/docs/clangd/DeveloperDocumentation.rst
M clang-tools-extra/docs/index.rst
M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
M clang-tools-extra/include-cleaner/lib/Record.cpp
M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
M clang-tools-extra/include-cleaner/unittests/RecordTest.cpp
M clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
M clang-tools-extra/modularize/CoverageChecker.cpp
M clang-tools-extra/modularize/Modularize.cpp
M clang-tools-extra/modularize/ModularizeUtilities.cpp
M clang-tools-extra/modularize/ModularizeUtilities.h
M clang-tools-extra/modularize/ModuleAssistant.cpp
M clang-tools-extra/modularize/PreprocessorTracker.cpp
M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
M clang-tools-extra/test/CMakeLists.txt
M clang-tools-extra/test/clang-apply-replacements/basic.cpp
M clang-tools-extra/test/clang-apply-replacements/conflict.cpp
M clang-tools-extra/test/clang-apply-replacements/crlf.cpp
M clang-tools-extra/test/clang-apply-replacements/format-header.cpp
M clang-tools-extra/test/clang-apply-replacements/format.cpp
M clang-tools-extra/test/clang-apply-replacements/identical-in-TU.cpp
M clang-tools-extra/test/clang-apply-replacements/identical.cpp
M clang-tools-extra/test/clang-apply-replacements/ignore-conflict.cpp
M clang-tools-extra/test/clang-apply-replacements/invalid-files.cpp
M clang-tools-extra/test/clang-apply-replacements/order-dependent.cpp
M clang-tools-extra/test/clang-apply-replacements/relative-paths.cpp
M clang-tools-extra/test/clang-apply-replacements/yml-basic.cpp
M clang-tools-extra/test/clang-change-namespace/allow-list.cpp
M clang-tools-extra/test/clang-change-namespace/macro.cpp
A clang-tools-extra/test/clang-doc/DR-141990.cpp
M clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Circle.h
A clang-tools-extra/test/clang-doc/basic-project.mustache.test
A clang-tools-extra/test/clang-doc/conversion_function.cpp
A clang-tools-extra/test/clang-doc/invalid-options.cpp
A clang-tools-extra/test/clang-doc/json/class-requires.cpp
A clang-tools-extra/test/clang-doc/json/class-specialization.cpp
A clang-tools-extra/test/clang-doc/json/class-template.cpp
A clang-tools-extra/test/clang-doc/json/class.cpp
A clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
A clang-tools-extra/test/clang-doc/json/concept.cpp
A clang-tools-extra/test/clang-doc/json/function-requires.cpp
A clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
A clang-tools-extra/test/clang-doc/json/method-template.cpp
A clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
A clang-tools-extra/test/clang-doc/json/namespace.cpp
A clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
A clang-tools-extra/test/clang-doc/long-name.cpp
A clang-tools-extra/test/clang-doc/mustache-index.cpp
A clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/test/clang-include-fixer/include_path.cpp
M clang-tools-extra/test/clang-include-fixer/multiple_fixes.cpp
M clang-tools-extra/test/clang-include-fixer/yamldb_autodetect.cpp
M clang-tools-extra/test/clang-move/move-class.cpp
M clang-tools-extra/test/clang-move/move-enum-decl.cpp
M clang-tools-extra/test/clang-move/move-function.cpp
M clang-tools-extra/test/clang-move/move-multiple-classes.cpp
M clang-tools-extra/test/clang-move/move-template-class.cpp
M clang-tools-extra/test/clang-move/move-type-alias.cpp
M clang-tools-extra/test/clang-move/move-used-helper-decls.cpp
M clang-tools-extra/test/clang-move/move-var.cpp
M clang-tools-extra/test/clang-move/no-move-macro-helpers.cpp
A clang-tools-extra/test/clang-query/trailing-comma.c
A clang-tools-extra/test/clang-reorder-fields/AggregatePartialInitialization.c
M clang-tools-extra/test/clang-reorder-fields/AggregatePartialInitialization.cpp
A clang-tools-extra/test/clang-reorder-fields/DesignatedInitializerList.c
A clang-tools-extra/test/clang-reorder-fields/DesignatedInitializerList.cpp
A clang-tools-extra/test/clang-reorder-fields/FlexibleArrayMember.c
A clang-tools-extra/test/clang-reorder-fields/IdiomaticZeroInitializer.c
A clang-tools-extra/test/clang-reorder-fields/InitializerListExcessElements.c
A clang-tools-extra/test/clang-reorder-fields/MacroExpandsToMultipleFields.cpp
A clang-tools-extra/test/clang-reorder-fields/MacroExpansionField.cpp
A clang-tools-extra/test/clang-reorder-fields/MultipleFieldDeclsInStatement.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveAroundDefinition.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveAroundFields.cpp
A clang-tools-extra/test/clang-reorder-fields/PreprocessorDirectiveInDefinition.cpp
M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/moc_foo.cpp
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/mutex
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/stdfloat
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/system-other.h
M clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/time-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
M clang-tools-extra/test/clang-tidy/checkers/android/comparison-in-temp-failure-retry-custom-macro.c
M clang-tools-extra/test/clang-tidy/checkers/android/comparison-in-temp-failure-retry.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/tagged-union-member-count/stdnamespace.h
A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/tagged-union-member-count/system/pthread.h
M clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bdlb_nullablevalue.h
M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/branch-clone-macro-crash.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/command-processor.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/copy-constructor-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/crtp-constructor-accessibility.cpp
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/exception-escape-coro.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-rethrow.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-throw.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/misleading-setter-of-reference.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/multi-level-implicit-pointer-conversion.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-conditional-expressions.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/narrowing-conversions-conditional-expressions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-before-safe.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-stdc-want-lib-ext1-not-a-literal.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-undef-stdc-want-lib-ext1.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-value-dependent-crash.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signal-handler.c
A clang-tools-extra/test/clang-tidy/checkers/bugprone/signed-char-misuse-c23.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/signed-char-misuse-with-option.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/sizeof-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-include.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-semicolon.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.m
M clang-tools-extra/test/clang-tidy/checkers/bugprone/tagged-union-member-count.mm
M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
A clang-tools-extra/test/clang-tidy/checkers/bugprone/throwing-static-initialization.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
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-self-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.c
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unused-local-non-trivial-variable.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/env33-c.c
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.c
R clang-tools-extra/test/clang-tidy/checkers/cert/err34-c.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/setlongjmp.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/static-object-exception.cpp
M clang-tools-extra/test/clang-tidy/checkers/cert/uppercase-literal-suffix-integer.cpp
R clang-tools-extra/test/clang-tidy/checkers/cert/variadic-function-def.cpp
M clang-tools-extra/test/clang-tidy/checkers/concurrency/mt-unsafe-glibc.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-goto.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/interfaces-global-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward-custom-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-avoid-unchecked-container-access.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index-c++03.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic-pr36489.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/rvalue-reference-param-not-moved-custom-function.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions-macros.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/special-member-functions.cpp
A clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/use-enum-class.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.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/fuchsia/temporary-objects.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
M clang-tools-extra/test/clang-tidy/checkers/google/objc-function-naming.m
A clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments-missing-nested-namespaces.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments-missing.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments.cpp
A clang-tools-extra/test/clang-tidy/checkers/google/runtime-float.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-static-over-anonymous-namespace.cpp
M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/use-new-mlir-op-builder.cpp
A clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/override-with-different-visibility/test-system-header.h
M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
M clang-tools-extra/test/clang-tidy/checkers/misc/header-include-cycle.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility-ignore.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility-options.cpp
A clang-tools-extra/test/clang-tidy/checkers/misc/override-with-different-visibility.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/static-assert.c
M clang-tools-extra/test/clang-tidy/checkers/misc/unconventional-assign-operator.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters-strict.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.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
A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-setjmp-longjmp.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-variadic-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx03.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx11.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-header.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-multi-fixes.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-disallow-copy-and-assign-macro.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/return-braced-init-list.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-GH153649.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-bool-literals.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints-first-greatergreater.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-designated-initializers.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr-basic.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr-c23.c
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-override-and-final.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-ms.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-no-destructors.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-templates.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-macro.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-no-macro-inscope.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scope-lock-warn-on-using-and-typedef-false.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-warn-on-single-locks-false.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-absl.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx20.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
A clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-wrong-config.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization-allowed-types.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization-excluded-container-types.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-allowed-types.cpp
A clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-coroutine.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-crash.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-header.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib0.h
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib1.h
A clang-tools-extra/test/clang-tidy/checkers/portability/Inputs/avoid-pragma-once/lib2.h
A clang-tools-extra/test/clang-tidy/checkers/portability/avoid-pragma-once.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/restrict-system-includes-transitive.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/template-virtual-member-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/duplicate-include.h
M clang-tools-extra/test/clang-tidy/checkers/readability/bitint-no-crash.c
M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static-deducing-this.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity-flags.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/function-size-no-member-init-as-stmts.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/function-size.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-anon-record-fields.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-bugfix-name-conflicts.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-case-match.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-c-language.c
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-cfgfile.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-ignored-regexp.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-standard-types.h
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-symlink.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-fixing.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/make-member-function-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/named-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-alternative.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-traditional.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers-check-first-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-control-flow.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.c
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-inline-specifier.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-member-init.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get-msvc.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-smartptr-get.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-format.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-msvc.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-assignment.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance-nesting-threshold.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uniqueptr-delete-release.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-c23.c
A clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-cxx23.cpp
R clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-float16.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point-opencl-half.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-hexadecimal-floating-point.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-ms.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer.cpp
A clang-tools-extra/test/clang-tidy/checkers/readability/use-concise-preprocessor-directives.cpp
R clang-tools-extra/test/clang-tidy/checkers/zircon/temporary-objects.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
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-run-with-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.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/diagnostic.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/dump-config-filtering.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/export-relpath.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter-symlinks.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/file-filter.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/list-checks.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/pr37091.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/quiet-flag.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/read_file_config.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/run-clang-tidy-enable-check-profile.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/run-clang-tidy.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/static-analyzer-config.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/static-analyzer.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/system-headers.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/test/modularize/NoProblemsAssistant.modularize
M clang-tools-extra/unittests/clang-apply-replacements/ApplyReplacementsTest.cpp
M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
A clang-tools-extra/unittests/clang-doc/config.h.cmake
M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
M clang-tools-extra/unittests/clang-tidy/ClangTidyTest.h
M clang-tools-extra/unittests/clang-tidy/IncludeCleanerTest.cpp
M clang-tools-extra/unittests/include/common/VirtualFileHelper.h
M clang/.clang-format
M clang/CMakeLists.txt
M clang/Maintainers.rst
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/CMakeLists.txt
M clang/bindings/python/tests/cindex/test_cdb.py
M clang/bindings/python/tests/cindex/test_cursor.py
A clang/bindings/python/tests/cindex/test_cursor_language.py
M clang/bindings/python/tests/cindex/test_enums.py
M clang/bindings/python/tests/cindex/test_file.py
A clang/bindings/python/tests/cindex/test_lib.py
M clang/bindings/python/tests/cindex/test_tokens.py
M clang/bindings/python/tests/cindex/test_type.py
M clang/cmake/caches/Apple-stage1.cmake
A clang/cmake/caches/BOLT-CSSPGO.cmake
M clang/cmake/caches/BOLT-PGO.cmake
A clang/cmake/caches/CSSPGO.cmake
M clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
M clang/cmake/caches/Fuchsia-stage2.cmake
M clang/cmake/caches/Fuchsia.cmake
M clang/cmake/caches/PGO.cmake
M clang/cmake/caches/Release.cmake
A clang/cmake/caches/release_cpack_pre_build_strip_lto.cmake
M clang/cmake/modules/AddClang.cmake
M clang/cmake/modules/ClangConfig.cmake.in
M clang/docs/APINotes.rst
M clang/docs/AddressSanitizer.rst
A clang/docs/AllocToken.rst
M clang/docs/AutomaticReferenceCounting.rst
M clang/docs/BoundsSafety.rst
M clang/docs/BoundsSafetyAdoptionGuide.rst
M clang/docs/CMakeLists.txt
A clang/docs/CXXTypeAwareAllocators.rst
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/ClangLinkerWrapper.rst
M clang/docs/ClangOffloadBundler.rst
R clang/docs/ClangOffloadPackager.rst
M clang/docs/ClangRepl.rst
M clang/docs/ClangTools.rst
M clang/docs/CommandGuide/clang.rst
M clang/docs/DebuggingCoroutines.rst
M clang/docs/HIPSupport.rst
M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
M clang/docs/InternalsManual.rst
M clang/docs/LanguageExtensions.rst
M clang/docs/LibClang.rst
M clang/docs/Modules.rst
M clang/docs/OpenMPSupport.rst
M clang/docs/PointerAuthentication.rst
M clang/docs/RealtimeSanitizer.rst
M clang/docs/ReleaseNotes.rst
A clang/docs/ReleaseNotesTemplate.txt
M clang/docs/SanitizerSpecialCaseList.rst
M clang/docs/ShadowCallStack.rst
M clang/docs/SourceBasedCodeCoverage.rst
M clang/docs/StandardCPlusPlusModules.rst
M clang/docs/ThinLTO.rst
M clang/docs/ThreadSafetyAnalysis.rst
M clang/docs/Toolchain.rst
M clang/docs/UsersManual.rst
M clang/docs/analyzer/checkers.rst
A clang/docs/analyzer/checkers/storetoimmutable_example.cpp
M clang/docs/analyzer/checkers/unix_malloc_example.c
M clang/docs/analyzer/developer-docs/DebugChecks.rst
M clang/docs/analyzer/developer-docs/PerformanceInvestigation.rst
M clang/docs/analyzer/developer-docs/Statistics.rst
M clang/docs/analyzer/user-docs.rst
M clang/docs/analyzer/user-docs/CommandLineUsage.rst
M clang/docs/analyzer/user-docs/CrossTranslationUnit.rst
M clang/docs/analyzer/user-docs/Installation.rst
A clang/docs/analyzer/user-docs/Options.rst.in
A clang/docs/coro-async-task-continuations.png
A clang/docs/coro-generator-suspended.png
A clang/docs/coro-generator-variables.png
M clang/docs/index.rst
A clang/docs/tools/generate_analyzer_options_docs.py
M clang/include/clang-c/FatalErrorHandler.h
M clang/include/clang-c/Index.h
M clang/include/clang-c/Platform.h
M clang/include/clang/APINotes/APINotesManager.h
M clang/include/clang/APINotes/Types.h
M clang/include/clang/AST/APNumericStorage.h
M clang/include/clang/AST/APValue.h
M clang/include/clang/AST/ASTConcept.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/ASTDiagnostic.h
M clang/include/clang/AST/ASTImporter.h
M clang/include/clang/AST/ASTImporterLookupTable.h
M clang/include/clang/AST/ASTMutationListener.h
M clang/include/clang/AST/ASTNodeTraverser.h
M clang/include/clang/AST/ASTTypeTraits.h
M clang/include/clang/AST/AbstractBasicReader.h
M clang/include/clang/AST/AbstractBasicWriter.h
M clang/include/clang/AST/Attr.h
M clang/include/clang/AST/CXXInheritance.h
M clang/include/clang/AST/CanonicalType.h
M clang/include/clang/AST/CharUnits.h
M clang/include/clang/AST/Comment.h
M clang/include/clang/AST/CommentHTMLTags.td
M clang/include/clang/AST/CommentSema.h
M clang/include/clang/AST/ComputeDependence.h
M clang/include/clang/AST/Decl.h
M clang/include/clang/AST/DeclBase.h
M clang/include/clang/AST/DeclCXX.h
M clang/include/clang/AST/DeclContextInternals.h
M clang/include/clang/AST/DeclFriend.h
M clang/include/clang/AST/DeclGroup.h
M clang/include/clang/AST/DeclID.h
M clang/include/clang/AST/DeclObjC.h
M clang/include/clang/AST/DeclOpenACC.h
M clang/include/clang/AST/DeclOpenMP.h
M clang/include/clang/AST/DeclTemplate.h
M clang/include/clang/AST/DeclarationName.h
M clang/include/clang/AST/DependenceFlags.h
M clang/include/clang/AST/DynamicRecursiveASTVisitor.h
M clang/include/clang/AST/Expr.h
M clang/include/clang/AST/ExprCXX.h
M clang/include/clang/AST/ExprConcepts.h
M clang/include/clang/AST/ExprObjC.h
M clang/include/clang/AST/ExternalASTMerger.h
M clang/include/clang/AST/ExternalASTSource.h
M clang/include/clang/AST/FormatString.h
M clang/include/clang/AST/GlobalDecl.h
A clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/JSONNodeDumper.h
M clang/include/clang/AST/NestedNameSpecifier.h
A clang/include/clang/AST/NestedNameSpecifierBase.h
M clang/include/clang/AST/ODRHash.h
M clang/include/clang/AST/OpenACCClause.h
M clang/include/clang/AST/OpenMPClause.h
M clang/include/clang/AST/PrettyPrinter.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/QualTypeNames.h
M clang/include/clang/AST/RecursiveASTVisitor.h
M clang/include/clang/AST/Stmt.h
M clang/include/clang/AST/StmtCXX.h
M clang/include/clang/AST/StmtObjC.h
M clang/include/clang/AST/StmtOpenACC.h
M clang/include/clang/AST/StmtOpenMP.h
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/AST/TemplateName.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/Type.h
A 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/ASTMatchFinder.h
M clang/include/clang/ASTMatchers/ASTMatchers.h
M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
M clang/include/clang/ASTMatchers/ASTMatchersMacros.h
R clang/include/clang/ASTMatchers/GtestMatchers.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
A clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
M clang/include/clang/Analysis/Analyses/LiveVariables.h
M clang/include/clang/Analysis/Analyses/ThreadSafety.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
M clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
M clang/include/clang/Analysis/Analyses/UninitializedValues.h
M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
M clang/include/clang/Analysis/CFG.h
M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
M clang/include/clang/Analysis/FlowSensitive/Formula.h
A clang/include/clang/Analysis/FlowSensitive/FormulaSerialization.h
M clang/include/clang/Analysis/FlowSensitive/RecordOps.h
M clang/include/clang/Analysis/FlowSensitive/StorageLocation.h
M clang/include/clang/Analysis/PathDiagnostic.h
M clang/include/clang/Analysis/ProgramPoint.h
A clang/include/clang/Basic/AArch64ACLETypes.def
R clang/include/clang/Basic/AArch64SVEACLETypes.def
M clang/include/clang/Basic/ABI.h
A clang/include/clang/Basic/ABIVersions.def
M clang/include/clang/Basic/AMDGPUTypes.def
M clang/include/clang/Basic/AddressSpaces.h
M clang/include/clang/Basic/AllDiagnosticKinds.inc
M clang/include/clang/Basic/AllDiagnostics.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/AttributeCommonInfo.h
A clang/include/clang/Basic/AttributeScopeInfo.h
M clang/include/clang/Basic/Attributes.h
M clang/include/clang/Basic/BuiltinHeaders.def
M clang/include/clang/Basic/BuiltinTemplates.td
M clang/include/clang/Basic/Builtins.def
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAArch64.def
M clang/include/clang/Basic/BuiltinsAMDGPU.def
M clang/include/clang/Basic/BuiltinsARM.def
M clang/include/clang/Basic/BuiltinsBase.td
M clang/include/clang/Basic/BuiltinsNVPTX.td
M clang/include/clang/Basic/BuiltinsPPC.def
M clang/include/clang/Basic/BuiltinsRISCV.td
A clang/include/clang/Basic/BuiltinsRISCVXAndes.td
A clang/include/clang/Basic/BuiltinsRISCVXMIPS.td
R clang/include/clang/Basic/BuiltinsSPIRV.td
A clang/include/clang/Basic/BuiltinsSPIRVBase.td
A clang/include/clang/Basic/BuiltinsSPIRVCL.td
A clang/include/clang/Basic/BuiltinsSPIRVCommon.td
A clang/include/clang/Basic/BuiltinsSPIRVVK.td
M clang/include/clang/Basic/BuiltinsWebAssembly.def
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/BuiltinsX86_64.td
M clang/include/clang/Basic/CMakeLists.txt
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Basic/CodeGenOptions.h
M clang/include/clang/Basic/Cuda.h
M clang/include/clang/Basic/CustomizableOptional.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DeclNodes.td
M clang/include/clang/Basic/Diagnostic.h
M clang/include/clang/Basic/Diagnostic.td
M clang/include/clang/Basic/DiagnosticASTKinds.td
M clang/include/clang/Basic/DiagnosticCategories.h
M clang/include/clang/Basic/DiagnosticCommentKinds.td
M clang/include/clang/Basic/DiagnosticCommonKinds.td
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Basic/DiagnosticIDs.h
M clang/include/clang/Basic/DiagnosticLexKinds.td
M clang/include/clang/Basic/DiagnosticOptions.h
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/DiagnosticSerializationKinds.td
A clang/include/clang/Basic/DiagnosticTrap.h
A clang/include/clang/Basic/DiagnosticTrapKinds.td
M clang/include/clang/Basic/Features.def
M clang/include/clang/Basic/FileManager.h
M clang/include/clang/Basic/IdentifierTable.h
M clang/include/clang/Basic/JsonSupport.h
M clang/include/clang/Basic/LangOptions.def
M clang/include/clang/Basic/LangOptions.h
M clang/include/clang/Basic/LangStandard.h
M clang/include/clang/Basic/LangStandards.def
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/NoSanitizeList.h
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/OpenACCKinds.h
M clang/include/clang/Basic/OpenMPKinds.def
M clang/include/clang/Basic/OpenMPKinds.h
M clang/include/clang/Basic/PPCTypes.def
M clang/include/clang/Basic/PointerAuthOptions.h
M clang/include/clang/Basic/ProfileList.h
M clang/include/clang/Basic/SanitizerSpecialCaseList.h
M clang/include/clang/Basic/Sanitizers.def
M clang/include/clang/Basic/Sanitizers.h
M clang/include/clang/Basic/Sarif.h
A clang/include/clang/Basic/SimpleTypoCorrection.h
M clang/include/clang/Basic/SourceLocation.h
M clang/include/clang/Basic/SourceManager.h
M clang/include/clang/Basic/Specifiers.h
M clang/include/clang/Basic/StmtNodes.td
M clang/include/clang/Basic/TargetBuiltins.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/TokenKinds.def
M clang/include/clang/Basic/TokenKinds.h
M clang/include/clang/Basic/TypeNodes.td
M clang/include/clang/Basic/arm_mve.td
M clang/include/clang/Basic/arm_neon.td
M clang/include/clang/Basic/arm_sme.td
M clang/include/clang/Basic/arm_sve.td
A clang/include/clang/Basic/riscv_andes_vector.td
M clang/include/clang/Basic/riscv_sifive_vector.td
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/CIR/CIRGenerator.h
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
A clang/include/clang/CIR/Dialect/IR/CIRAttrConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.h
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
A clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
M clang/include/clang/CIR/Dialect/IR/CMakeLists.txt
A clang/include/clang/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.h
A clang/include/clang/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.h
M clang/include/clang/CIR/Dialect/Passes.h
M clang/include/clang/CIR/Dialect/Passes.td
R clang/include/clang/CIR/Interfaces/CIRFPTypeInterface.h
R clang/include/clang/CIR/Interfaces/CIRFPTypeInterface.td
M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.h
M clang/include/clang/CIR/Interfaces/CIROpInterfaces.td
A clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.h
A clang/include/clang/CIR/Interfaces/CIRTypeInterfaces.td
M clang/include/clang/CIR/Interfaces/CMakeLists.txt
M clang/include/clang/CIR/LoweringHelpers.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/CodeGen/BackendUtil.h
M clang/include/clang/CodeGen/CGFunctionInfo.h
M clang/include/clang/CodeGen/CodeGenABITypes.h
M clang/include/clang/CodeGen/ModuleBuilder.h
M clang/include/clang/CrossTU/CrossTranslationUnit.h
M clang/include/clang/Driver/Action.h
A clang/include/clang/Driver/CommonArgs.h
A clang/include/clang/Driver/CudaInstallationDetector.h
M clang/include/clang/Driver/Distro.h
M clang/include/clang/Driver/Driver.h
A clang/include/clang/Driver/LazyDetector.h
M clang/include/clang/Driver/OffloadBundler.h
M clang/include/clang/Driver/Options.td
A clang/include/clang/Driver/RocmInstallationDetector.h
M clang/include/clang/Driver/SanitizerArgs.h
A clang/include/clang/Driver/SyclInstallationDetector.h
M clang/include/clang/Driver/ToolChain.h
M clang/include/clang/ExtractAPI/API.h
M clang/include/clang/ExtractAPI/DeclarationFragments.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/ASTConsumers.h
M clang/include/clang/Frontend/ASTUnit.h
M clang/include/clang/Frontend/CommandLineSourceLoc.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/CompilerInvocation.h
M clang/include/clang/Frontend/DiagnosticRenderer.h
M clang/include/clang/Frontend/FrontendAction.h
M clang/include/clang/Frontend/FrontendActions.h
M clang/include/clang/Frontend/LogDiagnosticPrinter.h
M clang/include/clang/Frontend/PrecompiledPreamble.h
M clang/include/clang/Frontend/SARIFDiagnostic.h
M clang/include/clang/Frontend/SARIFDiagnosticPrinter.h
M clang/include/clang/Frontend/SerializedDiagnosticPrinter.h
M clang/include/clang/Frontend/TextDiagnostic.h
M clang/include/clang/Frontend/TextDiagnosticPrinter.h
M clang/include/clang/Frontend/Utils.h
M clang/include/clang/Index/IndexSymbol.h
M clang/include/clang/Interpreter/Interpreter.h
M clang/include/clang/Interpreter/Value.h
M clang/include/clang/Lex/DependencyDirectivesScanner.h
M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/LexHLSLRootSignature.h
M clang/include/clang/Lex/Lexer.h
A clang/include/clang/Lex/NoTrivialPPDirectiveTracer.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Lex/Token.h
M clang/include/clang/Lex/TokenLexer.h
M clang/include/clang/Parse/ParseHLSLRootSignature.h
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/CodeCompleteConsumer.h
M clang/include/clang/Sema/DeclSpec.h
M clang/include/clang/Sema/EnterExpressionEvaluationContext.h
M clang/include/clang/Sema/HLSLExternalSemaSource.h
M clang/include/clang/Sema/HeuristicResolver.h
M clang/include/clang/Sema/Initialization.h
M clang/include/clang/Sema/MultiplexExternalSemaSource.h
M clang/include/clang/Sema/Overload.h
M clang/include/clang/Sema/Ownership.h
M clang/include/clang/Sema/ParsedAttr.h
M clang/include/clang/Sema/ParsedTemplate.h
M clang/include/clang/Sema/RISCVIntrinsicManager.h
M clang/include/clang/Sema/Redeclaration.h
M clang/include/clang/Sema/Scope.h
M clang/include/clang/Sema/ScopeInfo.h
M clang/include/clang/Sema/Sema.h
M clang/include/clang/Sema/SemaAMDGPU.h
M clang/include/clang/Sema/SemaARM.h
M clang/include/clang/Sema/SemaConcept.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaInternal.h
M clang/include/clang/Sema/SemaObjC.h
M clang/include/clang/Sema/SemaOpenACC.h
M clang/include/clang/Sema/SemaOpenMP.h
M clang/include/clang/Sema/SemaPseudoObject.h
M clang/include/clang/Sema/SemaRISCV.h
M clang/include/clang/Sema/SemaSPIRV.h
M clang/include/clang/Sema/SemaSYCL.h
M clang/include/clang/Sema/SemaWasm.h
M clang/include/clang/Sema/SemaX86.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Sema/TypoCorrection.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ASTRecordReader.h
M clang/include/clang/Serialization/ASTRecordWriter.h
M clang/include/clang/Serialization/ASTWriter.h
M clang/include/clang/Serialization/ContinuousRangeMap.h
M clang/include/clang/Serialization/ModuleCache.h
M clang/include/clang/Serialization/SourceLocationEncoding.h
M clang/include/clang/Serialization/TypeBitCodes.def
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
M clang/include/clang/StaticAnalyzer/Core/Checker.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
M clang/include/clang/StaticAnalyzer/Frontend/CheckerRegistry.h
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
M clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
M clang/include/clang/Tooling/Inclusions/IncludeStyle.h
M clang/include/clang/Tooling/Refactoring/Lookup.h
M clang/include/clang/Tooling/Refactoring/RecursiveSymbolVisitor.h
M clang/include/clang/Tooling/Refactoring/RefactoringOptionVisitor.h
M clang/include/clang/Tooling/Tooling.h
M clang/include/clang/Tooling/Transformer/Transformer.h
M clang/include/module.modulemap
M clang/lib/APINotes/APINotesFormat.h
M clang/lib/APINotes/APINotesManager.cpp
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/APValue.cpp
M clang/lib/AST/ASTConcept.cpp
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTDiagnostic.cpp
M clang/lib/AST/ASTDumper.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ASTImporterLookupTable.cpp
M clang/lib/AST/ASTStructuralEquivalence.cpp
M clang/lib/AST/ASTTypeTraits.cpp
M clang/lib/AST/AttrImpl.cpp
M clang/lib/AST/ByteCode/Boolean.h
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/Descriptor.cpp
M clang/lib/AST/ByteCode/Descriptor.h
M clang/lib/AST/ByteCode/Disasm.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/DynamicAllocator.h
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/EvaluationResult.cpp
M clang/lib/AST/ByteCode/EvaluationResult.h
M clang/lib/AST/ByteCode/Floating.h
R clang/lib/AST/ByteCode/Frame.cpp
M clang/lib/AST/ByteCode/Frame.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/FunctionPointer.cpp
M clang/lib/AST/ByteCode/Integral.h
M clang/lib/AST/ByteCode/IntegralAP.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.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/InterpShared.cpp
M clang/lib/AST/ByteCode/InterpShared.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/MemberPointer.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/PrimType.h
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/ByteCode/Program.h
M clang/lib/AST/ByteCode/Record.cpp
M clang/lib/AST/ByteCode/Record.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/CMakeLists.txt
M clang/lib/AST/CXXInheritance.cpp
M clang/lib/AST/Comment.cpp
M clang/lib/AST/CommentLexer.cpp
M clang/lib/AST/CommentParser.cpp
M clang/lib/AST/CommentSema.cpp
M clang/lib/AST/ComparisonCategories.cpp
M clang/lib/AST/ComputeDependence.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclBase.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/AST/DeclGroup.cpp
M clang/lib/AST/DeclObjC.cpp
M clang/lib/AST/DeclOpenMP.cpp
M clang/lib/AST/DeclPrinter.cpp
M clang/lib/AST/DeclTemplate.cpp
M clang/lib/AST/DeclarationName.cpp
M clang/lib/AST/DynamicRecursiveASTVisitor.cpp
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprCXX.cpp
M clang/lib/AST/ExprClassification.cpp
M clang/lib/AST/ExprConcepts.cpp
M clang/lib/AST/ExprConstant.cpp
M clang/lib/AST/ExprObjC.cpp
M clang/lib/AST/ExternalASTMerger.cpp
M clang/lib/AST/FormatString.cpp
M clang/lib/AST/InheritViz.cpp
M clang/lib/AST/ItaniumCXXABI.cpp
M clang/lib/AST/ItaniumMangle.cpp
M clang/lib/AST/JSONNodeDumper.cpp
M clang/lib/AST/Mangle.cpp
M clang/lib/AST/MicrosoftMangle.cpp
M clang/lib/AST/NSAPI.cpp
M clang/lib/AST/NestedNameSpecifier.cpp
M clang/lib/AST/ODRHash.cpp
M clang/lib/AST/OSLog.cpp
M clang/lib/AST/OpenACCClause.cpp
M clang/lib/AST/OpenMPClause.cpp
M clang/lib/AST/ParentMapContext.cpp
M clang/lib/AST/PrintfFormatString.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/RawCommentList.cpp
M clang/lib/AST/RecordLayoutBuilder.cpp
M clang/lib/AST/ScanfFormatString.cpp
M clang/lib/AST/Stmt.cpp
M clang/lib/AST/StmtCXX.cpp
M clang/lib/AST/StmtOpenACC.cpp
M clang/lib/AST/StmtOpenMP.cpp
M clang/lib/AST/StmtPrinter.cpp
M clang/lib/AST/StmtProfile.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TemplateName.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/AST/TypePrinter.cpp
M clang/lib/AST/VTTBuilder.cpp
M clang/lib/AST/VTableBuilder.cpp
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
M clang/lib/ASTMatchers/CMakeLists.txt
M clang/lib/ASTMatchers/Dynamic/Marshallers.h
M clang/lib/ASTMatchers/Dynamic/Parser.cpp
M clang/lib/ASTMatchers/Dynamic/Registry.cpp
M clang/lib/ASTMatchers/Dynamic/VariantValue.cpp
R clang/lib/ASTMatchers/GtestMatchers.cpp
M clang/lib/Analysis/AnalysisDeclContext.cpp
M clang/lib/Analysis/CFG.cpp
M clang/lib/Analysis/CFGReachabilityAnalysis.cpp
M clang/lib/Analysis/CFGStmtMap.cpp
M clang/lib/Analysis/CMakeLists.txt
M clang/lib/Analysis/CallGraph.cpp
M clang/lib/Analysis/CalledOnceCheck.cpp
M clang/lib/Analysis/CloneDetection.cpp
M clang/lib/Analysis/CocoaConventions.cpp
M clang/lib/Analysis/Consumed.cpp
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
M clang/lib/Analysis/FlowSensitive/CMakeLists.txt
M clang/lib/Analysis/FlowSensitive/CNFFormula.cpp
M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
M clang/lib/Analysis/FlowSensitive/Formula.cpp
A clang/lib/Analysis/FlowSensitive/FormulaSerialization.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/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Analysis/FlowSensitive/Value.cpp
M clang/lib/Analysis/IssueHash.cpp
A clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
A clang/lib/Analysis/LifetimeSafety/Checker.cpp
A clang/lib/Analysis/LifetimeSafety/Dataflow.h
A clang/lib/Analysis/LifetimeSafety/Facts.cpp
A clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
A clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
A clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
A clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
A clang/lib/Analysis/LifetimeSafety/Loans.cpp
A clang/lib/Analysis/LifetimeSafety/Origins.cpp
M clang/lib/Analysis/LiveVariables.cpp
M clang/lib/Analysis/PathDiagnostic.cpp
M clang/lib/Analysis/ProgramPoint.cpp
M clang/lib/Analysis/ReachableCode.cpp
M clang/lib/Analysis/RetainSummaryManager.cpp
M clang/lib/Analysis/ThreadSafety.cpp
M clang/lib/Analysis/ThreadSafetyCommon.cpp
M clang/lib/Analysis/ThreadSafetyTIL.cpp
M clang/lib/Analysis/UninitializedValues.cpp
M clang/lib/Analysis/UnsafeBufferUsage.cpp
M clang/lib/Analysis/plugins/CheckerDependencyHandling/CheckerDependencyHandling.cpp
M clang/lib/Analysis/plugins/CheckerOptionHandling/CheckerOptionHandling.cpp
M clang/lib/Analysis/plugins/SampleAnalyzer/MainCallChecker.cpp
M clang/lib/Basic/Attributes.cpp
M clang/lib/Basic/Builtins.cpp
M clang/lib/Basic/CMakeLists.txt
M clang/lib/Basic/CodeGenOptions.cpp
M clang/lib/Basic/Cuda.cpp
M clang/lib/Basic/Diagnostic.cpp
M clang/lib/Basic/DiagnosticIDs.cpp
M clang/lib/Basic/ExpressionTraits.cpp
M clang/lib/Basic/FileEntry.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/Basic/FileSystemStatCache.cpp
M clang/lib/Basic/IdentifierTable.cpp
M clang/lib/Basic/LangOptions.cpp
M clang/lib/Basic/LangStandards.cpp
M clang/lib/Basic/Module.cpp
M clang/lib/Basic/NoSanitizeList.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/OpenMPKinds.cpp
M clang/lib/Basic/ProfileList.cpp
M clang/lib/Basic/SanitizerSpecialCaseList.cpp
M clang/lib/Basic/Sanitizers.cpp
M clang/lib/Basic/Sarif.cpp
A clang/lib/Basic/SimpleTypoCorrection.cpp
M clang/lib/Basic/SourceLocation.cpp
M clang/lib/Basic/SourceManager.cpp
M clang/lib/Basic/TargetID.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets.cpp
M clang/lib/Basic/Targets/AArch64.cpp
M clang/lib/Basic/Targets/AArch64.h
M clang/lib/Basic/Targets/AMDGPU.cpp
M clang/lib/Basic/Targets/AMDGPU.h
M clang/lib/Basic/Targets/ARC.cpp
M clang/lib/Basic/Targets/ARM.cpp
M clang/lib/Basic/Targets/ARM.h
M clang/lib/Basic/Targets/AVR.cpp
M clang/lib/Basic/Targets/AVR.h
M clang/lib/Basic/Targets/BPF.cpp
M clang/lib/Basic/Targets/BPF.h
M clang/lib/Basic/Targets/DirectX.h
M clang/lib/Basic/Targets/Hexagon.cpp
M clang/lib/Basic/Targets/LoongArch.cpp
M clang/lib/Basic/Targets/LoongArch.h
M clang/lib/Basic/Targets/M68k.cpp
M clang/lib/Basic/Targets/Mips.cpp
M clang/lib/Basic/Targets/Mips.h
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/OSTargets.h
R clang/lib/Basic/Targets/PNaCl.cpp
R clang/lib/Basic/Targets/PNaCl.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/RISCV.cpp
M clang/lib/Basic/Targets/RISCV.h
M clang/lib/Basic/Targets/SPIR.cpp
M clang/lib/Basic/Targets/SPIR.h
M clang/lib/Basic/Targets/SystemZ.cpp
M clang/lib/Basic/Targets/SystemZ.h
M clang/lib/Basic/Targets/TCE.h
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Basic/Targets/X86.cpp
M clang/lib/Basic/Targets/X86.h
M clang/lib/Basic/Targets/Xtensa.cpp
M clang/lib/Basic/Targets/Xtensa.h
M clang/lib/Basic/TypeTraits.cpp
M clang/lib/CIR/CodeGen/Address.h
A clang/lib/CIR/CodeGen/CIRGenAsm.cpp
A clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
A clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
A clang/lib/CIR/CodeGen/CIRGenCXX.cpp
A clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.h
A clang/lib/CIR/CodeGen/CIRGenClass.cpp
A clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
A clang/lib/CIR/CodeGen/CIRGenCleanup.h
M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
A clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
A clang/lib/CIR/CodeGen/CIRGenDeclCXX.cpp
A clang/lib/CIR/CodeGen/CIRGenException.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
A clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
A clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
M clang/lib/CIR/CodeGen/CIRGenExprConstant.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/CIRGenFunctionInfo.h
A clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
A clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
R clang/lib/CIR/CodeGen/CIRGenOpenACCClause.h
A clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
A clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
M clang/lib/CIR/CodeGen/CIRGenTypes.h
A clang/lib/CIR/CodeGen/CIRGenVTables.cpp
A clang/lib/CIR/CodeGen/CIRGenVTables.h
M clang/lib/CIR/CodeGen/CIRGenValue.h
M clang/lib/CIR/CodeGen/CIRGenerator.cpp
M clang/lib/CIR/CodeGen/CMakeLists.txt
A clang/lib/CIR/CodeGen/EHScopeStack.h
M clang/lib/CIR/CodeGen/TargetInfo.cpp
M clang/lib/CIR/CodeGen/TargetInfo.h
M clang/lib/CIR/Dialect/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
A clang/lib/CIR/Dialect/IR/CIRDataLayout.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/IR/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/CIROpenACCTypeInterfaces.cpp
A clang/lib/CIR/Dialect/OpenACC/CMakeLists.txt
A clang/lib/CIR/Dialect/OpenACC/RegisterOpenACCExtensions.cpp
M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
A clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
A clang/lib/CIR/Dialect/Transforms/LoweringPrepareCXXABI.h
A clang/lib/CIR/Dialect/Transforms/LoweringPrepareItaniumCXXABI.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
R clang/lib/CIR/Interfaces/CIRFPTypeInterface.cpp
M clang/lib/CIR/Interfaces/CIROpInterfaces.cpp
A clang/lib/CIR/Interfaces/CIRTypeInterfaces.cpp
M clang/lib/CIR/Interfaces/CMakeLists.txt
M clang/lib/CIR/Lowering/CIRPasses.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
M clang/lib/CIR/Lowering/LoweringHelpers.cpp
M clang/lib/CodeGen/ABIInfo.cpp
M clang/lib/CodeGen/ABIInfo.h
M clang/lib/CodeGen/ABIInfoImpl.cpp
M clang/lib/CodeGen/Address.h
M clang/lib/CodeGen/BackendConsumer.h
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGAtomic.cpp
M clang/lib/CodeGen/CGBlocks.cpp
M clang/lib/CodeGen/CGBuiltin.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGCXX.cpp
M clang/lib/CodeGen/CGCXXABI.cpp
M clang/lib/CodeGen/CGCXXABI.h
M clang/lib/CodeGen/CGCall.cpp
M clang/lib/CodeGen/CGCall.h
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGCoroutine.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGDebugInfo.h
M clang/lib/CodeGen/CGDecl.cpp
M clang/lib/CodeGen/CGDeclCXX.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprComplex.cpp
M clang/lib/CodeGen/CGExprConstant.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/CGLoopInfo.cpp
M clang/lib/CodeGen/CGNonTrivialStruct.cpp
M clang/lib/CodeGen/CGObjC.cpp
M clang/lib/CodeGen/CGObjCGNU.cpp
M clang/lib/CodeGen/CGObjCMac.cpp
M clang/lib/CodeGen/CGObjCRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
M clang/lib/CodeGen/CGPointerAuth.cpp
M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CGVTables.cpp
M clang/lib/CodeGen/CMakeLists.txt
M clang/lib/CodeGen/CodeGenAction.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/CodeGenPGO.cpp
M clang/lib/CodeGen/CodeGenSYCL.cpp
M clang/lib/CodeGen/CodeGenTBAA.cpp
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/lib/CodeGen/CodeGenTypes.h
M clang/lib/CodeGen/ConstantInitBuilder.cpp
M clang/lib/CodeGen/CoverageMappingGen.cpp
M clang/lib/CodeGen/EHScopeStack.h
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
M clang/lib/CodeGen/ItaniumCXXABI.cpp
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/ModuleBuilder.cpp
M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
A clang/lib/CodeGen/SanitizerHandler.h
M clang/lib/CodeGen/SwiftCallingConv.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
M clang/lib/CodeGen/TargetBuiltins/WebAssembly.cpp
M clang/lib/CodeGen/TargetBuiltins/X86.cpp
M clang/lib/CodeGen/TargetInfo.cpp
M clang/lib/CodeGen/TargetInfo.h
M clang/lib/CodeGen/Targets/AArch64.cpp
M clang/lib/CodeGen/Targets/AMDGPU.cpp
M clang/lib/CodeGen/Targets/ARC.cpp
M clang/lib/CodeGen/Targets/ARM.cpp
M clang/lib/CodeGen/Targets/BPF.cpp
M clang/lib/CodeGen/Targets/CSKY.cpp
M clang/lib/CodeGen/Targets/DirectX.cpp
M clang/lib/CodeGen/Targets/Hexagon.cpp
M clang/lib/CodeGen/Targets/Lanai.cpp
M clang/lib/CodeGen/Targets/LoongArch.cpp
M clang/lib/CodeGen/Targets/MSP430.cpp
M clang/lib/CodeGen/Targets/Mips.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
R clang/lib/CodeGen/Targets/PNaCl.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CodeGen/Targets/RISCV.cpp
M clang/lib/CodeGen/Targets/SPIR.cpp
M clang/lib/CodeGen/Targets/Sparc.cpp
M clang/lib/CodeGen/Targets/SystemZ.cpp
M clang/lib/CodeGen/Targets/TCE.cpp
M clang/lib/CodeGen/Targets/WebAssembly.cpp
M clang/lib/CodeGen/Targets/X86.cpp
M clang/lib/CodeGen/Targets/XCore.cpp
A clang/lib/CodeGen/TrapReasonBuilder.cpp
A clang/lib/CodeGen/TrapReasonBuilder.h
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp
M clang/lib/Driver/Action.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Compilation.cpp
M clang/lib/Driver/Distro.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/Job.cpp
M clang/lib/Driver/MultilibBuilder.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChain.cpp
M clang/lib/Driver/ToolChains/AIX.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/AMDGPU.h
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
M clang/lib/Driver/ToolChains/AVR.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
M clang/lib/Driver/ToolChains/Arch/AArch64.h
M clang/lib/Driver/ToolChains/Arch/ARM.cpp
M clang/lib/Driver/ToolChains/Arch/CSKY.cpp
M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
M clang/lib/Driver/ToolChains/Arch/M68k.cpp
M clang/lib/Driver/ToolChains/Arch/Mips.cpp
M clang/lib/Driver/ToolChains/Arch/PPC.cpp
M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
M clang/lib/Driver/ToolChains/Arch/Sparc.h
M clang/lib/Driver/ToolChains/Arch/SystemZ.cpp
M clang/lib/Driver/ToolChains/Arch/VE.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/BareMetal.h
M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Clang.h
M clang/lib/Driver/ToolChains/CommonArgs.cpp
R clang/lib/Driver/ToolChains/CommonArgs.h
M clang/lib/Driver/ToolChains/CrossWindows.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Cuda.h
M clang/lib/Driver/ToolChains/Cygwin.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/DragonFly.cpp
M clang/lib/Driver/ToolChains/Flang.cpp
M clang/lib/Driver/ToolChains/Flang.h
M clang/lib/Driver/ToolChains/FreeBSD.cpp
M clang/lib/Driver/ToolChains/FreeBSD.h
M clang/lib/Driver/ToolChains/Fuchsia.cpp
M clang/lib/Driver/ToolChains/Gnu.cpp
M clang/lib/Driver/ToolChains/Gnu.h
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/HIPAMD.h
M clang/lib/Driver/ToolChains/HIPSPV.cpp
M clang/lib/Driver/ToolChains/HIPSPV.h
M clang/lib/Driver/ToolChains/HIPUtility.cpp
M clang/lib/Driver/ToolChains/HIPUtility.h
M clang/lib/Driver/ToolChains/HLSL.cpp
M clang/lib/Driver/ToolChains/HLSL.h
M clang/lib/Driver/ToolChains/Haiku.cpp
M clang/lib/Driver/ToolChains/Haiku.h
M clang/lib/Driver/ToolChains/Hexagon.cpp
M clang/lib/Driver/ToolChains/Hexagon.h
M clang/lib/Driver/ToolChains/Hurd.cpp
M clang/lib/Driver/ToolChains/Hurd.h
M clang/lib/Driver/ToolChains/InterfaceStubs.cpp
R clang/lib/Driver/ToolChains/LazyDetector.h
M clang/lib/Driver/ToolChains/Linux.cpp
M clang/lib/Driver/ToolChains/MSP430.cpp
M clang/lib/Driver/ToolChains/MSVC.cpp
M clang/lib/Driver/ToolChains/MSVC.h
A clang/lib/Driver/ToolChains/Managarm.cpp
A clang/lib/Driver/ToolChains/Managarm.h
M clang/lib/Driver/ToolChains/MinGW.cpp
M clang/lib/Driver/ToolChains/MinGW.h
M clang/lib/Driver/ToolChains/MipsLinux.cpp
R clang/lib/Driver/ToolChains/NaCl.cpp
R clang/lib/Driver/ToolChains/NaCl.h
M clang/lib/Driver/ToolChains/NetBSD.cpp
M clang/lib/Driver/ToolChains/OHOS.cpp
M clang/lib/Driver/ToolChains/OpenBSD.cpp
M clang/lib/Driver/ToolChains/OpenBSD.h
M clang/lib/Driver/ToolChains/PPCLinux.cpp
M clang/lib/Driver/ToolChains/PS4CPU.cpp
R clang/lib/Driver/ToolChains/RISCVToolchain.cpp
R clang/lib/Driver/ToolChains/RISCVToolchain.h
R clang/lib/Driver/ToolChains/ROCm.h
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
M clang/lib/Driver/ToolChains/SYCL.cpp
M clang/lib/Driver/ToolChains/SYCL.h
M clang/lib/Driver/ToolChains/Solaris.cpp
M clang/lib/Driver/ToolChains/TCE.cpp
M clang/lib/Driver/ToolChains/UEFI.cpp
M clang/lib/Driver/ToolChains/VEToolchain.cpp
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Driver/ToolChains/XCore.cpp
M clang/lib/Driver/ToolChains/ZOS.cpp
M clang/lib/Driver/XRayArgs.cpp
M clang/lib/Edit/Commit.cpp
M clang/lib/Edit/EditedSource.cpp
M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
M clang/lib/ExtractAPI/DeclarationFragments.cpp
M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
M clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/CMakeLists.txt
M clang/lib/Format/ContinuationIndenter.cpp
M clang/lib/Format/ContinuationIndenter.h
M clang/lib/Format/DefinitionBlockSeparator.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
M clang/lib/Format/IntegerLiteralSeparatorFixer.h
M clang/lib/Format/MacroCallReconstructor.cpp
M clang/lib/Format/MacroExpander.cpp
M clang/lib/Format/NamespaceEndCommentsFixer.cpp
A clang/lib/Format/NumericLiteralCaseFixer.cpp
A clang/lib/Format/NumericLiteralCaseFixer.h
A clang/lib/Format/NumericLiteralInfo.cpp
A clang/lib/Format/NumericLiteralInfo.h
M clang/lib/Format/ObjCPropertyAttributeOrderFixer.cpp
M clang/lib/Format/QualifierAlignmentFixer.cpp
M clang/lib/Format/SortJavaScriptImports.cpp
M clang/lib/Format/TokenAnalyzer.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/lib/Format/UsingDeclarationsSorter.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Format/WhitespaceManager.h
M clang/lib/Frontend/ASTConsumers.cpp
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/CreateInvocationFromCommandLine.cpp
M clang/lib/Frontend/DiagnosticRenderer.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/FrontendOptions.cpp
M clang/lib/Frontend/HeaderIncludeGen.cpp
M clang/lib/Frontend/InitPreprocessor.cpp
M clang/lib/Frontend/LayoutOverrideSource.cpp
M clang/lib/Frontend/LogDiagnosticPrinter.cpp
M clang/lib/Frontend/ModuleDependencyCollector.cpp
M clang/lib/Frontend/MultiplexConsumer.cpp
M clang/lib/Frontend/PrecompiledPreamble.cpp
M clang/lib/Frontend/PrintPreprocessedOutput.cpp
M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
M clang/lib/Frontend/Rewrite/FrontendActions.cpp
M clang/lib/Frontend/Rewrite/HTMLPrint.cpp
M clang/lib/Frontend/Rewrite/RewriteMacros.cpp
M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
M clang/lib/Frontend/Rewrite/RewriteObjC.cpp
M clang/lib/Frontend/Rewrite/RewriteTest.cpp
M clang/lib/Frontend/SARIFDiagnostic.cpp
M clang/lib/Frontend/SARIFDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
M clang/lib/Frontend/SerializedDiagnosticReader.cpp
M clang/lib/Frontend/TestModuleFileExtension.cpp
M clang/lib/Frontend/TextDiagnostic.cpp
M clang/lib/Frontend/TextDiagnosticPrinter.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/__clang_cuda_intrinsics.h
M clang/lib/Headers/__clang_cuda_runtime_wrapper.h
M clang/lib/Headers/__clang_hip_cmath.h
A clang/lib/Headers/__clang_spirv_builtins.h
M clang/lib/Headers/amxavx512intrin.h
M clang/lib/Headers/amxmovrstransposeintrin.h
A clang/lib/Headers/andes_vector.h
M clang/lib/Headers/arm_acle.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/avxifmaintrin.h
M clang/lib/Headers/avxintrin.h
M clang/lib/Headers/avxvnniint8intrin.h
M clang/lib/Headers/avxvnniintrin.h
M clang/lib/Headers/bmiintrin.h
M clang/lib/Headers/cpuid.h
A clang/lib/Headers/cuda_wrappers/__utility/declval.h
A clang/lib/Headers/cuda_wrappers/bits/c++config.h
M clang/lib/Headers/emmintrin.h
M clang/lib/Headers/f16cintrin.h
M clang/lib/Headers/float.h
M clang/lib/Headers/fma4intrin.h
M clang/lib/Headers/fmaintrin.h
M clang/lib/Headers/gfniintrin.h
M clang/lib/Headers/hlsl.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/hlsl/hlsl_basic_types.h
M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
M clang/lib/Headers/hlsl/hlsl_intrinsics.h
A clang/lib/Headers/hlsl/hlsl_spirv.h
M clang/lib/Headers/immintrin.h
M clang/lib/Headers/intrin.h
M clang/lib/Headers/keylockerintrin.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/movrsintrin.h
M clang/lib/Headers/opencl-c-base.h
M clang/lib/Headers/opencl-c.h
M clang/lib/Headers/pmmintrin.h
M clang/lib/Headers/prfchwintrin.h
M clang/lib/Headers/ptrauth.h
A clang/lib/Headers/riscv_mips.h
A clang/lib/Headers/riscv_nds.h
M clang/lib/Headers/sm4evexintrin.h
R clang/test/Driver/Inputs/spirv-openmp/lib/libomptarget-spirv64.bc
Log Message:
-----------
Merge branch 'main' into users/meinersbur/polly_remove-PolyhedralInfo
Compare: https://github.com/llvm/llvm-project/compare/b48e381a72ae...262b569deeec
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