[all-commits] [llvm/llvm-project] 2d4dae: [SLP]Fix legality checks for bswap-based transform...
Joel E. Denny via All-commits
all-commits at lists.llvm.org
Tue Mar 24 17:37:14 PDT 2026
Branch: refs/heads/users/jdenny-ornl/fix-blockfreq-unroll-unconditional-latches--fast
Home: https://github.com/llvm/llvm-project
Commit: 2d4daea3b66469420fc164e76c15558b34e44c75
https://github.com/llvm/llvm-project/commit/2d4daea3b66469420fc164e76c15558b34e44c75
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-bswap.ll
M llvm/test/Transforms/SLPVectorizer/non-power-of-2-bswap.ll
Log Message:
-----------
[SLP]Fix legality checks for bswap-based transformations
Fix the checks for the non-power-of-2 base bswaps by checking the
power-of-2 of the source type, not the target scalar type. Plus, add
cost estimation for zext, if the source type does not match the scalar type.
Fixes https://github.com/llvm/llvm-project/pull/184018#issuecomment-4053477562
Commit: dff0d290e8104d51a1a7a7212ab316cc50f451da
https://github.com/llvm/llvm-project/commit/dff0d290e8104d51a1a7a7212ab316cc50f451da
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
Log Message:
-----------
[VPlan] Check isa<VPRecipeValue> directly, remove unused variable (NFC).
Commit: 61b6d275cd832436133d3ccd7f607fa734a2263f
https://github.com/llvm/llvm-project/commit/61b6d275cd832436133d3ccd7f607fa734a2263f
Author: Yue Huang <30948580+AdUhTkJm at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M mlir/include/mlir/Analysis/Presburger/Matrix.h
M mlir/lib/Analysis/Presburger/Matrix.cpp
M mlir/unittests/Analysis/Presburger/MatrixTest.cpp
Log Message:
-----------
[MLIR][Presburger] Add support for Smith normal form (#185328)
FPL already has support for computing Hermite normal form for integer
matrices. Here we add support to computing Smith normal form.
This is a preparation for Barvinok's algorithm. Given a polyhedron $P =
\{ x | Ax + b = 0, Cx + d \leq 0 \}$, we must find a particular solution
$x_0$ of $Ax + b = 0$ in order to project lower-dimensional polyhedra
into full-dimensional ones. This requires the Smith normal form of the
integer matrix $A$.
The implementation here follows the algorithm in
[wikipedia](https://en.wikipedia.org/wiki/Smith_normal_form#Algorithm).
Commit: 66d3e97a5565f832607bcb4966837eb7bef99e56
https://github.com/llvm/llvm-project/commit/66d3e97a5565f832607bcb4966837eb7bef99e56
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/write_register.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_barrier/wave_barrier (#186512)
Commit: 1c2a6504da66c2762cc983b6b61bf0fccbf4c09c
https://github.com/llvm/llvm-project/commit/1c2a6504da66c2762cc983b6b61bf0fccbf4c09c
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Move getMaskNode to avoid unnecessary forward declarations. (#186815)
I've also improved the assertions on the source / bool mask types to
catch bad use cases.
Cleanup pre-work to allow the i512 codegen to eventually use getMaskNode
instead of manual bool mask creations
Commit: 61a9e30045786a07d392c131409b1cb405036e42
https://github.com/llvm/llvm-project/commit/61a9e30045786a07d392c131409b1cb405036e42
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
R llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-bswap.ll
M llvm/test/Transforms/SLPVectorizer/non-power-of-2-bswap.ll
Log Message:
-----------
Revert "[SLP]Fix legality checks for bswap-based transformations"
This reverts commit 2d4daea3b66469420fc164e76c15558b34e44c75 to fix
a buildbot https://emea01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flab.llvm.org%2Fbuildbot%2F%23%2Fbuilders%2F164%2Fbuilds%2F19737&data=05%7C02%7C%7C672461616e0d4b66614208de8374a0ff%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C639092734113272365%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&sdata=%2B23yMlvZzYt7bB2gM6MmcEwPkIKQogXjcKYIZ%2Bz79zQ%3D&reserved=0
Commit: 6b1ad6bbfd6ea427d10a99f54681010af8fb23fb
https://github.com/llvm/llvm-project/commit/6b1ad6bbfd6ea427d10a99f54681010af8fb23fb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rv32p.ll
Log Message:
-----------
[RISCV] Fold waddau/wsubau to waddu/wsubu when possible (#186635)
If the wide input is zero extended and only one narrow input is
used, we can fold to waddu/wsubu.
Commit: 18d85a33ccbf458b68102283dcec8332737ac4fe
https://github.com/llvm/llvm-project/commit/18d85a33ccbf458b68102283dcec8332737ac4fe
Author: Derek Schuff <dschuff at chromium.org>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
M llvm/test/CodeGen/WebAssembly/atomic-fence.ll
M llvm/test/CodeGen/WebAssembly/atomic-mem-consistency.ll
M llvm/test/CodeGen/WebAssembly/offset-atomics.ll
Log Message:
-----------
[WebAssembly] Support acquire-release atomics in CodeGen (#184900)
Set the correct memory ordering for relaxed atomics after ISel. This
allows
SelectionDAG to keep the simple generic selection for target-independent
AtomicLoad nodes, but keeps the ordering immediate correct in the MIR.
Notably, the MachineMemOperand still has the original memory ordering
and MIR passes would use that rather than the ordering immedate to make
their code motion decisions (if we had any for Wasm, which we don't).
Commit: e30aa40aa677ea967db9d2d20e43b64902070e56
https://github.com/llvm/llvm-project/commit/e30aa40aa677ea967db9d2d20e43b64902070e56
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/GenericDomTree.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M polly/lib/Analysis/ScopBuilder.cpp
Log Message:
-----------
Revert "[DomTree] Assert non-null block for pre-dom tree" (#186831)
Reverts llvm/llvm-project#186790
Breaks buildbots, there are more SLPVectorizer problems.
https://lab.llvm.org/buildbot/#/builders/52/builds/15810
Commit: 04797bc69268d4c975c18a499d1be66f470c91ba
https://github.com/llvm/llvm-project/commit/04797bc69268d4c975c18a499d1be66f470c91ba
Author: Jiahao Guo <eoonguo at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/test/CodeGen/AArch64/bf16-getset-intrinsics.c
A clang/test/CodeGen/AArch64/neon/bf16-getset.c
Log Message:
-----------
[CIR][AArch64] Lower BF16 vduph lane builtins (#185852)
Part of #185382.
Lower `__builtin_neon_vduph_lane_bf16` and
`__builtin_neon_vduph_laneq_bf16` in ClangIR to `cir.vec.extract`,
and add dedicated AArch64 Neon BF16 tests.
This is my first LLVM PR, so I'd really appreciate any suggestions on
the implementation, test structure, or general LLVM contribution style.
Commit: c1e093a70c0c7601309813ddcdc3d5b6967808b8
https://github.com/llvm/llvm-project/commit/c1e093a70c0c7601309813ddcdc3d5b6967808b8
Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/stmt-parser.h
A flang/test/Parser/shared-line-program-units.f90
A flang/test/Parser/shared-line-program-units.reject.0.f90
A flang/test/Parser/shared-line-program-units.reject.1.f90
Log Message:
-----------
[flang][parser] Add a feature flag for multiple program units on one line. (#186533)
This PR adds a feature flag `MultipleProgramUnitsOnSameLine` that by
default allows program units to be terminated by semicolons, and then
allow the next program unit to follow on the same line.
It also adds some test programs to demonstrate using programming units
and showing the portability warning with "-pedantic".
Commit: f00145aa5228bd510e662f8dfbf8f23a0bcbb706
https://github.com/llvm/llvm-project/commit/f00145aa5228bd510e662f8dfbf8f23a0bcbb706
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] Add test showing failure to fold compress(splat(x),splat(x),mask) -> splat(x) (#186823)
Noticed while working on i512 shift expansion - if we end up with repeated splat args, we fail to remove the compress node
Commit: cf979d5a962e867b87564eecdc5337f9c706ad3a
https://github.com/llvm/llvm-project/commit/cf979d5a962e867b87564eecdc5337f9c706ad3a
Author: Abhijeet <abhijeetsharma2002 at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/atanpif16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/atanpif16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/atanpif16.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] Refactored atanpif16 to header only (#184316)
Fixes #178105
Commit: 479aeee2238c0de57337f3113cc7fb2721326ccc
https://github.com/llvm/llvm-project/commit/479aeee2238c0de57337f3113cc7fb2721326ccc
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticGroups.td
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
A clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/test/Analysis/Scalable/command-line-interface.cpp
A clang/test/Analysis/Scalable/downgradable-errors.cpp
A clang/test/Analysis/Scalable/help.cpp
M clang/test/Analysis/Scalable/ssaf-format/list.test
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
A clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
M llvm/utils/gn/secondary/clang/lib/FrontendTool/BUILD.gn
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Frontend/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysisFramework/BUILD.gn
Log Message:
-----------
Reapply "[clang][ssaf] Add --ssaf-extract-summaries= and --ssaf-tu-summary-file= options" (#186463)
This reverts commit 3548ec95178c00a2895a65b435945ce318396c8e and adapts
the code to the new ScalableStaticAnalysisFramework/ directory layout.
Re-adds:
- `TUSummaryExtractorFrontendAction` and its integration into `ExecuteCompilerInvocation`
- `--ssaf-extract-summaries=` and `--ssaf-tu-summary-file=` CLI options
- SSAFForceLinker / SSAFBuiltinForceLinker headers and anchor symbols
- Diagnostics under -Wscalable-static-analysis-framework
- Lit tests for the CLI and unit tests for the frontend action
- Changes the Formats to be lowercase - and match their spellings in the file paths.
Commit: 6e224cede23888734efbb6806a1cfcc70d03be23
https://github.com/llvm/llvm-project/commit/6e224cede23888734efbb6806a1cfcc70d03be23
Author: Anirudh Mathur <126768505+AnirudhMathur12 at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/bf16fma.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/bf16fma.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/bf16fma.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 bf16fma to Header Only (#182572)
Fixes #181625
Commit: 43dbb887f2579c5c11627948d53b91af5e22e41d
https://github.com/llvm/llvm-project/commit/43dbb887f2579c5c11627948d53b91af5e22e41d
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
A llvm/test/CodeGen/MIR/Generic/inline-asm-extra-info.mir
Log Message:
-----------
[MIR][NFC] Test verbalising INLINEASM extra-info flags. (#186796)
Exposes the bug printing inteldialect.
Commit: 0a3384b9698cf2860cf359d97c9aac1dc1d9218c
https://github.com/llvm/llvm-project/commit/0a3384b9698cf2860cf359d97c9aac1dc1d9218c
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/log_bf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/log_bf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/log_bf16.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 log_bf16 to Header (#186618)
Commit: f41c30f1b079ab71b0b5a45c470e055fdaac8177
https://github.com/llvm/llvm-project/commit/f41c30f1b079ab71b0b5a45c470e055fdaac8177
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for ds_read_tr* (#186006)
Commit: ef05a12553cb79213a95ef668623fa4330c42ce1
https://github.com/llvm/llvm-project/commit/ef05a12553cb79213a95ef668623fa4330c42ce1
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
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-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for ctlz/cttz_zero_undef (#186546)
Commit: 9191b90fe45b3d733c07faf9ae6bf5991a972313
https://github.com/llvm/llvm-project/commit/9191b90fe45b3d733c07faf9ae6bf5991a972313
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/known-pow2.ll
Log Message:
-----------
[X86] known-pow2.ll - add min/max vector test coverage for #182369 (#186841)
Commit: 39f47a47a267c17fa23b86bd0a9757cb0ca35686
https://github.com/llvm/llvm-project/commit/39f47a47a267c17fa23b86bd0a9757cb0ca35686
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.event.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.waitcnt.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_wait intrinsics (#186254)
Commit: 9d3d0d7bb69247e8196759f50dcc9eacace22bbe
https://github.com/llvm/llvm-project/commit/9d3d0d7bb69247e8196759f50dcc9eacace22bbe
Author: Valeriy Savchenko <vsavchenko at apple.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/test/Transforms/InstCombine/sub.ll
Log Message:
-----------
[InstCombine] Support disjoint or in add-sub reassociation fold (#186827)
Commit: 58d34e2e023b64c747efc0bf1811988556282790
https://github.com/llvm/llvm-project/commit/58d34e2e023b64c747efc0bf1811988556282790
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M lldb/test/API/functionalities/data-formatter/synthetic_subscript/main.c
Log Message:
-----------
[lldb] Include stdio.h in synthetic subscript test (#186847)
The [lldb-aarch64-windows](https://lab.llvm.org/buildbot/#/builders/141)
buildbot failed with:
```
lld-link: error: undefined symbol: printf
>>> referenced by main.o:(main)
```
I'm assuming that's because of the use of `__builtin_printf`. In other
tests, we use `printf` form `stdio.h` and these build fine, so I added
an include and used `printf`.
Commit: 00061bd479d6b462a351739b3f8c8736fd9f3252
https://github.com/llvm/llvm-project/commit/00061bd479d6b462a351739b3f8c8736fd9f3252
Author: Syadus Sefat <42645939+mssefat at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.wqm.mir
Log Message:
-----------
[AMDGPU][GlobalIsel] Add register bank legalization rules for amdgcn_wqm amdgcn_softwqm amdgcn_strict_wqm (#186214)
This patch adds register bank legalization rules for amdgcn_wqm
amdgcn_softwqm amdgcn_strict_wqm in the AMDGPU GlobalISel pipeline.
Commit: c0ccfd023ebe84447fdfd1b8618f4c56b2cf920b
https://github.com/llvm/llvm-project/commit/c0ccfd023ebe84447fdfd1b8618f4c56b2cf920b
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/test/Semantics/test_errors.py
Log Message:
-----------
[flang] Reorder messages wrt line number before diff(actual, expect) (#186812)
When messages are attached together, the source locations to which they
refer are not necessarily monotonically increasing. For example
```
error: foo.f90:10: There is a problem here # line 10
because: foo.f90:12: This thing is invalid # line 12 (attached)
error: foo.f90:11: There is another problem here # line 11
```
There is no way to represent that in the source file via ERROR
annotations, so before running unified_diff "canonicalize" the list of
messages into an order that corresponds to the line numbers.
---------
Co-authored-by: Michael Kruse <llvm-project at meinersbur.de>
Commit: 769ffa0133e2285946b160c5d56176086fc4c2f7
https://github.com/llvm/llvm-project/commit/769ffa0133e2285946b160c5d56176086fc4c2f7
Author: Yunbo Ni <ybni at cse.cuhk.edu.hk>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
M llvm/test/Transforms/ForcedFunctionAttrs/forced.ll
Log Message:
-----------
[ForceFunctionAttrs] Fix handling of conflicts for more attributes (#186304)
Fixes #185277
ForceFunctionAttrs currently only checks the `alwaysinline`/`noinline`
conflict when forcing function attributes. This is incomplete, because
LLVM verifier rules define additional incompatible function attribute
combinations.
Extend hasConflictingFnAttr() to reject more conflicting function
attributes, including combinations involving `optnone`, `minsize`,
`optsize`, and `optdebug`.
Also add required companion attributes when forcing function attributes:
`optnone` requires `noinline`, so forceattrs now adds `noinline`
automatically when needed.
Commit: c5e5d5b282ded4de4ebc7cfc5bc6e846ab479367
https://github.com/llvm/llvm-project/commit/c5e5d5b282ded4de4ebc7cfc5bc6e846ab479367
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M lldb/include/lldb/Host/Config.h.cmake
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/tools/driver/CMakeLists.txt
A lldb/tools/driver/lldb-mte-entitlements.plist
Log Message:
-----------
[lldb] When LLDB_ENABLE_MTE is ON always run the driver with MTE (#186322)
When LLDB_ENABLE_MTE is set to ON, we should always run the driver with
MTE by signing with the checked-allocations entitlement.
Commit: 3968db46a56324b2ffb60abb5d38ac8a97302f46
https://github.com/llvm/llvm-project/commit/3968db46a56324b2ffb60abb5d38ac8a97302f46
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Function.h
Log Message:
-----------
[clang][bytecode][NFC] Add Function::dump() taking no arguments (#186819)
Instead of relying on the default value. That one doesn't work properly
in lldb and I have to pass the `{}` explicitly every time.
Commit: d44fdaa58c2c2e51d5dd9592f743e8533decf740
https://github.com/llvm/llvm-project/commit/d44fdaa58c2c2e51d5dd9592f743e8533decf740
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
A clang/test/Analysis/clang-suppress/class-template-specializations.cpp
A clang/test/Analysis/clang-suppress/classes.cpp
A clang/test/Analysis/clang-suppress/diagnostic-identifiers.cpp
A clang/test/Analysis/clang-suppress/friends.cpp
A clang/test/Analysis/clang-suppress/function-templates.cpp
A clang/test/Analysis/clang-suppress/lambdas.cpp
A clang/test/Analysis/clang-suppress/macros.cpp
A clang/test/Analysis/clang-suppress/namespaces.cpp
A clang/test/Analysis/clang-suppress/statements.cpp
A clang/test/Analysis/clang-suppress/template-methods.cpp
R clang/test/Analysis/suppression-attr.cpp
Log Message:
-----------
[analyzer][NFC] Reorg and add clang::suppress tests (#186447)
This reorganizes the current clang suppression tests; and adds quite a
few more cases to the corpus.
This prepares the ground for #183727
While the test cases were generated by AI, I've personally checked every
single line and expectation.
Assisted-by: claude
Commit: b955eb72bdd8094baef49f4b5046eb8930d1ea3a
https://github.com/llvm/llvm-project/commit/b955eb72bdd8094baef49f4b5046eb8930d1ea3a
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M libc/Maintainers.rst
Log Message:
-----------
[libc] Add myself as maintainer for Math, Threading and Runtime Safety (#186595)
Commit: dc75adb30bfec339152cabc2d76e913a5d206d3f
https://github.com/llvm/llvm-project/commit/dc75adb30bfec339152cabc2d76e913a5d206d3f
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/include/lldb/Host/BUILD.gn
Log Message:
-----------
[gn] port c5e5d5b282ded4
Commit: b8cdc1a784fc4f99e298a5b1bf5a6b1316011b50
https://github.com/llvm/llvm-project/commit/b8cdc1a784fc4f99e298a5b1bf5a6b1316011b50
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
M flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
Log Message:
-----------
[flang][acc] Handle deduplicated use_device in ACCUseDeviceCanonicalizer (#186855)
The ACCUseDeviceCanonicalizer was attempting to remove `acc.use_device`
operation even when it was used in multiple constructs. This updates the
pass to remove it only when no longer used, which for the attached
example is after the handling of the second `acc.host_data` construct.
Commit: 1098b95dac5d07534da4d5e4a6396e0881150ef5
https://github.com/llvm/llvm-project/commit/1098b95dac5d07534da4d5e4a6396e0881150ef5
Author: cherrymui <lunaria21 at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
Log Message:
-----------
[sanitizer_common] Define SANITIZER_WEAK_IMPORT for Go race detector (#186525)
Currently, when building the Go race detector (when SANITIZER_GO
is set), SANITIZER_WEAK_IMPORT is no-op. It is perfectly fine to
define SANITIZER_WEAK_IMPORT for Go just like other cases. That
will tell the Go linker to treat _dyld_get_dyld_header as a weak
import.
Perhaps SANITIZER_WEAK_ATTRIBUTE can also be defined for Go. That
would be a separate patch.
Commit: cf5c808198eae74476448a0e57755732a3b0e8f4
https://github.com/llvm/llvm-project/commit/cf5c808198eae74476448a0e57755732a3b0e8f4
Author: Farzon Lotfi <farzonlotfi at microsoft.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
A llvm/test/CodeGen/SPIRV/pointers/load-vector-from-array-of-vectors.ll
Log Message:
-----------
[SPIRV][Matrix] Add support for Array Vector memory layout (#186215)
- fixes #179879
- Change is three fold:
1. Look for the Matrix Memory layout.
2. refactor out the common pieces of loadVectorFromArray into a helper
that can be shared with the matrix case.
3. The matrix case needs special indexing so we can do vector geps
instead of scalar geps that would require a 2d loop.
Commit: 34948b549effe42a1de63f06fc02dc284de97c8b
https://github.com/llvm/llvm-project/commit/34948b549effe42a1de63f06fc02dc284de97c8b
Author: Muyao Xiao <monetshaw at outlook.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
Log Message:
-----------
[OpenMP][NFC] Fix stale DeviceRTL header path in OpenMPIRBuilder (#185563)
The `\see` comment in `OpenMPIRBuilder.h` references
`openmp/libomptarget/deviceRTLs/common/include/target.h`. This file no
longer exists.
This patch updates the comment to point to the current correct header:
`openmp/device/include/Interface.h`.
Commit: fc5a2b92f8c595747eff8a378478c7a9f30e22f4
https://github.com/llvm/llvm-project/commit/fc5a2b92f8c595747eff8a378478c7a9f30e22f4
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Identify affected loops, provide reason (#185299)
Implement utility functions to calculate the number of affected loops in
a sequence or in a nest. Provide a reason for the returned value to be
used in an explanatory message.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: d117f98ff62c9fb2e110e6483dfc2a8105c31bd6
https://github.com/llvm/llvm-project/commit/d117f98ff62c9fb2e110e6483dfc2a8105c31bd6
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-bswap.ll
A llvm/test/Transforms/SLPVectorizer/X86/reduced-bswap-with-larger-reduced-type.ll
M llvm/test/Transforms/SLPVectorizer/non-power-of-2-bswap.ll
Log Message:
-----------
[SLP]Fix legality checks for bswap-based transformations
Fix the checks for the non-power-of-2 base bswaps by checking the
power-of-2 of the source type, not the target scalar type. Plus, add
cost estimation for zext, if the source type does not match the scalar type and fixes final bitcasting for the reduced values.
Fixes https://github.com/llvm/llvm-project/pull/184018#issuecomment-4053477562
Commit: c9d321b3d135246157a3fe729490f439dde8f97b
https://github.com/llvm/llvm-project/commit/c9d321b3d135246157a3fe729490f439dde8f97b
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Support/YAMLParser.cpp
M llvm/unittests/Support/YAMLIOTest.cpp
Log Message:
-----------
[llvm][Support] Fix an off-by-1 bug in YAML parser (#186731)
Closes #171620
Commit: 7e51783b0bda05ec6155a4a943aa19145f0ff75d
https://github.com/llvm/llvm-project/commit/7e51783b0bda05ec6155a4a943aa19145f0ff75d
Author: Alexander Kornienko <alexfh at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTestMacroExpansion.cpp
Log Message:
-----------
Revert "[Format] Configure ASSIGN_OR_RETURN macros for Google style" (#186445)
Reverts llvm/llvm-project#169037
The change breaks formatting of real code containing ASSIGN_OR_RETURN
macros nested into lambdas. See
https://github.com/llvm/llvm-project/pull/169037#issuecomment-4056423543
for the test case.
Commit: 9d1d7a5645783b283f3289832a5d31feefd7a468
https://github.com/llvm/llvm-project/commit/9d1d7a5645783b283f3289832a5d31feefd7a468
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate binary stars in braced init lists (#186732)
Fixes #175241
Commit: 52cd10949d704c40157faf261a68cce808c49d8a
https://github.com/llvm/llvm-project/commit/52cd10949d704c40157faf261a68cce808c49d8a
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Identify include guard #endif followed by comments (#186848)
Fixes #176321
Commit: 8fa7660ab80a84f023e8a682d3d9bb30af527ec3
https://github.com/llvm/llvm-project/commit/8fa7660ab80a84f023e8a682d3d9bb30af527ec3
Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
A llvm/test/CodeGen/SPIRV/single-element-vector-nested-aggregate.ll
Log Message:
-----------
[SPIR-V] Fix scalarization of 1-element vector (#185529)
Previous patch #180735 didn't handle 1-element vectors nested in
aggregates.
Commit: 66553127766e2b5ec211b7263eb7cb4a7fca332c
https://github.com/llvm/llvm-project/commit/66553127766e2b5ec211b7263eb7cb4a7fca332c
Author: Victor Campos <victor.campos at arm.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M .github/workflows/libc-fullbuild-tests.yml
Log Message:
-----------
[libc] Build fuzzing tests in pre-merge CI tests (#185018)
At the moment, no CI job tests whether the fuzzing tests build
correctly.
This patch adds the build of fuzzing tests to the pre-merge CI job.
Only two configurations have it enabled for now. The none-eabi
configurations seemingly do not support it because in their cmake
configs compiler-rt is not enabled, hence libFuzzer isn't built. I did
not dig too much to understand why that is, preferring to just leave it
disabled for these configurations. For the remaining ones that seem to
support it, I selected one x86 and one aarch64.
In addition, it removes one outdated comment about the build type used
and changes the action to run on all branches, not only on PRs that
target main.
If we limit it to run only on PRs to the main branch, it will not run on
stacked PRs. I believe it is also okay to run it on PRs to release
branches. Therefore it is just easier to remove the limit altogether.
Commit: ff4cccb678397f2ce37496aa80cccb85e148b3c5
https://github.com/llvm/llvm-project/commit/ff4cccb678397f2ce37496aa80cccb85e148b3c5
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/Format/BreakableToken.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix a bug in indenting lambda comments with only tabs (#186862)
Fixes #175151
Commit: c953411dee3ded72b5ded81e06bb568a11fa685e
https://github.com/llvm/llvm-project/commit/c953411dee3ded72b5ded81e06bb568a11fa685e
Author: Lei Huang <lei at ca.ibm.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
A llvm/lib/Target/PowerPC/PPCRegisterClasses.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoDMR.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoMMA.td
Log Message:
-----------
[PowerPC][NFC] Refactor Register class and operand definitons (#185647)
Created a comprehensive base class system in PPCRegisterClasses.td to
eliminate repetitive RegisterOperand definitions across PowerPC register
files and introduced PPCRegOperand multiclass in to automatically
generate AsmOperandClass and RegisterOperand definitions, eliminating
~50 lines of boilerplate.
Asissted by AI.
Commit: d30e68022929a87f4cf0c9f14ed625e0306fc84a
https://github.com/llvm/llvm-project/commit/d30e68022929a87f4cf0c9f14ed625e0306fc84a
Author: Meredith Julian <35236176+mjulian31 at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
Log Message:
-----------
[LLVM] [SeparateConstOffsetFromGEP] patch PR 183402 to handle negative C correctly (#186858)
Small typo in negative C threshold calculation would result in a
threshold that is too conservative due to overflow.
Commit: 81841b722b0d57937598adb269801652751a9e16
https://github.com/llvm/llvm-project/commit/81841b722b0d57937598adb269801652751a9e16
Author: Tom Honermann <tom.honermann at intel.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
Log Message:
-----------
[Clang][Docs] Discontinue documenting the GCC -I- and --include-barrier options. (#184941)
Clang has never implemented the GCC `-I-` and `--include-barrier`
options. An error is issued if they are used. GCC deprecated these
options in GCC 4. Advertising their availability in documentation and
help text is misleading.
Commit: 297d52ba7d1e640e22e4245a3eb45be0410b44ab
https://github.com/llvm/llvm-project/commit/297d52ba7d1e640e22e4245a3eb45be0410b44ab
Author: Ben Shi <2283975856 at qq.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
M llvm/test/CodeGen/AVR/calling-conv/c/tiny.ll
A llvm/test/CodeGen/AVR/pseudo/SPREAD.mir
M llvm/test/CodeGen/AVR/pseudo/SPWRITE.mir
M llvm/test/CodeGen/AVR/return.ll
Log Message:
-----------
[AVR] Improve expansion of pseudo instruction SPREAD (#186780)
It would be better to set the higher register to zero for devices
without `SPH`.
Commit: a12b612c0db0a049ca9050a43b1e03ca36c65695
https://github.com/llvm/llvm-project/commit/a12b612c0db0a049ca9050a43b1e03ca36c65695
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
M llvm/docs/DirectX/DXILResources.rst
M llvm/include/llvm/Analysis/DXILResource.h
M llvm/lib/Analysis/DXILResource.cpp
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/DirectX/Binding/binding-overlap-6.ll
M llvm/test/CodeGen/DirectX/Binding/binding-overlap-7.ll
M llvm/test/CodeGen/DirectX/ContainerData/PSVResources.ll
M llvm/test/CodeGen/DirectX/CreateHandle.ll
M llvm/test/CodeGen/DirectX/CreateHandleFromBinding.ll
M llvm/test/CodeGen/DirectX/Metadata/srv_metadata.ll
M llvm/test/CodeGen/DirectX/Metadata/uav_metadata.ll
A llvm/test/CodeGen/SPIRV/hlsl-resources/unbounded-arr.ll
M llvm/unittests/Target/DirectX/ResourceBindingAnalysisTests.cpp
Log Message:
-----------
[HLSL] Use 0 to represent unbounded resources (#186022)
SPIRV backend uses 0 to represent unbounded arrays. This patch makes
unbounded resources be represented with 0 when binding them, as well as
makes sure the backend uses OpTypeRuntimeArray to represent such cases.
Fix: https://github.com/llvm/llvm-project/issues/183367
Commit: ed76cbccbb40da23f443ee147d697917c5101e9a
https://github.com/llvm/llvm-project/commit/ed76cbccbb40da23f443ee147d697917c5101e9a
Author: Usama Hameed <u_hameed at apple.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
Log Message:
-----------
[AArch64] Allocate two emergency spill slots for MTE to fix register … (#186505)
…scavenger crash
When `-sanitize=memtag-stack` is enabled and the compiler optimizes
contiguous ST2Gi instructions into an MTE loop (via
`TagStoreEdit::emitLoop`), it spawns two new post-RA virtual registers
simultaneously:
1. `BaseReg`
2. `SizeReg`
Under extremely high register pressure (such as in Swift async
continuation thunks, where almost all registers are kept live), the
Register Scavenger must fall back to using emergency spill slots to
assign physical registers to `BaseReg` and `SizeReg`.
Prior to this patch, `determineCalleeSaves` assumed that a maximum of
one register would ever need to be scavenged at a time. It either
allocated a single emergency spill slot, or bypassed the allocation
entirely if it found an unused Callee-Saved Register (`ExtraCSSpill`) to
use as a scratch register.
When the MTE loop asks for two registers simultaneously, the scavenger
crashes with:
`LLVM ERROR: Error while trying to spill LR from class GPR64: Cannot
scavenge register without an emergency spill slot!`
This patch fixes the crash by explicitly searching for mergeable STG
instructions during `determineCalleeSaves`. If found, it allocates a
second emergency spill slot. This guarantees the scavenger has enough
slots to successfully resolve both post-RA virtual registers, regardless
of whether the first scratch space came from an `ExtraCSSpill` or the
baseline emergency spill slot.
Added `memtag-emergency-spill-slot.mir` to test both the `ExtraCSSpill`
bypass path and the baseline zero-free-register path.
Assisted-by: claude
rdar://172501087
Commit: ddaaf4fa7a749f3ffab21cfd9c2b25a82fdbd614
https://github.com/llvm/llvm-project/commit/ddaaf4fa7a749f3ffab21cfd9c2b25a82fdbd614
Author: Yunbo Ni <ybni at cse.cuhk.edu.hk>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/test/Transforms/Inline/ret_attr_align_and_noundef.ll
M llvm/test/Transforms/Inline/ret_attr_nofpclass.ll
Log Message:
-----------
[Inliner] Fix return attribute propagation across multiple return sites (#186076)
Fixes #185159
This patch fixes a bug in `AddReturnAttributes()` where propagated
return attributes could incorrectly leak across multiple return sites in
the callee being inlined.
`AddReturnAttributes()` walks the callee's return instructions and tries
to backward-propagate return attributes from the callsite to the
returned call when the callee directly returns a call result. However,
the propagated attribute builders were updated in-place while iterating
over return sites. As a result, attributes refined for one return site
could be reused when
processing a later return site. This is incorrect because each return
site should be handled independently, starting from the original
callsite attributes.
This patch ensures that propagated return attributes are reinitialized
for each return site, so propagation is computed independently per
returned call.
Commit: 0fa9a7797b8450ff96eee99edaacab5b4c67267b
https://github.com/llvm/llvm-project/commit/0fa9a7797b8450ff96eee99edaacab5b4c67267b
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/test/CodeGen/AArch64/neon/bf16-getset.c
Log Message:
-----------
[Clang][AArch64] Update comments in tests (nfc) (#186885)
Commit: 013f2542a2b7a88a53dbc50f329cd90f054f7784
https://github.com/llvm/llvm-project/commit/013f2542a2b7a88a53dbc50f329cd90f054f7784
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/neon-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub-epilogue-vec.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory-epilogue-vec.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
Log Message:
-----------
[LV] Simplify and unify resume value handling for epilogue vec. (#185969)
This patch tries to drastically simplify resume value handling for the
scalar loop when vectorizing the epilogue.
It uses a simpler, uniform approach for updating all resume values in
the scalar loop:
1. Create ResumeForEpilogue recipes for all scalar resume phis in the
main loop (the epilogue plan will have exactly the same scalar resume
phis, in exactly the same order)
2. Update ::execute for ResumeForEpilogue to set the underlying value
when executing. This is not super clean, but allows easy lookup of the
generated IR value when we update the resume phis in the epilogue. Once
we connect the 2 plans together explicitly, this can be removed.
3. Use the list of ResumeForEpilogue VPInstructions from the main loop
to update the resume/bypass values from the epilogue.
This simplifies the code quite a bit, makes it more robust (should fix
https://github.com/llvm/llvm-project/issues/179407) and also fixes a
mis-compile in the existing tests (see change in
llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub-epilogue-vec.ll,
where previously we would incorrectly resume using the start value when
the epilogue iteration check failed)
In some cases, we get simpler code, due to additional CSE, in some cases
the induction end value computations get moved from the epilogue
iteration check to the vector preheader. We could try to sink the
instructions as cleanup, but it is probably not worth the trouble.
Fixes https://github.com/llvm/llvm-project/issues/179407.
Commit: 9da068b7cfa269d736d5261b8c82b701a718e531
https://github.com/llvm/llvm-project/commit/9da068b7cfa269d736d5261b8c82b701a718e531
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M lldb/cmake/modules/LLDBConfig.cmake
Log Message:
-----------
[lldb] Default LLDB_ENABLE_MTE to OFF when Sanitizers are enabled. (#186884)
The MTE launcher complicates injecting the sanitizer runtime libraries.
Commit: 538fcbc7e0e7efa4370125818a36bad7a8ee237e
https://github.com/llvm/llvm-project/commit/538fcbc7e0e7efa4370125818a36bad7a8ee237e
Author: nextsilicon-itay-bookstein <55076759+nextsilicon-itay-bookstein at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/cmake/modules/AddLLVM.cmake
Log Message:
-----------
[clang][CMake] Fix ODR violation with LLVM_LINK_LLVM_DYLIB (#186689)
After 42b638c6b40d ("Propagate dependencies to OBJECT libraries in
add_llvm_library"), obj.clangSupport now inherits clangSupport's
LINK_LIBRARIES via target_link_libraries, which includes libLLVM.so when
LLVM_LINK_LLVM_DYLIB is enabled.
Previously the obj.clangSupport alias path was harmless because the
OBJECT library carried no link dependencies. Now, aliasing
clangSupport_tablegen to obj.clangSupport in DYLIB mode causes
clang-tblgen to transitively link libLLVM.so, while also having LLVM
symbols compiled in statically — triggering an ASan ODR violation on
globals like llvm::vfs::FileSystem::ID.
Fix by only propagating parts of the compile interface instead of the
full link interface - INTERFACE_INCLUDE_DIRECTORIES and
INTERFACE_SYSTEM_INCLUDE_DIRECTORIES. Also add a TODO to consider
replacing with target_link_libraries($<COMPILE_ONLY:tgt>) once minimum
CMake version is 3.27 or higher.
Commit: 51937fc9969c39bafc4991ceeb7c7113696aa7df
https://github.com/llvm/llvm-project/commit/51937fc9969c39bafc4991ceeb7c7113696aa7df
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/include/flang/Lower/CUDA.h
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
R flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
Log Message:
-----------
Revert "[flang][OpenMP] Use cuf.alloc for privatization of CUDA Fortr… (#186891)
…an device arrays (#185984)"
This reverts commit fb18d570b0466ca2a401aba11d6e58b206aebc1a.
This PR caused compilation failures with allocatable arrays, reverting
now for more investigation.
Commit: 9e4dddcc12a7ea84de5136e5d414c1ad8b51f70d
https://github.com/llvm/llvm-project/commit/9e4dddcc12a7ea84de5136e5d414c1ad8b51f70d
Author: Matthew Maurer <mmaurer at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
M llvm/test/Transforms/SimplifyCFG/extract-cost.ll
M llvm/test/Transforms/SimplifyCFG/switch-transformations-no-lut.ll
Log Message:
-----------
[SimplifyCFG] Allow phi folding for boolean logic over non-equality (#185124)
Phi folding is suppressed over binary operation inputs in order to avoid
interfering with switch formation.
After #183692, code (for example, Rust's ASCII character classification)
may get an `or` hoisted up into it, which suppresses
`foldTwoEntryPHINode`. This then produces branching code where
previously we generated straightline code.
To maintain switch formation while preventing any binops from breaking
phi folding, restrict the scenario in which Phi folding is suppressed to
binops of *equality* ops. This should mesh with switch statements, which
require an explicit list of values, while not breaking optimization over
> / < etc. which would never have been promoted to switches in the first
place.
Fixes: rust-lang/rust#153504
Commit: e36376439501de1ed3be00703124664df6cdd27a
https://github.com/llvm/llvm-project/commit/e36376439501de1ed3be00703124664df6cdd27a
Author: Krystian Stasiowski <sdkrystian at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaTemplate.cpp
M clang/test/SemaTemplate/deduction-crash.cpp
Log Message:
-----------
[Clang][Sema] Fix crash in CheckNonTypeTemplateParameterType with invalid type (#186200)
When a non-type template parameter has a type containing an undeduced
placeholder type that is invalid (e.g., a function returning a
function), `SubstAutoTypeSourceInfoDependent` can return null if the
type is invalid. `CheckNonTypeTemplateParameterType` was not handling
this case and would dereference the null pointer.
Fixes #177545
Commit: 6a785bf069194beea5ca0a7caac64dd27396c46e
https://github.com/llvm/llvm-project/commit/6a785bf069194beea5ca0a7caac64dd27396c46e
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
R llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
Log Message:
-----------
Revert "[AArch64] Allocate two emergency spill slots for MTE to fix register …" (#186900)
Reverts llvm/llvm-project#186505
Breaks buildbot
Commit: d2f89e20fb835c4326bf4ca932f6e06a650c1167
https://github.com/llvm/llvm-project/commit/d2f89e20fb835c4326bf4ca932f6e06a650c1167
Author: Abhijeet <abhijeetsharma2002 at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaOverload.cpp
M clang/test/CXX/drs/cwg8xx.cpp
A clang/test/SemaCXX/deleted-template-spec-diag.cpp
Log Message:
-----------
[clang] Fixed 'implicitly deleted' diagnostic for explicitly deleted candidate function (#186634)
When an explicit function template specialization is deleted, the
overload candidate `Fn` may be a non-canonical `FunctionDecl` where
`IsDeleted` is not set, even though the canonical decl has it set.
`isDeletedAsWritten()` reads `this` while `isDeleted()` reads
`getCanonicalDecl()`, causing the mismatch. Fix by using
`getCanonicalDecl()` consistently in the diagnostic.
Fixes #185693
Commit: 253a33ae3036d1e34a87cf905f836d980b401f4d
https://github.com/llvm/llvm-project/commit/253a33ae3036d1e34a87cf905f836d980b401f4d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
Log Message:
-----------
AMDGPU: Annotate grid_dims ABI load with range metadata (#185610)
Also substitute with a constant for the reqd_work_group_size case.
Commit: 59e01a1e2ca5cdc6cea81c797c4a1095c8d5420a
https://github.com/llvm/llvm-project/commit/59e01a1e2ca5cdc6cea81c797c4a1095c8d5420a
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/utils/TableGen/Common/CodeGenDAGPatterns.cpp
Log Message:
-----------
[TableGen] Add new line to end of TreePatternNode::dump. (#186865)
Commit: c7c7afd5fe8aac94ccc642a61c3e2cc6e8405986
https://github.com/llvm/llvm-project/commit/c7c7afd5fe8aac94ccc642a61c3e2cc6e8405986
Author: Julian Oppermann <julian.oppermann at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
M mlir/test/Dialect/Linalg/linalg-morph-multi-step.mlir
M mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-named-ops.mlir
M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir
M mlir/test/Dialect/Linalg/transform-op-specialize-elemwise-unary.mlir
Log Message:
-----------
[MLIR][Linalg] Add matchers to specialize more unary ops (#183259)
Add missing matchers to the `linalg.generic` specialization patterns to
handle the remaining named unary elementwise ops.
Commit: 53cae8382430ffa8c3718b92f53ac07c7213fe61
https://github.com/llvm/llvm-project/commit/53cae8382430ffa8c3718b92f53ac07c7213fe61
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
Log Message:
-----------
[bazel] Add libraries, binaries, and tests for ScalableStaticAnalysisFramework. (#186905)
Commit: 4c63b28bb971687073275e59a72ee7cf0149476e
https://github.com/llvm/llvm-project/commit/4c63b28bb971687073275e59a72ee7cf0149476e
Author: Chi-Chun, Chen <chichun.chen at hpe.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
Log Message:
-----------
[Clang][OpenMP] Move declare simd codegen into OMPIRBuilder (#186030)
Refactor declare simd codegen by moving logic that does not depend on
Clang declarations into OpenMPIRBuilder.
Commit: 7f77ca0dbda4abbf9af06537b2c475f20ccd6007
https://github.com/llvm/llvm-project/commit/7f77ca0dbda4abbf9af06537b2c475f20ccd6007
Author: Austin Kerbow <Austin.Kerbow at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/test/CodeGen/AMDGPU/wmma-coexecution-valu-hazards.mir
Log Message:
-----------
[AMDGPU] Include TRANS instructions in WMMA coexecution hazard checking (#186269)
Commit: c1c4a5a870eb668fec480771c4d002e17362ed18
https://github.com/llvm/llvm-project/commit/c1c4a5a870eb668fec480771c4d002e17362ed18
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
M clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
Log Message:
-----------
[clang][ssaf] Workaround gcc-7 NRVO bug (#186897)
Addresses:
https://github.com/llvm/llvm-project/pull/186156#issuecomment-4070258854
Commit: e2def106757534b07a2d3ff15ddd48e14b69a66d
https://github.com/llvm/llvm-project/commit/e2def106757534b07a2d3ff15ddd48e14b69a66d
Author: Ayush Kumar Gaur <ayushkgaur1 at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDecl.cpp
A clang/test/SemaTemplate/GH176152.cpp
Log Message:
-----------
Avoid assert in substqualifier (#182707)
What’s the problem:
Clang diagnoses the invalid static data member in a local class, but the
later out-of-line definition can still be instantiated and hit an
assertion.
What this PR does:
Mark the enclosing local class invalid when diagnosing the ill-formed
static
data member, so the invalid definition no longer survives to the
assertion path.
Fixes #176152
Commit: 1c4e03cf7825113e5cd9498300e2c65b1b5b20c7
https://github.com/llvm/llvm-project/commit/1c4e03cf7825113e5cd9498300e2c65b1b5b20c7
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
Log Message:
-----------
[bazel] Update lldb/BUILD.bazel for c5e5d5b (#186911)
Commit: 57568c288dbe629a5880584abe9868c4e31fc081
https://github.com/llvm/llvm-project/commit/57568c288dbe629a5880584abe9868c4e31fc081
Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/docs/Frontend/PerformanceTips.rst
M llvm/docs/LangRef.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/DerivedTypes.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/Value.def
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
M llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
A llvm/test/Assembler/byte-invalid.ll
A llvm/test/Assembler/byte.ll
M llvm/test/Assembler/invalid-inttype.ll
A llvm/test/Bindings/llvm-c/byte.ll
M llvm/test/Bindings/llvm-c/echo.ll
M llvm/test/Bitcode/compatibility.ll
A llvm/test/CodeGen/X86/byte-constants.ll
M llvm/test/Verifier/atomics.ll
M llvm/test/tools/llvm-ir2vec/entities.ll
M llvm/test/tools/llvm-ir2vec/triplets.ll
M llvm/tools/llvm-c-test/echo.cpp
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[Reland][IR] Add initial support for the byte type (#186888)
This patch relands https://github.com/llvm/llvm-project/pull/178666. The
original version caused CI failures due to the missing target triple in
`llvm/test/CodeGen/X86/byte-constants.ll`. CI should be green now.
Commit: e3d7bf290d9f0ac8d7ea30f12e36f7cfc0e9412f
https://github.com/llvm/llvm-project/commit/e3d7bf290d9f0ac8d7ea30f12e36f7cfc0e9412f
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M mlir/include/mlir-c/Dialect/LLVM.h
M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
M mlir/lib/Bindings/Python/DialectLLVM.cpp
M mlir/lib/CAPI/Dialect/LLVM.cpp
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/python/mlir/dialects/llvm.py
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
A mlir/test/Target/LLVMIR/llvmir-named-metadata.mlir
M mlir/test/python/dialects/llvm.py
Log Message:
-----------
[MLIR][LLVM] add metadata attrs and `llvm.named_metadata` op (#186703)
This PR adds some LLVM metadata attributes and an `llvm.named_metadata`
container op (similar to `llvm.module_flags`) for those attributes.
Summary:
- Add MLIR attributes modeling LLVM IR metadata: `#llvm.md_string`,
`#llvm.md_const`, `#llvm.md_func`, and `#llvm.md_node`;
- Add `llvm.named_metadata` container op for module-level named metadata
nodes;
- Add MLIR-to-LLVM-IR translation for the new attributes and op;
- Add C API functions (`mlirLLVMMDStringAttrGet`,
`mlirLLVMMDNodeAttrGet`, etc.);
- Add Python bindings (`llvm.MDStringAttr`, `llvm.MDConstantAttr`,
`llvm.MDFuncAttr`, `llvm.MDNodeAttr`, `llvm.FunctionType`).
Commit: ded656b467dfd607046a927eef9fbd6622f27ce9
https://github.com/llvm/llvm-project/commit/ded656b467dfd607046a927eef9fbd6622f27ce9
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/X86/divide-by-constant.ll
M llvm/test/CodeGen/X86/divmod128.ll
Log Message:
-----------
[TargetLowering][X86] Directly emit FSHR from expandDIVREMByConstant when Legal. (#186863)
Commit: 6527a3a23e6651ac29201b5b3047f3b3b0803f7f
https://github.com/llvm/llvm-project/commit/6527a3a23e6651ac29201b5b3047f3b3b0803f7f
Author: Adrian Prantl <aprantl at apple.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M lldb/test/Shell/Diagnostics/TestDump.test
Log Message:
-----------
[LLDB] Replace file+filecheck with test in test (NFC) (#186875)
The "file" utility may not be installed:
https://green.lab.llvm.org/job/llvm.org/view/LLDB/job/lldb-ubuntu-aarch64/job/main/109/consoleText
Commit: 1c04e7fada2cf1eccdc4177b446ee4c81ea5e4ee
https://github.com/llvm/llvm-project/commit/1c04e7fada2cf1eccdc4177b446ee4c81ea5e4ee
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/cmake/modules/CMakeTestCLCCompiler.cmake
Log Message:
-----------
[libclc] fix compiler check with --target=spirv64 and -disable-llvm-passes (#185376)
Fix "unknown target triple" errors when LLVM_TARGETS_TO_BUILD is empty.
Adding -disable-llvm-passes reduces this to a very basic sanity check
of Clang frontend. This allows the test to pass even if SPIR-V backend
is not enabled, as the frontend can still generate IR for the target.
Commit: 55b271ddc1fd9684b9b0a955e70cb4dafc2bc782
https://github.com/llvm/llvm-project/commit/55b271ddc1fd9684b9b0a955e70cb4dafc2bc782
Author: paperchalice <liujunchang97 at outlook.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/CMakeLists.txt
M llvm/cmake/config-ix.cmake
M llvm/include/llvm/Config/config.h.cmake
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/TextEncoding.cpp
Log Message:
-----------
[Support] Add option to use Windows vendored ICU (#186371)
Windows 10 provided [ICU C
API](https://learn.microsoft.com/en-us/windows/win32/intl/international-components-for-unicode--icu-)
since 1703, this PR adds support for it.
Commit: 140adc92d509eeba74dc9d67d8d7bfdf1c485fc7
https://github.com/llvm/llvm-project/commit/140adc92d509eeba74dc9d67d8d7bfdf1c485fc7
Author: Luo Yuanke <lyk_03 at hotmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86FastISel.cpp
A llvm/test/CodeGen/X86/i1-fast-isel.ll
Log Message:
-----------
[X86] Improve illegal return type handling in FastISel (#186723)
Previously, FastISel would fall back to DAG ISel for any illegal return
type. This change adds a more precise check to determine if the ABI
requires a type conversion that FastISel cannot handle.
For example, bfloat is returned as f16 in XMM0, but FastISel would
assign f32 register type and store it in FuncInfo.ValueMap, causing DAG
to incorrectly perform type conversion from f32 to bfloat later.
However, i1 is promoted to i8 and returned as i8 per the ABI, so
FastISel
can safely lower it without switching to DAGISel. This change enables
FastISel to handle such cases properly.
---------
Co-authored-by: Yuanke Luo <ykluo at birentech.com>
Commit: 13138b3cb90cda070e47d24f5f73f47dc2ad9c4a
https://github.com/llvm/llvm-project/commit/13138b3cb90cda070e47d24f5f73f47dc2ad9c4a
Author: Younan Zhang <zyn7109 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaConcept.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[Clang] Fix a concept subsumption bug when template depths are adjusted (#186735)
We cannot reuse the cached normalization results if any template depth
adjustments (in subsumption checking) are involved.
Fixes https://github.com/llvm/llvm-project/issues/186624
Commit: 0fba3c0a9e99e0db718ff9cd559fa3914c8a05b0
https://github.com/llvm/llvm-project/commit/0fba3c0a9e99e0db718ff9cd559fa3914c8a05b0
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Utils/Cloning.h
Log Message:
-----------
[NFC] Remove unused InlineFunctionInfo::InlinedCalls (#186920)
Looks to be a relic of the legacy pass manager.
Commit: 7ddf9c85fc1866fe101217a121bad32d8921abb6
https://github.com/llvm/llvm-project/commit/7ddf9c85fc1866fe101217a121bad32d8921abb6
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/test/lit.cfg.py
Log Message:
-----------
[llvm] [NFC] [test] Add ubsan feature for tests
Reviewers: boomanaiden154
Pull Request: https://github.com/llvm/llvm-project/pull/186918
Commit: 957283adf3a786725c095c01d6f58325ec23f8e8
https://github.com/llvm/llvm-project/commit/957283adf3a786725c095c01d6f58325ec23f8e8
Author: Florian Mayer <fmayer at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/test/CodeGen/MIR/Generic/inline-asm-extra-info.mir
Log Message:
-----------
[NFC] [MIR] mark inline-asm-extra-info as failing on UBSan
Reviewers: boomanaiden154
Reviewed By: boomanaiden154
Pull Request: https://github.com/llvm/llvm-project/pull/186919
Commit: 182723f1a3bae894259c7928604604287c7e6951
https://github.com/llvm/llvm-project/commit/182723f1a3bae894259c7928604604287c7e6951
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/decorators.py
Log Message:
-----------
[lldb] Add a decorator for arm64e (#186909)
Commit: 83965ad10c1e8af42fba460152f7c90c0e2aa6f0
https://github.com/llvm/llvm-project/commit/83965ad10c1e8af42fba460152f7c90c0e2aa6f0
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/include/clang/Sema/Template.h
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
Log Message:
-----------
[clang] use canonical arguments for checking function template constraints (#186889)
This is a partial revert of #161671, restoring the original behaviour
where the canonical template arguments are used for function template
constraint checking in diagnostics.
This reverts the fix from #183010, which attempted to fix #182344
but it causes regressions. These regressions now have test cases
included.
The attempt at #183010 is flawed because in the general case we can't
check satisfaction for constraints which have unsubstituted template
arguments, even if they don't affect the canonical type (ie they are
purely
syntactical), because these types can still turn out to be invalid after
substitution.
This is a problem when directly evaluating a concept specialization, but
it's not a problem with other template specializations because the
as-written types are preserved, and will be later substituted, and any
failures
here will cause the program to be ill-formed anyway.
The only downside of this revert is the loss of sugar in some
diagnostics.
This could be improved in the future by adding a new flag which would
allow ignoring this instantiation dependence in such cases where a
substitution failure will be handled later anyway.
This is not done in this patch because we want the safest thing
possible, to help backporting this patch to Clang 22.
This preserves the tests from #183010 and also adds the tests from
#185608.
Since this fixes a regression since Clang 21 and will be backported to
Clang 22, there are no release notes.
Commit: 47970a4428d6fb37523ec2dd9fb8e7bfcf0658b8
https://github.com/llvm/llvm-project/commit/47970a4428d6fb37523ec2dd9fb8e7bfcf0658b8
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M flang/test/Lower/PowerPC/ppc-vec-store-elem-order.f90
M flang/test/Lower/PowerPC/ppc-vec-store.f90
Log Message:
-----------
[flang][PPC] Update vector tests with nuw nsw (NFC) (#186879)
Commit: fe1f512502342e1e569f33aba8531427ab3aa4eb
https://github.com/llvm/llvm-project/commit/fe1f512502342e1e569f33aba8531427ab3aa4eb
Author: A. Jiang <de34 at live.cn>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A clang/test/C/C2y/n3517.c
A clang/test/C/C2y/n3652.c
A clang/test/C/C2y/n3715.c
M clang/www/c_status.html
Log Message:
-----------
[Clang][docs][test] Add N3517, N3652, and N3715 according to N3783 (#185566)
And test that these papers are not yet implemented.
Commit: 4abb927bacf37f18f6359a41639a6d1b3bffffb5
https://github.com/llvm/llvm-project/commit/4abb927bacf37f18f6359a41639a6d1b3bffffb5
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/cmake/modules/CMakeCLCInformation.cmake
M libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[libclc][CMake] Use clang/llvm-ar on Windows (#186726)
When LLVM_TARGETS_TO_BUILD contains host target, runtime build sets
CMAKE_C_COMPILER to clang-cl on Windows.
Changes to fix build on Windows:
- libclc struggles to pass specific flags to clang-cl MSVC-like interface.
- compile flag handling will be consistent across all host systems.
- libclc build is cross-compilation for offloading targets.
Commit: 38eebe843b41197ce5d94f445e8a219fd6aa2c64
https://github.com/llvm/llvm-project/commit/38eebe843b41197ce5d94f445e8a219fd6aa2c64
Author: jundaliuAMD <jundaliu at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sethalt.ll
Log Message:
-----------
[AMDGPU] Add s_sethalt to hasUnwantedEffectsWhenEXECEmpty (#186745)
We don't want to execute s_sethalt when all lanes want to skip it.
Co-authored-by: Junda Liu <Junda.Liu at amd.com>
Commit: 88f1ec9a70bfe7cc7dcb8c3a0459eeb348bea3ca
https://github.com/llvm/llvm-project/commit/88f1ec9a70bfe7cc7dcb8c3a0459eeb348bea3ca
Author: David Pagan <dave.pagan at amd.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/test/AST/dump.cpp
M clang/test/OpenMP/declare_target_ast_print.cpp
M clang/test/OpenMP/declare_target_messages.cpp
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[clang][OpenMP] Parse/Sema for OpenMP 6.0 declare_target 'local' clause (#186281)
Parse and perform semantic checks for declare_target 'local' clause.
When compiling for device offloading, generate a warning that 'local' is
not yet fully supported. On the host, 'local' is/will be a no-op, so no
warning is generated.
NOTE: The minimal CodeGen changes allow 'local' to flow through as
equivalent to the 'enter' clause after warning is generated.
Testing:
- Updated messages and ast tests for declare target/declare_target
- ninja check-all.
Commit: 827012111082166b57384d61d2589cf1fddfa42a
https://github.com/llvm/llvm-project/commit/827012111082166b57384d61d2589cf1fddfa42a
Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
R llvm/test/tools/llvm-ir2vec/bindings/ir2vec-bindings.py
R llvm/test/tools/llvm-ir2vec/bindings/ir2vec-exceptions.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-getBBEmbMap.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-getFuncEmb.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-getFuncEmbMap.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-getFuncNames.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-getInstEmbMap.py
A llvm/test/tools/llvm-ir2vec/bindings/ir2vec-initEmbedding.py
Log Message:
-----------
[llvm-ir2vec] Refactoring the ir2vec python bindings testing (#180664)
This is order to make it more thorough and cover the API and possible
exceptions better
Commit: a8edc53557993b451ece5be454ccef21576d8796
https://github.com/llvm/llvm-project/commit/a8edc53557993b451ece5be454ccef21576d8796
Author: Yang Bai <baiyang0132 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
Log Message:
-----------
[mlir][Interfaces][NFC] Improve time complexity of RegionBranchOpInterface canonicalization patterns (#186114)
Optimize RemoveDuplicateSuccessorInputUses in
`ControlFlowInterfaces.cpp`:
- Replace O(n² * k) pairwise comparison of successor inputs with O(n * k
* max(log k, log n)) signature-based grouping using `std::map`, where
_n_ is the number of successor inputs and _k_ is the number of
predecessors per input.
Assisted-by: Claude Code
---------
Co-authored-by: Yang Bai <yangb at nvidia.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
Commit: b005ff76f3673d3dc3c398acf6bdb5447b6307e1
https://github.com/llvm/llvm-project/commit/b005ff76f3673d3dc3c398acf6bdb5447b6307e1
Author: 134ARG <xen134 at outlook.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/test/Transforms/Attributor/nofpclass-frem.ll
A llvm/test/Transforms/InstCombine/frem-inf.ll
Log Message:
-----------
[ValueTracking] frem in computeKnownFPClass can not return +/-Inf (#186748)
`frem` only produces finite numbers or NaN, never +/-Inf. Before the
patch `computeKnownFPClass` failed to clear the `fcInf` mask for
`Instruction::FRem`, causing potential missed optimizations.
Fix #186746.
Commit: f572cc0e7edfbf943c02b4ee39da2781adadcdd6
https://github.com/llvm/llvm-project/commit/f572cc0e7edfbf943c02b4ee39da2781adadcdd6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rv32p.ll
Log Message:
-----------
[RISCV] Fold (WADDAU -C, -1, rs1, 0) -> (WSUBU rs1, C) where C > 0 (#186638)
Commit: 376f41439375da3aa1ac095086abe0d1a4185c4a
https://github.com/llvm/llvm-project/commit/376f41439375da3aa1ac095086abe0d1a4185c4a
Author: Peter Collingbourne <pcc at google.com>
Date: 2026-03-16 (Mon, 16 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
A llvm/test/CodeGen/AArch64/ccmp-look-through-copy.mir
Log Message:
-----------
AArch64: Look through copies in CCMP converter.
The usual IR pattern for llvm.ptrauth.auth involves creating an
inttoptr for the auth operation to convert the result into a pointer.
CodeGenPrepare will copy these inttoptr operations into the user basic
blocks as this generally results in more efficient code. However, this is
not the case for the CCMP converter as it will encounter a COPY created
by the inttoptr and inhibit the optimization. Fix it by looking through
copies in the CCMP converter pass.
Assisted-by: gemini (wrote test)
Reviewers: davemgreen, fmayer, atrosinenko
Reviewed By: fmayer
Pull Request: https://github.com/llvm/llvm-project/pull/186842
Commit: 69b83274578b680834cc1f87c2ccc84688815eba
https://github.com/llvm/llvm-project/commit/69b83274578b680834cc1f87c2ccc84688815eba
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/ControllerInterface.h
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/ControllerInterface.cpp
M orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/ControllerInterfaceTest.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add ControllerInterface symbol table. (#186947)
ControllerInterface holds the set of named symbols that the ORC runtime
exposes to the controller for bootstrapping the ExecutionSession.
Insertion is checked: duplicate symbols are rejected with an error.
Session is updated to own a ControllerInterface instance, pre-populated
with an orc_rt_SessionInstance entry pointing to the Session object.
Commit: 51b3b9b03907dc9d856f10b01befce9997cdf96c
https://github.com/llvm/llvm-project/commit/51b3b9b03907dc9d856f10b01befce9997cdf96c
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment-fold-tail.ll
M llvm/test/Transforms/LoopVectorize/VPlan/conditional-scalar-assignment-vplan.ll
Log Message:
-----------
[LV] Optimize x && (x && y) -> x && y (#185806)
This patch removes the extra logical-and in `x && (x && y)` and `x && (y && x)` to `x && y`.
This helps to simplify mask calculation in the FindLast reduction and
exposes more opportunities to replace to EVL.
PR link: https://github.com/llvm/llvm-project/pull/185806
Commit: 6439500cefaad78b7ef0be16293eddb5504630bf
https://github.com/llvm/llvm-project/commit/6439500cefaad78b7ef0be16293eddb5504630bf
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/loops.cpp
Log Message:
-----------
[clang][bytecode] Clean up CondScope after while loop (#186816)
Similar to what we already do for for loops.
Commit: b7843a2411020229e8732e6202aeadbbbc0bd071
https://github.com/llvm/llvm-project/commit/b7843a2411020229e8732e6202aeadbbbc0bd071
Author: Jim Lin <jim at andestech.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV][NFC] Remove duplicate setTargetDAGCombine registrations (#186928)
ISD::SRA and ISD::MUL are already registered unconditionally in the
constructor, so remove the redundant registrations from the
hasVInstructions() block. Fold the standalone SRA call into the existing
brace-initializer list.
---------
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 33cfc6ba610a1beb9a6e163d1779ae7a8f80aab6
https://github.com/llvm/llvm-project/commit/33cfc6ba610a1beb9a6e163d1779ae7a8f80aab6
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
Log Message:
-----------
[CI][libclc] Enable libclc in premerge CI with single target (#186104)
Enable libclc build and test in the Linux premerge CI when libclc or .ci
files are modified.
To minimize build time, only build the amdgcn-amd-amdhsa-llvm target.
Commit: f1b16eaeddbbcc8239ad454309779d42adcfe4f1
https://github.com/llvm/llvm-project/commit/f1b16eaeddbbcc8239ad454309779d42adcfe4f1
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/ControllerInterface.h
M orc-rt/unittests/ControllerInterfaceTest.cpp
Log Message:
-----------
[orc-rt] Hold `const void*` rather than `void*` in ControllerInterface. (#186954)
We only care about addresses in ControllerInterface, not the underlying
memory.
Commit: 234aacf8e895ed9dd8c5e09d980cb8f85dc77123
https://github.com/llvm/llvm-project/commit/234aacf8e895ed9dd8c5e09d980cb8f85dc77123
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaDecl.cpp
A clang/test/Modules/pr186603.cppm
Log Message:
-----------
[C++20] [Modules] Diagnose for duplicated definition in the same module (#186959)
Close https://github.com/llvm/llvm-project/issues/186603
Commit: 3d421d59ad247afeadf5d4f886c9dea14a5eb229
https://github.com/llvm/llvm-project/commit/3d421d59ad247afeadf5d4f886c9dea14a5eb229
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
Log Message:
-----------
[DA] Refactor the signature of the Exact SIV test (NFCI) (#186386)
Change the signature of `exactSIVtest` to directly pass addrecs instead
of passing their operands separately. I *think* this change is not
mandatory, but it will simplify the code, especially because we will be
checking the presence of nsw flags on the addrecs.
Commit: 3dc46e9fffe87d21ed081563301332e581a427df
https://github.com/llvm/llvm-project/commit/3dc46e9fffe87d21ed081563301332e581a427df
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/test/Shell/SymbolFile/NativePDB/vbases.test
Log Message:
-----------
[lldb] Use clang_cl_host to build `vbases.test` (#186857)
Commit: 91b928f919364b29e241821fc639b9ef56dab1a5
https://github.com/llvm/llvm-project/commit/91b928f919364b29e241821fc639b9ef56dab1a5
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
[VPlan] Create header phis once regions have been created (NFC).
Since 1b29ac1d1857ea42273fc7862ea019a74a55195d, regions are constructed
as part of the scalar transforms; moving header phi creation after
region creation slightly simplifies the code.
Commit: 63ebca6a50ab32c80eb87aa2a4ce93661b686343
https://github.com/llvm/llvm-project/commit/63ebca6a50ab32c80eb87aa2a4ce93661b686343
Author: Oliver Old <mail at oold.dev>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/utils/release/build_llvm_release.bat
Log Message:
-----------
Add zlib to Windows release build (#186630)
This PR adds zlib to the Windows release build script to enable zlib
support in LLVM.
Part 1 of https://github.com/llvm/llvm-project/issues/184177.
Commit: b2442a20a9462ef4a4244c2992abf6a102e90472
https://github.com/llvm/llvm-project/commit/b2442a20a9462ef4a4244c2992abf6a102e90472
Author: ambergorzynski <120007557+ambergorzynski at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/test/CodeGen/SPIRV/instructions/icmp.ll
Log Message:
-----------
[NFC][SPIRV] New test for untested SPIRVInstructionSelector case (#186069)
[This
line](https://github.com/ambergorzynski/llvm-project/blob/main/llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp#L2454)
is untested by the existing test suite (checked using coverage and
inserting an `abort` at that line).
We propose a new test for the untested logical `eq` case, similarly to
the `neq` case added
[here](https://github.com/llvm/llvm-project/commit/e45c8b6555c866cd0412b42fce0439e927ca3ba2).
Commit: b091331f06059ab4a964fec0293b6e1a3ca62cc4
https://github.com/llvm/llvm-project/commit/b091331f06059ab4a964fec0293b6e1a3ca62cc4
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Fix stale file comment. NFC.
Commit: 7c2aef4b58fc1e29d185088aab9fdfc5e51cc947
https://github.com/llvm/llvm-project/commit/7c2aef4b58fc1e29d185088aab9fdfc5e51cc947
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
A lldb/test/API/symstore/Makefile
A lldb/test/API/symstore/TestSymStoreLocal.py
A lldb/test/API/symstore/main.c
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
Log Message:
-----------
Reland "[lldb] Initial plugin and test for SymbolLocatorSymStore" (#185658)
Minimal infrastructure for a the SymbolLocator plugin that fetches debug
info from Microsoft SymStore repositories. This can work cross-platform
and for various debug info formats in principle, but the current plan is
focussed on PE/COFF on Windows with debug info in PDB files. Once we
have a stable first version, we'd like to add features like download,
environment variables, caching and progress feedback for users.
SymbolVendorPECOFF was tailored towards DWARF debug info so far. I added
code to load the PDB path from the executable (it only checked
gnu_debuglink so far) and not bail out if DWARF sections are missing, so
that in the PDB case we still call AddSymbolFileRepresentation() in the
very end of CreateInstance().
The API test in this patch mocks the directory layout from SymStore, so
it doesn't depend on SymStore.exe from the Windows SDK. It runs on all
platforms that link debug info in a PDB file, which is still just
Windows, but it could be cross-platform in principle.
-----
Relands with minor fixes: API tests create mocked SymStore in the test's
build directory. One log instruction was moved. One more object
access goes through module in SymbolFile.
Commit: 096371b7e334de12d57af289ef47bffb372add5d
https://github.com/llvm/llvm-project/commit/096371b7e334de12d57af289ef47bffb372add5d
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_ep_decl.inc
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep.inc
M libclc/clc/lib/generic/math/clc_log_base.h
Log Message:
-----------
libclc: Use struct for ep pair (#186973)
This will enable use with vector types
Commit: c64d9af7b5f54b9df3364edcb832f4a669933029
https://github.com/llvm/llvm-project/commit/c64d9af7b5f54b9df3364edcb832f4a669933029
Author: Matthew Maurer <mmaurer at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-link.rst
M llvm/tools/llvm-link/llvm-link.cpp
Log Message:
-----------
[llvm-link] Add more detail to `--internalize` description (#170397)
While the functionality of this flag is obvious in the implementation,
tool users may not know what it does with the short description
provided. Notably, it is not obvious from the short description that:
* Functions provided will be converted to internal linkage (and thus
discarded if unused) even if unreferenced.
* Functions in the first file will not be internalized, even if
referenced by a later one.
The Rust for Linux project has [found use for this
flag](https://lore.kernel.org/all/20251202-inline-helpers-v1-0-879dae33a66a@google.com/)
to support inlining `static inline` functions in C into code compiled by
Rust when `rustc` and `clang` share a LLVM.
Commit: 9e43b35befa41c1795b81cb57443fee9dae5be90
https://github.com/llvm/llvm-project/commit/9e43b35befa41c1795b81cb57443fee9dae5be90
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Options/Options.td
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
M clang/test/Analysis/Scalable/help.cpp
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Log Message:
-----------
[clang][ssaf] Add --ssaf-list-{extractor,format} flags (#185428)
These flags only work with the `clang` driver.
The `cc1` driver would ignore these flags.
Probably it could be implemented differently, but it's already better
than having nothing.
Commit: b5e825ec3839aa845734a356585f9fb40fc25476
https://github.com/llvm/llvm-project/commit/b5e825ec3839aa845734a356585f9fb40fc25476
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-delta-signed-min.ll
Log Message:
-----------
[DA] Add test for the Weak Crossing SIV test misses dependency (NFC) (#186355)
Add a test case where the value of `Delta` in the Weak Crossing SIV test
becomes the signed minimum, causing the test to miss the dependency.
Commit: 19460ff859766e9eb08e2dae6ab70ac0c648b340
https://github.com/llvm/llvm-project/commit/19460ff859766e9eb08e2dae6ab70ac0c648b340
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
Log Message:
-----------
libclc: Use fshr builtin in sincos helpers (#186427)
Commit: 1588f083694b9547e974f551b4e3110c35b1dc4d
https://github.com/llvm/llvm-project/commit/1588f083694b9547e974f551b4e3110c35b1dc4d
Author: Jan André Reuter <j.reuter at fz-juelich.de>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M openmp/runtime/src/include/omp-tools.h.var
Log Message:
-----------
[OpenMP][OMPT] Add missing `error` entry to device tracing record union (#185683)
While `omp-tools.h` already includes the `ompt_record_error_t` struct,
the corresponding union entry was missing from `ompt_record_ompt_t`.
This commit adds the missing entry.
Note that this does not enable any functionality for device tracing
records.
This only aligns the struct with OpenMP v5.1 and newer. OpenMP v5.0 did
not contain the `error` directive.
CC: @jprotze
Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>
Commit: 7887ac6e7f2ebc3454995ad2a55e9fca2358fe5d
https://github.com/llvm/llvm-project/commit/7887ac6e7f2ebc3454995ad2a55e9fca2358fe5d
Author: Petter Berntsson <petter.berntsson at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/docs/contributing.rst
M libc/docs/dev/clang_tidy_checks.rst
M libc/docs/dev/code_style.rst
Log Message:
-----------
[libc][docs] Update clang-tidy checks page (#185923)
Document layered .clang-tidy config, update llvmlibc-* check names, and
drop stale TODO
Commit: 56d7920c093fcafc1d11f1bb838f400000541d69
https://github.com/llvm/llvm-project/commit/56d7920c093fcafc1d11f1bb838f400000541d69
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Factor collectGroupedReplicateMemOps (NFC) (#186820)
Factor out a collectGroupedReplicateMemOps from
collectComplementaryPredicatedMemOps, so it can be re-used in other
places.
Commit: fae024aca954c2c826f3acf6783a130a35ab02e0
https://github.com/llvm/llvm-project/commit/fae024aca954c2c826f3acf6783a130a35ab02e0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Move edge case handling of trig functions (#186429)
The explicit handling of nan is unnecessary. Clamp infinities
to nan at the input. This allows optimizations of the following
implementation code to take advantage of the knowledge that it
does not need to handle infinities.
Commit: 6dcd70d1037741b29d2c9b4859589fdc1cbc2309
https://github.com/llvm/llvm-project/commit/6dcd70d1037741b29d2c9b4859589fdc1cbc2309
Author: idubinov <igor.dubinov at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp
M llvm/lib/Target/AMDGPU/SILowerI1Copies.h
Log Message:
-----------
[AMDGPU] Use AMDGPULaneMaskUtils in SILowerI1Copies (#186170)
Use lane mask utils in lower i1 copies
No Functionality Change
Commit: 77ba0d9e244a97c757c9f9d4a30f5a83e4081191
https://github.com/llvm/llvm-project/commit/77ba0d9e244a97c757c9f9d4a30f5a83e4081191
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_ep_decl.inc
A libclc/clc/include/clc/math/clc_exp2_fast.h
A libclc/clc/include/clc/math/clc_log2_fast.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_rootn.h
A libclc/clc/include/clc/shared/binary_def_scalarize_loop.inc
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_exp2_fast.cl
A libclc/clc/lib/amdgpu/math/clc_log2_fast.cl
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep.inc
A libclc/clc/lib/generic/math/clc_exp2_fast.cl
A libclc/clc/lib/generic/math/clc_log2_fast.cl
M libclc/clc/lib/generic/math/clc_pow.cl
R libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pow_base.inc
M libclc/clc/lib/generic/math/clc_pown.cl
R libclc/clc/lib/generic/math/clc_pown.inc
M libclc/clc/lib/generic/math/clc_powr.cl
R libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_rootn.cl
R libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/opencl/lib/generic/math/pow.cl
M libclc/opencl/lib/generic/math/pown.cl
M libclc/opencl/lib/generic/math/powr.cl
M libclc/opencl/lib/generic/math/rootn.cl
Log Message:
-----------
libclc: Update pow functions (#186890)
The 4 flavors of pow were originally ported from rocm
device libs between c45ec604f593fcb03d770f4398142d2446017f68,
cc5c65b2c25e0a82fbad95f0ce3bb5262e29eeee, and
fe8e00bc3c65115b2e3d2a43cf3d0d756a934a52. Update to a newer
version. Additionally expose fast variants for use by the
libcall optimizer (e.g, __pow_fast) for float types.
Commit: a0d6e97142bd56751b3ff54e8eaae1f895aa08b0
https://github.com/llvm/llvm-project/commit/a0d6e97142bd56751b3ff54e8eaae1f895aa08b0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
Log Message:
-----------
libclc: Use frexp and ldexp in trig reduction instead of bit hacking (#186982)
Commit: 107b113b67d2cd4c6d1919e138b32ad5ca2bd8bd
https://github.com/llvm/llvm-project/commit/107b113b67d2cd4c6d1919e138b32ad5ca2bd8bd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
Log Message:
-----------
libclc: Use small trig reduction for nan (#186983)
Nan should work on either path, but the small reduction
path is smaller. There's also possible codegen benefits to
knowing the large reduction will not need to handle nans.
Commit: 527496bb10f5a5e9dd9f1cc287975bd2358a3559
https://github.com/llvm/llvm-project/commit/527496bb10f5a5e9dd9f1cc287975bd2358a3559
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
Log Message:
-----------
libclc: Improve large float trig reduction (#186984)
Commit: 6f966fb5dade1f1d73f04593199a6fd6fbe8d48e
https://github.com/llvm/llvm-project/commit/6f966fb5dade1f1d73f04593199a6fd6fbe8d48e
Author: David Sherwood <david.sherwood at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[LV] Add select instruction to VPReplicateRecipe::computeCost (#186825)
I've added the Instruction::Select opcode to the existing list of
opcodes that call getCostForRecipeWithOpcode. There are currently 5
tests that ask for the cost of the select:
Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
Transforms/LoopVectorize/narrow-to-single-scalar.ll
Transforms/LoopVectorize/replicate_fneg.ll
Transforms/LoopVectorize/single-scalar-cast-minbw.ll
The fact they all pass with this change is hopefully proof enough that
the costs are correct.
Commit: fdcb1f4ab19fce575a2ecd165ea476c09152b93e
https://github.com/llvm/llvm-project/commit/fdcb1f4ab19fce575a2ecd165ea476c09152b93e
Author: Tomohiro Kashiwada <kikairoya at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
M clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.ignore-dllattr.cpp
Log Message:
-----------
[Clang] Make members with exclude_from_explicit_instantiation never be exported or imported (#185140)
This patch extends the `exclude_from_explicit_instantiation` attribute
to work in non-template contexts, despite of its name.
The attribute now has a simple semantics: "Excluded members will never
be exported or imported."
Commit: 9b5084f894cb941d76b4638c1305bf3f869c78d4
https://github.com/llvm/llvm-project/commit/9b5084f894cb941d76b4638c1305bf3f869c78d4
Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/AST/ASTContext.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/CodeGenCXX/microsoft-vector-deleting-dtors-new-array.cpp
M clang/test/SemaCXX/gh134265.cpp
Log Message:
-----------
[clang][win] Define vector deleting dtor body for declared-only dtor if needed (#185653)
Currently vector deleting destructor body emission is triggered if new[]
is called for the type and if the destructor or the whole class is
marked with attribute dllexport. The problem is that it is not emitted
if new[] is called, destructor is not exported and it is only declared
in the TU and defined in another. That makes vector deleting destructor
body missing which leads to runtime failures in delete[].
This change forces vector deleting destructor body emission if new[] is
called even if the destructor is only declared but not defined. Doing
that replicates MSVC behavior and fixes runtime issues. Since vector
deleting destructors have weak linkage, it should be safe to do so.
Fixes https://github.com/llvm/llvm-project/issues/183255
AI usage: Claude was used to create LIT test cases which then were
reviewed and reworked by me.
Commit: df03e1a3724adfb08bba1ff23b93f1f78a337ee6
https://github.com/llvm/llvm-project/commit/df03e1a3724adfb08bba1ff23b93f1f78a337ee6
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/InlineAsm.h
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/test/CodeGen/MIR/Generic/inline-asm-extra-info.mir
Log Message:
-----------
[MIR] Fix printing INLINEASM dialects. (#186797)
Commit: b14eea0b23132d111250c8a6ea168c037dd71cef
https://github.com/llvm/llvm-project/commit/b14eea0b23132d111250c8a6ea168c037dd71cef
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libclc/CMakeLists.txt
M libclc/test/CMakeLists.txt
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[libclc] Fix check-libclc dependency on llvm-dis (#186978)
Add llvm-dis to libclc runtime dependencies.
Commit: 740f1b56c925fefc9f34a28d6e71872c638611e4
https://github.com/llvm/llvm-project/commit/740f1b56c925fefc9f34a28d6e71872c638611e4
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-python-script-name-warnings.test
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][PlatformDarwin] Reword warning when locating scripting resources from dSYM (#185666)
This patch makes the warning message more concise (in my opinion). We
would duplicate the file path multiple times in the message. I'm
planning on factoring this logic into a standalone function, and having
it rely on fewer parameters helps with that.
Before:
```
warning: the symbol file '/path/to/.dSYM/Contents/Resources/DWARF/import' contains a debug script.
However, its name '/path/to/.dSYM/Contents/Resources/DWARF/../Python/import.py' conflicts with a keyword
and as such cannot be loaded. LLDB will load '/path/to/.dSYM/Contents/Resources/DWARF/../Python/_import.py' instead.
Consider removing the file with the malformed name to eliminate this warning.
```
After:
```
warning: debug script '/path/to/.dSYM/Contents/Resources/DWARF/../Python/import.py' cannot be loaded
because 'import.py' conflicts with the keyword 'import'. Ignoring 'import.py' and loading '_import.py' instead.
```
Before:
```
warning: the symbol file '/path/to/.dSYM/Contents/Resources/DWARF/import' contains a debug script.
However, its name conflicts with a keyword and as such cannot be loaded.
If you intend to have this script loaded, please rename '/path/to/.dSYM/Contents/Resources/DWARF/../Python/import.py'
to '/path/to/.dSYM/Contents/Resources/DWARF/../Python/_import.py' and retry.
```
After:
```
warning: debug script '/path/to/.dSYM/Contents/Resources/DWARF/../Python/import.py' cannot be loaded
because 'import.py' conflicts with the keyword 'import'. If you intend to have this script loaded, please rename
it to '_import.py' and retry.
```
Commit: f15852ce21efd5b33a004b3e608e007cef51d48a
https://github.com/llvm/llvm-project/commit/f15852ce21efd5b33a004b3e608e007cef51d48a
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
Log Message:
-----------
[AArch64] Remove promotion cost for fixed-length bfloat arith with +sve-b16b16 (#186378)
These operations can be trivially promoted to SVE (with the addition of
a ptrue).
Commit: 35118457abeb1ff6109759b26665e5ac90457e6d
https://github.com/llvm/llvm-project/commit/35118457abeb1ff6109759b26665e5ac90457e6d
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_signbit.f90
M flang/test/Lower/Intrinsics/index.f90
M flang/test/Lower/Intrinsics/iparity.f90
M flang/test/Lower/Intrinsics/is_contiguous.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 33) (#186943)
Tests converted from test/Lower/Intrinsics: ieee_operator_eq.f90,
ieee_signbit.f90, index.f90, iparity.f90, is_contiguous.f90
Commit: e904d559c5ae071a5d04cdf003021cb3df2bb1a4
https://github.com/llvm/llvm-project/commit/e904d559c5ae071a5d04cdf003021cb3df2bb1a4
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/BuiltinDialectBytecode.td
M mlir/lib/IR/BuiltinDialectBytecode.cpp
R mlir/test/Bytecode/invalid/invalid-dense-elem-type-interface.mlir
A mlir/test/Bytecode/invalid/invalid-type-remapping.mlir
Log Message:
-----------
[mlir][bytecode] Fix crashes when reading bytecode with unsupported types (#186354)
When using test-kind=2 in the bytecode roundtrip test, integer types
(i32) are replaced by a custom type (TestI32Type) via a type callback.
This exposed two crash scenarios:
1. Reading IntegerAttr with an unsupported type: `getIntegerBitWidth`
returns 0 for unsupported types and emits an error, but
`readAPIntWithKnownWidth` would proceed to call
`reader.readAPIntWithKnownWidth(0)`, creating a zero-width APInt with a
potentially non-zero value. Fix: early-return failure when `bitWidth ==
0`.
2. Reading VectorType with an unsupported element type:
`VectorType::get` asserts that the element type implements
VectorElementTypeInterface. When the element type is replaced by a
custom type that doesn't implement this interface, the program crashes.
Fix: use `VectorType::getChecked` with a diagnostic emitter lambda
instead of `get<VectorType>` in the bytecode builder.
Fixes #128312
Commit: 612d80348f79502ad0f3ee2b5a4c8d47477c3f23
https://github.com/llvm/llvm-project/commit/612d80348f79502ad0f3ee2b5a4c8d47477c3f23
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
M orc-rt/include/orc-rt/ControllerInterface.h
M orc-rt/include/orc-rt/SPSWrapperFunction.h
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
A orc-rt/include/orc-rt/sps-ci/AllSPSCI.h
A orc-rt/include/orc-rt/sps-ci/SimpleNativeMemoryMapSPSCI.h
M orc-rt/lib/executor/CMakeLists.txt
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
A orc-rt/lib/executor/sps-ci/AllSPSCI.cpp
A orc-rt/lib/executor/sps-ci/SimpleNativeMemoryMapSPSCI.cpp
M orc-rt/unittests/CMakeLists.txt
M orc-rt/unittests/CommonTestUtils.h
A orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Move SPS controller interface funcs into their own headers. (#186991)
This provides clean separation between the ORC runtime code that
implements runtime functionality and the wrapper functions that permit
this code to be called from the controller via the
ExecutorProcessControl API.
Separating the controller interface from the implementation functions
should allow clients to introduce alternative serialization schemes if
they want (e.g. JSON).
In particular, this commit adds a new orc-rt/include/orc-rt/sps-ci
directory and moves SimpleNativeMemoryMap SPS controller interface into
a new header in that directory. This commit also splits the
implementation and testing of the SPS controller interface for
SimpleNativeMemoryMap into separate files.
Commit: c69187622fdf5f8516b75aa5321e510ae45c8e53
https://github.com/llvm/llvm-project/commit/c69187622fdf5f8516b75aa5321e510ae45c8e53
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M orc-rt/lib/executor/sps-ci/SimpleNativeMemoryMapSPSCI.cpp
M orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
Log Message:
-----------
[orc-rt] Update SPS wrapper names to reflect new namespace. NFCI. (#186994)
Commit: 429e9717e23239cb6f178068138b4d22c870cd78
https://github.com/llvm/llvm-project/commit/429e9717e23239cb6f178068138b4d22c870cd78
Author: Matthias Springer <me at m-sp.org>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Arith/Utils/Utils.h
M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
M mlir/lib/Dialect/Arith/Utils/CMakeLists.txt
M mlir/lib/Dialect/Arith/Utils/Utils.cpp
M mlir/lib/Dialect/Math/Transforms/ExtendToSupportedTypes.cpp
Log Message:
-----------
[mlir][arith][NFC] Use type parser instead of hard-coding type keywords (#186753)
Parse type literals instead of hard-coding them in a switch-case
statement.
Assisted by: claude-opus-4.6
Commit: 962b304f613033b5fd0497e2c430fdfb4b379b11
https://github.com/llvm/llvm-project/commit/962b304f613033b5fd0497e2c430fdfb4b379b11
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/IR/Constants.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
Log Message:
-----------
[LLVM] Make -use-constant-fp-for-scalable-splat the default. (#186422)
Includes a trivial fix to ReassociatePass::OptimizeAdd to force the type of
new ConstantFP nodes.
Commit: f1a7c7e772f982a646f68b04b1f8b1a13f6b26ba
https://github.com/llvm/llvm-project/commit/f1a7c7e772f982a646f68b04b1f8b1a13f6b26ba
Author: Ivan Kosarev <ivan.kosarev at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
M llvm/test/CodeGen/AMDGPU/subreg-undef-def-with-other-subreg-defs.mir
M llvm/test/CodeGen/MIR/Generic/inline-asm-extra-info.mir
A llvm/test/CodeGen/MIR/Generic/inline-asm-unknown-kind.mir
Log Message:
-----------
[MIR] Support symbolic INLINEASM extra-info flags (#186818)
Commit: 67e47fb5317cabd82317379baf8e31d61984d43d
https://github.com/llvm/llvm-project/commit/67e47fb5317cabd82317379baf8e31d61984d43d
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
M mlir/test/Dialect/GPU/invalid.mlir
Log Message:
-----------
[mlir][gpu] Add SymbolUserOpInterface to launch_func op (#173277)
The gpu.launch_func is an operation that performs symbol references.
Currently, its symbol validation logic is implemented within
GPUDialect::verifyOperationAttribute. To improve the clarity and
structure of the validation logic, this PR makes LaunchFuncOp implement
the SymbolUserOpInterface. In addition, implementing this interface
allows the operation to benefit from various symbol-usage analysis
passes.
Commit: b861a289d799b7a2c72fffee7144f84b72c978cf
https://github.com/llvm/llvm-project/commit/b861a289d799b7a2c72fffee7144f84b72c978cf
Author: Folkert de Vries <folkert at folkertdev.nl>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/test/CodeGen/WebAssembly/simd-bitmask.ll
Log Message:
-----------
[WebAssembly] combine `bitmask` with `setcc <X>, 0, setlt` (#179065)
The rust `simd_bitmask` intrinsic is UB when the lanes of its input are
not either `0` or `!0`, presumably so that the implementation can be
more efficient because it could look at any bit. To get the "mask of
MSB" behavior of webassembly's `bitmask`, we would like to simply first
compare with a zero vector.
```llvm
define i32 @example(<2 x i64> noundef %v) {
entry:
%1 = icmp slt <16 x i8> %v, zeroinitializer
%2 = bitcast <16 x i1> %1 to i16
%3 = zext i16 %2 to i32
ret i32 %3
}
```
On x86_64, this additional comparison optimizes away, but for wasm it
does not.
https://godbolt.org/z/T5sPejocs
This PR adds a new combine, so that instead of emitting
```asm
example:
local.get 0
v128.const 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
i8x16.lt_s
i8x16.bitmask
end_function
```
we just emit
```
example:
local.get 0
i8x16.bitmask
end_function
```
Commit: 055322c38af1ad8013f00bfb5f545587ee88c32f
https://github.com/llvm/llvm-project/commit/055322c38af1ad8013f00bfb5f545587ee88c32f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/IR/Diagnostics.cpp
A mlir/test/mlir-opt/expected-unknown-loc-unmatched.mlir
Log Message:
-----------
[mlir] Fix crash in diagnostic verifier for unmatched @unknown expectations (#186148)
When an expected-* directive uses the @unknown location specifier, the
associated ExpectedDiag record has an invalid (null) SMLoc as its
fileLoc. If the expected diagnostic is never produced, emitError() is
called to report the unmatched expectation, but it unconditionally
constructs an SMRange from fileLoc, triggering a null-pointer
dereference (UBSan) and an assertion failure in SMRange's constructor
which requires both endpoints to have equal validity.
Fix by guarding the SMRange construction with a fileLoc.isValid() check.
When fileLoc is invalid, call PrintMessage without a source range.
Fixes #163343
Assisted-by: Claude Code
Commit: a26077ee5f4bda0e89f953438afa393eaa5aac3d
https://github.com/llvm/llvm-project/commit/a26077ee5f4bda0e89f953438afa393eaa5aac3d
Author: Kirill Vedernikov <kvedernikov at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/test/CodeGen/NVPTX/tcgen05-mma-i8.ll
M llvm/test/CodeGen/NVPTX/tcgen05-mma-scale-d.ll
M llvm/test/CodeGen/NVPTX/tcgen05-mma.ll
Log Message:
-----------
[NFC][NVPTX] Fix tcgen05.mma PTX instruction encoding (#186602)
.ashift should be before .collector::a::* according to PTX ISA.
ptxas accepts both orderings, but the spec-correct order is used now.
Commit: 04cc7523ed6a84ddff4f1b08e53e408a3a259ea8
https://github.com/llvm/llvm-project/commit/04cc7523ed6a84ddff4f1b08e53e408a3a259ea8
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp
A mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-call-copy-before-write.mlir
Log Message:
-----------
[mlir][bufferization] Fix crash with copy-before-write + bufferize-function-boundaries (#186446)
When `copy-before-write=1` is combined with
`bufferize-function-boundaries=1`, `bufferizeOp` creates a plain
`AnalysisState` (not `OneShotAnalysisState`) and passes it to
`insertTensorCopies`. Walking `CallOp`s during conflict resolution
called `getCalledFunction(callOp, state)`, which unconditionally cast
the `AnalysisState` to `OneShotAnalysisState` via `static_cast`, causing
UB and a stack overflow crash.
Fix by guarding the cast with `isa<OneShotAnalysisState>()` so that when
the state is a plain `AnalysisState`, the function falls through to
building a fresh `SymbolTableCollection` — the same safe fallback
already present.
Fixes https://github.com/llvm/llvm-project/issues/163052
Assisted-by: Claude Code
Commit: a78d1d9a8b0c361353a1fec64450353e66c59a60
https://github.com/llvm/llvm-project/commit/a78d1d9a8b0c361353a1fec64450353e66c59a60
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[mlir][vector] Add missing tests (nfc) (#186990)
Currently, `ConvertVectorToLLVM` rejects strided memrefs when lowering
`vector.gather` and `vector.scatter`. This PR adds tests to document
that behavior.
Supporting strided memrefs in the lowering is left as future work.
However, it is still unclear whether gather/scatter on strided memrefs
should be supported at all (see the Discourse discussion [1]).
This PR also adds tests for `vector.load` and `vector.store` in
`invalid.mlir` to document that these ops do not support strided
memrefs.
[1] https://discourse.llvm.org/t/rfc-semantics-of-vector-gather-indices-with-strided-memrefs
Commit: bc190619eb411534f36f5b17281208c9018ac61c
https://github.com/llvm/llvm-project/commit/bc190619eb411534f36f5b17281208c9018ac61c
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm_configs/config.h.cmake
Log Message:
-----------
[Bazel] Port 55b271d (#187007)
Commit: fdbc015abc9f76579a559b0f347068761b101fc6
https://github.com/llvm/llvm-project/commit/fdbc015abc9f76579a559b0f347068761b101fc6
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/unittests/Platform/PlatformDarwinTest.cpp
Log Message:
-----------
[lldb][PlatformDarwin][NFC] Move logic to emit warning on invalid/conflicting Python script names into helper function (#185669)
Depends on:
* https://github.com/llvm/llvm-project/pull/185666
* https://github.com/llvm/llvm-project/pull/185627
I'm planning on re-using this logic for a different API. Hence move it
into a common helper.
Commit: bc54aeff7445028f2b23713a2ba43392bae3d4ef
https://github.com/llvm/llvm-project/commit/bc54aeff7445028f2b23713a2ba43392bae3d4ef
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dep-same-ptr.ll
Log Message:
-----------
[LAA] Add tests with missed aliasing invariant load/store. (NFC)
Add a set of tests showing incorrect LAA results based on
https://github.com/llvm/llvm-project/issues/186922.
Commit: 6c9407a2f0645e7fc36600b7941aebdcc4f35edc
https://github.com/llvm/llvm-project/commit/6c9407a2f0645e7fc36600b7941aebdcc4f35edc
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Port 9e43b35 (#187011)
Commit: 5de7c865dc82a72bc252ae506474316206d2b4ba
https://github.com/llvm/llvm-project/commit/5de7c865dc82a72bc252ae506474316206d2b4ba
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrCMovSetCC.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/test/CodeGen/X86/apx/adc.ll
M llvm/test/CodeGen/X86/apx/add.ll
M llvm/test/CodeGen/X86/apx/and.ll
M llvm/test/CodeGen/X86/apx/cmov.ll
M llvm/test/CodeGen/X86/apx/dec.ll
M llvm/test/CodeGen/X86/apx/imul.ll
M llvm/test/CodeGen/X86/apx/inc.ll
M llvm/test/CodeGen/X86/apx/long-instruction-fixup-x32.ll
M llvm/test/CodeGen/X86/apx/long-instruction-fixup.ll
M llvm/test/CodeGen/X86/apx/memfold-nd2rmw.mir
M llvm/test/CodeGen/X86/apx/mul-i1024.ll
M llvm/test/CodeGen/X86/apx/neg.ll
M llvm/test/CodeGen/X86/apx/not.ll
M llvm/test/CodeGen/X86/apx/or.ll
M llvm/test/CodeGen/X86/apx/rol.ll
M llvm/test/CodeGen/X86/apx/ror.ll
M llvm/test/CodeGen/X86/apx/sar.ll
M llvm/test/CodeGen/X86/apx/sbb.ll
M llvm/test/CodeGen/X86/apx/shl.ll
M llvm/test/CodeGen/X86/apx/shld.ll
M llvm/test/CodeGen/X86/apx/shr.ll
M llvm/test/CodeGen/X86/apx/shrd.ll
M llvm/test/CodeGen/X86/apx/sub.ll
M llvm/test/CodeGen/X86/apx/xor.ll
M llvm/test/CodeGen/X86/cmp.ll
M llvm/test/CodeGen/X86/movbe.ll
Log Message:
-----------
[X86][APX] Enable NDD tunings (#186049)
For latest Intel processors with APX, mem form of all NDD instructions
(except for RIP based addressing) and imm form of NDD add/sub (include
inc/dec) instructions needed to be turned off by default for optimal
hardware performance.
Two new tunings enable-ndd-mem and enable-ndd-imm was added then
disabled by default. The new isa attributes is adopted for different
alternatives for NDD related patterns to control the generation of
mem/imm form.
Commit: 3be7b2fc9da7fb973cfba27322ce69ef28b11512
https://github.com/llvm/llvm-project/commit/3be7b2fc9da7fb973cfba27322ce69ef28b11512
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shift-i512.ll
Log Message:
-----------
[X86] Improve handling of i512 SHL(-1,Amt) + SRL(-1,Amt) "mask shifts" (#186806)
An extension of the existing one-bit shift patterns - perform an initial
select to handle 'allones/allzeros' elements and then insert the element
that has a partial mask on top of it.
Often turns up in bit manipulation patterns
Commit: e1baf3a99bdcf6d869789bed6f59364c4a018151
https://github.com/llvm/llvm-project/commit/e1baf3a99bdcf6d869789bed6f59364c4a018151
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
Log Message:
-----------
[AMDGPU] Remove AMDGPUCallLowering dependency on AMDGPUTargetLowering. NFC. (#187008)
Commit: 2b5e302627771d9a27c29ec3832b197286fb9938
https://github.com/llvm/llvm-project/commit/2b5e302627771d9a27c29ec3832b197286fb9938
Author: Charles Zablit <c_zablit at apple.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/test/API/windows/launch/replace-dll/TestReplaceDLL.py
Log Message:
-----------
[lldb][windows] fix TestReplaceDLL.py reruns (#187002)
Commit: 9a42e5ba6fd8d4b57f04381101b0ff6c4caf906d
https://github.com/llvm/llvm-project/commit/9a42e5ba6fd8d4b57f04381101b0ff6c4caf906d
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/docs/Dialects/TOSA.md
M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
Log Message:
-----------
[mlir][tosa] Remove 'Pure' trait from operations that are not speculatable (#185700)
This commit removes the 'Pure' trait from a number of TOSA operations.
Instead of marking most ops as pure by default, the trait is now opt-in
for operations that are provably side-effect free and speculatable.
Several operations were previously marked as pure unintentionally.
The following operations have had 'Pure' removed (reason in brackets):
- ARGMAX (out-of-range index)
- AVG_POOL2D (accumulator overflow/underflow)
- AVG_POOL2D_ADAPTIVE (same as above)
- CONV2D (accumulator overflow/underflow)
- CONV2D_BLOCK_SCALED (accumulator overflow/underflow)
- CONV3D (accumulator overflow/underflow)
- DEPTHWISE_CONV2D (accumulator overflow/underflow)
- MATMUL (accumulator overflow/underflow)
- MATMUL_T_BLOCK_SCALED (accumulator overflow/underflow)
- TRANSPOSE_CONV2D (accumulator overflow/underflow)
- ADD (overflow)
- SUB (underflow)
- MUL (invalid shift, overflow)
- ARITHMETIC_RIGHT_SHIFT (invalid shift value)
- LOGICAL_LEFT_SHIFT (invalid shift value)
- LOGICAL_RIGHT_SHIFT (invalid shift value)
- INTDIV (division by zero)
- POW (negative exponent restrictions)
- TABLE (invalid slope computation)
- ABS (underflow)
- NEGATE (overflow/underflow)
- REDUCE_PRODUCT (overflow)
- REDUCE_SUM (overflow)
- GATHER (out-of-range indices)
- SCATTER (out-of-range or duplicate indices)
- RESCALE (overflow/underflow)
Many of these operations can exhibit undefined behaviour when a
`REQUIRE` condition in the TOSA specification pseudocode fails. Whether
such failures result in a runtime error is implementation-defined. As a
result, speculating or reordering these operations can change program
behaviour.
For this reason, the `AlwaysSpeculatable` property implied by `Pure` is
not valid for these ops. The `NoMemoryEffect` trait is retained, as
these operations do not have direct memory side effects.
Commit: 34fa16afff1d8486512001e30b917c264a0a2795
https://github.com/llvm/llvm-project/commit/34fa16afff1d8486512001e30b917c264a0a2795
Author: Utkarsh Saxena <usx at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaAttr.cpp
M clang/test/Sema/Inputs/lifetime-analysis.h
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
Log Message:
-----------
[LifetimeSafety] Exclude basic_string::insert from capturing methods (#186989)
Fixes https://github.com/llvm/llvm-project/issues/186817
Commit: 818efd5c954140ee5cdbf408f93c94dc97be87d0
https://github.com/llvm/llvm-project/commit/818efd5c954140ee5cdbf408f93c94dc97be87d0
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVUtils.h
A llvm/test/CodeGen/SPIRV/undef-global-aggregate-initializer.ll
Log Message:
-----------
[SPIR-V] Handle undef aggregate initializers for global variables (#186785)
Expand undef aggregate global initializers into per-element spv_undef
intrinsics
Commit: f335bd9685b3a8b66f6ea94748a076af6140ed7b
https://github.com/llvm/llvm-project/commit/f335bd9685b3a8b66f6ea94748a076af6140ed7b
Author: Ferran Toda <ferran.todacasaban at bsc.es>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-directive-sets.h
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
A flang/test/Lower/OpenMP/Todo/interchange.f90
A flang/test/Parser/OpenMP/do-interchange.f90
A flang/test/Parser/OpenMP/interchange-fail.f90
A flang/test/Parser/OpenMP/interchange-permutation.f90
A flang/test/Parser/OpenMP/interchange.f90
A flang/test/Semantics/OpenMP/interchange-permutation.f90
A flang/test/Semantics/OpenMP/interchange01.f90
M llvm/include/llvm/Frontend/OpenMP/OMP.td
Log Message:
-----------
[Flang][OpenMP] Add semantic support for OpenMP Loop Interchange and permutation clause in Flang (#183435)
This patch adds semantics for the `omp interchange` directive in flang
and the permutation clause, as specified in OpenMP 6.0.
Relevant tests have been added in every step.
Commit: bec0f40ef2eeb488e3c442345d958406c305c364
https://github.com/llvm/llvm-project/commit/bec0f40ef2eeb488e3c442345d958406c305c364
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/docs/SPIRVUsage.rst
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
A llvm/test/CodeGen/SPIRV/memory-model-md-glsl450.ll
A llvm/test/CodeGen/SPIRV/memory-model-md-opencl.ll
A llvm/test/CodeGen/SPIRV/memory-model-md-shader.ll
A llvm/test/CodeGen/SPIRV/memory-model-md-unknown.ll
A llvm/test/CodeGen/SPIRV/memory-model-md-vulkan.ll
Log Message:
-----------
[SPIR-V] Handle spirv.MemoryModel metadata (#186138)
Commit: e31db655fd512bc114503a7a307bc5162960789e
https://github.com/llvm/llvm-project/commit/e31db655fd512bc114503a7a307bc5162960789e
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
Log Message:
-----------
[NFC][analyzer] Improve computeObjectUnderConstruction (#186186)
Previously the method `ExprEngine::computeObjectUnderConstruction` took
a `NodeBuilderContext` parameter which was only used to call its
`blockCount()` method; this commit replaces this with directly taking
`NumVisitedCaller` (= number of times the caller was visited, the
`blockCount`) as an unsigned value.
In `CallEvent::getReturnValueUnderConstruction` this method is invoked
with `getNumVisitedCurrent()`, the visitation count of the _current_
`LocationContext` and `Block`; instead of calling `getNumVisited()` on
the `LocationContext` and `Block` corresponding to the `CallEvent`
instance (available through its data members). This is logically
incorrect, but (at least within the lit testsuite) there is no situation
where it leads to actually incorrect behavior. This is currently marked
with a FIXME comment; it will be fixed in a follow-up commit.
Commit: 0eefb2682bf8c04954c46e91916b5164d8424702
https://github.com/llvm/llvm-project/commit/0eefb2682bf8c04954c46e91916b5164d8424702
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libcxx/CMakeLists.txt
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
Log Message:
-----------
[libc++] Build the library with C++26 (#181021)
All supported compilers support C++26. This allows simplifying some of
the upcoming <text_encoding> implementation.
Commit: dc5c6d008f487eea8f5d646011f9b3dca6caebd7
https://github.com/llvm/llvm-project/commit/dc5c6d008f487eea8f5d646011f9b3dca6caebd7
Author: Jann Horn <jannh at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/docs/SanitizerCoverage.rst
M clang/include/clang/Basic/CodeGenOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/test/Driver/autocomplete.c
M llvm/include/llvm/Transforms/Utils/Instrumentation.h
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
A llvm/test/Instrumentation/SanitizerCoverage/trace-pc-entry-exit.ll
Log Message:
-----------
[sancov] add -fsanitize-coverage=trace-pc-entry-exit (#185972)
Add a SanCov flag for calling dedicated hook functions on function entry
and exit. This flag can be used either in combination with
-fsanitize-coverage=trace-pc (in which case this patch changes which
hook is called for the entry BB, and generates an additional hook call
before return), or it can be used by itself (in which case only the
dedicated entry/exit callbacks are invoked).
This can be used to track the call stack throughout a sancov trace.
cc @vitalybuka @dvyukov
Commit: 9f4fbe86a5922cb8ef5a1772dcf9408e9a814aa2
https://github.com/llvm/llvm-project/commit/9f4fbe86a5922cb8ef5a1772dcf9408e9a814aa2
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/source/ValueObject/DILEval.cpp
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILExprPointerArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp
Log Message:
-----------
[lldb] Add pointer arithmetics for addition and subtraction to DIL (#184652)
Commit: a1a714b8b87e78bd42c47cb0b0e18dacca073a19
https://github.com/llvm/llvm-project/commit/a1a714b8b87e78bd42c47cb0b0e18dacca073a19
Author: Robert Konicar <rkonicar at mail.muni.cz>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
M mlir/test/lib/Dialect/Test/TestOps.td
Log Message:
-----------
[MLIR][Interfaces] Make `getMutableSuccessorOperands` overridable on `ReturnLike` ops (#186832)
Move the `getMutableSuccessorOperands` implementation from `ReturnLike`
trait to the `RegionBranchTerminatorOpInterface` to allow overriding of
the implementation. This allows to have the trait on operations that are
not a return of all of their operands. This can be used, for example, to
implement custom `ReturnLike` terminator that consumes non-returned
operands in combination with `func.func`.
The `RegionBranchTerminatorOpInterface` now provides a default
implementation for the `getMutableSuccessorOperands` method that returns
all of the operands.
Commit: 2859621ddbb3e5f17100acc15c209bcef42ddc07
https://github.com/llvm/llvm-project/commit/2859621ddbb3e5f17100acc15c209bcef42ddc07
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Port 429e9717 (#187019)
Commit: a114bbe4cb7d1db70e113357bc179820c08901eb
https://github.com/llvm/llvm-project/commit/a114bbe4cb7d1db70e113357bc179820c08901eb
Author: 134ARG <xen134 at outlook.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Support/KnownFPClass.cpp
M llvm/test/Transforms/Attributor/nofpclass.ll
M llvm/test/Transforms/InstCombine/fadd.ll
Log Message:
-----------
[ValueTracking] fadd never produces subnormal with no underflow (#186985)
In the cases where the fadd does not underflow, the result is both
non-zero and non-subnormal.
alive2 results for the added positive testcases:
testcase 1: https://alive2.llvm.org/ce/z/Mxjott
testcase 2: https://alive2.llvm.org/ce/z/Q-_A-v
testcase 3: https://alive2.llvm.org/ce/z/Y3XpSk
testcase 4: https://alive2.llvm.org/ce/z/34n8MZ
Fix #186975.
Commit: 05f2b89f4459629e5750bed19f7ee4add1b5432a
https://github.com/llvm/llvm-project/commit/05f2b89f4459629e5750bed19f7ee4add1b5432a
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
Log Message:
-----------
[NFC][analyzer] Update some incorrect doc-comments (#186852)
These were incorrectly copy-pasted more than ten years ago.
Commit: 240bc0a7ad74698c293c133f981be09bf6b47d86
https://github.com/llvm/llvm-project/commit/240bc0a7ad74698c293c133f981be09bf6b47d86
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
Log Message:
-----------
[AMDGPU] Remove R600TargetTransformInfo dependency on AMDGPUTargetLowering. NFC. (#187014)
Commit: 6e17b2ef33b84c41bfaa86711472ab4cc5a9829a
https://github.com/llvm/llvm-project/commit/6e17b2ef33b84c41bfaa86711472ab4cc5a9829a
Author: albertbolt1 <45144020+albertbolt1 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
Log Message:
-----------
[CIR][AArch64] Upstream NEON shift left builtins (#186406)
This PR adds CIR generation for the following AArch64 NEON builtins:
__builtin_neon_vshld_n_s64 and __builtin_neon_vshld_n_u64 (constant
shifts)
extracted the constant value and use it directly for shift left
__builtin_neon_vshld_s64 and __builtin_neon_vshld_u64 (variable shifts)
there is an existing function to handles SISD (SIngle Instruction Single
Data), reusing this to create the right CIR instructions
__builtin_neon_vshld_s64 -- call i64 @llvm.aarch64.neon.sshl.i64(i64
[[A]], i64 [[B]])
__builtin_neon_vshld_u64 -- call i64 @llvm.aarch64.neon.ushl.i64(i64
[[A]], i64 [[B]])
added test cases in intrinsics.c by looking at the test cases present in
https://github.com/llvm/llvm-project/blob/main/clang/test/CodeGen/AArch64/neon-shifts.c
before adding the code it gave a not implemented error and after adding
the code changes the error is not present the code succeeds.
ran the test cases using
```
bin/llvm-lit -v \
/Users/albertbolt/projects/llvm-project/clang/test/CodeGen/AArch64/neon/intrinsics.c
```
#185382
---------
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>
Commit: 0f1ec17f29f145d3c0f1439316ab9203f05d456a
https://github.com/llvm/llvm-project/commit/0f1ec17f29f145d3c0f1439316ab9203f05d456a
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize rules for atomic fmin/fmax (#182824)
Add register bank legalization rules for
G_ATOMICRMW_FMIN/G_ATOMICRMW_FMAX (flat, global, LDS) and
G_AMDGPU_BUFFER_ATOMIC_FMIN/G_AMDGPU_BUFFER_ATOMIC_FMAX (S32 and S64)
under -new-reg-bank-select. Update existing GlobalISel tests to use the
new pass and add a new MIR test for register bank assignment.
Commit: 43ec60eee5f95e01c3b92ed08d09d574556c62c8
https://github.com/llvm/llvm-project/commit/43ec60eee5f95e01c3b92ed08d09d574556c62c8
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/GenericDomTree.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Analysis/ScalarEvolution/two-loop-latches.ll
M polly/lib/Analysis/ScopBuilder.cpp
Log Message:
-----------
Reland "[DomTree] Assert non-null block for pre-dom tree" (#187005)
Reland #186790 with fix for SCEV. A loop can have more than one latch,
in which case getLoopLatch returns null.
Commit: 3ae428ff3a526247aff323445471fac55c15fc8c
https://github.com/llvm/llvm-project/commit/3ae428ff3a526247aff323445471fac55c15fc8c
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libcxx/include/__functional/operations.h
M libcxx/include/__type_traits/make_transparent.h
Log Message:
-----------
[libc++][NFC] Rename the template parameter of __make_transparent (#186435)
Renaming from _Tp to _ArgumentType makes it clearer that we're passing
the argument type intended for the comparator, which allows checking
whether *that specific use* of the comparator would be transparent.
Fixes #186396
Commit: 52e9e828985f9a47274eb6bde18bf80690a6e693
https://github.com/llvm/llvm-project/commit/52e9e828985f9a47274eb6bde18bf80690a6e693
Author: Hussam Alhassan <hsm.link at proton.me>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
Log Message:
-----------
[NFC][AArch64] ConditionOptimizer: refine cmp/cond instruction update code (#186724)
Split modifyCmp() into updateCmpInstr() and updateCondInstr() to
separate the concerns of updating the compare and its controlling
conditional. Rename parseCond() to parseCondCode() and return the
CondCode directly rather than via an out-parameter.
Also add applyCmpAdjustment() to pair the two update calls at a higher
level of abstraction, reducing call site verbosity.
Commit: db4f8f7af09b8f2affeb2c2f3c3175a528795111
https://github.com/llvm/llvm-project/commit/db4f8f7af09b8f2affeb2c2f3c3175a528795111
Author: YixingZhang007 <yixing.zhang at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/apint-constant.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-addsub.ll
Log Message:
-----------
[SPIR-V] Add support for arbitrary precision integer constants in instruction printer (#185306)
This PR improves the SPIR-V instruction printer output for integer
constants using `SPV_ALTERA_arbitrary_precision_integers` extension.
Previously, when `OpConstantI` was encoded with multiple 32-bit words
(for integer widths > 64), the inst printer printed the raw per-word
immediates. This was hard to read and did not reflect the actual value
at the declared integer bitwidth.
Now, with the change in this patch, the instruction printer reconstructs
the multi-word literal into a single `APInt`, truncates it to the
bitwidth declared by the corresponding `OpTypeInt`, and prints the
resulting value as one readable integer (including correct negative
values where applicable).
---------
Co-authored-by: yixing.zhang <yixingzh at smtp.igk.intel.com>
Commit: ca15db1cd509c236cd8138bcd098117d0106db56
https://github.com/llvm/llvm-project/commit/ca15db1cd509c236cd8138bcd098117d0106db56
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/test/API/symstore/TestSymStoreLocal.py
Log Message:
-----------
[lldb] Fix permission issue in API test on lldb-x86_64-win (#187021)
Deleting the executable at the end of this API test-case fails with a
permission error, likely because lldb still holds a reference to the
EXE. Exit explicitly to avoid that.
Commit: 3ee7caa273871a3e3178d53a5f8b29ffcf0b8ff2
https://github.com/llvm/llvm-project/commit/3ee7caa273871a3e3178d53a5f8b29ffcf0b8ff2
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenMP/do-collapse.f90
M flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/do-ordered.f90
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do10.f90
M flang/test/Semantics/OpenMP/do13.f90
M flang/test/Semantics/OpenMP/do15.f90
M flang/test/Semantics/OpenMP/do16.f90
M flang/test/Semantics/OpenMP/do22.f90
M flang/test/Semantics/OpenMP/fuse1.f90
M flang/test/Semantics/OpenMP/interchange-permutation.f90
M flang/test/Semantics/OpenMP/interchange01.f90
M flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
M flang/test/Semantics/OpenMP/tile05.f90
M flang/test/Semantics/OpenMP/tile07.f90
Log Message:
-----------
[flang][OpenMP] Use the LoopSequence-based checks (#185300)
Turn on the new loop-construct checks. Remove some checks from
resolve-directives.cpp which are now done in the semantic analysis.
Update tests.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: d20315f1543247ce8c39a2a2eee8019016e6b8eb
https://github.com/llvm/llvm-project/commit/d20315f1543247ce8c39a2a2eee8019016e6b8eb
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/test/CodeGen/RISCV/rv32zbb.ll
M llvm/test/CodeGen/RISCV/rv64zbb.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll
Log Message:
-----------
[RISCV] Select (sext_inreg (sra X, C), i8/i16) as slli+srai. (#186956)
Without Zcb, the slli+srai may be more compressible
Commit: 65bf05a494c9a2fec7128e0c7b59aadcfb9f774c
https://github.com/llvm/llvm-project/commit/65bf05a494c9a2fec7128e0c7b59aadcfb9f774c
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/test/Instrumentation/NumericalStabilitySanitizer/basic.ll
A llvm/test/Instrumentation/NumericalStabilitySanitizer/intrinsics.ll
A llvm/test/Instrumentation/NumericalStabilitySanitizer/libfuncs.ll
Log Message:
-----------
[Instrumentation][nsan] Intrinsic tests + bugfixes (#186803)
Add comprehensive lit-test coverage to the NumericalStabilitySanitizer's
intrinsic and libfunc handling.
Also, several minor bugfixes:
- Fix typo in llvm.nearbyint.f80's name.
- Remove lround and llround intrinsics, since they return ints (and are
not instrumented by nsan as a result).
- Fix fmuladd.f64 intrinsic to map to fmuladd instead of fma.
- Add missing fmuladd.f80 variant.
Commit: c91a9b8d10486625bd795f0664379e584669892d
https://github.com/llvm/llvm-project/commit/c91a9b8d10486625bd795f0664379e584669892d
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/Maintainers.rst
Log Message:
-----------
[libc] Add Jeff Bailey to Maintainers.rst (#186662)
Add Jeff Bailey as a maintainer for General Maintenance and
Documentation. Jeff has been contributing to LLVM-libc since January
2022. This addition was discussed at the most recent LLVM-libc meeting
with no objections raised.
Commit: 6d107523b14bacad87755315a8a2829e10544176
https://github.com/llvm/llvm-project/commit/6d107523b14bacad87755315a8a2829e10544176
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
A clang/test/Analysis/clang-suppress/nested-templates.cpp
Log Message:
-----------
[analyzer] Fix [[clang::suppress]] for nested templates (#183727)
For nested templates, we might need to walk the member template chain to
get to the primary template. This can be an arbitrary long chain, of the
partial specializations.
Previously, we hit the assertion `This class template must have a redecl
that is a definition` because we only walked the redecls of the given
template. However, that redecl-chain might not have a redecl that is the
definition.
Sometimes (in case of member templates) you also need to walk the member
specialization and continue walking the redecls of that one.
(Don't ask me more, because I have no clue how these nested templates
and their redecls are implemented. It just works™️)
Fixes #182659
Assisted-by: claude
Commit: a93560d13eabde5da82eb2214e7c1bc27ec57e6f
https://github.com/llvm/llvm-project/commit/a93560d13eabde5da82eb2214e7c1bc27ec57e6f
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
A lldb/unittests/Platform/TestUtils.cpp
A lldb/unittests/Platform/TestUtils.h
Log Message:
-----------
[lldb][PlatformDarwin][test] Move Platform test utilities into common header for re-use (#187036)
In https://github.com/llvm/llvm-project/pull/187031 I'm planning on
re-using the `MockScriptInterpreterPython` and `CreateFile` API from a
different unit-test in `Platform/`.
Commit: fcefee017b8a4e752a1b35a7a3b046fc82722ab3
https://github.com/llvm/llvm-project/commit/fcefee017b8a4e752a1b35a7a3b046fc82722ab3
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
Log Message:
-----------
AMDGPU: llvm.amdgcn.ds.add/sub.gs.reg.rtn are sources of divergence (#186883)
Per the ISA documentation, these are atomic operations on dedicated GS
streamout registers. As GDS instructions, the first active lane (based
on EXEC) is used and others are ignored.
Commit: 25981794438bf8d006e13a939c27d5f879fd4c0d
https://github.com/llvm/llvm-project/commit/25981794438bf8d006e13a939c27d5f879fd4c0d
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
Log Message:
-----------
[AMDGPU][GlobalISel][NFC] Group RegBankLegalize intrinsic rules (#186912)
Commit: e8a03bb043ea7bd6f8886b7010037c9d2d52faaa
https://github.com/llvm/llvm-project/commit/e8a03bb043ea7bd6f8886b7010037c9d2d52faaa
Author: Gergo Stomfai <stomfaig at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/MachineInstrBundle.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/X86/X86TargetMachine.cpp
Log Message:
-----------
[CodGen] Port UnpackMachineBundles to new pass manager (#184918)
Commit: 60f478a1599fa885f8a9826fad2d540bb3dc3fc4
https://github.com/llvm/llvm-project/commit/60f478a1599fa885f8a9826fad2d540bb3dc3fc4
Author: Oliver Old <mail at oold.dev>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/utils/release/build_llvm_release.bat
Log Message:
-----------
Add Zstandard to Windows release build (#186772)
This PR adds Zstandard to the Windows release build script to enable
Zstandard support in LLVM.
Part 2 of https://github.com/llvm/llvm-project/issues/184177.
This PR supersedes #186631, which got closed because of a force push
mishap.
Commit: bed77a1d9bf40c1ab0a55572df148e5a8c44e975
https://github.com/llvm/llvm-project/commit/bed77a1d9bf40c1ab0a55572df148e5a8c44e975
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/hdr/func/aligned_alloc.h
M libc/hdr/stdint_proxy.h
Log Message:
-----------
[libc] Avoid host header collisions in full builds (-nostdinc) (#187025)
When building the full library with -nostdinc, directly including
<stdint.h> may pull in host or compiler-provided headers that collide
with LLVM-libc's local macro definitions. Switch to using our internal
stdint-macros.h when LIBC_FULL_BUILD is enabled.
Additionally, declare aligned_alloc with noexcept in C++ to match common
C library declarations and avoid fatal type specification mismatches
during sysroot builds.
Commit: abd5b6964e74c4d8ac37cbf57d96d3be3bdfaf2d
https://github.com/llvm/llvm-project/commit/abd5b6964e74c4d8ac37cbf57d96d3be3bdfaf2d
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
Log Message:
-----------
[X86] Fold compress(splat(x),splat(x),mask) -> splat(x) (#187042)
Noticed while working on i512 shift expansion - if we end up with
repeated splat args, the compress node is unnecessary as we're just
shuffling the same element values
Commit: fec11e3e5f2623f5d7ad78e940ad981115cbc4bd
https://github.com/llvm/llvm-project/commit/fec11e3e5f2623f5d7ad78e940ad981115cbc4bd
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A libcxx/utils/ci/lnt/runners/README.md
A libcxx/utils/ci/lnt/runners/apple-m5-clang21
A libcxx/utils/ci/lnt/runners/apple-m5-xcode26
Log Message:
-----------
[libc++] Add scripts defining two LNT runners for libc++ (#187050)
Commit: cb3e9eec5fe08a781e7c9838c72dbff10e799984
https://github.com/llvm/llvm-project/commit/cb3e9eec5fe08a781e7c9838c72dbff10e799984
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeProperties.td
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/SemaTemplate/ctad.cpp
M clang/unittests/AST/ProfilingTest.cpp
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
Log Message:
-----------
[clang] DeducedTypes deduction kind fix and improvement (#186727)
This is a small refactor of how DeducedType and it's derived types are
represented.
The different deduction kinds are spelled out in an enum, and how this
is tracked is simplified, to allow easier profiling.
How these types are constructed and canonicalized is also brought more
in line with how it works for the other types.
This fixes a crash reported here:
https://github.com/llvm/llvm-project/issues/167513#issuecomment-3692962115
Commit: 19c04ce0d58fdccca523ec2b5377d5b5b1edb3a1
https://github.com/llvm/llvm-project/commit/19c04ce0d58fdccca523ec2b5377d5b5b1edb3a1
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/test/CodeGen/X86/avx-minmax.ll
M llvm/test/CodeGen/X86/avx512-broadcast-unfold.ll
M llvm/test/CodeGen/X86/sse-minmax-finite.ll
M llvm/test/CodeGen/X86/sse-minmax.ll
Log Message:
-----------
[X86] Fix fcmp+select to min/max lowering (#185594)
This does a few changes that are hard to separate from each other:
* Consider forming minnum/maxnum from setcc+select non-profitable. X86
has instructions specifically for the setcc+select pattern. (Without
this it's hard to get good coverage on this code path.)
* Reduce duplication in the code for forming FMIN/FMAX, by using
predicate inversion (to make setcc and select operand order match) and
predicate invswap (to canonicalize to ordered predicates). This leaves
us with just ordered and NaN-less predicates.
* For non-strict non-less predicates, convert them to strict ones via
invswap (i.e. swapping the operands of both the setcc and select).
Previously this just treated them the same as strict predicates, but I
believe that's incorrect in terms of signed zero handling.
Commit: 6f68daa42cab4884102a3688d4c13d732da6defd
https://github.com/llvm/llvm-project/commit/6f68daa42cab4884102a3688d4c13d732da6defd
Author: Abu <49108786+user1342234 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Analysis/ValueTracking.cpp
A llvm/test/Transforms/InstCombine/sext-nonneg-sub.ll
Log Message:
-----------
[InstCombine] Recognize non-negative subtraction patterns (#182597)
Alive2 proofs:
smin pattern: https://alive2.llvm.org/ce/z/-E2Tpc
Commit: b04b9e58aa4c00d00fb5afcca9c447581d8bd490
https://github.com/llvm/llvm-project/commit/b04b9e58aa4c00d00fb5afcca9c447581d8bd490
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/include/llvm/Config/BUILD.gn
Log Message:
-----------
[gn] port 55b271ddc1fd968
Commit: 832c95948c805e9396943ed85b8516b85c131791
https://github.com/llvm/llvm-project/commit/832c95948c805e9396943ed85b8516b85c131791
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/aarch64-condopt-cross-block-different-regs.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-nzcvdef.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
Log Message:
-----------
[NewPM] Port for AArch64ConditionOptimizer (#186941)
Adds a newPM pass for AArch64ConditionOptimizer.
- Refactors base logic into an Impl class
- Renames old pass with the "Legacy" suffix
- Adds the new pass manager pass using refactored logic
- Updates tests
Context and motivation in
https://llvm.org/docs/NewPassManager.html#status-of-the-new-and-legacy-pass-managers
Commit: 810ba55de9159932d498e9387d031f362b93fbea
https://github.com/llvm/llvm-project/commit/810ba55de9159932d498e9387d031f362b93fbea
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
Log Message:
-----------
[CycleInfo] Support forward declarations (#187029)
Use a class instead of an alias, so that CycleInfo can be
forward-declared.
We can't do the same for Cycle without further changes (a LoopInfo like
CRTP scheme).
Commit: adf458cbac43dddb4e955b5b874f70f43ee191f6
https://github.com/llvm/llvm-project/commit/adf458cbac43dddb4e955b5b874f70f43ee191f6
Author: Alex Langford <alangford at apple.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/packages/Python/lldbsuite/test/lldbutil.py
Log Message:
-----------
[lldb] Add additional logging to wait_for_file_on_target (#186915)
Occasionally wait_for_file_on_target will time out on the Green Dragon
bots and we're not sure why. I'm adding this logging in an attempt to
get more clues as to what's happening when it fails.
Commit: 79d1a2c4185654849f616987e938cdca499ac49b
https://github.com/llvm/llvm-project/commit/79d1a2c4185654849f616987e938cdca499ac49b
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600MCInstLower.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
Log Message:
-----------
[AMDGPU] Standardize on using AMDGPU::getNullPointerValue. NFC. (#187037)
AMDGPUTargetMachine also had a static method which did the same thing.
Remove it so that we have a single source of truth.
Commit: 9c7e203be3e553eca95e0b8fc1fa89cbe43eec69
https://github.com/llvm/llvm-project/commit/9c7e203be3e553eca95e0b8fc1fa89cbe43eec69
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/docs/Directives.md
M flang/lib/Lower/ConvertCall.cpp
A flang/test/Lower/HLFIR/ignore-tkr-c-base-addr.f90
Log Message:
-----------
[flang] Fix ignore_tkr(c) passing descriptor instead of base address for non-descriptor dummies (#186894)
When ignore_tkr(c) is set and the actual argument is an allocatable or
pointer (stored as a descriptor), the lowering code was unconditionally
returning the descriptor pointer as-is, regardless of whether the dummy
argument expects a descriptor. For bind(c) interfaces with assumed-size
dummies (e.g., cuFFT), the dummy expects a raw pointer, not a
descriptor. Passing the descriptor caused the C function to receive the
wrong address, leading to silent data corruption and invalid descriptor
crashes at deallocation.
The fix adds a check that the early return for ignore_tkr(c) only
applies when the dummy type is itself a descriptor type. When the dummy
expects a base address, the normal path is taken, which correctly
extracts the base address from the descriptor via fir.box_addr.
Commit: 3c391665ec1f5e1089817a5f1525a3f25b3b0eff
https://github.com/llvm/llvm-project/commit/3c391665ec1f5e1089817a5f1525a3f25b3b0eff
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/source/Interpreter/CommandInterpreter.cpp
Log Message:
-----------
[lldb] Fix user-after-free in CommandInterpreter (#187032)
The variable `matches` may be assigned the address of block-scope
`local_matches`, which is defined in a scope strictly smaller than the
scope of `matches`. Towards the end of the function, after
`loacl_matches` has been destroyed, `matches` is accessed, possibly
triggering a user-after-free.
Commit: 1800651c86c09722d36cad6af69e8eea49b33c4c
https://github.com/llvm/llvm-project/commit/1800651c86c09722d36cad6af69e8eea49b33c4c
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/test/Lower/Intrinsics/anint.f90
M flang/test/Lower/math-lowering/anint.f90
Log Message:
-----------
[flang] Lower anint with math.round (#186039)
Use `math.round` in lowering of `anint` so we can use passes like
`MathToNVVM` to target device code differently.
Commit: 333f6abe30ed208be6479d7ab701dbbd26c5eed0
https://github.com/llvm/llvm-project/commit/333f6abe30ed208be6479d7ab701dbbd26c5eed0
Author: srcarroll <50210727+srcarroll at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M .ci/all_requirements.txt
M mlir/python/mlir/runtime/np_to_memref.py
M mlir/python/requirements.txt
M mlir/test/python/execution_engine.py
Log Message:
-----------
Reland Support float8_e3m4 and float8_e4m3 in np_to_memref (#186453) (#186833)
This patch adds support for `float8_e3m4` and `float8_e4m3` in
`np_to_memref.py` by adding the appropriate ctypes structures.
Additionally changes minimum numpy version to 2.1.0 and uses a single
ml_dtypes version of 0.5.0.
Commit: 9d94bdace1b124497c395d7350365e67596930ef
https://github.com/llvm/llvm-project/commit/9d94bdace1b124497c395d7350365e67596930ef
Author: Yang Bai <baiyang0132 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
Log Message:
-----------
[mlir][Interfaces][NFC] Add early exit to MakeRegionBranchOpSuccessorInputsDead (#186325)
Optimize MakeRegionBranchOpSuccessorInputsDead patterns in
`ControlFlowInterfaces.cpp`:
- Add early exit to `computeReachableValuesFromSuccessorInput` when the
caller only needs to know if there is exactly one reachable value,
avoiding unnecessary traversal.
Assisted-by: Claude Code
Co-authored-by: Yang Bai <yangb at nvidia.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
Commit: b686f5e62e09f2b39d6f7745a88187052dd514a6
https://github.com/llvm/llvm-project/commit/b686f5e62e09f2b39d6f7745a88187052dd514a6
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
Log Message:
-----------
[SandboxVec][BottomUpVec] Fix crash caused by Cmps with different operand types (#186550)
This patch disables vectorizing Cmps with different operand types
because we can't form a legal vector.
This used to cause an assertion check crash once we attempted to pack
the bundle formed by Cmp's operands.
Commit: 19fd930bf00c62d9ebdc4fee04a1be981d0d971c
https://github.com/llvm/llvm-project/commit/19fd930bf00c62d9ebdc4fee04a1be981d0d971c
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
A flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
Log Message:
-----------
[flang][OpenMP][CUDA] Set allocator_idx on privatized allocatable device array descriptors (#186945)
When an allocatable CUDA Fortran device array is privatized in an OpenMP
region, the null descriptor created in the omp.private init region was
missing the allocator_idx attribute. This caused a subsequent allocate()
inside the parallel region to call malloc instead of cudaMalloc, because
the runtime's Descriptor::Allocate() reads allocator_idx from the
descriptor to select the allocator. On some systems it caused
cudaErrorInvalidValue crashes.
This patch sets allocator_idx = 2 (device allocator) on the null
fir.embox in handleNullAllocatable() when the symbol has a CUDA device
attribute, so that the Fortran runtime correctly calls cudaMalloc for
the privatized array.
Commit: 2531b1692cd212fbf12a0e22e467216114f67a62
https://github.com/llvm/llvm-project/commit/2531b1692cd212fbf12a0e22e467216114f67a62
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Bytecode/BytecodeImplementation.h
M mlir/include/mlir/IR/BuiltinDialectBytecode.td
M mlir/include/mlir/IR/BytecodeBase.td
M mlir/test/Bytecode/bytecode_callback_with_custom_type.mlir
M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
Log Message:
-----------
[mlir][bytecode] Use getChecked<T>() in bytecode reading to avoid crashes (#186145)
When the bytecode type callback (test-kind=2) calls iface->readType()
for every builtin type, complex types like MemRefType could crash
because the generated reading code used get<T>() which asserts on
invalid parameters, rather than getChecked<T>() which returns null
gracefully.
This change:
- Adds a getChecked<T>() free function helper in
BytecodeImplementation.h that calls T::getChecked(emitError, params)
(no-context form) when a specific override exists, otherwise falls back
to get<T>(). The with-context second branch is intentionally omitted to
avoid instantiating StorageUserBase::getChecked<Args> for types that
only inherit the base template (e.g. ArrayAttr), which would require
complete storage types unavailable in the bytecode reading TU.
- Updates BytecodeBase.td default cBuilder for
DialectAttribute/DialectType to use getChecked<> instead of get<>.
- Updates all custom cBuilder strings in BuiltinDialectBytecode.td.
- Updates the no-args codegen case in BytecodeDialectGen.cpp.
- Adds a regression test in bytecode_callback_with_custom_type.mlir.
Fixes #128308
Assisted-by: Claude Code
Commit: f28ef689961ee4226cfc8228e06077564e57d2db
https://github.com/llvm/llvm-project/commit/f28ef689961ee4226cfc8228e06077564e57d2db
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] getMaskNode - perform pre-truncation of oversized scalar mask sources (#187063)
Allows us to use getMaskNode to canonicalize predicate masks in big shift lowering
Commit: 74a5efa3318e932be1ad3f46060ac74a5bda7756
https://github.com/llvm/llvm-project/commit/74a5efa3318e932be1ad3f46060ac74a5bda7756
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGenBuiltins/builtins-overflow.cpp
Log Message:
-----------
[CIR] Split BinOpOverflowOp into separate overflow-checked ops (#186653)
Replace the monolithic cir.binop.overflow operation and its
BinOpOverflowKind enum with three individual operations:
cir.add.overflow, cir.sub.overflow, and cir.mul.overflow.
This follows the same pattern used when BinOp and UnaryOp were
previously split into per-operation ops (cir.add, cir.sub, etc.),
eliminating enum dispatch and enabling per-op traits like Commutative.
Commit: b5614bc21cb5b87a02c00a6b1907c8cf981dc79b
https://github.com/llvm/llvm-project/commit/b5614bc21cb5b87a02c00a6b1907c8cf981dc79b
Author: Justice Adams <jadams23 at apple.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M .ci/green-dragon/lldb-ubuntu.groovy
Log Message:
-----------
[green-dragon] fix Python and Swig flags (#187052)
Commit: 0769dde7a23bda0e748b395b761ab0b6d4069bc5
https://github.com/llvm/llvm-project/commit/0769dde7a23bda0e748b395b761ab0b6d4069bc5
Author: Stefan Mada <smada at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/test/Integration/GPU/CUDA/module-to-binary-compiler-log.mlir
Log Message:
-----------
Removed Hardcoded SM Number from Mlir Test (#186917)
This MR removes a hard-coded compute number in an MLIR test. This will
allow the test to not need to be updated in the future. The default
value will come from `NVVMOps.td`.
Commit: 037c2095e6bd9e2d9729b55888abf3f92153e98c
https://github.com/llvm/llvm-project/commit/037c2095e6bd9e2d9729b55888abf3f92153e98c
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M bolt/include/bolt/Passes/ReorderFunctions.h
M bolt/lib/Passes/ReorderFunctions.cpp
A bolt/test/AArch64/function-order-hybrid.s
Log Message:
-----------
Add hybrid function ordering support (#186003)
Allow `--function-order` to be combined with `--reorder-functions`
algorithms. Functions listed in the order file are pinned first
(indices 0..N-1), then the selected algorithm orders remaining
functions starting at index N.
Commit: c3219f5222a476925cd35ca271760e3808a7edd6
https://github.com/llvm/llvm-project/commit/c3219f5222a476925cd35ca271760e3808a7edd6
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/test/Target/SPIRV/struct.mlir
Log Message:
-----------
[mlir][spirv] Fix struct.mlir for stricter spirv-val variable-pointer rules (#186974)
Update `mlir/test/Target/SPIRV/struct.mlir` so it remains valid under
current SPIR-V validator checks in Logical addressing mode.
The recursive struct cases were emitting pointer-allocating globals in
storage classes rejected by `spirv-val`. Adjust those globals to
`Private` while keeping recursive member pointers in `StorageBuffer`,
and update the expected roundtrip types accordingly.
Also add the missing variable-pointer requirements to the module VCE:
- capability: `VariablePointers`
- extension: `SPV_KHR_variable_pointers`
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 4b9693a4231b8a3ca83d578f9c1e8d43b729ffd3
https://github.com/llvm/llvm-project/commit/4b9693a4231b8a3ca83d578f9c1e8d43b729ffd3
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/hdr/func/aligned_alloc.h
M libc/hdr/stdint_proxy.h
Log Message:
-----------
Revert "[libc] Avoid host header collisions in full builds (-nostdinc)" (#187079)
Reverts llvm/llvm-project#187025
Fails on openmp bot:
https://lab.llvm.org/buildbot/#/builders/10/builds/24743
('INT64_MIN' macro redefined when used Clang-provided <stdint.h> is
used)
fails on RISC-V-32 bot:
https://lab.llvm.org/buildbot/#/builders/196/builds/17067
due to MPFRNumber constructor not picking the right overload for
uint32_t argument.
Commit: ebb3309975c8e49096d8295a368c93c684bf10f1
https://github.com/llvm/llvm-project/commit/ebb3309975c8e49096d8295a368c93c684bf10f1
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/docs/dev/index.rst
A libc/docs/dev/syscall_wrapper_refactor.rst
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
R libc/src/__support/OSUtil/linux/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/close.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/open.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/read.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/write.h
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/open.cpp
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/random/linux/CMakeLists.txt
M libc/src/sys/random/linux/getrandom.cpp
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/write.cpp
Log Message:
-----------
[libc] Refactor core Linux syscalls to use syscall_wrappers (#185983)
This patch initiates the refactoring of Linux syscalls as described in
the RFC (https://discourse.llvm.org/t/rfc-linux-syscall-cleanup/87248/).
It introduces a new infrastructure in
`src/__support/OSUtil/linux/syscall_wrappers/` to house header-only
syscall wrappers. These wrappers utilize `ErrorOr` to provide a
consistent, type-safe interface for error handling across the library,
standardizing how syscall return values are converted into
errno-compatible Error objects.
Summary of changes:
- Created the `syscall_wrappers` directory and added `close.h`,
`read.h`, `write.h`, and `open.h`.
- Moved the existing `getrandom.h` into the new `syscall_wrappers`
directory and updated its callers (including HashTable/randomness.h).
- Refactored core entrypoints (`close`, `read`, `write`, `open`) to use
the new wrappers, removing direct `syscall_impl` logic and manual errno
setting.
- Updated `shm_open.cpp` to use the new `open` wrapper.
- Cleaned up `OSUtil/linux/fcntl.cpp` by removing redundant internal
implementations of `open` and `close`.
- Added a developer guide in `docs/dev/syscall_wrapper_refactor.rst`
outlining the established pattern for future migrations.
---------
Co-authored-by: Michael Jones <michaelrj at google.com>
Commit: 18c8b8d81da272845101446b774f7165ba3e775d
https://github.com/llvm/llvm-project/commit/18c8b8d81da272845101446b774f7165ba3e775d
Author: Justin Stitt <justinstitt at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/test/CodeGen/overflow-behavior-types.c
Log Message:
-----------
[Clang] Add __ob_trap support for implicit integer sign change (#185772)
The `__ob_trap` type specifier can be used to trap (or warn with sanitizers) when overflow or truncation occurs on the specified type.
There was a gap in coverage for this with the `-fsanitize=implicit-integer-sign-change` sanitizer. Fix this by carrying around `__ob_trap` information through `EmitIntegerSignChange()` which allows us to properly trap or warn.
Commit: f0dfa36815dcdcc606b93d739b0f80c71b4e1cce
https://github.com/llvm/llvm-project/commit/f0dfa36815dcdcc606b93d739b0f80c71b4e1cce
Author: Hank <49036880+hankluo6 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
M mlir/test/Target/SPIRV/non-uniform-ops.mlir
Log Message:
-----------
[mlir][spirv] Add spirv.GroupNonUniformBroadcastFirst Op (#185818)
Add `spirv.GroupNonUniformBroadcastFirst` op and tests.
Commit: 7477045d3d83b2c9840087f4d9bb6d437304e70a
https://github.com/llvm/llvm-project/commit/7477045d3d83b2c9840087f4d9bb6d437304e70a
Author: valord577 <30427460+valord577 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
Log Message:
-----------
[lldb] Fix build on Linux when SEGV_PKUERR is undefined (#186963)
build logs refs:
https://github.com/valord577/nativepkgs/actions/runs/22346192467/job/64661318198
Commit: da86e036abca20e960de599d7b1c399b165f446f
https://github.com/llvm/llvm-project/commit/da86e036abca20e960de599d7b1c399b165f446f
Author: google-llvm-bazel-bot <google-bazel-bot at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes ebb3309 (#187090)
This fixes ebb3309975c8e49096d8295a368c93c684bf10f1.
Commit: 803828f4aa6285bc9c7f27f7d33de5713085ff3b
https://github.com/llvm/llvm-project/commit/803828f4aa6285bc9c7f27f7d33de5713085ff3b
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
M mlir/include/mlir/Dialect/GPU/IR/GPUDialect.h
M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.cpp
M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
M mlir/lib/Dialect/GPU/IR/InferIntRangeInterfaceImpls.cpp
M mlir/lib/Dialect/GPU/Transforms/SubgroupIdRewriter.cpp
M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-subgroup-id.mlir
M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
Log Message:
-----------
[mlir][GPU] Refactor, improve constant size information handling (#186907)
1. There was duplicate code between the integer range analysis's
handling of static dimension size information (ex. gpu.known_block_dim
attributes) and the handling during the lowering of those operations.
The code from integer range analysis was given a dialect-wide entry
point (and had its types fixed to be more accurate), which the lowering
templates now call.
2. The templated lowering for block/grid/cluster_dim now produces
precise ranges (indicating the constant value) where one is known, and
the lowerings in rocdl (including those for subgroup_id) have been fixed
appropriately.
3. While I was here, the gpu.dimension enum has been moved to GPUBase so
it lives next to the other enums.
4. The pattern that expands subgroup_id operations now adds any thread
dimension bounds it finds in context.
(Claude was used for an initial round of review, I did the main coding
myself.)
---------
Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Commit: 385aeb24bca8799fa8295000ac5403afee76f662
https://github.com/llvm/llvm-project/commit/385aeb24bca8799fa8295000ac5403afee76f662
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
Log Message:
-----------
Revert "[LoopUnroll] Remove `computeUnrollCount()`'s return value " (#187035)
Reverts llvm/llvm-project#184529 due to
https://github.com/llvm/llvm-project/pull/184529#issuecomment-4074393657
Commit: aef7e5768e78974d54de9b8d3e1d278e718d9c19
https://github.com/llvm/llvm-project/commit/aef7e5768e78974d54de9b8d3e1d278e718d9c19
Author: puneeth_aditya_56 <myakampuneeth at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
A llvm/test/CodeGen/DirectX/empty-global-ctors.ll
Log Message:
-----------
[DirectX] Fix assertion in PointerTypeAnalysis with empty global_ctors (#179034)
When `llvm.global_ctors` has no elements (e.g., when all resources are
unused in a shader library), its initializer is a `zeroinitializer`
(`ConstantAggregateZero`) rather than a `ConstantArray`. The previous
code used `cast<ConstantArray>` which asserts on incompatible types:
> "cast<Ty>() argument of incompatible type!"
This patch uses `dyn_cast` and returns early if the initializer is not a
`ConstantArray`, handling the edge case gracefully.
Fixes #178993.
Co-authored-by: Kaitlin Peng <kaitlinpeng at microsoft.com>
Commit: 996b62231ca85cdc88d68a5bcd985ddc7e53a794
https://github.com/llvm/llvm-project/commit/996b62231ca85cdc88d68a5bcd985ddc7e53a794
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[bazel] NFC: reformat mlir & libc bazel files (#187094)
Commit: 3d0e7e04c80b58fdddf23183d8baf6273ff741a7
https://github.com/llvm/llvm-project/commit/3d0e7e04c80b58fdddf23183d8baf6273ff741a7
Author: Uyiosa Iyekekpolor <96444432+uyoyo0 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/Object/Archive.h
M llvm/lib/BinaryFormat/Magic.cpp
M llvm/unittests/BinaryFormat/TestFileMagic.cpp
Log Message:
-----------
[z/OS] Recognize EBCDIC archive magic (#186854)
`z/OS` archives use the same structural layout as traditional Unix
archives but encode all text fields in EBCDIC. The magic string is the
EBCDIC representation of `\"!<arch>\n\" (hex: 5A 4C 81 99 83 88 6E 15)`.
This patch adds recognition of the `z/OS` archive magic to
`identify_magic()` and defines the `ZOSArchiveMagic` constant. This is
the first in a series of patches adding `z/OS` archive support to LLVM.
Commit: d0d1f0b7af320b20c0d0b5637d2854b2e97c7cfe
https://github.com/llvm/llvm-project/commit/d0d1f0b7af320b20c0d0b5637d2854b2e97c7cfe
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/fma.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/fma.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/fma.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 fma implementation to header-only in src/__support/math folder. (#163968)
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: f5d83fb40400967f0fcb1878be688c9ed15c4a6d
https://github.com/llvm/llvm-project/commit/f5d83fb40400967f0fcb1878be688c9ed15c4a6d
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Dialect/GPU/Transforms/SubgroupIdRewriter.cpp
M mlir/test/Dialect/GPU/subgroupId-rewrite.mlir
Log Message:
-----------
[mlir][GPU] Set nsw/nuw when expanding out subgroup ID (#187099)
There's no world where the subgroup ID (or the intermediate values
needed to compute it) will be negative or will have signed overflow.
This commit adds flags accordingly, which is helpful as this is a rather
low-level rewrite that might run after the analyses that would
ordinarily add these flags.
Commit: e6f0ec83438b39b5b57da24071f328917fb2ad5d
https://github.com/llvm/llvm-project/commit/e6f0ec83438b39b5b57da24071f328917fb2ad5d
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/fmaf.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/fmaf.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/fmaf.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 fmaf implementation to header-only in src/__support/math folder. (#163970)
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: bed5e7dc2018bfe2d0ff908441338f7ea8f6a124
https://github.com/llvm/llvm-project/commit/bed5e7dc2018bfe2d0ff908441338f7ea8f6a124
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/fmaf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/fmaf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/fmaf16.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 fmaf16 implementation to header-only in src/__support/math folder. (#163977)
Commit: af67e30a6303a27225a98a7a5b5a066b8195d1d8
https://github.com/llvm/llvm-project/commit/af67e30a6303a27225a98a7a5b5a066b8195d1d8
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC] Refactor BinOpSameOpcodeHelper BIT enum (#187067)
More readable syntax and increase type width to avoid silent errors if
we reach 17 members.
Commit: 2ef41cca149cf133683cd70f6002b3d885842356
https://github.com/llvm/llvm-project/commit/2ef41cca149cf133683cd70f6002b3d885842356
Author: Harris Hancock <harris.hancock at gmail.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix Macros configuration not working with try/catch expansions (#184891)
This is a superseding followup to my previous PR,
https://github.com/llvm/llvm-project/pull/183352.
In my previous PR, I proposed adding TryMacros and CatchMacros
configuration options, similar in spirit to IfMacros and ForEachMacros.
I did so because I noticed that configuration like
`Macros=["TRY_MACRO=try", "CATCH_MACRO(e)=catch(e)]` did not format
configured macro(s) as try/catch blocks. @owenca confirmed in my
previous PR that this observed behavior is undesired, and we should
prefer to fix it rather than introduce new features.
This PR proposes a fix, described in detail in the commit message below
the break. In general terms, it deletes a heuristic from the lexing
phase, where it interacted poorly with the Macros option, and moves its
functionality to the parsing phase instead.
I describe a possibly cleaner fix in [a comment
here](https://github.com/llvm/llvm-project/pull/183352#issuecomment-3992773126),
but it has the disadvantage of unintended behavior changes for
Objective-C code using `try` as an identifier. The fix in this PR avoids
that unintended behavior change; the only behavior change is the bugfix
itself.
cc @HazardyKnusperkeks as previous reviewer, and @mydeveloperday as the
heuristic's original author.
---
The lexer heuristic `tryTransformTryUsageForC()` was intended to allow C
code to use `try` as an identifier by demoting `tok::kw_try` to
`tok::identifier` when the following token did not look like the start
of a try body. However, when `MacroExpander::parseDefinition()` lexed a
macro like `"TRY_MACRO=try"`, the `try` token in the expansion body was
followed by `eof`, triggering the heuristic. This caused `try` to be
demoted to an identifier in the macro definition, so expanded code was
never parsed as a try/catch statement.
Delete `tryTransformTryUsageForC()` and instead guard the two `case
tok::kw_try:` dispatch sites in
`UnwrappedLineParser::parseStructuralElement()`. The guard is restricted
to `Style.isCpp()` (which covers C, C++, and Objective-C) and checks
whether the next non-comment token is `{`, `:`, or `#` -- the tokens
that can legitimately begin a try body or precede one.
The old heuristic also had to check for a preceding `@` token to avoid
demoting `try` in Objective-C `@try` constructs. The parser-level guard
does not need this check because `@try` is routed through `case tok::at`
and dispatched via `getObjCKeywordID()` to `tok::objc_try`, which calls
`parseTryCatch()` directly. The bare `kw_try` token never reaches `case
tok::kw_try` when parsing `@try`.
Assisted-by: Claude (anthropic.com)
Commit: f0e699a35c8b59681ff43d8fba3984c35d8e7e9b
https://github.com/llvm/llvm-project/commit/f0e699a35c8b59681ff43d8fba3984c35d8e7e9b
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Fix fma bazel build (#187107)
Commit: d4afb1bfed535ac31766a6692e734b9a611afb9e
https://github.com/llvm/llvm-project/commit/d4afb1bfed535ac31766a6692e734b9a611afb9e
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
Log Message:
-----------
[flang][OpenMP] Remove unused function declaration, NFC (#187101)
The function `GetNumGeneratedNestsFrom` has been removed, but repeated
local rebases stubbornly inserted the declaration back in.
Commit: 6b2e347ae12b35780e69477ce3c1704bc4f91fad
https://github.com/llvm/llvm-project/commit/6b2e347ae12b35780e69477ce3c1704bc4f91fad
Author: kubikusik <113005622+Kubikusik at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/include/wctype.yaml
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswpunct.cpp
A libc/src/wctype/iswpunct.h
M libc/test/src/wctype/CMakeLists.txt
A libc/test/src/wctype/iswpunct_test.cpp
Log Message:
-----------
[libc]: implement 'iswpunct' entrypoint (#186968)
Added entrypoints:
- baremetal/arm
- baremetal/aarch64
- baremetal/riscv
- darwin/aarch64
- linux/aarch64
- linux/arm
- linux/riscv
- linux/x86_64
- windows
Also added the unit test for iswpunct.
Part of the issue: #185136
Commit: 673002f32576ebac3953432ef12be64ca49d4361
https://github.com/llvm/llvm-project/commit/673002f32576ebac3953432ef12be64ca49d4361
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math] Fix bazel build for fmaf16 (#187111)
Commit: 5293760dd110c2542d1e566a212e98e65a1f4632
https://github.com/llvm/llvm-project/commit/5293760dd110c2542d1e566a212e98e65a1f4632
Author: Isaac Nudelman <62861466+nuudlman at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/lib/Dialect/LLVMIR/Transforms/DIScopeForLLVMFuncOp.cpp
M mlir/test/Dialect/LLVMIR/add-debuginfo-func-scope.mlir
Log Message:
-----------
[mlir][llvmir] Fix crash when a CallSiteLoc has a UnknownLoc callee (#186860)
Avoids reading a null StringAttr when no file name is present by
manufacturing a default instead.
Commit: 015601bf04ce7b650d835a32338ff10ab34c4db3
https://github.com/llvm/llvm-project/commit/015601bf04ce7b650d835a32338ff10ab34c4db3
Author: Nick Sarnie <nick.sarnie at intel.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/test/Driver/spirv-llvm-link.c
Log Message:
-----------
[clang][Driver][SPIRV] Fix assertion when using -emit-llvm (#186824)
In the failing case we are in the link phase with `-emit-llvm` passed,
which means we are going to call `llvm-link` so all inputs are expected
to be `.bc` files, and linker options aren't supported as we aren't
calling a real linker.
I can't imagine anyone wants to pass arguments to `llvm-link`. Just drop
them and warn instead of asserting.
Closes: https://github.com/llvm/llvm-project/issues/186598
Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Commit: 29f6bdb65b724d4f9b96316b3cbf4b5b05a3ff57
https://github.com/llvm/llvm-project/commit/29f6bdb65b724d4f9b96316b3cbf4b5b05a3ff57
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for wave_reduce_umax/umin (#186528)
Commit: abb7288c1e2a25d795ed008be6e62f951fc2cc37
https://github.com/llvm/llvm-project/commit/abb7288c1e2a25d795ed008be6e62f951fc2cc37
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for bswap, cvt_ubyte, rcp (#187093)
Commit: 99b93b586c5dc9ee4b0592628b1bab7d4dc4cb3a
https://github.com/llvm/llvm-project/commit/99b93b586c5dc9ee4b0592628b1bab7d4dc4cb3a
Author: Yoonseo Choi <yoonchoi at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.implicitarg.ptr.ll
Log Message:
-----------
[AMDGPU] fold a call to implictarg.ptr to a poison with no-implicitarg-ptr (#186925)
When a caller function with `amdgpu-no-implicitarg-ptr` calls
`llvm.amdgcn.implicitarg.ptr`, a poison value is returned.
Commit: dd4f5c69c539353aef37c233bae57668539a5f26
https://github.com/llvm/llvm-project/commit/dd4f5c69c539353aef37c233bae57668539a5f26
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIROps.td
Log Message:
-----------
[CIR] Fix missing RegionBranchTerminatorOpInterface declarations (#187112)
After https://github.com/llvm/llvm-project/pull/186832 operations with
RegionBranchTerminatorOpInterface needs to declare
`getMutableSuccessorOperands`.
Commit: e7e45cdcec913a4509df1fc8853580d5a7a91124
https://github.com/llvm/llvm-project/commit/e7e45cdcec913a4509df1fc8853580d5a7a91124
Author: Igor Wodiany <dev at wodiany.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[spirv][mlir] Add myself to CODEOWNERS (#187115)
Commit: 5706070eb8099beb53337dc1d7dafb5cfaa97a98
https://github.com/llvm/llvm-project/commit/5706070eb8099beb53337dc1d7dafb5cfaa97a98
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-icmp.s16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-salu-float.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sub.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uadde.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-usube.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Switch tests to new reg-bank-select and refresh checks (#186506)
Update AMDGPU GlobalISel tests to use -new-reg-bank-select. These tests
can be updated due to the existing implementation of legalization rules
for G_TRUNC.
Commit: 07542af9215ca5c376ae5e1fa92453dbab91aa54
https://github.com/llvm/llvm-project/commit/07542af9215ca5c376ae5e1fa92453dbab91aa54
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
M flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
Log Message:
-----------
[flang][OpenMP][CUDA] Place privatized device allocatable descriptors in managed memory (#187114)
When an OpenMP private clause privatizes a CUDA Fortran allocatable
device array, the Fortran descriptor for the private copy must be
accessible from both the host and the GPU. Without this change, the
descriptor lives on the host stack (via the OpenMP runtime's
CreateAlloca), which a CUF kernel running on the GPU cannot
dereference—resulting in cudaErrorIllegalAddress.
This patch modifies the omp.private init/dealloc region generation in
PrivateReductionUtils.cpp with three changes:
1. Allocate the descriptor in managed memory
2. Set allocator_idx = 2 on the null fir.embox
3. Free the managed descriptor
Source example:
```
real(8), device, allocatable :: adev(:)
!$omp parallel private(adev)
allocate(adev(10))
!$cuf kernel do <<<*,*>>>
do i = 1, 10
adev(i) = 1.0d0
end do
deallocate(adev)
!$omp end parallel
```
IR before this change:
```
omp.private {type = private} @... : !fir.box<!fir.heap<!fir.array<?xf64>>> init {
^bb0(%arg0: !fir.ref<!fir.box<...>>, %arg1: !fir.ref<!fir.box<...>>):
...
fir.if %3 {
%5 = fir.embox %1(%4) : (...) -> !fir.box<...> // no allocator_idx
fir.store %5 to %arg1 // host-stack alloca
}
omp.yield(%arg1 : ...) // yields host alloca
} dealloc {
...
fir.if %3 { fir.freemem %1 }
omp.yield // no cuf.free
}
```
IR after this change:
```
omp.private {type = private} @... : !fir.box<!fir.heap<!fir.array<?xf64>>> init {
^bb0(%arg0: !fir.ref<!fir.box<...>>, %arg1: !fir.ref<!fir.box<...>>):
%0 = cuf.alloc !fir.box<...> {data_attr = #cuf.cuda<device>} // managed memory
...
fir.if %4 {
%6 = fir.embox %2(%5) {allocator_idx = 2 : i32} // cudaMalloc
fir.store %6 to %0 // managed descriptor
}
omp.yield(%0 : ...) // yields managed ptr
} dealloc {
...
fir.if %3 { fir.freemem %1 }
cuf.free %arg0 : ... {data_attr = #cuf.cuda<device>} // free managed desc
omp.yield
}
```
---------
Co-authored-by: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Commit: cbedaa83e1820d349bd6148eab20f933ee4ff46e
https://github.com/llvm/llvm-project/commit/cbedaa83e1820d349bd6148eab20f933ee4ff46e
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/ValueObject/ValueObject.cpp
A lldb/test/API/lang/c/ptrauth/Makefile
A lldb/test/API/lang/c/ptrauth/TestPtrAuth.py
A lldb/test/API/lang/c/ptrauth/main.c
Log Message:
-----------
[lldb] Upstream arm64e support in ValueObject (#186906)
In #186001, I said the last large chunk of downstream PtrAuth code in
LLDB was the expression evaluator support. However, that wasn't
accurate, as we also have changes to thread this through ValueObject.
Commit: b03b58be38f9e89f44ef7785bcc8f9a823309c77
https://github.com/llvm/llvm-project/commit/b03b58be38f9e89f44ef7785bcc8f9a823309c77
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
R llvm/test/CodeGen/NVPTX/fence-cluster.ll
R llvm/test/CodeGen/NVPTX/fence-nocluster.ll
A llvm/test/CodeGen/NVPTX/fence.ll
M llvm/test/CodeGen/NVPTX/fence.py
Log Message:
-----------
[NVPTX] Fix scoped atomic when given runtime values (#185883)
Summary:
The `__scoped_` atomic builtins will expand to each supported scope in
the case of a runtime value. There are two problems:
1. Singlethreaded scope doesn't exist -> treat as no-op
2. Cluster is not supported on all tagets -> Widen to device scope
This is exactly how the AMDGPU backend handles it.
---------
Co-authored-by: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
Commit: 8f891a1bb3d77fa22bdbb32642dbb3912a143e4d
https://github.com/llvm/llvm-project/commit/8f891a1bb3d77fa22bdbb32642dbb3912a143e4d
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A llvm/test/tools/dsymutil/X86/fat-object-compatible-triple.test
M llvm/tools/dsymutil/BinaryHolder.cpp
Log Message:
-----------
[dsymutil] Fall back to compatible triple in BinaryHolder (#186893)
When dsymutil can't find an exact match in its BinaryHolder, fall back
to a compatible triple instead of erroring out completely.
rdar://171676213
Commit: d13eb6d16e188d817bcf0f537d515b70b8bc42b6
https://github.com/llvm/llvm-project/commit/d13eb6d16e188d817bcf0f537d515b70b8bc42b6
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_setreg (#186872)
Commit: 5bda6166684f05ab936f6f784c3c79081a6096fa
https://github.com/llvm/llvm-project/commit/5bda6166684f05ab936f6f784c3c79081a6096fa
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kernarg.segment.ptr.mir
Log Message:
-----------
[AMDGPU][NFC] Remove kernarg_segment_ptr regbankselect test (#186029)
The legalizer eliminates amdgcn_kernarg_segment_ptr before it reaches
RegBankSelect and there is already a pre-existing
llvm.amdgcn.kernarg.segment.ptr.ll test to test end to end
functionality.
Commit: d17ce9a6fbe4d5ee1f6f9a3dee10a35e106802f0
https://github.com/llvm/llvm-project/commit/d17ce9a6fbe4d5ee1f6f9a3dee10a35e106802f0
Author: Muzammiluddin Syed <muzasyed at amd.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
Log Message:
-----------
[ROCDL] Align mfma op description examples with the actual op (#186949)
Improves the example used in ROCDL mfma op descriptions to be more
relevant to its associated op. It is currently a random list of mfma
instructions which are replaced with a single example of the correct
intrinsic.
The description of `mfma.f32.16x16x16bf16.1k` previously :
```
Matrix fused multiply-add (MFMA) intrinsic. Computes `D = A * B + C`
with matrix operands. The `cbsz`, `abid`, and `blgp` attributes control
broadcast and block layout modes.
Example:
'''mlir
// MFMA with f32 inputs and 32-wide f32 accumulator.
%r0 = rocdl.mfma.f32.32x32x1f32 %a0, %b0, %c0, 0, 0, 0 :
(f32, f32, vector<32xf32>) -> vector<32xf32>
// MFMA with i8 inputs and 32-wide i32 accumulator.
%r1 = rocdl.mfma.i32.32x32x4i8 %a1, %a1, %c1, 0, 0, 0 :
(i32, i32, vector<32xi32>) -> vector<32xi32>
// MFMA with bf16 inputs and 32-wide f32 accumulator.
%r2 = rocdl.mfma.f32.32x32x2bf16 %a2, %a2, %c0, 0, 0, 0 :
(vector<2xi16>, vector<2xi16>, vector<32xf32>) -> vector<32xf32>
'''
```
The description of `mfma.f32.16x16x16bf16.1k` now:
```
Matrix fused multiply-add (MFMA) intrinsic. Computes `D = A * B + C`
with matrix operands. The `cbsz`, `abid`, and `blgp` attributes control
broadcast and block layout modes.
Example:
'''mlir
%r0 = mfma.f32.16x16x16bf16.1k %a0, %b0, %c0, 0, 0, 0 : (vector<4xi16>, vector<4xi16>, vector<4xf32>) -> vector<4xf32>
'''
```
Signed-off-by: Muzammiluddin Syed <muzasyed at amd.com>
Commit: 838b1ccdd90ba4fe5735fdfcefdd26e87ff53e48
https://github.com/llvm/llvm-project/commit/838b1ccdd90ba4fe5735fdfcefdd26e87ff53e48
Author: Michael Jones <michaelrj at google.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/config/baremetal/config.json
M libc/config/config.json
M libc/docs/configure.rst
M libc/src/__support/ctype_utils.h
Log Message:
-----------
[libc] Add a smaller b36_char_to_int (#180841)
For ASCII systems, b36_char_to_int gets compiled into a jump table. That
jump table ends up being pretty large because it covers the range from
'0' (48) to 'z' (122). On size-constrained systems that can assume
ASCII, this patch provides a new flag: LIBC_CONF_CTYPE_SMALLER_ASCII
that forces a smaller implementation that doesn't compile into a jump
table.
Commit: c1f6fd24aa637d6aadb72aa08bf3d8a14c961ed2
https://github.com/llvm/llvm-project/commit/c1f6fd24aa637d6aadb72aa08bf3d8a14c961ed2
Author: Ziqing Luo <ziqing_luo at apple.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
A clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
Log Message:
-----------
Reapply "[clang][ssaf] Add UnsafeBufferUsage summary extractor for functions (#182941)" (#186899)
This reverts commit 53739c75a8720aaef8032628267ed4fd050af038.
Reapply after module dependency issues are resolved.
(rdar://169191570)
Commit: ce805223940b23b998238229b4430cdbb9a6a66f
https://github.com/llvm/llvm-project/commit/ce805223940b23b998238229b4430cdbb9a6a66f
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A orc-rt/include/orc-rt/ExecutorProcessInfo.h
M orc-rt/lib/executor/CMakeLists.txt
A orc-rt/lib/executor/ExecutorProcessInfo.cpp
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/ExecutorProcessInfoTest.cpp
Log Message:
-----------
[orc-rt] Add ExecutorProcessInfo APIs. (#187147)
ExecutorProcessInfo provides information about the process in which the
ORC runtime is running.
Commit: c78c5df960fb32b77be939694880f00796ef3485
https://github.com/llvm/llvm-project/commit/c78c5df960fb32b77be939694880f00796ef3485
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
M mlir/test/Target/SPIRV/tosa-ops.mlir
Log Message:
-----------
[mlir][spirv] Add comparison and elementwise ternary ops in TOSA Ext Inst Set (#186356)
This patch introduces the following comparison and elementwise ternary
operators:
spirv.Tosa.Select
spirv.Tosa.Equal
spirv.Tosa.Greater
spirv.Tosa.GreaterEqual
Also dialect and serialization round-trip tests have been added.
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: f2605193689fbea9525ade0c948acbc392094341
https://github.com/llvm/llvm-project/commit/f2605193689fbea9525ade0c948acbc392094341
Author: Pedro Lobo <pedro.lobo at tecnico.ulisboa.pt>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/unittests/Analysis/IR2VecTest.cpp
Log Message:
-----------
[IR2Vec] Remove redundant death test for invalid TypeID (#187143)
The `NumericIDMapInvalidInputs` test has two `EXPECT_DEATH` calls for
invalid `Type::TypeID` values. The second value (`MaxTypeIDs + 10`) is
redundant: `getIndex` has a one-sided assert, so any value greater or
equal to `MaxTypeIDs` takes the same code path as the value already
tested by the first call.
The test began failing after
https://github.com/llvm/llvm-project/pull/186888, which introduced
`ByteTyID`. The value of `MaxTypeIDs + 10` became 32, which falls
outside the representable range of the `enum`, making the cast UB. To
avoid accidentally triggering this test when adding new types, it should
probably be removed.
Commit: e7326007960bea3c343e9b580fd869a9e6f9bb4d
https://github.com/llvm/llvm-project/commit/e7326007960bea3c343e9b580fd869a9e6f9bb4d
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/lib/executor/ExecutorProcessInfo.cpp
Log Message:
-----------
[orc-rt] Require non-empty triples and power-of-two page sizes. (#187151)
Commit: 3482480087ed1e660ddc5c7004e4b480ce1b7318
https://github.com/llvm/llvm-project/commit/3482480087ed1e660ddc5c7004e4b480ce1b7318
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add an ExecutorProcessInfo field to Session. (#187155)
This will provide a central location for ORC runtime code (and ORC
runtime API clients) to find executor process information.
Commit: d9eba8b3550d3e2bab4ff99e672cff857cef5ba1
https://github.com/llvm/llvm-project/commit/d9eba8b3550d3e2bab4ff99e672cff857cef5ba1
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/source/Core/Module.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
Log Message:
-----------
[lldb][Module] Don't try to locate scripting resources without a ScriptInterpreter (#187091)
I'm in the process of moving `SanitizedScriptingModuleName` into
`ScriptInterpreter` as a `virtual` API. The nullptr check inside the
constructor made that more difficult because it implied we may not have
a `ScriptInterpreter` available to call the sanitization API on. Really
the `nullptr` check is redundant because even if we succesfully sanitize
and then locate some scripts, `Module::LoadScriptingResourceInTarget`
bails out if we don't have a `ScriptInterpreter`.
This patch moves the early exit in `LoadScriptingResourceInTarget` to
before we make the call to `LocateExecutableScriptingResources`. That
way we ensure we never get to `SanitizedScriptingModuleName` without a
valid `ScriptInterpreter`.
Commit: f6f57f0da6bf47e778af107ea7348f5d9959d41a
https://github.com/llvm/llvm-project/commit/f6f57f0da6bf47e778af107ea7348f5d9959d41a
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/test/CIR/CodeGen/arg-attrs.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/lambda.cpp
M clang/test/CIR/CodeGen/misc-attrs.cpp
M clang/test/CIR/CodeGen/noreturn.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/ret-attrs.cpp
M clang/test/CIR/CodeGen/side-effect.cpp
M clang/test/CIR/CodeGen/ternary.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
M clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp
M clang/test/CIR/CodeGenHIP/simple.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/data-copy-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/routine-anon-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-bind.c
M clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
M clang/test/CIR/CodeGenOpenACC/routine-clauses.cpp
M clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals2.cpp
M clang/test/CIR/CodeGenOpenACC/routine-locals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-members.cpp
M clang/test/CIR/CodeGenOpenACC/routine-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-templ.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
Log Message:
-----------
[CIR] Add handling for nounwind attributes (#187096)
This adds support for setting the `nounwind` attribute on declarations
and call sites in CIR.
Currently, we have both `nothrow` and `nounwind` in CIR. I've chosen to
use `nothrow` in this PR because it was the most common. I plan to
combine them, using `nounwind` everywhere since that's the LLVM IR
spelling, but that's a more invasive so I'd like to defer it to a future
change.
Commit: d49701bba36f9747fe241cbab22f233af978520d
https://github.com/llvm/llvm-project/commit/d49701bba36f9747fe241cbab22f233af978520d
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
A clang/test/CIR/CodeGen/abstract-cond.c
M clang/test/CIR/CodeGen/ternary-throw.cpp
Log Message:
-----------
[CIR] Implement abstract conditional operator handling for aggregates (#186284)
This implements AggExprEmitter::VisitAbstractConditionalOperator for
CIR.
Commit: 52089f895eb5e605ce8db646bc304a9f72fcbb02
https://github.com/llvm/llvm-project/commit/52089f895eb5e605ce8db646bc304a9f72fcbb02
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-complex-mask.ll
Log Message:
-----------
[LV] Replace remaining LogicalAnd to vp.merge in EVL optimization. (#184068)
This patch replace the remaining LogicalAnd to vp.merge in the second
pass to not break the `m_RemoveMask` pattern in the optimizeMaskToEVL.
This can help to remove header mask for FindLast reduction (CSA) loops.
PR: https://github.com/llvm/llvm-project/pull/184068
Commit: c727cd9a4b21cbaa5b5c2b1cfe8d4a56c72e3da1
https://github.com/llvm/llvm-project/commit/c727cd9a4b21cbaa5b5c2b1cfe8d4a56c72e3da1
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
R orc-rt/include/orc-rt/ControllerInterface.h
M orc-rt/include/orc-rt/Session.h
A orc-rt/include/orc-rt/SimpleSymbolTable.h
M orc-rt/include/orc-rt/sps-ci/AllSPSCI.h
M orc-rt/include/orc-rt/sps-ci/SimpleNativeMemoryMapSPSCI.h
M orc-rt/lib/executor/CMakeLists.txt
R orc-rt/lib/executor/ControllerInterface.cpp
A orc-rt/lib/executor/SimpleSymbolTable.cpp
M orc-rt/lib/executor/sps-ci/AllSPSCI.cpp
M orc-rt/lib/executor/sps-ci/SimpleNativeMemoryMapSPSCI.cpp
M orc-rt/unittests/CMakeLists.txt
R orc-rt/unittests/ControllerInterfaceTest.cpp
M orc-rt/unittests/SessionTest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
A orc-rt/unittests/SimpleSymbolTableTest.cpp
Log Message:
-----------
[orc-rt] Rename ControllerInterface to SimpleSymbolTable. NFCI. (#187164)
This type will be used more contexts than just the controller interface.
Commit: 3eb8b788b7df8874f3d73cd24f500fe36ceb4885
https://github.com/llvm/llvm-project/commit/3eb8b788b7df8874f3d73cd24f500fe36ceb4885
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-complex-mask.ll
Log Message:
-----------
Revert "[LV] Replace remaining LogicalAnd to vp.merge in EVL optimization." (#187170)
Reverts llvm/llvm-project#184068
This hit the cost model assertion in rva23 stage2 build bot.
https://lab.llvm.org/buildbot/#/builders/213/builds/2497
Commit: 8b265cf270258f8c342aa7fdbbc588991a72572f
https://github.com/llvm/llvm-project/commit/8b265cf270258f8c342aa7fdbbc588991a72572f
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
M llvm/test/CodeGen/NVPTX/atomics.ll
Log Message:
-----------
[NVPTX][AutoUpgrade] atom.load intrinsics should be autoupgraded to monotonic atomicrmw for NVPTX (#187140)
Prior to https://github.com/llvm/llvm-project/pull/179553, the seq_cst
qualifier was being ignored. The expected codegen for these intrinsics
is `atom.relaxed`- which corresponds to `Monotonic`. The fix does to
AutoUpgrade what https://github.com/llvm/llvm-project/pull/185822 does
to clang.
Commit: 1fee51c40b47fa39e47fc19f7783c233bd010921
https://github.com/llvm/llvm-project/commit/1fee51c40b47fa39e47fc19f7783c233bd010921
Author: hanbeom <kese111 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/test/CodeGen/WebAssembly/load-ext.ll
M llvm/test/CodeGen/WebAssembly/offset-fastisel.ll
Log Message:
-----------
[WebAssembly] Fold sign-extending shifts into signed loads in FastISel (#185906)
WebAssembly FastISel currently fails to fold sign-extension patterns
composed of zero-extending loads followed by shift operations. This
results in redundant shift and constant instructions in the output.
Before:
i32.load8_u $push3=, 0($0)
i32.const $push0=, 24
i32.shl $push1=, $pop3, $pop0
i32.const $push4=, 24
i32.shr_s $push2=, $pop1, $pop4
The matched shift instruction sequence is removed and safely folded into
a single sign-extending load, erasing the dead code via the
MachineBasicBlock iterator.
After:
i32.load8_s $push0=, 0($0)
Fixed: #184302
Commit: dbdf1accf55dabc4b9bab96b08a8ce730b7368f3
https://github.com/llvm/llvm-project/commit/dbdf1accf55dabc4b9bab96b08a8ce730b7368f3
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/SimpleSymbolTable.h
M orc-rt/lib/executor/Session.cpp
M orc-rt/lib/executor/SimpleSymbolTable.cpp
M orc-rt/lib/executor/sps-ci/SimpleNativeMemoryMapSPSCI.cpp
M orc-rt/unittests/SessionTest.cpp
M orc-rt/unittests/SimpleSymbolTableTest.cpp
Log Message:
-----------
[orc-rt] Rename SimpleSymbolTable::addSymbolsUnique, relax error cond… (#187171)
…ition.
Renames the SimpleSymbolTable addSymbolsUnique method to addUnique. The
new class name (from c727cd9a4b2) already implies that we're adding
symbols.
This commit also relaxes the error condition for addUnique: Rather than
rejecting any duplicate symbols, it only rejects symbols that were
previously added with a different address. This makes it safe to add the
same symbol(s) multiple time, as long as all definitions point to the
same address. The intent of this is to allow ORC runtime components to
unconditionally add their interfaces to symbols, even if that interface
might have been added previously.
Commit: ae9b5a4bcad8d048f4b0870bfac224bd4d22e1fd
https://github.com/llvm/llvm-project/commit/ae9b5a4bcad8d048f4b0870bfac224bd4d22e1fd
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/docs/InternalsManual.rst
M clang/include/clang/Basic/DiagnosticFrontendKinds.td
M clang/include/clang/Basic/DiagnosticOptions.def
M clang/include/clang/Frontend/TextDiagnosticBuffer.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Options/Options.td
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
A clang/test/Frontend/verify-directives-full-match.cpp
A clang/test/Frontend/verify-directives-one-diag.cpp
A clang/test/Frontend/verify-directives-order.cpp
A clang/test/Frontend/verify-directives-wildcard.cpp
Log Message:
-----------
[clang] Add `-verify-directives` cc1 flag (#179835)
Matheus once told me that the various rules I enforce in C++ DR tests
should be checked automatically. This is the patch to check some of
them.
`-verify-directives` is a cc1 flag that checks how `expected` directives
themselves are written. It enforces the following rules on top of
`-verify` mode:
1. Directives have to fully match diagnostic text (but regular
expressions are still allowed).
2. Lexical order of directives must match the order in which diagnostics
are emitted.
3. Each directive must match exactly one diagnostic.
4. Directives has to specify exact source location of the diagnostic,
i.e. wildcards (`*`) are not allowed.
The second rule (about order) is the most significant: it doesn't allow
to e.g. have `expected-note {{declared here}}` somewhere far away from
`expected-error` it attaches to. It also enforces order between notes
themselves.
(This patch comes with rather extensive documentation in the internals
manual. Check it out for more details.)
See #179813 and #179674 for impact of enforcing this mode in C++ DR
tests. Despite my best efforts, this flag uncovered a significant number
of deficiencies that I missed.
I've been already enforcing those rules in C++ DR tests, so I'm going to
roll this out there when #179813 is merged. I did my best to make UX
palatable, so that it can be used outside of C++ DR tests. My hope is
that once this is merged, reviewers can go "make this test work with
`-verify-directives`" instead of painstakingly reconstructing compiler
output from directives scattered all across the test file.
---------
Co-authored-by: Aaron Ballman <aaron at aaronballman.com>
Co-authored-by: Erich Keane <ekeane at nvidia.com>
Commit: 350385e7923ef4befc013da8652443e1ab48cda7
https://github.com/llvm/llvm-project/commit/350385e7923ef4befc013da8652443e1ab48cda7
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libclc/clc/include/clc/address_space/clc_qualifier.h
M libclc/clc/include/clc/async/clc_prefetch.h
M libclc/clc/include/clc/atomic/clc_atomic_compare_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_dec.h
M libclc/clc/include/clc/atomic/clc_atomic_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_add.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_and.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_max.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_min.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_or.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_sub.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_xor.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_clear.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_test_and_set.h
M libclc/clc/include/clc/atomic/clc_atomic_inc.h
M libclc/clc/include/clc/atomic/clc_atomic_load.h
M libclc/clc/include/clc/atomic/clc_atomic_store.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/collective/clc_work_group_broadcast.h
M libclc/clc/include/clc/collective/clc_work_group_reduce.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_step.h
M libclc/clc/include/clc/geometric/binary_def.inc
M libclc/clc/include/clc/geometric/clc_cross.h
M libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_fast_distance.h
M libclc/clc/include/clc/geometric/clc_fast_length.h
M libclc/clc/include/clc/geometric/clc_fast_normalize.h
M libclc/clc/include/clc/geometric/clc_length.h
M libclc/clc/include/clc/geometric/clc_normalize.h
M libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_bit_reverse.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_signed.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_unsigned.h
M libclc/clc/include/clc/integer/clc_bitfield_insert.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
M libclc/clc/include/clc/math/clc_cbrt.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_div_cr.h
M libclc/clc/include/clc/math/clc_div_fast.h
M libclc/clc/include/clc/math/clc_ep.h
M libclc/clc/include/clc/math/clc_ep_log.h
M libclc/clc/include/clc/math/clc_erf.h
M libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
M libclc/clc/include/clc/math/clc_exp2_fast.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
M libclc/clc/include/clc/math/clc_half_cos.h
M libclc/clc/include/clc/math/clc_half_divide.h
M libclc/clc/include/clc/math/clc_half_exp.h
M libclc/clc/include/clc/math/clc_half_exp10.h
M libclc/clc/include/clc/math/clc_half_exp2.h
M libclc/clc/include/clc/math/clc_half_log.h
M libclc/clc/include/clc/math/clc_half_log10.h
M libclc/clc/include/clc/math/clc_half_log2.h
M libclc/clc/include/clc/math/clc_half_powr.h
M libclc/clc/include/clc/math/clc_half_recip.h
M libclc/clc/include/clc/math/clc_half_rsqrt.h
M libclc/clc/include/clc/math/clc_half_sin.h
M libclc/clc/include/clc/math/clc_half_sqrt.h
M libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_ldexp.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
M libclc/clc/include/clc/math/clc_log2_fast.h
M libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_maxmag.h
M libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_nextdown.h
M libclc/clc/include/clc/math/clc_nextup.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_recip_fast.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sin.h
M libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_sqrt_cr.h
M libclc/clc/include/clc/math/clc_sqrt_fast.h
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/mem_fence/clc_mem_fence.h
M libclc/clc/include/clc/misc/clc_shuffle.h
M libclc/clc/include/clc/misc/clc_shuffle2.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
M libclc/clc/include/clc/relational/clc_all.h
M libclc/clc/include/clc/relational/clc_any.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isequal.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isinf.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnan.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_issubnormal.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_select.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/include/clc/shared/binary_decl_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def.inc
M libclc/clc/include/clc/shared/binary_def_scalarize.inc
M libclc/clc/include/clc/shared/binary_def_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
M libclc/clc/include/clc/shared/clc_clamp.h
M libclc/clc/include/clc/shared/clc_less_aligned_types.h
M libclc/clc/include/clc/shared/clc_max.h
M libclc/clc/include/clc/shared/clc_min.h
M libclc/clc/include/clc/shared/clc_vload.h
M libclc/clc/include/clc/shared/clc_vstore.h
M libclc/clc/include/clc/shared/ternary_def.inc
M libclc/clc/include/clc/shared/ternary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def.inc
M libclc/clc/include/clc/shared/unary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/unary_def_with_ptr_scalarize.inc
M libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
M libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
M libclc/clc/include/clc/workitem/clc_get_enqueued_local_size.h
M libclc/clc/include/clc/workitem/clc_get_global_id.h
M libclc/clc/include/clc/workitem/clc_get_global_offset.h
M libclc/clc/include/clc/workitem/clc_get_global_size.h
M libclc/clc/include/clc/workitem/clc_get_group_id.h
M libclc/clc/include/clc/workitem/clc_get_local_id.h
M libclc/clc/include/clc/workitem/clc_get_local_linear_id.h
M libclc/clc/include/clc/workitem/clc_get_local_size.h
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_num_groups.h
M libclc/clc/include/clc/workitem/clc_get_num_sub_groups.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_local_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_work_dim.h
M libclc/clc/lib/amdgpu/math/clc_exp.cl
M libclc/clc/lib/amdgpu/math/clc_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_exp2_fast.cl
M libclc/clc/lib/amdgpu/math/clc_frexp.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_half_log.cl
M libclc/clc/lib/amdgpu/math/clc_half_log10.cl
M libclc/clc/lib/amdgpu/math/clc_half_log2.cl
M libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
M libclc/clc/lib/amdgpu/math/clc_half_recip.cl
M libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
M libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/amdgpu/math/clc_ldexp.cl
M libclc/clc/lib/amdgpu/math/clc_log2_fast.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_native_log10.cl
M libclc/clc/lib/amdgpu/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl
M libclc/clc/lib/amdgpu/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_global_offset.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_group_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_local_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_work_dim.cl
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/async/clc_prefetch.cl
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
M libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_add.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_and.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_max.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_min.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_or.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_sub.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_xor.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_clear.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_test_and_set.cl
M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
M libclc/clc/lib/generic/atomic/clc_atomic_load.cl
M libclc/clc/lib/generic/atomic/clc_atomic_store.cl
M libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
M libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
M libclc/clc/lib/generic/common/clc_degrees.cl
M libclc/clc/lib/generic/common/clc_radians.cl
M libclc/clc/lib/generic/common/clc_sign.cl
M libclc/clc/lib/generic/common/clc_smoothstep.cl
M libclc/clc/lib/generic/common/clc_step.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2int.cl
M libclc/clc/lib/generic/conversion/clc_convert_int2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_integer.cl
M libclc/clc/lib/generic/geometric/clc_cross.cl
M libclc/clc/lib/generic/geometric/clc_distance.cl
M libclc/clc/lib/generic/geometric/clc_dot.cl
M libclc/clc/lib/generic/geometric/clc_fast_distance.cl
M libclc/clc/lib/generic/geometric/clc_fast_length.cl
M libclc/clc/lib/generic/geometric/clc_fast_normalize.cl
M libclc/clc/lib/generic/geometric/clc_length.cl
M libclc/clc/lib/generic/geometric/clc_normalize.cl
M libclc/clc/lib/generic/integer/clc_abs.cl
M libclc/clc/lib/generic/integer/clc_abs_diff.cl
M libclc/clc/lib/generic/integer/clc_add_sat.cl
M libclc/clc/lib/generic/integer/clc_bit_reverse.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_signed.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_unsigned.cl
M libclc/clc/lib/generic/integer/clc_bitfield_insert.cl
M libclc/clc/lib/generic/integer/clc_clz.cl
M libclc/clc/lib/generic/integer/clc_ctz.cl
M libclc/clc/lib/generic/integer/clc_hadd.cl
M libclc/clc/lib/generic/integer/clc_mad24.cl
M libclc/clc/lib/generic/integer/clc_mad_sat.cl
M libclc/clc/lib/generic/integer/clc_mul24.cl
M libclc/clc/lib/generic/integer/clc_mul_hi.cl
M libclc/clc/lib/generic/integer/clc_popcount.cl
M libclc/clc/lib/generic/integer/clc_rhadd.cl
M libclc/clc/lib/generic/integer/clc_rotate.cl
M libclc/clc/lib/generic/integer/clc_sub_sat.cl
M libclc/clc/lib/generic/integer/clc_upsample.cl
M libclc/clc/lib/generic/math/clc_acos.cl
M libclc/clc/lib/generic/math/clc_acosh.cl
M libclc/clc/lib/generic/math/clc_acospi.cl
M libclc/clc/lib/generic/math/clc_asin.cl
M libclc/clc/lib/generic/math/clc_asinh.cl
M libclc/clc/lib/generic/math/clc_asinpi.cl
M libclc/clc/lib/generic/math/clc_atan.cl
M libclc/clc/lib/generic/math/clc_atan2.cl
M libclc/clc/lib/generic/math/clc_atan2pi.cl
M libclc/clc/lib/generic/math/clc_atanh.cl
M libclc/clc/lib/generic/math/clc_atanpi.cl
M libclc/clc/lib/generic/math/clc_cbrt.cl
M libclc/clc/lib/generic/math/clc_ceil.cl
M libclc/clc/lib/generic/math/clc_copysign.cl
M libclc/clc/lib/generic/math/clc_cos.cl
M libclc/clc/lib/generic/math/clc_cosh.cl
M libclc/clc/lib/generic/math/clc_cospi.cl
M libclc/clc/lib/generic/math/clc_div_cr.cl
M libclc/clc/lib/generic/math/clc_div_fast.cl
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep_log.cl
M libclc/clc/lib/generic/math/clc_erf.cl
M libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_exp.cl
M libclc/clc/lib/generic/math/clc_exp10.cl
M libclc/clc/lib/generic/math/clc_exp2.cl
M libclc/clc/lib/generic/math/clc_exp2_fast.cl
M libclc/clc/lib/generic/math/clc_exp_helper.cl
M libclc/clc/lib/generic/math/clc_expm1.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
M libclc/clc/lib/generic/math/clc_fdim.cl
M libclc/clc/lib/generic/math/clc_floor.cl
M libclc/clc/lib/generic/math/clc_fma.cl
M libclc/clc/lib/generic/math/clc_fmax.cl
M libclc/clc/lib/generic/math/clc_fmin.cl
M libclc/clc/lib/generic/math/clc_fmod.cl
M libclc/clc/lib/generic/math/clc_fract.cl
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_frexp.inc
M libclc/clc/lib/generic/math/clc_half_cos.cl
M libclc/clc/lib/generic/math/clc_half_divide.cl
M libclc/clc/lib/generic/math/clc_half_exp.cl
M libclc/clc/lib/generic/math/clc_half_exp10.cl
M libclc/clc/lib/generic/math/clc_half_exp2.cl
M libclc/clc/lib/generic/math/clc_half_log.cl
M libclc/clc/lib/generic/math/clc_half_log10.cl
M libclc/clc/lib/generic/math/clc_half_log2.cl
M libclc/clc/lib/generic/math/clc_half_powr.cl
M libclc/clc/lib/generic/math/clc_half_recip.cl
M libclc/clc/lib/generic/math/clc_half_rsqrt.cl
M libclc/clc/lib/generic/math/clc_half_sin.cl
M libclc/clc/lib/generic/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/math/clc_ilogb.cl
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/math/clc_lgamma.cl
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log1p.cl
M libclc/clc/lib/generic/math/clc_log2.cl
M libclc/clc/lib/generic/math/clc_log2_fast.cl
M libclc/clc/lib/generic/math/clc_log_base.h
M libclc/clc/lib/generic/math/clc_logb.cl
M libclc/clc/lib/generic/math/clc_mad.cl
M libclc/clc/lib/generic/math/clc_maxmag.cl
M libclc/clc/lib/generic/math/clc_minmag.cl
M libclc/clc/lib/generic/math/clc_modf.cl
M libclc/clc/lib/generic/math/clc_nan.cl
M libclc/clc/lib/generic/math/clc_native_cos.cl
M libclc/clc/lib/generic/math/clc_native_divide.cl
M libclc/clc/lib/generic/math/clc_native_exp.cl
M libclc/clc/lib/generic/math/clc_native_exp10.cl
M libclc/clc/lib/generic/math/clc_native_exp2.cl
M libclc/clc/lib/generic/math/clc_native_log.cl
M libclc/clc/lib/generic/math/clc_native_log10.cl
M libclc/clc/lib/generic/math/clc_native_log2.cl
M libclc/clc/lib/generic/math/clc_native_powr.cl
M libclc/clc/lib/generic/math/clc_native_recip.cl
M libclc/clc/lib/generic/math/clc_native_rsqrt.cl
M libclc/clc/lib/generic/math/clc_native_sin.cl
M libclc/clc/lib/generic/math/clc_native_sqrt.cl
M libclc/clc/lib/generic/math/clc_native_tan.cl
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_nextdown.cl
M libclc/clc/lib/generic/math/clc_nextup.cl
M libclc/clc/lib/generic/math/clc_powr.cl
M libclc/clc/lib/generic/math/clc_recip_fast.cl
M libclc/clc/lib/generic/math/clc_remainder.cl
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.cl
M libclc/clc/lib/generic/math/clc_round.cl
M libclc/clc/lib/generic/math/clc_rsqrt.cl
M libclc/clc/lib/generic/math/clc_sin.cl
M libclc/clc/lib/generic/math/clc_sincos.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sinh.cl
M libclc/clc/lib/generic/math/clc_sinpi.cl
M libclc/clc/lib/generic/math/clc_sqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt_cr.cl
M libclc/clc/lib/generic/math/clc_sqrt_fast.cl
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/math/clc_tan.cl
M libclc/clc/lib/generic/math/clc_tanh.cl
M libclc/clc/lib/generic/math/clc_tanpi.cl
M libclc/clc/lib/generic/math/clc_tgamma.cl
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_all.cl
M libclc/clc/lib/generic/relational/clc_any.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/generic/relational/clc_isequal.cl
M libclc/clc/lib/generic/relational/clc_isfinite.cl
M libclc/clc/lib/generic/relational/clc_isgreater.cl
M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
M libclc/clc/lib/generic/relational/clc_isinf.cl
M libclc/clc/lib/generic/relational/clc_isless.cl
M libclc/clc/lib/generic/relational/clc_islessequal.cl
M libclc/clc/lib/generic/relational/clc_islessgreater.cl
M libclc/clc/lib/generic/relational/clc_isnan.cl
M libclc/clc/lib/generic/relational/clc_isnormal.cl
M libclc/clc/lib/generic/relational/clc_isnotequal.cl
M libclc/clc/lib/generic/relational/clc_isordered.cl
M libclc/clc/lib/generic/relational/clc_issubnormal.cl
M libclc/clc/lib/generic/relational/clc_isunordered.cl
M libclc/clc/lib/generic/relational/clc_select.cl
M libclc/clc/lib/generic/relational/clc_signbit.cl
M libclc/clc/lib/generic/shared/clc_clamp.cl
M libclc/clc/lib/generic/shared/clc_max.cl
M libclc/clc/lib/generic/shared/clc_min.cl
M libclc/clc/lib/generic/shared/clc_vload.cl
M libclc/clc/lib/generic/shared/clc_vstore.cl
M libclc/clc/lib/generic/workitem/clc_get_global_id.cl
M libclc/clc/lib/generic/workitem/clc_get_num_sub_groups.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_log.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_rsqrt.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sinpi.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sqrt.cl
M libclc/clc/lib/ptx-nvidiacl/relational/clc_isinf.cl
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_group_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_max_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_num_groups.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_sub_group_local_id.cl
M libclc/clc/lib/spirv/math/clc_fmax.cl
M libclc/clc/lib/spirv/math/clc_fmin.cl
M libclc/opencl/include/clc/opencl/convert.h
M libclc/opencl/include/clc/opencl/opencl-base.h
M libclc/opencl/include/clc/opencl/synchronization/utils.h
M libclc/opencl/include/clc/opencl/utils.h
M libclc/opencl/lib/amdgpu/async/wait_group_events.cl
M libclc/opencl/lib/clspv/conversion/convert_float2float.cl
M libclc/opencl/lib/clspv/conversion/convert_float2int.cl
M libclc/opencl/lib/clspv/conversion/convert_int2float.cl
M libclc/opencl/lib/clspv/conversion/convert_integer.cl
M libclc/opencl/lib/clspv/math/fma.cl
M libclc/opencl/lib/clspv/shared/vstore_half.cl
M libclc/opencl/lib/generic/async/async_work_group_copy.cl
M libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
M libclc/opencl/lib/generic/async/prefetch.cl
M libclc/opencl/lib/generic/async/wait_group_events.cl
M libclc/opencl/lib/generic/atomic/atom_add.cl
M libclc/opencl/lib/generic/atomic/atom_and.cl
M libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atom_dec.cl
M libclc/opencl/lib/generic/atomic/atom_inc.cl
M libclc/opencl/lib/generic/atomic/atom_max.cl
M libclc/opencl/lib/generic/atomic/atom_min.cl
M libclc/opencl/lib/generic/atomic/atom_or.cl
M libclc/opencl/lib/generic/atomic/atom_sub.cl
M libclc/opencl/lib/generic/atomic/atom_xchg.cl
M libclc/opencl/lib/generic/atomic/atom_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_add.cl
M libclc/opencl/lib/generic/atomic/atomic_and.cl
M libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_strong.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_weak.cl
M libclc/opencl/lib/generic/atomic/atomic_dec.cl
M libclc/opencl/lib/generic/atomic/atomic_exchange.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_and.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_max.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_min.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_or.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_clear.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_test_and_set.cl
M libclc/opencl/lib/generic/atomic/atomic_inc.cl
M libclc/opencl/lib/generic/atomic/atomic_init.cl
M libclc/opencl/lib/generic/atomic/atomic_load.cl
M libclc/opencl/lib/generic/atomic/atomic_max.cl
M libclc/opencl/lib/generic/atomic/atomic_min.cl
M libclc/opencl/lib/generic/atomic/atomic_or.cl
M libclc/opencl/lib/generic/atomic/atomic_store.cl
M libclc/opencl/lib/generic/atomic/atomic_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_xchg.cl
M libclc/opencl/lib/generic/atomic/atomic_xor.cl
M libclc/opencl/lib/generic/collective/work_group_broadcast.cl
M libclc/opencl/lib/generic/collective/work_group_reduce.cl
M libclc/opencl/lib/generic/common/degrees.cl
M libclc/opencl/lib/generic/common/mix.cl
M libclc/opencl/lib/generic/common/radians.cl
M libclc/opencl/lib/generic/common/sign.cl
M libclc/opencl/lib/generic/common/smoothstep.cl
M libclc/opencl/lib/generic/common/step.cl
M libclc/opencl/lib/generic/conversion/convert_float2float.cl
M libclc/opencl/lib/generic/conversion/convert_float2int.cl
M libclc/opencl/lib/generic/conversion/convert_int2float.cl
M libclc/opencl/lib/generic/conversion/convert_integer.cl
M libclc/opencl/lib/generic/geometric/cross.cl
M libclc/opencl/lib/generic/geometric/distance.cl
M libclc/opencl/lib/generic/geometric/dot.cl
M libclc/opencl/lib/generic/geometric/fast_distance.cl
M libclc/opencl/lib/generic/geometric/fast_length.cl
M libclc/opencl/lib/generic/geometric/fast_normalize.cl
M libclc/opencl/lib/generic/geometric/length.cl
M libclc/opencl/lib/generic/geometric/normalize.cl
M libclc/opencl/lib/generic/integer/abs.cl
M libclc/opencl/lib/generic/integer/abs_diff.cl
M libclc/opencl/lib/generic/integer/add_sat.cl
M libclc/opencl/lib/generic/integer/bit_reverse.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_signed.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_unsigned.cl
M libclc/opencl/lib/generic/integer/bitfield_insert.cl
M libclc/opencl/lib/generic/integer/clz.cl
M libclc/opencl/lib/generic/integer/ctz.cl
M libclc/opencl/lib/generic/integer/hadd.cl
M libclc/opencl/lib/generic/integer/mad24.cl
M libclc/opencl/lib/generic/integer/mad_hi.cl
M libclc/opencl/lib/generic/integer/mad_sat.cl
M libclc/opencl/lib/generic/integer/mul24.cl
M libclc/opencl/lib/generic/integer/mul_hi.cl
M libclc/opencl/lib/generic/integer/popcount.cl
M libclc/opencl/lib/generic/integer/rhadd.cl
M libclc/opencl/lib/generic/integer/rotate.cl
M libclc/opencl/lib/generic/integer/sub_sat.cl
M libclc/opencl/lib/generic/integer/upsample.cl
M libclc/opencl/lib/generic/math/acos.cl
M libclc/opencl/lib/generic/math/acosh.cl
M libclc/opencl/lib/generic/math/acospi.cl
M libclc/opencl/lib/generic/math/asin.cl
M libclc/opencl/lib/generic/math/asinh.cl
M libclc/opencl/lib/generic/math/asinpi.cl
M libclc/opencl/lib/generic/math/atan.cl
M libclc/opencl/lib/generic/math/atan2.cl
M libclc/opencl/lib/generic/math/atan2pi.cl
M libclc/opencl/lib/generic/math/atanh.cl
M libclc/opencl/lib/generic/math/atanpi.cl
M libclc/opencl/lib/generic/math/cbrt.cl
M libclc/opencl/lib/generic/math/ceil.cl
M libclc/opencl/lib/generic/math/copysign.cl
M libclc/opencl/lib/generic/math/cos.cl
M libclc/opencl/lib/generic/math/cosh.cl
M libclc/opencl/lib/generic/math/cospi.cl
M libclc/opencl/lib/generic/math/erf.cl
M libclc/opencl/lib/generic/math/erfc.cl
M libclc/opencl/lib/generic/math/exp.cl
M libclc/opencl/lib/generic/math/exp10.cl
M libclc/opencl/lib/generic/math/exp2.cl
M libclc/opencl/lib/generic/math/expm1.cl
M libclc/opencl/lib/generic/math/fabs.cl
M libclc/opencl/lib/generic/math/fdim.cl
M libclc/opencl/lib/generic/math/floor.cl
M libclc/opencl/lib/generic/math/fma.cl
M libclc/opencl/lib/generic/math/fmax.cl
M libclc/opencl/lib/generic/math/fmin.cl
M libclc/opencl/lib/generic/math/fmod.cl
M libclc/opencl/lib/generic/math/fract.cl
M libclc/opencl/lib/generic/math/frexp.cl
M libclc/opencl/lib/generic/math/half_cos.cl
M libclc/opencl/lib/generic/math/half_divide.cl
M libclc/opencl/lib/generic/math/half_exp.cl
M libclc/opencl/lib/generic/math/half_exp10.cl
M libclc/opencl/lib/generic/math/half_exp2.cl
M libclc/opencl/lib/generic/math/half_log.cl
M libclc/opencl/lib/generic/math/half_log10.cl
M libclc/opencl/lib/generic/math/half_log2.cl
M libclc/opencl/lib/generic/math/half_powr.cl
M libclc/opencl/lib/generic/math/half_recip.cl
M libclc/opencl/lib/generic/math/half_rsqrt.cl
M libclc/opencl/lib/generic/math/half_sin.cl
M libclc/opencl/lib/generic/math/half_sqrt.cl
M libclc/opencl/lib/generic/math/half_tan.cl
M libclc/opencl/lib/generic/math/hypot.cl
M libclc/opencl/lib/generic/math/ilogb.cl
M libclc/opencl/lib/generic/math/ldexp.cl
M libclc/opencl/lib/generic/math/lgamma.cl
M libclc/opencl/lib/generic/math/lgamma_r.cl
M libclc/opencl/lib/generic/math/log.cl
M libclc/opencl/lib/generic/math/log10.cl
M libclc/opencl/lib/generic/math/log1p.cl
M libclc/opencl/lib/generic/math/log2.cl
M libclc/opencl/lib/generic/math/logb.cl
M libclc/opencl/lib/generic/math/mad.cl
M libclc/opencl/lib/generic/math/maxmag.cl
M libclc/opencl/lib/generic/math/minmag.cl
M libclc/opencl/lib/generic/math/modf.cl
M libclc/opencl/lib/generic/math/nan.cl
M libclc/opencl/lib/generic/math/native_cos.cl
M libclc/opencl/lib/generic/math/native_divide.cl
M libclc/opencl/lib/generic/math/native_exp.cl
M libclc/opencl/lib/generic/math/native_exp10.cl
M libclc/opencl/lib/generic/math/native_exp2.cl
M libclc/opencl/lib/generic/math/native_log.cl
M libclc/opencl/lib/generic/math/native_log10.cl
M libclc/opencl/lib/generic/math/native_log2.cl
M libclc/opencl/lib/generic/math/native_powr.cl
M libclc/opencl/lib/generic/math/native_recip.cl
M libclc/opencl/lib/generic/math/native_rsqrt.cl
M libclc/opencl/lib/generic/math/native_sin.cl
M libclc/opencl/lib/generic/math/native_sqrt.cl
M libclc/opencl/lib/generic/math/native_tan.cl
M libclc/opencl/lib/generic/math/nextafter.cl
M libclc/opencl/lib/generic/math/pown.cl
M libclc/opencl/lib/generic/math/powr.cl
M libclc/opencl/lib/generic/math/remainder.cl
M libclc/opencl/lib/generic/math/remquo.cl
M libclc/opencl/lib/generic/math/rint.cl
M libclc/opencl/lib/generic/math/rootn.cl
M libclc/opencl/lib/generic/math/round.cl
M libclc/opencl/lib/generic/math/rsqrt.cl
M libclc/opencl/lib/generic/math/sin.cl
M libclc/opencl/lib/generic/math/sincos.cl
M libclc/opencl/lib/generic/math/sinh.cl
M libclc/opencl/lib/generic/math/sinpi.cl
M libclc/opencl/lib/generic/math/sqrt.cl
M libclc/opencl/lib/generic/math/tan.cl
M libclc/opencl/lib/generic/math/tanh.cl
M libclc/opencl/lib/generic/math/tanpi.cl
M libclc/opencl/lib/generic/math/tgamma.cl
M libclc/opencl/lib/generic/math/trunc.cl
M libclc/opencl/lib/generic/mem_fence/fence.cl
M libclc/opencl/lib/generic/misc/shuffle.cl
M libclc/opencl/lib/generic/misc/shuffle2.cl
M libclc/opencl/lib/generic/relational/all.cl
M libclc/opencl/lib/generic/relational/any.cl
M libclc/opencl/lib/generic/relational/bitselect.cl
M libclc/opencl/lib/generic/relational/isequal.cl
M libclc/opencl/lib/generic/relational/isfinite.cl
M libclc/opencl/lib/generic/relational/isgreater.cl
M libclc/opencl/lib/generic/relational/isgreaterequal.cl
M libclc/opencl/lib/generic/relational/isinf.cl
M libclc/opencl/lib/generic/relational/isless.cl
M libclc/opencl/lib/generic/relational/islessequal.cl
M libclc/opencl/lib/generic/relational/islessgreater.cl
M libclc/opencl/lib/generic/relational/isnan.cl
M libclc/opencl/lib/generic/relational/isnormal.cl
M libclc/opencl/lib/generic/relational/isnotequal.cl
M libclc/opencl/lib/generic/relational/isordered.cl
M libclc/opencl/lib/generic/relational/isunordered.cl
M libclc/opencl/lib/generic/relational/relational_binary_def.inc
M libclc/opencl/lib/generic/relational/relational_unary_def.inc
M libclc/opencl/lib/generic/relational/select.cl
M libclc/opencl/lib/generic/relational/signbit.cl
M libclc/opencl/lib/generic/shared/clamp.cl
M libclc/opencl/lib/generic/shared/max.cl
M libclc/opencl/lib/generic/shared/min.cl
M libclc/opencl/lib/generic/shared/vload.cl
M libclc/opencl/lib/generic/shared/vstore.cl
M libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
M libclc/opencl/lib/generic/subnormal_config.cl
M libclc/opencl/lib/generic/workitem/get_enqueued_local_size.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
M libclc/opencl/lib/generic/workitem/get_global_offset.cl
M libclc/opencl/lib/generic/workitem/get_group_id.cl
M libclc/opencl/lib/generic/workitem/get_local_id.cl
M libclc/opencl/lib/generic/workitem/get_local_size.cl
M libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/workitem/get_work_dim.cl
Log Message:
-----------
[libclc][NFC] Change include style from <...> to "..." (#186537)
project-specific headers should use "". Keep #include <amdhsa_abi.h>
llvm-diff shows no change to libclc.bc for spir--, spir64--, nvptx64--,
nvptx64--nvidiacl, nvptx64-nvidia-cuda and amdgcn-amd-amdhsa-llvm when
LIBCLC_TARGETS_TO_BUILD is "all".
Verified that reversing spir64--/libclc.spv and spir--/libclc.spv to
LLVM bitcode shows no diff.
Also fix `__CLC_INTEGER_CLC_BITFIELD_EXTRACT_SIGNED_H__` guard per
copilot review.
---------
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot at users.noreply.github.com>
Commit: c4137a6c0f636b322ee38b7d641a4e17d58f5d34
https://github.com/llvm/llvm-project/commit/c4137a6c0f636b322ee38b7d641a4e17d58f5d34
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/SimpleSymbolTable.h
Log Message:
-----------
[orc-rt] Relax addUnique assertion to match error condition.
Duplicates are now permitted as long as they're identical (dbdf1accf55).
Commit: aa2defc147c3d3155aefa1416ed41475b802a34a
https://github.com/llvm/llvm-project/commit/aa2defc147c3d3155aefa1416ed41475b802a34a
Author: Phoebe Wang <phoebe.wang at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/test/CodeGen/X86/apx/adc.ll
M llvm/test/CodeGen/X86/apx/sbb.ll
Log Message:
-----------
[X86][APX] Remove patterns for ArithBinOp (#187018)
We should never select to these _EVEX variants. A follow up of #186049.
Commit: 3661bf74cdc5c1177b86d9707e2d5261f504f20d
https://github.com/llvm/llvm-project/commit/3661bf74cdc5c1177b86d9707e2d5261f504f20d
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A clang/test/Modules/pr179178.cpp
Log Message:
-----------
[Clang][Modules] Add regression test for #179178 (#187173)
This patch adds a regression test for a clang header modules failure we
saw after #179178 landed.
I'm too familiar with the norms for clang modules tests, so feel free to
nit-pick.
I've verified that this test passes at HEAD and fails with #179168
applied (i.e., the revert reverted).
Commit: 495c518b96cbfb9ad756860d3715f1afdd7cf496
https://github.com/llvm/llvm-project/commit/495c518b96cbfb9ad756860d3715f1afdd7cf496
Author: Wael Yehia <wmyehia2001 at yahoo.com>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Sema/SemaPPC.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaPPC.cpp
A clang/test/CodeGen/PowerPC/attr-target-clones.c
A clang/test/Sema/PowerPC/attr-target-clones.c
M clang/test/Sema/attr-target.c
Log Message:
-----------
[FMV][AIX] Implement target_clones (cpu-only) (#177428)
This PR implements Function Multi-versioning on AIX using `__attribute__
((target_clones(<feature-list>)))`.
Initially, we will only support specifying a cpu in the version list.
Feature strings (such as "altivec" or "isel") on target_clones will be
implemented in a future PR.
Accepted syntax:
```
__attribute__((target_clones(<OPTIONS>)))
```
where `<OPTIONS>` is a comma separated list of strings, each string is
either:
1) the default string `"default"`
2) a cpu string `"cpu=<CPU>"`, where `<CPU>`is a value accepted by the
`-mcpu` flag.
For example, specifying the following on a function
```
__attribute__((target_clones("default", "cpu=power8", "cpu=power9")))
int foo(int x) { return x + 1; }
```
Would generate 3 versions of `foo`: (1) `foo.default`, (2)
`foo.cpu_power8`, and (3) `foo.cpu_power9`,
an IFUNC `foo`, and the resolver function `foo.resolver`, for the IFUNC,
that chooses one of the three versions at runtime.
---------
Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
Commit: 3a1d5b5b8ce5eeef0238d35f576e9de73015fa13
https://github.com/llvm/llvm-project/commit/3a1d5b5b8ce5eeef0238d35f576e9de73015fa13
Author: zhouguangyuan0718 <zhouguangyuan.xian at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Basic/Targets/X86.h
M clang/lib/Driver/ToolChains/Arch/X86.cpp
A clang/test/Driver/x86-fixed-di-register.c
A clang/test/Sema/x86-fixed-global-register.c
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
A llvm/test/CodeGen/X86/reserveDIreg.ll
Log Message:
-----------
[X86] Support reserving EDI on x86-32 (#186123)
Which is under discussion in
https://github.com/llvm/llvm-project/issues/179036.
x86-64 support is added in
https://github.com/llvm/llvm-project/pull/180242.
Now add x86-32 support for reserving EDI via `-ffixed-edi` Update the
X86 backend to respect those reservations in register handling,
callee-save logic, and memcpy/memset lowering, and add driver/codegen
tests.
Add clang driver support for -ffixed-edi and map it to the reserve-edi
target feature on i386.
Teach the X86 backend to treat EDI as a user-reserved register in
register lookup, reserved-register tracking, and callee-save handling,
and avoid selecting REP MOVS/REP STOS when EDI is reserved.
Add driver, Sema, and codegen tests covering option handling, named
global register variables, and the resulting code generation changes.
Signed-off-by: ZhouGuangyuan <zhouguangyuan.xian at gmail.com>
Commit: c61d11df4003f601ce76b564af97f656195fe511
https://github.com/llvm/llvm-project/commit/c61d11df4003f601ce76b564af97f656195fe511
Author: Brandon Wu <brandon.wu at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Basic/riscv_vector.td
M clang/lib/Sema/SemaRISCV.cpp
M clang/test/Sema/zvk-invalid-features.c
Log Message:
-----------
[clang][RISCV] Add RequiredFeatures for zvknha and zvknhb (#186993)
zvknhb now implies zvknha so we dont need to check extensions manually
in SemaRISCV, we can just use RequiredFeatures instead.
Commit: ffcb5745ab54e62e2e7e048ee082209a4ac19146
https://github.com/llvm/llvm-project/commit/ffcb5745ab54e62e2e7e048ee082209a4ac19146
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/BootstrapInfo.h
M orc-rt/include/orc-rt/Session.h
A orc-rt/lib/executor/BootstrapInfo.cpp
M orc-rt/lib/executor/CMakeLists.txt
M orc-rt/lib/executor/Session.cpp
A orc-rt/unittests/BootstrapInfoTest.cpp
M orc-rt/unittests/CMakeLists.txt
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add BootstrapInfo: info for controller session bootstrap. (#187184)
BootstrapInfo holds information needed to bootstrap the ExecutionSession
in the controller. Future patches will update ControllerAccess to send
the bootstrap information at controller-connection time.
BootstrapInfo includes information about the executor process (via
Session::processInfo), an initial set of symbols (replacing
Session::controllerInterface()), and a simple key/value store.
Commit: 8187875b5802d7de3d7b3ff67ff8300c531e2f17
https://github.com/llvm/llvm-project/commit/8187875b5802d7de3d7b3ff67ff8300c531e2f17
Author: Carlo Cabrera <github at carlo.cab>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Options/Options.td
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/test/Driver/darwin-builtin-modules.c
R clang/test/Driver/darwin-ld-platform-version-macos-nosdk.c
M clang/test/Driver/darwin-ld-platform-version-macos.c
M clang/test/Driver/fsanitize-ignorelist.c
M clang/test/Driver/xcselect.c
Log Message:
-----------
[clang][Driver][Darwin] Use `xcselect` for `*-apple-darwin*` targets too (#186683)
This is a follow-up to #119670. There, we introduced a CMake option
`CLANG_USE_XCSELECT`, which, when enabled, uses `libxcselect` to find
the right SDK to inject as an `-isysroot` flag when targeting
`*-apple-macos*`.
We intentionally left out `*-apple-darwin*` targets because it broke
many tests. This is unfortunate because `*-apple-darwin*` is the default
triple when building LLVM on macOS, so one isn't able to take advantage
of `xcselect` without an explicit `-target` flag or a change to the
toolchain's default target.
We fix this in two ways.
First, we move the injection of the `-isysroot` flag using `xcselect`
later, until after we are sure that we are targeting macOS. This avoids
confusing the earlier deployment target detection code when we inject
the macOS SDK but actually intended to target non-macOS.
Second, we introduce a `--no-xcselect` flag. This is useful to avoid
breaking some tests that assume clang is invoked without an `-isysroot`
flag pointing at a macOS SDK.
Commit: 70665c665a080d81cd76bf3a1809e3224280cbbb
https://github.com/llvm/llvm-project/commit/70665c665a080d81cd76bf3a1809e3224280cbbb
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/test/CXX/drs/cwg2947.cpp
M clang/www/cxx_dr_status.html
Log Message:
-----------
[clang] Update C++ DR status page
Commit: 3a75683110101e7772613eb45a243b68aa636716
https://github.com/llvm/llvm-project/commit/3a75683110101e7772613eb45a243b68aa636716
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Add type annotations to the TranslationUnit class (#180876)
This adds type annotations to the `TranslationUnit` class, enough to
pass a strict typecheck. This resolves 19 strict typing errors as the
next step towards https://github.com/llvm/llvm-project/issues/76664
Commit: 709ef15d74315637e8aac447042c0c63a79c8bd4
https://github.com/llvm/llvm-project/commit/709ef15d74315637e8aac447042c0c63a79c8bd4
Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/CodeGen/PowerPC/bswap64.ll
Log Message:
-----------
[NFC][PowerPC] Pre-commit to optimize bswap64 builtin for power8 (#181776)
The current codegen (for power 8 targets specifically) does not make use
of the parallelism and does most of the operations sequentially.
This will be optimized in a future patch which will follow this NFC PR.
It will enhance the performance and also save us instructions.
---------
Co-authored-by: himadhith <himadhith.v at ibm.com>
Commit: 5f6cd9b923243999779965e2f53646066dde031f
https://github.com/llvm/llvm-project/commit/5f6cd9b923243999779965e2f53646066dde031f
Author: Ruoyu Qiu <cabbaken at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/gcd-miv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/non-monotonic.ll
M llvm/test/Analysis/DependenceAnalysis/rdiv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-overflow.ll
Log Message:
-----------
[DA] Fix overflow in symbolic RDIV test (#185805)
The symbolic RDIV test relies on computing the extremes of affine
expressions (e.g., `A1*N1` and `A2*N2`) to disprove dependencies. These
calculations were previously done using `SE->getMulExpr` and
`SE->getMinusSCEV` without guarding against signed integer overflow. If
large coefficients or loop bounds cause a wrap, `isKnownPredicate`
evaluates the wrapped values, potentially disproving a valid dependence
and leading to miscompilations.
This patch reimplements symbolicRDIVtest using `ConstantRange` to work
around overflows.
---------
Signed-off-by: Ruoyu Qiu <cabbaken at outlook.com>
Co-authored-by: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Commit: 038c8d3f4f23cd424709f5d34d13fde87d9fa67a
https://github.com/llvm/llvm-project/commit/038c8d3f4f23cd424709f5d34d13fde87d9fa67a
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-overflow.ll
Log Message:
-----------
[DA] Rewrite formula in the Weak Zero SIV tests (#183738)
This patch rewrites the formula in the Weak Zero SIV tests to match the
one used in the Strong SIV test that was updated in #179665. In this
form, `ConstantRange` is used so we don't need to pay attention to any
corner cases such as overflow.
Fix some test cases that were added in the past PRs to represent the
edge cases.
Commit: 2890f9883cb990939ee8006d5a5198f67a2f470e
https://github.com/llvm/llvm-project/commit/2890f9883cb990939ee8006d5a5198f67a2f470e
Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M offload/plugins-nextgen/level_zero/include/L0Trace.h
M offload/plugins-nextgen/level_zero/src/L0Device.cpp
M offload/test/api/assert.c
M offload/test/api/omp_device_managed_memory_alloc.c
M offload/test/api/omp_host_call.c
M offload/test/api/omp_indirect_func_array.c
M offload/test/api/omp_indirect_func_basic.c
M offload/test/api/omp_indirect_func_struct.c
M offload/test/api/omp_virtual_func.cpp
M offload/test/api/omp_virtual_func_multiple_inheritance_01.cpp
M offload/test/api/omp_virtual_func_multiple_inheritance_02.cpp
M offload/test/api/omp_virtual_func_reference.cpp
M offload/test/libc/malloc_parallel.c
M offload/test/mapping/lambda_by_value.cpp
M offload/test/mapping/reduction_implicit_map.cpp
M offload/test/mapping/use_device_addr/target_use_device_addr.c
M offload/test/offloading/assert.cpp
M offload/test/offloading/back2back_distribute.c
M offload/test/offloading/bug49334.cpp
M offload/test/offloading/bug51982.c
M offload/test/offloading/bug74582.c
M offload/test/offloading/ctor_dtor_api.cpp
M offload/test/offloading/ctor_dtor_lazy.cpp
M offload/test/offloading/dyn_groupprivate.cpp
M offload/test/offloading/dynamic_module.c
M offload/test/offloading/high_trip_count_block_limit.cpp
M offload/test/offloading/malloc.c
M offload/test/offloading/multiple_reductions_simple.c
M offload/test/offloading/ompx_coords.c
M offload/test/offloading/ompx_saxpy_mixed.c
M offload/test/offloading/parallel_target_teams_reduction.cpp
M offload/test/offloading/parallel_target_teams_reduction_max.cpp
M offload/test/offloading/parallel_target_teams_reduction_min.cpp
M offload/test/offloading/spmdization.c
M offload/test/offloading/target_constexpr_mapping.cpp
M offload/test/offloading/wtime.c
M offload/test/sanitizer/double_free_racy.c
M offload/test/sanitizer/ptr_outside_alloc_1.c
M offload/test/sanitizer/ptr_outside_alloc_2.c
Log Message:
-----------
[OFFLOAD] Improve handling of synchronization errors in L0 plugin and reenable tests (#186927)
This change improves handling of errors during synchronization in Level
Zero plugin by ensuring cleanup of queues and events in case of an
synchronization error. As a result multiple tests stopped hanging.
---------
Co-authored-by: Duran, Alex <alejandro.duran at intel.com>
Commit: ee0ac7443e4dc48f0ab2371dd5cbdcca32732e48
https://github.com/llvm/llvm-project/commit/ee0ac7443e4dc48f0ab2371dd5cbdcca32732e48
Author: Arun Thangamani <arun.thangamani at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/X86/TransformOps/X86TransformOps.td
M mlir/include/mlir/Dialect/X86/Transforms.h
M mlir/lib/Dialect/X86/TransformOps/X86TransformOps.cpp
M mlir/lib/Dialect/X86/Transforms/CMakeLists.txt
A mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
A mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
Log Message:
-----------
[mlir][x86] Lower packed type vector.contract to AMX dot-product (#182810)
A transform pass to lower `vector.contract` operation to (a)
`amx.tile_mulf` for BF16, or (b) `amx.tile_muli` for Int8 packed types.
Commit: dc8fd02b6237bc0b784d3d5468f2c875ed5a68c2
https://github.com/llvm/llvm-project/commit/dc8fd02b6237bc0b784d3d5468f2c875ed5a68c2
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg10xx.cpp
M clang/test/CXX/drs/cwg118.cpp
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg12xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg158.cpp
M clang/test/CXX/drs/cwg15xx.cpp
M clang/test/CXX/drs/cwg16xx.cpp
M clang/test/CXX/drs/cwg17xx.cpp
M clang/test/CXX/drs/cwg1884.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg20xx.cpp
M clang/test/CXX/drs/cwg2149.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg2335.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg273.cpp
M clang/test/CXX/drs/cwg2771.cpp
M clang/test/CXX/drs/cwg279.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg2947.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/drs/cwg722.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
Log Message:
-----------
[clang] Reshuffle compiler options in C++ DR tests
This patch changes the order of compiler options on RUN lines so that options that differ in length (like -verify with its multiple prefixes) are at the end. This way it's much easier to see what is common and what is different between RUN lines
Commit: 950292535e8da5ff8bac25c855fd02eb32ce22f8
https://github.com/llvm/llvm-project/commit/950292535e8da5ff8bac25c855fd02eb32ce22f8
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/unittests/BootstrapInfoTest.cpp
M orc-rt/unittests/CommonTestUtils.h
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] De-duplicate some test helper APIs. (#187187)
Moves noErrors, mockExecutorProcessInfo, and NoDispatcher into
CommonTestUtils.h where they can be re-used between tests.
Commit: 51fd033521b6d191213df17b6cafa83194f4b1d4
https://github.com/llvm/llvm-project/commit/51fd033521b6d191213df17b6cafa83194f4b1d4
Author: Vasily Leonenko <vleonen at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
M bolt/runtime/instr.cpp
Log Message:
-----------
[BOLT] Enable compatibility of instrumentation-file-append-pid with instrumentation-sleep-time (#183919)
This commit enables compatibility of instrumentation-file-append-pid and
instrumentation-sleep-time options. It also requires keeping the
counters mapping between the watcher process and the instrumented binary
process in shared mode. This is useful when we instrument a shared
library that is used by several tasks running on the target system. In
case when we cannot wait for every task to complete, we must use the
sleep-time option. Without append-pid option, we would overwrite the
profile at the same path but collected from different tasks, leading to
unexpected or suboptimal optimization effects.
Co-authored-by: Vasily Leonenko <vasily.leonenko at huawei.com>
Commit: 14b42335c641778b0cbf5d8791161762953ce852
https://github.com/llvm/llvm-project/commit/14b42335c641778b0cbf5d8791161762953ce852
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/include/orc-rt/SimpleSymbolTable.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Publish controller interface from SimpleNativeMemoryMap ctor. (#187198)
Add named constructors to SimpleNativeMemoryMap to publish
SimpleNativeMemoryMap's controller interface when an instance is
constructed.
This supports correct setup by construction, since API clients can't
forget to publish the interface that the controller will need to
interact with the SimpleNativeMemoryMap object.
Commit: 9a2f23e1a40b31ac1b1ed7c305ba285efe99b903
https://github.com/llvm/llvm-project/commit/9a2f23e1a40b31ac1b1ed7c305ba285efe99b903
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/lib/CodeGen/BasicBlockSections.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/Hexagon/HexagonLiveVariables.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
Log Message:
-----------
[CodeGen] Use separate MBB number for analyses (#187086)
Block numbers are updated too frequently, which makes it difficult to
keep analyses up to date. Therefore, introduce a second number per basic
block that is used for analyses and is renumbered less often. This frees
analyses from providing somewhat efficient facilities for dealing with
changed block numbers, making it simpler to implement in e.g. LoopInfo
or CycleInfo.
(Currently, "less often" means not at all, but we might want to renumber
after certain passes if the numbering gets too sparse and no analyses
are preserved anyway.)
When we introduced a more general use of block numbers some time ago,
using the existing numbers seemed to be a somewhat obvious choice, but I
now think that this was a bad decision, as it conflates a number that is
used for ordering with a number that should be more stable.
MachineBasicBlock isn't particularly size-optimized and there's a fair
amount of padding where we can add another number.
There should be no performance impact,
Commit: 351501799ab421a2d89c203d665777ccbd2293fc
https://github.com/llvm/llvm-project/commit/351501799ab421a2d89c203d665777ccbd2293fc
Author: Demetrius Kanios <demetrius at kanios.net>
Date: 2026-03-17 (Tue, 17 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[CodeGen] Improve `getLoadExtAction` and friends (#181104)
Alternative approach to the same goals as #162407
This takes `TargetLoweringBase::getLoadExtAction`, renames it to
`TargetLoweringBase::getLoadAction`, merges `getAtomicLoadExtAction`
into it, and adds more inputs for relavent information (alignment,
address space).
The `isLoadExtLegal[OrCustom]` helpers are also modified in a matching
manner.
This is fully backwards compatible, with the existing `setLoadExtAction`
working as before. But this allows targets to override a new hook to
allow the query to make more use of the information. The hook
`getCustomLoadAction` is called with all the parameters whenever the
table lookup yields `LegalizeAction::Custom`, and can return any other
action it wants.
Commit: 63dd9966d31945ce621e2779cd67542bc3ed3d05
https://github.com/llvm/llvm-project/commit/63dd9966d31945ce621e2779cd67542bc3ed3d05
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
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] Capture a Session& in SimpleNativeMemoryMap, fix TODOs. (#187200)
SimpleNativeMemoryMap now captures a reference to the Session that it
was constructed for. This is used to fix some outstanding TODOs: using
the real page size for the process, and reporting errors that were
previously discarded.
Commit: 7899b26e88f55fe760310ca0ba1c2b43482054da
https://github.com/llvm/llvm-project/commit/7899b26e88f55fe760310ca0ba1c2b43482054da
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
Log Message:
-----------
[lldb-dap] Allow expressions in setVariable request (#185611)
This paths allows expressions in `setVariable` request. It is small
extension of original semantics from DAP specification. DAP has
`setExpression` request to this purpose, but it is too general. So I
prefer to keep this simple solution.
Commit: fbd24677963abedf88b6dbed277764e955374dd8
https://github.com/llvm/llvm-project/commit/fbd24677963abedf88b6dbed277764e955374dd8
Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/AMDGPU/SIInstructions.td
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
Log Message:
-----------
[AMDGPU] DPP implementations for Wave Reduction (#185814)
Adding DPP reduction support for i32 types.
Supported Ops: `umin`, `min`, `umax`, `max`,
`add`, `sub`, `and`, `or`, `xor`.
Commit: 76d5704633c74b358c90a78b23bb7b229dc0f2aa
https://github.com/llvm/llvm-project/commit/76d5704633c74b358c90a78b23bb7b229dc0f2aa
Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/CodeGen/PowerPC/bswap64.ll
Log Message:
-----------
[NFC][PowerPC] Update check lines to include power 9 label (#187193)
The current check lines do not provide a clear distinction between
`power 9` and `power 8` as power 8 label was introduced recently through
#181776. Added `power-9` label to the RUN lines to make it more readable
and understandable.
Co-authored-by: himadhith <himadhith.v at ibm.com>
Commit: 0f622c507ecc9bac6b9ebb821c1d6bd511de5cf9
https://github.com/llvm/llvm-project/commit/0f622c507ecc9bac6b9ebb821c1d6bd511de5cf9
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/CMakeLists.txt
A orc-rt/include/orc-rt/TaskGroup.h
M orc-rt/unittests/CMakeLists.txt
A orc-rt/unittests/TaskGroupTest.cpp
Log Message:
-----------
[orc-rt] Add TaskGroup for tracking completion of a set of tasks. (#187205)
TaskGroup provides a mechanism for tracking execution of multiple
concurrent tasks and receiving notification when all tasks have
completed. This is useful for coordinating asynchronous operations in
the ORC runtime.
TaskGroup::Token is an RAII handle representing participation in a
group. The group cannot complete while any valid (non-default) Token
exists.
TaskGroup::addOnComplete registers callbacks to run when the group
closes and all tokens are released. (Callbacks registered after
completion run immediately).
TalkGroup::close seals the group: no new tokens can be acquired after
close is called.
All methods may be called concurrently from multiple threads.
Commit: 77ad2c2a9cfd72a46b61b2b8f59881c330915953
https://github.com/llvm/llvm-project/commit/77ad2c2a9cfd72a46b61b2b8f59881c330915953
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A llvm/test/Analysis/DependenceAnalysis/exact-siv-large-btc.ll
Log Message:
-----------
[DA] Add test that represents an edge case for the Exact SIV test (NFC) (#186389)
To prevent a regression that could be caused by #186388.
Commit: b3fdcac90d9da8aa4078bd0741da33b985375a43
https://github.com/llvm/llvm-project/commit/b3fdcac90d9da8aa4078bd0741da33b985375a43
Author: David Green <david.green at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
M llvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
Log Message:
-----------
[AArch64] Remove vector REV16, use BSWAP instead (#186414)
This removes the generation of vector REV16 nodes, generating a bswap
instead. This allows us to remove most uses of AArch64ISD::REV16 and all
uses of G_REV16.
Commit: ec1c08a291451dfb9fab69c8be9394ef85fab614
https://github.com/llvm/llvm-project/commit/ec1c08a291451dfb9fab69c8be9394ef85fab614
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-overflow.ll
Log Message:
-----------
[DA] Regenerate assertions for the tests (NFC) (#187207)
Delete the tailing space introduced in #185805 that is noisy when using
UTC.
Commit: fdd2437af3cdc6d5fe199fcc9d991ccf503b55bd
https://github.com/llvm/llvm-project/commit/fdd2437af3cdc6d5fe199fcc9d991ccf503b55bd
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/test/API/symstore/TestSymStoreLocal.py
Log Message:
-----------
[lldb] Avoid permission issue in API test with SHARED_BUILD_TESTCASE (#187072)
Deleting the inferior binary after an API test-case causes issues on one
of the Windows bots. The previous the fix attempt in ca15db1cd509c236
didn't succeed. We have to use isolated subfolders for each test-case.
This is achieved easily by disabling SHARED_BUILD_TESTCASE.
Commit: ea8fb06f2443d1e7c7fe545d1bfc5fdb91e82a3a
https://github.com/llvm/llvm-project/commit/ea8fb06f2443d1e7c7fe545d1bfc5fdb91e82a3a
Author: gonzalobg <65027571+gonzalobg at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/test/Assembler/atomic.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-cxx.td
M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
M llvm/test/Transforms/AtomicExpand/AArch64/atomicrmw-fp.ll
M mlir/include/mlir/Dialect/LLVMIR/LLVMEnums.td
Log Message:
-----------
[atomicrmw] fminimumnum/fmaximumnum support (#187030)
Adds support for `atomicrmw` `fminimumnum`/`fmaximumnum` operations.
These were added to C++ in P3008, and are exposed in libc++ in #186716 .
Adding LLVM IR support for these unblocks work in both backends with HW
support, and frontends.
Commit: 9b2fe0c885d1df53f60891371eb8878de5d61e63
https://github.com/llvm/llvm-project/commit/9b2fe0c885d1df53f60891371eb8878de5d61e63
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
Log Message:
-----------
[X86] Remove extranous I in comment. NFC (#187209)
Seems to have slipped in in c63d2953a08b9
Commit: b83fd4dc5937f022add08aaa526b58bc36c214c6
https://github.com/llvm/llvm-project/commit/b83fd4dc5937f022add08aaa526b58bc36c214c6
Author: Joshua Rodriguez <josh.rodriguez at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
Log Message:
-----------
[AArch64][GlobalISel] Fix uqadd/sub with scalar operands (#186999)
Previously, neon uqadd/uqsub would not lower when given s32/s64
operands, as GlobalISel would wrongly try to put the operands on
general-purpose register banks. Changing this in RegBankSelection allows
the intrinsics to lower just like their signed versions.
Commit: e762078424b26ded952964d2b3249ddaeefcb8a1
https://github.com/llvm/llvm-project/commit/e762078424b26ded952964d2b3249ddaeefcb8a1
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
Log Message:
-----------
[VPlan] Use auto return in VPlanPatternMatch (NFC) (#187210)
Commit: a8ff7e13c3beadfa2f5f35dd793c5bd0ae2e24e8
https://github.com/llvm/llvm-project/commit/a8ff7e13c3beadfa2f5f35dd793c5bd0ae2e24e8
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/Serialization/ASTReaderInternals.h
Log Message:
-----------
[NFCI] [Serialization] Deduplicate DeclID properly (#187212)
In the original code, the operation to iterate Found is meaningless, as
it is guarded by Found.empty(). So this is always a noop for 10 years.
According to the context, I believe the intention is to avoid duplicated
DeclID to be in Data. So changing iterating Found to Data.
Just found by looking around the code.
This is not strictly NFC but NFC intentionally. I will be surprised if
this breaks anything.
Commit: 570c388685e265fabfedd32082a6c12bd58db39c
https://github.com/llvm/llvm-project/commit/570c388685e265fabfedd32082a6c12bd58db39c
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/git-llvm-push
Log Message:
-----------
[llvm][utils] Give git-llvm-push u+x permissions (#187211)
There's a hashbang at the top of the script so I presume the intention
is that it can be executed directly, but it seems to be lacking
executable permissions. This sets the user executable bit so running
./llvm/utils/git-llvm-push works
Commit: 9cb9081049a4cc4b049175591d4bb60012f149ba
https://github.com/llvm/llvm-project/commit/9cb9081049a4cc4b049175591d4bb60012f149ba
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
Log Message:
-----------
[mlir][vector] Extend vector.gather e2e test (#187071)
Extend the vector.gather e2e test to cover both available lowering
paths:
* Direct lowering to LLVM (via -test-lower-to-llvm)
* Lowering via vector.load (via -test-vector-gather-lowering)
This is a follow-up to https://github.com/llvm/llvm-project/pull/184706,
which updated a pattern used by -test-vector-gather-lowering.
The test is extended to operate on 2D memrefs so that the changes
in https://github.com/llvm/llvm-project/pull/184706 are meaningfully
exercised.
Commit: 25abe22ed85202a68118dd6f0cc0ac3d513e6d90
https://github.com/llvm/llvm-project/commit/25abe22ed85202a68118dd6f0cc0ac3d513e6d90
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/shift-i512.ll
Log Message:
-----------
[X86] Improve handling of i512 SRA(MSB,Amt) "highbits" mask creation (#187141)
This can be folded from ((1 << 511) >>s Amt) -> (-1 << (511-Amt)) to make use of the existing optimal codegen
Alive2: https://alive2.llvm.org/ce/z/9UMQkm
Last i512 pattern described in #132601
Commit: 30c962c9b70123b7ec071660c2262d89ccd5b0b2
https://github.com/llvm/llvm-project/commit/30c962c9b70123b7ec071660c2262d89ccd5b0b2
Author: Lewis Crawford <lcrawford at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/test/Instrumentation/NumericalStabilitySanitizer/intrinsics.ll
M llvm/test/Instrumentation/NumericalStabilitySanitizer/libfuncs.ll
Log Message:
-----------
[Instrumentation][nsan] Add maximumnum to NSAN (#186345)
Add support for the min/maximumnum intrinsics and the corresponding
libfuncs to the NumericalStabilitySanitizer.
Commit: f7763570e55883e3f8c8482c37727eed6060f317
https://github.com/llvm/llvm-project/commit/f7763570e55883e3f8c8482c37727eed6060f317
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Improve code in VPlanRecipes using VPlanPatternMatch (NFC) (#187130)
Commit: 23a0c9f55826eb527f5b42078544c147b25b5e7d
https://github.com/llvm/llvm-project/commit/23a0c9f55826eb527f5b42078544c147b25b5e7d
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/test/API/symstore/TestSymStoreLocal.py
Log Message:
-----------
[lldb] Skip file cleanup to avoid permission issue in API test (#187227)
Deleting anything in the build directory of a test-case is causing an
issue on one of the Windows bots. After the previous attempts in
ca15db1cd509c236cd8138bcd098117d0106db56 and
fdd2437af3cdc6d5fe199fcc9d991ccf503b55bd didn't help, we now skip the
file cleanup altogether.
Commit: 4f6379069eb200ec57f0b39b1ecbb4004d73c82f
https://github.com/llvm/llvm-project/commit/4f6379069eb200ec57f0b39b1ecbb4004d73c82f
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h
M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-pipeline.mlir
Log Message:
-----------
[mlir][tosa][tosa-to-linalg] Fix rescale with double rounding failing validation (#184787)
The validation pass added attribute checks on rescale rounding mode, but
the tosa-to-linalg-pipeline did not specify support for the doubleround
extension, causing rescale with doubleround to be rejected by the
validation in the tosa-to-linalg-pipeline.
One method of fixing this would be to only enable the attribute checks
when the "strictOpSpecAlignment" validation option is enabled. However,
I feel this is the wrong direction of travel. Long-term it would be nice
if the tosa-to-linalg-pipeline specified all the extensions it supports,
gracefully rejecting operations that require unsupported extensions.
Therefore, this change declares support for the doubleround extension to
fix the legalization failure with the ambition of adding more extensions
in the future.
Commit: 8c4f4e8a05abb18ba803a2425c274874a2c401b8
https://github.com/llvm/llvm-project/commit/8c4f4e8a05abb18ba803a2425c274874a2c401b8
Author: Zhijie Wang <yesterda9 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
Log Message:
-----------
[LifetimeSafety] Track origins through array subscript and array-to-pointer decay (#186902)
Array element accesses and array-to-pointer decay were not tracked
because `CK_ArrayToPointerDecay` dropped origins and
`ArraySubscriptExpr` had no visitor. This patch adds both to propagate
origins through array operations.
Fixes #186075
Commit: fef74e1c005d49804ea906bff39f759373681923
https://github.com/llvm/llvm-project/commit/fef74e1c005d49804ea906bff39f759373681923
Author: Emimendoza <emiliomendozareyes at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td
M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
M mlir/lib/Target/SPIRV/Deserialization/DeserializeOps.cpp
M mlir/lib/Target/SPIRV/Serialization/SerializeOps.cpp
M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir
A mlir/test/Target/SPIRV/execution-mode-id.mlir
Log Message:
-----------
[mlir][spirv] add ExecutionModeIdOp (#186241)
Adds OpExecutionModeId from spirv 1.2
---------
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Commit: f9d2d8beeff07809ccc2bc60bcba743f7eae0fa7
https://github.com/llvm/llvm-project/commit/f9d2d8beeff07809ccc2bc60bcba743f7eae0fa7
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg10xx.cpp
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg12xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg15xx.cpp
M clang/test/CXX/drs/cwg16xx.cpp
M clang/test/CXX/drs/cwg1736.cpp
M clang/test/CXX/drs/cwg17xx.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg20xx.cpp
M clang/test/CXX/drs/cwg2149.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg2335.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg273.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
Log Message:
-----------
[clang] Enable '-verify-directives' mode in C++ DR tests (#187219)
This patch enables recently implemented `-verify-directives` mode
(#179835) in C++ DR tests to automate some of the work I've been doing
manually while reviewing PRs touching those tests. As highlighted in
that PR, all the errors this mode found were addressed in #179813 and
#179674, so this PR just flips the switch.
Commit: 2734c46153cf81980861644b5673eca0158cc8ff
https://github.com/llvm/llvm-project/commit/2734c46153cf81980861644b5673eca0158cc8ff
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
Log Message:
-----------
[DAG] Add back SelectionDAG::dump() without parameter (#187001)
Usually `dump()`s are without parameter, so the practice is calling
`XXX::dump()` when debugging.
But we will get an error like below after #161097:
```
error: <user expression 128>:1:10: too few arguments to function call,
expected 1, have 0
1 | DAG.dump()
| ~~~~~~~~ ^
```
So to not surprise users, I added back the `SelectionDAG::dump()`
without parameter.
Commit: 7404a5dbe0ca971e0f312a366019361fc9d576e0
https://github.com/llvm/llvm-project/commit/7404a5dbe0ca971e0f312a366019361fc9d576e0
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
A llvm/test/CodeGen/PowerPC/load-i128-eq-chain.ll
Log Message:
-----------
[PowerPC] Preserve load output chain in vcmpequb combine (#187010)
Replace uses of the old load output chain with the new load output
chain. A plain replacement here is fine because the transform verifies
the load is one-use.
Fixes https://github.com/llvm/llvm-project/issues/186549.
Commit: 6bfb44f320169b7918ca991a7926de58967be0dd
https://github.com/llvm/llvm-project/commit/6bfb44f320169b7918ca991a7926de58967be0dd
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Service.h
M orc-rt/include/orc-rt/SimpleNativeMemoryMap.h
M orc-rt/lib/executor/SimpleNativeMemoryMap.cpp
M orc-rt/unittests/SessionTest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapSPSCITest.cpp
M orc-rt/unittests/SimpleNativeMemoryMapTest.cpp
Log Message:
-----------
[orc-rt] Add ShutdownRequested flag to Service::onDetach. (#187230)
The ShutdownRequested flag indicates to Services whether a shutdown
operation is already pending. Services may use this information to
optimize their book-keeping: either preparing for a (potentially
lengthy) detached state, or for an upcoming shutdown.
Session does not call onDetached yet: That (including setting the
ShutdownRequested argument) will happen in a follow-up patch.
Commit: 95824ca6b92b388f9deb038ded37b0356706c008
https://github.com/llvm/llvm-project/commit/95824ca6b92b388f9deb038ded37b0356706c008
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[Frontend/OpenMP][NFC] Drop uses of BranchInst (#186393)
In OpenMPIRBuilder::EmitOMPInlinedRegion there are two checks w.r.t.
SplitPos, which appear to be always true. I conservatively left the code
as-is.
Commit: 671ccfea2767feda3d992970f11279f828e2fda3
https://github.com/llvm/llvm-project/commit/671ccfea2767feda3d992970f11279f828e2fda3
Author: lonely eagle <2020382038 at qq.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Reducer/ReductionTreePass.cpp
M mlir/test/mlir-reduce/simple-test.mlir
Log Message:
-----------
[mlir][reducer] Add eraseAllOpsInRegion function to reduction-tree pass (#185892)
Added logic to erase all operations within a region. This addresses
scenarios where the test script always returns 1 (interesting), in which
case the simplest output from mlir-reduce should be an empty ModuleOp.
Commit: c374678d29555604bf21cf1a13e16587c68359eb
https://github.com/llvm/llvm-project/commit/c374678d29555604bf21cf1a13e16587c68359eb
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Rename Session setController/detachFromController. NFC. (#187235)
These methods are renamed to attach and detach for simplicity.
Commit: 49f9b4b44a661f0f77c3a3df62b9d680b2e7c3ad
https://github.com/llvm/llvm-project/commit/49f9b4b44a661f0f77c3a3df62b9d680b2e7c3ad
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
Log Message:
-----------
[LV] Add test for diff checks with ptrtoint subtract. (NFC)
Adds extra test coverage for
https://github.com/llvm/llvm-project/pull/180244.
Commit: 003ec3e0a161c19bbc4dc7c623c828c337f68882
https://github.com/llvm/llvm-project/commit/003ec3e0a161c19bbc4dc7c623c828c337f68882
Author: Folkert de Vries <folkert at folkertdev.nl>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A llvm/test/CodeGen/AArch64/is_fpclass.ll
Log Message:
-----------
[NFC][AArch64] add tests for `is_fpclass` (#187231)
Preparation for https://github.com/llvm/llvm-project/pull/169402
Commit: 2915519efd9185bf06dd09a50a853e9945198983
https://github.com/llvm/llvm-project/commit/2915519efd9185bf06dd09a50a853e9945198983
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Move CallViaSession into Session, add comments. (#187238)
Makes CallViaSession an inner class on Session, and adds comments and a
convenience method for creating instances.
Commit: 60dc4c70fc444290ee1b541914a8dd845eb5c550
https://github.com/llvm/llvm-project/commit/60dc4c70fc444290ee1b541914a8dd845eb5c550
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
Log Message:
-----------
[CycleInfo] Use block numbers for dfs numbering (NFC) (#187062)
Store the DFSInfo into a vector indexed by block number instead of a map
using the block pointer.
This is a small compile-time improvement for CycleInfo construction.
Commit: 3f649d0537b34de9647e8b33d9bdfe961bc3fbd9
https://github.com/llvm/llvm-project/commit/3f649d0537b34de9647e8b33d9bdfe961bc3fbd9
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
Log Message:
-----------
[AArch64] Use SVE/NEON FMLAL top/bottom instructions (#186798)
Commit: f52b2616f4d85475875a8b136632202d8d0a419e
https://github.com/llvm/llvm-project/commit/f52b2616f4d85475875a8b136632202d8d0a419e
Author: Will Froom <willfroom at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
Log Message:
-----------
[mlir][vector] Use non-native runner in gather.mlir test (#187243)
Fix after https://github.com/llvm/llvm-project/pull/187071
Commit: f1b82dcd99bc9cb3dfad229948810ef4270c002f
https://github.com/llvm/llvm-project/commit/f1b82dcd99bc9cb3dfad229948810ef4270c002f
Author: google-llvm-bazel-bot <google-bazel-bot at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
M utils/bazel/llvm-project-overlay/clang/unittests/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes c1f6fd2 (#187146)
This fixes c1f6fd24aa637d6aadb72aa08bf3d8a14c961ed2.
Commit: 2563006f3178a6443cd2f05b9e4383ce2a4e7003
https://github.com/llvm/llvm-project/commit/2563006f3178a6443cd2f05b9e4383ce2a4e7003
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CodeGenFunction.cpp
M clang/lib/CodeGen/EHScopeStack.h
Log Message:
-----------
[Clang][NFC] Drop uses of BranchInst (#187242)
Commit: c949c9be610d73032db66d895a557911a150fd75
https://github.com/llvm/llvm-project/commit/c949c9be610d73032db66d895a557911a150fd75
Author: Jonathan Thackray <jonathan.thackray at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
A llvm/test/MC/Disassembler/AArch64/reserved-bits-softfail.txt
Log Message:
-----------
[AArch64][llvm] Make SBZ/SBO insns warn not fail when disassembling (#187068)
Some instructions in the Arm ARM have bits which are marked as "Should
Be One" or "Should Be Zero", and they're marked as "Constrained
Unpredictable" as to what should happen if they're not.
This is to improve hardware decode efficiency. In all the cases where
this occurs, it's an instruction which in all other respects is closely
related to an adjacent instruction in the encoding space (for example a
similar load or store) but doesn't require one of the variable fields,
usually a register field. These fields are then defined as SBZ or SBO.
If one of these instructions didn't have the bits set to SBZ or SBO,
then the instruction would fail to disassemble. We had missed adding
`Unpredictable` to a few of these, and they would fail rather than
warn.
Update these AArch64 instructions to treat `Unpredictable` bitfields as
soft-fails with a warning, and add a comprehensive disassembler
regression
test that checks all instructions which use `Unpredictable`.
The new tests check that `llvm-mc` emits a "potentially undefined
instruction encoding" warning, and verifies that the disassembler still
produces the canonical instruction spelling and encoding.
This keeps the behaviour consistent for users across SBO and SBZ
style reserved fields instead of rejecting encodings that should
disassemble with a warning.
Commit: cf89c33e6debabc9d31a275cea73c361f424f064
https://github.com/llvm/llvm-project/commit/cf89c33e6debabc9d31a275cea73c361f424f064
Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaOpenMP.cpp
A clang/test/OpenMP/map_const_aggregate.cpp
Log Message:
-----------
[OpenMP] Map const-qualified target map variables as 'to'. (#185918)
This patch updates the mapping kind for const-qualified variables
from`tofrom` to `to`, ensuring correct and standards-compliant mapping
semantics for const variables.
Commit: fd47fbe87e7f60ef73b3e1c2df7e0bbe3d5e00d8
https://github.com/llvm/llvm-project/commit/fd47fbe87e7f60ef73b3e1c2df7e0bbe3d5e00d8
Author: Dmitry Vasilyev <dvassiliev at accesssoftek.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/test/API/lang/cpp/incomplete-types/Makefile
Log Message:
-----------
[lldb] Do not use mkdir -p in makefile on Windows (#187244)
`Make` uses systems's `mkdir` on Windows even if Git's mkdir.exe is
present in PATH. Windows's mkdir does not support the parameter `-p` and
creates the directory `-p` instead. Few other tests also use `mkdir -p`
but they are linux, objc or macosx related.
---------
Co-authored-by: Charles Zablit <c_zablit at apple.com>
Commit: a9605a92bdb82199d2113b9d0a840a0b4c82864b
https://github.com/llvm/llvm-project/commit/a9605a92bdb82199d2113b9d0a840a0b4c82864b
Author: Joe Eagar <joeedh at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/Diagnostics.h
M clang-tools-extra/clangd/ParsedAST.cpp
M clang-tools-extra/clangd/Preamble.cpp
M clang-tools-extra/clangd/unittests/CompilerTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
Log Message:
-----------
[clangd] Support suppressions for driver diagnostics (#182912)
Rebase of https://reviews.llvm.org/D127844
Fixes [#1142](https://github.com/clangd/clangd/issues/1142)
Commit: 2f44f6998345e346f5bfb7899c1929b40e8bb791
https://github.com/llvm/llvm-project/commit/2f44f6998345e346f5bfb7899c1929b40e8bb791
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Use OmpDirectiveSpecification for range/depth queries, NFC (#187109)
That makes them usable for a potential future implementation of APPLY.
Commit: 2ecd001215f5e80021ad82c70ebfc8c5a84d5d44
https://github.com/llvm/llvm-project/commit/2ecd001215f5e80021ad82c70ebfc8c5a84d5d44
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Use select function instead of ?: for some fp selects (#187253)
It seems that ?: is not quite equivalent to select for floating-point
vectors. With ?:, the resulting IR involves integer bitcasts and
integer vector typed select. Use select so this is an fp-select. This
enables finite math only contexts to optimize out the select.
This feels like it's a clang bug though.
Commit: 9b8532dd2aaab5e7c2d4330c9b55293ccd8f68bf
https://github.com/llvm/llvm-project/commit/9b8532dd2aaab5e7c2d4330c9b55293ccd8f68bf
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos.inc
Log Message:
-----------
libclc: Clean up sincos macro usage (#187260)
Handle this more like fract, and implement other
address spaces on top of the private overload with
a temporary variable.
Commit: d7dbf1bd641f84f78c2e71dfffebe91e22a3de21
https://github.com/llvm/llvm-project/commit/d7dbf1bd641f84f78c2e71dfffebe91e22a3de21
Author: Chao Shi <stepinto at live.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/docs/Dialects/GPU.md
Log Message:
-----------
[mlir][gpu] Fix typo in documentation (#156619)
Commit: b15fa374fff9025124e468a7be0ea9f0867b9a1e
https://github.com/llvm/llvm-project/commit/b15fa374fff9025124e468a7be0ea9f0867b9a1e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_sincos_helpers_decl.inc
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
M libclc/clc/lib/generic/math/clc_tan.cl
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Improve float trig function handling (#187264)
Most of this was originally ported from rocm device libs in
c0ab2f81e3ab5c7a4c2e0b812a873c3a7f9dca8b, so merge
in more recent changes.
Commit: dafadf53a0a7fdf0e6b61490e182ee651bd1969b
https://github.com/llvm/llvm-project/commit/dafadf53a0a7fdf0e6b61490e182ee651bd1969b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
Log Message:
-----------
Fix MSVC "not all control paths return a value" warning. NFC. (#187265)
Commit: de3f57399c661d393f9ef585907e2f0fca006baa
https://github.com/llvm/llvm-project/commit/de3f57399c661d393f9ef585907e2f0fca006baa
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
A clang/test/CIR/CodeGen/abi-lower-after-unreachable.cpp
Log Message:
-----------
[CIR] Fix bug where block after-unreachable wasn't CXXABILowered (#186869)
If a TU has an 'unreachable' block, it wouldn't be CXXABILower'ed, which
would cause a legalization failure. This patch adds the same solution we
do in LowerToLLVM, which is to make sure we transform those sections
separately.
Commit: 138cae4a08d2dd9d973243006be387976f87255e
https://github.com/llvm/llvm-project/commit/138cae4a08d2dd9d973243006be387976f87255e
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
Log Message:
-----------
[CIR][NFC] Split the CXXABI 'TypeConverter' into its own type. (#186874)
This is currently an NFC change, as the CXXABITypeConverter has no
members yet. This patch splits it off into its own type, as it is going
to need to have members when we start transforming record types, but
doesn't implement that part yet (coming in future patches).
Commit: 1b904e948afb8ecad47e2e6c3ffa9bef3e02b8be
https://github.com/llvm/llvm-project/commit/1b904e948afb8ecad47e2e6c3ffa9bef3e02b8be
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
Log Message:
-----------
[CIR][NFC] Unify the 'null data member attr' getters (#186876)
In preperation of actually lowering data members as fields to a record
type, this patch does a minor refactor to make their single current use
have a slightly simpler interface. This will prevent us from having to
copy/paste this later.
Also, this patch removes a pair of now-orphaned builders, instead
preferring to use the ones that come from the parent builder type.
Commit: 2a8168ddaf4de9102cc43c098d8a2159c9442271
https://github.com/llvm/llvm-project/commit/2a8168ddaf4de9102cc43c098d8a2159c9442271
Author: Erich Keane <ekeane at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
Log Message:
-----------
[CIR] Add support for arrays-of-pointer-to-member-data (#186887)
This patch adds support for arrays of pointer-to-member-data, just like
we do for pointer-to-member-function. This patch also does a refactor of
some basic value lowering, which both makes this apply to locals and
constants, but also unifies them in preperation of future work when it
comes to record types.
Other than the otherwise-not-quite-intentional change (the recursion got
this feature, and I realized it worked while looking at other
things!), this is NFCI.
Commit: 1db8096555788188066b3b49b27056446096d81f
https://github.com/llvm/llvm-project/commit/1db8096555788188066b3b49b27056446096d81f
Author: lntue <lntue at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libc/src/__support/math/hypotf.h
Log Message:
-----------
[libc][math] Improve hypotf performance. (#186627)
Update the check for when a more careful rounding is needed, and remove
the redundant clear exception step.
Commit: 073d019c450da7948a23ae240bfc6388971a8f25
https://github.com/llvm/llvm-project/commit/073d019c450da7948a23ae240bfc6388971a8f25
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M openmp/device/include/Synchronization.h
Log Message:
-----------
[OpenMP] Use the standard fences now that they are supported (#187138)
Summary:
We can now use these on NVPTX properly.
Commit: fa8d3c810f36a547d3660f09aca07f8dc63fc952
https://github.com/llvm/llvm-project/commit/fa8d3c810f36a547d3660f09aca07f8dc63fc952
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
Log Message:
-----------
[NewPM] Add port for AArch64DeadRegisterDefinitionsPass (#187180)
Adds a newPM pass for AArch64DeadRegisterDefinitions
* Refactors base logic into an Impl class
* Renames old pass with the "Legacy" suffix
* Adds the new pass manager pass using refactored logic
No existing `.mir` tests to update.
Context and motivation in
https://llvm.org/docs/NewPassManager.html#status-of-the-new-and-legacy-pass-managers
Commit: c0064f744c01bef79babbf5853288a11cd7a3c9f
https://github.com/llvm/llvm-project/commit/c0064f744c01bef79babbf5853288a11cd7a3c9f
Author: Anonmiraj <ezzibrahimx at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libc/src/__support/FPUtil/dyadic_float.h
Log Message:
-----------
[libc][math] Fix missing underflow exception in DyadicFloat::generic_as (#186734)
The `generic_as` function in `dyadic_float.h` had a missing `underflow =
true` at the exact boundary where `unbiased_exp == -EXP_BIAS -
FRACTION_LEN`.
At this boundary, the mantissa MSB maps exactly to the round bit, so
out_mantissa is 0 and the result can only be 0 or min_subnormal. The
value is at most min_subnormal / 2, so it is always tiny and always
inexact `underflow` must be signaled. The < case and the general
subnormal range both already set underflow = true this boundary case was
the only gap.
this specifically fix this error in the erfcf16 function
```
Extracted erfcf16.cpp.o from archive for linking
Running exhaustive check in --rndn mode...
Missing underflow exception for x=0x1.eacp+1 (y=0x1p-24)
```
this fix may also apply to other bfloat16 missing exceptions
(@Sukumarsawant)
part of: #186483
CC: @lntue
Commit: 77667d7c5bd551ec50a5bab73f64bf8e3143ab78
https://github.com/llvm/llvm-project/commit/77667d7c5bd551ec50a5bab73f64bf8e3143ab78
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang-rt/test/Driver/safe-trampoline-gnustack.f90
Log Message:
-----------
[flang] Fix the CHECK: directive to ensure flagging RWE (NFC) (#187186)
Update the check to catch "RWE" in the header.
Commit: dfc02b7744c5ca6e9555dca2f75e5fd92db90218
https://github.com/llvm/llvm-project/commit/dfc02b7744c5ca6e9555dca2f75e5fd92db90218
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Analyses/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysisFramework/BUILD.gn
Log Message:
-----------
[gn] port c1f6fd24aa637d6a
Commit: d783723a584a1cab30c3a92ca247abb3401fc6da
https://github.com/llvm/llvm-project/commit/d783723a584a1cab30c3a92ca247abb3401fc6da
Author: Midhunesh <midhunesh.p at ibm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M compiler-rt/cmake/base-config-ix.cmake
Log Message:
-----------
[compiler-rt] Update runtime build script to detect RPC XDR header for AIX (#186977)
`sanitizer_common` and its tests depend on the RPC XDR header for layout
compatibility. When this header is absent from a CI or build
environment, changes that silently break the expected struct layout go
undetected, since there is nothing to fail the build.
The default is opt-in — error on missing header is on by default for AIX
(where the dependency is known and the package is `bos.net.nfs.adt`) and
off by default elsewhere.
Changes:
1. On AIX, checks for `tirpc/rpc/xdr.h`; on all other platforms, checks
for `rpc/xdr.h`
2. Introduces `COMPILER_RT_REQUIRE_RPC_XDR_H` CMake option (default ON
on AIX, OFF elsewhere) that, when set, turns a missing header into a
fatal configuration error with an actionable message
3. Drive-by fix: Normalizes `HAVE_RPC_XDR_H` to 0 when the header is
absent, for consistent downstream `if()/#cmakedefine` behavior
Commit: c94403dbd33694b84776659e7c3491d51439f869
https://github.com/llvm/llvm-project/commit/c94403dbd33694b84776659e7c3491d51439f869
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/ADT/BUILD.gn
Log Message:
-----------
[gn build] Port 45fe4bbdde13
Commit: 0f6cd5c1838c8a8690d763fcc5397b7dff0921c2
https://github.com/llvm/llvm-project/commit/0f6cd5c1838c8a8690d763fcc5397b7dff0921c2
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/readability/BUILD.gn
Log Message:
-----------
[gn build] Port 55db533b74fe
Commit: 6ef0b80d9d8e9b9c9c8477fbee2991b69cf77f60
https://github.com/llvm/llvm-project/commit/6ef0b80d9d8e9b9c9c8477fbee2991b69cf77f60
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Windows/Common/BUILD.gn
Log Message:
-----------
[gn build] Port 681f1a5ee987
Commit: e9b95ce4a7287205670ee2bdb9642d9485f845fc
https://github.com/llvm/llvm-project/commit/e9b95ce4a7287205670ee2bdb9642d9485f845fc
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
Log Message:
-----------
[gn build] Port 6b3cf50d958c
Commit: c051449e27df0b6307693a5c841036934d8d7991
https://github.com/llvm/llvm-project/commit/c051449e27df0b6307693a5c841036934d8d7991
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/DebugInfo/DWARF/BUILD.gn
Log Message:
-----------
[gn build] Port d0d0a665c238
Commit: e1c81fa24eeb3a8d78393863caadf059627d221d
https://github.com/llvm/llvm-project/commit/e1c81fa24eeb3a8d78393863caadf059627d221d
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
Log Message:
-----------
[gn build] Port e4a2d9cd8a63
Commit: 6261cb4487f153c599a040d7a77524561b520240
https://github.com/llvm/llvm-project/commit/6261cb4487f153c599a040d7a77524561b520240
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/landing_pad.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/slp-fma-loss.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/buildvector-all-external-scalars.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/small-phi-tree.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/SLP-cmp-cost-query.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/X86/cse.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-node-with-copyable-operands.ll
M llvm/test/Transforms/SLPVectorizer/X86/expected-prof-consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-bin-op-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
M llvm/test/Transforms/SLPVectorizer/X86/matching-gather-nodes-phi-users.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/parent-node-split-non-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_not_all_parts.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-schedule-use-order.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
M llvm/test/Transforms/SLPVectorizer/consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/freeze-signedness-missed.ll
M llvm/test/Transforms/SLPVectorizer/reduced-gathered-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
Log Message:
-----------
[SLP] Loop aware cost model/tree building
Currently, SLP vectorizer do not care about loops and their trip count.
It may lead to inefficient vectorization in some cases. Patch adds loop
nest-aware tree building and cost estimation.
When it comes to tree building, it now checks that tree do not span
across different loop nests. The nodes from other loop nests are
immediate buildvector nodes.
The cost model adds the knowledge about loop trip count. If it is
unknown, the default value is used, controlled by the
-slp-cost-loop-min-trip-count=<value> option. The cost of the vector
nodes in the loop is multiplied by the number of iteration (trip count),
because each vector node will be executed the trip count number of
times. This allows better cost estimation.
Reviewers: jdenny-ornl, vporpo, hiraditya, RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/150450
Recommit after revert in c7bd3062f1dac975cf9b706f457b3c55b4bf57ff
Commit: 2ef6a669afe96f52fbdc4f4fda877cac1761cc61
https://github.com/llvm/llvm-project/commit/2ef6a669afe96f52fbdc4f4fda877cac1761cc61
Author: Folkert de Vries <folkert at folkertdev.nl>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AArch64/is_fpclass.ll
Log Message:
-----------
[NFC][AArch64] fix triple used in test (#187275)
cc @dyung https://github.com/llvm/llvm-project/pull/187231
Commit: b85cf95aad712879e8e5234a7eb59544ad7b1cca
https://github.com/llvm/llvm-project/commit/b85cf95aad712879e8e5234a7eb59544ad7b1cca
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
A flang/test/Fir/OpenACC/acc-routine-to-gpu-func.fir
M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
A mlir/lib/Dialect/OpenACC/Transforms/ACCRoutineToGPUFunc.cpp
M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
A mlir/test/Dialect/OpenACC/acc-routine-to-gpu-func.mlir
Log Message:
-----------
[mlir][acc] Move acc routine functions into GPU module (#187161)
The OpenACC routine directive defines functions that may be called from
device code; those functions (and any device-required callees) must be
present in the device compilation unit. This PR introduces
ACCRoutineToGPUFunc pass which moves materialized acc routines into the
GPU module as gpu.func so they can be compiled for the device.
This adds testing showing the pass on both MLIR and FIR. The FIR tests
required improvements in OpenACCSupport implementation to ensure that
CUF and Fortran runtime is considered as legal for GPU.
Commit: 7a2193cd190baf3a396b7d0b2b34f06b380c7a37
https://github.com/llvm/llvm-project/commit/7a2193cd190baf3a396b7d0b2b34f06b380c7a37
Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M offload/CMakeLists.txt
Log Message:
-----------
[Offload] Add CMake alias for CI (#186099)
In the pre-merge CI we need a top-level visible target that can be used
to build offload, i.e., libomptarget and LLVMOffload.
The related PR to include offload into pre-merge CI is here:
https://github.com/llvm/llvm-project/pull/174955
Commit: a4ef581c714b939ee692d1cff212c48a9ae3a000
https://github.com/llvm/llvm-project/commit/a4ef581c714b939ee692d1cff212c48a9ae3a000
Author: Drew Kersnar <dkersnar at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
A llvm/test/Transforms/InstCombine/gep-replace-idx-zero-multi-use.ll
Log Message:
-----------
[InstCombine] RAUW for proven zero-indexed GEPs rather than cloning for a specific user (#185053)
When analyzing operands of loads/stores, if we can guarantee that a GEP
is always zero-indexed, it is better to modify the GEP such that other
users can take advantage of the simplification, rather than just cloning
it for one specific load/store user. Edit: implementation changed to
call replaceInstUsesWith instead of modifying in place.
Without this change, replaceGEPIdxWithZero clones the GEP for the
triggering load/store, leaving the original variable-indexed GEP in
place. Other users of that GEP (e.g., a constant-offset GEP feeding a
second load) miss the simplification. Testcase demonstrates this:
without the first load _modifying_ the gep, the _second_ load will still
be dependent on both GEPs, and thus unnecessarily dependent on the %idx.
This lack of simplification can cause issues with later passes such as
LICM.
Alternative approaches could be to add a version of this transform into
visitGEP, but there is precedent to doing so in visitLoad/visitStore,
see simplifyNonNullOperand. And because the optimization is tied to the
dereference that happens in the load/store, I think it reasonably fits
here.
Alive2 proof: https://alive2.llvm.org/ce/z/-HZd9c
Alive2 counterexample showing why we cannot blindly modify the gep in
place without some sort of condition:
https://alive2.llvm.org/ce/z/dzKuc3
Commit: fc569dafd76751a3d18c3899545dd88afdbc221b
https://github.com/llvm/llvm-project/commit/fc569dafd76751a3d18c3899545dd88afdbc221b
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libcxx/include/__functional/is_transparent.h
M libcxx/include/map
M libcxx/include/set
M libcxx/include/unordered_map
M libcxx/include/unordered_set
Log Message:
-----------
[libc++] Refactor __is_transparent_v to make it clear what it depends on (#186419)
__is_transparent_v used to accept an additional _Key template argument
whose sole purpose was to make the instantiation as a whole dependent.
It turns out that creates confusion around whether that trait takes into
account the key type (it does not). Instead, we can use our traditional
approach for making template params artificially dependent, which allows
removing the confusing parameter.
For disclaimer, I authored this patch with Claude code just to see if I
could get it to do the right thing. It works, but you have to steer it
right.
Fixes #186417
Commit: bf46a95f2ca2e4658ae08705db97704f96611021
https://github.com/llvm/llvm-project/commit/bf46a95f2ca2e4658ae08705db97704f96611021
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
A llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
A llvm/test/Transforms/LoopVectorize/RISCV/live-out.ll
M llvm/test/Transforms/LoopVectorize/optsize.ll
Log Message:
-----------
[VPlan] Use target's index type for {First,Last}ActiveLane instead of i64 (#186361)
Fixes #186005
On RV32 with zve32x, i.e. no legal 64 bit types either scalar or vector,
@llvm.cttz.elts.i64 cannot be lowered and so returns an illegal cost for
scalable VFs. However VPInstruction::FirstActiveLane and
VPInstruction::LastActiveLane always use a hardcoded i64 type.
This causes a legacy/VPlan cost model mismatch in the live-out.ll test,
and in early-exit-live-out.ll prevents the scalable VF from being
chosen.
This PR teaches the two VPInstructions to use the target's index type,
i.e. the width of a pointer in the default address space, so it will
generate a 32 bit cttz.elts on RV32. This should be large enough to hold
the maximum number of elements in a vector, as if the vector was any
bigger it would imply it isn't accessible by memory.
I considered using the canonical IV type but I don't think that will
work since the canonical IV can be i64 on RV32, and it causes
regressions due to extra zexting on 64-bit targets with a 32-bit IV.
Commit: 5e3202749ac19f95737dc15ff5db739c77c0b992
https://github.com/llvm/llvm-project/commit/5e3202749ac19f95737dc15ff5db739c77c0b992
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Rewrite/FrozenRewritePatternSet.cpp
M mlir/test/mlir-opt/debugcounter.mlir
Log Message:
-----------
[MLIR] Fix crash in FrozenRewritePatternSet when PDL lowering is skipped by debug counter (#186159)
When using --mlir-debug-counter=pass-execution-skip=N, the MLIR debug
counter can skip the internal PDL-to-PDLInterp lowering pass that runs
inside FrozenRewritePatternSet's constructor. This caused an assertion
failure in PDLByteCode::Generator::generate() because the PDL module
wasn't properly converted to the interpreter dialect.
The fix adds a check after the PDL lowering pipeline runs to verify that
the expected matcher function symbol was produced. If the symbol is
absent (e.g., because the lowering was skipped by a debug counter),
bytecode generation is skipped entirely and PDL patterns are not
applied. This allows debug counter bisection to work without crashing.
Fixes #131441
Fixes #128342
Assisted-by: Claude Code
Commit: 3a3f863e34aee19295496bba92fa1048fdf2ffa7
https://github.com/llvm/llvm-project/commit/3a3f863e34aee19295496bba92fa1048fdf2ffa7
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/sse-minmax-finite.ll
M llvm/test/CodeGen/X86/sse-minmax.ll
Log Message:
-----------
[X86] sse-minmax.ll - add baseline SSE2 test coverage (#187283)
Also removed a load of orphaned RELAX checks
Commit: 9f4a1ebb20541aa14c8f45390c06fb6656e41a8b
https://github.com/llvm/llvm-project/commit/9f4a1ebb20541aa14c8f45390c06fb6656e41a8b
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/include/flang/Parser/message.h
Log Message:
-----------
[flang] Add const-qualified version of parser::Messages::messages() (#187250)
Commit: 080bc2572896c0e02fa81840df978882840b7973
https://github.com/llvm/llvm-project/commit/080bc2572896c0e02fa81840df978882840b7973
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/BasicBlock.h
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/tools/llvm-ir2vec/lib/Utils.cpp
M llvm/tools/llvm-sim/llvm-sim.cpp
M llvm/unittests/IR/BasicBlockTest.cpp
Log Message:
-----------
[IR][NFCI] Remove *WithoutDebug (#187240)
The function instructionsWithoutDebug serves two uses: skipping debug
intrinsics and skipping pseudo instructions. Nonetheless, these
functions are expensive due to out-of-line filtering using
std::function. Ideally, the filter should be inlined, but that would
require including IntrinsicInst.h in BasicBlock.h.
We no longer use debug intrinsics, so the first use (parameter false) is
no longer needed. The second use is sometimes needed, but the
distinction between PseudoProbe instructions can be made at the call
sites more easily in many cases.
Therefore, remove instructionsWithoutDebug/sizeWithoutDebug.
c-t-t stage2-O3 -0.21%.
Commit: 88f8a2bdb25b7aef4b02df33b859815b7b13216f
https://github.com/llvm/llvm-project/commit/88f8a2bdb25b7aef4b02df33b859815b7b13216f
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/is_iostat_value.f90
M flang/test/Lower/Intrinsics/ishft.f90
M flang/test/Lower/Intrinsics/ishftc.f90
M flang/test/Lower/Intrinsics/lbound.f90
M flang/test/Lower/Intrinsics/leadz.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 34) (#187175)
Tests converted from test/Lower/Intrinsics: is_iostat_value.f90,
ishft.f90, ishftc.f90, lbound.f90, leadz.f90
Commit: 9871ad1c8a54a4772877622d82ea05d29c1a94bd
https://github.com/llvm/llvm-project/commit/9871ad1c8a54a4772877622d82ea05d29c1a94bd
Author: Luke Lau <luke at igalia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
Log Message:
-----------
[VPlan] Rename DataLayout -> DL
To fix the buildbot failure in https://lab.llvm.org/buildbot/#/builders/97/builds/12155
Commit: dc0ba9b4531f74a8aaa415afae666aa3d18adf1b
https://github.com/llvm/llvm-project/commit/dc0ba9b4531f74a8aaa415afae666aa3d18adf1b
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
Log Message:
-----------
[flang][acc] Add missing dependency for checking CUF attributes (#187292)
PR https://github.com/llvm/llvm-project/pull/187161 introduced some
logic which checks CUF attributes. But this wasn't added properly to the
dependencies.
Commit: b5ef9e29c5fe12590e1f966c4af35f98185a175f
https://github.com/llvm/llvm-project/commit/b5ef9e29c5fe12590e1f966c4af35f98185a175f
Author: Akimasa Watanuki <mencotton0410 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
Log Message:
-----------
[MLIR][XeGPU] Avoid crashing on `gpu.func` missing `gpu.return` (#186330)
Skip malformed `gpu.func` operations in `MoveFuncBodyToWarpOp`.
This prevents functions without a `gpu.return` terminator from
triggering an assertion.
Add a regression test covering a `gpu.func` missing a return terminator,
and switch the existing unknown-op test to `test.unknown` so the file no
longer needs `--allow-unregistered-dialect`.
While touching the test file, trim a few FileCheck lines that were
asserting printer details instead of the transform behavior.
Fix https://github.com/llvm/llvm-project/issues/186037
Commit: a083e19efeb122131843722990ba1e033d1d2f3d
https://github.com/llvm/llvm-project/commit/a083e19efeb122131843722990ba1e033d1d2f3d
Author: John Brawn <john.brawn at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/test/Transforms/LoopVectorize/AArch64/maxbandwidth-regpressure.ll
A llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-spills.ll
M llvm/test/Transforms/LoopVectorize/LoongArch/reg-usage.ll
Log Message:
-----------
[VPlan] Add the cost of spills when considering register pressure (#179646)
Currently when considering register pressure is enabled, we reject any
VF that has higher pressure than the number of registers. However this
can result in failing to vectorize in cases where it's beneficial, as
the cost of the extra spills is less than the benefit we get from
vectorizing.
Deal with this by instead calculating the cost of spills and adding that
to the rest of the cost, so we can detect this kind of situation and
still vectorize while avoiding vectorizing in cases where the extra cost
makes it not with it.
Commit: b37f8a54a0b1dac57b52ed84b210bea73ab7c282
https://github.com/llvm/llvm-project/commit/b37f8a54a0b1dac57b52ed84b210bea73ab7c282
Author: Caroline Newcombe <caroline.newcombe at hpe.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/lib/Parser/source.cpp
M flang/test/Semantics/getsymbols02.f90
Log Message:
-----------
[flang] Fix extra "./" prefix in source file paths (#186212)
When a relative file search path in the current working directory was
passed to LocateSourceFile, an extra `./` was appended, producing paths
like "././test.F90". This caused the `__FILE__` macro to expand
incorrectly and did not match the behavior of other Fortran compilers
such as gfortran. This caused failures when running an external test
suites that parses `__FILE__` to generate test log filenames.
In LocateSourceFile and LocateSourceFileAll: do not append the search
path if it is the current working directory (`.`). In all other cases,
append the search path to the file name (original behavior).
The test expectation in getsymbols02.f90 is updated because the old
CHECK patterns matched the buggy "././" output.
Commit: 60c102036acf1508b66b1c3e29ffba10d21a6645
https://github.com/llvm/llvm-project/commit/60c102036acf1508b66b1c3e29ffba10d21a6645
Author: Shivam Gupta <shivam98.tkg at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
A llvm/test/MC/AArch64/tls-dtprel64.s
Log Message:
-----------
[AArch64][AsmParser] Add MC support for %dtprel() relocation (#186599)
This patch adds support for the %dtprel relocation specifier in the
AArch64 assembler. This specifier is used to generate the
R_AARCH64_TLS_DTPREL64 relocation, which is used in .debug_info sections
to describe the location of thread-local variables.
Prerequisite for https://github.com/llvm/llvm-project/pull/146572
Commit: 96ec23096ce73b15546f39fd61d950d03c53842d
https://github.com/llvm/llvm-project/commit/96ec23096ce73b15546f39fd61d950d03c53842d
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/docs/BranchWeightMetadata.rst
M llvm/examples/BrainF/BrainF.cpp
M llvm/examples/Fibonacci/fibonacci.cpp
M llvm/examples/IRTransforms/SimplifyCFG.cpp
M llvm/examples/ParallelJIT/ParallelJIT.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/tools/llubi/lib/Interpreter.cpp
M llvm/tools/llvm-diff/lib/DifferenceEngine.cpp
M llvm/tools/llvm-reduce/deltas/ReduceBasicBlocks.cpp
M llvm/tools/llvm-reduce/deltas/ReduceUsingSimplifyCFG.cpp
M llvm/tools/llvm-stress/llvm-stress.cpp
M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
Log Message:
-----------
[tools][examples][NFC] Drop remaining uses of BranchInst (#187293)
This only leaves SandboxIR/SandboxVectorizer, MLIR and Polly before we
can mark BranchInst as deprecated.
Also fix recent introductions from #182223.
Commit: dd9dd1d2f39c8feb650de732540198b96240e4ff
https://github.com/llvm/llvm-project/commit/dd9dd1d2f39c8feb650de732540198b96240e4ff
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Bufferization/Transforms/BufferOptimizations.cpp
M mlir/test/Transforms/promote-buffers-to-stack.mlir
Log Message:
-----------
[mlir][bufferization] Fix crash in promote-buffers-to-stack for nested memrefs (#186426)
The `--promote-buffers-to-stack` pass crashes when allocating a memref
whose element type is itself a memref (e.g., `memref<1xmemref<2xf32>>`).
This happens because `defaultIsSmallAlloc` calls
`DataLayout::getTypeSizeInBits` on the element type, but `MemRefType`
(and other types without `DataLayoutTypeInterface`) trigger a fatal
error when queried this way.
Fix the crash by checking whether the element type has data layout
support before computing its size. Types that are not int/float,
complex, index, or vector and do not implement `DataLayoutTypeInterface`
are silently skipped (i.e., the allocation is not promoted).
Fixes #60092
Assisted-by: Claude Code
Commit: bfedc2aa7668a184d1a8bad709f42e2d092b00d6
https://github.com/llvm/llvm-project/commit/bfedc2aa7668a184d1a8bad709f42e2d092b00d6
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M polly/include/polly/CodeGen/IRBuilder.h
M polly/include/polly/CodeGen/Utils.h
M polly/include/polly/ScopDetection.h
M polly/include/polly/Support/ScopHelper.h
M polly/lib/Analysis/ScopBuilder.cpp
M polly/lib/Analysis/ScopDetection.cpp
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IRBuilder.cpp
M polly/lib/CodeGen/LoopGenerators.cpp
M polly/lib/CodeGen/Utils.cpp
M polly/lib/Support/ScopHelper.cpp
M polly/lib/Transform/CodePreparation.cpp
Log Message:
-----------
[Polly][NFC] Drop uses of BranchInst (#187301)
Commit: 4c745df8bc90d3271a6612bee2fa39afe9ab1dad
https://github.com/llvm/llvm-project/commit/4c745df8bc90d3271a6612bee2fa39afe9ab1dad
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenACC/OpenACCToLLVMIRTranslation.cpp
M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
Log Message:
-----------
[MLIR][LLVMIR][NFC] Drop uses of BranchInst (#187304)
Commit: 0f5d8a960f7c25570b3eb1ab3663e52b9ea1aa8c
https://github.com/llvm/llvm-project/commit/0f5d8a960f7c25570b3eb1ab3663e52b9ea1aa8c
Author: google-llvm-bazel-bot <google-bazel-bot at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes dd9dd1d (#187310)
This fixes dd9dd1d2f39c8feb650de732540198b96240e4ff.
Commit: f60934412000f3d4e28a7907905c5eebcf48b6d3
https://github.com/llvm/llvm-project/commit/f60934412000f3d4e28a7907905c5eebcf48b6d3
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for ds_add/sub_gs_reg_rtn (#185991)
Commit: 63b44decb547f07e7902bad529c00abab735049e
https://github.com/llvm/llvm-project/commit/63b44decb547f07e7902bad529c00abab735049e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
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/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
Log Message:
-----------
[clang][bytecode] Allocate local variables in `InterpFrame` tail storage (#185835)
Instead of heap-allocating an `InterpFrame` and then immediately
heap-allocating more space for the local variables, do only one
heap-allocation and use tail storage for the local variables.
We already know how many bytes we need to for the tail storage after
all.
This also makes `InterpFrame` a little smaller since we don't need to
save an explicit pointer for the local variable memory.
For an artificial test case doing lots of function calls with local
variables like:
```c++
constexpr int plus(int a, int b) {
int x = a;
int y = b;
int z = x + y;
return z;
}
constexpr int minus(int a, int b) {
int x = a;
int y = b;
int z = x - y;
return z;
}
constexpr int foo() {
int a = 0;
for (unsigned I = 0; I != 1'000'000; ++I) {
int b = I;
a = plus(a,b );
a = minus(a,I);
}
return a;
}
static_assert(foo() == 0);
```
this saves us over 6%.
We also eliminate the per-argument `Block` heap allocation on the first
pointer-access to an argument the same way. To make this work, we change
the param ops to use the parameter index instead of the offset.
Commit: 9418cdbccab90e0874a3fdc8849d3bd29cc24f7f
https://github.com/llvm/llvm-project/commit/9418cdbccab90e0874a3fdc8849d3bd29cc24f7f
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
R llvm/test/tools/llvm-remarkutil/Inputs/filter.yaml
R llvm/test/tools/llvm-remarkutil/filter.test
A llvm/test/tools/llvm-remarkutil/filter/Inputs/filter.yaml
A llvm/test/tools/llvm-remarkutil/filter/Inputs/filter2.yaml
A llvm/test/tools/llvm-remarkutil/filter/filter-multi.test
A llvm/test/tools/llvm-remarkutil/filter/filter.test
M llvm/tools/llvm-remarkutil/RemarkFilter.cpp
M llvm/tools/llvm-remarkutil/RemarkUtilHelpers.h
Log Message:
-----------
[llvm-remarkutil] filter: Support multiple input files (#187162)
Refactor filter into a FilterTool class that can process multiple input
files sequentially and emits the remarks into a single output file.
Pull Request: https://github.com/llvm/llvm-project/pull/187162
Commit: 1b8db068ed27351a00d71e511e55bb5ce88ac893
https://github.com/llvm/llvm-project/commit/1b8db068ed27351a00d71e511e55bb5ce88ac893
Author: Steven Wu <stevenwu at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/Module.h
M lldb/source/Core/Module.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Symbol/SymbolFile.cpp
A lldb/test/API/functionalities/compilation-prefix-map/Makefile
A lldb/test/API/functionalities/compilation-prefix-map/TestCompilationPrefixMap.py
A lldb/test/API/functionalities/compilation-prefix-map/main.c
Log Message:
-----------
[PrefixMap] Teach lldb to auto-load compilation-prefix-map.json (#187145)
Add a LoadCompilationPrefixMap() helper in SymbolFile::FindPlugin that
walks up from the symbol file's directory looking for a
compilation-prefix-map.json file. When found, each key→value entry is
applied to the module's source path mapping list, allowing LLDB to
resolve source file paths that were rewritten by -fdebug-prefix-map at
build time without requiring manual `settings set target.source-map`.
The JSON file format maps fake paths (as written into debug info) back
to their real on-disk counterparts:
{ "/fake/srcdir": "/real/srcdir" }
Directory results are cached so the filesystem is walked at most once
per unique directory across all modules loaded in a session.
Also apply the module's source path remappings in
SymbolFileDWARFDebugMap::ParseCompileUnitAtIndex when constructing
compile units from N_SO stabs. This mirrors what MakeAbsoluteAndRemap
does for the dSYM case so that fake paths baked into the debug map are
transparently resolved to real paths.
rdar://84824567
Assisted-By: Claude
Commit: 13a093b2b2508a9a26d47c9b719cffb68756bb99
https://github.com/llvm/llvm-project/commit/13a093b2b2508a9a26d47c9b719cffb68756bb99
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Compute cost for predicated loads/stores to invariant address. (#181572)
Update VPReplicateRecipe::computeCost to compute the cost for stores to
invariant addresses only masked by the header mask.
This matches the legacy cost model logic, but it is slightly odd that
the legacy cost model only seems to do this for stores predicated by the
header mask (i.e. tail-folding and not executed conditionally
otherwise). This is probably something we want to re-evaluate
eventually.
PR: https://github.com/llvm/llvm-project/pull/181572
Commit: 55cee50e6b16502c954b3ff2765a8263d447db31
https://github.com/llvm/llvm-project/commit/55cee50e6b16502c954b3ff2765a8263d447db31
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
Log Message:
-----------
[AMDGPU] Use native instructions for f16 to u16/i16 saturated conversion (#186769)
This addresses one of the limitations of #174726 by directly selecting
`v_cvt_[u16/i16]_f16` instructions for conversion between 16-bit types,
as they already handle saturation internally.
Commit: 16585af33b4dd4e922de479402dac9c36a81d9a0
https://github.com/llvm/llvm-project/commit/16585af33b4dd4e922de479402dac9c36a81d9a0
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCOpsTest.cpp
Log Message:
-----------
[mlir][acc] Fix bindNameValue for RoutineOp (#187307)
If the routine op only has one of the string or id attributes, the API
was crashing since it was attempting to search in both. Guard each
search individually.
Commit: 7a9299f7f11acc6936ac4cf8fc87e6820f184879
https://github.com/llvm/llvm-project/commit/7a9299f7f11acc6936ac4cf8fc87e6820f184879
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Rename add_like pattern -> riscv_add_like (#187306)
Rename to riscv_add_like to discriminate from generic pattern in a future patch
Ideally we'd make the riscv patterns generic but they're currently using value tracking and I'm not sure if we want to that generically?
Commit: 9b0c2a135e078a062a30f0e1282eefbe5a9ea5ed
https://github.com/llvm/llvm-project/commit/9b0c2a135e078a062a30f0e1282eefbe5a9ea5ed
Author: Andrei Elovikov <andrei.elovikov at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/predicator.ll
Log Message:
-----------
[NFC] Update `LoopVectorize/predicator.ll` test (#187125)
Align it with the style of `LoopVectorize/VPlan/predicator.ll`:
* Move ascii-graphs close to IR to avoid scrolling through CHECKs when
comparing the picture and actual IR
* Rename `%cN` to ensure that `bbN` branches on `%cN`
Commit: 9dd2e3792a9f7fb5eccf078b66c9e950a5d2fd9c
https://github.com/llvm/llvm-project/commit/9dd2e3792a9f7fb5eccf078b66c9e950a5d2fd9c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
A llvm/test/CodeGen/RISCV/pr186969.ll
Log Message:
-----------
[DAGCombiner] Move the XORHandle in rebuildSetCC inside the while loop. (#187189)
If N was changed on the previous loop iteration, we need the handle to
point at the new N.
Fixes #186969.
Commit: b17db271d030bc63e6de313a4d02610f8489d251
https://github.com/llvm/llvm-project/commit/b17db271d030bc63e6de313a4d02610f8489d251
Author: David Tenty <daltenty at ibm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Headers/CMakeLists.txt
A clang/lib/Headers/endian.h
A clang/test/Headers/endian.c
Log Message:
-----------
[clang][Headers] add endian.h (#186032)
POSIX.1-2024 defines a header called
`endian.h`` which contains macros and helpers for
handling byte order conversions.
Unfortunately it is not available on all platforms, however LLVM libc
has a useful endian.h
implementation that is essentially only casts and
builtins.
This PR draws on that implementation to add a
clang header so applications on
platforms without it can make use of this header.
The clang header forwards to the system header if
available, so existing usages are not affected.
Commit: 2caba086abeb8f10b4d723b3d2cc205f2da7bbc3
https://github.com/llvm/llvm-project/commit/2caba086abeb8f10b4d723b3d2cc205f2da7bbc3
Author: Roman Vinogradov <roman.vinogradov at sap.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
M compiler-rt/test/asan/TestCases/wild_pointer.cpp
Log Message:
-----------
[ASan] Fix overflow and last byte handling in __asan_region_is_poisoned (#183900)
__asan_region_is_poisoned() uses an exclusive end address
(end = beg + size) to validate the region [beg, end) and to compute
the aligned inner shadow region. This causes correctness issue
near memory range upper boundary and could trigger address space
overflow on 32-bit targets.
1. Incorrect handling of the last byte of a memory range
The implementation checks AddrIsInMem(end) instead of the last
application byte (end - 1). For regions ending at the last byte
of Low/Mid/HighMem (e.g. __asan_region_is_poisoned(kHighMemEnd, 1)),
this returns end (kHighMemEnd + 1) instead of the original
pointer. This behavior is inconsistent with the function’s
semantics and with __asan_address_is_poisoned().
2) address space overflow and invalid shadow range
If a region ends at the top of the virtual address space (kHighMemEnd),
e.g. on 32-bit targets, end = beg + size could wrap to 0.
This violated the invariant beg < end and could trigger
the CHECK failure.
Additionally, overflow in RoundUpTo alignment computations
for aligned_b could produce an invalid shadow region spanning
LowShadow to HighShadow across ShadowGap, leading mem_is_zero()
to access unmapped memory and crash.
Fix by switching to an inclusive last byte:
last = beg + size - 1
All checks are now performed on beg and last. The aligned inner
shadow region is also computed from [beg, last]. Additional guard
for aligned_b prevents the mapping to shadow if aligned_b is wrapped
(in this case the aligned inner region is also empty and doesn't
require the shadow scan via mem_is_zero()).
This fixes incorrect return values at memory range ends and
prevents overflow related crashes on 32-bit targets.
Test is extended to cover these boundary cases.
---------
Co-authored-by: Vitaly Buka <vitalybuka at gmail.com>
Commit: 4e500bd0015042b0cd4b7c87b81caeea06072d24
https://github.com/llvm/llvm-project/commit/4e500bd0015042b0cd4b7c87b81caeea06072d24
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/landing_pad.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/slp-fma-loss.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/buildvector-all-external-scalars.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/small-phi-tree.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/SLP-cmp-cost-query.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/X86/cse.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-node-with-copyable-operands.ll
M llvm/test/Transforms/SLPVectorizer/X86/expected-prof-consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-bin-op-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
M llvm/test/Transforms/SLPVectorizer/X86/matching-gather-nodes-phi-users.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/parent-node-split-non-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_not_all_parts.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-schedule-use-order.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
M llvm/test/Transforms/SLPVectorizer/consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/freeze-signedness-missed.ll
M llvm/test/Transforms/SLPVectorizer/reduced-gathered-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
Log Message:
-----------
Revert "[SLP] Loop aware cost model/tree building"
This reverts commit 6261cb4487f153c599a040d7a77524561b520240 to try to
fix compile time regressions
Commit: 6e86ee2c23d73fa2422f64577b676350fc5f3548
https://github.com/llvm/llvm-project/commit/6e86ee2c23d73fa2422f64577b676350fc5f3548
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang/include/clang/Basic/Module.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/lib/Basic/Module.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/test/Modules/DebugInfoNamespace.cpp
M clang/test/Modules/ExtDebugInfo.cpp
M clang/test/Modules/ExtDebugInfo.m
M clang/test/Modules/ModuleDebugInfo.cpp
M clang/test/Modules/ModuleDebugInfo.m
M clang/test/Modules/ModuleModuleDebugInfo.cpp
M clang/test/Modules/debug-info-moduleimport.m
M clang/test/Modules/global_index.m
M clang/test/Modules/load-after-failure.m
M clang/test/Modules/module-debuginfo-compdir.m
M clang/test/Modules/module-debuginfo-prefix.m
A clang/test/Modules/relative-module-cache.c
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
Log Message:
-----------
[clang][modules] Stop uniquing implicit modules via `FileEntry` (#185765)
This PR changes how `ModuleManager` deduplicates module files.
Previously, `ModuleManager` used `FileEntry` for assigning unique
identity to module files. This works fine for explicitly-built modules
because they don't change during the lifetime of a single Clang
instance. For implicitly-built modules however, there are two issues:
1. The `FileEntry` objects are deduplicated by `FileManager` based on
the inode number. Some file systems reuse inode numbers of previously
removed files. Because implicitly-built module files are rapidly removed
and created, this deduplication breaks and compilations may fail
spuriously when inode numbers are recycled during the lifetime of a
single Clang instance.
2. The first thing `ModuleManager` does when loading a module file is
consulting the `FileManager` and checking the file size and modification
time match the expectation of the importer. This is done even when such
module file already lives in the `InMemoryModuleCache`. This introduces
racy behavior into the mechanism that explicitly tries to solve race
conditions, and may lead into spurious compilation failures.
This PR identifies implicitly-built module files by a pair of
`DirectoryEntry` of the module cache path and the path suffix
`<context-hash>/<module-name>-<module-map-path-hash>.pcm`. This gives us
canonicalization of the user-provided module cache path without turning
to `FileEntry` for the PCM file. The path suffix is Clang-generated and
is already canonical.
Some tests needed to be updated because the module cache path directory
was also used as an include directory. This PR relies on not caching the
non-existence of the module cache directory in the `FileManager`. When
other parts of Clang are trying to look up the same path and cache its
non-existence, things break. This is probably very specific to some of
our tests and not how users are setting up their compilations.
Commit: 81d3f04f2990700688bf089040043b23c21fc412
https://github.com/llvm/llvm-project/commit/81d3f04f2990700688bf089040043b23c21fc412
Author: John Brawn <john.brawn at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-spills.ll
Log Message:
-----------
[NFC] Fix mve-reg-pressure-spills.ll test (#187316)
This test needs a REQUIRES: asserts, as it uses -debug-only.
Commit: 253616de7e8fa4f410e294867abe3ca4cbafdb79
https://github.com/llvm/llvm-project/commit/253616de7e8fa4f410e294867abe3ca4cbafdb79
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libc/CMakeLists.txt
M libc/cmake/modules/LibcConfig.cmake
R libc/docs/configure.rst
Log Message:
-----------
[libc][docs] Generate configure.rst in the build directory (#187266)
generate_config_doc() was writing configure.rst directly into the source
tree, which fails when building from a read-only source directory (e.g.
when the source is on a read-only filesystem or in a packaging
environment).
The Sphinx build in libc/docs/CMakeLists.txt already copies static .rst
files from the source tree into the build tree so that generated docs
don't pollute the source directory. Move configure.rst generation to
follow this same pattern by writing to LIBC_BUILD_DIR/docs/ instead of
LIBC_SOURCE_DIR/docs/.
This also removes configure.rst from the checked-in source tree, since
it was fully generated content that was being regenerated on every CMake
configure anyway.
Commit: d8545a48685710f51049abf5e95a88c992139596
https://github.com/llvm/llvm-project/commit/d8545a48685710f51049abf5e95a88c992139596
Author: Ehsan Amiri <ehsan.amiri at huawei.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
Log Message:
-----------
[LoopFusion] Use DA by default for dependence analysis (#187309)
Loop Fusion includes some internal dependence analysis code. Currently
the pass uses both DA and internal code and chooses the best result. The
goal is to use DA for all dependence analysis requirements in fusion.
This patch changes the default value. Removing the code will be done
separately later.
Commit: b11a603a45e11cad6b22840c2f780c66b5635f58
https://github.com/llvm/llvm-project/commit/b11a603a45e11cad6b22840c2f780c66b5635f58
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
M mlir/test/Dialect/Transform/ops-invalid.mlir
Log Message:
-----------
[mlir][Transform] Fix crash in SequenceOp::getEffects when body region is empty (#185063)
When walking operations post-order and erasing blocks, the inner body
block of a nested transform.sequence can be erased while the outer op is
still alive. If printAsOperand is called on the outer block at that
point, it triggers verification, which calls SequenceOp::getEffects ->
getPotentialTopLevelEffects -> getBodyBlock() -> Region::front() on an
empty region, causing an assertion failure in ilist_iterator
('\!NodePtr->isKnownSentinel()').
Fix by checking that the body region is non-empty before passing its
front block to detail::getPotentialTopLevelEffects in the
PossibleTopLevelTransformOpTrait.
Fixes #60213
Assisted-by: Claude Code
Commit: 71664689574754bf5a60f9eb2b2115d72ec33d61
https://github.com/llvm/llvm-project/commit/71664689574754bf5a60f9eb2b2115d72ec33d61
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
M flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
Log Message:
-----------
[flang][acc] Handle deduplicated use_device (part 2) (#187305)
After https://github.com/llvm/llvm-project/pull/186855 there was still
one additional part of the pass that assumed it was able to erase
acc.use_device. Thus extend the same solution and add test.
Commit: d54da6897375d6d8535df0fa14f1df45bacce74a
https://github.com/llvm/llvm-project/commit/d54da6897375d6d8535df0fa14f1df45bacce74a
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A llvm/test/tools/llvm-remarkutil/filter/filter-exclude.test
M llvm/tools/llvm-remarkutil/RemarkFilter.cpp
Log Message:
-----------
[llvm-remarkutil] filter: Add --exclude flag (#187163)
Add --exclude to invert filter behavior, keeping all remarks excluding
those matching the filter.
Pull Request: https://github.com/llvm/llvm-project/pull/187163
Commit: ba231aaaa0d137bd08ffd625ab9c1ccc3e2a2fa3
https://github.com/llvm/llvm-project/commit/ba231aaaa0d137bd08ffd625ab9c1ccc3e2a2fa3
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
Log Message:
-----------
[clang-doc] Enclose documented entities in a card (#185121)
This patch adds a card that encompasses the whole documented entity
instead of just the description. This helps to visually separate the
documentation which was previously more difficult to distinguish. The
description card is also changed to only show a left border to create
less visual noise within the card.
The light theme colors are also changed slightly to not be completely
white.
Commit: f8db5db9586c399d6c134468475632fa7f726b27
https://github.com/llvm/llvm-project/commit/f8db5db9586c399d6c134468475632fa7f726b27
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/unittests/Optimizer/CMakeLists.txt
A flang/unittests/Optimizer/FIRCallInterfaceTest.cpp
Log Message:
-----------
[flang] Fix fir.call setCalleeFromCallable (#187124)
The CallOpInterface setCalleeFromCallable allows either value or
SymbolRef to be passed in. However, the implementation showed an issue
because while it was able to set attribute, it would fall-through and
also try to set value.
This PR improves the implementation to handle updating the callee even
when switching modes (direct vs indirect) and adds testing for these
APIs.
Commit: a2891ff85c6c66899425d066955e91b61306e14a
https://github.com/llvm/llvm-project/commit/a2891ff85c6c66899425d066955e91b61306e14a
Author: Justin Fargnoli <jfargnoli at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Utils/LoopUnroll.cpp
A llvm/test/Transforms/LoopUnroll/disable-after-count.ll
Log Message:
-----------
Reapply "[LoopUnroll] Remove computeUnrollCount()'s return value" (#187104)
Address
https://github.com/llvm/llvm-project/pull/184529#issuecomment-4074393657
by checking the loop's metadata prior to unrolling.
Commit: a33e9e5047c947cf3d91c85477afbc7bcbd53b17
https://github.com/llvm/llvm-project/commit/a33e9e5047c947cf3d91c85477afbc7bcbd53b17
Author: jimingham <jingham at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/source/Target/StackFrameList.cpp
Log Message:
-----------
Move the call frame edges log messages to the verbose channel. (#187324)
The messages about searching for call edges can be really verbose and
they are only useful if you are explicitly debugging the call edges
feature. Most of the time they are irrelevant and just make the step log
output hard to read.
Commit: 3e09538a42685226d08bd13e0d99106ea3c699fd
https://github.com/llvm/llvm-project/commit/3e09538a42685226d08bd13e0d99106ea3c699fd
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A libcxx/test/std/containers/associative/lookup_with_converting_comparator.pass.cpp
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
Log Message:
-----------
[libc++] Expand test coverage for converting comparators in associative containers (#187133)
This is in preparation for fixing #187105.
Commit: befaa35212dbaac39cd76a8dc748e4df7c90a0d9
https://github.com/llvm/llvm-project/commit/befaa35212dbaac39cd76a8dc748e4df7c90a0d9
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libcxx/include/__tree
M libcxx/include/string
A libcxx/test/libcxx/type_traits/is_transparently_comparable.compile.pass.cpp
Log Message:
-----------
[libc++] Fix passing through object to comparisons in __tree (#186341)
Fixes #180659
Commit: 872247c702ff4bf8c1db5a8ac4fc3ec50415eba7
https://github.com/llvm/llvm-project/commit/872247c702ff4bf8c1db5a8ac4fc3ec50415eba7
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/NVPTXAddrSpace.h
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
Log Message:
-----------
[NVPTX] Split Param address space into EntryParam and DeviceParam (NFC) (#186636)
This change begins clarifying and cleaning up some oddities around the
param address-space in NVPTX. PTX supports ".param" loads and stores
referring to both entry (kernel) and device parameters, however these
spaces are actually quite different. Entry param space supports
pointers, and addrspace-casting to generic while device parameter space
can only be refrenced by a parameter plus an immediate offset. This
change accounts for this fact with the following refactors:
- Rename `ADDRESS_SPACE_PARAM` -> `ADDRESS_SPACE_ENTRY_PARAM`. This
reflects the fact that only entry parameter space can be meaningfully
modeled in LLVM IR and that pointers with this AS in llvm IR are always
referring to entry parameters.
- Add `NVPTX::AddressSpace::DeviceParam` for NVPTX MIR instructions.
This is used in NVPTX MIR instructions to signify that they load/store
device parameters. It has a distinct value from
`NVPTX::AddressSpace::EntryParam` so that in the future we can print
these differently on supported PTX versions.
Commit: 480eba33e29440fe8b29021aee4ae281c6abbdc2
https://github.com/llvm/llvm-project/commit/480eba33e29440fe8b29021aee4ae281c6abbdc2
Author: Steven Wu <stevenwu at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/source/Core/Module.cpp
M lldb/test/API/functionalities/compilation-prefix-map/TestCompilationPrefixMap.py
Log Message:
-----------
[lldb][PrefixMap] follow up fixes to #187145 (#187337)
Fix and improve #187145 for following issues:
* Fix unhandled error.
* Align the log type with the file where it contains.
* The added test doesn't work on windows host for remote debugging, add
decorator to skip when host and target do not match.
Commit: 81950f6de421bd3d199af0e2cb88a7e3608d6222
https://github.com/llvm/llvm-project/commit/81950f6de421bd3d199af0e2cb88a7e3608d6222
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Dialect/GPU/IR/InferIntRangeInterfaceImpls.cpp
M mlir/test/Dialect/GPU/int-range-interface-cluster.mlir
Log Message:
-----------
[mlir][GPU] Bump static bound on cluster IDs (#187106)
Hardware (like AMD's gfx1250) allows 16 workgroups per cluster, but the
static bound of 8 from many years ago hasn't been updated. This commit
adds such an update and adds a test for that bound.
Commit: b2c2422c2ea97f30b6131c327d9168809c649be9
https://github.com/llvm/llvm-project/commit/b2c2422c2ea97f30b6131c327d9168809c649be9
Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
A clang/test/CIR/CodeGen/Inputs/std-compare.h
A clang/test/CIR/CodeGen/three-way-cmp.cpp
A clang/test/CIR/IR/invalid-cmp3way.cir
Log Message:
-----------
[CIR] Upstream ThreeWayCmpOp (#169963)
This PR upstreams the three way compare op from the incubator repo
---------
Co-authored-by: Hendrik Hübner <hhuebner at Hendriks-MacBook-Pro.local>
Commit: 0ea2e5813f9627a5fc10af6e70641e923c8f2e5e
https://github.com/llvm/llvm-project/commit/0ea2e5813f9627a5fc10af6e70641e923c8f2e5e
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
A llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll
R llvm/test/Transforms/LoopVectorize/single_early_exit_with_outer_loop.ll
Log Message:
-----------
[VPlan] Account for early-exit dispatch blocks when updating LI. (#185618)
Now that we can vectorize loops with multiple early exits, we emit
dispatch blocks after the middle block to go to a specific exit or
continue in the dispatch chain.
With that, we need to be a bit more careful when it comes to picking the
loop the dispatch block belongs to. The dispatch block will belong to
the innermost loop of all exit blocks reachable from the current block.
Fixes https://github.com/llvm/llvm-project/issues/185362
PR: https://github.com/llvm/llvm-project/pull/185618
Commit: e9799e51ed32cf5238be03aadd4d8615a6c2cb67
https://github.com/llvm/llvm-project/commit/e9799e51ed32cf5238be03aadd4d8615a6c2cb67
Author: John Harrison <harjohn at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-dap/variables/main.cpp
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/Variables.cpp
M lldb/tools/lldb-dap/Variables.h
M lldb/unittests/DAP/VariablesTest.cpp
Log Message:
-----------
[lldb-dap] Improve support for variables with anonymous fields and types (#186482)
While looking at the '[raw]' value of a std::vector I noticed we didn't
handle the anonymous inner struct very well. The 'evaluateName' was
incorrect (e.g. the evaluateName would return `<var>.` for the anonymous
struct).
This improves support for variables with anonymous fields and anonymous
types.
* Changed the name of anonymous fields from `<null>` to `(anonymous)`,
which matches other tooling like clangd's representation and how types
are presented if the field is not defined.
* Adjusts variables to not return an 'evaluateName' for anonymous
fields.
* Adjusted '[raw]' values to be marked as 'internal' which deemphasizes
them in the UI.
While working in this area, I also consolidated some helpers that are
only used within Variables.cpp.
Before my changes:
<img width="513" height="460" alt="before"
src="https://github.com/user-attachments/assets/3da0aada-8ba3-415d-bbec-56b41a9b9415"
/>
After my changes:
<img width="414" height="467" alt="after"
src="https://github.com/user-attachments/assets/66a47108-ee44-4e01-8eab-e89edb348fde"
/>
Commit: 17158b2ab16dd5d01f5181480415e96b8bb502d3
https://github.com/llvm/llvm-project/commit/17158b2ab16dd5d01f5181480415e96b8bb502d3
Author: Hari Limaye <hari.limaye at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
Log Message:
-----------
[InstCombine] Fix comment in SimplifyDemandedUseBits (NFC) (#187126)
Fix the values in the truth table comment for the combine
add iN (sext i1 X), (sext i1 Y) --> sext (X | Y) to iN
Commit: eabcfcee0803c72baa22f1209066b8a9f50076e4
https://github.com/llvm/llvm-project/commit/eabcfcee0803c72baa22f1209066b8a9f50076e4
Author: Kai <47328809+kcloudy0717 at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Basic/Builtins.td
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/CodeGenHLSL/builtins/QuadReadAcrossX.hlsl
A clang/test/SemaHLSL/BuiltIns/QuadReadAcrossX-errors.hlsl
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/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
A llvm/test/CodeGen/DirectX/QuadReadAcrossX.ll
M llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll
A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/QuadReadAcrossX.ll
Log Message:
-----------
[HLSL][DXIL][SPIRV] QuadReadAcrossX intrinsic support (#184360)
This PR adds QuadReadAcrossX intrinsic support in HLSL with codegen for
both DirectX and SPIRV backends. Resolves
https://github.com/llvm/llvm-project/issues/99175.
- [x] Implement QuadReadAcrossX clang builtin
- [x] Link QuadReadAcrossX clang builtin with hlsl_intrinsics.h
- [x] Add sema checks for QuadReadAcrossX to
CheckHLSLBuiltinFunctionCall in SemaChecking.cpp
- [x] Add codegen for QuadReadAcrossX to EmitHLSLBuiltinExpr in
CGBuiltin.cpp
- [x] Add codegen tests to
clang/test/CodeGenHLSL/builtins/QuadReadAcrossX.hlsl
- [x] Add sema tests to
clang/test/SemaHLSL/BuiltIns/QuadReadAcrossX-errors.hlsl
- [x] Create the int_dx_QuadReadAcrossX intrinsic in
IntrinsicsDirectX.td
- [x] Create the DXILOpMapping of int_dx_QuadReadAcrossX to 123 in
DXIL.td
- [x] Create the QuadReadAcrossX.ll and QuadReadAcrossX_errors.ll tests
in llvm/test/CodeGen/DirectX/
- [x] Create the int_spv_QuadReadAcrossX intrinsic in IntrinsicsSPIRV.td
- [x] In SPIRVInstructionSelector.cpp create the QuadReadAcrossX
lowering and map it to int_spv_QuadReadAcrossX in
SPIRVInstructionSelector::selectIntrinsic.
- [x] Create SPIR-V backend test case in
llvm/test/CodeGen/SPIRV/hlsl-intrinsics/QuadReadAcrossX.ll
Commit: da47ede4b2723f57c6bb3f9fd801d4a1f09c8cd4
https://github.com/llvm/llvm-project/commit/da47ede4b2723f57c6bb3f9fd801d4a1f09c8cd4
Author: Usama Hameed <u_hameed at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
A llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
Log Message:
-----------
[AArch64] Fix register scavenger crash when merging MTE stack tags (#186934)
When `-sanitize=memtag-stack` is enabled, `TagStoreEdit::emitLoop`
optimizes contiguous ST2Gi instructions into an STGloop. Because this
runs during PEI (post-register allocation), it spawns two new virtual
registers: BaseReg and SizeReg.
Under high register pressure (e.g., Swift async continuation thunks
where almost all registers are kept live), the Register Scavenger must
rely on emergency spill slots to assign physical registers to BaseReg
and SizeReg.
Previously, the compiler assumed at most one emergency spill slot was
needed. If PEI found an unused Callee-Saved Register (`ExtraCSSpill`),
it bypassed allocating an emergency slot entirely. If no CSRs were free,
it allocated exactly one slot. Because STGloop requires TWO scratch
locations, the scavenger would crash trying to fulfill the second
allocation.
This patch fixes the crash by checking the available scavenger capacity
(Free GPRs + Allocated Emergency Spill Slots) prior to merging
instructions. If there are fewer than 2 available slots, we bail out and
fall back to emitting unrolled ST2Gi instructions, which can be safely
scavenged.
Added a comprehensive MIR test verifying loop formation behavior across
all combinations of free GPRs and emergency spill slots.
Assisted-by: claude
rdar://172501087
Commit: 03f488a0025514a129571a4f632c31a14bff9d22
https://github.com/llvm/llvm-project/commit/03f488a0025514a129571a4f632c31a14bff9d22
Author: Elia Geretto <egeretto at qti.qualcomm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/test/MC/AArch64/global-tagging.ll
Log Message:
-----------
[AsmPrinter][MTE] Support memtag-globals for all AArch64 targets (#187065)
This change ensures that all AArch64 targets can use memtag globals, not
only Android.
Commit: c630b09af7dcf42b147b01a5605db0ab7bf32782
https://github.com/llvm/llvm-project/commit/c630b09af7dcf42b147b01a5605db0ab7bf32782
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
Log Message:
-----------
[CIR][NFC] Remove NYI checks in ternary with cleanup (#186870)
We added those checks when CleanupScopeOp is used to emit an error
message in this edge case until we fix it. Now it's already fixed, and
we don't need to keep the NYI
Commit: d4b86e561752a3ee6a6cba552156d458d2a0b032
https://github.com/llvm/llvm-project/commit/d4b86e561752a3ee6a6cba552156d458d2a0b032
Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/IVUsers.h
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
A llvm/test/Transforms/LoopStrengthReduce/X86/iv-chain-assume-ephemeral.ll
Log Message:
-----------
[LSR] skip ephemeral IV users when collecting IV chains (#187282)
IVUsers records ephemeral values used only by `llvm.assume` as IV
operands in the Processed set. As a result, `CollectChains` picks them
up and builds unnecessary increment chains. Fix this by checking
`IVUsers::isEphemeral` before collecting the chains.
Fixes #187270
Commit: 96299d8d4d3cc2f563d8c1ee77d8fe888343560a
https://github.com/llvm/llvm-project/commit/96299d8d4d3cc2f563d8c1ee77d8fe888343560a
Author: Kelvin Li <kli at ca.ibm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang-rt/test/Driver/safe-trampoline-gnustack.f90
M flang-rt/test/lit.site.cfg.py.in
Log Message:
-----------
[flang] Disable trampoline test for PPC (NFC) (#187194)
Commit: d226f1b16136def8b3d195cd64e9728389a76c62
https://github.com/llvm/llvm-project/commit/d226f1b16136def8b3d195cd64e9728389a76c62
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_u64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
M llvm/test/CodeGen/AMDGPU/bf16-math.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics.ll
M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
M llvm/test/CodeGen/AMDGPU/mad_u64_u32.ll
M llvm/test/CodeGen/AMDGPU/max.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-barriers.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-local.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-cluster.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-lastuse.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-cluster.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-lastuse.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-cluster.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-lastuse.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-singlethread.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-volatile.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-wavefront.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-workgroup.ll
M llvm/test/CodeGen/AMDGPU/min.ll
M llvm/test/CodeGen/AMDGPU/minmax.ll
M llvm/test/CodeGen/AMDGPU/mul.ll
M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-flat.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-global.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-scratch.ll
M llvm/test/CodeGen/AMDGPU/scale-offset-smem.ll
M llvm/test/CodeGen/AMDGPU/sub_u64.ll
M llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
M llvm/test/CodeGen/AMDGPU/wait-before-stores-with-scope_sys.ll
M llvm/test/CodeGen/AMDGPU/wait-xcnt-atomic-rmw-optimization.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-flushed.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-pattern.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
M llvm/test/CodeGen/AMDGPU/workgroup-id-in-arch-sgprs.ll
Log Message:
-----------
[AMDGPU] Regenerate codegen tests to check extra stuff at end of line (#187325)
Regenerate checks after two recent commits that caused extra stuff to be
added at the end of assembly lines, so the existing checks did not fail.
- #179414 added "nv" to loads and stores on GFX1250.
- #185774 added "msbs" comments on setreg instructions.
Commit: 2be4a9b1b2089e5752382c70046b0a8c1901ab85
https://github.com/llvm/llvm-project/commit/2be4a9b1b2089e5752382c70046b0a8c1901ab85
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
Log Message:
-----------
[LV] Add predicated early-exit tests showing poison prop issue. (NFC)
Add tests showing incorrect poison propagation from
https://github.com/llvm/llvm-project/issues/187061.
Commit: 360fab623d3ff307bce818fdbf6c524ca5f7c0ff
https://github.com/llvm/llvm-project/commit/360fab623d3ff307bce818fdbf6c524ca5f7c0ff
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
A llvm/test/tools/llvm-mca/RISCV/Inputs/mul-div-rv32.s
A llvm/test/tools/llvm-mca/RISCV/SiFive7/mul-div-rv32.test
Log Message:
-----------
[RISCV] Fix IDiv/IRem scheduling data for RV32 cores that use the SiFive7 model (#187331)
The integer division and remainder instructions on a 32-bit core that
uses SiFive7 scheduling model should have the same latency and
throughput as its word counterparts on a 64-bit SiFive7 core.
This patch fixes those scheduling entries by adding a new SchedPred that
predicates on `Feature64Bit` to toggle the SchedVariant that is attached
on the affected integer division / remainder instructions.
Commit: 5a5c3176ef24cd27168f84b2b16943fdb10e547b
https://github.com/llvm/llvm-project/commit/5a5c3176ef24cd27168f84b2b16943fdb10e547b
Author: RattataKing <amilywu2 at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir-c/Target/ExportSMTLIB.h
M mlir/include/mlir/Target/SMTLIB/ExportSMTLIB.h
M mlir/lib/Bindings/Python/DialectSMT.cpp
M mlir/lib/CAPI/Target/ExportSMTLIB.cpp
M mlir/lib/Target/SMTLIB/ExportSMTLIB.cpp
M mlir/test/CAPI/smt.c
Log Message:
-----------
[MLIR][Python] Add optional emit reset to exportSMTLIB (#187366)
Previously, the MLIR's python binding `smt.export_smtlib(...)` always
emit `(reset)` to the end of smtlib string as a solver terminator.
This PR added an option to suppress this trailing, as downstream users
like python z3 module don't need it.
Commit: d1e625c93f8503b8adac19af06271aefd7fe7baa
https://github.com/llvm/llvm-project/commit/d1e625c93f8503b8adac19af06271aefd7fe7baa
Author: Valentyn Yukhymenko <valentin.yukhymenko at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
Log Message:
-----------
[clang-tidy] `bugprone-unchecked-optional-access`: Add support for GTest asserts like `ASSERT_TRUE` and `ASSERT_FALSE` (#186363)
Resolves https://github.com/llvm/llvm-project/issues/181737
Addresses false positives reported in
https://github.com/llvm/llvm-project/issues/181737 .
This PR is heavily inspired by
https://github.com/llvm/llvm-project/pull/170947 .
Many thanks to @fmayer for the prior work.
---------
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Commit: fce100e26e7ea3160114183a45b6e1a136928ce4
https://github.com/llvm/llvm-project/commit/fce100e26e7ea3160114183a45b6e1a136928ce4
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/predicated-early-exits-interleave.ll
M llvm/test/Transforms/LoopVectorize/predicated-multiple-exits.ll
M llvm/test/Transforms/LoopVectorize/predicated-single-exit.ll
Log Message:
-----------
[VPlan] Fix masked_cond expansion.
masked_cond is used to combine early-exit conditions with masks from
predicate. The early-exit condition should only be evaluated if the mask
is true. Emit the mask first, to avoid incorrect poison propagation.
Fixes https://github.com/llvm/llvm-project/issues/187061.
Commit: 0b49adc32c8dc738607ba3a24e488607cf02c053
https://github.com/llvm/llvm-project/commit/0b49adc32c8dc738607ba3a24e488607cf02c053
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.cpp
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn
Log Message:
-----------
[AMDGPU] Rename AMDGPUMachineFunction to AMDGPUMachineFunctionInfo. NFC. (#187276)
This is derived from MachineFunctionInfo not MachineFunction.
Commit: c95af4078379d91b1460cd86c3c58f5cbe9350f9
https://github.com/llvm/llvm-project/commit/c95af4078379d91b1460cd86c3c58f5cbe9350f9
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/XeVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/XeVMDialect.cpp
M mlir/test/Dialect/LLVMIR/invalid.mlir
M mlir/test/Dialect/LLVMIR/xevm.mlir
Log Message:
-----------
[MLIR][XeVM] Add truncf and mma_mx op. (#180055)
truncf op converts 16 bit floats to 8 bit or 4 bit floats.
mma_mx op does cooperative matrix multiply accumulate on
8 or 4 bit float type with 8bit scale value.
Commit: a9181e8f9d3f0db8dc4feaaef5424b37a62d0c11
https://github.com/llvm/llvm-project/commit/a9181e8f9d3f0db8dc4feaaef5424b37a62d0c11
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
A clang/test/CIR/CodeGen/loop-cond-cleanup.cpp
Log Message:
-----------
[CIR] Fix CFG flattening for loops with cleanup in special regions (#187369)
If a loop required a cleanup scope in the condition or step region of
the loop, we crashed during CFG flattening because the flattening of the
cleanup scope created multiple blocks in the region, but we were
assuming there would only be one block.
This change updates the CFG flattening code to look for the
cir.condition or cir.yield operation in the last block of the region.
Commit: 3de7814b8d2eedcd2d947b178e7e4fce6572e793
https://github.com/llvm/llvm-project/commit/3de7814b8d2eedcd2d947b178e7e4fce6572e793
Author: Sang Ik Lee <sang.ik.lee at intel.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M mlir/lib/Conversion/XeVMToLLVM/XeVMToLLVM.cpp
M mlir/test/Conversion/XeVMToLLVM/legalize_large_vector.mlir
Log Message:
-----------
[MLIR][XeVM] Update HandleVectorExtractPattern (#186247)
isExtractContiguousSlice:
- Check if mask size is not greater than the vector size of the operand.
- Check if mask values do not exceed vector size.
HandleVectorExtractPattern:
- Narrow the scope of matching to,
- Source shuffle doing contiguous extract
- Source shuffle with at least the same mask size.
Commit: e044c4ad81f09bba5d31463b2b63f0c27cfc1aca
https://github.com/llvm/llvm-project/commit/e044c4ad81f09bba5d31463b2b63f0c27cfc1aca
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.td
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-gfx1250-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32-gfx10-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64-gfx10-err.cl
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/TargetParser/TargetParser.cpp
Log Message:
-----------
[AMDGPU] Add target features for SWMMAC instructions (#185785)
Introduce `swmmac-gfx1200-insts` and `swmmac-gfx1250-insts`
Commit: 752ccf718b713e52741c356889cfde1569e3a0f2
https://github.com/llvm/llvm-project/commit/752ccf718b713e52741c356889cfde1569e3a0f2
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/OpenACC/bug1583.f90
Log Message:
-----------
[flang][openacc][cuda] Add implicit device attribute for use_device unconditionally (#186844)
For interoperability between CUDA Fortran and OpenACC.
Commit: 227ced1b1eb442fed2196c4a9e80ee00cb97efe3
https://github.com/llvm/llvm-project/commit/227ced1b1eb442fed2196c4a9e80ee00cb97efe3
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
M flang/test/Lower/Intrinsics/max.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
M flang/test/Lower/OpenMP/atomic-update.f90
M flang/test/Lower/OpenMP/minmax-optional-parameters.f90
M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.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-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/fp-maxmin-behavior.f90
Log Message:
-----------
[flang] Use integer arith.max/min operations for max/min lowering. (#186466)
arith.maxsi/maxui/minsi/minui are more concise than cmp+select
and probably allow more folding, so we should use it in Flang lowering.
Commit: d70ebc84acd699612df2a33c389589ddbf8ddc93
https://github.com/llvm/llvm-project/commit/d70ebc84acd699612df2a33c389589ddbf8ddc93
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
Log Message:
-----------
[lldb][bytecode] Compile pick ops using unsigned literal (#187376)
The `pick` op requires an unsigned integer index. Use the `u` suffix
when generating `pick` operations in the Python->formatter-bytecode
compiler.
Commit: 2a89e249a293f96a0efafefc9df587b995d34b6f
https://github.com/llvm/llvm-project/commit/2a89e249a293f96a0efafefc9df587b995d34b6f
Author: kwyatt-ext <kwyatt.external at hpe.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang-rt/lib/runtime/namelist.cpp
Log Message:
-----------
[flang] [flang-rt] Subscript overrun could occur in namelists during a READ command. (#176959)
NOTE: This is a new pull request, as the prior didn't have labels
properly applied.
If a bad subscript is provided in a namelisted record, the
HandleSubscripts() routine can read off into infinity. This patch
ensures that a read will not go beyond the rank of the expected
variable.
The failure will then be captured in the return status (IOSTAT) of the
READ.
The small test demonstrates the failure before and after the fix.
---------
Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>
Commit: a70f82fab606df7824fa0a8129d0083a86ac40b6
https://github.com/llvm/llvm-project/commit/a70f82fab606df7824fa0a8129d0083a86ac40b6
Author: Jan Voung <jvoung at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
Log Message:
-----------
[clang][FlowSensitive] Do a quick check and bail early for massive CFGs (#186808)
Bail out early if the visiting each reachable basic block once would
have exceeded the MaxBlockVisits limit. If that is the case, then
actually visiting and doing the dataflow analysis would hit the limit,
but we would have wasted a lot of time.
Another possibility is that we run out of memory (OOM) and the process
crashes. We've seen example of CFGs with # of blocks that are 2-8x the
visit limit. Those examples also have lots of `Locs`, which we track in
MapVectors for each BB. Since the maps do not share memory across BBs,
this leads to non-linear memory usage and OOMing before hitting the max
visit limit. With this, we can avoid OOMing, and at least get some
results for the other CFGs in the TU, instead of losing all results from
the process crashing.
Commit: 04e86fbff043967c6fb367f1063cf1cbeff18854
https://github.com/llvm/llvm-project/commit/04e86fbff043967c6fb367f1063cf1cbeff18854
Author: Martin Storsjö <martin at martin.st>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/ExecutionEngine/JITLink/Generic/waiting-on-graph-capture-replay.test
Log Message:
-----------
[llvm-jitlink] [test] Add an XFAIL for a JITLink test on MinGW (#186980)
This testcase fails on MinGW targets, because when compiling the main()
function, it gets an implicit call to __main(), which is missing in this
context.
See 4c642b62b99fa128c180f28278637b32be5e5576 and
9b282afb8ac1c810da684591c27faf6117e62e3b for existing precedent for such
XFAILs.
Commit: 89657f726f44e7cb8acd57dad62057c30be24197
https://github.com/llvm/llvm-project/commit/89657f726f44e7cb8acd57dad62057c30be24197
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libc/docs/contributing.rst
M libc/docs/dev/clang_tidy_checks.rst
M libc/docs/dev/implementation_standard.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/using.rst
Log Message:
-----------
[libc][docs][NFC] Documentation consolidation and de-duplication (#187385)
Summary:
Integrated a series of quick documentation cleanups for LLVM-libc. This
update focuses on de-duplicating core conventions (naming and
namespaces) across multiple developer and contribution guides, and
addresses empty platform stubs for UEFI.
Changes:
* libc/docs/contributing.rst: Removed duplicated code style rules and
provided a link to dev/code_style.rst.
* libc/docs/dev/clang_tidy_checks.rst: Removed redundant namespace
explanations and linked to dev/code_style.rst.
* libc/docs/dev/implementation_standard.rst: Removed repetitive notes
about LIBC_NAMESPACE_DECL and linked to the authoritative reference.
* libc/docs/uefi/support.rst & libc/docs/uefi/using.rst: Added
early-stage bring-up warnings and pointed to the config directory for
the source of truth.
Commit: abdcde9bbc9bc0dfac93057314573fe3b2e7bd9e
https://github.com/llvm/llvm-project/commit/abdcde9bbc9bc0dfac93057314573fe3b2e7bd9e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/getelementptr.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/horizontal.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/landing_pad.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/reused-scalar-repeated-in-node.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/slp-fma-loss.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/buildvector-all-external-scalars.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reduced-value-repeated-and-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/small-phi-tree.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/SLP-cmp-cost-query.ll
M llvm/test/Transforms/SLPVectorizer/SystemZ/vec-elt-insertion.ll
M llvm/test/Transforms/SLPVectorizer/X86/cse.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-node-with-copyable-operands.ll
M llvm/test/Transforms/SLPVectorizer/X86/expected-prof-consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-bin-op-user.ll
M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
M llvm/test/Transforms/SLPVectorizer/X86/geps-non-pow-2.ll
M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
M llvm/test/Transforms/SLPVectorizer/X86/matching-gather-nodes-phi-users.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
M llvm/test/Transforms/SLPVectorizer/X86/parent-node-split-non-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-vectorized-in-transform.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_horcost.ll
M llvm/test/Transforms/SLPVectorizer/X86/remark_not_all_parts.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-schedule-use-order.ll
M llvm/test/Transforms/SLPVectorizer/X86/vectorize-widest-phis.ll
M llvm/test/Transforms/SLPVectorizer/consecutive-access.ll
M llvm/test/Transforms/SLPVectorizer/freeze-signedness-missed.ll
M llvm/test/Transforms/SLPVectorizer/reduced-gathered-vectorized.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
Log Message:
-----------
[SLP] Loop aware cost model/tree building
Currently, SLP vectorizer do not care about loops and their trip count.
It may lead to inefficient vectorization in some cases. Patch adds loop
nest-aware tree building and cost estimation.
When it comes to tree building, it now checks that tree do not span
across different loop nests. The nodes from other loop nests are
immediate buildvector nodes.
The cost model adds the knowledge about loop trip count. If it is
unknown, the default value is used, controlled by the
-slp-cost-loop-min-trip-count=<value> option. The cost of the vector
nodes in the loop is multiplied by the number of iteration (trip count),
because each vector node will be executed the trip count number of
times. This allows better cost estimation.
Original Reviewers:
jdenny-ornl, vporpo, hiraditya, RKSimon
Original PR: https://github.com/llvm/llvm-project/pull/150450
Recommit after revert in c7bd3062f1dac975cf9b706f457b3c55b4bf57ff and in 4e500bd0015042b0cd4b7c87b81caeea06072d24
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/187391
Commit: 8e062105593bee87b89ca99778b30e5695d398d7
https://github.com/llvm/llvm-project/commit/8e062105593bee87b89ca99778b30e5695d398d7
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/errno_t.h
M libc/include/CMakeLists.txt
M libc/include/errno.yaml
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/errno_t.h
Log Message:
-----------
[libc][annex_k] Add errno_t (#163094)
RFC
https://discourse.llvm.org/t/rfc-bounds-checking-interfaces-for-llvm-libc/87685
Add `errno_t` type required by Annex K interface in LLVM libc.
Commit: ca07ca0314bf93bd81a24a54ebfbb3cda607fe6b
https://github.com/llvm/llvm-project/commit/ca07ca0314bf93bd81a24a54ebfbb3cda607fe6b
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/expression.h
M flang/lib/Semantics/expression.cpp
A flang/test/Semantics/bug2381.f90
Log Message:
-----------
[flang] Fix confusing explanatory error message (#187341)
When a reference to a generic procedure fails, the compiler explains why
each of the generic's specific procedures failed to match the actual
arguments. This code had a subtle bug: adjustments to the actual
arguments made for interface checking for earlier specific procedures
would persist and affect the checks for later specific procedures.
Commit: a67c3b746836564b4f69a22c53a4a29b324b3e16
https://github.com/llvm/llvm-project/commit/a67c3b746836564b4f69a22c53a4a29b324b3e16
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
M llvm/test/CodeGen/AArch64/bsp_implicit_ops.mir
M llvm/test/CodeGen/AArch64/expand-blr-rvmarker-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-constructive-zzi.mir
M llvm/test/CodeGen/AArch64/expand-load-got-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-movi-renamable.mir
M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
M llvm/test/CodeGen/AArch64/expand-subs-pseudo.mir
M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
M llvm/test/CodeGen/AArch64/movimm-wzr.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryComm-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryCommWithRev-merging.mir
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve2-bitsel-pseudos-expansion.mir
M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp
Log Message:
-----------
[NewPM] Adds a port for AArch64ExpandPseudo (#187332)
Adds a port for AArch64ExpandPseudo to NewPM.
- Refactored lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp to extract
base logic as Impl
- Renamed existing pass with "Legacy" suffix and updated references
- Added NewPM pass AArch64ExpandPseudoPass
- Updated tests
Following tests mention this pass but weren't migrated because they need
a full codegen pipeline which doesn't exist yet.
```
LLVM :: CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
LLVM :: CodeGen/AArch64/addg_subg.mir
LLVM :: CodeGen/AArch64/rvmarker-pseudo-expansion-and-outlining.mir
LLVM :: CodeGen/AArch64/spillfill-sve.mir
LLVM :: CodeGen/AArch64/subreg_to_reg_coalescing_issue.mir
```
Commit: 3cf80812f0075f8c5f65d8f3c776584b5827df44
https://github.com/llvm/llvm-project/commit/3cf80812f0075f8c5f65d8f3c776584b5827df44
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
A llvm/test/tools/llvm-remarkutil/filter/Inputs/filter-unsorted.yaml
A llvm/test/tools/llvm-remarkutil/filter/filter-sort-dedupe.test
M llvm/tools/llvm-remarkutil/RemarkFilter.cpp
Log Message:
-----------
[llvm-remarkutil] filter: Add --sort and --dedupe flags (#187338)
Add `--sort` to emit remarks in sorted order and `--dedupe` to
deduplicate identical remarks. Only if these options are requested,
remarks need to be buffered into a sorted map before emission.
Pull Request: https://github.com/llvm/llvm-project/pull/187338
Commit: f4199fa996269bb5beb8b3f82a96f9d4642246ab
https://github.com/llvm/llvm-project/commit/f4199fa996269bb5beb8b3f82a96f9d4642246ab
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/git-llvm-push
M llvm/utils/git-llvm-push.md
Log Message:
-----------
[Utils] Add --use-gh-cli-token flag
This enables automatically getting the token from the gh CLI tool which
was a requested feature.
Reviewers: petrhosek, ilovepi
Reviewed By: petrhosek, ilovepi
Pull Request: https://github.com/llvm/llvm-project/pull/186695
Commit: 3f36e7030f3086446be6131d5fd03d4b645611c7
https://github.com/llvm/llvm-project/commit/3f36e7030f3086446be6131d5fd03d4b645611c7
Author: Tobias Stadler <mail at stadler-tobias.de>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/test/CodeGen/X86/remarks-section.ll
Log Message:
-----------
[AsmPrinter] Only warn about unsupported remarks section if requested (#187362)
Remarks sections are no longer necessary for basic functioning of
bitstream remarks, so only fire a warning if remarks sections are
force-enabled.
Pull Request: https://github.com/llvm/llvm-project/pull/187362
Commit: 0d01afffe123818c4f1761a366a5c04ba220b342
https://github.com/llvm/llvm-project/commit/0d01afffe123818c4f1761a366a5c04ba220b342
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/utils/git-llvm-push
Log Message:
-----------
[Utils] Format git-llvm-push
So that I do not constantly run into formatting diffs when working on
future PRs.
Commit: fb39a5d6afe1ba7ea107ae39a0242080e5a0fdca
https://github.com/llvm/llvm-project/commit/fb39a5d6afe1ba7ea107ae39a0242080e5a0fdca
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M flang/docs/Extensions.md
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Evaluate/bug2418.f90
Log Message:
-----------
[flang] Better handling of ALLOCATED(pointer) error (#186622)
Some legacy compilers accept a reference to the intrinsic function
ALLOCATED with a pointer argument. (Pointers should be checked with
ASSOCIATED instead, of course.) Emit a good warning, but also interpret
the call to ALLOCATED with a pointer argument as if it had been
correctly spelled. Test that this only applies to the intrinsic
ALLOCATED, not a user-defined function.
Commit: fb36a54ef6bc3e35aa496cb9b8494b4a10a9d00c
https://github.com/llvm/llvm-project/commit/fb36a54ef6bc3e35aa496cb9b8494b4a10a9d00c
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M lldb/include/lldb/Utility/Log.h
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/Expression/FunctionCaller.cpp
M lldb/source/Expression/IRInterpreter.cpp
M lldb/source/Expression/Materializer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/Target/ThreadPlanStepInstruction.cpp
M lldb/source/Target/ThreadPlanStepOut.cpp
M lldb/source/Target/ThreadPlanStepRange.cpp
M lldb/source/Target/ThreadPlanStepThrough.cpp
M lldb/source/Target/UnwindLLDB.cpp
M lldb/source/Utility/Listener.cpp
M lldb/source/Utility/StringList.cpp
M lldb/unittests/Utility/LogTest.cpp
Log Message:
-----------
[lldb] Rename formatv verbose log call, misc log cleanups [NFC] (#186951)
lldb had three preprocessor defines for logging,
LLDB_LOG - formatv style argument
LLDB_LOGF - printf style argument
LLDB_LOGV - formatv style argument, only when verbose enabled
If you weren't looking at Log.h and the definition of these three, and
wanted to log something with formatv, it was easy to use LLDB_LOGV by
accident. We just had a situation where an important log statement
wasn't logging and it turned out to be this. This is fragile if you
aren't looking at the header directly, so I'd like to make this more
explicit. My proposal:
LLDB_LOG - formatv style argument
LLDB_LOG_VERBOSE - formatv style argument, only when verbose enabled
LLDB_LOGF - printf style argument
LLDB_LOGF_VERBOSE - printf style argument, only when verbose enabled
The new fouth one is to remove several places where we do `if (log &&
log->GetVerbose()) LLDB_LOGF (...)` in the sources today, and make both
styles consistent.
This PR implements that change, mechanically changing all LLDB_LOGV's to
LLDB_LOG_VERBOSE.
It also updates many of the `if (log && log->GetVerbose()) LLDB_LOGF`'s.
Some uses of this conditional expression do extra calculations in
addition to logging, and so those were left as-is so we're not doing
throwaway work when running without verbose logging.
There were many instances throughout lldb where callers are still doing
`if (log) LLDB_LOG*(...)`, a remnant of when all calls were to the `Log`
object's `Printf()` method, and you had to check if your local Log*
pointer was non-nullptr before calling the method. I removed those,
again keeping ones where work for logging is done in the block of code.
The code changes are all mechanical and uninteresting, but the question
of whether this naming change is widely agreed on is maybe worth
discussing.
Commit: fc2c965394b4f9f94f1e263fe23ef49a49a690fb
https://github.com/llvm/llvm-project/commit/fc2c965394b4f9f94f1e263fe23ef49a49a690fb
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/Passes/PassRegistry.def
Log Message:
-----------
[Passes] Remove redundant semicolon from PassRegistry.def
Makes it consistent with the rest of the file and fixes a clang-tidy
warning.
Commit: 42b75ed85fcb5d67a71ca858e760d215c4e693d4
https://github.com/llvm/llvm-project/commit/42b75ed85fcb5d67a71ca858e760d215c4e693d4
Author: Manthan Singla <manthan02426 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/bf16divf128.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/bf16divf128.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/bf16divf128.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 bf16divf128 to Header Only (#186641)
closes #181024
Commit: 53f8f3b0179414a6923ae9aab33c6bb64c5d08b0
https://github.com/llvm/llvm-project/commit/53f8f3b0179414a6923ae9aab33c6bb64c5d08b0
Author: Elvis Wang <elvis.wang at sifive.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-complex-mask.ll
A llvm/test/Transforms/LoopVectorize/RISCV/zvl1024b-crash.ll
Log Message:
-----------
Reland [LV] Replace remaining LogicalAnd to vp.merge in EVL optimization. (#184068) (#187199)
This patch replace the remaining LogicalAnd to vp.merge in the second
pass to not break the `m_RemoveMask` pattern in the optimizeMaskToEVL.
Also skip cost model comparison when the plan contains `vp_merge` which
won't be calculated by the legacy model.
This can help to remove header mask for FindLast reduction (CSA) loops.
Original PR: https://github.com/llvm/llvm-project/pull/184068
Original built-bot failure:
https://lab.llvm.org/buildbot/#/builders/213/builds/2497
Commit: 80034dd582d32092380a81529f51ed86c38514cb
https://github.com/llvm/llvm-project/commit/80034dd582d32092380a81529f51ed86c38514cb
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/rsize_t.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/rsize_t.h
Log Message:
-----------
[libc][annex_k] Add rsize_t (#163238)
RFC
https://discourse.llvm.org/t/rfc-bounds-checking-interfaces-for-llvm-libc/87685
Add `rsize_t` type required by Annex K interface in LLVM libc.
Commit: 77066a3d33db920d8f9ad122366f70d9297cffcd
https://github.com/llvm/llvm-project/commit/77066a3d33db920d8f9ad122366f70d9297cffcd
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
A llvm/test/Transforms/SandboxVectorizer/seed_collection.ll
M llvm/unittests/SandboxIR/PassTest.cpp
Log Message:
-----------
[SandboxVec][SeedCollection] Aux pass argument for enabling different types (#155079)
This patch implements the auxiliary pass argument, a secondary argument
that can be passed to Sandbox IR passes.
It also updates the SeedCollection pass to accept the auxiliary argument
"enable-diff-types", which enables collection of seeds of different
types. This will be used in a follow-up patch.
Commit: 8176bc0e9b5335483ec1f17c9b13781dd6bd3c96
https://github.com/llvm/llvm-project/commit/8176bc0e9b5335483ec1f17c9b13781dd6bd3c96
Author: joaosaffran <joaosaffranllvm at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
A llvm/test/CodeGen/DirectX/ShaderFlags/overflow-uavs-array.ll
A llvm/test/CodeGen/DirectX/ShaderFlags/unbounded-uavs-array.ll
Log Message:
-----------
[HLSL][SPIRV] Use 0 to represent unbounded arrays on shader flags (#187174)
this patch updates the shader flags to account for 0 being used to
represent unbounded arrays. This was a missed updated from the previous
pr #186022. This change is required to make sure the following offload
test pass dxv validation:
```
OffloadTest-clang-d3d12 :: Feature/ResourceArrays/multi-dim-unbounded-array-nuri.test
OffloadTest-clang-d3d12 :: Feature/ResourceArrays/multi-dim-unbounded-array.test
OffloadTest-clang-d3d12 :: Feature/ResourceArrays/unbounded-array-nuri.test
OffloadTest-clang-d3d12 :: Feature/ResourceArrays/unbounded-array.test
```
---------
Co-authored-by: Joao Saffran <jderezende at microsoft.com>
Commit: 39b6a4d84ad8cc3a798a3373be5b559e1f086650
https://github.com/llvm/llvm-project/commit/39b6a4d84ad8cc3a798a3373be5b559e1f086650
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Sema/SemaHLSL.h
M clang/lib/AST/CMakeLists.txt
A clang/lib/AST/HLSLResource.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
A clang/test/AST/HLSL/resources-in-structs-errors.hlsl
A clang/test/AST/HLSL/resources-in-structs.hlsl
Log Message:
-----------
[HLSL] Add globals for resources embedded in structs (#184281)
For each resource or resource array member of a struct declared at global scope or inside a `cbuffer`, create an implicit global variable of the same resource type. The variable name will be derived from the struct instance name and the member name and will be associated with the struct declaration using a new attribute `HLSLAssociatedResourceDeclAttr`.
Closes #182988
Commit: d434d82010be4febba9bc2c208fef2196e5922bb
https://github.com/llvm/llvm-project/commit/d434d82010be4febba9bc2c208fef2196e5922bb
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/mlgo-utils/mlgo/corpus/extract_ir_lib.py
M llvm/utils/mlgo-utils/mlgo/corpus/make_corpus_lib.py
Log Message:
-----------
[MLGO] Modernize type annotations in mlgo-utils (#187408)
Use the 3.10+ syntax while supporting older versions usin an import from
__future__.
Commit: 015e3d2b20924e966345d3c493fb16f2fa3160b4
https://github.com/llvm/llvm-project/commit/015e3d2b20924e966345d3c493fb16f2fa3160b4
Author: Ross Burton <ross.burton at arm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M compiler-rt/lib/asan/scripts/asan_symbolize.py
M compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py
M compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py
M compiler-rt/lib/sanitizer_common/scripts/sancov.py
Log Message:
-----------
[compiler-rt] Unify python shebangs (#187285)
As per PEP-0394[1], there is no real concensus over what binary names
Python has, specifically 'python' could be Python 3, Python 2, or not
exist.
However, everyone has a python3 interpreter and the scripts are all
written for Python 3. Unify the shebangs so that the ~50% of shebangs
that use python now use python3.
[1] https://peps.python.org/pep-0394/
Commit: 3fdec1c9f9469587de24a525b48aa6ceddc392f5
https://github.com/llvm/llvm-project/commit/3fdec1c9f9469587de24a525b48aa6ceddc392f5
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/test/CXX/drs/cwg24xx.cpp
Log Message:
-----------
[clang] Enable exceptions in CWG2486 test (#187195)
In #107131 I totally missed the fact that the entire `cwg24xx.cpp` was
running without exceptions. This patch rectifies that, and uncovers one
diagnostic in pre-C++17 modes that CWG2486 test was missing.
Commit: 291359be687ef15e2278877ebecc20efa124cbb3
https://github.com/llvm/llvm-project/commit/291359be687ef15e2278877ebecc20efa124cbb3
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[SelectionDAG] Move the call to BuildExactSDIV and BuildExactUDIV to the top of BuildSDIV/BuildUDIV. (#187378)
This moves it above the type legality check. The legality check we use
for the main division by constant algorithm is probably not right for
BuildExactSDIV and BuildExactSDIV. These checks are largely about the
legality of MUL_LOHI/MULH which are not used for the exact case.
This patch removes the legal type check for the exact case. If we do
need a check it's probably better to have a specific version in
BuildExactSDIV and BuildExactSDIV.
I'm hoping to do some refactoring of the legality checks in
BuildSDIV/BuildUDIV so separating them makes this easier.
Commit: f1c8b9b4aad9e04501102b48d9abedd7f48b7af3
https://github.com/llvm/llvm-project/commit/f1c8b9b4aad9e04501102b48d9abedd7f48b7af3
Author: TPPPP <TPPPP72 at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaObjC.cpp
A clang/test/Sema/gh183974.c
Log Message:
-----------
[Clang] Fix assertion when __block is used on global variables in C mode (#183988)
I added an extra check in handleBlocksAttr to ensure that illegal Decl
values are not passed to downstream functions.
Fixes #183974
Commit: 8c1896d9067b11ec4097a6f80e103caacabcf808
https://github.com/llvm/llvm-project/commit/8c1896d9067b11ec4097a6f80e103caacabcf808
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Compare nodes by pointer instead of by ID in `readability-else-after-return` (#187363)
Node IDs are designed to be stable *across different runs of the
compiler*. This check doesn't need such a strong guarantee, so using
them here introduces unnecessary cost and complexity.
Commit: 2e6740541ba908100a37151cb3892c1d47b3a3ba
https://github.com/llvm/llvm-project/commit/2e6740541ba908100a37151cb3892c1d47b3a3ba
Author: David Tenty <daltenty at ibm.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/lib/Headers/endian.h
Log Message:
-----------
[clang][headers][endian.h] include_next in freestanding (#187380)
Remove the `__STDC_HOSTED__` check to allow us to also include the
platform header instead in freestanding mode
Commit: 4db2ce4d546f598cd0886ef859561f16277b80ea
https://github.com/llvm/llvm-project/commit/4db2ce4d546f598cd0886ef859561f16277b80ea
Author: Mohamed Emad <hulxxv at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/daddf128.h
A libc/shared/math/daddl.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/daddf128.h
A libc/src/__support/math/daddl.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/daddf128.cpp
M libc/src/math/generic/daddl.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 dadd family to header-only (#182142)
Closes https://github.com/llvm/llvm-project/issues/182141
Commit: 55607559203cdb2a4e46ef7b6cea2e2994a58763
https://github.com/llvm/llvm-project/commit/55607559203cdb2a4e46ef7b6cea2e2994a58763
Author: Zeyi Xu <zeyi2 at nekoarch.cc>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/lib/Semantics/resolve-directives.cpp
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-wait-validity.f90
Log Message:
-----------
[flang][OpenACC] Fix crash on invalid clauses in WAIT and ATOMIC constructs (#187263)
`AccAttributeVisitor` lacked Pre/Post visitors for
`OpenACCWaitConstruct` and `OpenACCAtomicConstruct`, which would lead to
a crash. This commit adds them.
As of AI Usage: Gemini 3 is used for pre-commit reviewing.
Closes #140281
Commit: f554fcfd0b757022319e8e85f817e7d563adc713
https://github.com/llvm/llvm-project/commit/f554fcfd0b757022319e8e85f817e7d563adc713
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Semantics/resolve-names.cpp
M flang/test/Semantics/OpenACC/bug1583.f90
Log Message:
-----------
Revert "[flang][openacc][cuda] Add implicit device attribute for use_device unconditionally" (#187438)
Reverts llvm/llvm-project#186844
This is causing some not yet implemented: lowering symbol to HLFIR
Commit: 79042e701b7bfd0fe3ffcd3a155c0c8f5b2e2eaa
https://github.com/llvm/llvm-project/commit/79042e701b7bfd0fe3ffcd3a155c0c8f5b2e2eaa
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-18 (Wed, 18 Mar 2026)
Changed paths:
M clang/docs/ClangFormatStyleOptions.rst
M clang/include/clang/Format/Format.h
M clang/lib/Format/Format.cpp
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Add LeaveAll to the BreakAfterAttributes option (#187204)
Closes #163537
Commit: 9e6ce65962c4346f69de9cea7eec1ce957f2ef23
https://github.com/llvm/llvm-project/commit/9e6ce65962c4346f69de9cea7eec1ce957f2ef23
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Fix vector float tan (#187387)
Commit: e3198dbe59abeb18dfeddc855a43d6bf44a23c15
https://github.com/llvm/llvm-project/commit/e3198dbe59abeb18dfeddc855a43d6bf44a23c15
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/lib/generic/geometric/clc_length.inc
Log Message:
-----------
libclc: Move FLT_MIN gentype macros (#187272)
Commit: 3e90e1a26fd18476b27f3ca3faded0d6fde9ca1d
https://github.com/llvm/llvm-project/commit/3e90e1a26fd18476b27f3ca3faded0d6fde9ca1d
Author: Wendi <uwendi at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/docs/GettingInvolved.rst
Log Message:
-----------
[docs][QualGroup] Update Qualification WG sync-up schedule and calendar links (#186011)
This updates the LLVM Qualification Working Group entry in
`GettingInvolved` to reflect:
- the reintroduced two-meeting setup
- EU/Asia: 2nd Tuesday of the month
- Americas: 2nd Friday JST of the month (Thursday in US/Canada)
- the new shared Google Calendar links
Commit: 1c3c349cf8a30c97335351897e92c429d0756d2e
https://github.com/llvm/llvm-project/commit/1c3c349cf8a30c97335351897e92c429d0756d2e
Author: Marco Barbone <DiamonDinoia at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/tools/clang-format/git-clang-format
Log Message:
-----------
[clang-format] Fix stale .lock files in git-clang-format (#187379)
Dear team, this is my first contribution. I used Claude to investigate
the problem as I do not know the codebase too well. I read the policy
and AI assistance is allowed. Let me know if I am violating any policy
or if there are any problems I am more than happy to fix them.
Thanks for you patience.
`git-clang-format` uses a fixed path (`.git/clang-format-index`) for its
temporary index file. When concurrent git operations interact with this
file (most commonly via the [pre-commit](https://pre-commit.com/)
framework), git's internal locking creates
`.git/clang-format-index.lock` which persists after abnormal exits,
**blocking all subsequent commits**.
The fix replaces the fixed path with a unique temporary file via
`tempfile.mkstemp()`.
## How to reproduce
1. Add `git-clang-format --staged` as a
[pre-commit](https://pre-commit.com/) hook:
```yaml
# .pre-commit-config.yaml
repos:
- repo: local
hooks:
- id: clang-format-staged
name: clang-format (staged hunks)
entry: git-clang-format --binary clang-format --staged
language: python
additional_dependencies: [clang-format==22.*]
pass_filenames: true
types_or: [c++, c, cuda]
files: \.(c|cc|cpp|h|hpp|cu|cuh)$
```
2. Stage C/C++ files and run git commit repeatedly. After a few commits
(especially ones where clang-format modifies files), the hook leaves
behind
.git/clang-format-index.lock.
3. All subsequent commits fail with:
```
fatal: Unable to create '/path/to/repo/.git/clang-format-index.lock': File exists.
Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.
error: `git update-index --add -z --index-info` failed
```
The only recovery is rm .git/clang-format-index.lock.
### Root cause
create_temporary_index() in clang/tools/clang-format/git-clang-format
writes to a fixed, non-unique path:
```
path = os.path.join(gitdir, temp_index_basename) # always ".git/clang-format-index"
```
When git update-index operates on this file, git creates
clang-format-index.lock. If the process is interrupted (pre-commit
timeout, signal, or concurrent git operations from other hooks in the
same pipeline), the lock file is never cleaned up. The
temporary_index_file() context manager removes the index file on exit
but not the .lock file that git creates alongside it.
### Fix:
Replace the fixed path with tempfile.mkstemp(), so each invocation gets
a unique filename. This eliminates both the stale lock problem and any
potential race between concurrent invocations.
```
Commit: bdfd9725afd12f4a6c526be9d26957ceadd1bf30
https://github.com/llvm/llvm-project/commit/bdfd9725afd12f4a6c526be9d26957ceadd1bf30
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/CMakeLists.txt
A libclc/clc/lib/generic/subnormal_config.cl
M libclc/opencl/lib/clspv/CMakeLists.txt
M libclc/opencl/lib/generic/CMakeLists.txt
R libclc/opencl/lib/generic/subnormal_config.cl
Log Message:
-----------
libclc: Move subnormal config file to clc (#187354)
Commit: ca5e4bcc571518e22cbad8cad2c4b6f09c1d56df
https://github.com/llvm/llvm-project/commit/ca5e4bcc571518e22cbad8cad2c4b6f09c1d56df
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/ScanningProjectModules.cpp
Log Message:
-----------
[NFC] [clangd] [Modules] Leave more log for failing cases (#187448)
This is useful for users and developers to understand what happens.
Commit: ae66911399b7f6f58a3f57a9ab11896c4d493953
https://github.com/llvm/llvm-project/commit/ae66911399b7f6f58a3f57a9ab11896c4d493953
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Target/Platform.h
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Target/Platform.cpp
Log Message:
-----------
[lldb][Platform][NFC] Move SanitizedScriptingModuleName into ScriptInterpreter (#187229)
In preparation for https://github.com/llvm/llvm-project/pull/187031
The `SanitizedScriptingModuleName` will be re-used from `Platform` (in
addition to `PlatformDarwin` where it currently lives). To do that we'll
need to move it to a common place. `ScriptInterpreter` seems like the
most natural place for this to live.
I introduced a new virtual `GetSanitizedScriptingModuleName` that
`ScriptInterpreter`s can override in the future if they have their own
sanitization logic. I made the default implementation the one we've been
using for Python because that way the unit-tests that currently mock the
`ScriptInterpreter` don't need to copy the implementation.
Also made `WarnIfInvalidUnsanitizedScriptExists` a protected static
function on `Platform` because it didn't seem right for that to also
live in `ScriptInterpreter`.
Commit: 07ff1a63dac5f8badadafdc84931de82da1ff7e7
https://github.com/llvm/llvm-project/commit/07ff1a63dac5f8badadafdc84931de82da1ff7e7
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
Log Message:
-----------
[CompilationDatabase] Treat .cppm file as C++ in InterpolatingCompilationDatabase (#187446)
Inspired by https://github.com/clangd/clangd/issues/2589
it seems like we lost the flag for "-std=c++26" there and we meet odd
error messgae like the std ver is not correct. and it turns out we
simply didn't interpret .cppm file as C++ in some corner of the
codebase.
Commit: a54c1490611c2c52dc940dd9a6e299f643aa4ad5
https://github.com/llvm/llvm-project/commit/a54c1490611c2c52dc940dd9a6e299f643aa4ad5
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/math.h
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/subnormal_config.cl
Log Message:
-----------
libclc: Invert subnormal checks (#187355)
The base case is correct denormal handling, not flushing. This
also matches the spec controls, which starts at IEEE and
flushing is enabled with -cl-denorms-are-zero.
Also fix wrong defaults for half and double. Denormal support is
not optional for these.
Commit: c800afd65e121410d539c4210f73285fffee548b
https://github.com/llvm/llvm-project/commit/c800afd65e121410d539c4210f73285fffee548b
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
A clang-tools-extra/test/clang-tidy/infrastructure/cxx20-modules.cppm
M clang-tools-extra/test/lit.cfg.py
M clang/include/clang/ASTMatchers/ASTMatchFinder.h
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
Log Message:
-----------
[clang-tidy] [Modules] Skip checking decls in clang-tidy (#145630)
Close https://github.com/llvm/llvm-project/issues/145628
Note that I am not sure if this is the proper fix. On the one hand, the
fix lives in ASTMachers instead of clang-tidy. On the other hand, I feel
this may be a more general fix.
And if you don't feel good about this and you have a clear mindset how
to fix this, feel free to take it.
Commit: 0960f0b8feb33ee9d4183b1d3e3361f872ac90bd
https://github.com/llvm/llvm-project/commit/0960f0b8feb33ee9d4183b1d3e3361f872ac90bd
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/lib/generic/subnormal_config.cl
M libclc/clc/lib/spirv/CMakeLists.txt
A libclc/clc/lib/spirv/subnormal_config.cl
Log Message:
-----------
libclc: Really implement denormal config checks (#187356)
These should be implementable by checking the behavior of
the canonicalize intrinsic. Hack around spirv still failing
on canonicalize by overriding and assuming DAZ for float.
Commit: 9b7c437033b2a40fd0c13ffd266f1de0b908a8ef
https://github.com/llvm/llvm-project/commit/9b7c437033b2a40fd0c13ffd266f1de0b908a8ef
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A libclc/clc/include/clc/math/clc_get_twobypi_bits.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp64_decl.inc
M libclc/clc/include/clc/math/tables.h
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_get_twobypi_bits.cl
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/math/clc_cos.inc
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.cl
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.inc
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Update f64 trig functions (#187455)
Most of of this was originally ported from rocm
device libs in 2e6ff0c66e180998425776a27579559dc099732f. Merge
in more recent changes.
Commit: 85e9ac589819b0f24074e92dcaee5cc05446064e
https://github.com/llvm/llvm-project/commit/85e9ac589819b0f24074e92dcaee5cc05446064e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A libclc/clc/include/clc/math/clc_canonicalize.h
A libclc/clc/include/clc/math/clc_flush_if_daz.h
M libclc/clc/include/clc/math/math.h
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/CMakeLists.txt
A libclc/clc/lib/generic/math/clc_canonicalize.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_remquo.inc
Log Message:
-----------
libclc: Add canonicalize utility functions (#187357)
This is mostly to work around spirv's canonicalize still
being broken.
Commit: 6e8ca5edde056dbbd45edf492dbf45cac675d3c7
https://github.com/llvm/llvm-project/commit/6e8ca5edde056dbbd45edf492dbf45cac675d3c7
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_nextafter.inc
M libclc/clc/lib/generic/math/clc_nextdown.cl
M libclc/clc/lib/generic/math/clc_nextdown.inc
M libclc/clc/lib/generic/math/clc_nextup.cl
M libclc/clc/lib/generic/math/clc_nextup.inc
Log Message:
-----------
libclc: Fix nextafter with -cl-denorms-are-zero (#187358)
Follow the suggested behavior of returning +/-FLT_MIN for logical
zeros.
Commit: 7fad49b186c883ee8e15ddee1280dcc2f4842557
https://github.com/llvm/llvm-project/commit/7fad49b186c883ee8e15ddee1280dcc2f4842557
Author: Ricardo Jesus <rjj at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-pr92779.ll
Log Message:
-----------
[AArch64][SVE] Prefer FMOV for scalar insert into first element of zero. (#187236)
Currently, when inserting a scalar into the first element of a
zero-initialised scalable vector, we zero the register explicitly and
emit a predicated move. However, an FMOV should be preferable as it
implicitly zeros the upper bits of the destination.
Commit: 1ba5b6e875d106bf5f900035e42b6ba56807b65e
https://github.com/llvm/llvm-project/commit/1ba5b6e875d106bf5f900035e42b6ba56807b65e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_sincos.cl
M libclc/clc/lib/generic/math/clc_sincos.inc
Log Message:
-----------
libclc: Stop implementing sincos as separate sin and cos (#187456)
Commit: 1f8da277148f461bb96c6684b41b4d7d2cf5b761
https://github.com/llvm/llvm-project/commit/1f8da277148f461bb96c6684b41b4d7d2cf5b761
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_sincos_helpers.h
A libclc/clc/include/clc/math/clc_sincos_helpers_fp16_decl.inc
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
M libclc/clc/lib/generic/math/clc_tan.inc
Log Message:
-----------
libclc: Really implement half trig functions (#187457)
Previously these just cast to float.
Commit: d518f8ff67407fc49d2c37cba575297d5dc7e713
https://github.com/llvm/llvm-project/commit/d518f8ff67407fc49d2c37cba575297d5dc7e713
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/MemorySSA.h
M llvm/lib/Analysis/MemorySSA.cpp
A llvm/test/Analysis/MemorySSA/call-loop-carried-dependency.ll
M llvm/unittests/Analysis/MemorySSATest.cpp
Log Message:
-----------
[MemorySSA] Fix handling of cross-iteration dependencies for calls (#187291)
The clobber walker has to be careful when it comes to translating
locations across phis. If we're translating across a cycle backedge,
we'll end up working with SSA values from two different cycle iterations
-- something that alias analysis by default assumes is not the case.
To protect against this, the upwards def walk was already discarding the
access size from the memory location if the pointer was not loop
invariant. This (mostly) avoids this issue for memory locations.
However, the same issue also exists for calls. In this case, it's not
possible to adjust the call used for AA queries in a similar way.
Instead, we can make use of the cross-iteration alias analysis mode,
which has been added some time ago for these kinds of situations.
The basic change here is that the upwards def walk, when translating
across a phi, will enable the cross-iteration mode for calls.
Unfortunately, quite a few places have to be changed in order to thread
through that flag.
We should really also be using the cross-iteration mode for the memory
location case, both because it's more precise, and because it's more
correct (in particular, only changing the size does not handle
correlated select conditions). However, this comes with a compile-time
cost, so I'm only handling the call case for now.
Fixes https://github.com/llvm/llvm-project/issues/54682.
Commit: 2bb6b590287730238f39b09320ddcb36c461ae92
https://github.com/llvm/llvm-project/commit/2bb6b590287730238f39b09320ddcb36c461ae92
Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libsycl/docs/index.rst
A libsycl/include/sycl/__impl/usm_alloc_type.hpp
A libsycl/include/sycl/__impl/usm_functions.hpp
M libsycl/include/sycl/sycl.hpp
M libsycl/src/CMakeLists.txt
M libsycl/src/detail/device_impl.cpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_utils.cpp
M libsycl/src/detail/offload/offload_utils.hpp
M libsycl/src/ld-version-script.txt
A libsycl/src/usm_functions.cpp
A libsycl/test/usm/alloc_functions.cpp
Log Message:
-----------
[libsycl] add USM alloc/free functions (#184111)
Depends on https://github.com/llvm/llvm-project/pull/184110
This is part of the SYCL support upstreaming effort. The relevant RFCs
can be found here:
https://discourse.llvm.org/t/rfc-add-full-support-for-the-sycl-programming-model/74080
https://discourse.llvm.org/t/rfc-sycl-runtime-upstreaming/74479
---------
Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
Commit: 621d40e1827e53844e09851dc69f2ff79dc30999
https://github.com/llvm/llvm-project/commit/621d40e1827e53844e09851dc69f2ff79dc30999
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidy.cpp
R clang-tools-extra/test/clang-tidy/infrastructure/cxx20-modules.cppm
M clang-tools-extra/test/lit.cfg.py
M clang/include/clang/ASTMatchers/ASTMatchFinder.h
M clang/lib/ASTMatchers/ASTMatchFinder.cpp
Log Message:
-----------
Revert "[clang-tidy] [Modules] Skip checking decls in clang-tidy" (#187461)
Reverts llvm/llvm-project#145630
As requested in https://github.com/llvm/llvm-project/pull/145630
Commit: 4262045ba98d11c930fec0fe02584b072ace19bd
https://github.com/llvm/llvm-project/commit/4262045ba98d11c930fec0fe02584b072ace19bd
Author: Shivam Kunwar <physhivam at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
A llvm/test/DebugInfo/X86/empty-struct-no-crash.ll
Log Message:
-----------
[DebugInfo] Fix segfault in constructSubprogramScopeDIE with null subprogram type (#184299)
Guard against null DISubroutineType when checking for variadic
parameters in `constructSubprogramScopeDIE`. `DISubprograms` may lack a
type field when using LineTablesOnly emission, causing a null pointer
dereference.
Fixes #184003
Co-authored-by: Shivam Kunwar <phyBrackets at users.noreply.github.com>
Commit: 333ac33be6f4627a8f697b8f8a617c6d5da632a6
https://github.com/llvm/llvm-project/commit/333ac33be6f4627a8f697b8f8a617c6d5da632a6
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopInfo.h
M llvm/lib/Analysis/LoopInfo.cpp
Log Message:
-----------
[Analysis][NFC] Include LoopInfoImpl only in source file (#187459)
There's no need to include the full LoopInfo implementation in every
source file that uses LoopInfo.
Pull Request: https://github.com/llvm/llvm-project/pull/187459
Commit: 0d05c882ce9976de790e690b92e2673088591e36
https://github.com/llvm/llvm-project/commit/0d05c882ce9976de790e690b92e2673088591e36
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Support/GenericLoopInfo.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Transforms/IPO/LoopExtractor.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
Log Message:
-----------
[Support] Use block numbers for LoopInfo BBMap (#103400)
Replace the DenseMap from blocks to their innermost loop a vector
indexed by block numbers, when possible. Supporting number updates is
not trivial as we don't store a list of basic blocks, so this is not
implemented.
NB: I'm generally not happy with the way loops are stored. As I think
that there's room for improvement, I don't want to touch the
representation at this point.
Pull Request: https://github.com/llvm/llvm-project/pull/103400
Commit: e122a2d53193d791a98f118fad23fb782062e778
https://github.com/llvm/llvm-project/commit/e122a2d53193d791a98f118fad23fb782062e778
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
Log Message:
-----------
[flang][OpenMP] Remove extraneous semicolon, NFC (#187468)
Commit: eaf04be3417c595ded2dd67180c8101425a281cc
https://github.com/llvm/llvm-project/commit/eaf04be3417c595ded2dd67180c8101425a281cc
Author: Viktoria Maximova <viktoria.maksimova at intel.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_bfloat16_load_store_xchg.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_int16_arithmetic.ll
A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_int16_load_store_xchg_cmpxchg.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomicrmw_faddfsub_bfloat16.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomicrmw_fminfmax_bfloat16.ll
Log Message:
-----------
[SPIR-V] Complete SPV_INTEL_16bit_atomics extension support (#184312)
Add missing capabilities to finalize SPV_INTEL_16bit_atomics extension:
- AtomicInt16CompareExchangeINTEL (6260): for i16
load/store/exchange/cmpxchg
- Int16AtomicsINTEL (6261): for i16 arithmetic atomics (add, sub, min,
max, etc.)
- AtomicBFloat16LoadStoreINTEL (6262): for bfloat16 load/store/exchange
This completes the implementation started in 6ef3218.
Specification:
https://github.com/intel/llvm/blob/sycl/sycl/doc/design/spirv-extensions/SPV_INTEL_16bit_atomics.asciidoc
Commit: d29c6a34255e635b8ad794d21cdd0a2ed8820b68
https://github.com/llvm/llvm-project/commit/d29c6a34255e635b8ad794d21cdd0a2ed8820b68
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/docs/TableGen/ProgRef.rst
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
Log Message:
-----------
[TabelGen] Use ID{n-m} for outer let statements (#187436)
I found this occasionally.
For outer let statements, if we want to override some bits, we specify
the range list in the form of `<n-m>`. But for inner let statements,
we use `{n-m}`.
This is inconsistent, and I can't find the reason why it is designed
as this. So here we make inner/outer let statements consistent and
remove the duplicated parsing functions.
There is only one in-tree usage so I think the impact is small.
Commit: c58d62857e4ff3be2f2d01b99dfc33bde3956cf4
https://github.com/llvm/llvm-project/commit/c58d62857e4ff3be2f2d01b99dfc33bde3956cf4
Author: Alexander Romanov <mrromanon at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/unittests/ADT/STLForwardCompatTest.cpp
Log Message:
-----------
[STLForwardCompat] Switch transformOptional from direct call to invoke (#186333)
This allows to pass pointer to member (or member function) alongside
other callable objects. Also adjusted return value as std::optional of
reference types are forbidden.
Commit: 76638021257f06d6a3db2231106bd8d972b03b95
https://github.com/llvm/llvm-project/commit/76638021257f06d6a3db2231106bd8d972b03b95
Author: Paul Walker <paul.walker at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
Log Message:
-----------
[LLVM][DAGCombiner] Limit extract_subvec(extract_subvec()) combine to vectors of the same type. (#187334)
The index operand of ISD::EXTRACT_SUBVECTOR is implicitly scaled by
vscale, which is effectively always one for fixed-length vectors. When
combining nested extracts we must ensure all use the same implicit
scaling otherwise the transform is not equivalent.
Fixes https://github.com/llvm/llvm-project/issues/186563
Commit: f104b7355ce8564ebec8b296a7b450beb553364d
https://github.com/llvm/llvm-project/commit/f104b7355ce8564ebec8b296a7b450beb553364d
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_floating_point/arbitrary_precision_floating_point_test.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/SPV_ALTERA_arbitrary_precision_integers.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/apint-constant.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-addsub.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-arith.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-switch-lower.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_int4/negative.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/bitreverse_small_type.ll
M llvm/test/CodeGen/SPIRV/trunc-nonstd-bitwidth.ll
Log Message:
-----------
[NFC][SPIRV] Run `spirv-val` on tests related to `SPV_ALTERA_arbitrary_precision_integers` (#187464)
https://github.com/KhronosGroup/SPIRV-Tools/pull/6232 landed support for
this extension in `spirv-val`.
This PR updates some relevant tests to run `spirv-val` on their output.
Commit: c3e7624ac4bdfaa583f2d7f76fd780ea6bfd4a84
https://github.com/llvm/llvm-project/commit/c3e7624ac4bdfaa583f2d7f76fd780ea6bfd4a84
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaExprCXX.cpp
A clang/test/Modules/align-val-t-merge.cpp
Log Message:
-----------
[clang] Add implicit std::align_val_t to std namespace DeclContext for module merging (#187347)
When a virtual destructor is encountered before any module providing
std::align_val_t is loaded, DeclareGlobalNewDelete() implicitly creates
a std::align_val_t EnumDecl. However, this EnumDecl was not added to the
std namespace's DeclContext -- it was only stored in the
Sema::StdAlignValT field.
Later, when a module containing an explicit std::align_val_t definition
is loaded, ASTReaderDecl::findExisting() attempts to find the implicit
decl via DeclContext::noload_lookup() on the std namespace. Since the
implicit EnumDecl was never added to that DeclContext, the lookup fails,
and the two align_val_t declarations are not merged into a single
redeclaration chain. This results in two distinct types both named
std::align_val_t.
The implicitly declared operator delete overloads (also created by
DeclareGlobalNewDelete) use the implicit align_val_t type for their
aligned-deallocation parameter. When module code (e.g. std::allocator::
deallocate) calls __builtin_operator_delete with the module's
align_val_t, overload resolution fails because the two align_val_t types
are not the same, producing:
error: no matching function for call to 'operator delete'
note: no known conversion from 'std::align_val_t' to 'std::align_val_t'
The fix adds the implicit align_val_t EnumDecl to the std namespace
DeclContext via getOrCreateStdNamespace()->addDecl(AlignValT), so the
module merger can find it via noload_lookup and merge the two
declarations.
This bug was exposed by a libc++ change (2b01e7cf2b70) that removed the
#include <__new/global_new_delete.h> line from allocate.h, which meant
modules no longer had explicit operator delete declarations to paper
over the type mismatch.
Assisted-by: Claude Code
Commit: 23af867e6d933e8992c134695adf390ff404124c
https://github.com/llvm/llvm-project/commit/23af867e6d933e8992c134695adf390ff404124c
Author: Koakuma <koachan at protonmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.cpp
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.h
A llvm/test/Transforms/LoopVectorize/Sparc/no-vectorize.ll
Log Message:
-----------
[SPARC] Add TTI implementation for getting register numbers and widths (#180660)
Correctly inform transform passes about our registers; this prevents the
issue with the `find-last` test where the loop vectorizer pass
mistakenly thinks that the backend has vector capabilities and generates
vector types, which causes the backend to crash.
See also: https://github.com/sparclinux/issues/issues/69
Commit: b029b9879749f8e980e052d9b486dfc9b3f4d619
https://github.com/llvm/llvm-project/commit/b029b9879749f8e980e052d9b486dfc9b3f4d619
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A llvm/test/CodeGen/X86/bit-manip-i128.ll
Log Message:
-----------
[X86] Add i128 bit manipulation pattern test coverage (#187480)
Commit: 6aeeae676ac400c0f66e8cba957030c8f47410a5
https://github.com/llvm/llvm-project/commit/6aeeae676ac400c0f66e8cba957030c8f47410a5
Author: Koakuma <koachan at protonmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/Sparc/lit.local.cfg
Log Message:
-----------
[SPARC][Tests] Add lit.local.cfg to SPARC LoopVectorize tests (#187489)
Commit: 191c84b822e0db391c5b1c64a13b2a209f0dda40
https://github.com/llvm/llvm-project/commit/191c84b822e0db391c5b1c64a13b2a209f0dda40
Author: John Brawn <john.brawn at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-spills.ll
Log Message:
-----------
[VPlan] Permit derived IV in isHeaderMask (#187360)
When matching scalar steps of the canonical IV, also match a derived IV
of the canonical IV if the derivation is essentially a no-op. Fixes a
failure in the mve-reg-pressure-spills.ll test when expensive checks are
enabled.
Commit: 582fa7875374356d9a586301f78b4a925f25973f
https://github.com/llvm/llvm-project/commit/582fa7875374356d9a586301f78b4a925f25973f
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/matched-gather-part-of-combined.ll
Log Message:
-----------
[SLP]Do not match buildvector node, if current node is part of its combined nodes
If current buildvector node is part of the combined nodes of the
matching candidate node, this matching candidate must be considered as
non-matching to prevent wrong def-use chain
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/187491
Commit: 796b218edd358ab112e876e9c22490987dae7f06
https://github.com/llvm/llvm-project/commit/796b218edd358ab112e876e9c22490987dae7f06
Author: Shivam Gupta <shivam98.tkg at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/PowerPC/urem-lkk.ll
M llvm/test/CodeGen/RISCV/div-by-constant.ll
M llvm/test/CodeGen/RISCV/split-udiv-by-constant.ll
M llvm/test/CodeGen/RISCV/split-urem-by-constant.ll
M llvm/test/CodeGen/RISCV/urem-lkk.ll
M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
M llvm/test/CodeGen/X86/divide-by-constant.ll
M llvm/test/CodeGen/X86/divmod128.ll
M llvm/test/CodeGen/X86/i128-udiv.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
Log Message:
-----------
[LegalizeTypes] Expand UDIV/UREM by constant via chunk summation (#146238)
This patch improves the lowering of 128-bit unsigned division and
remainder by constants (UDIV/UREM) by avoiding a fallback to libcall
(__udivti3/uremti3) for specific divisors.
When a divisor D satisfies the condition (1 << ChunkWidth) % D == 1, the
128-bit value is split into fixed-width chunks (e.g., 30-bit) and summed
before applying a smaller UDIV/UREM. This transformation is based on the
"remainder by summing digits" trick described in Hacker’s Delight.
This fixes #137514 for some constants.
Commit: 7d02ca610b9cdc3fb75c439e3de849aa468aeb40
https://github.com/llvm/llvm-project/commit/7d02ca610b9cdc3fb75c439e3de849aa468aeb40
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][LLVM] add llvm.fake.use to LLVM dialect (#187026)
Add llvm.fake.use to the LLVM dialect intrinsics.
See https://llvm.org/docs/LangRef.html#llvm-fake-use-intrinsic.
Commit: 49a5192e5d7087847d53f231cbb84cf35a4d6e98
https://github.com/llvm/llvm-project/commit/49a5192e5d7087847d53f231cbb84cf35a4d6e98
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
Log Message:
-----------
[CycleInfo] Don't store top-level cycle per block (#187488)
CycleInfo currently has a second map, that stores the top-level cycle
for a block. I don't think storing this per-block makes a lot of sense,
because the top-level cycle is always the same for all blocks in a
cycle.
So instead store it as a member of the cycle.
Commit: 1078a1dabd686856077812b06a72b387b17e78f1
https://github.com/llvm/llvm-project/commit/1078a1dabd686856077812b06a72b387b17e78f1
Author: Abu <49108786+user1342234 at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/test/CodeGen/X86/bmi.ll
A llvm/test/Transforms/InstCombine/fold-bmi.ll
Log Message:
-----------
Lowering `~x | (x - 1)` to `~blsi(x)` (#186722)
Alive2 proof:
https://alive2.llvm.org/ce/z/bK93Cn
I've implemented a fold in `InstCombineAndOrXor.cpp` to canonicalize `~x
| (x - 1)` to `~(x & -x)` which enables the CodeGen to emit the `blsi`
instruction.
I've also added a test in `CodeGen/X86`.
Fixes #184055
---------
Co-authored-by: Tim Gymnich <tim at gymni.ch>
Commit: 289c58823150a431e50263854466145484db65e1
https://github.com/llvm/llvm-project/commit/289c58823150a431e50263854466145484db65e1
Author: Jaydeep Chauhan <chauhan.jaydeep.ashwinbhai at intel.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-trunc.ll
Log Message:
-----------
[X86] Optimize load-trunc-store for v4i16/v2i32/v2i16 vectors (#186676)
This patch transform
IR
```
define void @cast_i16x4_to_u8x4(ptr %a0, ptr %a1) {
%1 = load <4 x i16>, ptr %a1
%2 = trunc <4 x i16> %1 to <4 x i8>
store <4 x i8> %2, ptr %a0
ret void
}
```
>From Assembly
```
cast_i16x4_to_u8x4: # @cast_i16x4_to_u8x4
vmovq (%rsi), %xmm0 # xmm0 = mem[0],zero
vpmovwb %xmm0, %xmm0
vmovd %xmm0, (%rdi)
retq
```
to
```
cast_i16x4_to_u8x4: # @cast_i16x4_to_u8x4
vpmovzxwd {{.*#+}} xmm0 = mem[0],zero,mem[1],zero,mem[2],zero,mem[3],zero
vpmovdb %xmm0, (%rdi)
retq
```
Also,implemented similar patterns for below vector types
**Patterns supported:**
- **v4i16 -> v4i8 (via v4i32)**
- **v2i32 -> v2i8 (via v2i64)**
- **v2i32 -> v2i16 (via v2i64)**
- **v2i16 -> v2i8 (via v2i64)**
Fixes #83403
Commit: 78a8f00977964cac6a76a13e1e05bb879be8c97c
https://github.com/llvm/llvm-project/commit/78a8f00977964cac6a76a13e1e05bb879be8c97c
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
Log Message:
-----------
Revert "[VPlan] Create header phis once regions have been created (NFC)."
This reverts commit 91b928f919364b29e241821fc639b9ef56dab1a5.
This complicates some analysis that need the happen on the scalar VPlan,
before regions have been created, e.g.
https://github.com/llvm/llvm-project/pull/185323/.
Commit: 18ed1a9414b2a267c0055ce517c731e003504ac4
https://github.com/llvm/llvm-project/commit/18ed1a9414b2a267c0055ce517c731e003504ac4
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/bit-manip-i128.ll
M llvm/test/CodeGen/X86/bit-manip-i256.ll
M llvm/test/CodeGen/X86/bit-manip-i512.ll
Log Message:
-----------
[X86] Add bitrevese/bswap i128/i256/i512 test coverage for #187353 (#187492)
Commit: d641186cb61e149ecbe23ddc0432df76425bffbd
https://github.com/llvm/llvm-project/commit/d641186cb61e149ecbe23ddc0432df76425bffbd
Author: Lucas Colley <lucas.colley8 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/docs/UsersManual.rst
M clang/test/Driver/cl-link.c
Log Message:
-----------
[clang-cl] test that `-Xlinker` works, update supported options docs (#187395)
closes #119179
Commit: 76f72525713742f7ea812e34aef54fcb777f38c0
https://github.com/llvm/llvm-project/commit/76f72525713742f7ea812e34aef54fcb777f38c0
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
A llvm/test/CodeGen/X86/fake-use-fastisel.ll
Log Message:
-----------
[FastISel] generate FAKE_USE for llvm.fake.use (#187116)
FastISel was dropping llvm.fake.use because they are not meant to be
generated at O0 with clang.
This patch adds support in FastISel to generate FAKE_USE for llvm.fake.use.
The handling is simpler than in SelectionDagBuilder because no attempt is made to
get rid of useless FAKE_USE (e.g. for constant SSA values) to keep FastISel simple.
The motivation is that flang will generate llvm.fake.use for function arguments under
`-g` (and O0) because Fortran arguments are not copied to the stack (they are
reference like arguments in most cases) and one should be able to access these
variables from the debugger at any point of the function, even after their last use in the
function.
Commit: dddf01cc145734cd75ea0f21d87818e51cd9e657
https://github.com/llvm/llvm-project/commit/dddf01cc145734cd75ea0f21d87818e51cd9e657
Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
A llvm/test/MC/RISCV/zibi-long-conditional-jump.s
M llvm/test/MC/RISCV/zibi-valid.s
Log Message:
-----------
[RISCV] Relax out of range Zibi conditional branches (#186965)
If `.Label` is not within +-4KiB range, we convert
```
beqi/bnei reg, imm, .Label
```
to
```
bnei/beqi reg, imm, 8
j .Label
```
This is similar to what is done for the RISCV conditional branches
and `Xqcibi` conditional branches.
---------
Co-authored-by: Sudharsan Veeravalli <svs at qti.qualcomm.com>
Commit: 2e2bcf785519f902e9a03ed1605edafdf268d3b1
https://github.com/llvm/llvm-project/commit/2e2bcf785519f902e9a03ed1605edafdf268d3b1
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
Log Message:
-----------
[AMDGPU] Remove unused forward declaration
Commit: a3e3fed088bd35470e5c0ab6832ab39b31095d90
https://github.com/llvm/llvm-project/commit/a3e3fed088bd35470e5c0ab6832ab39b31095d90
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
Log Message:
-----------
[CodeGen] Declare MachineCycleInfo in headers (#187494)
Transform MachineCycleInfo into a class that can be declared and remove
include from many source files.
Similar to 810ba55de9159932d498e9387d031f362b93fbea.
Commit: a32d2695c38f53b270440f827f30fbca93e3c041
https://github.com/llvm/llvm-project/commit/a32d2695c38f53b270440f827f30fbca93e3c041
Author: Vimarsh Sathia <vimarsh.sathia at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
Log Message:
-----------
[bazel] Gate GPU parsers behind llvm_targets (#187213)
Ideally fixes #63135
---------
Signed-off-by: Vimarsh Sathia <vsathia2 at illinois.edu>
Commit: e3415da3cd126b766d0af178e0d332e9ff96bc17
https://github.com/llvm/llvm-project/commit/e3415da3cd126b766d0af178e0d332e9ff96bc17
Author: Michael Klemm <michael.klemm at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Support/Fortran-features.cpp
M flang/test/Integration/OpenMP/copyprivate.f90
A flang/test/Lower/OpenMP/copyprivate-equivalence.f90
M flang/test/Lower/OpenMP/copyprivate.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/copyprivate3.f90
M flang/test/Lower/OpenMP/copyprivate4.f90
M flang/test/Lower/OpenMP/copyprivate5.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence-nowarn.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence.f90
M flang/test/Semantics/OpenMP/threadprivate02.f90
Log Message:
-----------
[Flang][OpenMP] Permit THREADPRIVATE variables in EQUIVALENCE statements (#186696)
The OpenMP API does not allow to have THREADPRIVATE variable appear in
an EQUIVALENCE statement. It has been requested by the community to
extend Flang such that it permits these non-conforming patterns. This PR
changes Flang to inherit the DSA of the base object of the EQUIVALENCE
statement to the equivalenced variables. The orginal error message is
turned into a warning.
This PR contains code from downstream PR
https://github.com/arm/arm-toolchain/pull/755 that @tblah pointed to
during the review.
Fixes https://github.com/llvm/llvm-project/issues/180493
Assisted-by: Claude Code, Opus 4.6
Commit: 068176a50371d12c9d93ac6c748d6db0389b2575
https://github.com/llvm/llvm-project/commit/068176a50371d12c9d93ac6c748d6db0389b2575
Author: mcbarton <matthew.c.barton at hotmail.co.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
Log Message:
-----------
[Analysis] Remove LLVM_ABI annotations from llvm/lib/Analysis/BranchProbabilityInfo.cpp which cause build errors (#187388)
In llvm/lib/Analysis/BranchProbabilityInfo.cpp several LLVM_ABI
annotations were added which cause build errors, when trying to build
LLVM and Clang as a shared library on windows (see
https://github.com/compiler-research/ci-workflows/actions/runs/22754706570/job/67436382142#step:6:1141
for some of the errors) . With the changes in this PR these build errors
are fixed.
After this patch this is how far you get with the build
https://github.com/compiler-research/ci-workflows/actions/runs/23257495426/job/67635570161#step:6:4601.
These errors were introduced sometime in the last month, but I couldn't
work out how to fix them.
Commit: b91c5a7701e1922b0bb8e21fed8222215c78c5d0
https://github.com/llvm/llvm-project/commit/b91c5a7701e1922b0bb8e21fed8222215c78c5d0
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
Log Message:
-----------
[AMDGPU] Test saturated f32 to i8 conversion on vectors (#187487)
Commit: e8556ff6b664df6e595f8aed175eff3a27a4a020
https://github.com/llvm/llvm-project/commit/e8556ff6b664df6e595f8aed175eff3a27a4a020
Author: John Brawn <john.brawn at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/maxbandwidth-regpressure.ll
Log Message:
-----------
[NFC] Remove fractional part of costs in maxbandwidth-regpressure.ll (#187498)
This test is failing on the llvm-clang-x-aarch64 buildbot due to what
looks like a difference in rounding behaviour when printing estimated
cost per lane. Solve this by removing the fractional part, which is what
we've done in the past when this has happened (e.g. commit aeb88f677).
Commit: 0e7262407ca6f6ef9b061d9b24478f555099cb21
https://github.com/llvm/llvm-project/commit/0e7262407ca6f6ef9b061d9b24478f555099cb21
Author: estewart08 <ethan.stewart at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M offload/CMakeLists.txt
M offload/cmake/Modules/LibomptargetGetDependencies.cmake
M offload/cmake/OpenMPTesting.cmake
M offload/libomptarget/CMakeLists.txt
M offload/test/CMakeLists.txt
Log Message:
-----------
[offload] - Remove standalone build in favor of 'runtimes' (#170693)
Summary:
Follow up on removal of OPENMP_STANDALONE_BUILD in openmp (#149878).
This
build method is redundant and can be accomplished via runtimes.
Removes support for:
`cmake -S <llvm-project>/offload ...`
Switches over to:
`make -S <llvm-project>/runtimes -DLLVM_ENABLE_RUNTIMES=openmp;offload
...`
Libomptarget has a dependency on libomp.so and requires the omp cmake
target to exist at build time, which is why both runtimes are listed.
Updates cmake compiler logic in offload/CMakeLists.txt to mirror openmp
changes:
[openmp] Allow testing OpenMP without a full clang build tree (#182470)
User will still need to have a separate invocation to build openmp
DeviceRTL via:
`-DLLVM_ENABLE_RUNTIMES=openmp`
`-DLLVM_DEFAULT_TARGET_TRIPLE=<amdgcn-amd-amdhsa|nvptx64-nvidia-cuda>`
Commit: bed9fa2de54aafcb854dfb4cee7617db15895a99
https://github.com/llvm/llvm-project/commit/bed9fa2de54aafcb854dfb4cee7617db15895a99
Author: Pengxiang Huang <71998072+Pengxiang-Huang at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ipc_macros.h
A libc/hdr/sys_sem_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/struct_sembuf.h
A libc/hdr/types/struct_semid_ds.h
A libc/hdr/types/struct_seminfo.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/sys-ipc-macros.h
A libc/include/llvm-libc-macros/linux/sys-sem-macros.h
A libc/include/llvm-libc-macros/sys-sem-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/struct_sembuf.h
A libc/include/llvm-libc-types/struct_semid_ds.h
A libc/include/llvm-libc-types/struct_seminfo.h
A libc/include/sys/sem.yaml
M libc/src/sys/CMakeLists.txt
A libc/src/sys/sem/CMakeLists.txt
A libc/src/sys/sem/linux/CMakeLists.txt
A libc/src/sys/sem/linux/semctl.cpp
A libc/src/sys/sem/linux/semget.cpp
A libc/src/sys/sem/linux/semop.cpp
A libc/src/sys/sem/semctl.h
A libc/src/sys/sem/semget.h
A libc/src/sys/sem/semop.h
M libc/test/integration/src/CMakeLists.txt
A libc/test/integration/src/sys/CMakeLists.txt
A libc/test/integration/src/sys/sem/CMakeLists.txt
A libc/test/integration/src/sys/sem/sem_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/sem/CMakeLists.txt
A libc/test/src/sys/sem/linux/CMakeLists.txt
A libc/test/src/sys/sem/linux/sem_test.cpp
Log Message:
-----------
[libc][sys/sem] Add sys v sem headers and syscall wrapper implementation (#185914)
Fix #182161
Based on the last PR #182700 implementing sys/ipc.
Commit: b227fab5a6024b5368c7e04e7aebf4c0777fa952
https://github.com/llvm/llvm-project/commit/b227fab5a6024b5368c7e04e7aebf4c0777fa952
Author: Graham Hunter <graham.hunter at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
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/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
Log Message:
-----------
[NFC][LV] Introduce enums for uncountable exit detail and style (#184808)
Recursively splitting out some work from #183318; this covers
the enums for early exit loop type (none, readonly, readwrite)
and the style used (just readonly and
masked-handle-ee-in-scalar-tail for now) and refactoring for
basic use of those enums.
Commit: 44e306ecdb02bdf3fff067a39bf5a763c786a78d
https://github.com/llvm/llvm-project/commit/44e306ecdb02bdf3fff067a39bf5a763c786a78d
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclang_rt.profile.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/nvptx64-nvidia-cuda/libclang_rt.profile.a
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/openmp-offload-gpu.c
Log Message:
-----------
[Clang] Correctly link and handle PGO options on the GPU (#185761)
Summary:
Currently, the GPU targets ignore the standard profiling arguments. This
PR changes the behavior to use the standard handling, which links the in
the now-present `libclang_rt.profile.a` if the user built with the
compiler-rt support enabled. If it is not present this is a linker error
and we can always suppress with `-Xarch_host` and `-Xarch_device`.
Hopefully this doesn't cause some people pain if they're used to doing
`-fprofile-generate` on a CPU unguarded since it was a stange mix of a
no-op and not a no-op on the GPU until now.
Commit: da92bc06ff47bb060dc9f303856d12e751763312
https://github.com/llvm/llvm-project/commit/da92bc06ff47bb060dc9f303856d12e751763312
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
A mlir/lib/Dialect/OpenACC/Transforms/ACCBindRoutine.cpp
M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
A mlir/test/Dialect/OpenACC/acc-bind-routine.mlir
Log Message:
-----------
[mlir][acc] Support call target handling for bind(name) (#187390)
The OpenACC `routine` directive may specify a `bind(name)` clause to
associate the routine with a different symbol for device code. This pass
`ACCBindRoutine` finds calls inside offload regions that target such
routines and rewrites the callee to the bound symbol.
---------
Co-authored-by: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
Commit: ef4f87425c51e22c66bf42c5ad5e8c41b0e15eae
https://github.com/llvm/llvm-project/commit/ef4f87425c51e22c66bf42c5ad5e8c41b0e15eae
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/test/Analysis/clang-suppress/friends.cpp
Log Message:
-----------
[analyzer] Fix [[clang::suppress]] for friend function templates with namespace-scope forward-declarations (#187043)
When a friend function template is defined inline inside a
[[clang::suppress]]-annotated class but was forward-declared at
namespace scope, the instantiation's lexical DeclContext was the
namespace (from the forward-declaration), not the class.
The lexical parent chain walk in BugSuppression::isSuppressed therefore
never reached the class and suppression did not apply.
Fix by extending preferTemplateDefinitionForTemplateSpecializations to
handle FunctionDecl instances: calling getTemplateInstantiationPattern()
that maps the instantiation back to the primary template FunctionDecl,
whose lexical DC is the class where the friend was defined inline.
So the existing parent-chain walk then finds the suppression attribute.
Assisted-By: claude
Commit: 153c230446caf1e1ecf81ac77b316c4f7986d4e3
https://github.com/llvm/llvm-project/commit/153c230446caf1e1ecf81ac77b316c4f7986d4e3
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
M llvm/unittests/DebugInfo/PDB/NativeSessionTest.cpp
Log Message:
-----------
[PDB] Fix and simplify module index lookup (#179869)
Commit: b55f6dbb35f1c884654fb3c9563e51429d9a9fe1
https://github.com/llvm/llvm-project/commit/b55f6dbb35f1c884654fb3c9563e51429d9a9fe1
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/test/Analysis/Scalable/ssaf-format/list.test
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
Log Message:
-----------
[clang][ssaf] Improve layout of `clang-ssaf-format --list` by adding a separator between name and description
Commit: cdaf29f84dd0abbd1f961982799059c92d76625b
https://github.com/llvm/llvm-project/commit/cdaf29f84dd0abbd1f961982799059c92d76625b
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.ll
M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/interleave-with-runtime-checks.ll
M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
M llvm/test/Transforms/LoopVectorize/AArch64/neon-inloop-reductions.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub-epilogue-vec.ll
M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-cost.ll
M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory-epilogue-vec.ll
M llvm/test/Transforms/LoopVectorize/X86/transform-narrow-interleave-to-widen-memory.ll
M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
Log Message:
-----------
Revert "[LV] Simplify and unify resume value handling for epilogue vec." (#187504)
Reverts llvm/llvm-project#185969
This is suspected to cause a miscompile in 549.fotonik3d_r from SPEC 2017 FP
Commit: 807377492e7ca04c2435ee3ef94c0e0d134d7de2
https://github.com/llvm/llvm-project/commit/807377492e7ca04c2435ee3ef94c0e0d134d7de2
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Analysis/MemorySSA.cpp
Log Message:
-----------
[MemorySSA] Fix EXPENSIVE_CHECKS build
Commit: cf92512e0968343f6e09ad39ba2f7b22b8c81fa3
https://github.com/llvm/llvm-project/commit/cf92512e0968343f6e09ad39ba2f7b22b8c81fa3
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/IR/Verifier.cpp
M llvm/test/Bitcode/DIImportedEntity_elements.ll
M llvm/test/Bitcode/DIModule-fortran-external-module.ll
A llvm/test/Verifier/local-import-in-cu.ll
Log Message:
-----------
[DebugInfo] Add Verifier check for local imports in CU's imports field (#187118)
Since https://reviews.llvm.org/D144004, DwarfDebug asserts if
function-local imported entities are present in the imports field of
DICompileUnit.
This patch adds a Verifier check to detect such invalid IR earlier.
Incorrect occurrences of imported entities in DICompileUnit's imports
field in llvm/test/Bitcode/DIImportedEntity_elements.ll,
llvm/test/Bitcode/DIModule-fortran-external-module.ll are fixed.
This change is extracted from https://reviews.llvm.org/D144008.
Commit: 8ca7a336fb1076e4ebb19f2ecff354f39079a9cb
https://github.com/llvm/llvm-project/commit/8ca7a336fb1076e4ebb19f2ecff354f39079a9cb
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info-with-multiple-predecessors.ll
Log Message:
-----------
[SCEV] Generate test checks (NFC)
Commit: 989ea0e2d7263dc462f600a2c65be95a60007cde
https://github.com/llvm/llvm-project/commit/989ea0e2d7263dc462f600a2c65be95a60007cde
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Utils/XeGPUUtils.h
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPeepHoleOptimizer.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/test/Dialect/XeGPU/peephole-optimize.mlir
Log Message:
-----------
[MLIR][XeGPU] Lowering 2-Dimensional Reductions of N-D Tensors into Chained 1-D Reductions (#186034)
This PR relaxes the 2d reduction lowering in the peephole optimization
pass to allow source tensor to have n-d shape.
It also fixes a minor bug of accumulator lowering in the current
implementation.
Commit: bc2a8ef6f5676ad9872c209334084e98bf5c07df
https://github.com/llvm/llvm-project/commit/bc2a8ef6f5676ad9872c209334084e98bf5c07df
Author: Leonard Grey <leonard at leonardgrey.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.h
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
Log Message:
-----------
[lldb][NativePDB] Remove cantFail uses (1 out of ?) (#187158)
This is a follow-up to
https://github.com/swiftlang/llvm-project/pull/12317#discussion_r2850297229
Per that discussion, given that deserializers *can* fail given a corrupt
PDB, it's preferable to handle the error instead of crashing.
This specific change is limited to "easy" changes (read: I have high
confidence in their correctness). The ideal end state is funneling all
errors to a few central places in `SymbolFileNativePDB`.
Commit: 5ae5f9df42f7987e2af30a714c3d10956ae0f943
https://github.com/llvm/llvm-project/commit/5ae5f9df42f7987e2af30a714c3d10956ae0f943
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/non-monotonic.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
Log Message:
-----------
[DA] Check nsw flags for addrecs in the Exact SIV test (#186387)
This patch adds a check to ensure that the addrecs have nsw flags at the
beginning of the Exact SIV test. If either of them doesn't have, the
analysis bails out. This check is necessary because the subsequent
process in the Exact SIV test assumes that they don't wrap.
Commit: 70bb9e24526a9b73e1bcdfaca85a4fb5b8546483
https://github.com/llvm/llvm-project/commit/70bb9e24526a9b73e1bcdfaca85a4fb5b8546483
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
Log Message:
-----------
[CycleInfo] Index using block numbers instead of pointers (#187500)
Replace the DenseMap from block pointer to cycle with a vector indexed
by block number, which makes the lookup more efficient.
Commit: e1aef9e227484b255d57609c961cd23f83821621
https://github.com/llvm/llvm-project/commit/e1aef9e227484b255d57609c961cd23f83821621
Author: Louis Dionne <ldionne.2 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libcxx/src/include/apple_availability.h
Log Message:
-----------
[libc++] Fix missing availability check for visionOS in apple_availability.h (#187015)
Without this, we were assuming that __ulock was unavailable on visionOS
and falling back to the manual implementation, when in reality we can
always rely on the existence of ulock.
Fixes #186467
Commit: 201d3547cce18d0bbd90a73df142d11ad52ea116
https://github.com/llvm/llvm-project/commit/201d3547cce18d0bbd90a73df142d11ad52ea116
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
Log Message:
-----------
[AMDGPU] Clean up `LowerFP_TO_INT_SAT` in AMDGPUTargetLowering (#187486)
This addresses the rest of post-commit comments from #174726.
Commit: 2754e35f734761bda5cab0ffbb494a529f0eaf71
https://github.com/llvm/llvm-project/commit/2754e35f734761bda5cab0ffbb494a529f0eaf71
Author: ioana ghiban <ioana.ghiban at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
A mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-load-store.mlir
Log Message:
-----------
[mlir][EmitC] Support pointer-based memrefs in load/store lowering (#186828)
## Problem
In the MemRef → EmitC conversion, `memref.load` and `memref.store`
assume that the converted memref operand is an `emitc.array`, as defined
by the type conversion in `populateMemRefToEmitCTypeConversion`.
However, `memref.alloc` is lowered to a `malloc` call returning
`emitc.ptr`. When such values are used by `memref.load` or
`memref.store`, the conversion framework inserts a bridging
`builtin.unrealized_conversion_cast` from `emitc.ptr` to `emitc.array`.
These casts have no EmitC representation and therefore remain in the IR
after conversion, preventing valid C/C++ emission.
## Solution
Extend the `memref.load` and `memref.store` conversions to handle
pointer-backed buffers.
If the memref operand is defined by an `UnrealizedConversionCastOp`
whose input is an `emitc.ptr`, the cast is stripped and the underlying
pointer operand is used directly. Since pointer subscripting in EmitC is
one-dimensional, the multi-dimensional memref indices are converted to a
row-major linear index (matching the default memref layout) using the
original `MemRefType` shape before emitting `emitc.subscript`.
The existing array-based lowering path remains unchanged.
This patch intentionally does ***not*** modify the MemRef → EmitC type
conversion rule (`memref → emitc.array`). Instead, the mismatch
introduced by `memref.alloc` returning a pointer is handled locally in
the `LoadOp` and `StoreOp` conversions.
## Example 1: Single-dimensional store
### Input
```mlir
func.func @alloc_store(%arg0: i32, %i: index) {
%alloc = memref.alloc() : memref<999xi32>
memref.store %arg0, %alloc[%i] : memref<999xi32>
return
}
```
### Current lowering
```mlir
// AllocOp conversion unchanged -> excluded for brevity
%5 = builtin.unrealized_conversion_cast %4 : !emitc.ptr<i32> to !emitc.array<999xi32>
%6 = subscript %5[%arg1]
assign %arg0 to %6 : <i32>
```
The `unrealized_conversion_cast` remains in the IR.
### Lowering after this patch
```mlir
%5 = subscript %4[%arg1] : (!emitc.ptr<i32>, !emitc.size_t) -> !emitc.lvalue<i32>
assign %arg0 : i32 to %5 : <i32>
```
The cast is eliminated and pointer subscripting is used directly.
## Example 2: Multi-dimensional store
### Input
```mlir
func.func @memref_alloc_store(%v : f32, %i : index, %j : index) {
%alloc = memref.alloc() : memref<4x8xf32>
memref.store %v, %alloc[%i, %j] : memref<4x8xf32>
return
}
```
### Current lowering
```mlir
// AllocOp conversion unchanged -> excluded for brevity
%5 = builtin.unrealized_conversion_cast %4 : !emitc.ptr<f32> to !emitc.array<4x8xf32>
%6 = subscript %5[%arg1, %arg2] : (!emitc.array<4x8xf32>, !emitc.size_t, !emitc.size_t) -> !emitc.lvalue<f32>
assign %arg0 : f32 to %6 : <f32>
```
### Lowering after this patch
```mlir
%5 = "emitc.constant"() <{value = 8 : index}> : () -> !emitc.size_t
%6 = mul %arg1, %5 : (!emitc.size_t, !emitc.size_t) -> !emitc.size_t
%7 = add %6, %arg2 : (!emitc.size_t, !emitc.size_t) -> !emitc.size_t
%8 = subscript %4[%7] : (!emitc.ptr<f32>, !emitc.size_t) -> !emitc.lvalue<f32>
assign %arg0 : f32 to %8 : <f32>
```
The multi-dimensional indices are converted into a linear row-major
index before pointer subscripting.
Assisted-by: ChatGPT (refine implementation + tests). I reviewed all
code and tests before submission.
Commit: c63ce62f7cf6193714e95f6b3442170ccb2a3a5e
https://github.com/llvm/llvm-project/commit/c63ce62f7cf6193714e95f6b3442170ccb2a3a5e
Author: ambergorzynski <120007557+ambergorzynski at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/si-lower-i1-copies.mir
Log Message:
-----------
[NFC][AMDGPU] New test for untested case in SILowerI1Copies (#186127)
[This
line](https://github.com/ambergorzynski/llvm-project/blob/main/llvm/lib/Target/AMDGPU/SILowerI1Copies.cpp#L646)
is untested by the existing LLVM test suite (checked using code coverage
and by inserting an `abort`).
We propose a new test that exercises this case. The test is demonstrated
by adding an abort to show that it is the only test that fails (the
abort is removed before merging).
Commit: c5c0b8348e6cbb966675c7f4c5e55922da5f6a88
https://github.com/llvm/llvm-project/commit/c5c0b8348e6cbb966675c7f4c5e55922da5f6a88
Author: ioana ghiban <ioana.ghiban at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/lib/Dialect/MemRef/Transforms/CMakeLists.txt
A mlir/lib/Dialect/MemRef/Transforms/ElideReinterpretCast.cpp
A mlir/test/Dialect/MemRef/elide-reinterpret-cast.mlir
Log Message:
-----------
[mlir][memref] Rewrite scalar `memref.copy` through reinterpret_cast into load/store (#186118)
This change adds a rewrite that simplifies `memref.copy` operations whose
destination is a scalar view produced by `memref.reinterpret_cast`.
The pattern matches cases where a reinterpret cast creates a scalar view
(`sizes = [1, ..., 1]`) into a memref that has a single non-unit dimension. In
this situation the view refers to exactly one element in the base buffer, so
the accessed address depends only on the base pointer and the offset.
The stride information of the view does not affect the accessed element,
because the only valid index into the view is `[0, ..., 0]`.
Therefore the copy can be rewritten into a direct load from the source and a
store into the base memref using the offset from the reinterpret cast.
This makes the `memref.reinterpret_cast` redundant for the copy and simplifies
the IR.
Assisted-by: ChatGPT (refine implementation + tests). I reviewed all code and
tests before submission.
### Example
Before:
```mlir
func.func private @concat() {
%src = memref.alloc() : memref<1x1xf32>
%base = memref.alloc() : memref<1x108xf32>
%view = memref.reinterpret_cast %base
to offset: [0], sizes: [1, 1], strides: [108, 1]
: memref<1x108xf32>
to memref<1x1xf32, strided<[108, 1]>>
memref.copy %src, %view
: memref<1x1xf32>
to memref<1x1xf32, strided<[108, 1]>>
}
```
After:
```mlir
func.func private @concat() {
%src = memref.alloc() : memref<1x1xf32>
%base = memref.alloc() : memref<1x108xf32>
%c0 = arith.constant 0 : index
%v = memref.load %src[%c0, %c0] : memref<1x1xf32>
memref.store %v, %base[%c0, %c0] : memref<1x108xf32>
}
```
### Motivation
This rewrite simplifies IR and helps eliminate `memref.reinterpret_cast`
operations in preparation for later lowerings (e.g. EmitC lowering), where
pointer-based access patterns are easier to handle once scalar accesses are
explicit.
### Scope
This rewrite is intentionally narrow:
- It only applies when both source and destination reduce to scalar accesses.
- It does not attempt to rewrite general `memref.copy` operations.
- It does not introduce loops or handle multi-element copies.
The pass currently performs only this transformation, so it is expected to be
used intentionally rather than as part of a broad optimization pipeline.
### Why not use `memref.copy` directly?
`memref.copy` requires source and destination memrefs to have the same shape.
The destination of the copy here is a scalar view derived from a larger memref,
so copying directly into the base memref would violate this requirement.
Instead, the rewrite loads the scalar value from the source and stores it into
the base memref, at the index determined by the reinterpret cast offset.
Commit: 4199bb1a8149197061d0b74e24d78a0b6ae4c87c
https://github.com/llvm/llvm-project/commit/4199bb1a8149197061d0b74e24d78a0b6ae4c87c
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
Log Message:
-----------
[AMDGPU] Simplify loop in AMDGPULowerVGPREncoding::handleCoissue. NFC. (#187511)
Commit: d049eef4b5ab8e7f8dcfb40406d81666d9f5dfdc
https://github.com/llvm/llvm-project/commit/d049eef4b5ab8e7f8dcfb40406d81666d9f5dfdc
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/test/CodeGen/X86/fold-masked-merge.ll
Log Message:
-----------
[DAG] Use value tracking to detect or_disjoint patterns and add a add_like pattern matcher (#187478)
Extend the generic or_disjoint pattern to call haveNoCommonBitsSet, this
allows us to remove the similar x86 or_is_add pattern, use or_disjoint
directly and merge some add/or_is_add matching patterns to use a
add_like wrapper pattern instead
Commit: d8a83a11231fe4b3450e6a8bf1fe77f659ae0c20
https://github.com/llvm/llvm-project/commit/d8a83a11231fe4b3450e6a8bf1fe77f659ae0c20
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/SPIRV/pointers/PtrCast-in-OpSpecConstantOp.ll
M llvm/test/CodeGen/SPIRV/pointers/global-ptrtoint.ll
M llvm/test/CodeGen/SPIRV/pointers/nested-struct-opaque-pointers.ll
M llvm/test/CodeGen/SPIRV/pointers/struct-opaque-pointers.ll
M llvm/test/CodeGen/SPIRV/transcoding/ConvertPtrInGlobalInit.ll
Log Message:
-----------
[NFC][SPIR-V] Disable tests failed after spirv-val update (#187028)
Issues:
- https://github.com/llvm/llvm-project/issues/186344
- https://github.com/llvm/llvm-project/issues/186756
Commit: 923cc2d43b4174aa2f236a9180f6aa07502716f0
https://github.com/llvm/llvm-project/commit/923cc2d43b4174aa2f236a9180f6aa07502716f0
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/test/tools/llvm-split/AMDGPU/kernels-dependencies.ll
Log Message:
-----------
[AMDGPU] Fix alias handling in module splitting functionality (#187295)
Summary:
The module splitting used for `-flto-partitions=8` support (which is
passed by default) did not correctly handle aliases. We mainly need to
do two things: keep the aliases in the they are used in and externalize
them. Internalize linkage needs to be handled conservatively.
This is needed because these aliases show up in PGO contexts.
---------
Co-authored-by: Shilei Tian <i at tianshilei.me>
Commit: d18a784d410617fbb3f9d2bf6d30fcd84b3533db
https://github.com/llvm/llvm-project/commit/d18a784d410617fbb3f9d2bf6d30fcd84b3533db
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfiling.h
A compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M offload/test/CMakeLists.txt
M offload/test/lit.cfg
M offload/test/lit.site.cfg.in
M openmp/device/CMakeLists.txt
R openmp/device/include/Profiling.h
R openmp/device/src/Profiling.cpp
Log Message:
-----------
[compiler-rt] Define GPU specific handling of profiling functions (#185763)
Summary:
The changes in https://www.github.com/llvm/llvm-project/pull/185552
allowed us to
start building the standard `libclang_rt.profile.a` for GPU targets.
This PR expands this by adding an optimized GPU routine for counter
increment and removing the special-case handling of these functions in
the OpenMP runtime.
Vast majority of these functions are boilerplate, but we should be able
to do more interesting things with this in the future, like value or
memory profiling.
Commit: b7776ccebe9d97a30160b29623a2d0691572b789
https://github.com/llvm/llvm-project/commit/b7776ccebe9d97a30160b29623a2d0691572b789
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/test/CIR/CodeGen/new.cpp
Log Message:
-----------
[CIR] Add support for array new with ctor init (#187418)
This adds support for array new initialization that requires calling
constructors.
This diverges a bit from the classic codegen implementation in a couple
of ways. First, we use the cir.array_ctor operation to represent all the
constructor calls that weren't part of an explicit initializer list.
This gets lowered to a loop during the LoweringPrepare pass. Second,
because CIR uses more explicit types, we have to insert a bitcast of the
array pointer to an explicit array type. Third, when an initializer list
is provided and we are calling constructors for the "filler" portion of
the list, we attempt to get the array size as a constant and create a
"tail array" to initialize that is sized to the number of elements
remaining.
Commit: a693970f07933d79cbd671a200df52df90a9d7bd
https://github.com/llvm/llvm-project/commit/a693970f07933d79cbd671a200df52df90a9d7bd
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/Transforms/LICM/store-hoisting.ll
Log Message:
-----------
[LICM] Regenerate test checks (NFC)
Commit: c9f6ad8d4299163db08c5a9fb1746f9cc1a5ae15
https://github.com/llvm/llvm-project/commit/c9f6ad8d4299163db08c5a9fb1746f9cc1a5ae15
Author: Hristo Hristov <hristo.goshev.hristov at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libcxx/docs/index.rst
Log Message:
-----------
[libc++][docs][NFC] Update Open XL supported version to 17.1.4 (#176112)
Open XL 17.1.4 based on LLVM21 was released:
https://www.ibm.com/docs/en/openxl-c-and-cpp-aix/17.1.4?topic=whats-new
Co-authored-by: Hristo Hristov <zingam at outlook.com>
Commit: e2c9dde1a5f31b2b398b87be5eb3d165c0aebed8
https://github.com/llvm/llvm-project/commit/e2c9dde1a5f31b2b398b87be5eb3d165c0aebed8
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.ttracedata.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_ttracedata (#187342)
Commit: 593683f9a0eb53018ab1548ca55be9ff57cb1b23
https://github.com/llvm/llvm-project/commit/593683f9a0eb53018ab1548ca55be9ff57cb1b23
Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCUtilsLoop.h
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsCG.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsLoop.cpp
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsLoopTest.cpp
Log Message:
-----------
[OpenACC][NFC] Generalize wrapMultiBlockRegionWithSCFExecuteRegion (#187359)
Simplify `wrapMultiBlockRegionWithSCFExecuteRegion` by replacing the
`bool convertFuncReturn` parameter with a generic `getNumSuccessors() ==
0` check. Terminators with no successors are by definition region exit
points, so they can be identified automatically without requiring
callers to specify types. This enables downstream dialects (e.g., CUF
with fir::FirEndOp) to reuse the utility without modifying it.
```
// Before:
wrapMultiBlockRegionWithSCFExecuteRegion(region, mapping, loc, rewriter, /*convertFuncReturn=*/true);
// After:
wrapMultiBlockRegionWithSCFExecuteRegion(region, mapping, loc, rewriter);
```
Commit: 9050794e06cf1cf6f39bf2a3011eed5abf7c99b6
https://github.com/llvm/llvm-project/commit/9050794e06cf1cf6f39bf2a3011eed5abf7c99b6
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/PhaseOrdering/X86/scalarization-inseltpoison.ll
M llvm/test/Transforms/PhaseOrdering/X86/scalarization.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/strided-loads-based-reduction.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
Log Message:
-----------
[SLP]Improve reductions for copyables/split nodes
The original support for copyables leads to a regression in x264 in
RISCV, this patch improves detection of the copyable candidates by more
precise checking of the profitability and adds and extra check for
splitnode reduction, if it is profitable.
Fixes #184313
Reviewers: hiraditya, RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/185697
Commit: d0caa41c51cebed76b05d56f6d9728201f72185d
https://github.com/llvm/llvm-project/commit/d0caa41c51cebed76b05d56f6d9728201f72185d
Author: Luisa Cicolini <48860705+luisacicolini at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer.mir
M llvm/test/CodeGen/AArch64/neg-selects.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
Log Message:
-----------
[GISel] import pattern `(A-(B-C)) to A+(C-B)` (#181676)
This PR imports the rewrite pattern `(A-(B-C)) to A+(C-B)` from
selectionDAG to GlobalISel.
The rewrite should only trigger when `B-C` is used once.
Commit: 4cbb67a962196285b5342a133ca8a2d986013eb0
https://github.com/llvm/llvm-project/commit/4cbb67a962196285b5342a133ca8a2d986013eb0
Author: Bruce Changlong Xu <brucechanglongxu at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
Log Message:
-----------
[AMDGPU] Use empty() instead of size() comparisons. NFC. (#187424)
Replace `.size() == 0`, `.size() != 0`, and `.size() > 0` with
`.empty()` / `!.empty()` across the AMDGPU backend.
Commit: 2ec08b31941d4e524fcc20e2e62ef865e80a2bab
https://github.com/llvm/llvm-project/commit/2ec08b31941d4e524fcc20e2e62ef865e80a2bab
Author: Weiwen He <60433849+he-weiwen at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
A llvm/test/Transforms/LoadStoreVectorizer/X86/mismatched-gep-stride.ll
Log Message:
-----------
[LSV] Added check for mismatched GEP strides in getConstantOffsetComplexAddrs (#186671)
When two GEPs A & B with variable indices have source element types of
different sizes (e.g. i8 vs i32), their offsets cannot be constants.
Currently the `getConstantOffsetComplexAddrs` does not check this and
simply use the stride of GEP A assuming they are equal, resulting in
miscompile.
Add a check that the source element types are the same, otherwise bail
out.
Fixes #186327
Commit: bdeb18a74e59b88775308674769e991c9fb6c35a
https://github.com/llvm/llvm-project/commit/bdeb18a74e59b88775308674769e991c9fb6c35a
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A llvm/test/tools/llc/mattr-mcpu-help.ll
M llvm/tools/llc/llc.cpp
Log Message:
-----------
[llc] Enable -mattr=help regardless of -mattr order (#187269)
Previously a command like `llc -mtriple=aarch64 -mattr=+zcm-fpr64
-mattr=help` would hang, instead of printing help text and exiting. This
patch provides a fix by relaxing the previous constraint where
`-mattr=help` must have been first among attrs. It can now appear
anywhere.
Includes a test to cover both `-mcpu=help` and `-mattr=help` for llc.
Commit: 1d854bd51bf05407d845fcc1de1db502f70ba68c
https://github.com/llvm/llvm-project/commit/1d854bd51bf05407d845fcc1de1db502f70ba68c
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsghalt.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-constant.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_sendmsg (#187361)
Commit: 4ea9c1a4564af364654e7bba09676da1e289f686
https://github.com/llvm/llvm-project/commit/4ea9c1a4564af364654e7bba09676da1e289f686
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/Transforms/LICM/call-hoisting.ll
Log Message:
-----------
[LICM] Mark load function as willreturn in test (NFC)
To make sure that the tests covering store hoisting are testing
the thing they're supposed to. Otherwise hoisting may fail because
the store can't be speculated, rather than due to memory effects.
Commit: 9044b0f17162f35cb1fc44eba09344fa11fc3d8a
https://github.com/llvm/llvm-project/commit/9044b0f17162f35cb1fc44eba09344fa11fc3d8a
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
M llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
M llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
M llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp
M llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
A llvm/test/tools/llvm-pdbutil/Inputs/local-regrel-indir.yaml
A llvm/test/tools/llvm-pdbutil/local-regrel-indir.test
M llvm/tools/llvm-pdbutil/MinimalSymbolDumper.cpp
Log Message:
-----------
[DebugInfo][CodeView] Support `S_DEFRANGE_REGISTER_REL_INDIR` (#186410)
This adds support for `S_DEFRANGE_REGISTER_REL_INDIR` (as
`DefRangeRegisterRelIndirSym`).
It's to `S_REGREL32_INDIR` what `S_DEFRANGE_REGISTER_REL` is to
`S_REGREL32`. `S_REGREL32_INDIR` was added in #183172.
LLVM only generates `S_LOCAL` for variables and parameters, so we need
this record to specify a range where a variable is indirectly accessed.
I didn't find any PDB where this record is in, so I guessed the layout
based on `S_DEFRANGE_REGISTER_REL` and `S_REGREL32_INDIR`. Locally, I
updated LLVM to generate this where possible, and tested it with the VS
debugger and WinDBG. Both handled the record correctly. This PR doesn't
include the change to debug info generation yet - you can find the
current WIP in
https://github.com/Nerixyz/llvm-project/commit/884072fa17e0361e2e493419a975f2b67c04982a.
The name `OffsetInUdt` comes from DIA
([`get_offsetInUdt`](https://learn.microsoft.com/en-us/visualstudio/debugger/debug-interface-access/idiasymbol-get-offsetinudt?view=visualstudio)).
Given that this symbol also has a `offsetInParent`, I find the name a
bit confusing. When generating the record in the commit above, I used
the name `DerefOffset`. If we change it here, it should be changed in
`RegRelativeIndirSym` as well.
Commit: 55e6683fe4a2bda62c46ac50c091a7cfb4a20e5e
https://github.com/llvm/llvm-project/commit/55e6683fe4a2bda62c46ac50c091a7cfb4a20e5e
Author: Chinmay Deshpande <chdeshpa at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
Log Message:
-----------
[NFC][AMDGPU] Move SWMMAC features into specific target feature sets (#187394)
Commit: 422dabeb4e82430e46bc5d6b4d189525a8df4715
https://github.com/llvm/llvm-project/commit/422dabeb4e82430e46bc5d6b4d189525a8df4715
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_eq.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_ne.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_sge.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_slt.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_uge.ll
M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_ult.ll
Log Message:
-----------
[RISCV] SFB with Immediates to QC.MVccI (#186555)
When we are just branching over a move (rather than a more complex
instruction), then Xqcicm sometimes has equivalent conditional move
instructions for that which are shorter.
We can only turn `qc.b<cc>i` instructions into `qc.mv<cc>i` instructions
because the immediate ranges match (5-bit). The `qc.e.b<cc>i` take
larger immediates (16-bit) for which there is no equivalent.
Commit: b20d21aaf1646b27822be1004e90a06b7c776217
https://github.com/llvm/llvm-project/commit/b20d21aaf1646b27822be1004e90a06b7c776217
Author: Aaron Ballman <aaron at aaronballman.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/www/c_status.html
Log Message:
-----------
[C23] Downgrade WG14 N3037 implementation status to partial (#187495)
In discussion of #186196, it started to become clear that claiming full
conformance to this feature was premature because there are still
outstanding implementation issues and standards questions with the
feature. Claiming full conformance gives users a false impression that
we think the implementation is production quality and that we don't
expect to change our implementation in breaking ways, but I believe that
we want some flexibility here and it's more accurate to say we only
partially support the feature at the moment.
Note, this is not saying we expect to break the code from that issue,
just listing where the discussion took place that led to this patch.
Commit: 3f5d6bdd2ac00c508290a6080438aaecfe2d0690
https://github.com/llvm/llvm-project/commit/3f5d6bdd2ac00c508290a6080438aaecfe2d0690
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for buffer atomic add/sub (#187405)
Commit: 65f6a346a96acf1e0914b5288af8253801973b6d
https://github.com/llvm/llvm-project/commit/65f6a346a96acf1e0914b5288af8253801973b6d
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/test/Analysis/indirect-goto-basics.c
Log Message:
-----------
[NFC][analyzer] Eliminate IndirectGotoNodeBuilder (#187343)
This commit removes the class `IndirectGotoNodeBuilder` because it was
an abstraction that just complicated and obscured the underlying logic
without any practical advantage.
Incidentally, this PR also prepares the ground for dispatch based on
symbolic pointers in indirect goto statements. (If somebody would need
it, I could implement it reasonably quickly.)
Commit: dfafee7a4782b833158079e72db601ebe0e9886f
https://github.com/llvm/llvm-project/commit/dfafee7a4782b833158079e72db601ebe0e9886f
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/unittests/Analysis/ScalarEvolutionTest.cpp
Log Message:
-----------
[SCEV] Convert more interfaces to use SCEVUse (NFC). (#185045)
Convert more interfaces to SCEVUse, following up to
https://github.com/llvm/llvm-project/pull/91961.
PR: https://github.com/llvm/llvm-project/pull/185045
Commit: ffa8ba8ce2d1d4f5d435f4c9e5787a5539ead1d4
https://github.com/llvm/llvm-project/commit/ffa8ba8ce2d1d4f5d435f4c9e5787a5539ead1d4
Author: Andrei Elovikov <andrei.elovikov at sifive.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
Log Message:
-----------
[NFC][LAA] Minor stylistic/comments improvements (#185510)
I tried to split into individual tiny commits to ease review but
uploading them as separate PRs would definitely be an overkill.
---------
Co-authored-by: Ramkumar Ramachandra <r at artagnon.com>
Co-authored-by: Florian Hahn <flo at fhahn.com>
Commit: 555caa18762fe068d00b61c62e13e6d04b2bfa9f
https://github.com/llvm/llvm-project/commit/555caa18762fe068d00b61c62e13e6d04b2bfa9f
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
Log Message:
-----------
[clang-tidy] Fix `readability-else-after-return` breaking code by deleting too many characters (#187437)
Fixes #57258.
Commit: 23d8651de3f8c6bbaf6ecf7c17900152b918e3fe
https://github.com/llvm/llvm-project/commit/23d8651de3f8c6bbaf6ecf7c17900152b918e3fe
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
Log Message:
-----------
[lldb][bytecode] Remove tracking of stack temps in compiler (#187401)
The `num_temps` was introduced under the mistaken understanding of the
index values given to the `pick` op. I thought the `pick` index was from
the top of the stack, but it's from the bottom. The model of indexing
from the bottom of the stack has the benefit of simplifying the
compiler.
Commit: 1d9762a0776562095bbb8b543f2e273ddb062fd7
https://github.com/llvm/llvm-project/commit/1d9762a0776562095bbb8b543f2e273ddb062fd7
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/atomic.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/floating-point.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/integer.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/mul-div-rv32.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/mul-div.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/arithmetic.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/bitwise.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/comparison.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/conversion.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/fma.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/fp.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/mask.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/minmax.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/mul-div.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/permutation.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/reduction.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/vle-vse-vlm.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/vlse-vsse.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/vlseg-vsseg.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/rvv/vlxe-vsxe.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zba.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zbb.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zbs.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zfh.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zfhmin.test
A llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zicond.test
M llvm/unittests/TargetParser/RISCVTargetParserTest.cpp
Log Message:
-----------
[RISCV] Add scheduling models for `sifive-x160` and `sifive-x180` (#187089)
Assign scheduling models to `sifive-x160` and `sifive-x180`.
Currently both of them share the same model, which is a variant of the
SiFive7 scheduling model with VLEN=128. Because of this commonality, most
tests only use `-mcpu=sifive-x180`, whose instruction set is a superset
of `sifive-x160`'s.
Commit: de9746cdfeb4488d9eff5ed24a0bb82624365096
https://github.com/llvm/llvm-project/commit/de9746cdfeb4488d9eff5ed24a0bb82624365096
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/test/CMakeLists.txt
A clang-tools-extra/test/Unit/CMakeLists.txt
Log Message:
-----------
[clang-doc] Add individual target for unit tests (#185695)
Commit: 300a19d83e29125b7815c9555687acb4cf54565f
https://github.com/llvm/llvm-project/commit/300a19d83e29125b7815c9555687acb4cf54565f
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/bitcnt-big-integer.ll
Log Message:
-----------
[X86] bitcnt-big-integer.ll - add vXi128/vXi256 ctpop test coverage for #187447 (#187533)
Commit: 1418f80d5c4d1f54e2f11f0650818c6c602aa505
https://github.com/llvm/llvm-project/commit/1418f80d5c4d1f54e2f11f0650818c6c602aa505
Author: Dhruv Chauhan <dhruv.chauhan at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
M mlir/lib/Dialect/Tensor/Transforms/ConcatOpPatterns.cpp
M mlir/lib/Dialect/Tensor/Transforms/FoldTensorSubsetOps.cpp
M mlir/test/Dialect/Tensor/fold-tensor-subset-ops.mlir
Log Message:
-----------
[mlir][tensor] Forward concat insert_slice destination into DPS provider (#183490)
In TosaToTensor, forward concat insert_slice destination slices into
single use destination style producers, which avoids creating temp
producer results that are immediately copied into the concat result. Add
regression test for concat + fill forwarding
Commit: 7925ef6df83cbf44912742dc2e0bd5eafc7e3855
https://github.com/llvm/llvm-project/commit/7925ef6df83cbf44912742dc2e0bd5eafc7e3855
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/TemplateBase.h
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/test/SemaCXX/type_pack_element.cpp
Log Message:
-----------
[clang] fix crash related to missing source locations for converted template arguments (#187352)
This adds a way to attach source locations to trivially created template
arguments such as packs, or converted expressions when there is no
expression available.
This also avoids crashes due to missing source locations.
In a few places where this matters, we already create expressions from
the converted arguments, but this requires access to Sema, where
currently creating trivial typelocs only requires access to to the
ASTContext.
So this creates a new storage kind for TemplateArgumentLocs, where a
single SourceLocation is stored, embedded in the pointer where possible.
As a drive-by, strenghten asserts by enforcing the TemplateArgumentLocs
are created with the right kinds of locations.
Fixes #186655
Commit: 467cf7caeda8651f5787138882a2160730e02a99
https://github.com/llvm/llvm-project/commit/467cf7caeda8651f5787138882a2160730e02a99
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/SandboxIR/Values.def
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/unittests/SandboxIR/SandboxIRTest.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
Log Message:
-----------
[SandboxIR] Implement UncondBrInst and CondBrInst (#187196)
This patch implements the unconditional and conditional branch
instructions mirroring the newly added LLVM IR instructions.
So now we have two new classes UncondBrInst and CondBrInst inheriting
from BranchInst.
The original Br opcode has been removed in favor of UncondBr and CondBr.
Commit: d96722b660220d079b46956eb15c489d02eb2b7b
https://github.com/llvm/llvm-project/commit/d96722b660220d079b46956eb15c489d02eb2b7b
Author: CarolineConcatto <caroline.concatto at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
M clang/test/CodeGenOpenCL/convergent.cl
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Support/ModRef.h
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/test/Assembler/memory-attribute-errors.ll
M llvm/test/Assembler/memory-attribute.ll
M llvm/test/Bitcode/memory-attribute-upgrade.ll
M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
M llvm/test/Transforms/FunctionAttrs/nocapture.ll
M llvm/test/Transforms/FunctionAttrs/read-write-scc.ll
M llvm/test/Transforms/FunctionAttrs/readattrs.ll
M llvm/test/Transforms/FunctionAttrs/writeonly.ll
M llvm/test/Transforms/GlobalOpt/disable-globals-aa.ll
M llvm/test/Transforms/InferFunctionAttrs/norecurse_debug.ll
M llvm/test/Transforms/LowerTypeTests/cfi-nounwind-direct-call.ll
M llvm/test/Transforms/SCCP/ipscp-drop-argmemonly.ll
M mlir/test/Target/LLVMIR/llvmir.mlir
Log Message:
-----------
[LLVM] Improve IR parsing and printing for target memory locations (#176968)
This patch adds support for specifying all target memory locations using
a
single IR spellings such as:
```
memory(target_mem: read)
```
This form is not supported in TableGen, but it is now accepted by the IR
parser.
When the parser encounters target_mem, it expands it to all
target-memory
locations (e.g., target_mem0, target_mem1, …).
Printing behavior
When all target-memory locations share the same ModRef value, the
printer
now collapses them into a single entry:
```
memory(target_mem: read)
```
Otherwise, each target memory location is printed separately.
Rejected IR:
```
memory(target_mem0: write, target_mem: read)
```
This is invalid because the default access kind for the target memory
group
must appear first.
Commit: e405a1195716ccdcba5ddc7b558cd50885fb41a6
https://github.com/llvm/llvm-project/commit/e405a1195716ccdcba5ddc7b558cd50885fb41a6
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
A lldb/test/API/macosx/shared-cache-vm-range/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/TestSharedCacheVMRange.py
A lldb/test/API/macosx/shared-cache-vm-range/main.c
M lldb/tools/debugserver/source/MacOSX/MachProcess.h
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
Log Message:
-----------
[lldb][debugserver] Get the size of the shared cache in mapped VM (#187419)
Fetch the size of the shared cache address range in VM in the inferior
process and return it, if possible. This allows for a simple call to
DynamicLoader::GetSharedCacheInformation to get the virtual address
extent of the shared cache in the inferior. It's a minor addition to the
method that fetches the shared cache filepath from the inferior, plus
piping it up through lldb's layers.
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: f334194167b7b6551734a4d4ce1a3c393a8d1903
https://github.com/llvm/llvm-project/commit/f334194167b7b6551734a4d4ce1a3c393a8d1903
Author: Valeriy Savchenko <vsavchenko at apple.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
A llvm/test/Analysis/BasicAA/gep-and-mask-gcd.ll
Log Message:
-----------
[BasicAA] Use KnownBits trailing zeros to boost GCD in modular aliasing check (#187297)
If a GEP variable index V has known trailing zeros, shift ScaleForGCD
left by that amount to capture the larger stride. This helps patterns
like `and %x, -Align` that GetLinearExpression cannot fold into Scale.
Commit: 05ae66851da5bd5d8d8b9b5d9131d6d580ff8004
https://github.com/llvm/llvm-project/commit/05ae66851da5bd5d8d8b9b5d9131d6d580ff8004
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
Log Message:
-----------
[lldb][bytecode] Swift output is conditional on >=6.3 (#187544)
The `@section` and `@used` attributes are available in Swift 6.3 and
later. See [SE-0492][1].
Prior to 6.3, these were available as `@_section` and `@_used`, however
those require enabling the `SymbolLinkageMarkers ` experimental feature.
[1]: https://github.com/swiftlang/swift-evolution/blob/main/proposals/0492-section-control.md
Commit: 4f298d4efa2f48e7d78c1883d56372bf67bb806a
https://github.com/llvm/llvm-project/commit/4f298d4efa2f48e7d78c1883d56372bf67bb806a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
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/IRForTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.cpp
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.h
A lldb/test/API/commands/expression/ptrauth/Makefile
A lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
A lldb/test/API/commands/expression/ptrauth/main.c
Log Message:
-----------
[lldb] Support arm64e in the expression evaluator (#186001)
This PR upstreams support for PtrAuth in the LLDB expression evaluator.
It's a rebased version of an older patch in the Swiftlang repo
(https://github.com/swiftlang/llvm-project/pull/5012) but adapted to not
rely on `GlobalPtrAuthInfo.h`. I followed Anton's advice, and instead of
iterating over all globals and hack on wrappers, the pass now iterates
over all global uses and fixes up ConstantPtrAuth expressions if any.
This is one of the last large chunks of downstream PtrAuth code in LLDB,
and the primary blocker for running the LLDB test suite in arm64e mode
on Apple Silicon, which I'd really like to make the default in the
future.
Commit: 584c83cb152748e7e0a2607ca3f5e644936f5859
https://github.com/llvm/llvm-project/commit/584c83cb152748e7e0a2607ca3f5e644936f5859
Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
A clang/test/CodeGenHIP/builtins-amdgcn-buffer-format.hip
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-store-format.cl
A clang/test/SemaHIP/builtins-amdgcn-buffer-format.hip
A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-format-error.cl
A clang/test/SemaOpenCL/builtins-amdgcn-struct-buffer-format-error.cl
Log Message:
-----------
[Clang][AMDGPU] Add clang builtins for buffer format load/store intrinsics (#187064)
Adding new clang builtins for AMDGPU raw/struct buffer format load/store
intrinsics. Clang currently has `__builtin_amdgcn_raw_buffer_load_b*`
and `__builtin_amdgcn_raw_buffer_store_b*` builtins, but is missing
builtins for the format variants. These format intrinsics are currently
used by device-libs via manually written IR wrappers in
[buffer-intrinsics.ll](https://github.com/ROCm/llvm-project/blob/amd-staging/amd/device-libs/ockl/src/buffer-intrinsics.ll).
Commit: a52a3f6c7a04c6b4bcb5ca533e0c67e06e7357b6
https://github.com/llvm/llvm-project/commit/a52a3f6c7a04c6b4bcb5ca533e0c67e06e7357b6
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.var.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for s_sleep_var, s_prefetch (#187382)
Commit: 7d76a3122ddeb5e57678a842b102509407e06690
https://github.com/llvm/llvm-project/commit/7d76a3122ddeb5e57678a842b102509407e06690
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/PhaseOrdering/X86/avg.ll
M llvm/test/Transforms/SLPVectorizer/X86/bswap-i64-by-i32-chunks.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-bswap.ll
Log Message:
-----------
[SLP]Improve analysis for the shl-based reduced values with copyables (#185485)
shl-based reduced values in many cases serve as a bitcast/bswap-based
transfromation root, but need to improve analysis for better matching.
This patch merges reduction candidates into a single reduced value
array, if there are only 2 different candidate arrays, one of them has
only single element, the second is a list of shl instructions. Also,
sorts these shl instructions by their shift amount and merges with the
single candidate, if it is profitable to have a copyable reduction.
Commit: 90d3944c4ad160d011158fbe823ae5afbed7fd50
https://github.com/llvm/llvm-project/commit/90d3944c4ad160d011158fbe823ae5afbed7fd50
Author: Amr Hesham <amr96 at programmer.net>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
A clang/test/CIR/CodeGen/initializer-list-two-pointers.cpp
Log Message:
-----------
[CIR] Implement VisitCXXStdInitializerListExpr for 2 ptr layout (#186679)
Implement support for CXXStdInitializerListExpr for two pointers (begin,
end) layout
Commit: f66bd8e81a0b782122e3900ea135f5f57ddd8f7c
https://github.com/llvm/llvm-project/commit/f66bd8e81a0b782122e3900ea135f5f57ddd8f7c
Author: Grigory Pastukhov <99913765+grigorypas at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/Transforms/IPO/AlwaysInliner.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/lib/Transforms/IPO/ModuleInliner.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/test/Bitcode/attributes.ll
A llvm/test/Transforms/Inline/AArch64/flatten-sme.ll
A llvm/test/Transforms/Inline/flatten.ll
Log Message:
-----------
[LLVM] Add flatten function attribute to LLVM IR and implement recursive inlining in AlwaysInliner (#174899)
This adds a new function-level `flatten` LLVM IR attribute and
implements support for it in the AlwaysInliner pass, bringing LLVM's
behavior in line with GCC.
Previously, the `flatten` attribute only existed as a Clang attribute,
which was lowered to `alwaysinline` on individual call sites. Per the
RFC discussion [1], the consensus was to match GCC semantics:
recursively inline the entire call tree into the
flattened function, rather than just immediate call sites.
This PR:
- Adds the `flatten` function attribute to LLVM IR
- Implements recursive inlining of all viable callees in AlwaysInliner
- Uses inline history tracking to detect and stop at recursive call
cycles
- Emits optimization remarks when inlining is skipped due to recursion
A follow-up patch will update Clang to emit the LLVM `flatten` attribute
on
functions instead of marking individual call sites with `alwaysinline`.
[1]
https://discourse.llvm.org/t/rfc-function-level-flatten-depth-attribute-for-depth-limited-inlining
Commit: 4df2725a2e052cd8fc657b95fcc69509c1cfffa1
https://github.com/llvm/llvm-project/commit/4df2725a2e052cd8fc657b95fcc69509c1cfffa1
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Log Message:
-----------
[AMDGPU][AMDGPUBaseInfo] Replace Waitcnt members with array (#182927)
This patch replaces the member variables of Waitcnt with an array. This
helps in several ways:
(i) It helps replace switch cases with array accesses, and
(ii) It makes operating on all elements with a loop which is much
easier, and should require less maintenance if we add more counters
Commit: 721775bf88e1097431f1cf6d86493e2026ceb5b2
https://github.com/llvm/llvm-project/commit/721775bf88e1097431f1cf6d86493e2026ceb5b2
Author: Alcaro <floating at muncher.se>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang-c/Index.h
Log Message:
-----------
clang-c/Index.h: Fix typoed comment (#144219)
NULL is not a representable value in type unsigned
Commit: b6543c98d7e49556c482c22083a53754038abfd4
https://github.com/llvm/llvm-project/commit/b6543c98d7e49556c482c22083a53754038abfd4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/X86/divmod128.ll
M llvm/test/CodeGen/X86/i128-udiv.ll
M llvm/test/CodeGen/X86/vector-idiv-udiv-128.ll
Log Message:
-----------
[TargetLowering] Make sure LL/LH are always initialized in expandDIVREMByConstant
This is quick fix to fix some reported failures.
Commit: 88cbac0495b45e7ecfeba4fbab0c20d5e12807e6
https://github.com/llvm/llvm-project/commit/88cbac0495b45e7ecfeba4fbab0c20d5e12807e6
Author: Ross Burton <ross.burton at arm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libcxx/test/libcxx-03/transitive_includes/to_csv.py
M libcxx/test/libcxx/transitive_includes/to_csv.py
M libcxx/utils/ci/lnt/commit-watch
M libcxx/utils/ci/lnt/run-benchmarks
M libcxx/utils/generate_abi_list.py
M libcxx/utils/generate_escaped_output_table.py
M libcxx/utils/generate_extended_grapheme_cluster_table.py
M libcxx/utils/generate_extended_grapheme_cluster_test.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_indic_conjunct_break_table.py
M libcxx/utils/generate_iwyu_mapping.py
M libcxx/utils/generate_width_estimation_table.py
M libcxx/utils/run.py
M libcxx/utils/ssh.py
M libcxx/utils/sym_diff.py
Log Message:
-----------
[libc++] Unify python shebangs (#187258)
As per PEP-0394[1], there is no real concensus over what binary names
Python has, specifically 'python' could be Python 3, Python 2, or not
exist.
However, everyone has a python3 interpreter and the scripts are all
written for Python 3. Unify the shebangs so that the ~50% of shebangs
that use python now use python3.
[1] https://peps.python.org/pep-0394/
Commit: 486bd960993d0dc223e78ac89437806495995b46
https://github.com/llvm/llvm-project/commit/486bd960993d0dc223e78ac89437806495995b46
Author: A. Jiang <de34 at live.cn>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/new.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++][NFC] Remove redundant guard for `__cpp_lib_destroying_delete` (#187473)
In `<version>` and test files, `__cpp_lib_destroying_delete` is already
properly guarded with standard modes, so it's redundant to say standard
revision in `test_suite_guard`/`libcxx_guard`.
Commit: fd3cf1c1604e454704b9b7445213396b52517e86
https://github.com/llvm/llvm-project/commit/fd3cf1c1604e454704b9b7445213396b52517e86
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/control-flow.ll
M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
Log Message:
-----------
[LV] Move dereferenceability check from Legal to VPlan (NFC) (#185323)
Instead of checking dereferenceability early during
LoopVectorizationLegality, defer the check to VPlan construction via
areAllLoadsDereferenceable.
This in preparation for supporting early exit vectorization of
non-dereferencable loads, e.g. via speculative loads
(https://discourse.llvm.org/t/rfc-provide-intrinsics-for-speculative-loads/89692)
or first-faulting loads. Detection in VPlan allows easily replacing
potentially non-deref loads with other loads as needed.
PR: https://github.com/llvm/llvm-project/pull/185323
Commit: ae6fbd0fb75388f733d295c51055fccd6434283c
https://github.com/llvm/llvm-project/commit/ae6fbd0fb75388f733d295c51055fccd6434283c
Author: Edgar <git at edgl.dev>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
M mlir/test/Dialect/Linalg/vectorization/extract-with-patterns.mlir
Log Message:
-----------
[mlir][linalg] Fix vectorizer generating invalid vector.gather for 0-D tensor.extract (#187085)
Vectorizing a rank-0 `linalg.generic` whose body contains
`tensor.extract` with data-dependent indices hits the Gather
classification in `getTensorExtractMemoryAccessPattern` because
`isOutput1DVector` returns false for a 0-D result. This produces an
invalid `vector.gather` where operand #2 must be a vector of index
values but gets a scalar `index` instead.
Fix classifies a 0-D result as ScalarBroadcast rather than Gather, and
skips mask generation for 0-D in that path.
Commit: 8e1e371561e7a47ed9d790e50a53bf09723a2884
https://github.com/llvm/llvm-project/commit/8e1e371561e7a47ed9d790e50a53bf09723a2884
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/Instructions.h
M llvm/lib/IR/Core.cpp
M llvm/unittests/IR/InstructionsTest.cpp
Log Message:
-----------
[IR][NFC] Mark BranchInst as deprecated (#187314)
All in-tree uses of BranchInst are eliminated, so mark as deprecated as
per the RFC.
https://discourse.llvm.org/t/rfc-split-branchinst-into-uncondbr-and-condbr/90022
Commit: adbb1227174f29cba1dcfaef3eebfb7741f0cfcf
https://github.com/llvm/llvm-project/commit/adbb1227174f29cba1dcfaef3eebfb7741f0cfcf
Author: neonetizen <102492275+neonetizen at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/include/wctype.yaml
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswprint.cpp
A libc/src/wctype/iswprint.h
M libc/test/src/wctype/CMakeLists.txt
A libc/test/src/wctype/iswprint_test.cpp
Log Message:
-----------
[libc] Implement iswprint entrypoint (#185251)
Implemented the iswprint entrypoint and tests for issue #185136
Commit: 2632ffeab1b41fb59c474d8ee68916eea0449dfe
https://github.com/llvm/llvm-project/commit/2632ffeab1b41fb59c474d8ee68916eea0449dfe
Author: lntue <lntue at google.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M libc/src/stdio/linux/stderr.cpp
M libc/src/stdio/linux/stdin.cpp
M libc/src/stdio/linux/stdout.cpp
Log Message:
-----------
[libc][stdio] Fix standard streams in overlay mode. (#187522)
https://github.com/llvm/llvm-project/pull/184669 changed the behavior of
standard streams in overlay mode, bringing in some symbols that are only
available in full build mode.
Commit: 9ae3077ae9214241af4938c7dcad5fc911992162
https://github.com/llvm/llvm-project/commit/9ae3077ae9214241af4938c7dcad5fc911992162
Author: Jan Svoboda <jan_svoboda at apple.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang-c/Index.h
M clang/include/clang/Basic/Module.h
M clang/include/clang/DependencyScanning/ModuleDepCollector.h
M clang/lib/Basic/ASTSourceDescriptor.cpp
M clang/lib/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Index/IndexingAction.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/test/Index/annotate-module.m
M clang/test/Modules/DebugInfoSubmoduleImport.c
M clang/test/Modules/DebugInfoTransitiveImport.m
M clang/tools/c-index-test/c-index-test.c
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
Log Message:
-----------
[clang][modules] Remove `Module::ASTFile` (#185994)
This removes the assumption that a deserialized module is backed by a
`FileEntry`. The `OptionalFileEntryRef` member is replaced with
`ModuleFile{Name,Key}`.
Commit: 11b439c5c5a07c95d30ce25abd6adf7f5fbb7105
https://github.com/llvm/llvm-project/commit/11b439c5c5a07c95d30ce25abd6adf7f5fbb7105
Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/LTO/LTO.cpp
M llvm/tools/llvm-lto2/llvm-lto2.cpp
Log Message:
-----------
[DTLTO] Speed up temporary file removal in the ThinLTO backend (#186988)
Deleting the temporary files produced by the DTLTO ThinLTO backend can
be expensive on Windows hosts. For a Clang link (Debug build with
sanitizers and instrumentation) using an optimized toolchain (PGO
non-LTO, llvmorg-22.1.0) on a Windows 11 Pro (Build 26200), AMD Family
25 @ ~4.5 GHz, 16 cores / 32 threads, 64 GB RAM machine, the mean
duration of the "Remove DTLTO temporary files" time trace scope was
1267.789 ms (measured over 10 runs).
This patch performs the deletions on a background thread, allowing them
to overlap with the remainder of the link to hide this cost.
Based on work by @romanova-ekaterina and @kbelochapka.
Commit: 101799100b7326d1192f5bb9b605ea030324b31b
https://github.com/llvm/llvm-project/commit/101799100b7326d1192f5bb9b605ea030324b31b
Author: Gergo Stomfai <stomfaig at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/GISel/X86PostLegalizerCombiner.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
M llvm/lib/Target/X86/X86PassRegistry.def
M llvm/lib/Target/X86/X86TargetMachine.cpp
Log Message:
-----------
[X86][GISEL] Port X86PostLegalizerCombiner to npm (#182787)
Port X86PostLegalizerCombiner to npm as part of llvm/llvm-project#178192
Also added cli option for lpm X86PostLegalizerCombiner pass for testing.
Commit: c5aefc77534bafe28b40618d77fa0ef6eac3d777
https://github.com/llvm/llvm-project/commit/c5aefc77534bafe28b40618d77fa0ef6eac3d777
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Support/Fortran-features.cpp
A flang/test/Semantics/bug181353.f90
Log Message:
-----------
[flang] Downgrade an overly strict error to a warning (#187524)
Fortran allows a PURE subroutine to have dummy argument with INTENT(IN
OUT). An actual argument that is associated with an INTENT(IN OUT) dummy
argument must be definable. Consequently, there's a hole in the language
that allows a PURE subroutine to modify arbitrary global state: the
argument could have a derived type with an impure FINAL subroutine, and
that FINAL subroutine could be invoked by an assignment to the dummy
argument. I consider this to be a mistake in the language design.
So the compiler was reporting this case as an error, although it is
indeed conforming usage, and not flagged by any other compiler.
Unfortunately, somebody has a code that needs this usage to be accepted,
because (I presume) they can't modify the dummy argument to be
INTENT(IN).
Consequently, we'll need to allow this usage. But it will elicit a
warning, and the warning is on by default.
Commit: a9ca888fc4f4c819f84dd04a373c92f990e724c6
https://github.com/llvm/llvm-project/commit/a9ca888fc4f4c819f84dd04a373c92f990e724c6
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm-c/Core.h
M llvm/lib/IR/Core.cpp
Log Message:
-----------
[IR][CAPI] Mark LLVMIsABranchInst as deprecated (#187576)
Follow-up of https://github.com/llvm/llvm-project/pull/187314.
Commit: b03e3d1c262cf32035544913b937a7d4a4313a9b
https://github.com/llvm/llvm-project/commit/b03e3d1c262cf32035544913b937a7d4a4313a9b
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/docs/use/map.rst
M lldb/docs/use/symbolication.rst
M lldb/docs/use/tutorials/script-driven-debugging.md
Log Message:
-----------
[lldb] Fix Python 2 prints in the docs (#187553)
The Python example snippets on the lldb website were still using Python
2 syntax for printing.
rdar://123267107
Commit: 81e8a1e59ee28e5403d8a78874c37f853d18d4fb
https://github.com/llvm/llvm-project/commit/81e8a1e59ee28e5403d8a78874c37f853d18d4fb
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticDriverKinds.td
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/ModulesDriver.cpp
A clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
A clang/test/Driver/modules-driver-dep-graph.cpp
A clang/test/Driver/modules-driver-dep-scan-diagnostics.cpp
A clang/test/Driver/modules-driver-duplicate-named-module.cpp
M clang/test/Driver/modules-driver-manifest-not-found.cpp
Log Message:
-----------
[clang][modules-driver] Add dependency scan and dependency graph (#152770)
This patch is part of a series to support driver-managed module builds.
It adds support for discovery of module dependencies from within the
driver and for generation of the module dependency graph.
Source inputs provided on the command line can import modules defined in
the Standard library module manifest, which are then scanned on demand.
The dependency scan and graph support both Clang modules and C++ named
modules.
The generated dependency graph can be output in Graphviz DOT format as a
remark.
RFC discussing linking the driver against additional libraries:
https://discourse.llvm.org/t/rfc-driver-link-the-driver-against-clangdependencyscanning-clangast-clangfrontend-clangserialization-and-clanglex
RFC for driver-managed module builds:
https://discourse.llvm.org/t/rfc-modules-support-simple-c-20-modules-use-from-the-clang-driver-without-a-build-system
Commit: 25f0d08bafa447b4d02a24bb7472ba187bc3b823
https://github.com/llvm/llvm-project/commit/25f0d08bafa447b4d02a24bb7472ba187bc3b823
Author: Mythreya Kuricheti <git at mythreya.dev>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/test/Driver/baremetal.cpp
Log Message:
-----------
[clang] add x86_64 baremetal triple include search paths (#183453)
when compiling for i386 / x86_64 baremetal targets, the include path for
the triple-specific directory is not added. This is the layout I'm
currently using, which from my understanding is the multi-target layout
that clang supports.
Sysroot layout:
```
sysroot
└── usr
├── bin
├── include
│ ├── c++
│ ├── [other dirs]
│ ├── i386-pc-linux-musl
│ │ ├── linux
│ │ ├── c++
│ │ │ └── v1
│ │ ├── [other triple dirs]
│ │ ├── [other dirs, headers]
│ ├── i386-unknown-none-elf
│ │ ├── linux
│ │ ├── c++
│ │ │ └── v1
│ │ ├── [other triple dirs]
│ │ ├── [other dirs, headers]
│ ├── x86_64-pc-linux-musl
│ │ ├── linux
│ │ ├── c++
│ │ │ └── v1
│ │ ├── [other triple dirs]
│ │ ├── [other dirs, headers]
│ ├── x86_64-unknown-none-elf
│ │ ├── linux
│ │ ├── c++
│ │ │ └── v1
│ │ ├── [other triple dirs]
│ │ ├── [other dirs, headers]
│ └── [triple]
├── lib
│ ├── clang
│ ├── cmake
│ ├── ...
│ ├── i386-pc-linux-musl
│ ├── i386-unknown-none-elf
│ ├── x86_64-pc-linux-musl
│ ├── x86_64-unknown-none-elf
│ └── [triple]
```
For a musl triple, these directories are searched,
```
/sysroot/usr/bin/../include/i386-pc-linux-musl/c++/v1
/sysroot/usr/bin/../include/c++/v1
/sysroot/usr/bin/../include/i386-pc-linux-musl
/sysroot/usr/include
/sysroot/usr/lib/clang/23/include
```
but not for the baremetal triple
```
# before
/sysroot/usr/bin/../include/x86_64-unknown-none-elf/c++/v1
/sysroot/usr/bin/../include/c++/v1
# <missing triple dir>
/sysroot/usr/lib/clang/23/include
/sysroot/usr/include
# after
/sysroot/usr/bin/../include/x86_64-unknown-none-elf/c++/v1
/sysroot/usr/include/c++/v1
/sysroot/usr/bin/../include/x86_64-unknown-none-elf # <-- added
/sysroot/usr/lib/clang/23/include
# missing /sysroot/usr/include
```
I'm using newlib for the baremetal target, so those headers install to
`/sysroot/usr/include/x86_64-unknown-none-elf`, just like how the musl
headers install to `/sysroot/usr/include/i386-pc-linux-musl`.
Commit: f276ad429091cb1353ce1348afbfe3d59ac652a7
https://github.com/llvm/llvm-project/commit/f276ad429091cb1353ce1348afbfe3d59ac652a7
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
Log Message:
-----------
[VPlan] Make sure Inductions outlive returned VPlan.
Move Inductions to VPlanTestBase, to make sure it outlives
VPlanTestBase::getPlan(). Fixes a use-after-free issue.
Commit: 33cfe2843b58e2966bd40cbb24e462310baa9f0f
https://github.com/llvm/llvm-project/commit/33cfe2843b58e2966bd40cbb24e462310baa9f0f
Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
A llvm/test/CodeGen/DirectX/ShaderFlags/typed-srv-load.ll
Log Message:
-----------
[DirectX] Fix TypedBuffer load shader flag mismatch (#187393)
Fixes #187225.
The `TypedUAVLoadAdditionalFormats` shader flag was being set for all
TypedBuffer vector loads, so loading from a `Buffer<int64_t2>` was
incorrectly triggering this flag and causing the mismatch. This PR
changes it so the flag is only set for UAV loads.
Commit: 59bc629bf37abe57e1f7e6e61b378e134c3e42bb
https://github.com/llvm/llvm-project/commit/59bc629bf37abe57e1f7e6e61b378e134c3e42bb
Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/test/CodeGen/AMDGPU/vgpr-setreg-mode-swar.mir
Log Message:
-----------
[AMDGPU] Fix decoding of SETREG MSBs (#187578)
Decoding of the immediate was wrong with non-zero offset
and did not factor MSB fixup offset handling.
Commit: e895a80b5d6580729fdf3cea7d2b9e12633d6b13
https://github.com/llvm/llvm-project/commit/e895a80b5d6580729fdf3cea7d2b9e12633d6b13
Author: Zyn <103019185+zyn-li at users.noreply.github.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
Log Message:
-----------
[lldb][TypeSystem] Add CompilerType::IsMemberDataPointerType (#187172)
**Description:**
Adds `IsMemberDataPointerType()` to CompilerType / TypeSystem /
TypeSystemClang, mirroring the existing `IsMemberFunctionPointerType()`.
LLDB already has `IsMemberFunctionPointerType()` to identify member
function pointers but no counterpart for member data pointers. The only
way to check for member data pointers was the indirect `GetTypeClass()
== eTypeClassMemberPointer && !IsMemberFunctionPointerType()`, which is
awkward.
This pr is split out from a larger [fix,
186629](https://github.com/llvm/llvm-project/pull/186629) for LLDB
mishandling non-type template parameters (NTTPs) of pointer-to-member
types, where cleanly distinguishing member data pointers from member
function pointers is needed. The new API delegates to clang's
`QualType::isMemberDataPointerType()` via the same I`sTypeImpl` pattern
used by `IsMemberFunctionPointerType`.
**Test Plan:**
Added `TestIsMemberDataPointerType` to `TestTypeSystemClang.cpp` that
verifies:
`int S::*` → `IsMemberDataPointerType() = true`,
`IsMemberFunctionPointerType() = false`
`void (S::*)()` → `IsMemberDataPointerType() = false`,
`IsMemberFunctionPointerType() = true`
`int * (regular pointer)` → both false
`int (non-pointer)`→ both false
Commit: 4e19eee8a61ac6c2b1a86268c360e9f70d8d9e89
https://github.com/llvm/llvm-project/commit/4e19eee8a61ac6c2b1a86268c360e9f70d8d9e89
Author: Sam Elliott <aelliott at qti.qualcomm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/X86/X86InstrInfo.h
Log Message:
-----------
[NFC] Annotate CommentFlag with underlying type (#186560)
This is stored in `uint8_t AsmPrinterFlags`, and `setAsmPrinterFlag` was
already using `uint8_t` in the API. This change doesn't use a scoped
enum as targets extend this enum by starting their enums with the
`TAsmComments` value.
This also introduces a typedef for the uint8_t for documentation purposes.
Commit: 7efcd6198c8d15a1ab2ae2b30a3aa8b5168ef9cc
https://github.com/llvm/llvm-project/commit/7efcd6198c8d15a1ab2ae2b30a3aa8b5168ef9cc
Author: Daniel Thornburgh <mysterymath at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/Basic/AttrDocs.td
M libc/config/config.json
M libc/docs/dev/index.rst
A libc/docs/dev/modular_format.rst
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
M libc/include/stdio.yaml
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
A libc/src/stdio/asprintf_modular.cpp
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/printf_modular.cpp
M libc/src/stdio/baremetal/vfprintf.cpp
M libc/src/stdio/baremetal/vfprintf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vprintf_modular.cpp
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/gpu/CMakeLists.txt
M libc/src/stdio/printf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter.h
A libc/src/stdio/printf_core/float_impl.cpp
M libc/src/stdio/printf_core/printf_config.h
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/vasprintf_internal.h
A libc/src/stdio/printf_core/write_modes.def
M libc/src/stdio/printf_core/writer.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/snprintf.h
A libc/src/stdio/snprintf_modular.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sprintf.h
A libc/src/stdio/sprintf_modular.cpp
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
A libc/src/stdio/vasprintf_modular.cpp
M libc/src/stdio/vprintf.h
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsnprintf.h
A libc/src/stdio/vsnprintf_modular.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsprintf.h
A libc/src/stdio/vsprintf_modular.cpp
M libc/utils/hdrgen/hdrgen/header.py
M libc/utils/hdrgen/tests/expected_output/test_header.h
M libc/utils/hdrgen/tests/expected_output/test_small.json
M libc/utils/hdrgen/tests/expected_output/test_small_proxy.h
M libc/utils/hdrgen/tests/input/merge1.yaml
Log Message:
-----------
[libc] Modular printf option (float only) (#147426)
This adds LIBC_CONF_PRINTF_MODULAR, which causes floating point support
(later, others) to be weakly linked into the implementation.
__printf_modular becomes the main entry point of the implementaiton, an
printf itself wraps __printf_modular. printf it also contains a
BFD_RELOC_NONE relocation to bring in the float aspect.
See issue #146159 for context.
Commit: 9cb1e372ddfa40f0e0c92637e749617baa42e92a
https://github.com/llvm/llvm-project/commit/9cb1e372ddfa40f0e0c92637e749617baa42e92a
Author: Bruce Changlong Xu <brucechanglongxu at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
Log Message:
-----------
[Clang][AMDGPU] Minor driver cleanups. NFC. (#187586)
Use empty() instead of size() checks, back() instead of [size()-1], and
brace-init instead of std::make_pair in the AMDGPU and HIP driver
toolchains.
Commit: 61b9fc1d4225af14ac660cd81bd927655e35cef9
https://github.com/llvm/llvm-project/commit/61b9fc1d4225af14ac660cd81bd927655e35cef9
Author: Srivarshitha M <mvarshitha17874 at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A clang/test/CodeGenCUDA/mangling.cu
Log Message:
-----------
[CIR] Upstream CUDA mangling test with LLVM and OGCG verification (#184444)
This PR upstreams the `mangling.cu` test from the ClangIR incubator.
Building on the feedback from my previous upstreaming PR, I have
expanded the verification for this file to include:
1. **CIR checks:** Verifying the ClangIR generated functions.
2. **LLVM checks:** Verifying the LLVM IR generated via the ClangIR
pipeline.
3. **OGCG checks:** Verifying against the original CodeGen pipeline to
ensure name-mangling parity.
I have also moved the `Inputs/cuda.h` mock header to the upstream
`Inputs` directory to support this and future CUDA tests.
If this multi-stage verification approach looks correct to the
maintainers, I plan to follow up by upstreaming the other currently
passing CUDA test, `simple-nvptx-triple.cu`, using the same standard.
Verified locally with `llvm-lit`. Partially addresses #156747.
Commit: cbab7e65a720320c0478a2d15458d621bed2e81c
https://github.com/llvm/llvm-project/commit/cbab7e65a720320c0478a2d15458d621bed2e81c
Author: Bruce Changlong Xu <brucechanglongxu at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
M offload/plugins-nextgen/amdgpu/src/rtl.cpp
Log Message:
-----------
[AMDGPU] Minor cleanups in offload plugin and AMDGPUEmitPrintf. NFC. (#187587)
Use empty() in assert, brace-init instead of std::make_pair in the
AMDGPU offload plugin, and fix a comment typo in AMDGPUEmitPrintf.
Commit: ec3a7192cc7f4e76213e318130bd174483996c33
https://github.com/llvm/llvm-project/commit/ec3a7192cc7f4e76213e318130bd174483996c33
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/test/CodeGen/X86/bitreverse.ll
Log Message:
-----------
[X86] bitreverse.ll - add additional i128/i256/i512 GFNI test coverage for #187502 (#187552)
Commit: 537e7b586e151edd80bc2ce93683ca224ab2c2ec
https://github.com/llvm/llvm-project/commit/537e7b586e151edd80bc2ce93683ca224ab2c2ec
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/lib/Tooling/DependencyScanningTool.cpp
Log Message:
-----------
[clang][DependencyScanning] Fix misplaced Driver includes (NFC) (#187599)
As pointed out in [the review of
#15277](https://github.com/llvm/llvm-project/pull/152770#discussion_r2962823008),
`DependencyScannerImpl.h` includes headers from the driver. However, the
dependency scanning library does not depend on the driver at all. This
PR fixes the include issue.
The dependency on the Driver was removed following the RFC:
https://discourse.llvm.org/t/rfc-new-clangoptions-library-remove-dependency-on-clangdriver-from-clangfrontend-and-flangfrontend/88773
Commit: 0e605742be6def694890ec475196bbed31ae42d3
https://github.com/llvm/llvm-project/commit/0e605742be6def694890ec475196bbed31ae42d3
Author: Steven Wu <stevenwu at apple.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/Support/raw_socket_stream.cpp
Log Message:
-----------
[raw_socket_stream] Fix a file descriptor leak when connect failed (#187574)
Close the socket file descriptor if `::connect` returns error. This
prevents leaking file descriptor on failure.
Commit: 3fdc82c9ab1357d17ecc92697ea79986d85b1aaf
https://github.com/llvm/llvm-project/commit/3fdc82c9ab1357d17ecc92697ea79986d85b1aaf
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/lib/Lower/OpenACC.cpp
M flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
M flang/test/Lower/OpenACC/acc-host-data.f90
Log Message:
-----------
[flang][openacc][cuda] Fix order of clause processing for host_data directive (#187600)
This was crashing lowering with `not yet implemented: lowering symbol to
HLFIR` because the symbol was not mapped correctly
Commit: 9eb852c0627b292b4d36c35ba2103053ca687dbe
https://github.com/llvm/llvm-project/commit/9eb852c0627b292b4d36c35ba2103053ca687dbe
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/test/CIR/CodeGen/replace-global.cpp
Log Message:
-----------
[CIR] Implement global variable replacement in global view (#186168)
This change upstreams the CIR implementation of global variable
replacement handling for cases where the global was used in a
cir.global_view operation, either as an initializer for another global
or as a constant ptr.
Commit: efc11383c9beef5b75cf3f70b79b64148216ffda
https://github.com/llvm/llvm-project/commit/efc11383c9beef5b75cf3f70b79b64148216ffda
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/globals.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
Log Message:
-----------
[CIR] Add lowering for bool attributes (#187590)
When a boolean attribute was encountered in a constant global record or
constant global array, we were going to the default handler, which
returned a null value, and then trying to insert this null value in an
LLVM structure, which crashes.
This adds proper lowering for boolean attributes.
Commit: 13d99cecf03cbb1d692251b5f2ed00cc36006815
https://github.com/llvm/llvm-project/commit/13d99cecf03cbb1d692251b5f2ed00cc36006815
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/AST/BUILD.gn
Log Message:
-----------
[gn build] Port 39b6a4d84ad8
Commit: d7dc03bc5bde24b502ec4be1f17cb5f29e2e3a04
https://github.com/llvm/llvm-project/commit/d7dc03bc5bde24b502ec4be1f17cb5f29e2e3a04
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Plugins/ExpressionParser/Clang/BUILD.gn
Log Message:
-----------
[gn build] Port 4f298d4efa2f
Commit: 7a544217fe54e12c0f76caa6b3007eb1cd79cdd5
https://github.com/llvm/llvm-project/commit/7a544217fe54e12c0f76caa6b3007eb1cd79cdd5
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
Log Message:
-----------
[gn build] Port b17db271d030
Commit: 8771fd92f641658ab77d75f9481540de9161572a
https://github.com/llvm/llvm-project/commit/8771fd92f641658ab77d75f9481540de9161572a
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/compiler-rt/lib/profile/BUILD.gn
Log Message:
-----------
[gn build] Port d18a784d4106
Commit: 8ccda467e10014e8e89ffdad610f6e7cd9290532
https://github.com/llvm/llvm-project/commit/8ccda467e10014e8e89ffdad610f6e7cd9290532
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/DependencyScanning/BUILD.gn
Log Message:
-----------
[gn] port 02451f54d642ae
Also remove dependency on TargetsToBuild, which was apparently never
needed.
Commit: 3991dcbbd55d3e528bb4a640e9008480f0e210d3
https://github.com/llvm/llvm-project/commit/3991dcbbd55d3e528bb4a640e9008480f0e210d3
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Driver/BUILD.gn
Log Message:
-----------
[gn] port 81e8a1e59ee28e54
Commit: 2f076c383ebb3350fa30d7d2e0a194b8a761bef3
https://github.com/llvm/llvm-project/commit/2f076c383ebb3350fa30d7d2e0a194b8a761bef3
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_file.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] Deprecate _CXUnsavedFile, introduce UnsavedFile instead (#187412)
To maintain consistency with other classes mirrored from libclang, the
`_CX` prefix should be removed.
The old name is introduced as a subclass of the renamed class, and
deprecation warnings are added on every attribute access.
Commit: df85f45bf1c15624bae0d2c74afeca1f6d477c63
https://github.com/llvm/llvm-project/commit/df85f45bf1c15624bae0d2c74afeca1f6d477c63
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
A libc/docs/build_concepts.rst
M libc/docs/full_host_build.rst
M libc/docs/index.rst
Log Message:
-----------
[libc][docs][NFC] Add Build Concepts and consolidate patterns (#187490)
[libc][docs][NFC] Add Build Concepts page with five build scenarios
Added build_concepts.rst defining the five ways to build LLVM-libc:
overlay, full build, bootstrap, cross-compiler, and bootstrap
cross-compiler. Updated full_host_build.rst to cross-reference the new
concepts page for both the runtimes and bootstrap build sections, and
removed a duplicate GWP_ASAN flag from the sysroot CMake recipe. Added
the new page to index.rst.
Commit: 366da1252b2c9d6943fee9886391b27b755e9322
https://github.com/llvm/llvm-project/commit/366da1252b2c9d6943fee9886391b27b755e9322
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_fmod.cl
M libclc/clc/lib/generic/math/clc_fmod.cl
Log Message:
-----------
[libclc] Restore previous generic fmod implementation (#187470)
Restore from before 3c7f70bb9cee for targets that do not yet implement
frem. Keep the __builtin_elementwise_fmod-based implementation for
AMDGPU.
Commit: edf0fb81326aa984da6d5550c3205ac252a1b683
https://github.com/llvm/llvm-project/commit/edf0fb81326aa984da6d5550c3205ac252a1b683
Author: Changpeng Fang <changpeng.fang at amd.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
Log Message:
-----------
[GISEL][NFC] Remove a useless assert in constrainSelectedInstRegOperands (#187592)
Commit: 9e54ca12e91c054d5314629b66b0d78b0efeac0e
https://github.com/llvm/llvm-project/commit/9e54ca12e91c054d5314629b66b0d78b0efeac0e
Author: Akshay Deodhar <adeodhar at nvidia.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
R llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/lib/CodeGen/AtomicExpandPass.cpp
Log Message:
-----------
[AtomicExpandPass] Remove AtomicExpandUtils.h (NFC) (#187609)
The purpose of AtomicExpandUtils.h was to allow code reuse with [PNaCl
](https://en.wikipedia.org/wiki/Google_Native_Client)which has since
been deprecated. This PR removes the file, and migrates the declarations
to be visible only in the necessary scopes.
Commit: 0e53fbcc43b552504ae77e60a9aa92d419e248f8
https://github.com/llvm/llvm-project/commit/0e53fbcc43b552504ae77e60a9aa92d419e248f8
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Port 81e8a1e59ee28e5403d8a78874c37f853d18d4fb
This patch introduces a dependency from driver to dependency_scanning.
We need to tease out dependency_scanning's current dependency on driver
(just some headers that can be removed) and then add a depenency in
driver on dependency_scanning to make the patch work.
Commit: 5881ce66b121eb090818f88912088da552f5c4a1
https://github.com/llvm/llvm-project/commit/5881ce66b121eb090818f88912088da552f5c4a1
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Port 7efcd6198c8d15a1ab2ae2b30a3aa8b5168ef9cc
Added a new header that needs to be handled properly.
Commit: 979048e04dc6965c5332afa1027a0e4c4bd01e01
https://github.com/llvm/llvm-project/commit/979048e04dc6965c5332afa1027a0e4c4bd01e01
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/array-coor-canonicalization-acc.fir
Log Message:
-----------
[flang][openacc] Prevent SimplifyArrayCoorOp from folding rebox used by ACC data entry ops (#187616)
The SimplifyArrayCoorOp canonicalization pattern folds fir.rebox into
fir.array_coor by replacing the rebox result with its source. When the
rebox result is the variable of an acc.copyin (or other data entry op),
this folding breaks the chain that LegalizeDataValuesInRegion relies on
to replace host values with device pointers inside compute regions.
With default(none), ACCImplicitData cannot recover the mapping, leaving
the rebox source as an illegal live-in in the offload region.
This is causing illegal live-ins at higher optimization levels.
Guard the folding so it bails out when any user of the rebox is an
ACC_DATA_ENTRY_OPS.
Commit: 828da6176c495085536ea429b8428a6a658840c2
https://github.com/llvm/llvm-project/commit/828da6176c495085536ea429b8428a6a658840c2
Author: Jim Lin <jim at andestech.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/CodeGen/M68k/pipeline.ll
Log Message:
-----------
[M68k] Fix pipeline.ll test after CodeGenPrepare analysis change (#187617)
211279d11c36 added Post-Dominator Tree Construction, Branch Probability
Analysis, and Block Frequency Analysis before CodeGen Prepare but missed
updating the M68k pipeline test.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
Commit: 89d8fe9d08c395875cf1201feaf9d213cadeea7a
https://github.com/llvm/llvm-project/commit/89d8fe9d08c395875cf1201feaf9d213cadeea7a
Author: wanglei <wanglei at loongson.cn>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
A llvm/test/DebugInfo/LoongArch/dwo-no-relocations.ll
Log Message:
-----------
[LoongArch] Ensure .dwo sections do not contain relocations (#187429)
When linker relaxation is enabled, LoongArchAsmBackend may emit
relocations for same-section symbol differences, even when the fixup
is in a .dwo section. This leads to errors such as:
error: A dwo section may not contain relocations
Split DWARF (.dwo) sections must not contain relocations. Fix this by
resolving such fixups immediately when they are emitted into .dwo
sections, even if the referenced symbols are in relaxable sections.
This avoids generating invalid relocations in .debug_*.dwo sections
when compiling with -gsplit-dwarf and -mrelax.
Fixes #187428
Commit: bf1db77fc87ce9d2ca7744565321b09a5d23692f
https://github.com/llvm/llvm-project/commit/bf1db77fc87ce9d2ca7744565321b09a5d23692f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
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/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
Log Message:
-----------
Revert "[clang][bytecode] Allocate local variables in `InterpFrame` tail storage" (#187410)
Reverts llvm/llvm-project#185835
Looks like this broke two msan builders:
https://lab.llvm.org/buildbot/#/builders/164/builds/19819
https://lab.llvm.org/buildbot/#/builders/94/builds/16257
Commit: 2e88fe7021ad8d9529f5f9661ee39dc2d28ae9ad
https://github.com/llvm/llvm-project/commit/2e88fe7021ad8d9529f5f9661ee39dc2d28ae9ad
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Dialect/FIROps.cpp
R flang/test/Fir/array-coor-canonicalization-acc.fir
Log Message:
-----------
Revert "[flang][openacc] Prevent SimplifyArrayCoorOp from folding rebox used by ACC data entry ops" (#187625)
Reverts llvm/llvm-project#187616
Commit: 19ced5ad8248b271b56bb7a1fe6e89471716009f
https://github.com/llvm/llvm-project/commit/19ced5ad8248b271b56bb7a1fe6e89471716009f
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Redesign Session to provide a clearer lifecycle. (#187496)
A Session begins in the Start state. In this state no calls will be
received from the controller (since none is attached yet). This provides
clients with an opportunity to configure the Session before attaching a
ControllerAccess object with the `attach` method.
The first call to the `attach` method will register a ControllerAccess
object with the Session, and the ControllerAccess's connect method will
be called to establish a connection with the controller.
If ControllerAccess::connect fails it must call
ControllerAccess::notifyDisconnected, at which point the Session will
proceed to the Detached state.
If ControllerAccess::connect succeeds (i.e. returns without calling
notifyDisconnected) then the Session moves to the Attached state, and
calls can be made in both directions between the executor and
controller.
If at any point Session::detach is called, or if the ControllerAccess
object calls notifyDisconnected, then the Session will release its
reference to the ControllerAccess object, and all Services will have
their onDetach callbacks run.
In the Detached state no calls can be made between the controller and
executor, but existing JIT'd code may continue running. Attempts to call
the controller will result in an error.
When the shutdown method is called the Session will begin shutting down.
The Session will first be detached (if it has not been already), and
then all Services will have their onShutdown methods called.
The `addService`, `attach`, `detach`, `shutdown`, and `callController`
methods can be called from any thread. Any Service added is guaranteed
to have its onDetach and onShutdown callbacks run in order, either when
those events occur or immediately upon being added (if added after the
respective events).
Commit: caf079fbb2f72d4c3af20720e43bcf73d306ca6f
https://github.com/llvm/llvm-project/commit/caf079fbb2f72d4c3af20720e43bcf73d306ca6f
Author: David Tenty <daltenty at ibm.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Headers/endian.h
M clang/test/Headers/endian.c
Log Message:
-----------
[clang][headers][endian.h] add some common extensions (#187565)
This PR adds two common extensions to `endian.h` found in some
implementations which we've encountered usages of in existing code (which
are allowable under POSIX), namely:
- double underscore versions of the byte order macros
- PDP endianness macros
(note: we don't attempt to implement the actual conversion helpers for
PDP endianness, as LLVM doesn't support these targeting platforms with
this endianness, we just provide the macro so code checking against them
on other targets will compile)
Commit: fa2df7e853d7f11c04af1fcdfe727b006c66c181
https://github.com/llvm/llvm-project/commit/fa2df7e853d7f11c04af1fcdfe727b006c66c181
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/len.f90
M flang/test/Lower/Intrinsics/lge_lgt_lle_llt.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Lower/Intrinsics/matmul.f90
M flang/test/Lower/Intrinsics/max.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 35) (#187407)
Tests converted from test/Lower/Intrinsics: len.f90,
lge_lgt_lle_llt.f90, log.f90, matmul.f90, max.f90
Commit: c3f381ccfe4b48f204df07e2c8cd36542a60d553
https://github.com/llvm/llvm-project/commit/c3f381ccfe4b48f204df07e2c8cd36542a60d553
Author: Maksim Levental <maksim.levental at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M mlir/cmake/modules/AddMLIRPython.cmake
M mlir/include/mlir/Bindings/Python/Globals.h
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/lib/Bindings/Python/Globals.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
M mlir/python/mlir/ir.py
M mlir/test/mlir-tblgen/enums-python-bindings.td
M mlir/test/python/dialects/affine.py
M mlir/test/python/dialects/index_dialect.py
M mlir/tools/mlir-tblgen/EnumPythonBindingGen.cpp
M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp
Log Message:
-----------
[mlir-python] Fix duplicate EnumAttr builder registration across dialects. (#187191)
When multiple dialects share td `#includes` (e.g. `affine` includes
`arith`), each dialect's `*_enum_gen.py` file registers attribute
builders under the same keys, causing "already registered" errors on the
second import; the first commit checks in such a case which currently
fails on main:
```
# | RuntimeError: Attribute builder for 'Arith_CmpFPredicateAttr' is already registered with func: <function _arith_cmpfpredicateattr at 0x78d13cbe9a80>
```
This PR implements a two-pronged fix:
1. Add `allow_existing=True` to `register_attribute_builder` (and the
underlying C++ `registerAttributeBuilder`). When set, silently skips
registration if the key already exists (first-wins semantics). This
handles `EnumInfo`-based builders which have no dialect prefix (e.g.
`AtomicRMWKindAttr`, `Arith_CmpFPredicateAttr`), which may be emitted by
every dialect whose td file includes the defining file;
2. Filter `EnumAttr` builders by `-bind-dialect` in
`EnumPythonBindingGen.cpp` and register them under dialect qualified
keys (`"dialect.AttrName"`). Update `OpPythonBindingGen.cpp` to look up
the same qualified keys for EnumAttr typed op attributes (detected via
`isSubClassOf("EnumAttr")`). Pass `-bind-dialect` from
`AddMLIRPython.cmake`.
This approach incurs no changes to `ir.py` registrations (no "builtin."
prefix), and no manual builder additions to individual dialect Python
files (unlike the previous attempt
https://github.com/llvm/llvm-project/pull/117918).
Note, this PR was "clauded" not "coded".
Commit: 2bef931c4349a97589d6884fb9d0acae61996f05
https://github.com/llvm/llvm-project/commit/2bef931c4349a97589d6884fb9d0acae61996f05
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Dialect/CMakeLists.txt
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/array-coor-canonicalization-acc.fir
Log Message:
-----------
Reland "[flang][openacc] Prevent SimplifyArrayCoorOp from folding rebox used by ACC data entry ops (#187616)" (#187626)
The SimplifyArrayCoorOp canonicalization pattern folds fir.rebox into
fir.array_coor by replacing the rebox result with its source. When the
rebox result is the variable of an acc.copyin (or other data entry op),
this folding breaks the chain that LegalizeDataValuesInRegion relies on
to replace host values with device pointers inside compute regions. With
default(none), ACCImplicitData cannot recover the mapping, leaving the
rebox source as an illegal live-in in the offload region.
This is causing illegal live-ins at higher optimization levels.
Guard the folding so it bails out when any user of the rebox is an
ACC_DATA_ENTRY_OPS.
The buildbots failure were cuased by a missing dependency
Commit: 984417de3f37ae21c49a0a78058f3e6d28bc2ed4
https://github.com/llvm/llvm-project/commit/984417de3f37ae21c49a0a78058f3e6d28bc2ed4
Author: Minsoo Choo <minsoochoo0122 at proton.me>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/docs/resources/build.rst
Log Message:
-----------
[lldb][doc] Add cross-compilation guide for FreeBSD (#186216)
This is instruction for cross-compiling LLDB on FreeBSD based on
@mgorny's [blog
post](https://web.archive.org/web/20250827001729/https://www.moritz.systems/blog/freebsd-remote-process-plugin-on-non-x86-architectures/).
Tested building arm64 binary on amd64 machine and building amd64 binary
on arm64 machine.
---------
Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
Co-authored-by: Michał Górny <mgorny at quansight.com>
Commit: f5e28768dc7bcc78311601fc7fe4f5b3190548d8
https://github.com/llvm/llvm-project/commit/f5e28768dc7bcc78311601fc7fe4f5b3190548d8
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-19 (Thu, 19 Mar 2026)
Changed paths:
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Fix an AllowShortNamespacesOnASingleLine bug (#187451)
It erroneously merged the closing brace even when breaking after the
opening brace.
Fixes #187444
Commit: 416935e29f5a35202a79c26d4e37a3ba56fa739c
https://github.com/llvm/llvm-project/commit/416935e29f5a35202a79c26d4e37a3ba56fa739c
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/lib/executor/Session.cpp
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add BootstrapInfo argument to ControllerAccess::connect. (#187635)
This argument should be used by ControllerAccess implementations to pass
bootstrap information (process triple, page size, initial symbols and
values) to the controller.
Commit: e42c16f12de299d79fc090d7b7219bdbeaa67e85
https://github.com/llvm/llvm-project/commit/e42c16f12de299d79fc090d7b7219bdbeaa67e85
Author: yronglin <yronglin777 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/Lex/Preprocessor.h
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Preprocessor.cpp
Log Message:
-----------
[NFC][clang] Add HandleModuleName to avoid redundant module name handling code (#184014)
This patch introduce a new HandleModuleName function to avoid duplicated
code snippet in module name handling stage.
---------
Signed-off-by: yronglin <yronglin777 at gmail.com>
Signed-off-by: Wang, Yihan <yronglin777 at gmail.com>
Commit: a4f97f0d9019ccf8c9b2c6d51ff91aa11502f47e
https://github.com/llvm/llvm-project/commit/a4f97f0d9019ccf8c9b2c6d51ff91aa11502f47e
Author: Chaitanya <Krishna.Sankisa at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
A clang/lib/CIR/CodeGen/CIRGenAMDGPU.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/lib/CIR/CodeGen/CMakeLists.txt
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
A clang/test/CIR/CodeGenHIP/amdgpu-module-flags.hip
Log Message:
-----------
[CIR][AMDGPU] Add module flags for AMDGPU target using amendOperation of CIRDialectLLVMIRTranslationInterface (#186073)
Add the amendOperation override to handle CIR dialect attributes during
MLIR-to-LLVM IR translation. This dispatches to amendModule for ModuleOp,
enabling module metadata.
This PR also adds support to emit AMDGPU-specific module flags
amdhsa_code_object_version and amdgpu_printf_kind to match OGCG
behavior.
In CIRGenModule, the flags are stored as CIR module attributes:
cir.amdhsa_code_object_version (integer)
cir.amdgpu_printf_kind (string: "hostcall" or "buffered")
During lowering to LLVM IR (in LowerToLLVMIR.cpp), these attributes are
converted to LLVM module flags.
Upstreaming basic changes from clangIR PRs:
https://github.com/llvm/clangir/commit/61e9ebd9f80393a0d6d792142642e8edddbe1adc
https://github.com/llvm/clangir/pull/768
https://github.com/llvm/clangir/pull/773
https://github.com/llvm/clangir/pull/2100
Commit: 5599d6018758145462fc323a9b18d2af115e0396
https://github.com/llvm/llvm-project/commit/5599d6018758145462fc323a9b18d2af115e0396
Author: Weibo He <NewSigma at 163.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Coroutines/CoroElide.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
Log Message:
-----------
[Coroutines][NFC] Elide coro.free based on frame instead of coro.id (#187627)
Part 2/4: Implement HALO for coroutines that flow off final suspend.
Parent PR approved in https://github.com/llvm/llvm-project/pull/185336,
with no change since then
Since `coro.id` is unavailable in resumers, Elide `coro.free` based on
frame instead of `coro.id`
Commit: 090c40545f0f2ee7963e08a4b3496b3f5a69a4f9
https://github.com/llvm/llvm-project/commit/090c40545f0f2ee7963e08a4b3496b3f5a69a4f9
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_flush_if_daz.cl
M libclc/clc/lib/generic/math/clc_flush_if_daz.inc
Log Message:
-----------
libclc: Replace flush_if_daz implementation (#187569)
The fallback non-canonicalize path didn't work. Use a more
straightforward implementation. Eventually this should use
the pattern from #172998
Commit: 7f8e236136857e62b9262689aa46064e18f67567
https://github.com/llvm/llvm-project/commit/7f8e236136857e62b9262689aa46064e18f67567
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_cos.cl
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_sin.cl
M libclc/clc/lib/generic/math/clc_sin.inc
Log Message:
-----------
libclc: Implement sin and cos with sincos (#187571)
This eliminates duplicated epilog code. The unused half
optimizes out just fine after inlining.
Commit: a971089cb817d3c9107b88b55169d1b6690f14e6
https://github.com/llvm/llvm-project/commit/a971089cb817d3c9107b88b55169d1b6690f14e6
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/select-best-vf-tripcount.ll
Log Message:
-----------
[LV] Explain why a less profitable VF was chosen (NFCI) (#187469)
I was very puzzled the other day when it showed that VF 8 had a cost of
X and VF 16 had a cost of X/2, yet it still choose VF 8. This PR adds
some extra debug output to explain why this happens.
Commit: 421bf13e4bf1c19a0cc48fbb0af63b902d3118b1
https://github.com/llvm/llvm-project/commit/421bf13e4bf1c19a0cc48fbb0af63b902d3118b1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/clc_sincos_helpers_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp16_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp64_decl.inc
A libclc/clc/include/clc/math/clc_sincospi.h
A libclc/clc/include/clc/math/clc_trigpi_helpers.h
A libclc/clc/include/clc/math/clc_trigpi_helpers_decl.inc
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/math/clc_cospi.cl
M libclc/clc/lib/generic/math/clc_cospi.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
A libclc/clc/lib/generic/math/clc_sincospi.cl
A libclc/clc/lib/generic/math/clc_sincospi.inc
M libclc/clc/lib/generic/math/clc_sinpi.cl
M libclc/clc/lib/generic/math/clc_sinpi.inc
M libclc/clc/lib/generic/math/clc_tanpi.cl
M libclc/clc/lib/generic/math/clc_tanpi.inc
A libclc/clc/lib/generic/math/clc_trigpi_helpers.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.inc
Log Message:
-----------
libclc: Update trigpi functions (#187579)
These were originally ported from rocm device
libs in bc81ebefb7d9d9d71d20bfee2ce4cccb09701e9b.
Merge in more recent changes.
Commit: 441790b31f06ed2300e0e8d74f3bdf446bc105aa
https://github.com/llvm/llvm-project/commit/441790b31f06ed2300e0e8d74f3bdf446bc105aa
Author: David Green <david.green at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
A llvm/test/CodeGen/AArch64/mops-mmo-size.ll
Log Message:
-----------
[AArch64] Use an unknown size for memcpy ops with non-constant sizes. (#187445)
The previous value of 0 was allowing loads to move past the mops
operations where it is not valid. Use a LocationSize::afterPointer()
size instead.
The GISel lowering currently loses the MMO, which is fine as it should
be conservatively treated as a load/store to any location.
Commit: a5de509e4ecd6ac0e2ab34bc5b96a7f76f52ccc0
https://github.com/llvm/llvm-project/commit/a5de509e4ecd6ac0e2ab34bc5b96a7f76f52ccc0
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log2.cl
R libclc/clc/lib/generic/math/clc_log_base.h
A libclc/clc/lib/generic/math/clc_log_base.inc
Log Message:
-----------
libclc: Rewrite log implementation as gentype inc file (#187537)
Follow the ordinary gentype conventions for the log implementation,
instead of using a plain header. This doesn't quite yet enable
vectorization, due to how the table is currently indexed. This should
make it easier for targets to selectively overload the function for
a subset of types.
Commit: edbe8277c10433ded3b8b28375dd8b0e85d108f1
https://github.com/llvm/llvm-project/commit/edbe8277c10433ded3b8b28375dd8b0e85d108f1
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_amdgpu_log.inc
A libclc/clc/lib/amdgpu/math/clc_log.cl
A libclc/clc/lib/amdgpu/math/clc_log10.cl
A libclc/clc/lib/amdgpu/math/clc_log2.cl
Log Message:
-----------
libclc: Use log intrinsic for half and float cases for amdgpu (#187538)
This is pretty verbose and ugly. We're pulling the base implementation
in for the double cases, and scalarizing it. Also fully defining the
half and float cases to directly use the intrinsic, for all vector
types. It would be much more convenient if we had linker based overrides
for the generic implementations, rather than per source file.
Commit: c8dd82916bc3867c8e08e3605622ef23c99d671e
https://github.com/llvm/llvm-project/commit/c8dd82916bc3867c8e08e3605622ef23c99d671e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_amdgpu_cbrt.inc
A libclc/clc/lib/amdgpu/math/clc_cbrt.cl
Log Message:
-----------
libclc: Override cbrt for AMDGPU (#187560)
Commit: facc82de4f210354537abb7abc5c2a8e6251f17b
https://github.com/llvm/llvm-project/commit/facc82de4f210354537abb7abc5c2a8e6251f17b
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M .github/CODEOWNERS
Log Message:
-----------
[clang][cir] Adding myself in CODEOWNERS for CIRGenBuiltinAArch64.cpp (#187570)
This is to help with #185382 and to make sure that I don't miss any PRs.
Commit: 4df296733da97e368dd81bc0c366ed9781f92fe7
https://github.com/llvm/llvm-project/commit/4df296733da97e368dd81bc0c366ed9781f92fe7
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/include/lldb/Utility/Stream.h
M lldb/source/Core/UserSettingsController.cpp
M lldb/source/Interpreter/OptionValueProperties.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Utility/Stream.cpp
M lldb/unittests/Utility/StreamTest.cpp
Log Message:
-----------
[lldb] Implement llvm::formatv overload for Stream::operator << (#187462)
This will allow us to more conveniently use llvm::formatv in the
codebase.
Commit: 69cd746bd2f1056791dd21f26d0e44a99d90bb52
https://github.com/llvm/llvm-project/commit/69cd746bd2f1056791dd21f26d0e44a99d90bb52
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
M llvm/docs/CommandGuide/llc.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/CodeGen/CommandFlags.h
M llvm/lib/CodeGen/CommandFlags.cpp
A llvm/test/tools/llc/mtune.ll
M llvm/tools/llc/llc.cpp
M llvm/tools/llvm-opt-fuzzer/llvm-opt-fuzzer.cpp
M llvm/tools/opt/optdriver.cpp
Log Message:
-----------
[llc] Add -mtune option (#186998)
This patch adds a Clang-compatible -mtune option to llc, to enable
decoupled ISA and microarchitecture targeting, which is especially
important for backend development. For example, it can enable to easily
test a subtarget feature or scheduling model effects on codegen across a
variaty of workloads on the IR corpus benchmark:
https://github.com/dtcxzyw/llvm-codegen-benchmark.
The implementation adds an isolated generic codegen flag, to establish a
base for wider usage - the plan is to add it to `opt` as well in a
followup patch. Then `llc` consumes it, and sets `tune-cpu` attributes
for functions, which are further consumed by the backend.
Commit: 689afb5ecd15bf927f0ed5e0ae6f5d9cede118a1
https://github.com/llvm/llvm-project/commit/689afb5ecd15bf927f0ed5e0ae6f5d9cede118a1
Author: Oliver Old <mail at oold.dev>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/utils/release/build_llvm_release.bat
Log Message:
-----------
Windows release build: Add checksum verification for downloaded source archives (#187113)
Add checksum verification for libxml2, zlib, and zstd source archives
via `cmake -E *sum` and `cmake -E compare_files` commands.
This also adds the following minor changes:
* Factor out libxml2 version into variable.
* Check `tar` return code.
Commit: d97adc4314a60f342b59c0bf1211d1e75575c520
https://github.com/llvm/llvm-project/commit/d97adc4314a60f342b59c0bf1211d1e75575c520
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/bit-manip-i128.ll
M llvm/test/CodeGen/X86/bit-manip-i256.ll
M llvm/test/CodeGen/X86/bit-manip-i512.ll
M llvm/test/CodeGen/X86/bitreverse.ll
Log Message:
-----------
[X86] Perform i128/i256/i512 BITREVERSE on the FPU (#187502)
Bitcast the large scalar integer to a vXi64 vector, reverse the elements
and then perform a per-element vXi64 bitreverse
If we have SSSE3 or later, BITREVERSE expansion using PSHUFB is always
more efficient than performing it as a scalar sequence (no need for
mayFoldIntoVector check).
Fixes #187353
Commit: ab28384cd3e17565268c25567a3d400c3b885b0b
https://github.com/llvm/llvm-project/commit/ab28384cd3e17565268c25567a3d400c3b885b0b
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/ExpandMemCmp.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/lib/CodeGen/ExpandMemCmp.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/test/tools/opt/no-target-machine.ll
Log Message:
-----------
[ExpandMemCmp] Remove unused TM/TLI dependency (#187660)
This pass does not actually use TargetMachine/TargetLoweringInfo.
Commit: 78f267f01d93d8083be26c10a070d2d309ac3ecb
https://github.com/llvm/llvm-project/commit/78f267f01d93d8083be26c10a070d2d309ac3ecb
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
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/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
Log Message:
-----------
Reapply "[clang][bytecode] Allocate local variables in `InterpFrame` … (#187644)
…tail storage" (#187410)
This reverts commit bf1db77fc87ce9d2ca7744565321b09a5d23692f.
Avoid using an `InterpFrame` member after calling its destructor this
time. I hope that was the only problem.
Commit: 4b17135d14aaaf2bbfb1878ecad6b551081eac43
https://github.com/llvm/llvm-project/commit/4b17135d14aaaf2bbfb1878ecad6b551081eac43
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
Log Message:
-----------
[LV] Simplify `matchExtendedReductionOperand()` (NFCI) (#185821)
This updates `matchExtendedReductionOperand` so the simple case of
`UpdateR(PrevValue, ext(...))` is matched first as an early exit. The
binop matching is then flattened to remove the extra layer of the
`MatchExtends` lambda.
Commit: 4376bf27c1ef216df47075a3b89d93b0ccd45b57
https://github.com/llvm/llvm-project/commit/4376bf27c1ef216df47075a3b89d93b0ccd45b57
Author: Thomas Köppe <tkoeppe at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
Log Message:
-----------
[clang-tidy] Fix "effective" -> "efficient". (#187536)
"Effective" is the wrong word: Both overloads are effective; they do
what they're supposed to do. But the character overload does less work.
Commit: 895c281515fbf529bcbfc90dc3e3e2cf98c1188f
https://github.com/llvm/llvm-project/commit/895c281515fbf529bcbfc90dc3e3e2cf98c1188f
Author: Joshua Rodriguez <josh.rodriguez at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
Log Message:
-----------
[AArch64][GlobalISel] Remove fallback for scalar usqadd/suqadd intrinsics (#187513)
Previously, GlobalISel was failing to select these intrinsics when given
scalar operands, as RegBankSelect would place these on GPR banks. Fixing
this enables GlobalISel to lower correctly, as in Instruction Selection
the intrinsic matches the SIMD patterns in AArch64InstrInfo.td.
Commit: e6789f94b9cb385e8dd339aa35f659fe47d76f49
https://github.com/llvm/llvm-project/commit/e6789f94b9cb385e8dd339aa35f659fe47d76f49
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
Log Message:
-----------
[AMDGPU] Introduce ASYNC_CNT on GFX1250 (#185810)
Async operations transfer data between global memory and LDS. Their
progress is tracked by the ASYNC_CNT counter on GFX1250 and later
architectures. This change introduces the representation of that counter
in SIInsertWaitCnts. For now, the programmer must manually insert
s_wait_asyncnt instructions. Later changes will add compiler assistance
for generating the waits by including this counter in the asyncmark
instructions.
Assisted-by: Claude Sonnet 4.5
This is part of a stack:
- #185813
- #185810
Commit: 14de6dafee4d4455174f83766da9730a4253c849
https://github.com/llvm/llvm-project/commit/14de6dafee4d4455174f83766da9730a4253c849
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
A llvm/test/CodeGen/SPIRV/transcoding/GlobalVarAnnotate.ll
Log Message:
-----------
[SPIR-V] Support global variable annotations in llvm.global.annotations (#187241)
SPIR-V backend previously only supported function annotations in
llvm.global.annotations and crashed with a fatal error when encountering
global variable entries
Commit: 21f439f13250bd9b7c19c8dd838177a04bf091ef
https://github.com/llvm/llvm-project/commit/21f439f13250bd9b7c19c8dd838177a04bf091ef
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/test/Other/new-pm-print-pipeline.ll
A llvm/test/Transforms/LoopRotate/rotate-exitcount.ll
A llvm/test/Transforms/PhaseOrdering/AArch64/loop-rotate-to-enable-unrolling-and-vectorization.ll
Log Message:
-----------
[LoopRotate] Use SCEV exit counts to improve rotation profitability (#187483)
Most loop transformations, like unrolling and vectorization, expect the
latch branch to be countable. Allow rotation, if it turns the latch from
uncountable to countable.
This use SCEV to check for countable exits, if CheckExitCount set.
Currently it is not set for the LPM1 run (where SCEV is not used by
other passes), only in LPM.
With that compile-time impact is mostly neutral
https://llvm-compile-time-tracker.com/compare.php?from=eba342d0ba930a404a026c80aada51c43974f0db&to=2e676337b45fae63ce9498116d8e6e43772363c5&stat=instructions:u
ClamAV is consistently slower (~+0.15%) and 7zip faster in most cases
(~-0.13%)
Across a large test set based on C/C++ workloads, this rotates ~0.8%
more loops with ~2.68M rotated loops.
For the test set, ~2.7% more loops are runtime-unrolled and +6.36% more
early exit loops vectorized on ARM64 macOS.
This fixes a regression where std::ranges::find_last loops stopped
being runtime-unrolled after
https://github.com/llvm/llvm-project/commit/5f648c370edf5d71c471ffbabdaaa821ad05fb4b
which changed the loop
structure so we stopped rotating.
https://clang.godbolt.org/z/6baeE1av6
Based on https://github.com/llvm/llvm-project/pull/162654.
Co-authored-by: Marek Sedláček <mr.mareksedlacek at gmail.com>
PR: https://github.com/llvm/llvm-project/pull/187483
Commit: 66bc5652bde058c1583130b720b41c616d9e1bf7
https://github.com/llvm/llvm-project/commit/66bc5652bde058c1583130b720b41c616d9e1bf7
Author: Will Froom <willfroom at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/python/BUILD.bazel
Log Message:
-----------
[BAZEL] Add missing affine python enum gen (#187669)
Commit: 172c0bbfbd564166d0a1377b1476563f97935e11
https://github.com/llvm/llvm-project/commit/172c0bbfbd564166d0a1377b1476563f97935e11
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
Log Message:
-----------
[clang-tidy] Fix alphabetical order check for multiline doc entries and whitespace handling (#186950)
The `check_alphabetical_order.py` script previously only scanned the
first line of each bullet point in `ReleaseNotes.rst`, causing sorting
failures when a `:doc:` tag was split across multiple lines.
Also, when it is sorting the last entry of a section, the script will
insert an unnecessary whitespace.
This PR fixes these two problems.
Commit: 277bd13cc6fc9e6ffea59b1d4ea2c25ca64d7944
https://github.com/llvm/llvm-project/commit/277bd13cc6fc9e6ffea59b1d4ea2c25ca64d7944
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
Log Message:
-----------
[analyzer] Fix logic in CallEvent::getReturnValueUnderConstruction (#187020)
The `CallEvent` has data members that store the `LocationContext` and
the `CFGElementRef` (i.e. `CFGBlock` + index of statement within that
block); but the method `getReturnValueUnderConstruction` ignored these
and used the currently analyzed `LocationContext` and `CFGBlock` instead
of them.
This was logically incorrect and would have caused problems if the
`CallEvent` was used later when the "currently analyzed" things are
different. However, the lit tests do pass even if I assert that the
currently analyzed `LocationContext` and `CFGBlock` is the same as the
ones saved in the `CallEvent`, so I'm pretty sure that there was no
actual problem caused by this bad logic and this commit won't cause
functional changes.
I also evaluated this change on a set of open source projects (postgres,
tinyxml2, libwebm, xerces, bitcoin, protobuf, qtbase, contour, openrct2)
and validated that it doesn't change the results of the analysis.
Commit: 214bc4db9cc96b52bf93e9117fcb797e67056aec
https://github.com/llvm/llvm-project/commit/214bc4db9cc96b52bf93e9117fcb797e67056aec
Author: hanbeom <kese111 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx10_2_512fptosi_satcvtds.ll
M llvm/test/CodeGen/X86/avx10_2fptosi_satcvtds.ll
Log Message:
-----------
[X86][AVX10.2] Canonicalize narrow FP_TO_{S,U}INT_SAT (#186786)
When SatWidth < DstWidth, type legalization left narrow SatVT in
carrier-width nodes.
Example:
v8i32 = fp_to_sint_sat v8f32, sat=i24
Canonicalize narrow SatVT forms on AVX10.2.
Preserve existing legal full-width lowering.
Rewrite narrow SatVT forms to full-width sat + clamp.
Results:
v8i32 = fp_to_sint_sat v8f32, sat=i32
v8i32 = smax ..., min_i24
v8i32 = smin ..., max_i24
Avoid scalar i48 isel failures.
Reduce vector narrow-width scalarization.
Fixes #186572
Commit: a021a93e5320d8ef040dcc51559f218c5bd46f2f
https://github.com/llvm/llvm-project/commit/a021a93e5320d8ef040dcc51559f218c5bd46f2f
Author: Balázs Benics <benicsbalazs at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/Analysis/MacroExpansionContext.h
M clang/lib/Analysis/CMakeLists.txt
M clang/lib/Analysis/MacroExpansionContext.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/test/Analysis/plist-macros-with-expansion-ctu.c
M clang/test/Analysis/plist-macros-with-expansion.c
M clang/test/Analysis/plist-macros-with-expansion.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
Log Message:
-----------
Revert "Reapply [clang][analyzer] Format macro expansions" (#186614)
This reverts commit 6bc779506107d3a2f3cbf266621fc19649f593c5 (#172479)
Some concerns were raised on discourse:
https://discourse.llvm.org/t/can-we-link-clang-format-into-clanganalysis/89014/7
To be on the safe side, let's revert this for now.
Commit: 22f5b8db125c073af66b40e966ed77d70603013b
https://github.com/llvm/llvm-project/commit/22f5b8db125c073af66b40e966ed77d70603013b
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_acos.cl
M libclc/clc/lib/generic/math/clc_acos.inc
Log Message:
-----------
libclc: Update acos (#187666)
This was originally ported from rocm device libs in
efeafa1bdaa715733fc100bcd9d21f93c7272368, merge in more
recent changes.
Commit: 39d6bb21804d21abe2fa0ec019919d72104827ac
https://github.com/llvm/llvm-project/commit/39d6bb21804d21abe2fa0ec019919d72104827ac
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/test/API/symstore/TestSymStore.py
R lldb/test/API/symstore/TestSymStoreLocal.py
M llvm/include/llvm/Support/HTTP/HTTPClient.h
M llvm/lib/Support/HTTP/CMakeLists.txt
M llvm/lib/Support/HTTP/HTTPClient.cpp
A llvm/test/tools/llvm-debuginfod-find/headers-curl.test
A llvm/test/tools/llvm-debuginfod-find/headers-winhttp.test
R llvm/test/tools/llvm-debuginfod-find/headers.test
Log Message:
-----------
[lldb] Add HTTP support in SymbolLocatorSymStore (#186986)
The initial version of SymbolLocatorSymStore supported servers only on
local paths. This patch extends it to HTTP/HTTPS end-points. For that to
work on Windows, we add a WinHTTP-based HTTP client backend in LLVM next
to the existing CURL-based implementation.
We don't add a HTTP server implementation, because there is no use right
now. Test coverage for the LLVM part is built on llvm-debuginfod-find
and works server-less, since it checks textual output of request
headers. The existing CURL-based implementation uses the same approach.
The LLDB API test for the specific SymbolLocatorSymStore feature spawns
a HTTP server from Python.
To keep the size of this patch within reasonable limits, the initial
implementation of the SymbolLocatorSymStore feature is dump: There is no
caching, no verification of downloaded files and no protection against
file corruptions. We use a local implementation of LLVM's
HTTPResponseHandler, but should think about extracting and reusing
Debuginfod's StreamedHTTPResponseHandler in the future.
The goal of this patch is a basic working implementation that is
testable in isolation. We will iterate on it to improve it further. This
should be fine since downloading from SymStores is not default-enabled
yet. Users have to set their server URLs explicitly.
---------
Co-authored-by: Alexandre Ganea <aganea at havenstudios.com>
Commit: b6accfa0b46f692eb62a8ecb88f0bf63e585f26d
https://github.com/llvm/llvm-project/commit/b6accfa0b46f692eb62a8ecb88f0bf63e585f26d
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/induction-ptrcasts.ll
Log Message:
-----------
[LV] Regen induction-ptrcasts test with UTC (NFC) (#187678)
Commit: 1dfd268f10088a97f90e223ed6cf55e9fbc35d46
https://github.com/llvm/llvm-project/commit/1dfd268f10088a97f90e223ed6cf55e9fbc35d46
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
M llvm/test/Transforms/LoopVectorize/RISCV/dbg-tail-folding-by-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/predicated-reverse-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-uniform-store.ll
Log Message:
-----------
[VPlan] Simplify mul x, -1 -> sub 0, x (#187551)
Simplify exactly as InstCombine does. A follow-up would include
simplifying add x, (sub 0, y) -> sub x, y.
Alive2 proof: https://alive2.llvm.org/ce/z/Af7QiD
Commit: bdc8d9293d28b2993526eae9f2398a3cef556735
https://github.com/llvm/llvm-project/commit/bdc8d9293d28b2993526eae9f2398a3cef556735
Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Headers/llvm_libc_wrappers/ctype.h
M clang/lib/Headers/llvm_libc_wrappers/string.h
Log Message:
-----------
[OFFLOAD] Add GPU wrappers for headers currently supported by SPIRV built libc (#181913)
This is to add GPU wrappers for headers that are currently supported by
libc built for SPIRV.
Commit: a6a34333a113c4e648d115b010317ae89646e7c4
https://github.com/llvm/llvm-project/commit/a6a34333a113c4e648d115b010317ae89646e7c4
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
A clang/test/Analysis/allow-equality-of-stack-and-symbolic-ptr.c
M clang/test/Analysis/ptr-arith.c
Log Message:
-----------
[analyzer] Don't rule out symbolic pointer pointing to stack (#187080)
Ensure that the analyzer doesn't rule out the equality (or guarantee
disequality) of a pointer to the stack and a symbolic pointer in unknown
space. Previously the analyzer incorrectly assumed that stack pointers
cannot be equal to symbolic pointers in unknown space.
It is true that functions cannot validly return pointers to their own
stack frame, but they can easily return a pointer to some other stack
frame (e.g. a function can return a pointer recieved as an argument).
The old behavior was introduced intentionally in 2012 by commit
3563fde6a02c2a75d0b4ba629d80c5511056a688, but it causes incorrect
analysis, e.g. it prevents the correct handling of some testcases from
the Juliet suite because it rules out the "fgets succeeds" branch.
Reported-by: Daniel Krupp <daniel.krupp at ericsson.com>
Commit: 2600c723e1011a3e17463b56ab8ee2fce2a97d9a
https://github.com/llvm/llvm-project/commit/2600c723e1011a3e17463b56ab8ee2fce2a97d9a
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libc/src/__support/File/file.cpp
Log Message:
-----------
[libc][NFC] Fix typo in file.cpp (#91192) (#187688)
Corrected language and spelling errors in a comment within file.cpp.
Credit GH user @iBlanket for identifying this typo.
Commit: 19b0c68ee012d035e73f0cc2e342cfed1bf2f424
https://github.com/llvm/llvm-project/commit/19b0c68ee012d035e73f0cc2e342cfed1bf2f424
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-epilogue-vec.ll
Log Message:
-----------
[VPlan] Skip epilogue vectorization if dead after narrowing IGs. (#187016)
When narrowing interleave groups, the main vector loop processes IC
iterations instead of VF * IC. Update selectEpilogueVectorizationFactor
to use the effective VF, checking if the canonical IV controlling the
loop now steps by UF instead of VFxUF.
This avoids epilogue vectorization with dead epilogue vector loops and
also prevents crashes in cases where we can prove both the epilogue and
scalar loop are dead.
Fixes https://github.com/llvm/llvm-project/issues/186846
PR: https://github.com/llvm/llvm-project/pull/187016
Commit: da8d0ab202870984ade3154b64cb31f0c3798041
https://github.com/llvm/llvm-project/commit/da8d0ab202870984ade3154b64cb31f0c3798041
Author: Eugene Epshteyn <eepshteyn at nvidia.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/test/Lower/Intrinsics/maxloc.f90
M flang/test/Lower/Intrinsics/maxval.f90
M flang/test/Lower/Intrinsics/merge.f90
M flang/test/Lower/Intrinsics/merge_bits.f90
M flang/test/Lower/Intrinsics/minloc.f90
Log Message:
-----------
[flang][NFC] Converted five tests from old lowering to new lowering (part 36) (#187628)
Tests converted from test/Lower/Intrinsics: maxloc.f90, maxval.f90,
merge.f90, merge_bits.f90, minloc.f90
Commit: 35ebb8c370778565d280d3ebd6bf15055698d157
https://github.com/llvm/llvm-project/commit/35ebb8c370778565d280d3ebd6bf15055698d157
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
Log Message:
-----------
[AMDGPU] Saturate at i16 for f16 to i1/i8 conversion (#187467)
By using a native `v_cvt_i16/u16_f16` conversion and saturation at `i16`
we avoid additional `f16` to `f32` conversion that is required to
perform saturation at `i32`. It also allows to perform clamping using
`i16` instructions, reducing number of registers needed in *true16* mode
in some of the lit tests. The behavior is disabled for pre-gfx8 targets
by checking `has16BitInsts()`.
Commit: e3959a9c502ea8125fe583a3f2c36a31c756605d
https://github.com/llvm/llvm-project/commit/e3959a9c502ea8125fe583a3f2c36a31c756605d
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
A llvm/include/llvm/Object/BBAddrMap.h
M llvm/include/llvm/Object/ELFTypes.h
Log Message:
-----------
[NFC][Object] Move BBAddrMap related types to a shared header (#187268)
This is part of patches to port BBAddrMap to COFF.
Introduce BBAddrMap.h and move BBAddrMap/PGOAnalysisMap type definitions
out of ELFTypes.h.
Commit: bd3ba6042b3bc5f3004fab22f4d26d3c26fa8a61
https://github.com/llvm/llvm-project/commit/bd3ba6042b3bc5f3004fab22f4d26d3c26fa8a61
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
Log Message:
-----------
[AMDGPU] Remove unused forward declaration of GCNSubtarget (#187695)
Commit: d3a8666ec82da0de4c0146f6145dc6c28c271125
https://github.com/llvm/llvm-project/commit/d3a8666ec82da0de4c0146f6145dc6c28c271125
Author: Davide Grohmann <davide.grohmann at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
M mlir/test/Target/SPIRV/tosa-ops.mlir
Log Message:
-----------
[mlir][spirv] Add reduction ops in TOSA Ext Inst Set (#187278)
This patch introduces the following reduction operators:
spirv.Tosa.ReduceAll
spirv.Tosa.ReduceAny
spirv.Tosa.ReduceMax
spirv.Tosa.ReduceMin
spirv.Tosa.ReduceProduct
spirv.Tosa.ReduceSum
Also dialect and serialization round-trip tests have been added.
Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>
Commit: 838354d9d805dd2874995cc200db1958c46f2475
https://github.com/llvm/llvm-project/commit/838354d9d805dd2874995cc200db1958c46f2475
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
M llvm/test/CodeGen/X86/gfni-shifts.ll
Log Message:
-----------
[X86] Use GFNI for vXi8 per-element shifts (#89644)
As detailed here:
https://github.com/InstLatx64/InstLatX64_Demo/blob/master/GFNI_Demo.h
These are a bit more complicated than gf2p8affine look ups, requiring us
to convert a SHL shift value / amount into a GF so we can perform a
multiplication. SRL/SRA need to be converted to SHL via
bitreverse/variable-sign-extension.
Followup to #89115
Commit: 9ab77fa8daf2386b2744eb811a8cb453b7b3d0d2
https://github.com/llvm/llvm-project/commit/9ab77fa8daf2386b2744eb811a8cb453b7b3d0d2
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/tools/clang-scan-deps/BUILD.gn
Log Message:
-----------
[gn] port aa3465793a250
Exposed by 8ccda467e100.
Commit: a70419505471bd8240ef3451dcdd541f8676477c
https://github.com/llvm/llvm-project/commit/a70419505471bd8240ef3451dcdd541f8676477c
Author: Romanov Vlad <vromanov at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/LiveRangeEdit.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/SplitKit.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
A llvm/test/CodeGen/AMDGPU/regalloc-sgpr128-partial-def.mir
Log Message:
-----------
[AMDGPU] Shrink S_MOV_B64 to S_MOV_B32 during rematerialization (#184333)
When rematerializing S_MOV_B64 or S_MOV_B64_IMM_PSEUDO and only a single
32-bit lane of the result is used at the remat point, emit S_MOV_B32
with the appropriate half of the 64-bit immediate instead.
This reduces register pressure by defining a 32-bit register instead of
a 64-bit pair when the other half is unused.
Commit: 52452aa447d2a7b0eba61c117a21bc118494991d
https://github.com/llvm/llvm-project/commit/52452aa447d2a7b0eba61c117a21bc118494991d
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/Analysis/CFG.h
M llvm/lib/Analysis/CFG.cpp
M llvm/unittests/Analysis/CFGTest.cpp
Log Message:
-----------
[CFG] Support CycleInfo in isPotentiallyReachable() (#187681)
Essentially do the same thing as for LoopInfo. Anything inside a cycle
is mutually reachable, and the cycle can be replaced by its exit blocks
in the walk.
An interesting additional thing we could do for CycleInfo (but not
LoopInfo) is to early exit the walk if the stop block is not in a cycle
and dominates the start block. I've not included this in this patch to
keep the implementation the same as for LoopInfo to start with.
Commit: 6feced2a7cc201d805119ca9365e470303e5d462
https://github.com/llvm/llvm-project/commit/6feced2a7cc201d805119ca9365e470303e5d462
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/Transforms/LoopVectorize/AArch64/select-best-vf-tripcount.ll
Log Message:
-----------
Fix select-best-vf-tripcount.ll buildbot failure
This test failed on the llvm-clang-win-x-aarch64 buildbot.
It seems the rounding is different, leading to a different output.
Instead of:
Cost for VF 4: 9 (Estimated cost per lane: 2.2)
The windows buildbot it fails because the test output is:
Cost for VF 4: 9 (Estimated cost per lane: 2.3)
Commit: 78729251fbb223efb556f5dd17a105901f5af930
https://github.com/llvm/llvm-project/commit/78729251fbb223efb556f5dd17a105901f5af930
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/unittests/Target/SPIRV/CMakeLists.txt
A llvm/unittests/Target/SPIRV/SPIRVGlobalRegistryTests.cpp
Log Message:
-----------
[SPIR-V] Fix isAggregateType function implementation (#187685)
Commit: 40a6180cea1b4fb497831faf69072e30da7d714c
https://github.com/llvm/llvm-project/commit/40a6180cea1b4fb497831faf69072e30da7d714c
Author: Pranav Bhandarkar <pranav.bhandarkar at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-private-boxed-array.mlir
Log Message:
-----------
[Flang] - Fix AliasAnalysis to preserve Allocate source kind through box loads (#187152)
When a boxed array is privatized via `omp.private`, the `SourceKind` of
the loaded box data was being misclassified as `SourceKind::Indirect` by
the alias analyzer. Instead its `SourceKind::Allocate` should be
preserved. This caused AliasAnalysis to conservatively return `MayAlias`
for accesses to privatized arrays vs dummy arguments. This prevented
InlineHLFIRAssign from inlining array section assignments.
Propagate the Allocate source kind when the box source is classified as
`Allocate`, so that alias analysis correctly returns `NoAlias`.
Commit: 4a1e9f73103fa3d66c7db93f1047905c07d543e2
https://github.com/llvm/llvm-project/commit/4a1e9f73103fa3d66c7db93f1047905c07d543e2
Author: Jan Leyonberg <jan_sjodin at yahoo.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/CIR/LowerToLLVM.h
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
A clang/test/CIR/CodeGen/save-temps.c
Log Message:
-----------
[CIR] Make the -save-temps flag emit .cir and .mlir files (#186814)
This patch makes ClangIR emit .cir and .mlir files when the-save-temps
flag is specified. Having these files emitted is useful e.g. when
inspecting the generated code for OpenMP offloading.
Co-authored-by: Claude Opus 4.6 noreply at anthropic.com
Commit: 17d2890e7e41f82095ab7454760c3dedf1f7653e
https://github.com/llvm/llvm-project/commit/17d2890e7e41f82095ab7454760c3dedf1f7653e
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Core/BUILD.gn
Log Message:
-----------
[gn] port 7bf871c39f739
Commit: d339d0053ce2b415b43af0d2c42c2908979cd8c4
https://github.com/llvm/llvm-project/commit/d339d0053ce2b415b43af0d2c42c2908979cd8c4
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/Analysis/BUILD.gn
Log Message:
-----------
[gn] port a021a93e5320d8
Commit: a3db68a97b2c321ef0af73f39a3725490c131468
https://github.com/llvm/llvm-project/commit/a3db68a97b2c321ef0af73f39a3725490c131468
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/tools/llvm-debuginfod-find/Inputs/capture_req.py
Log Message:
-----------
[llvm] Restrict llvm-debginfod-find test to localhost to fix winhttp case (#187705)
Listening on all interfaces is probably not permitted on the bots and
causes failures of llvm-debuginfod-find/headers-winhttp.test after
39d6bb21804d21abe2fa0ec019919d72104827ac. Restricting them to localhost
should fix that.
Commit: 4c60d48e1bbc9c2f681a567e2606e6a5cb5c7ab9
https://github.com/llvm/llvm-project/commit/4c60d48e1bbc9c2f681a567e2606e6a5cb5c7ab9
Author: Hans Wennborg <hans at hanshq.net>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/CodeGenCXX/dllexport-inherited-ctor.cpp
M clang/test/SemaCXX/dllexport-constrained-inherited-ctor.cpp
Log Message:
-----------
[clang] Don't dllexport inherited constructors with -fno-dllexport-inlines (#187684)
The inherited constructors are inline thunks, so like other inline
functions they are exempted from ABI compatibility concerns with this
flag, and should not be exported.
This is a follow-up to #182706
Commit: f5e2238a3e148f266c436a82c1bbca0a353ac5af
https://github.com/llvm/llvm-project/commit/f5e2238a3e148f266c436a82c1bbca0a353ac5af
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
Log Message:
-----------
[MLIR][XeGPU] Enhance multi-reduction layout propagation rules (#186308)
This PR enhance the multi-reduction layout propagation:
1. improve inst_data and lane_data to support fractional subgroup size
2. improve subgroup_layout/data setup to utilize the (nested) slice
layout from consumer op
It also removes the restriction in load_matrix/store_matrix layout
propagation to allow nd (n>2) layout
Commit: f58b6754a1f59b49eb4837b9f36d6318989ab11f
https://github.com/llvm/llvm-project/commit/f58b6754a1f59b49eb4837b9f36d6318989ab11f
Author: Naveen Seth Hanig <naveen.hanig at outlook.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Driver/ModulesDriver.cpp
Log Message:
-----------
[clang][ModulesDriver] Fix build failure with Xcode 14 (#187713)
As pointed out by
https://github.com/llvm/llvm-project/pull/152770#issuecomment-4096179622,
81e8a1e causes build errors with older versions of Xcode (Xcode 14 and
older) when using std::not_fn() with llvm::make_filter_range().
This implements the same fix as in d1d9413.
Commit: 702582182d4d629b8f8e2fa299a5af24b5166538
https://github.com/llvm/llvm-project/commit/702582182d4d629b8f8e2fa299a5af24b5166538
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/tools/llc/llc.cpp
Log Message:
-----------
[llc] Flatten SkipModule branch and sink defs to their use(NFC) (#187661)
- Invert the condition to make the code more straight and sink
single-use variables there.
- Add a comment about on `createTargetMachine` side effects for
`-mcpu=help`.
- Remove redundant call to `setPGOOptions`
Commit: 7cc46928d9d3311f12c1a5d8ce4be75475a1a65f
https://github.com/llvm/llvm-project/commit/7cc46928d9d3311f12c1a5d8ce4be75475a1a65f
Author: David Green <david.green at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
A llvm/test/Transforms/PhaseOrdering/ARM/arm_var_q31.ll
Log Message:
-----------
[ARM] Add a phase ordering test for multiple reductions. NFC
Commit: 0506c03802b1d78ae536877e848b87817bfb74a6
https://github.com/llvm/llvm-project/commit/0506c03802b1d78ae536877e848b87817bfb74a6
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.writelane.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for readlane, writelane (#187386)
Commit: fa49ad564bae659f9e189dbc4b2b56fd21a2fe33
https://github.com/llvm/llvm-project/commit/fa49ad564bae659f9e189dbc4b2b56fd21a2fe33
Author: Zibi Sarbinowski <zibi at ca.ibm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_rand.pass.cpp
Log Message:
-----------
[libc++] Fix random_shuffle signature in C++03 mode with frozen headers (#186443)
The frozen C++03 headers got an invalid simplification in #134045 that
changed the signature of random_shuffle to use a forwarding reference
instead of a lvalue reference. This patch fixes it and adds a test.
---------
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>
Commit: f064a9979ff5ddf69af66f524748def5ed852440
https://github.com/llvm/llvm-project/commit/f064a9979ff5ddf69af66f524748def5ed852440
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/ARM/select_const.ll
M llvm/test/CodeGen/Thumb2/mve-pred-and.ll
M llvm/test/CodeGen/Thumb2/mve-pred-vselect.ll
M llvm/test/CodeGen/Thumb2/mve-pred-xor.ll
M llvm/test/CodeGen/Thumb2/mve-vselect-constants.ll
M llvm/test/CodeGen/VE/Vector/vec_divrem.ll
M llvm/test/CodeGen/WebAssembly/vector-extract-last-active.ll
M llvm/test/CodeGen/X86/vec-strict-cmp-128-fp16.ll
M llvm/test/CodeGen/X86/vec-strict-cmp-sub128.ll
M llvm/test/CodeGen/X86/vector-reduce-fmin-nnan.ll
Log Message:
-----------
[DAGCombine] Optimize away cond ? 1 : 0 post-legalization (#186771)
Selects of the form `cond ? 1 : 0` are created during unrolling of
setcc+vselect. Currently these are not optimized away post-legalization
even if fully redundant. Having these extra selects sitting between
things can prevent other folds from applying.
Enabling this requires some mitigations in the ARM backend, in
particular in the interaction with MVE support. There's two changes
here:
* Form CSINV/CSNEG/CSINC from CMOV, rather than only creating it during
SELECT_CC lowering. (After this change, the lowering in SELECT_CC can be
dropped without test changes, let me know if I should do that.)
* Support pushing negations through CMOV in more cases, in particular if
the operands are constant or the negation can be handled by flipping
lshr/ashr.
Additionally, in the X86 backend, try to simplify CMOV to SETCC if only the
low bit is demanded.
Commit: 376907e09303cd18a8f1139e97c075dd9c506c94
https://github.com/llvm/llvm-project/commit/376907e09303cd18a8f1139e97c075dd9c506c94
Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/CrossTU/CrossTranslationUnit.cpp
Log Message:
-----------
[NFC][clang][analyzer] Complete enumeration in emitCrossTUDiagnostics (#187646)
Make handling of all `index_error_code` values in
`CrossTranslationUnitContext::emitCrossTUDiagnostics` explicit.
--
CPP-7804
Commit: 0d251db0f1d939cb472d8af203b5f35e2e845699
https://github.com/llvm/llvm-project/commit/0d251db0f1d939cb472d8af203b5f35e2e845699
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.h
M llvm/utils/gn/secondary/llvm/lib/Target/NVPTX/BUILD.gn
Log Message:
-----------
[NVPTX] Split NVVM annotation query helpers out of NVPTXUtilities (NFC) (#187349)
Commit: c6ba0e00161e7d1f1a142a3827f005f3e86aae49
https://github.com/llvm/llvm-project/commit/c6ba0e00161e7d1f1a142a3827f005f3e86aae49
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
M clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
M clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
Log Message:
-----------
[clang][ssaf] Add whole-program analysis execution layer
This change Introduces the analysis execution layer of the Scalable
Static Analysis Framework. This layer bridges the LUSummary (entity
summaries from the linker phase) to WPASuite (the collection of
whole-program analysis results). It introduces the following classes:
- `AnalysisResult` — base class for all per-analysis results.
- `AnalysisBase` — minimal common base with a private kind tag used by
the driver for dispatch
- `SummaryAnalysis<ResultT, EntitySummaryT>` — processes per-entity
EntitySummary objects from LUSummary.
- `DerivedAnalysis<ResultT, DepResultTs...>` — consumes previously
produced AnalysisResult objects.
- `AnalysisRegistry` — unified `llvm::Registry` backed registry to
register analyses.
- `WPASuite` — Container bundling `EntityIdTable` and all
`AnalysisResult` objects from a driver run.
- `AnalysisDriver` — executes analyses topologically, feeding results of
child analyses to parent analyses.
Commit: a6cc2f5e07b86edb35bb71d2c3807ec839be69d0
https://github.com/llvm/llvm-project/commit/a6cc2f5e07b86edb35bb71d2c3807ec839be69d0
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
Log Message:
-----------
[AMDGPU] Remove `_e32` patterns for i32 saturated conversions (#187715)
This brings it in line with `i16` conversions. `_e32` patterns are not
needed as `_e64` are later narrowed where possible.
Commit: 8cbf3f3c393dbcf76a807ef2c517443db842c8bc
https://github.com/llvm/llvm-project/commit/8cbf3f3c393dbcf76a807ef2c517443db842c8bc
Author: Osman Yasar <osmanyas05 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
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
A llvm/test/CodeGen/AArch64/GlobalISel/combine-binop-neg.mir
M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbb-zbkb.ll
Log Message:
-----------
[GlobalISel] Fold `a bitwiseop (~b +/- c)` -> `a bitwiseop ~(b -/+ c)` (#181725)
Based on the suggestions in #140639, this PR adds the rewrite pattern `a
bitwiseop (~b +/- c)` -> `a bitwiseop ~(b -/+ c)` for AND, OR, and XOR
operations. This rewrite enables lowering to `ANDN`, `ORN`, and `XORN`
operations.
Added new MIR tests in `combine-binop-neg.mir` for AArch64 to verify the
new combine works for various commuted and uncommuted forms with AND,
OR, and XOR and added new LLVM IR tests for RISC-V in `rv32zbb-zbkb.ll`
to ensure the combine produces the expected `ANDN`, `ORN`, and `XORN`
operations.
Commit: 6d45f6dfb7e139671c569e4680894609f141c3c9
https://github.com/llvm/llvm-project/commit/6d45f6dfb7e139671c569e4680894609f141c3c9
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.cpp
Log Message:
-----------
[clang-tidy] Generate valid JSON for characters that require escaping (#187454)
As of AI Usage: This PR is assisted by Claude
Closes #187201
Commit: 20768a95765468ab64c6dd5674ce8f4e83c0a742
https://github.com/llvm/llvm-project/commit/20768a95765468ab64c6dd5674ce8f4e83c0a742
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/ACCSpecializeForDevice.cpp
M mlir/test/Dialect/OpenACC/acc-specialize-for-device.mlir
Log Message:
-----------
[ACC] Use ExistingOps strictness in ACCSpecializeForDevice for non-specialized functions (#187645)
For non-specialized functions, ACCSpecializeForDevice collects ACC ops
inside compute constructs and applies device specialization patterns via
applyOpPatternsGreedily. With the default AnyOp strictness, the greedy
driver expands the worklist to parent ops when inner ops are modified,
accidentally unwrapping the parent acc.parallel via
ACCRegionUnwrapConversion. This leaves orphaned acc.loop
combined(parallel) ops that lose their parallelism and reduction
information downstream.
Set GreedyRewriteStrictness::ExistingOps so the greedy driver only
processes the initially collected inner ops, preserving the parent
compute construct for ACCComputeLowering to handle.
Commit: 2bb0fa46a8166b68495ac5623d4cbaad39d95cea
https://github.com/llvm/llvm-project/commit/2bb0fa46a8166b68495ac5623d4cbaad39d95cea
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/PhaseOrdering/AArch64/scalarize-load-ext-extract.ll
M llvm/test/Transforms/PhaseOrdering/X86/avg.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/reordered-buildvector-scalars.ll
M llvm/test/Transforms/SLPVectorizer/X86/bottom-to-top-reorder.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-shuffle.ll
M llvm/test/Transforms/SLPVectorizer/X86/bv-shuffle-mask.ll
M llvm/test/Transforms/SLPVectorizer/X86/commutable-node-with-non-sched-parent.ll
M llvm/test/Transforms/SLPVectorizer/X86/matched-shuffled-entries.ll
M llvm/test/Transforms/SLPVectorizer/X86/matching-insert-point-for-nodes.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbitwidth-drop-wrapping-flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/minbw-bitcast-to-fp.ll
M llvm/test/Transforms/SLPVectorizer/X86/multi-extracts-bv-combined.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-parent-multi-copyables.ll
M llvm/test/Transforms/SLPVectorizer/X86/non-scheduled-inst-extern-use.ll
M llvm/test/Transforms/SLPVectorizer/X86/parent-node-schedulable-with-multi-copyables.ll
M llvm/test/Transforms/SLPVectorizer/X86/propagate_ir_flags.ll
M llvm/test/Transforms/SLPVectorizer/X86/resched.ll
M llvm/test/Transforms/SLPVectorizer/X86/reschedule-only-scheduled.ll
M llvm/test/Transforms/SLPVectorizer/X86/reused-last-instruction-in-split-node.ll
M llvm/test/Transforms/SLPVectorizer/X86/shl-compatible-with-add.ll
M llvm/test/Transforms/SLPVectorizer/X86/shl-to-add-transformation.ll
M llvm/test/Transforms/SLPVectorizer/X86/shl-to-add-transformation5.ll
M llvm/test/Transforms/SLPVectorizer/alternate-non-profitable.ll
M llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
M llvm/test/Transforms/SLPVectorizer/operand-is-reduced-val.ll
M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
M llvm/test/Transforms/SLPVectorizer/resized-alt-shuffle-after-minbw.ll
Log Message:
-----------
[SLP]Prefer copyable over alternate
If the instructions state is alternate and/or contains non-directly
matching instructions, need to check if it is better to represent such
operations as non-alternate with copyables.
To do this, we need to compare operands between the instructions in their
different representations and choose the best one for optimal
vectorization.
Reviewers: RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/183777
Commit: 93d7583f4f2d267c66785c2543509d190d56d2ca
https://github.com/llvm/llvm-project/commit/93d7583f4f2d267c66785c2543509d190d56d2ca
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/test/CodeGen/AMDGPU/pseudo-scalar-transcendental.mir
M llvm/test/CodeGen/AMDGPU/required-export-priority.ll
M llvm/test/CodeGen/AMDGPU/required-export-priority.mir
Log Message:
-----------
[AMDGPU] Update features for gfx1170 (#186107)
- Enable `NoF16PseudoScalarTransInlineConstants` for 11.7.
- Add test for `RequiredExportPriority`, one of the differences between
11.5 and 11.7.
Commit: bb070ea56b3eaa670ec1f1a1fd3d0c8d2cd72a05
https://github.com/llvm/llvm-project/commit/bb070ea56b3eaa670ec1f1a1fd3d0c8d2cd72a05
Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp-simple-hierarchy.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_cmp.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_const.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_no_return.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_two_calls.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-addrcast.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fun-ptr-service-func.ll
M llvm/test/CodeGen/SPIRV/pointers/fun-ptr-to-itself.ll
M llvm/test/CodeGen/SPIRV/pointers/fun-with-aggregate-arg-in-const-init.ll
Log Message:
-----------
[SPIRV][NFC] Update `SPV_INTEL_function_pointers` tests to check `spirv-val` output (#182549)
https://github.com/KhronosGroup/SPIRV-Tools/pull/6232 added support for
`SPV_INTEL_function_pointers` on `spirv-val`.
This PR updates some relevant tests to run `spirv-val` and document why
some others are failing.
Commit: 063109f758aa61fbd783b16957aeda775c810159
https://github.com/llvm/llvm-project/commit/063109f758aa61fbd783b16957aeda775c810159
Author: Anshul Nigham <nigham at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/test/CodeGen/AArch64/addsub-24bit-imm.mir
M llvm/test/CodeGen/AArch64/peephole-csel.mir
M llvm/test/CodeGen/AArch64/peephole-insert-subreg.mir
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
M llvm/test/CodeGen/AArch64/peephole-movd.mir
M llvm/test/CodeGen/AArch64/peephole-orr.mir
M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
M llvm/test/CodeGen/AArch64/redundant-orrwrs-from-zero-extend.mir
Log Message:
-----------
[NewPM] Adds a port for AArch64MIPeepholeOpt (#187515)
Adds a port for AArch64MIPeepholeOpt
- Refactored lib/Target/AArch64/AArch64MIPeepholeOpt.cpp to extract base
logic as Impl
- Renamed existing pass with "Legacy" suffix and updated references
- Added NewPM pass AArch64MIPeepholeOptPass
- Updated tests
Commit: e1347d1977236966da05d74edf6c814634bb2eb0
https://github.com/llvm/llvm-project/commit/e1347d1977236966da05d74edf6c814634bb2eb0
Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/unittests/Target/SPIRV/CMakeLists.txt
Log Message:
-----------
[SPIR-V] Fix linker error after #187685 (#187722)
Fix build with `BUILD_SHARED_LIBS=On`
Commit: bf57f910abbe6a848dcbaa720503b8e8f01d59e3
https://github.com/llvm/llvm-project/commit/bf57f910abbe6a848dcbaa720503b8e8f01d59e3
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Serialization/ASTReader.cpp
Log Message:
-----------
[Clang] Fix -Wunused-variable
Commit: d8104bfc9e9d5495fdb4dc2f809b9038f1a33eb2
https://github.com/llvm/llvm-project/commit/d8104bfc9e9d5495fdb4dc2f809b9038f1a33eb2
Author: Alex Voicu <alexandru.voicu at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/test/CodeGen/SPIRV/constant/spec-constant.ll
Log Message:
-----------
[SPIR-V] Add `llvm.spv.named.boolean.spec.constant` (#187420)
This adds a SPIR-V intrinsic for associating a name (textual identifier)
to a specialisation constant. The name is encoded in metadata, and is
intended to be used within LLVM / by the SPIR-V BE (e.g. #134016 would
be a direct user), as it is never emitted into the SPIR-V object.
Non-boolean and composite specialisation constants will be handled in
the future, via dedicated intrinsics, if there is interest.
Commit: c3e7b4556e40ac026c17f445ce8593498303ce25
https://github.com/llvm/llvm-project/commit/c3e7b4556e40ac026c17f445ce8593498303ce25
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M offload/test/lit.cfg
Log Message:
-----------
[offload] Define flang-rt as an available test feature (#187732)
Can now be used as `REQUIRES: flang-rt`, for example.
Commit: 97a1a70208811e90ff3f6fb6f974243e9c6815f2
https://github.com/llvm/llvm-project/commit/97a1a70208811e90ff3f6fb6f974243e9c6815f2
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_long_composites/long-composite-construct.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_long_composites/long-constant-composite.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_long_composites/long-spec-const-composite.ll
M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_long_composites/long-type-struct.ll
Log Message:
-----------
[SPIR-V] Fix SPV_INTEL_long_composites continued instruction handling (#187262)
Commit: 98eaa95baeb799454e0eeca611e6a95fea70b905
https://github.com/llvm/llvm-project/commit/98eaa95baeb799454e0eeca611e6a95fea70b905
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Store bad ExecutionPartConstruct in LoopSequence (#187556)
LoopSequence keeps track of whether it contains code that would be an
invalid intervening code, or that would prevent loop nesting from being
a perfect nesting. To improve the quality of diagnostic messages store
the pointer to the offending parser::ExecutionPartConstruct.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 18f7e625bd786f00cfe87b09f6b6c350d8b25c73
https://github.com/llvm/llvm-project/commit/18f7e625bd786f00cfe87b09f6b6c350d8b25c73
Author: LU-JOHN <John.Lu at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b16.ll
M llvm/test/CodeGen/AMDGPU/v_swap_b32.mir
M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
Log Message:
-----------
Revert "[AMDGPU] Generate more swaps" (#187723)
Reverts llvm/llvm-project#184164. Issue hit in testing, LCOMPILER-1587.
Commit: d7dbba55bff52f342f4d2c7b0bd04dd8e28a274b
https://github.com/llvm/llvm-project/commit/d7dbba55bff52f342f4d2c7b0bd04dd8e28a274b
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/tools/llvm-debuginfod-find/headers-curl.test
M llvm/test/tools/llvm-debuginfod-find/headers-winhttp.test
A llvm/test/tools/llvm-debuginfod-find/lit.local.cfg.py
Log Message:
-----------
[llvm] Run headers-winhttp.test only if the Python side of it works (#187727)
a3db68a97b2c321ef0af73f39a3725490c131468 seemed t be the obvious fix for
the winhttp issue from 39d6bb21804d21abe2fa0ec019919d72104827ac in
llvm-debuginfod-find, but there are still bots failing. This patch
disables the test on all bots that cannot spawn an HTTP server in Python
and record request headers. Ideally it turns all affected bots back to
green and gives us an error message to investigate.
Commit: ca54948d0b7a914211ae3d8d95e309358576c3f1
https://github.com/llvm/llvm-project/commit/ca54948d0b7a914211ae3d8d95e309358576c3f1
Author: Roman Vinogradov <roman.vinogradov at sap.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/tests/asan_interface_test.cpp
Log Message:
-----------
[ASan] Fix missed poisoned suffix in first granule in __asan_region_is_poisoned (#187466)
Align beg address down instead of up in __asan_region_is_poisoned(), so
the shadow scan includes the first granule. This fixes a false negative
when first granule has an unpoisoned prefix and poisoned suffix.
Add test that covers this scenario.
Commit: a2c0c43699917bb26a3eb20fefcbf29ff120ce70
https://github.com/llvm/llvm-project/commit/a2c0c43699917bb26a3eb20fefcbf29ff120ce70
Author: Aviral Goel <aviralg at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
A clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
Log Message:
-----------
[clang][ssaf] Consolidate tools and shared utilities under `clang/tools/clang-ssaf/`
This patch extracts the shared code between `clang-ssaf-format` and
`clang-ssaf-linker` into a new
`clangScalableStaticAnalysisFrameworkTool` library at
`clang/lib/ScalableStaticAnalysisFramework/Tool/`, with the public
header at
`clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h`. This
shared library provides:
- `fail()` overloads for fatal error reporting
- `initTool()` — sets the tool name and version, configures the version
printer, hides unrelated command-line options, and parses arguments
- `getToolName()` — accessor for the tool name set by `initTool()`
- `loadPlugins()` — loads plugin shared libraries from a list of paths
- `getFormatForExtension()` — cached format-registry lookup
- `SummaryFile` — resolves a file path to its serialization format
- `ErrorMessages` — shared diagnostic string constants
Tool-specific error strings remain in a `LocalErrorMessages` namespace
in each tool's anonymous namespace.
Binary names and locations (`bin/clang-ssaf-format`,
`bin/clang-ssaf-linker`) are unchanged.
Commit: 68a9e9ca3e9324c48bdd541fdbc79e002ef7f2bb
https://github.com/llvm/llvm-project/commit/68a9e9ca3e9324c48bdd541fdbc79e002ef7f2bb
Author: Dhruva <dhruvakodiadka at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abds.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abdu.mir
M llvm/test/CodeGen/AArch64/arm64-neon-aba-abd.ll
Log Message:
-----------
[GlobalISel] Add G_ABDU and G_ABDS to computeKnownBits. (#186822)
This code is adapted from `SelectionDAG::computeKnownBits`
part of #150515
ticks off ABDS & ABDU
Commit: 5a14e4f231bbffd1168747a13d28e82d6212e979
https://github.com/llvm/llvm-project/commit/5a14e4f231bbffd1168747a13d28e82d6212e979
Author: laoshd <shandong.lao at hpe.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang-rt/lib/runtime/character.cpp
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang/docs/F202X.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/Intrinsics.md
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Character.h
M flang/include/flang/Runtime/character.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Character.cpp
A flang/test/Lower/Intrinsics/split.f90
A flang/test/Semantics/split.f90
Log Message:
-----------
[flang] Implement SPLIT intrinsic subroutine with tests (#185584)
This is the implementation of part of F2023 new feature US 03.
Extracting tokens from a string, SPLIT intrinsic.
It's section 16.9.196 SPLIT (STRING, SET, POS [, BACK]) of Fortran 2023
Standard.
It's part of Flang issue
[#178044](https://github.com/llvm/llvm-project/issues/178044). Note that
I work with @kwyatt-ext on this issue. He implemented the other part,
TOKENIZE.
A test will be added into
[llvm-test-suite](https://github.com/llvm/llvm-test-suite) later after
this PR is merged.
Commit: 537a8cc745ed36272e6543a7da962747f6c70d85
https://github.com/llvm/llvm-project/commit/537a8cc745ed36272e6543a7da962747f6c70d85
Author: Alexis Engelke <engelke at in.tum.de>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/Instructions.h
M llvm/lib/IR/Instructions.cpp
Log Message:
-----------
[IR][NFC] Fix MSVC deprecation warnings about BranchInst (#187702)
MSVC apparently also warns about deprecation at the implementation
of deprecated functions...
Pull Request: https://github.com/llvm/llvm-project/pull/187702
Commit: 965ee6c91f7feb13b685aa05d2f2ec0ee72c7d1e
https://github.com/llvm/llvm-project/commit/965ee6c91f7feb13b685aa05d2f2ec0ee72c7d1e
Author: Scott Manley <rscottmanley at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/test/Transforms/FIRToMemRef/alloca.mlir
Log Message:
-----------
[FIRToMemRef] copy ACC Variable Name attribute (#187724)
When converting from fir.alloca to memref.alloca, also copy the acc
variable name attribute if it exists
Commit: e835f8b687f693a25064f9fb47f5a785a2ca0e91
https://github.com/llvm/llvm-project/commit/e835f8b687f693a25064f9fb47f5a785a2ca0e91
Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
M flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
Log Message:
-----------
[flang][OpenACC] Fix reduction init value for minnumf/minimumf/maxnumf/maximumf (#187647)
The reduction recipe init region was producing 0.0 instead of the
correct identity value (largest representable float for min, smallest
for max) when the reduction operator was AccMinnumf, AccMinimumf,
AccMaxnumf, or AccMaximumf. Only AccMin and AccMax were handled,
causing the new operator variants to fall through to the else branch
which returns 0.
This caused min reductions to always produce 0.0 since
min(x, 0.0) = 0.0 for all positive x.
Replace the duplicated identity value logic with
arith::getIdentityValue, using a mapping from acc::ReductionOperator
to arith::AtomicRMWKind. Use minimumf/maximumf (which respect
useOnlyFiniteValue) instead of minnumf/maxnumf (whose MLIR identity
is NaN) to get correct finite identity values.
This also fixes a pre-existing bug where the max reduction identity
for floats used getSmallest (smallest subnormal, -1.4e-45) instead
of getLargest with negative (-3.4e+38).
Commit: d8e1f50780e174c417c95e8857ccf21ee4729442
https://github.com/llvm/llvm-project/commit/d8e1f50780e174c417c95e8857ccf21ee4729442
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/examples/python/formatter_bytecode.py
M lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
Log Message:
-----------
[lldb][bytecode] Document invocation in compiler output (#187547)
Document compiler invocation in the compiler output, to aide subsequent
regeneration.
Commit: 65d84ea12725d543fc09686231c3971642585a39
https://github.com/llvm/llvm-project/commit/65d84ea12725d543fc09686231c3971642585a39
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/docs/resources/formatterbytecode.rst
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/source/DataFormatters/TypeSynthetic.cpp
Log Message:
-----------
[lldb] Update the calling convention of BytecodeSyntheticChildren::Update (#182155)
This changes the inputs to `update`. It's now the data stack that was
the result of `@init`. This makes `update` more predictable, as its
inputs are the same between the first call and the Nth call.
Commit: 5717524c02c2c68580d28dc0068e4dd496b30a3d
https://github.com/llvm/llvm-project/commit/5717524c02c2c68580d28dc0068e4dd496b30a3d
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsTypes.td
M mlir/include/mlir/Dialect/OpenACC/OpenACCUtilsCG.h
M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
M mlir/lib/Dialect/OpenACC/Utils/OpenACCUtilsCG.cpp
M mlir/test/Dialect/OpenACC/invalid-cg.mlir
M mlir/unittests/Dialect/OpenACC/OpenACCUtilsCGTest.cpp
Log Message:
-----------
[mlir][acc] Use index for acc.par_width results (#187734)
When acc.par_width was introduced in
https://github.com/llvm/llvm-project/pull/184864
there was a discussion on whether to use index or create a new type for
the output of the operation. It was decided to create a new type; but
this means that launch arguments cannot be used directly in the region
such as for loop bounds without a conversion from the new type to index.
In order to avoid the casting operations (and introduction of an actual
operation to do this cast), simply restore acc.par_width to generate
index type. This allows its result to be directly used in
acc.compute_region.
Commit: 94e366ef2060b8b5cf297466fd2f70ded39f9040
https://github.com/llvm/llvm-project/commit/94e366ef2060b8b5cf297466fd2f70ded39f9040
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/tsc-s352.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/complex-loads.ll
M llvm/test/Transforms/SLPVectorizer/X86/buildvector-float-and-extract-lane1.ll
M llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
M llvm/test/Transforms/SLPVectorizer/X86/fmaxnum.ll
M llvm/test/Transforms/SLPVectorizer/X86/fminnum.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
M llvm/test/Transforms/SLPVectorizer/X86/lookahead.ll
M llvm/test/Transforms/SLPVectorizer/X86/parent-node-split-non-schedulable.ll
M llvm/test/Transforms/SLPVectorizer/X86/phi.ll
M llvm/test/Transforms/SLPVectorizer/X86/scatter-vectorize-reorder-non-empty.ll
M llvm/test/Transforms/SLPVectorizer/X86/used-reduced-op.ll
M llvm/test/Transforms/SLPVectorizer/buildvector-nodes-dependency.ll
M llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll
Log Message:
-----------
[SLP] Initial support for ordered reductions
Patch models ordered reductions as a series of extractelements for the
cases which cannot be modeled as unordered reductions.
Fixes #50590
Reviewers: RKSimon, hiraditya
Pull Request: https://github.com/llvm/llvm-project/pull/182644
Commit: eaeca6d2fb88b229b966d5938ebbee0607801fbe
https://github.com/llvm/llvm-project/commit/eaeca6d2fb88b229b966d5938ebbee0607801fbe
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/AST/TemplateBase.cpp
Log Message:
-----------
[clang] fix #187352 breakage on 32-bit platforms (#187741)
Fixes breakage reported here:
https://github.com/llvm/llvm-project/pull/187352#issuecomment-4096403838
Commit: bc6a265e3be2cb19cece7827bd0d20375a1bccce
https://github.com/llvm/llvm-project/commit/bc6a265e3be2cb19cece7827bd0d20375a1bccce
Author: Robert Imschweiler <robert.imschweiler at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M offload/test/offloading/fortran/formatted-io.f90
M offload/test/offloading/fortran/implicit-record-field-mapping.f90
M offload/test/offloading/fortran/io.f90
Log Message:
-----------
[offload] Use flang-rt for test feature requirements (#187733)
Commit: 4a5da64759ae7ebdd55655d0b65f94e6cb4c171c
https://github.com/llvm/llvm-project/commit/4a5da64759ae7ebdd55655d0b65f94e6cb4c171c
Author: Andy Kaylor <akaylor at nvidia.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
Log Message:
-----------
[CIR][NFC] Minor cleanups to missing feature markers (#187754)
This fixes a few places where MissingFeatures asserts were incorrect,
extends the text of two errorNYI diagnostics to disambiguate them, and
fixes a typo in an adjacent comment.
Commit: 0ec6e1d21e83bedc8ca6a8f0b1c969197f1d1664
https://github.com/llvm/llvm-project/commit/0ec6e1d21e83bedc8ca6a8f0b1c969197f1d1664
Author: David Rivera <davidriverg at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
M clang/include/clang/CIR/Dialect/IR/CIROps.td
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
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/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/test/CIR/CodeGen/address-space.c
M clang/test/CIR/CodeGenCUDA/address-spaces.cu
M clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
A clang/test/CIR/Lowering/global-address-space.cir
Log Message:
-----------
[CIR] Address Space support for GlobalOps (#179082)
Related: https://github.com/llvm/llvm-project/issues/179278,
https://github.com/llvm/llvm-project/issues/160386
Extends cir.global to accept address space attributes. Globals can now
specify either `target_address_space(N)` or
`lang_address_space(offload_*)`. Address spaces are also preserved
throughout get_global ops.
Commit: 60db764b90b127b0a414252d23a6d5cb8d6d2cf2
https://github.com/llvm/llvm-project/commit/60db764b90b127b0a414252d23a6d5cb8d6d2cf2
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
Log Message:
-----------
[Bazel] Port a2c0c43699917bb26a3eb20fefcbf29ff120ce70
Commit: 07896d44a32021818708b4fdddef0d304572ebbf
https://github.com/llvm/llvm-project/commit/07896d44a32021818708b4fdddef0d304572ebbf
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGStmtOpenMP.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/test/OpenMP/declare_target_codegen.cpp
M clang/test/OpenMP/declare_target_link_codegen.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
M clang/test/OpenMP/openmp_offload_codegen.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M offload/cmake/Modules/LibomptargetGetDependencies.cmake
M offload/plugins-nextgen/host/CMakeLists.txt
R offload/plugins-nextgen/host/dynamic_ffi/ffi.cpp
R offload/plugins-nextgen/host/dynamic_ffi/ffi.h
M offload/plugins-nextgen/host/src/rtl.cpp
Log Message:
-----------
[OpenMP] Emit aggregate kernel prototypes and remove libffi dependency (#186261)
Summary:
This PR changes the handling of the emitted kernels when targeting a CPU
to be a pointer struct.
The old handling emitted a standard function prototype, this
necessitated a target specific ABI to call it because the signature
differed with the number of arguments. Instead, this PR emits a void
pointer to a naturally aligned struct, this is what APIs like `pthreads`
assert.
This allows us to remove all the complexity around launching host
kernels and just pass the argument list.
Commit: 9431920bfaee50f4b1552fc01ea081a5c18a5a3b
https://github.com/llvm/llvm-project/commit/9431920bfaee50f4b1552fc01ea081a5c18a5a3b
Author: Stefan Gränitz <stefan.graenitz at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/tools/llvm-debuginfod-find/headers-winhttp.test
Log Message:
-----------
[llvm] Silence llvm-debuginfod-find/headers-winhttp.test on Windows bots temporarily (#187753)
Windows bots are still failing after a3db68a97b2c321e and
d7dbba55bff52f342. This test is new, let's take it off while
we investigate.
Commit: 63c9573f1c6bafbf4dc57c470cbef13842283b58
https://github.com/llvm/llvm-project/commit/63c9573f1c6bafbf4dc57c470cbef13842283b58
Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
A llvm/test/Transforms/LoopStrengthReduce/X86/reuse-existing-phi.ll
Log Message:
-----------
[LSR] Add regression test for unnecessary phi introduction (#187751)
Test case for https://github.com/llvm/llvm-project/issues/187728
Commit: 78b651a2cba912a5c696c5b24ae7382f77956bea
https://github.com/llvm/llvm-project/commit/78b651a2cba912a5c696c5b24ae7382f77956bea
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/test/tools/llvm-mca/RISCV/SiFiveX100/floating-point.test
M llvm/test/tools/llvm-mca/RISCV/SiFiveX100/zfhmin.test
Log Message:
-----------
[RISCV] Fix the pipe used by `fmv.x.<fp>/<fp>.x` in SiFive7 sched model (#187740)
These FP <-> Integer conversion instructions should use PipeA instead.
Commit: cfc94a6fd7fa573e8176e71f189a1c4b4295968a
https://github.com/llvm/llvm-project/commit/cfc94a6fd7fa573e8176e71f189a1c4b4295968a
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Introduce `WithReason<T>` for nest/sequence properties (#187563)
This helper class contains an optional value and a "reason" message. It
replaces the uses of std::pair<optional<...>, Reason>.
Issue: https://github.com/llvm/llvm-project/issues/185287
Commit: 950eaaabe318b27c2c6eee4d1e3e4e8a94fdd215
https://github.com/llvm/llvm-project/commit/950eaaabe318b27c2c6eee4d1e3e4e8a94fdd215
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaLookup.cpp
Log Message:
-----------
[Clang] Use stable_sort for UnqualUsingDirectiveSet for determinism in ambiguity notes (#187750)
In SemaLookup.cpp, `UnqualUsingDirectiveSet::done()` uses `llvm::sort`
with a comparator that only checks the ancestor relationships. So, if
there are multiple "neighbor" namespaces, they are considered equal, and
thus `llvm::sort` may return the using directives in a non-deterministic
order.
This was observed as a test failure on clang/test/CXX/drs/cwg0xx.cpp at
line 220 after PR #187219 started verifying the diagnostics ordering.
The two "candidate found by name lookup" notes were emitted in the
opposite order from the test's expectations -- in some builds of Clang,
but not others.
Switching to `llvm::stable_sort` ensures that using-directives are
always traversed in a deterministic order, and thus the notes emitted
deterministically.
Commit: 498dd13f72288e9936fdd55a8f0f9a628ff908f8
https://github.com/llvm/llvm-project/commit/498dd13f72288e9936fdd55a8f0f9a628ff908f8
Author: Mariusz Sikora <mariusz.sikora at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/DSInstructions.td
A llvm/test/MC/AMDGPU/gfx13_asm_vds.s
A llvm/test/MC/AMDGPU/gfx13_asm_vds_alias.s
Log Message:
-----------
Add VDS encoding for gfx13 (#187693)
Co-authored-by: Jay Foad <jay.foad at amd.com>
Commit: dd30239f3315cde541874f563979561cbb518498
https://github.com/llvm/llvm-project/commit/dd30239f3315cde541874f563979561cbb518498
Author: Lleu Yang <hello at megakite.icu>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
M llvm/test/CodeGen/AMDGPU/convergent.mir
A llvm/test/MachineVerifier/AMDGPU/invalid-vop3-source-modifiers.mir
Log Message:
-----------
[AMDGPU] Add basic verification for source modifiers (#186733)
Source modifiers (input modifiers) should always be immediates.
This commit made machine verifier reject non-immediate source modifiers.
Closes #182243
Commit: 827ddb205144747a08c34d24a9b04a6121545fb2
https://github.com/llvm/llvm-project/commit/827ddb205144747a08c34d24a9b04a6121545fb2
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/waitcnt-wcg-attributes.mir
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts] Add test functions in waitcnt-wcg-attributes.mir (#186504)
This patch adds two more functions for exercising the target-cpu
attribute.
Commit: bb369f1c30a1c34ae662f8264781175288757b88
https://github.com/llvm/llvm-project/commit/bb369f1c30a1c34ae662f8264781175288757b88
Author: Ilya Tokar <tokarip at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
Log Message:
-----------
[libc][x86] Add Non-temporal code path for large memcpy (#187108)
Large memcopies are pretty rare, but are more common in ML workloads
(copying large matrixes/tensors, often to/from CPU host).
For large copies NTA stores can provide performance advantages for both
memcpy itself and the rest of the workload (by reducing cache
pollution). Other runtimes already have NTA path for large copies, so
add 1 to the llvm-libc.
Internal whole-program loadtests shows small, but statistically
significant improvement of 0.1%. ML specific bencahmrks showed 10-20%
performance gain, and fleetbench (https://github.com/google/fleetbench,
which has more up-to-date version of libc benchmarks) shows ~3% gain
(ns/byte for distributions taken from various applications).
```
[Memcpy_0]_L1 0.01950n ± 3% 0.01900n ± 5% ~ (p=0.390 n=20)
[Memcpy_0]_L2 0.02300n ± 0% 0.02300n ± 0% ~ (p=0.256 n=20)
[Memcpy_0]_LLC 0.1335n ± 1% 0.1310n ± 1% -1.87% (p=0.000 n=20)
[Memcpy_0]_Cold 0.1540n ± 2% 0.1520n ± 1% -1.30% (p=0.021 n=20)
[Memcpy_1]_L1 0.04300n ± 5% 0.04200n ± 2% -2.33% (p=0.000 n=20)
[Memcpy_1]_L2 0.05000n ± 2% 0.04800n ± 0% -4.00% (p=0.000 n=20)
[Memcpy_1]_LLC 0.2500n ± 2% 0.2390n ± 1% -4.40% (p=0.000 n=20)
[Memcpy_1]_Cold 0.2750n ± 1% 0.2640n ± 1% -4.00% (p=0.000 n=20)
[Memcpy_2]_L1 0.03800n ± 3% 0.03800n ± 3% ~ (p=0.420 n=20)
[Memcpy_2]_L2 0.04400n ± 2% 0.04300n ± 0% -2.27% (p=0.000 n=20)
[Memcpy_2]_LLC 0.2320n ± 1% 0.2220n ± 1% -4.31% (p=0.000 n=20)
[Memcpy_2]_Cold 0.2565n ± 1% 0.2460n ± 1% -4.09% (p=0.000 n=20)
[Memcpy_3]_L1 0.1380n ± 1% 0.1355n ± 2% ~ (p=0.095 n=20)
[Memcpy_3]_L2 0.1490n ± 1% 0.1430n ± 1% -4.03% (p=0.000 n=20)
[Memcpy_3]_LLC 0.7955n ± 1% 0.7450n ± 0% -6.35% (p=0.000 n=20)
[Memcpy_3]_Cold 0.8495n ± 1% 0.7935n ± 0% -6.59% (p=0.000 n=20)
[Memcpy_4]_L1 0.04000n ± 3% 0.03900n ± 3% ~ (p=0.466 n=20)
[Memcpy_4]_L2 0.04500n ± 2% 0.04400n ± 2% ~ (p=0.130 n=20)
[Memcpy_4]_LLC 0.2040n ± 1% 0.1950n ± 1% -4.41% (p=0.000 n=20)
[Memcpy_4]_Cold 0.2240n ± 1% 0.2150n ± 1% -4.02% (p=0.000 n=20)
[Memcpy_5]_L1 0.05800n ± 3% 0.06050n ± 1% +4.31% (p=0.000 n=20)
[Memcpy_5]_L2 0.06400n ± 0% 0.06400n ± 2% 0.00% (p=0.004 n=20)
[Memcpy_5]_LLC 0.3320n ± 1% 0.3140n ± 1% -5.42% (p=0.000 n=20)
[Memcpy_5]_Cold 0.3620n ± 1% 0.3430n ± 0% -5.25% (p=0.000 n=20)
[Memcpy_6]_L1 0.05700n ± 2% 0.05750n ± 3% ~ (p=0.403 n=20)
[Memcpy_6]_L2 0.06500n ± 0% 0.06250n ± 1% -3.85% (p=0.000 n=20)
[Memcpy_6]_LLC 0.3410n ± 1% 0.3205n ± 1% -6.01% (p=0.000 n=20)
[Memcpy_6]_Cold 0.3670n ± 1% 0.3470n ± 1% -5.45% (p=0.000 n=20)
[Memcpy_7]_L1 0.05900n ± 2% 0.05900n ± 2% ~ (p=0.296 n=20)
[Memcpy_7]_L2 0.06400n ± 2% 0.06400n ± 0% ~ (p=0.327 n=20)
[Memcpy_7]_LLC 0.3145n ± 1% 0.2965n ± 1% -5.72% (p=0.000 n=20)
[Memcpy_7]_Cold 0.3410n ± 1% 0.3220n ± 0% -5.57% (p=0.000 n=20)
[Memcpy_8]_L1 0.03600n ± 3% 0.03600n ± 3% ~ (p=0.804 n=20)
[Memcpy_8]_L2 0.04200n ± 0% 0.04100n ± 2% -2.38% (p=0.000 n=20)
[Memcpy_8]_LLC 0.2210n ± 1% 0.2090n ± 1% -5.43% (p=0.000 n=20)
[Memcpy_8]_Cold 0.2415n ± 1% 0.2300n ± 1% -4.76% (p=0.000 n=20)
geomean 0.1184n 0.1148n -3.03%
```
Commit: bd3b06b0a7974ac1edf2dd29d37723fe4c3a3c85
https://github.com/llvm/llvm-project/commit/bd3b06b0a7974ac1edf2dd29d37723fe4c3a3c85
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.class.mir
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize rules for amdgcn.class (#178827)
Commit: 66f06f54cb4d9fda87aed346b9d5747d0bc0215e
https://github.com/llvm/llvm-project/commit/66f06f54cb4d9fda87aed346b9d5747d0bc0215e
Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
M mlir/test/Dialect/OpenACC/acc-compute-lowering-compute.mlir
Log Message:
-----------
[mlir][acc] Sink constants into acc.compute_region when creating (#187777)
When converting OpenACC compute constructs to acc.compute_region, also
sink constants inside so they do not become live-ins.
Commit: 1b44e34b18e8823c858036087407c5e5976cec06
https://github.com/llvm/llvm-project/commit/1b44e34b18e8823c858036087407c5e5976cec06
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/flags.inc
M compiler-rt/lib/scudo/standalone/options.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test_main.cpp
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
M compiler-rt/lib/scudo/standalone/wrappers_cpp.cpp
Log Message:
-----------
[scudo] Add free_sized and free_aligned_sized (#186881)
Add one new flag, dealloc_align_mismatch that turns on/off alignment
checks. Add three new config parameters, one for deallocate type
mismatch (such as abort on new/free if true), one for checking if the
size parameter matches on dealloc and one for checking if the alignment
is correct on a dealloc.
Add extra flags to be passed for to indicate to do an align/size check.
Update report functions to better indicate the errors. Add unit tests
for all of these.
This is based on these upstream cls by jcking:
https://github.com/llvm/llvm-project/pull/147735
https://github.com/llvm/llvm-project/pull/146556
Commit: 44c6a0acb70f6ea8192bdae1e5646d5a4b8fdfe9
https://github.com/llvm/llvm-project/commit/44c6a0acb70f6ea8192bdae1e5646d5a4b8fdfe9
Author: Andrey Pavlenko <andrey.a.pavlenko at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
Log Message:
-----------
[MLIR][XeGPU] Fix dpas f16 output layout (#184419)
The layout propagation fails if dpas has an f16 accumulator. This fix
resolves the issue by removing the packingSize argument which seems not
valid here.
Commit: b260861b388e8fdab06bb69b1452afacb3df3ed8
https://github.com/llvm/llvm-project/commit/b260861b388e8fdab06bb69b1452afacb3df3ed8
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/reduced-ordered-values-update.ll
Log Message:
-----------
[SLP]Update values after ordered vectorization
Need to update matching between the original reduced values and their
vectorized matches after ordered reduction vectorization to avoid
a compiler crash
Commit: 8c49c53a7f38b6d8af60e84cb6c84fc7b8a1a972
https://github.com/llvm/llvm-project/commit/8c49c53a7f38b6d8af60e84cb6c84fc7b8a1a972
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/include/llvm/DWARFLinker/AddressesMap.h
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
A llvm/test/tools/dsymutil/Inputs/asm-line-tables.s
A llvm/test/tools/dsymutil/Inputs/private/tmp/asm/asm-line-tables.arm64
A llvm/test/tools/dsymutil/Inputs/private/tmp/asm/asm-line-tables.o
A llvm/test/tools/dsymutil/asm-line-tables.test
M llvm/tools/dsymutil/DebugMap.h
M llvm/tools/dsymutil/DwarfLinkerForBinary.h
Log Message:
-----------
[dsymutil] Preserve DWARF debug info for assembly files (#187575)
Assembly files compiled with debug info generate `DW_TAG_label entries`
with `DW_AT_low_pc` but no `DW_AT_high_pc` attributes. Without address
range information, `dsymutil` would call `addLabelLowPc()` which only
records the start address, making the compilation unit appear "empty"
with no ranges. This caused dsymutil to discard all debug information
including line tables.
This patch adds infrastructure to query symbol sizes from the debug map
and use them to reconstruct address ranges for assembly labels.
rdar://166225328
---------
Co-authored-by: Ryan Mansfield <ryan_mansfield at apple.com>
Commit: 82f18b02d9fec1bcc225a92251466ffee82f56b5
https://github.com/llvm/llvm-project/commit/82f18b02d9fec1bcc225a92251466ffee82f56b5
Author: Khem Raj <raj.khem at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/include/clang/Basic/OffloadArch.h
M clang/lib/Basic/Cuda.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
Log Message:
-----------
[Clang] Rename OffloadArch::UNUSED to UNUSED_ to avoid macro collisions (#174528)
OffloadArch uses an enumerator named `UNUSED`, which is a very common
macro name in external codebases (e.g. Mesa defines UNUSED as an
attribute helper). If such a macro is visible when including
clang/Basic/OffloadArch.h, the preprocessor expands the token inside the
enum and breaks compilation of the installed Clang headers.
Rename the enumerator to `UNUSED_` and update all in-tree references.
This is a spelling-only change (no behavioral impact) and mirrors the
existing approach used for SM_32_ to avoid macro clashes.
Commit: 9b30151594a71c891baf49a26ff8afcd2d71b16a
https://github.com/llvm/llvm-project/commit/9b30151594a71c891baf49a26ff8afcd2d71b16a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
A lldb/test/API/commands/expression/ptrauth-auth-traps/Makefile
A lldb/test/API/commands/expression/ptrauth-auth-traps/TestPtrAuthAuthTraps.py
A lldb/test/API/commands/expression/ptrauth-auth-traps/main.c
Log Message:
-----------
[lldb] Support PointerAuthAuthTraps in the expression evaluator (#187612)
Enable and test PointerAuthAuthTraps, which ensures that we trap after
an authentication failures.
Commit: a99dbc5be5981806399632c7b3f32d121910adae
https://github.com/llvm/llvm-project/commit/a99dbc5be5981806399632c7b3f32d121910adae
Author: Helena Kotas <hekotas at microsoft.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Sema/SemaHLSL.cpp
M clang/test/AST/HLSL/resources-in-structs.hlsl
Log Message:
-----------
[HLSL] Add binding attributes to resources from structs (#184731)
Add binding attributes to global variables that were created for resources embedded in structs. The binding values are based on `register` annotations and `[[vk::binding]]` attribute on the struct instance.
Fixes #182992
Commit: 2d3b8cecfbcfe1eb28c14fb1d4b34c700ad7964a
https://github.com/llvm/llvm-project/commit/2d3b8cecfbcfe1eb28c14fb1d4b34c700ad7964a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/tools/dsymutil/asm-line-tables.test
Log Message:
-----------
[dsymutil] Require AArch64 backend in asm-line-tables.test (#187797)
This should fix the test on all the builders that don't enable this backend.
Commit: 3eecb98b3702dca2fa895b406773b0e0dd0eb53c
https://github.com/llvm/llvm-project/commit/3eecb98b3702dca2fa895b406773b0e0dd0eb53c
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[TargetLowering] Separate some of the control for the i32->i64 optimization out of BuildUDIVPattern. (#187739)
Check the type before we call getOperationAction. Give BuildUDIVPattern
only AllowWiden and a WideSVT.
Update variable names and comments to avoid spreading "64" to too many
places.
Commit: 343b566b5746c2bb06d758d8a70e14c376a33de4
https://github.com/llvm/llvm-project/commit/343b566b5746c2bb06d758d8a70e14c376a33de4
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[TargetLowering] Move the MULH/MUL_LOHI legality checks to the beginning of BuildSDIV/UDIV. NFCI (#187780)
This groups the type and operation legality checks to the beginning. The
rest of the code can focus on the transformation.
Commit: 79f3104e09e8c7885a1cf12743562c83819af7d7
https://github.com/llvm/llvm-project/commit/79f3104e09e8c7885a1cf12743562c83819af7d7
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
Log Message:
-----------
[lldb] Fix warning style for SymStore symbol locator (#187776)
Missed this when reviewing #186986. This fixes the warnings to follow
the [LLVM Coding
Standards](https://llvm.org/docs/CodingStandards.html#error-and-warning-messages).
Commit: 2b78c71cb5aaa794562d263ebd7b16fa707abc36
https://github.com/llvm/llvm-project/commit/2b78c71cb5aaa794562d263ebd7b16fa707abc36
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
M lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
M lldb/test/API/commands/expression/ptrauth/main.c
Log Message:
-----------
[lldb] Support -fptrauth-indirect-gotos in the expression evaluator (#187562)
When targeting arm64e, we enable `-fptrauth-indirect-gotos` by default,
which signs label addresses and authenticates indirect branches. Add
support (and a test) for this in the LLDB expression evaluator.
Commit: d514a4aa6a259fbb460a262efba8d8ae45c04a2b
https://github.com/llvm/llvm-project/commit/d514a4aa6a259fbb460a262efba8d8ae45c04a2b
Author: Deric C. <cheung.deric at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/test/CodeGenHLSL/builtins/mul.hlsl
M clang/test/CodeGenHLSL/builtins/transpose.hlsl
M llvm/include/llvm/IR/MatrixBuilder.h
Log Message:
-----------
[HLSL][Matrix] Support row-major `transpose` and `mul` by inserting matrix memory layout transformations (#186898)
Fixes #184906
The SPIRV and DXIL backends assume matrices are provided in column-major
order when lowering matrix transpose and matrix multiplication
intrinsics.
To support row-major order matrices from Clang/HLSL, we therefore need
to convert row-major order matrices into column-major order matrices
before applying matrix transpose and multiplication. A conversion from
column-major order back to row-major order is also required for
correctness after a matrix transpose or matrix multiply.
For the matrix transpose case on row-major order matrices, the last two
matrix memory layout transforms cancel each other out. So a row-major
order matrix transpose is simply a column-major order transpose with the
row and column dimensions swapped.
For the matrix multiply case, this PR adds helper functions to the
MatrixBuilder to convert a NxM row-/column-major order matrix into a NxM
column-/row-major order matrix by applying a matrix transpose.
These transformations take advantage of the fact that a row-major order
matrix of NxM dimensions `rNxM` interpreted in column-major order is
equivalent to its transpose in column-major order.
Example: Let `r3x2 = [ 0, 1, 2, 3, 4, 5 ]`. The 3x2 row-major order
matrix is visualized as
```
0 1
2 3
4 5
```
When `r3x2`, or `[ 0, 1, 2, 3, 4, 5 ]` is interpreted as a 2x3
column-major order matrix, it is visualized as:
```
0 2 4
1 3 5
```
which is equal to the transpose of `r3x2` but in column-major order.
These matrix memory layout transformations are inserted before and after
the matrix multiply and transpose intrinsics when lowering HLSL mul and
transpose.
We don't simplify the matrix multiply case because HLSL in Clang will
eventually need to support the `row_major` and `column_major` keywords
that allow matrices to independently be row-major or column-major
regardless of the default matrix memory layout.
While this method of supporting row-major order matrices is not
performant, it is correct and will suffice for now until benchmarks are
created and performance becomes a primary concern.
Assisted-by: GitHub Copilot (powered by Claude Opus 4.6)
Commit: a2615482d178c1228e54dc68dc25baf85b277fec
https://github.com/llvm/llvm-project/commit/a2615482d178c1228e54dc68dc25baf85b277fec
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/constraint_handler_t.h
M libc/include/CMakeLists.txt
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/constraint_handler_t.h
M libc/include/stdlib.yaml
Log Message:
-----------
[libc][annex_k] Add constraint_handler_t. (#163239)
RFC https://discourse.llvm.org/t/rfc-bounds-checking-interfaces-for-llvm-libc/87685
Add `constraint_handler_t` type required by Annex K interface in LLVM libc.
Commit: 485eda9cb32eede1eb89b47abde34e13d315907f
https://github.com/llvm/llvm-project/commit/485eda9cb32eede1eb89b47abde34e13d315907f
Author: Luke Hutton <luke.hutton at arm.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
M mlir/test/Dialect/Tosa/constant_folding.mlir
Log Message:
-----------
[mlir][tosa] Fix crash in slice op folder when input values are not iterable (#187339)
A crash was encountered in the slice op folder when the input was a
constant with dense resource values. The folder was trying to iterate
over the input values, which is not possible for resource values. This
change fixes the crash and adds a test.
Commit: 7a5431eee3c233fa30679a5d2a48b19d8343f435
https://github.com/llvm/llvm-project/commit/7a5431eee3c233fa30679a5d2a48b19d8343f435
Author: Dave Lee <davelee.com at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/test/API/functionalities/data-formatter/bytecode-synthetic/main.cpp
Log Message:
-----------
[lldb][bytecode] Fix Update() and failing test (#187795)
Fixes a breakage from https://github.com/llvm/llvm-project/pull/182155
Commit: 8cc0124508a55de25ccb2422ec9a2a95f1bc8020
https://github.com/llvm/llvm-project/commit/8cc0124508a55de25ccb2422ec9a2a95f1bc8020
Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
Log Message:
-----------
[scudo] Make the default for size/align checks to not die. (#187799)
Commit: 720615f4958617289e00b89535bbe920b4456724
https://github.com/llvm/llvm-project/commit/720615f4958617289e00b89535bbe920b4456724
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
Log Message:
-----------
[SandboxVec][DAG] Fix DAG update when user is scheduled (#187148)
This patch fixes the update of the DAGNode UnscheduledSucc counter when
a use edge is modified. This is the result of a setOperand() or a RAUW
(and friends) operation.
Before this patch we would not check if the User (i.e., the consumer of
the use-def edge) is scheduled and we would update the definition's
UnscheduledSucc counter, resulting in counting errors.
For example, consider the following IR:
```
%A = ...
%B = ...
%U = %A ; scheduled
```
Note that %U's DAGNode is marked as "scheduled" while %A and %B are not.
If we change %U's operand from %A to %B then we should not attempt to
update %A's or %B's UnscheduledSuccs because %U is scheduled so it
should not get counted as an "unscheduled" successor.
Commit: 51c158b5d29bf7b16651344b402354f5d2339519
https://github.com/llvm/llvm-project/commit/51c158b5d29bf7b16651344b402354f5d2339519
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
Log Message:
-----------
[clang-doc] Fix incorrectly rendered specialization args in HTML (#187761)
Function template specialization arguments were incorrectly rendered
without a comma. This was due to the "End" JSON property also being
used in the levels above. Mustache looks for missing properties in
parent contexts, see #174359.
Commit: a60b3a83cf32a0b14f4b24b17ae72e6856448c7d
https://github.com/llvm/llvm-project/commit/a60b3a83cf32a0b14f4b24b17ae72e6856448c7d
Author: Alexey Samsonov <vonosmas at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M libc/include/threads.yaml
Log Message:
-----------
[libc] Fix function prototypes for <threads.h> C11 header. (#187808)
Fix return types and/or function arguments of several functions:
* mtx_destroy
* tss_delete
* thrd_exit
Commit: 368f38b9fcfeeff4138a7003a59cceddcf631285
https://github.com/llvm/llvm-project/commit/368f38b9fcfeeff4138a7003a59cceddcf631285
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
Log Message:
-----------
[AMDGPU][SIInsertWaitcnts][NFC] SGPRInfo: Move score selection logic closer (#186518)
Selecting the score in SGPRInfo used to require an index which you would
get by calling a getSgprScoresIdx(), which is defined in a different
class.
This patch moves the score selection logic into the SGPRinfo. This makes
the interface simpler and more intuitive.
Also given that SGPRInfo contains only two scores, this patch also
replaces the score array with individual score variables.
Should be NFC.
Commit: 335a2d0e7e5a7e83723b9a32a0eed8aa373e8f62
https://github.com/llvm/llvm-project/commit/335a2d0e7e5a7e83723b9a32a0eed8aa373e8f62
Author: Joe Kirchoff <Kirchoff.Joseph.P at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/AST/Expr.cpp
M clang/test/CodeGenCXX/builtin_FUNCTION.cpp
Log Message:
-----------
[clang] fix error: cannot compile this l-value expression yet (#187755)
Commit: bae6a2a76b632fa5fa4f103bb7aaff067c19c949
https://github.com/llvm/llvm-project/commit/bae6a2a76b632fa5fa4f103bb7aaff067c19c949
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
Log Message:
-----------
[Runtimes] Fix Unix Makefiles race between runtimes-build and EXTRA_TARGETS (#187634)
In our downstream we have a non-runtime target depending on libclc
EXTRA_TARGET and then observe a race condition in parallel build: both
runtimes-build (full build, no lock) and libclc EXTRA_TARGET (triggered
by non-runtime target, FileLock) build concurrently, leading to corrupt
libclc library.
This exposes an limitation in ExternalProject EXTRA_TARGET design:
EXTRA_TARGETS in llvm_ExternalProject_Add only depend on
${name}-configure, not ${name}-build. This makes EXTRA_TARGETS unsafe as
dependencies of a non-runtime target..
Fix: Add a locked BUILD_COMMAND to ExternalProject_Add for Unix
Makefiles generator, using the same cmake.lock as EXTRA_TARGETS. This
serializes runtimes-build with all EXTRA_TARGETS under one lock.
With this PR, a non-runtime target can depend on a specific
EXTRA_TARGET, rather than needing to depend on the umbrella runtimes
target. This is an improvement. A non-runtime target can start as soon
as its dependent specific EXTRA_TARGET build finishes, without waiting
for other runtimes. In addition, the non-runtime target may only need a
specific EXTRA_TARGET and minimal dependency on it is accurate.
Assisted-by: Claude Sonnet 4.6
---------
Co-authored-by: Petr Hosek <phosek at google.com>
Commit: 6891a6ef0e2466ffb8a921d7f58934ef464f137a
https://github.com/llvm/llvm-project/commit/6891a6ef0e2466ffb8a921d7f58934ef464f137a
Author: Michael Jones <michaelrj at google.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M compiler-rt/lib/scudo/standalone/chunk.h
Log Message:
-----------
[compiler-rt] Add bitmask to fix warning (#187812)
After #186881 was merged the gcc libc bots started complaining about the
conversion from u8 to 2 bit integer being unsafe (see:
https://lab.llvm.org/buildbot/#/builders/131/builds/42788). This PR
adds a bitmask that fixes the warning.
Commit: 0ec9f7ebbdf72a94e0e2c0872d4d11fc8d0efa6b
https://github.com/llvm/llvm-project/commit/0ec9f7ebbdf72a94e0e2c0872d4d11fc8d0efa6b
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Target/Platform.h
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Module.cpp
A lldb/source/Core/SafeAutoloadPaths.inc.in
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Target/Platform.cpp
A lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-takes-priority.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/safe-path-fallback-no-dsym-script.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-basic-load.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-last-path-wins.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-nested-dir.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-dirname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-scriptname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-paths-configured.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-special-chars-sanitized.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-submodule-import.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-subpackage-import.test
M lldb/unittests/Platform/PlatformTest.cpp
Log Message:
-----------
[lldb] Add mechanism for auto-loading Python scripts from pre-configured paths (#187031)
Depends on:
* https://github.com/llvm/llvm-project/pull/187229
(only second commit and onwards are relevant)
This patch implements the base infrastructure described in this [RFC re.
Moving libc++ data-formatters out of
LLDB](https://discourse.llvm.org/t/rfc-lldb-moving-libc-data-formatters-out-of-lldb/89591)
The intention is to provide vendors with a way to pre-configure a set of
paths that LLDB can automatically ingest formatter scripts from.
Three main changes:
1. Adds a CMake variable `LLDB_SAFE_AUTO_LOAD_PATHS` which is a
semi-colon separated list of paths. This is intended to be set by
vendors when building LLDB for distribution.
2. Adds a setting that only exists in asserts mode called
`testing.safe-auto-load-paths` which allows setting the paths without a
CMake configuration. Used for local development and, more crucially, the
shell and unit tests
3. Adds a `LocateScriptingResourcesFromSafePaths` which
`Platform::LocateExecutableScriptingResources` calls by default (and
hence used by all platforms). I add a
`LocateExecutableScriptingResourcesImpl` that platforms can override if
they have platform-specific resource script locations (e.g., dSYMs on
Darwin).
Whenever we load an image, we check the safe path (starting with the
last appended path) for a directory called
`/safe/path/to/<module>/<module>.py`. If such script exists, we import
it as a Python module. If not, we move on to the next safe path.
Currently the default for `LLDB_SAFE_AUTO_LOAD_PATHS` is empty.
Eventually the plan is to make those point to the libc++ installation
(where the formatters will live) depending on platform/vendor. For macOS
we'll add a special `$SDK_ROOT` that can be used in the path variable,
which `LocateScriptingResourcesFromSafePaths` will resolve to an actual
SDK path.
*AI Usage*:
* Claude assisted with the CMake machinery which I then reviewed and
cleaned up. I'm not sure this is the most idiomatic way of letting a
user provide lists of paths, but I couldn't find a better way.
* Wrote the basic auto-load Shell tests myself and asked claude to stamp
out a bunch more for different scenarios. Reviewed and cleaned those up
myself.
Commit: 0ae9aaf53973055b71dfe815361e1d49722adab3
https://github.com/llvm/llvm-project/commit/0ae9aaf53973055b71dfe815361e1d49722adab3
Author: Chang Lin <chang-sun.lin.jr at intel.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
A llvm/test/Transforms/InstCombine/scalar_vector_gep.ll
Log Message:
-----------
[InstCombine] When rewriting GEPs, check that the types match. (#186886)
Commit: 367da15a11c52886c50e7f020cb4de59fe6d07ca
https://github.com/llvm/llvm-project/commit/367da15a11c52886c50e7f020cb4de59fe6d07ca
Author: Jianhui Li <jian.hui.li at intel.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/test/Dialect/XeGPU/invalid.mlir
M mlir/test/Dialect/XeGPU/layout.mlir
M mlir/test/Dialect/XeGPU/propagate-layout.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg-unify-ops.mlir
M mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
Log Message:
-----------
[MLIR][XeGPU] Enhance XeGPU lane layout to support "wrap-around" distribution (#186958)
This PR extends XeGPU lane layout to support wrap-around distribution,
enabling replication of lane-level tensor tiles across all lanes when
the tile size matches lane_data along a given dimension. Previously,
distribution required the tile size to exceed the number of lanes ×
lane_data for even partitioning.
This PR also refactors layout attribute interface functions:
computeDistributedShape() computes the distributed vector shape and is
shared by work-to-subgroup and subgroup-to-lane distribution, which
follow the same distribution rule (even or wrap-around).
computeStaticDistributedCoords() computes compile-time distributed
coordinates of sub-tiles per subgroup/lane. It is the compile-time
counterpart of computeDistributedCoords() and is used by
isCompatibleWith().
Commit: 3d4dd4b944185c0b1c672d4af3a484a530c6d783
https://github.com/llvm/llvm-project/commit/3d4dd4b944185c0b1c672d4af3a484a530c6d783
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M lldb/unittests/Platform/PlatformTest.cpp
Log Message:
-----------
[lldb][test] Don't build PlatformLocateSafePathTest in non-asserts builds (#187829)
>From a CI failure:
```
FAILED: [code=1] tools/lldb/unittests/Platform/CMakeFiles/LLDBPlatformTests.dir/PlatformTest.cpp.obj
C:\Users\tcwg\scoop\shims\ccache.exe C:\Users\tcwg\scoop\apps\llvm-arm64\current\bin\clang-cl.exe /nologo -TP -DLLVM_BUILD_STATIC -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_ENABLE_EXTENDED_ALIGNED_STORAGE -D_HAS_EXCEPTIONS=0 -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\tools\lldb\unittests\Platform -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\tools\lldb\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\build\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\llvm\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\llvm\..\clang\include -IC:\Users\tcwg\ll
vm-worker\lldb-aarch64-windows\build\tools\lldb\..\clang\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\source -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\third-party\unittest\googletest\include -IC:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\third-party\unittest\googlemock\include /DWIN32 /D_WINDOWS /Zc:inline /Zc:__cplusplus /Oi /Brepro /bigobj /permissive- -Werror=unguarded-availability-new /W4 -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -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 /Gw -Wno-vla-extension /O2 /Ob2 /DNDEBUG -std:c++17 -MD -wd4018 -wd4068 -wd4150 -wd4201 -wd4251 -wd4521 -wd4530 -wd4589 -Wno-suggest-override -Wno-gn
u-zero-variadic-macro-arguments /EHs-c- /GR- /showIncludes /Fotools\lldb\unittests\Platform\CMakeFiles\LLDBPlatformTests.dir\PlatformTest.cpp.obj /Fdtools\lldb\unittests\Platform\CMakeFiles\LLDBPlatformTests.dir\ -c -- C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(197,5): error: use of undeclared identifier 'TestingProperties'
197 | TestingProperties::GetGlobalTestingProperties().SetSafeAutoLoadPaths({});
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(238,3): error: use of undeclared identifier 'TestingProperties'
238 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(265,3): error: use of undeclared identifier 'TestingProperties'
265 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(295,3): error: use of undeclared identifier 'TestingProperties'
295 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(364,3): error: use of undeclared identifier 'TestingProperties'
364 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(367,3): error: use of undeclared identifier 'TestingProperties'
367 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(370,3): error: use of undeclared identifier 'TestingProperties'
370 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(388,3): error: use of undeclared identifier 'TestingProperties'
388 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(413,3): error: use of undeclared identifier 'TestingProperties'
413 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(449,3): error: use of undeclared identifier 'TestingProperties'
449 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(487,3): error: use of undeclared identifier 'TestingProperties'
487 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(516,3): error: use of undeclared identifier 'TestingProperties'
516 | TestingProperties::GetGlobalTestingProperties().AppendSafeAutoLoadPaths(
| ^
C:\Users\tcwg\llvm-worker\lldb-aarch64-windows\llvm-project\lldb\unittests\Platform\PlatformTest.cpp(550,3): error: use of undeclared identifier 'TestingProperties'
```
Commit: b9d276748ecaf748e0bab32ed82834644ed6827a
https://github.com/llvm/llvm-project/commit/b9d276748ecaf748e0bab32ed82834644ed6827a
Author: Jonas Devlieghere <jonas at devlieghere.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
A lldb/test/API/commands/expression/ptrauth-objc/Makefile
A lldb/test/API/commands/expression/ptrauth-objc/TestPtrAuthObjectiveC.py
A lldb/test/API/commands/expression/ptrauth-objc/main.m
Log Message:
-----------
[lldb] Support arm64e Objective-C signing in the expression evaluator (#187765)
When targeting arm64e, ISA pointers, class_ro_t pointers, and interface
selectors are signed in Objective-C. This PR adds support for that in
the expression evaluator.
Commit: 2b47497f6e0a3d11443e55d6ada333c7883833e5
https://github.com/llvm/llvm-project/commit/2b47497f6e0a3d11443e55d6ada333c7883833e5
Author: Jeff Bailey <jbailey at raspberryginger.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M libc/docs/build_concepts.rst
M libc/docs/getting_started.rst
Log Message:
-----------
[libc][docs][NFC] Restructure Getting Started guide and update Build Concepts. (#187701)
Restructured the Getting Started guide into a numbered step-by-step path
for easier readability. Added a Hello World verification step to confirm
build integrity after build completion.
Additionally, updated build_concepts.rst and the Getting Started guide
to clarify that Overlay Mode is intended for augmenting the system's C
library rather than incremental adoption.
Commit: 8eccc21e47fbd2a81b10d3f5041c685d273d0e97
https://github.com/llvm/llvm-project/commit/8eccc21e47fbd2a81b10d3f5041c685d273d0e97
Author: Wenju He <wenju.he at intel.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M libclc/CMakeLists.txt
M libclc/test/CMakeLists.txt
R libclc/test/check_external_funcs.sh
M libclc/test/lit.cfg.py
M libclc/test/lit.site.cfg.py.in
M llvm/runtimes/CMakeLists.txt
Log Message:
-----------
[libclc] Replace llvm-dis with llvm-nm in check-external-funcs.test (#187190)
llvm-nm is covered by extra_deps in runtime build when
LLVM_INCLUDE_TESTS is true.
Commit: 36798cfa860f18a130a896d75434ca70123804f7
https://github.com/llvm/llvm-project/commit/36798cfa860f18a130a896d75434ca70123804f7
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
Log Message:
-----------
[AMDGPU][GlobalISel][NFC] Change mbcnt test to use new-reg-bank-select (#187772)
The amdgcn_mbcnt_lo and amdgcn_mbcnt_hi intrinsics already have
RegBankLegalize rules but the test was not converted to use
new-reg-bank-select yet.
Commit: 4cba4ad8d73b9e4934c03a483a42bd08c93d8298
https://github.com/llvm/llvm-project/commit/4cba4ad8d73b9e4934c03a483a42bd08c93d8298
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for pops_exiting_wave_id (#187778)
Merge rule with groupstaticsize, also change to use fast uniform rule
since both of these intrinsics are uniform with no inputs.
Commit: 91dbaf5d89c093b6c16b2aa5478078e1a0526958
https://github.com/llvm/llvm-project/commit/91dbaf5d89c093b6c16b2aa5478078e1a0526958
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/test/CodeGen/NVPTX/inline-asm-b128-test1.ll
A llvm/test/CodeGen/NVPTX/param-space-subqualifiers.ll
M llvm/test/CodeGen/NVPTX/tensormap_replace.ll
M llvm/test/CodeGen/NVPTX/used-bytes-mask.ll
Log Message:
-----------
[NVPTX] Print param space sub-qualifiers where supported (#187350)
Print param space sub-qualifiers (`param::entry` and `param::func`) for
PTX 8.3+, as described in the [PTX ISA
docs](https://docs.nvidia.com/cuda/parallel-thread-execution/index.html#parameter-state-space).
This requires threading the `MCSubtargetInfo` through the inst printer,
which is done by setting `PassSubtarget = 1` on the asm writer.
Emitting the full space avoids the need for ptxas to infer it, improving
readability and more importantly preventing potential bugs if valid LLVM
IR transformations were to move a load from ADDRESS_SPACE_ENTRY_PARAM
into a device function.
Commit: f0a652e351d83146b252b7b642b7e498f2ea74aa
https://github.com/llvm/llvm-project/commit/f0a652e351d83146b252b7b642b7e498f2ea74aa
Author: yronglin <yronglin777 at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/Lex/PPDirectives.cpp
Log Message:
-----------
[NFC][clang] Remove dead code in HandleCXXModuleDirective (#187737)
Remove the dead code in `Preprocessor::HandleCXXModuleDirective`.
Signed-off-by: yronglin <yronglin777 at gmail.com>
Commit: d7fe9c87ce9a5fc5b48d6b19415542f5807fc154
https://github.com/llvm/llvm-project/commit/d7fe9c87ce9a5fc5b48d6b19415542f5807fc154
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-20 (Fri, 20 Mar 2026)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Handle sizeof in C compound literals (#187633)
Fixes #168237
Commit: 1087db5b1f80d1f5dc70a93c63d7ec8f19425b9b
https://github.com/llvm/llvm-project/commit/1087db5b1f80d1f5dc70a93c63d7ec8f19425b9b
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.h
Log Message:
-----------
[clang-tidy] Speed up `bugprone-suspicious-semicolon` (#187558)
```txt
---User Time--- --System Time-- --User+System-- ---Wall Time--- --- Name ---
Status quo: 0.4743 (100.0%) 0.3802 (100.0%) 0.8546 (100.0%) 0.8567 (100.0%) bugprone-suspicious-semicolon
With this change: 0.0103 (100.0%) 0.0027 (100.0%) 0.0130 (100.0%) 0.0133 (100.0%) bugprone-suspicious-semicolon
```
Continuing the trend of registering one `anyOf` matcher being slower
than registering each of its matchers separately (see #178829 for a
previous example).
(This PR also changes the traversal mode, but I only saw a small speedup
from that. Most of it came from registering the matchers separately.)
This check wasn't super expensive to begin with, but the speedup is
still pretty nice.
Commit: 64c4e529a9560b77a049fe80f635d9a29a7b515e
https://github.com/llvm/llvm-project/commit/64c4e529a9560b77a049fe80f635d9a29a7b515e
Author: Artem Gindinson <gindinson at roofline.ai>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M mlir/lib/Conversion/MemRefToSPIRV/MemRefToSPIRV.cpp
M mlir/test/Conversion/MemRefToSPIRV/memref-to-spirv.mlir
Log Message:
-----------
[mlir][SPIRV] Add alignment calculation to support `PhysicalStorageBuffer` with vector types (#187698)
This allows to lower `memref.load`/`store` operations on
`PhysicalStorageBuffer`-typed resources with the underlying type being a
vector type. This improves support for the `PhysicalStorageBuffer`
capability in pipelines that use the Vector dialect for distribution.
Signed-off-by: Artem Gindinson <gindinson at roofline.ai>
Commit: b3c1098211c8f71800d16b82d5672fb78871a284
https://github.com/llvm/llvm-project/commit/b3c1098211c8f71800d16b82d5672fb78871a284
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M lldb/unittests/Platform/PlatformTest.cpp
Log Message:
-----------
[lldb][test] PlatformTest: fix comment
Commit: 1f9c54a15a87f72ca45fb47ec006d1eae63f4eb0
https://github.com/llvm/llvm-project/commit/1f9c54a15a87f72ca45fb47ec006d1eae63f4eb0
Author: Devajith <devajith.valaparambil.sreeramaswamy at cern.ch>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/AST/QualTypeNames.cpp
M clang/test/Interpreter/pretty-print.cpp
Log Message:
-----------
[clang][AST] Preserve qualifiers in getFullyQualifiedType for AutoType (#187717)
A previous change (86c4e96) did not preserve qualifiers attached to the
AutoType QualType when the type was deduced.
For an AutoType after `getDeducedType()`, qualifiers from the original
QualType were dropped. Preserve and reapply them to the deduced type.
Commit: 2d01df187f1ce7d6995855c5c8d3608f2f9ee1d5
https://github.com/llvm/llvm-project/commit/2d01df187f1ce7d6995855c5c8d3608f2f9ee1d5
Author: Henrich Lauko <xlauko at mail.muni.cz>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.cpp
M clang/lib/CIR/CodeGen/CIRGenModule.h
M clang/test/CIR/CodeGen/arg-attrs.cpp
M clang/test/CIR/CodeGen/invoke-attrs.cpp
Log Message:
-----------
[CIR] Fix reference alignment to use pointee type (#186667)
getNaturalTypeAlignment on a reference type returned pointer alignment
instead of pointee alignment. Pass the pointee type with
forPointeeType=true to match traditional codegen's
getNaturalPointeeTypeAlignment behavior. Fix applies to both argument
and return type attribute construction paths.
Commit: db143fb2b9e61a7fff2bd32c08c0cd78ca0a3b84
https://github.com/llvm/llvm-project/commit/db143fb2b9e61a7fff2bd32c08c0cd78ca0a3b84
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Log Message:
-----------
[SLP][NFC]Use block number instead of pointer for stable sorting, NFC
Commit: 3b9106149c6867494049d7af4958eebeec5e2393
https://github.com/llvm/llvm-project/commit/3b9106149c6867494049d7af4958eebeec5e2393
Author: Martin Storsjö <martin at martin.st>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
Log Message:
-----------
[lldb] Fix linking liblldb in a dylib build after 39d6bb21804d21ab
Referencing libSupportHTTP under LINK_LIBS of add_lldb_library() pulls
in the static archive even in a build configuration with
LLVM_LINK_LLVM_DYLIB=On, where libSupportHTTP is part of libLLVM. This
patch moves it to LINK_COMPONENTS to fix the issue.
This is the same fix as in
036429881f8d3037894042c6268b2a94eac8c950, applied on another
library.
Commit: 656fce889c65157daa0aea7f9fd1080e0f04d7dd
https://github.com/llvm/llvm-project/commit/656fce889c65157daa0aea7f9fd1080e0f04d7dd
Author: efferre79 <rossi.f at inwind.it>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/bindings/python/clang/cindex.py
A clang/bindings/python/tests/cindex/test_version.py
M clang/docs/ReleaseNotes.rst
Log Message:
-----------
[libclang/python] export libclang version to the bindings (#86931)
It's useful to know which clang library the python bindings are running.
---------
Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Commit: acf9eede2302fa2798607039e36a241bd2a956bf
https://github.com/llvm/llvm-project/commit/acf9eede2302fa2798607039e36a241bd2a956bf
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/include/llvm/Object/BBAddrMap.h
Log Message:
-----------
[Object] Fix issues in BBAddrMap.h (#187704)
Commit: 616240369e11c87b5a33c1219e9d708662b4c8e9
https://github.com/llvm/llvm-project/commit/616240369e11c87b5a33c1219e9d708662b4c8e9
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/RISCV/split-vectorize-parent-for-copyables.ll
Log Message:
-----------
[SLP]Do not consider copyable node with SplitVectorize parent
If the copyables are schedulable and the parent node is plit vectorize,
need to skip the scheduling analysis for such nodes to avoid a compiler
crash
Commit: 4d058aeb08cafad4c706f0cab35c24180470e74b
https://github.com/llvm/llvm-project/commit/4d058aeb08cafad4c706f0cab35c24180470e74b
Author: Michał Górny <mgorny at gentoo.org>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
Log Message:
-----------
[lldb] Fix LLVMSupportHTTP linkage against libLLVM (#187848)
Regression introduced in 39d6bb21804d21abe2fa0ec019919d72104827ac.
Signed-off-by: Michał Górny <mgorny at gentoo.org>
Commit: 82eee26ccccd3d139bad649376ef56fb8bf28e83
https://github.com/llvm/llvm-project/commit/82eee26ccccd3d139bad649376ef56fb8bf28e83
Author: Jannick Kremer <jannick.kremer at mailbox.org>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/bindings/python/clang/cindex.py
Log Message:
-----------
[libclang/python] Fix Type.get_offset annotation (#187841)
As discussed in
https://github.com/llvm/llvm-project/pull/180876#discussion_r2934372753,
`Type.get_offset` can process `bytes` arguments as well. For consistency
with other functions taking `str` arguments, its type annotation is
adapted to reflect this.
Commit: 7d7cd745af221c8690ea6deb2dfbf232658158cd
https://github.com/llvm/llvm-project/commit/7d7cd745af221c8690ea6deb2dfbf232658158cd
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/windows/entrypoints.txt
M libc/docs/headers/math/index.rst
M libc/shared/math.h
A libc/shared/math/atanbf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/atanbf16.h
M libc/src/math/CMakeLists.txt
A libc/src/math/atanbf16.h
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atanbf16.cpp
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/atanbf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atanbf16_test.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[libc][math][c23] Add atanbf16 function (#184019)
This PR intends to add atanbf16 higher math function for BFloat16 type
along with the tests.
Commit: c1df6937bac1191663c7f3a84f5c8faf2e79db35
https://github.com/llvm/llvm-project/commit/c1df6937bac1191663c7f3a84f5c8faf2e79db35
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
M llvm/test/CodeGen/RISCV/urem-lkk.ll
Log Message:
-----------
[TargetLowering] Use legally typed shifts to split chunks in expandDIVREMByConstant. (#187567)
This replaces LegalVT with HiLoVT and LegalWidth with HBitWidth as
they are the same for all current uses.
Then we rewrite the shifts to operate on LL and LH.
There's a slight regression on RISC-V due to different node creation
order leading to different DAG combine order. I have other refactoring
I'd like to explore then I may try to fix that.
Commit: 93d256b076b12bf30e546910d9ae473ec93146c0
https://github.com/llvm/llvm-project/commit/93d256b076b12bf30e546910d9ae473ec93146c0
Author: Nerixyz <nerixdev at outlook.de>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
M llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
M llvm/test/DebugInfo/PDB/pdbdump-mergetypes.test
A llvm/test/tools/llvm-pdbutil/Inputs/forward-refs1.yaml
A llvm/test/tools/llvm-pdbutil/Inputs/forward-refs2.yaml
A llvm/test/tools/llvm-pdbutil/merged-forward-refs.test
M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
Log Message:
-----------
[llvm-pdbutil] Hash type records in yaml2pdb (#187593)
The TPI and IPI streams didn't include a hash map for the generated
types, because the types never got hashes. A hash map is necessary to
resolve forward references when dumping the PDB (checks for
`TpiStream::supportsTypeLookup` which checks the hash map).
With this PR, the hashes are generated. There's no good test that we do
this for the IPI stream as well, because it doesn't have forward
references.
Commit: d818fa4c55c24b989eb925581e62b284c3c3a461
https://github.com/llvm/llvm-project/commit/d818fa4c55c24b989eb925581e62b284c3c3a461
Author: Twice <twice at apache.org>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M mlir/python/mlir/dialects/ext.py
M mlir/test/python/dialects/ext.py
M mlir/test/python/dialects/transform_op_interface.py
M mlir/test/python/integration/dialects/bf.py
Log Message:
-----------
[MLIR][Python] Make init parameters follow the field definition order (#186574)
Currently, Python-defined operations automatically generate an
`__init__` function to serve as the operation builder. Previously, the
parameters of this `__init__` function followed a fairly complex set of
rules. For example:
* All result fields were moved to the front to align with other op
builders.
* Fields of `Optional` type were automatically moved to the end and
treated as keyword parameters.
* If the types of all result fields could be inferred automatically,
then all result fields were removed from the parameter list.
* Other than that, the parameter order followed the field definition
order.
These rules may seem reasonable, and they have worked well in practice,
but they have one major drawback: users cannot easily tell what the
actual `__init__` parameter list will look like when writing code,
because the rules are simply too complicated. Users can inspect the
signature at runtime via `MyOp.__init__.__signature__`, but this is
clearly poor for the development experience.
After some offline discussion with Rolf, we decided to replace this with
the following rules, which is what this PR implements:
* The parameters of `__init__` now strictly follow the field definition
order.
* By default, all parameters are required. A field becomes a keyword
parameter only if it is declared with `= None`.
* By default, no type inference is performed. A field becomes a keyword
parameter and participates in type inference only if it is declared with
`= infer_type()`.
These new rules give users full control over the `__init__` parameter
list, making it easy to understand the parameter order and explicitly
control optional parameters and type inference. In addition, this makes
it much easier in the future to use `dataclass_transform` so that type
checkers can understand these automatically generated `__init__`
methods, although there are still some issues to resolve at the moment.
NOTE that this is a **breaking change**. Even so, I still believe it is
worth making, mainly for two reasons:
- the current number of users of Python-defined dialects is still quite
limited;
- this change will bring long-term benefits.
Assisted by Copilot.
Commit: df9eb79970c012990e829d174d181d575d414efe
https://github.com/llvm/llvm-project/commit/df9eb79970c012990e829d174d181d575d414efe
Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CodeGenTypes.cpp
M clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
M clang/test/CodeGen/builtins-extended-image.c
M clang/test/CodeGen/builtins-image-load.c
M clang/test/CodeGen/builtins-image-store.c
Log Message:
-----------
[Clang][AMDGPU] Lower `__amdgpu_texture_t` to `<8 x i32>` instead of ptr adrspace(0) (#187774)
Fix the IR lowering for `__amdgpu_texture_t` to generate a single
256-bit load instead of a double indirection through a flat pointer.
Previously, `__amdgpu_texture_t` was lowered to `ptr addrspace(0)`
(64-bit flat pointer), which caused the double load and indirection.
With the same reproducer like #187697.
```c
#define TSHARP __constant uint *
// Old tsharp handling:
// #define LOAD_TSHARP(I) *(__constant uint8 *)I
#define LOAD_TSHARP(I) *(__constant __amdgpu_texture_t *)I
float4 test_image_load_1D(TSHARP i, int c) {
return __builtin_amdgcn_image_load_1d_v4f32_i32(15, c, LOAD_TSHARP(i), 0, 0);
}
```
old output:
```llvm
define hidden <4 x float> @test_image_load_1D(ptr addrspace(4) noundef readonly captures(none) %i, i32 noundef %c) local_unnamed_addr #0 {
entry:
%0 = load ptr, ptr addrspace(4) %i, align 32, !tbaa !9
%1 = addrspacecast ptr %0 to ptr addrspace(1)
%tex.rsrc.val = load <8 x i32>, ptr addrspace(1) %1, align 32
%2 = tail call <4 x float> @llvm.amdgcn.image.load.1d.v4f32.i32.v8i32(i32 15, i32 %c, <8 x i32> %tex.rsrc.val, i32 0, i32 0)
ret <4 x float> %2
}
```
This matches the old `__constant uint8 *` behavior. With this fix new
output is
```llvm
define hidden <4 x float> @test_image_load_1D(ptr addrspace(4) noundef readonly captures(none) %0, i32 noundef %1) local_unnamed_addr #0 {
%3 = load <8 x i32>, ptr addrspace(4) %0, align 32, !tbaa !10
%4 = tail call <4 x float> @llvm.amdgcn.image.load.1d.v4f32.i32.v8i32(i32 15, i32 %1, <8 x i32> %3, i32 0, i32 0)
ret <4 x float> %4
}
```
Fixes #187697
Commit: 34203a53b60dc79a956ff67a21b08eb9f7660da1
https://github.com/llvm/llvm-project/commit/34203a53b60dc79a956ff67a21b08eb9f7660da1
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/docs/RISCVUsage.rst
Log Message:
-----------
[RISCV][Docs] Removed 'specified in' text from SiFive custom instruction links. NFC (#187817)
The URL isn't printed, the text in the backticks is the link text.
Commit: f146677396ea0b02b902743633a1f934023ae15f
https://github.com/llvm/llvm-project/commit/f146677396ea0b02b902743633a1f934023ae15f
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[TargetLowering] Refactor expandDIVREMByConstant to share more code. NFC (#187582)
Make the (1 << HBitWidth) % Divisor == 1 path a special case within
the recently added chunk summing algorithm. This allows us to
share the trailing zero shifting code.
While there make some comment improvements and avoid creating
unnecessary nodes.
Commit: b7d97d9e8dfaeabc6a5271d810d2e2af4e485a4e
https://github.com/llvm/llvm-project/commit/b7d97d9e8dfaeabc6a5271d810d2e2af4e485a4e
Author: YongKang Zhu <yongzhu at fb.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M bolt/lib/Rewrite/RewriteInstance.cpp
Log Message:
-----------
[BOLT] Remove outdated assertion from local symtab update logic (#187409)
The assert condition (function is not split or split
into less than three fragments) is not always true now
that we will emit more local symbols due to #184074.
Commit: 2702570686d7e7e38bc0db6fd857c76076190a50
https://github.com/llvm/llvm-project/commit/2702570686d7e7e38bc0db6fd857c76076190a50
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
A utils/bazel/llvm-project-overlay/lldb/source/Core/SafeAutoloadPaths.inc
Log Message:
-----------
[Bazel] Port 0ec9f7ebbdf72a94e0e2c0872d4d11fc8d0efa6b
Commit: d3c7f23d2f3fee7209f84ca7da5411868d656995
https://github.com/llvm/llvm-project/commit/d3c7f23d2f3fee7209f84ca7da5411868d656995
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanValue.h
Log Message:
-----------
[VPlan] Remove unused VPlan friend declaration from VPValue (NFC)
VPlan only accesses VPValue through public APIs (getUnderlyingValue(),
etc.), so the friend declaration is unnecessary.
Commit: 1075a2fa7ed0a576e5aeb4af03b570eab1aaae04
https://github.com/llvm/llvm-project/commit/1075a2fa7ed0a576e5aeb4af03b570eab1aaae04
Author: Takashi Idobe <idobetakashi at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
A llvm/test/Transforms/InstCombine/atomicrmw-add-neg.ll
Log Message:
-----------
[Instcombine] Write Instcombine pass to strength reduce lock xadd to lock sub (#184715)
Resolves: https://github.com/llvm/llvm-project/issues/174933
The issue goes into a case where fetch_sub(n) is properly optimized but
fetch_add(neg(n)) is not optimized to the same code.
Although the issue is tagged for x86 I assumed this be best handled
outside of the backends so I put this in InstCombine.
Commit: 2be28d65fbf1b5660ecef61a406542cb3b37b7e7
https://github.com/llvm/llvm-project/commit/2be28d65fbf1b5660ecef61a406542cb3b37b7e7
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/lldb/source/Core/BUILD.gn
Log Message:
-----------
[gn] "port" 0ec9f7ebbdf72a94
Just use an empty list always.
Commit: adcb17b47641a1afb1cc694e3ff363fb1cb2a288
https://github.com/llvm/llvm-project/commit/adcb17b47641a1afb1cc694e3ff363fb1cb2a288
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
Log Message:
-----------
[Clang][HLSL] Fix -Wunused-variable
Inline the definition of a variable into an assertion given it has no
other users and no side effects.
Commit: 1f1d3167b203f3c22be5d96c5560a311e46d1de4
https://github.com/llvm/llvm-project/commit/1f1d3167b203f3c22be5d96c5560a311e46d1de4
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Correctly annotate Java lambda/sychronized blocks (#187842)
Fixes #171841
Commit: eea589f951e188be57860459f45763985bd2233e
https://github.com/llvm/llvm-project/commit/eea589f951e188be57860459f45763985bd2233e
Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M libc/src/__support/FPUtil/PolyEval.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/macros/attributes.h
M libc/src/__support/macros/config.h
M libc/src/__support/math/log.h
M libc/src/__support/math/log_range_reduction.h
M libc/test/shared/shared_math_test.cpp
Log Message:
-----------
[libc][math] Qualify log with constant evaluation support (#184745)
Lay the ground for C++26 `constexpr` math functions:
- Introduce `LIBC_ENABLE_CONSTEXPR` macro switch to specify the desire
of `constexpr`-only code route.
- Introduce `LIBC_HAS_CONSTANT_EVALUATION` to indicate that we are using
`constexpr`-only code in all dependent functions.
- Introduce `LIBC_CONSTEXPR` macro qualifier to aid in altering the
signature of non-`constexpr` functions.
Note that non-`constexpr` qualified functions are caused by the
exploitation of non-`constexpr` compatible utils, resulting in
non-qualified dependent function, but it can be modified to be qualified
using other code routes.
If the function is `constexpr` compatible, then it's prohibited to use
`LIBC_CONSTEXPR` as a function qualifier. We only qualify it with
`constexpr` as usual.
`LIBC_CONSTEXPR` may or may not evaluate to `constexpr` depending on the
environment configurations, thus it's only used to modify the function
signature in constant evaluation context and remove the qualifier if
it's not desired (depending on provided configurations).
Possible side effects:
- Current qualified routes may or may not produce the desired ULP, this
is implementation dependent (function by function basis) and needs
further testing of the chosen code route.
- The shared tests in the current configuration can still compile with
unsupported compiler. I didn't want to raise compilation error with
unsupported compilers now, but we need to push compiler support with
newer versions for this one to work as intended.
Commit: 1120c971c8499ea404417cc598b6306326ac2e40
https://github.com/llvm/llvm-project/commit/1120c971c8499ea404417cc598b6306326ac2e40
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M llvm/test/MachineVerifier/AMDGPU/invalid-vop3-source-modifiers.mir
Log Message:
-----------
[NFC][AMDGPU] Set output to null for llvm/test/MachineVerifier/AMDGPU/invalid-vop3-source-modifiers.mir (#187888)
Commit: aa62224a73b10da9154aa0c1111e009a8cd48ef2
https://github.com/llvm/llvm-project/commit/aa62224a73b10da9154aa0c1111e009a8cd48ef2
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M libc/shared/math.h
A libc/shared/math/sqrtbf16.h
M libc/src/__support/math/CMakeLists.txt
A libc/src/__support/math/sqrtbf16.h
M libc/src/math/generic/CMakeLists.txt
M libc/src/math/generic/sqrtbf16.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 sqrtbf16 function header-only (#187849)
Commit: 2bbb4491a6fdb6e316641224dba7cb722e70a675
https://github.com/llvm/llvm-project/commit/2bbb4491a6fdb6e316641224dba7cb722e70a675
Author: Björn Schäpers <bjoern at hazardy.de>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang/lib/Format/WhitespaceManager.cpp
M clang/unittests/Format/FormatTest.cpp
Log Message:
-----------
[clang-format] Merge case alignment into AlignTokens (#187811)
Use (nearly) the same code to align case statements and expression, as
the other alignments do. That way we also fix two things:
- Keep the ColumnLimit intact, without duplicating the calculation.
- Align all the case colons, even for empty cases.
Commit: f014202dac325c576addd857b558f7d9d2b28905
https://github.com/llvm/llvm-project/commit/f014202dac325c576addd857b558f7d9d2b28905
Author: Owen Pan <owenpiano at gmail.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
Log Message:
-----------
[clang-format][NFC] Remove redundant parens enclosing braced list
Commit: 3258d361cbc5d57e5e507004706eb36acf120066
https://github.com/llvm/llvm-project/commit/3258d361cbc5d57e5e507004706eb36acf120066
Author: James Y Knight <jyknight at google.com>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
Log Message:
-----------
[Clang] Use stable_sort in VerifyDiagnosticsConsumer. (#187827)
The new code introduced for `-verify-directives` in PR #179835 enforces
that the order of diagnostics matches the order of the directives.
However, before checking this, it sorts the directives by
SourceLocation. Perhaps non-obviously, all directives which appear
inside a single comment are given the same SourceLocation, pointing to
the beginning of the comment. While these are added in order they appear
in the comment, the non-stable std::sort may non-detministically
misorder them. Switching to stable_sort ensures the correct order is
verified.
This was observed as a random test failure on the checks in
clang/test/CXX/drs/cwg25xx.cpp lines 250 and 264, in some builds of
Clang. Note that those lines end in backslashes, and thus, despite
appearances, the directives on the following lines are also within the
same single comment.
Commit: 6f6adfbca46c0955608a0744131a7f3868fbd127
https://github.com/llvm/llvm-project/commit/6f6adfbca46c0955608a0744131a7f3868fbd127
Author: Lang Hames <lhames at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M orc-rt/include/orc-rt/Session.h
M orc-rt/unittests/SessionTest.cpp
Log Message:
-----------
[orc-rt] Add Session::tryCreateService convenience function. (#187640)
Session::tryCreateService will try to create an instance of ServiceT by
forwarding the given arguments to the ServiceT::Create method, which
must return an Expected<std::unique_ptr<ServiceT>>.
This enables one-line construction and registration of Services with
fallible constructors (which are expected to be common).
Commit: 24546d96445a6d4d7f6209795975faa7e3310356
https://github.com/llvm/llvm-project/commit/24546d96445a6d4d7f6209795975faa7e3310356
Author: Bogdan Vetrenko <b.vetrenko at yandex.ru>
Date: 2026-03-21 (Sat, 21 Mar 2026)
Changed paths:
M clang/lib/CodeGen/CGExprScalar.cpp
Log Message:
-----------
[clang][CodeGen] Use FieldDecl::getFieldIndex() in VisitOffsetOfExpr (#187826)
Use FieldDecl::getFieldIndex() instead of manually iterating over
fields.
Commit: a5472086ce24cd58b2f91381320b112511a12a27
https://github.com/llvm/llvm-project/commit/a5472086ce24cd58b2f91381320b112511a12a27
Author: Mir Immad <mirimmad17 at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
Log Message:
-----------
[clang-tidy] False negatives readability-redundant-parantheses member of struct (#187054)
Fixes #186749
Commit: 5b71607f384ea4a357c158fe6cdeb86a53f617a6
https://github.com/llvm/llvm-project/commit/5b71607f384ea4a357c158fe6cdeb86a53f617a6
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
M mlir/test/Dialect/Linalg/transform-op-specialize-matmul.mlir
Log Message:
-----------
[mlir][linalg] Specialize transform op - emit category ops (#187506)
Adds optional attribute to allow specialization into category Linalg
ops.
The default behavior of the transform op remains unchanged.
Commit: 5324c23d6c4e1e6f6d244fe261ae70729409abff
https://github.com/llvm/llvm-project/commit/5324c23d6c4e1e6f6d244fe261ae70729409abff
Author: Konrad Kleine <193408+kwk at users.noreply.github.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
M llvm/unittests/Support/FormatVariadicTest.cpp
Log Message:
-----------
[llvm][DebugInfo] Use formatv instead of format in DWARFDebugLoc (#186800)
This relates to #35980.
Commit: a0d550856342a9a4a98f9561ba7aef2ff0b76678
https://github.com/llvm/llvm-project/commit/a0d550856342a9a4a98f9561ba7aef2ff0b76678
Author: SiliconA-Z <gfunni234 at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/abdu-neg.ll
M llvm/test/CodeGen/X86/abdu.ll
M llvm/test/CodeGen/X86/midpoint-int.ll
Log Message:
-----------
[X86] Prefer branchless code with sbb for abdu (#187783)
We can use the negate if carry trick for abdu, and it works on all legal for sbb
Commit: b4084bd213224799d350359a89235a41b3297f4a
https://github.com/llvm/llvm-project/commit/b4084bd213224799d350359a89235a41b3297f4a
Author: Berkay Sahin <berkaysahindev at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
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] Detect pointee mutations in placement new expressions (#187508)
Fixes #187012 which is a false positive on clang-tidy end.
Commit: 4c4925f1a25998f913d04934d710a69cea44e75a
https://github.com/llvm/llvm-project/commit/4c4925f1a25998f913d04934d710a69cea44e75a
Author: Martin Storsjö <martin at martin.st>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-feature-gcs.s
Log Message:
-----------
[LLD] [ELF] Make {bti,gcs}-report=none silence warnings from force-bti/gcs=always (#186343)
Previously, the implicit warnings from force-bti (or gcs=always) weren't
possible to silence.
The force-ibt/cet-report flags could also be handled the same way, but I
haven't checked with GNU ld how they behave. And there, the force-ibt
flag only produces warnings if the IBT bit is missing, while cet-report
warns if either IBT or SHSTK are missing - but force-ibt probably
shouldn't implicitly start warning for missing SHSTK.
This addresses a discrepancy to GNU ld that was noted in #186173.
Commit: 720abd76e71f722f546c58af11049c773a583058
https://github.com/llvm/llvm-project/commit/720abd76e71f722f546c58af11049c773a583058
Author: Devajith <devajith.valaparambil.sreeramaswamy at cern.ch>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang/lib/AST/QualTypeNames.cpp
M clang/test/Interpreter/pretty-print.cpp
Log Message:
-----------
[clang][AST] Fix assertion in getFullyQualifiedType for DecltypeType (#187725)
Commit: 26ee552ef583c47977026285aa684da5d4c53a2d
https://github.com/llvm/llvm-project/commit/26ee552ef583c47977026285aa684da5d4c53a2d
Author: A. Jiang <de34 at live.cn>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M libcxx/include/string
Log Message:
-----------
[libc++] Fix includes in `<string>` for no-`wchar_t` modes (#187650)
Since befaa35212dbaac39cd76a8dc748e4df7c90a0d9, the CI stably failed for
the generic-no-wide-characters build, because in no-`wchar_t` modes, the
header for `__remove_cv_t` wasn't properly included.
This PR adds the missing include of `<__type_traits/remove_cv.h>`.
As drive-by, `<__cstddef/size_t.h>` and
`<__type_traits/is_constant_evaluated.h>`, which are included by
`<cwchar>`, are also made included by `<string>` to avoid potential
regression as we're using `size_t` and
`__libcpp_is_constant_evaluated()` in `<string>`.
Commit: b1cf9b0835d214bcbd0d6e8882760c07cfccb298
https://github.com/llvm/llvm-project/commit/b1cf9b0835d214bcbd0d6e8882760c07cfccb298
Author: Zihao Wang <rekind133 at outlook.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
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/avx512fintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
Log Message:
-----------
[Clang] Support constexpr for AVX512 compress intrinsics (#187656)
Fixes #163732
Commit: 6eb5ac52ca56fd31c41a619a14093430b27132c3
https://github.com/llvm/llvm-project/commit/6eb5ac52ca56fd31c41a619a14093430b27132c3
Author: Dominik Steenken <dost at de.ibm.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/test/CodeGen/SystemZ/is_fpclass.ll
Log Message:
-----------
[SystemZ] Remove custom lowering of f16 IS_FPCLASS (#187532)
As pointed out in #187518 , currently, `__builtin_isnormal` returns
`true` for subnormal half precision floating point numbers on `s390x.
This is because there is a custom lowering defined which lowers an `f16`
`IS_FPCLASS` ISD node by extending the `f16` value to `f32`, and then
using SystemZ's "test data class" instruction to determine whether the
number is subnormal. However, a number that is subnormal in 16 bits of
precision will no longer be subnormal in 32 bits of precision, and so
the test always returns true, i.e. all subnormal numbers are classified
as normal.
This PR addresses this by removing the custom lowering and instead
relying on the generic expansion of `IS_FPCLASS`, which does not have
this error.
Fixes #187518 .
Commit: 2566961cefad0aea6c9376ac7dcd7c09b00e7c7e
https://github.com/llvm/llvm-project/commit/2566961cefad0aea6c9376ac7dcd7c09b00e7c7e
Author: juan.vazquez <juvazq at google.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
Log Message:
-----------
[clang-tidy] use-after-move: Support null_after_move annotations (#186903)
Extend the bugprone-use-after-move check to recognize user defined
smart-pointer-like types that make guarantees on the state of a
moved-from object, leaving it in a valid and specified state that
matches the standard smart pointer's moved-from state (nullptr), where
it is safe to use but not dereference.
Following the RFC discussion:
* Use `[[clang::annotate]]` to mark the types.
* Use an schema for the `[[clang::annotate]]` annotation and arguments
to help avoid conflicts with other users of the attribute.
* The annotation will identify the tool ("clang-tidy") and the arguments
the plugin ("bugprone-use-after-move"), and the behavior of the type
("null_after_move"). E.g.:
`[[clang::annotate("clang-tidy", "bugprone-use-after-move",
"null_after_move")]]`
RFC:
https://discourse.llvm.org/t/rfc-add-a-class-attribute-clang-null-after-move-for-use-after-move-analysis/89760
Commit: 34bc5d580b73c0ca79653bb03e5c50419be2c634
https://github.com/llvm/llvm-project/commit/34bc5d580b73c0ca79653bb03e5c50419be2c634
Author: Fangrui Song <i at maskray.me>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
A clang/test/Misc/noexecstack.c
M clang/tools/driver/cc1as_main.cpp
M llvm/lib/MC/MCELFStreamer.cpp
R llvm/test/MC/ELF/noexec.s
A llvm/test/MC/ELF/noexecstack.s
M llvm/tools/llvm-mc/llvm-mc.cpp
Log Message:
-----------
[MC,clang] Fix -Wa,--noexecstack not emitting .note.GNU-stack (#187880)
AsmPrinter (clang -c a.c) and AsmParser (clang -c a.s, llvm-mc
-filetype=obj a.s) have different ways to emit .note.GNU-stack section.
913c5b4d1fff removed a redundant initSections call from cc1as, but
that was the only place where NoExecStack was consumed for the
assembler path.
Unify the .note.GNU-stack emission in MCELFStreamer::finishImpl,
making the `initSections` parameter redundant.
Add a -filetype=obj test for Solaris (see
https://reviews.llvm.org/D159179), which doesn't use .note.GNU-stack
`initSections` has 20+ uses. The parameter cleanup will be deferred to a
subsequent change.
Fixes https://github.com/llvm/llvm-project/issues/186004
Commit: 88f830aed8ac1ba116d31a41defeabf07a3a754c
https://github.com/llvm/llvm-project/commit/88f830aed8ac1ba116d31a41defeabf07a3a754c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/X86/deleted-inst-reduction-attempt.ll
Log Message:
-----------
[SLP]Do not try to reduced instruction, marked for deletion in previous attempts
Need to skip instructions, which were vectorized and marked for deletion
to prevent a compiler crash
Commit: 33a14cbe35c153ddf98b3d197e0a82ff083dc4b9
https://github.com/llvm/llvm-project/commit/33a14cbe35c153ddf98b3d197e0a82ff083dc4b9
Author: Kavin Gnanapandithan <kavin.balag at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
A llvm/test/CodeGen/RISCV/rv32-move-merge-crash.ll
Log Message:
-----------
[RISCV] Add guard to prevent GPRPair merge on targets without Zdinx or P (#186600)
Resolves #186527.
The issue points out that GPRPair merge logic in the RISCVMoveMerger
pass was being called on a target without `zdinx` or `experimental-P`,
triggering an unreachable in `getGPRPairCopyOpcode`.
This patch fixes this issue by guarding `isEvenRegisterCopy` and
`isOddRegisterCopy` to return false when neither Zdinx nor P is present.
Commit: 45039dfac472c31fc72d6ac56348f8c4352821b0
https://github.com/llvm/llvm-project/commit/45039dfac472c31fc72d6ac56348f8c4352821b0
Author: Alexandre Ganea <alex_toresh at yahoo.fr>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang/unittests/Analysis/CFGBackEdgesTest.cpp
Log Message:
-----------
[clang] On Windows, silence warning in `CFGBackEdgesTest` with MSVC (#187939)
This fixes:
```
[5804/7029] Building CXX object tools\clang\unittests\CMakeFiles\AllClangUnitTests.dir\Analysis\CFGBackEdgesTest.cpp.obj
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.44.35207\include\xutility(721): warning C4018: '>': signed/unsigned mismatch
...
C:\git\llvm-project\clang\unittests\Analysis\CFGBackEdgesTest.cpp(170): note: see the first reference to 'testing::internal::PredicateFormatterFromMatcher<testing::internal::SizeIsMatcher<testing::internal::GtMatcher<int>>>::operator ()' in 'clang::analysis::`anonymous-namespace'::CFGBackEdgesTest_WhileWithContinueLoop_Test::TestBody'
```
Commit: ca3d04561ba8686bb6dd094190a1f49f59ace652
https://github.com/llvm/llvm-project/commit/ca3d04561ba8686bb6dd094190a1f49f59ace652
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M .github/new-prs-labeler.yml
Log Message:
-----------
[llubi][Github] Add llubi labelling support (#187877)
So that one can easily subscribe to llubi PRs which are currently not
labelled at all.
Commit: ea489fe12ee994549a9e93e9762ae96a12f5d329
https://github.com/llvm/llvm-project/commit/ea489fe12ee994549a9e93e9762ae96a12f5d329
Author: Jakub Kuderski <jakub at nod-labs.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/PointerUnionBM.cpp
Log Message:
-----------
[llvm][ADT] Add PointerUnion benchmarks. NFC. (#187874)
Add microbenchmarks for `PointerUnion`'s `isa` and `isNull` operations
across union sizes of 2, 4, and 8 types. This it to establish baseline
performance numbers before making changes to the implementation.
I plan to refactor the implementation a bit and add support for more
variants using sparse encoding.
Co-authored-by: Claude Opus 4.6 (1M context) <noreply at anthropic.com>
Commit: c58f32215d492bf6fb7db6b7d83891783b108723
https://github.com/llvm/llvm-project/commit/c58f32215d492bf6fb7db6b7d83891783b108723
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/unittests/Target/SPIRV/BUILD.gn
Log Message:
-----------
[gn build] Port 78729251fbb2
Commit: 0e7a8ac6c15dd8df1592f310c5a3d7482ff4a870
https://github.com/llvm/llvm-project/commit/0e7a8ac6c15dd8df1592f310c5a3d7482ff4a870
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Core/BUILD.gn
M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysisFramework/BUILD.gn
Log Message:
-----------
[gn build] Port c6ba0e00161e
Commit: 651482267dc2934f107f69d1379c21574ef1ffa9
https://github.com/llvm/llvm-project/commit/651482267dc2934f107f69d1379c21574ef1ffa9
Author: Nico Weber <thakis at chromium.org>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
A llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysisFramework/Tool/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-format/BUILD.gn
M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn
Log Message:
-----------
[gn] port a2c0c436999
Commit: c079372099cf04de6c4ada5b6a1b5f61fc22aecd
https://github.com/llvm/llvm-project/commit/c079372099cf04de6c4ada5b6a1b5f61fc22aecd
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
Log Message:
-----------
[VPlan] Add m_VPPhi pattern matcher and use in removeDeadRecipes (NFC).
Add m_VPPhi to match VPPhi instructions with exactly 2 operands.
Split off from https://github.com/llvm/llvm-project/pull/156262.
Commit: b2ba79578b35f11759a856cf9dc7e66a46258206
https://github.com/llvm/llvm-project/commit/b2ba79578b35f11759a856cf9dc7e66a46258206
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/reduced-ordered-values-update.ll
M llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/insert-element-build-vector.ll
Log Message:
-----------
[SLP]Fix patterns for compile time blow up with ordered reductions
Excluded patterns, leading to compile time blow up for integer ordered
reductions.
Commit: 8d64f56892b539b312140e204e51fa16e747962d
https://github.com/llvm/llvm-project/commit/8d64f56892b539b312140e204e51fa16e747962d
Author: Jean-Christian CÎRSTEA <jean-christian.cirstea at tuta.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/Sema.cpp
A clang/test/SemaCXX/warn-maybe-unused-private-field.cpp
Log Message:
-----------
[Clang] Honour [[maybe_unused]] on private fields (#187940)
Before this commit, [[maybe_unused]] on private fields was ignored. In
conjunction with `-Wunused-private-field`, false warnings were emitted
by clang. This commit fixes this by checking if an unused private field
is annotated with [[maybe_unused]].
Commit: ce288f444102a0d8ca1c1223b4f85bf4d1b6300e
https://github.com/llvm/llvm-project/commit/ce288f444102a0d8ca1c1223b4f85bf4d1b6300e
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
M mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[MLIR][XeGPU] Add distribution patterns for vector insert & extract ops in sg to wi pass (#184665)
This PR adds patterns for following vector ops in the new sg-to-wi pass
1. ExtractOp
2. ExtractStridedSliceOp
3. InsertStridedSliceOp
4. InsertOp
Commit: 98f84f9bf2dfdf8a77c025303e594ede8336eb8e
https://github.com/llvm/llvm-project/commit/98f84f9bf2dfdf8a77c025303e594ede8336eb8e
Author: Hippolyte Melica <51196136+etyloppihacilem at users.noreply.github.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang/include/clang/Parse/Parser.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/Parser.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/test/CodeCompletion/cpp23-explicit-object.cpp
M clang/test/CodeCompletion/member-access.cpp
M clang/test/Index/complete-qualified.cpp
Log Message:
-----------
[clangd] Code completion for declaration of class method (#165916)
Code completion previously could not tell apart the declaration of
a method from a call to it, and provided call-like behaviour even
in declaration contexts. This included things like not offering
completion for private methods, and inserting placeholders for
the parameters as though the user was going to fill in arguments.
This patch adds support to Parser and SemaCodeComplete to
detect and provide dedicated behaviour for declaration contexts.
In these contexts, the flag CodeCompletionResult::DeclaringEntity
is set, and createCodeCompletionString() is adjusted to handle this
flag, e.g. by inserting parameter declarations as text chunks rather
than placeholder chunks.
The DeclaringEntity flag is also available for consumers of
SemaCodeComplete, such as clangd, to customize their behaviour.
In addition, the patch tweaks the conditions under which the
existing CodeCompletionResult::FunctionCanBeCall flag is set to
be more accurate, excluding declaration contexts and cases where
the address of the function is likely being taken.
Fixes clangd/clangd#753
Fixes clangd/clangd#880
Fixes clangd/clangd#1752
Commit: e1286d963eeba241e2b1b67f3b1e716dfab83d95
https://github.com/llvm/llvm-project/commit/e1286d963eeba241e2b1b67f3b1e716dfab83d95
Author: Colin He <50345320+CPlusMinus2000 at users.noreply.github.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp
Log Message:
-----------
[mlir] Deterministic containers in BytecodeWriter (#187819)
Iteration over use lists in writeUseListOrders is non-deterministic as a
result of using a DenseMap. Replacing with a Vector-backed `MapVector`
restores deterministic behaviour.
Commit: 7482655a6b57864cd8b94949a6eb0b2fa5621f4d
https://github.com/llvm/llvm-project/commit/7482655a6b57864cd8b94949a6eb0b2fa5621f4d
Author: Alexandre Ganea <alex_toresh at yahoo.fr>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang/lib/AST/TemplateBase.cpp
Log Message:
-----------
[clang] On Windows, silence warning when building with MSVC (#187937)
This fixes:
```
[2124/7029] Building CXX object tools\clang\lib\AST\CMakeFiles\obj.clangAST.dir\TemplateBase.cpp.obj
C:\git\llvm-project\clang\lib\AST\TemplateBase.cpp(753): warning C4312: 'reinterpret_cast': conversion from 'clang::SourceLocation::UIntTy' to 'clang::TemplateArgumentLocInfo::LocOrPointer' of greater size
```
Commit: 6dabcef0b3ffa0beadd426e0fd56c61c45b5b396
https://github.com/llvm/llvm-project/commit/6dabcef0b3ffa0beadd426e0fd56c61c45b5b396
Author: Twice <twice at apache.org>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
M mlir/python/mlir/dialects/ext.py
M mlir/test/python/dialects/ext.py
Log Message:
-----------
[MLIR][IRDL][Python] Fix error while composing `irdl.any_of` and `irdl.base` (#187914)
Previously, while users compose `irdl.any_of` and `irdl.base`, e.g.
```mlir
module {
irdl.dialect @ext_attr_in_op {
irdl.operation @op_with_attr {
%0 = irdl.base "#builtin.integer"
%1 = irdl.base "#builtin.string"
%2 = irdl.any_of(%0, %1)
irdl.attributes {"a" = %2}
}
}
}
```
The program will crash due to `llvm_unreachable("unknown IRDL
constraint")`.
This PR implements `getBases(..)` for `irdl::BaseOp` to make this work.
This make fields like `attr: IntegerAttr | StringAttr` work in
Python-defined dialects, which led to a crash previously.
Commit: 5567572c44a017fb6b27e5bec791aeb5eb1a5151
https://github.com/llvm/llvm-project/commit/5567572c44a017fb6b27e5bec791aeb5eb1a5151
Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
Log Message:
-----------
[clang-tidy][NFC] Remove optimized container implementations in `misc-no-recursion` (#187630)
About half of this check's code is dedicated to implementing a pair of
set containers with optimizations for when the element count is small.
But the check only uses these containers while constructing the warning
message. That's not generally a hot path in any check. Just to confirm,
I ran the check over `clang/lib/Sema/Sema.cpp` and all its included
headers before and after, and saw no performance difference. So, these
containers seem like a false optimization.
Commit: 076226f378df115622d0d959e975ee7c7fb3c051
https://github.com/llvm/llvm-project/commit/076226f378df115622d0d959e975ee7c7fb3c051
Author: Fangrui Song <i at maskray.me>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
Log Message:
-----------
[ELF] Separate relative and non-relative dynamic relocations (#187959)
Previously, the flow was:
1. Parallel scan adds relative relocs to per-thread `relocsVec`
2. `mergeRels()` copies all into `relocs`
3. `partitionRels()` uses `stable_partition` to separate
Now, relative relocs are routed at `addReloc` time by checking
`reloc.type == relativeRel`. In `mergeRels`, sharded entries are
classified through the same `addReloc` path rather than blindly
appended. `relocsVec` may contain non-relative entries like
`R_AARCH64_AUTH_RELATIVE`.
This eliminates the `stable_partition` on the full relocation vector
(543K entries for clang) and avoids copying relative relocations into
`relocs` only to move them out again.
Linking an x86_64 release+assertions build of clang is 1.04x as fast.
`numRelativeRelocs` caches `relativeRelocs.size()` at `finalizeContents`
time for `DT_RELACOUNT`. Using a live `relativeRelocs.size()` would
cause `DynamicSection::writeTo` to emit an extra entry when thunks add
relocs after `.dynamic` is sized, overflowing into adjacent sections.
Tested by ppc64-long-branch-rel14.s.
Commit: dc4df5da886e09d36577b3302952bc91b5e7e154
https://github.com/llvm/llvm-project/commit/dc4df5da886e09d36577b3302952bc91b5e7e154
Author: Fangrui Song <i at maskray.me>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/test/ELF/combreloc.s
Log Message:
-----------
[ELF] Always separate relative relocations regardless of -z combreloc (#187964)
Remove the combreloc guard from addReloc and mergeRels so that
relative relocations are always routed to relativeRelocs, even with -z
nocombreloc or --pack-dyn-relocs=android.
Update AndroidPackedRelocationSection::updateAllocSize to iterate
both relativeRelocs and relocs.
Commit: 5ef593b75010301528f665ddbe7d2999165b9238
https://github.com/llvm/llvm-project/commit/5ef593b75010301528f665ddbe7d2999165b9238
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
Log Message:
-----------
[clangd] [C++ Modules] Enable content validation for module input files (#187653)
The IsModuleFileUpToDate function was not properly validating input
files for C++20 modules. By default, ASTReader skips input file
validation for StandardCXXModule files unless
ForceCheckCXX20ModulesInputFiles and ValidateASTInputFilesContent are
both set.
This change:
- Passes ValidateASTInputFilesContent=true to ASTReader constructor
- Uses ARR_OutOfDate flag for cleaner error handling
- Simplifies the validation logic (ReadAST already validates internally)
- Adds a test to verify header changes in module units are detected
Assised with AI.
Commit: 98fe2fb67aed936dc6cedd03a93cab19901eda5e
https://github.com/llvm/llvm-project/commit/98fe2fb67aed936dc6cedd03a93cab19901eda5e
Author: Rick Gaiser <rgaiser at gmail.com>
Date: 2026-03-22 (Sun, 22 Mar 2026)
Changed paths:
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.h
M llvm/test/CodeGen/Mips/fcmp.ll
A llvm/test/CodeGen/Mips/r5900-fpu-compare.ll
A llvm/test/CodeGen/Mips/r5900-fpu-softfloat.ll
A llvm/test/MC/Mips/r5900-fpu.s
M llvm/test/MC/Mips/r5900-invalid.s
Log Message:
-----------
[Mips] Add r5900 (PlayStation 2 Emotion Engine) FPU Support (#178942)
This PR adds basic FPU support for the MIPS R5900 processor used in the
PlayStation 2 Emotion Engine. The R5900 has a non-standard
single-precision-only FPU with limited functionality compared to
standard MIPS FPUs. Just like the previous r5900 PR, only existing
instructions are used to implement basic support first.
## Changes
### Infrastructure for single-precision-only FPU (ce13ddea7bc7)
- Add `isSingleFloat()` method to MipsAsmParser
- Add `SINGLE` FpABIKind to MipsABIFlagsSection
- Properly set CPR1Size and FpABI for single-float mode
- Exclude double-precision PseudoCVT instructions when using
single-float
### R5900 FPU support (13032c4d55b2)
- Switch R5900 from soft-float to single-float mode
- Implement R5900-specific FPU lowering with limited compare conditions
- Use CVT.W.S instead of TRUNC.W.S for FP-to-int conversion (R5900 lacks
TRUNC)
- Add test coverage for R5900 FPU instructions and comparisons
### Invalidate unsupported FPU instructions (ee4222711dab)
- Add predicates to exclude FPU instructions not supported by the R5900
- Add `C_COND_NOTR5900_M` multiclass for unsupported compare conditions
- Add `ISA_MIPS2_NOT_R5900` predicate for ROUND/TRUNC/CEIL/FLOOR.W.S
- Add test coverage for invalid R5900 FPU instructions
## R5900 FPU Limitations
The R5900 FPU differs from standard MIPS FPUs in several ways:
| Feature | Standard MIPS | R5900 |
|---------|---------------|-------|
| Precision | Single + Double | Single only |
| Compare conditions | 16 | 4 (C.F, C.EQ, C.LT, C.LE) |
| Rounding instructions | ROUND/TRUNC/CEIL/FLOOR.W.S | None (use
CVT.W.S) |
## Test Plan
- [x] Added `llvm/test/MC/Mips/r5900-fpu.s` - tests valid R5900 FPU
instructions
- [x] Added `llvm/test/MC/Mips/r5900-invalid.s` - tests rejection of
unsupported instructions
- [x] Added R5900 FPU comparison tests in
`llvm/test/CodeGen/Mips/fcmp.ll`
Commit: 95c906a31c451f273c2d4b2aca0ac4494c06ae98
https://github.com/llvm/llvm-project/commit/95c906a31c451f273c2d4b2aca0ac4494c06ae98
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang-tools-extra/clangd/ModulesBuilder.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
Log Message:
-----------
[clangd] [C++ Modules] Fix handling of relative paths in prebuilt mod… (#187654)
…ule files
When compile_commands.json contains relative paths in -fmodule-file=
arguments (as generated by CMake), clangd failed to find the BMI files
because it was looking for them relative to the wrong working directory.
This patch fixes the issue by converting relative paths to absolute
paths based on the compilation directory (CompileCommand.Directory)
before checking if the module file exists and is up to date.
Added a unit test that verifies the fix works correctly.
AI Assisted
Commit: c911b8492374942bf4cfe35411e90a35d3837f6a
https://github.com/llvm/llvm-project/commit/c911b8492374942bf4cfe35411e90a35d3837f6a
Author: Zeyi Xu <mitchell.xu2 at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang-tools-extra/docs/clang-tidy/checks/misc/multiple-inheritance.rst
Log Message:
-----------
[clang-tidy][NFC] Remove guidelines in documentation of misc-multiple-inheritance (#186657)
Closes https://github.com/llvm/llvm-project/issues/186058
Commit: 036b755daedb3b45b750d85493b1a93de8bafb8e
https://github.com/llvm/llvm-project/commit/036b755daedb3b45b750d85493b1a93de8bafb8e
Author: Fangrui Song <i at maskray.me>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M lld/ELF/Writer.cpp
Log Message:
-----------
[ELF] Parallelize demoteAndCopyLocalSymbols. NFC (#187970)
Use parallelFor to process files in parallel, collecting Symbol*
pointers per-file, then merge into the symbol table serially.
Linking clang-14 (208K .symtab entries) is 1.04x as fast.
Commit: 054e11d1a17e5ba88bb1a8ef32fad3346e80b186
https://github.com/llvm/llvm-project/commit/054e11d1a17e5ba88bb1a8ef32fad3346e80b186
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Program.cpp
M clang/test/AST/ByteCode/lambda.cpp
Log Message:
-----------
[clang][bytecode] Create descriptor for invalid record fields (#187311)
We otherwise refuse to register the Record for the RecordDecl entirely.
Commit: 5efb3dd026f0c592eef40b97c4e92fcc8b9828a7
https://github.com/llvm/llvm-project/commit/5efb3dd026f0c592eef40b97c4e92fcc8b9828a7
Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
Log Message:
-----------
[AMDGPU] DPP implementations for Wave Reduction (#187214)
Add support for DPP wave reduction for floating
point numbers.
Supported Ops: `fmin`, `fmax`, `fadd`, `fsub`.
Commit: 4bd9b1c0c9136e24a9b14ddba5a50ee9a1bdde09
https://github.com/llvm/llvm-project/commit/4bd9b1c0c9136e24a9b14ddba5a50ee9a1bdde09
Author: Alexandre Ganea <alex_toresh at yahoo.fr>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/Format/WhitespaceManager.cpp
Log Message:
-----------
[clang] Silence warning in `WhitespaceManager` when building with MSVC (#187938)
This fixes:
```
[4544/7029] Building CXX object tools\clang\lib\Format\CMakeFiles\obj.clangFormat.dir\WhitespaceManager.cpp.obj
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveColons'::`2'::<lambda_1> &,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveShortCaseStatements'::`2'::<lambda_1> &,3>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveDeclarations'::`2'::<lambda_1> &,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveAssignments'::`2'::<lambda_1> &,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveMacros'::`2'::<lambda_1> &,1>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignChainedConditionals'::`7'::<lambda_3> &,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveColons'::`2'::<lambda_1>,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveAssignments'::`2'::<lambda_1>,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignChainedConditionals'::`5'::<lambda_1> &,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveDeclarations'::`2'::<lambda_1>,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignChainedConditionals'::`5'::<lambda_1>,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignConsecutiveShortCaseStatements'::`2'::<lambda_1> &,2>'::`4'::<lambda_2>::operator()': not all control paths return a value
C:\git\llvm-project\clang\lib\Format\WhitespaceManager.cpp(640) : warning C4715: '`clang::format::AlignTokens<`clang::format::WhitespaceManager::alignChainedConditionals'::`7'::<lambda_3>,0>'::`4'::<lambda_2>::operator()': not all control paths return a value
```
Commit: 4754d24f7bbb93e7084e5329db6555e798065cd8
https://github.com/llvm/llvm-project/commit/4754d24f7bbb93e7084e5329db6555e798065cd8
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/lib/Analysis/DependenceAnalysis.cpp
Log Message:
-----------
[DA] Extract negating dependence logic (NFCI) (#185576)
Extract the logic to negate the dependence object from
`Dependence::normalize`. The extracted method will be used in the next
PR #185577 to refactor the Weak Zero SIV tests.
Commit: 69594b76f2ecb2ee254ccb5b9f9f02ca76931630
https://github.com/llvm/llvm-project/commit/69594b76f2ecb2ee254ccb5b9f9f02ca76931630
Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/Bindings/Python/IRAttributes.h
M mlir/include/mlir/Bindings/Python/IRCore.h
M mlir/lib/Bindings/Python/IRAttributes.cpp
M mlir/lib/Bindings/Python/IRCore.cpp
Log Message:
-----------
[MLIR] [Python] A few minor fixes to type annotations (#187956)
* ir.IntegerAttr.value is now an int
* ir.Value.type correctly returns a value of type _T
* ir.OpView.build_generic returns ir.Operation, which matches the
implementation.
Commit: a17b132a42c93e20fe07c410cb06bd56930b82bf
https://github.com/llvm/llvm-project/commit/a17b132a42c93e20fe07c410cb06bd56930b82bf
Author: Michael Spencer <bigcheesegs at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/Support/FileSystem.h
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/unittests/Support/Path.cpp
Log Message:
-----------
[llvm][support] Refactor symlink handling and add readlink (#184256)
This adds a portable `readlink` function, and adds `create_symlink` to
enable testing this on Windows. `create_link` previously created a hard
link on Windows, but it now tries to create a symlink first.
The Windows implementation is based on posix_compat.h from libc++.
Assisted-by: claude-opus-4.6
Commit: 4b084f23bac39343d93ec91369efb2027d9fa153
https://github.com/llvm/llvm-project/commit/4b084f23bac39343d93ec91369efb2027d9fa153
Author: owenca <owenpiano at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/Format/TokenAnnotator.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
Log Message:
-----------
[clang-format] Fix regression in annotating angles in static_assert (#187966)
Fixes #187936
Commit: 5dcda94b163eab26a75a27529ff3894dc41dc235
https://github.com/llvm/llvm-project/commit/5dcda94b163eab26a75a27529ff3894dc41dc235
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
M clang/test/AST/ByteCode/records.cpp
Log Message:
-----------
[clang][bytecode] Handle missing DynamicDecl in CallVirt (#187980)
Don't return true from getDynamicDecl() if the returned DynamicDecl is
null.
Commit: 922e916350f272bbc47d271c832051f4b0531b67
https://github.com/llvm/llvm-project/commit/922e916350f272bbc47d271c832051f4b0531b67
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/arrays.cpp
Log Message:
-----------
[clang][bytecode] Handle discarded OpaqueValueExpr (#187982)
... if they are already cached.
Commit: 9687ef36938922dcfa02d90a118b6675bcf3aefd
https://github.com/llvm/llvm-project/commit/9687ef36938922dcfa02d90a118b6675bcf3aefd
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-23 (Mon, 23 Mar 2026)
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/avx512fintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
Log Message:
-----------
[clang][x86] Allow AVX512 expand intrinsics to be used in constexpr (#187946)
Fixes #163734
Commit: cda88c253cbdc832c798cd36cd7670d359ee71bb
https://github.com/llvm/llvm-project/commit/cda88c253cbdc832c798cd36cd7670d359ee71bb
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtins.c
Log Message:
-----------
[clang][bytecode] Check for block pointers in __builtin_strlen() (#187988)
Commit: d7059572eb721a30c925ed6dfe573fe0d5ed36d9
https://github.com/llvm/llvm-project/commit/d7059572eb721a30c925ed6dfe573fe0d5ed36d9
Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A clang/include/clang/Basic/AArch64CodeGenUtils.h
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
Log Message:
-----------
[clang][Neon] Extract code shared by classic and CIR codegen (NFC) (#186448)
Extract intrinsic maps shared by the classic and CIR codegen into a new
header, AArch64CodeGenUtils.h, which is reused by both. This keeps the
implementations in sync and avoids code duplication.
The maps are moved without modification. The accompanying code (e.g.
`ARMVectorIntrinsicInfo`) is updated to follow Clang coding style
(CamelCase instead of the camelCase used in CIR).
Commit: 252eb2a743f56f1f34048d8c311bad6037052232
https://github.com/llvm/llvm-project/commit/252eb2a743f56f1f34048d8c311bad6037052232
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
A flang/test/Fir/bitcast-fold.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
Log Message:
-----------
[flang][FIR] add a new fir.bitcast operation (#187793)
This patch introduces a new bitcast operation for integer, float,
character, and logical.
The main rational for it is that it is currently not possible to express
such bitcast in FIR without going trough memory and there is a need to
have some bitcast support when interfacing with the memref dialect where
one cannot use fir.char<> and fir.logical and must use the underlying
storage type. Using fir.convert is not a good idea because it is a
semantic cast and it will for instance normalize integers when
converting from/to logical.
This could also be used to simplify the implementation of TRANSFER for
the cases of simple scalars of those types.
Assisted by: Claude
Commit: 66afa8fd9017bd5bc6aab5d60522a94c8394091e
https://github.com/llvm/llvm-project/commit/66afa8fd9017bd5bc6aab5d60522a94c8394091e
Author: bala-bhargav <penugondabalabharghav at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
A llvm/test/CodeGen/X86/x86-fp80-ret-no-x87.ll
Log Message:
-----------
[X86] Emit user-friendly error for x86_fp80 with x87 disabled on x86_64 (#183932)
When compiling a function that uses `x86_fp80` on x86_64 with x87 disabled (`-mattr=-x87`), LLVM crashes with a cryptic internal error.
Fixes #182450
Commit: 3fa88f0846b21503f0a14689a2696b979dd25c5d
https://github.com/llvm/llvm-project/commit/3fa88f0846b21503f0a14689a2696b979dd25c5d
Author: Hocky Yudhiono <hocky.yudhiono at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
M mlir/test/Dialect/Tensor/canonicalize.mlir
Log Message:
-----------
[mlir][tensor] Fix empty tensor with cast encoding fold (#187963)
Fixed a todo where empty tensor with cast fold can't fold encoding or
attributes.
Commit: de514fbaba35833a195f5d338ac326114471ab10
https://github.com/llvm/llvm-project/commit/de514fbaba35833a195f5d338ac326114471ab10
Author: Shanzhi Chen <chenshanzhi at huawei.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Profile/DataReader.cpp
Log Message:
-----------
[BOLT] Remove some unused code (NFC) (#183880)
Remove some unused code in BOLT:
- `RewriteInstance::linkRuntime` is declared but not defined
- `BranchContext` typedef is never used
- `FuncBranchData::getBranch` is defined but never used
- `FuncBranchData::getDirectCallBranch` is defined but never used
Commit: bb86440c60a5c0e993c8dcdfded75d15881be294
https://github.com/llvm/llvm-project/commit/bb86440c60a5c0e993c8dcdfded75d15881be294
Author: Tom <41913303+t-a-james at users.noreply.github.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
Log Message:
-----------
[clang-tidy] Correctly ignore function templates in derived-method-shadowing-base-method (#185741) (#185875)
This commit fixes a false positive in the
derived-method-shadowin-base-method clang-tidy check, as described in
[ticket 185741](https://github.com/llvm/llvm-project/issues/185741)
Fixes #185741
---------
Co-authored-by: Tom James <tom.james at siemens.com>
Co-authored-by: Zeyi Xu <mitchell.xu2 at gmail.com>
Commit: 0d6185e9ebaadf0780110b724d7f2d0bef419dfb
https://github.com/llvm/llvm-project/commit/0d6185e9ebaadf0780110b724d7f2d0bef419dfb
Author: Diana Picus <Diana-Magda.Picus at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
Log Message:
-----------
[AMDGPU] Update test to match comment. NFC (#187273)
The comment says there shouldn't be any free registers, so update the
inline assembly to clobber all non-preserved SGPRs.
Commit: 85ab2a9706b68272d5413f660a4de978752044ee
https://github.com/llvm/llvm-project/commit/85ab2a9706b68272d5413f660a4de978752044ee
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
Log Message:
-----------
[AsmPrinter] Add generic support for verifying instruction sizes (#187703)
Many backends rely on TII reporting correct instruction sizes for MIR
level branch relaxation passes. Reporting a too small size can result in
MC fixup failures (or silent miscompiles for unvalidated fixups).
Some time ago I added validation to the PPC asm printer to verify that
the TII instruction size matches the actually emitted size. This was
very helpful to systematically fix all incorrectly reported instruction
sizes.
However, the same problem also exists in lots of other backends, so this
moves the validation into AsmPrinter, controlled by a new
getInstSizeVerifyMode() hook in TII, which is disabled by default.
The intention here is to gradually enable this validation for more
backends (which requires fixing them first).
Commit: 7c6996fc8fff8a24290b52b90ead246c7afdce65
https://github.com/llvm/llvm-project/commit/7c6996fc8fff8a24290b52b90ead246c7afdce65
Author: Max Graey <maxgraey at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/ValueTypes.h
M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
Log Message:
-----------
[ValueType][NFC] Add widenIntegerElementType method (#187816)
Fixes #187805
Commit: ac795f0b0b3ba4a5cb3c1b9325b92e130814809b
https://github.com/llvm/llvm-project/commit/ac795f0b0b3ba4a5cb3c1b9325b92e130814809b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
Log Message:
-----------
[clang][bytecode] Create fewer pointers in __builtin_nan() (#187990)
Check the elements directly for initialization state and keep track of
whether we found a NUL byte.
Commit: d6373b4ceb0541f387b903d245a178df8bda9ef8
https://github.com/llvm/llvm-project/commit/d6373b4ceb0541f387b903d245a178df8bda9ef8
Author: Matthias Springer <me at m-sp.org>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
M mlir/test/Dialect/LLVMIR/roundtrip.mlir
M mlir/test/Target/LLVMIR/Import/intrinsic.ll
M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
Log Message:
-----------
[mlir][LLVM] Add more `llvm.intr.experimental.constrained.*` ops (#187948)
Add additional "constrained" intrinsic ops. A rounding mode can be
specified for these ops.
Assisted by: claude-4.6-opus-high
Commit: 1a9fe1769a0f9684dc9ecfcb7a2cec2d66077cc3
https://github.com/llvm/llvm-project/commit/1a9fe1769a0f9684dc9ecfcb7a2cec2d66077cc3
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M libclc/clc/include/clc/math/remquo_decl.inc
A libclc/clc/include/clc/shared/binary_with_out_arg_scalarize.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_remquo.inc
A libclc/clc/lib/generic/math/clc_remquo_stret.inc
Log Message:
-----------
libclc: Update remquo (#187998)
This was failing in the float case without -cl-denorms-are-zero
and failing for double. This now passes in all cases.
This was originally ported from rocm device libs in
8db45e4cf170cc6044a0afe7a0ed8876dcd9a863. This is mostly a port
in of more recent changes with a few changes.
- Templatification, which almost but doesn't quite enable
vectorization yet due to the outer branch and loop.
- Merging of the 3 types into one shared code path, instead of
duplicating per type with 3 different functions implemented together.
There are only some slight differences for the half case, which mostly
evaluates as float.
- Splitting out of the is_odd tracking, instead of deriving it from the
accumulated quotient. This costs an extra register, but saves several
instructions. This also enables automatic elimination of all of the quo
output handling when this code is reused for remainder. I'm guessing
this would be unnecessary if SimplifyDemandedBits handled phis.
- Removal of the slow FMA path. I don't see how this would ever be
faster with the number of instructions replacing it. This is really a
problem for the compiler to solve anyway.
Commit: befad798a91ef8c74f605bdb15c352528f8d9807
https://github.com/llvm/llvm-project/commit/befad798a91ef8c74f605bdb15c352528f8d9807
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M libclc/clc/lib/generic/math/clc_remainder.cl
A libclc/clc/lib/generic/math/clc_remainder.inc
Log Message:
-----------
libclc: Implement remainder with remquo
(#187999)
This fixes conformance failures for double and
without -cl-denorms-are-zero. Optimizations are
able to eliminate the unusued quo handling without
duplicating most of the code.
Commit: 2ab8924c5377d113bf6dc55d6e55c0490be94a18
https://github.com/llvm/llvm-project/commit/2ab8924c5377d113bf6dc55d6e55c0490be94a18
Author: Baranov Victor <bar.victor.2002 at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/deque
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/forward_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/functional
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/queue
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/set
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/stack
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/tuple
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_set
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/utility
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/vector
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/trailing-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-structured-binding/fake_std_pair_tuple.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-structured-binding.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-transparent-functors.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
Log Message:
-----------
[clang-tidy][NFC] Use universal containers mock (#186669)
Changes are quite big but most of them is just copypasting and creating
mocks.
Commit: 9426fc19afb106ff964a43ab7f3c7a0be940111c
https://github.com/llvm/llvm-project/commit/9426fc19afb106ff964a43ab7f3c7a0be940111c
Author: Lukacma <Marian.Lukac at arm.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/test/CodeGen/arm64-microsoft-sys.c
M clang/test/Sema/builtins-microsoft-arm64.c
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
A llvm/test/CodeGen/AArch64/aarch64-sys-intrinsic.ll
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-misc-instructions.s
Log Message:
-----------
[AArch64] Fix _sys implemantation and MRS/MSR Sema checks (#187290)
This patch fixes lowering of _sys builtin, which used to lower into
invalid MSR S1... instruction. This was fixed by adding new sys llvm
intrinsic and proper lowering into sys instruction and its aliases.
I also fixed the sema check for _sys, _ReadStatusRegister and
_WriteStatusRegister builtins so they correctly capture invalid
usecases.
Commit: 9fa53a818ba34c8d749a326c8884f394c3c02414
https://github.com/llvm/llvm-project/commit/9fa53a818ba34c8d749a326c8884f394c3c02414
Author: Shanzhi Chen <chenshanzhi at huawei.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
Log Message:
-----------
[AArch64] Combine cases with the same code in `expandMOVImm` (NFC) (#187843)
Combine cases for `ORRWri`, `ORRXri`, `ANDXri` and `EORXri` in
`AArch64ExpandPseudoImpl::expandMOVImm`, because these cases are handled
with exactly the same code.
Commit: 94b222bec71a46c3f3aa11169f0a7638779d1fe1
https://github.com/llvm/llvm-project/commit/94b222bec71a46c3f3aa11169f0a7638779d1fe1
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
Log Message:
-----------
[GlobalISel] Add `widenScalarFor()` function (#187731)
The function is mentioned in `Legalizer.rst` but has been missing. This
also fixes the asymetry between `narrowScalarXXX()` that has both
`narrowScalarFor()` and `narrowScalarIf()`, and `widenScalarXXX()` that
only had `widenScalarIf()`.
Commit: e3c287ffc53eaaf63817be228901af2acc88c516
https://github.com/llvm/llvm-project/commit/e3c287ffc53eaaf63817be228901af2acc88c516
Author: Jay Foad <jay.foad at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIInstrInfo.h
A llvm/test/CodeGen/AMDGPU/insert-skips-gfx1250.mir
M llvm/test/CodeGen/AMDGPU/vgpr-set-msb-coissue.mir
Log Message:
-----------
[AMDGPU] Handle S_WAIT_XCNT in SIInstrInfo::isWaitcnt (#187726)
This affects the behavior of SIPreEmitPeephole and
AMDGPULowerVGPREncoding.
Commit: 00f8ed1eb5152817d62e254d5f5205a15388e0a6
https://github.com/llvm/llvm-project/commit/00f8ed1eb5152817d62e254d5f5205a15388e0a6
Author: Gergo Stomfai <stomfaig at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-div.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-identity.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-lshr.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-mul.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-or.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-ptr-add.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-rem.mir
A llvm/test/CodeGen/X86/GlobalISel/prelegalizer-combiner-sub.mir
Log Message:
-----------
[X86][Gisel] add trivial arith tests for gisel x86-prelegalizer-combiner (#183544)
Commit: 249b08654549abcafc39119fffe567cd5f4c6b39
https://github.com/llvm/llvm-project/commit/249b08654549abcafc39119fffe567cd5f4c6b39
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-replicate-extends.ll
Log Message:
-----------
[LV] Fix crash when extends are not widened in partial reduction matching (#187782)
Fixes https://github.com/llvm/llvm-project/pull/185821#issuecomment-4098933551
Commit: dcaab6dd99a33edbf98ad1ade0ea0d196b797910
https://github.com/llvm/llvm-project/commit/dcaab6dd99a33edbf98ad1ade0ea0d196b797910
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
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/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/test/AST/ByteCode/constexpr-steps.cpp
Log Message:
-----------
[clang][bytecode] Add source info to jump ops (#188003)
The attached test case otherwise results in a function with one jump op
but no source info at all.
Commit: f1d4dda8045fd3361bc34d0779567381ab72fea4
https://github.com/llvm/llvm-project/commit/f1d4dda8045fd3361bc34d0779567381ab72fea4
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
Log Message:
-----------
[AMDGPU] Use s_cvt_i32/u32_f32 instructions for saturated uniform conversions (#187711)
We attempt to select `s_cvt_i32/u32_f32` where possible, with some
considerations:
* For `f64` default to `v_` instructions as there is no support for
`f64` in SALU.
* For `f16` to `i16` select `v_cvt_i16/u16_f16` which is consistent with
non-saturating conversions behavior. However we could emit
`s_cvt_f32_f16` followed by `s_cvt_i32/u32_f32` to keep the computation
in SALU, as SALU does not have `s_cvt_i16_f16`. Happy to look into it if
beneficial.
* When it comes to clamping, ISel turns min and max sequence into
`v_med3` with `v0` destination, whereas globalisel keeps min and max as
`s_min` and `s_max` and then moves the result into `v0`, as lit tests
expect the return value to be in `v0` in both cases. This is unrelated
to this change but I thought it is worth highlighting.
Commit: 733bc3409be7e6f97719d3eb5c150b239e99c22f
https://github.com/llvm/llvm-project/commit/733bc3409be7e6f97719d3eb5c150b239e99c22f
Author: Ádám Kallai <kadam at inf.u-szeged.hu>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
Log Message:
-----------
[BOLT][Perf2bolt] Add support to generate pre-parsed perf data (#171144)
Adding a generator into Perf2bolt is the initial step to support the
large end-to-end tests for Arm SPE. This functionality proves unified format of
pre-parsed profile that Perf2bolt is able to consume.
Why does the test need to have a textual format SPE profile?
* To collect an Arm SPE profile by Linux Perf, it needs to have
an arm developer device which has SPE support.
* To decode SPE data, it also needs to have the proper version of
Linux Perf.
* The minimum required version of Linux Perf is v6.15.
Bypassing these technical difficulties, that easier to prove
a pre-generated textual profile format.
The generator relies on the aggregator work to spawn the required
perf-script jobs based on the the aggregation type, and merges the
results of the pref-script jobs into a single file.
This hybrid profile will contain all required events such as BuildID,
MMAP, TASK, BRSTACK, or MEM event for the aggregation.
Two examples below how to generate a pre-parsed perf data as
an input for ARM SPE aggregation:
`perf2bolt -p perf.data BINARY -o perf.text --spe
--generate-perf-script`
Or for basic aggregation:
`perf2bolt -p perf.data BINARY -o perf.text --ba --generate-perf-script`
Commit: bd6e8a8c66f73d35fb9ead04767b81938c05eaf4
https://github.com/llvm/llvm-project/commit/bd6e8a8c66f73d35fb9ead04767b81938c05eaf4
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M polly/lib/External/isl/GIT_HEAD_ID
M polly/lib/External/isl/isl_map.c
M polly/lib/External/isl/isl_tab.c
M polly/lib/External/isl/isl_tab_pip.c
Log Message:
-----------
[Polly] Update isl to isl-0.27-89-gdc16f8e3 (#188013)
Update isl to include
https://repo.or.cz/isl.git/commit/ee3677039011f2f87f3630f8b2a004f9e4944a08
which fixes #187216
Closes #187216
Thanks @skimo-openhub for the fix and @thapgua for the bugreport.
Commit: 621fc8774ea5dca4712e09340f8d9b2ed4b99d8a
https://github.com/llvm/llvm-project/commit/621fc8774ea5dca4712e09340f8d9b2ed4b99d8a
Author: michaelselehov <michael.selehov at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/copy-to-reg.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
A llvm/test/CodeGen/AMDGPU/lsr-cost-model-vector-iv.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-loop-var-out-of-divergent-loop-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/machine-sink-temporal-divergence-swdev407790.ll
M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
M llvm/test/CodeGen/AMDGPU/uniform-cfg.ll
M llvm/test/CodeGen/AMDGPU/valu-i1.ll
M llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-pattern.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/atomics.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/different-addrspace-addressing-mode-loops.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/lsr-invalid-ptr-extend.ll
M llvm/test/Transforms/LoopStrengthReduce/AMDGPU/preserve-addrspace-assert.ll
Log Message:
-----------
[AMDGPU] Implement LSR cost model for GFX9+ (#184138)
AMDGPU previously had no target-specific LSR cost model, so the generic
heuristic would often introduce extra induction variables and base-add
chains that hurt VALU throughput on GFX9+ (observed on gfx942).
Implement a custom cost model:
- isLSRCostLess(): prioritize per-iteration instruction count over setup
costs, penalize IV multiplies, and demote register count. Pre-GFX9 falls
back to the default comparator.
- getScalingFactorCost(): report that base+scale*index addressing
requires an extra ADD instruction.
- isNumRegsMajorCostOfLSR(): return false.
- shouldDropLSRSolutionIfLessProfitable(): return true.
Assisted-by: Claude Opus
Commit: 69fb96ba659fba8a720bcfa2b102182367fc63c6
https://github.com/llvm/llvm-project/commit/69fb96ba659fba8a720bcfa2b102182367fc63c6
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
R clang/test/AST/ByteCode/builtin-align-cxx.cpp
M clang/test/SemaCXX/builtin-align-cxx.cpp
Log Message:
-----------
[clang][bytecode] __builtin_is_aligned needs a declaration (#188011)
Reject pointers to expressions.
Also remove the bytecode version of this test.
Commit: 6491750a871c660832ef219177b80dd1e559837d
https://github.com/llvm/llvm-project/commit/6491750a871c660832ef219177b80dd1e559837d
Author: David Truby <david.truby at arm.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M flang-rt/lib/runtime/file.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
Log Message:
-----------
[flang-rt] Fix file opening in APPEND mode on Windows (#186144)
Commit: 2e2600cb765eabe899837d3c446f5f7ed2a12a49
https://github.com/llvm/llvm-project/commit/2e2600cb765eabe899837d3c446f5f7ed2a12a49
Author: hev <wangrui at loongson.cn>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr.ll
Log Message:
-----------
[LoongArch] Add tests for VPICK_ZEXT_ELT zero-extension known bits (#187176)
Commit: 3330ca954e466a09ce20e7aa1dcb71909eba6081
https://github.com/llvm/llvm-project/commit/3330ca954e466a09ce20e7aa1dcb71909eba6081
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
M mlir/test/Conversion/ConvertToSPIRV/vector.mlir
M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
M mlir/test/Dialect/Vector/invalid.mlir
Log Message:
-----------
[MLIR][Vector] Remove implicit bitcast behavior from vector.extract (#186383)
Drop the `isCompatibleReturnTypes` override on `ExtractOp` that allowed
`vector.extract` to return a `vector<1xT>` when the natural inferred
return type is scalar `T` (and vice versa). Switch the op from
`InferTypeOpAdaptorWithIsCompatible` to `InferTypeOpAdaptor` to match.
RFC:
https://discourse.llvm.org/t/rfc-remove-implicit-bitcast-behavior-of-vector-extract/90178
Commit: 3011d68a7810ff25653c33ff0389fae9413a26a7
https://github.com/llvm/llvm-project/commit/3011d68a7810ff25653c33ff0389fae9413a26a7
Author: hev <wangrui at loongson.cn>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A llvm/test/CodeGen/LoongArch/lsx/remat.ll
Log Message:
-----------
[LoongArch] Add tests for VREPLGR2VR/XVREPLGR2VR rematerialization (#187430)
Commit: b3927c06b5648efbb927357207d04500e00e35a2
https://github.com/llvm/llvm-project/commit/b3927c06b5648efbb927357207d04500e00e35a2
Author: Fady Farag <com.webkit.iidmsa at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/test/AST/ast-crash-doc-function-template.cpp
Log Message:
-----------
[clang][test] Add missing FileCheck pipe in ast-crash-doc-function-template.cpp (#187969)
The test had a CHECK directive that was never executed because the RUN
line did not pipe output to FileCheck.
Commit: 986daded95eb8c15a1a5d0db8be67e99bd5aece3
https://github.com/llvm/llvm-project/commit/986daded95eb8c15a1a5d0db8be67e99bd5aece3
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx-vperm2x128.ll
M llvm/test/CodeGen/X86/bitcnt-big-integer.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-8.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-5.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-7.ll
M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
M llvm/test/CodeGen/X86/vector-pack-512.ll
M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
M llvm/test/CodeGen/X86/vector-shuffle-combining.ll
M llvm/test/CodeGen/X86/vector-shuffle-v192.ll
Log Message:
-----------
[X86] combineX86ShufflesRecursively - decode insert_subvector(undef, x, c) as shuffle if c != 0 (#188021)
Allows us to combine non-free subvector widening patterns into the
shuffle chain - combineX86ShufflesRecursively already peeks through free
cases where c == 0
Removes some unnecessary shuffles reported on #187447 for v2i256 cases
Commit: bb3f2bc86ca2dcd0c8688edd989055e0025c3554
https://github.com/llvm/llvm-project/commit/bb3f2bc86ca2dcd0c8688edd989055e0025c3554
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Affine/Utils/Utils.cpp
M mlir/test/Dialect/Affine/pipeline-data-transfer.mlir
Log Message:
-----------
[MLIR][Affine] Fix crash in replaceAllMemRefUsesWith when replacement fails (#186282)
When the multi-user overload of `replaceAllMemRefUsesWith` iterates over
collected ops and calls the single-op overload, the single-op version
can legitimately fail (e.g., when the op uses the same memref in
multiple incompatible roles, such as both source and tag in
`affine.dma_start`). The code previously called `llvm_unreachable` in
this case, causing a crash.
Fix by propagating the failure via `return failure()` instead.
Fixes #60021
Assisted-by: Claude Code
Commit: b16f6da50b3b730abf8eb68ba68ba0cf71d29c34
https://github.com/llvm/llvm-project/commit/b16f6da50b3b730abf8eb68ba68ba0cf71d29c34
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
M mlir/test/Dialect/Affine/memref-dependence-check.mlir
Log Message:
-----------
[mlir][affine] Fix crash in addAffineParallelOpDomain with min/max bounds (#184130)
`addAffineParallelOpDomain` checked `isConstant()` on the per-IV bound
maps of `affine.parallel`, then called `getSingleConstantResult()`.
However, `isConstant()` returns true for maps with *any* number of
constant results, while `getSingleConstantResult()` asserts exactly one.
When an `affine.parallel` has a multi-result bound (e.g., `to (min(128,
122))`), the per-IV upper bound map has two results `{128, 122}`, so
`isConstant()` is true but the subsequent `getSingleConstantResult()`
call aborts.
Fix by using `isSingleConstant()` (which requires exactly one result)
instead. Multi-result constant maps (min/max with all-constant
alternatives) are then handled by the general `addBound` path, which
correctly models the min/max semantics as multiple constraints.
Fixes #61734
Assisted-by: Claude Code
Commit: fdd00d2555a7d9a7c4d6c5c52e90bc5c157bd01f
https://github.com/llvm/llvm-project/commit/fdd00d2555a7d9a7c4d6c5c52e90bc5c157bd01f
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
M clang/test/SemaTemplate/stack-exhaustion.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
Log Message:
-----------
[clang][bytecode] Use tailcalls via `[[clang::musttail]]` (#173756)
This PR attempts to use a tailcall design for the bytecode interpreter
instead of the giant-switch design, similar to [what Python has been
doing](https://blog.reverberate.org/2025/02/10/tail-call-updates.html).
Using the two benchmarks from
https://developers.redhat.com/articles/2025/10/15/clang-bytecode-interpreter-update,
I get these numbers:
```
-- Sqlite
BASELINE:
Benchmark 1: bin/clang++ -c -std=c++26 sqlite.cpp -fconstexpr-steps=1000000000
Time (mean ± σ): 18.197 s ± 0.370 s [User: 17.926 s, System: 0.269 s]
Range (min … max): 17.657 s … 19.215 s 30 runs
BEFORE:
Benchmark 1: bin/clang++ -c -std=c++26 sqlite.cpp -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
Time (mean ± σ): 8.156 s ± 0.148 s [User: 7.881 s, System: 0.273 s]
Range (min … max): 7.909 s … 8.491 s 30 runs
AFTER:
Benchmark 1: bin/clang++ -c -std=c++26 sqlite.cpp -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
Time (mean ± σ): 7.492 s ± 0.171 s [User: 7.214 s, System: 0.277 s]
Range (min … max): 7.213 s … 7.876 s 30 runs
-- Heap allocation:
BASELINE:
Benchmark 1: bin/clang++ -c -std=c++26 test.cpp -fconstexpr-steps=1000000000
Time (mean ± σ): 28.650 s ± 0.475 s [User: 28.627 s, System: 0.021 s]
Range (min … max): 27.767 s … 29.554 s 30 runs
BEFORE:
Benchmark 1: bin/clang++ -c -std=c++26 test.cpp -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
Time (mean ± σ): 4.543 s ± 0.194 s [User: 4.527 s, System: 0.016 s]
Range (min … max): 4.340 s … 5.143 s 30 runs
AFTER:
Benchmark 1: bin/clang++ -c -std=c++26 test.cpp -fconstexpr-steps=1000000000 -fexperimental-new-constant-interpreter
Time (mean ± σ): 4.055 s ± 0.140 s [User: 4.039 s, System: 0.015 s]
Range (min … max): 3.827 s … 4.430 s 30 runs
```
However, the numbers on the compile-time tracker are slightly worse:
https://llvm-compile-time-tracker.com/compare.php?from=699354a4146e2ebc7e7c7aa84d14c396a4300508&to=0b9191c493c35d33721c9aad7ab341fe2a731f3f&stat=instructions:u
Commit: 71b53ad78cb7ca3f67c6e04cf2de62748d1bb03f
https://github.com/llvm/llvm-project/commit/71b53ad78cb7ca3f67c6e04cf2de62748d1bb03f
Author: Jacques Pienaar <jacques+gh at japienaar.info>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/AttrTypeBase.td
M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
Log Message:
-----------
IntegerAttr accessor changed to returning APInt by reference. (#187351)
IntegerAttr accessor getValue() returned an APInt by value. This works
well for the case where APInt is small, but leads to unnecessary copies
for larger bitwidths. This change switches this to returnsa const APInt&
instead.
Commit: 691c6532139deba0f95f7229b0f1064e81e6409a
https://github.com/llvm/llvm-project/commit/691c6532139deba0f95f7229b0f1064e81e6409a
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/TableGen/Interfaces.cpp
A mlir/test/mlir-tblgen/interface-method-arg-error.td
Log Message:
-----------
[mlir][tblgen] Emit diagnostic instead of crashing for invalid interface method arg type (#186430)
When an interface method argument uses a non-string type (e.g., a
TableGen class reference like `Foo` instead of a string literal
`"Foo"`), the code in `InterfaceMethod::InterfaceMethod` would crash
with an assertion failure in `cast<StringInit>`. Replace the unchecked
cast with a `dyn_cast` and emit a `PrintFatalError` with a descriptive
error message pointing to the source location and identifying which
argument has the wrong type.
Before this fix:
mlir-tblgen: Assertion `isa<To>(Val) && "cast<Ty>() argument of
incompatible type\!"' failed.
After this fix:
error: expected string type for interface method argument #0 ('arg') ...
Fixes #61869
Assisted-by: Claude Code
Commit: d7128d8edcb3a3f7cf67a606a418042f6fba1c9f
https://github.com/llvm/llvm-project/commit/d7128d8edcb3a3f7cf67a606a418042f6fba1c9f
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/OpImplementation.h
M mlir/test/IR/invalid-custom-print-parse.mlir
Log Message:
-----------
[MLIR] Fix crash when parsing typed attribute via parseOptionalAttribute (#186192)
When calling `parseOptionalAttribute(result, type)` with a typed result
(e.g. `FloatAttr`), the call resolved to the generic
`parseOptionalAttribute(Attribute&, Type)` overload via implicit
conversion. This overload accepted any attribute, including ones that
don't match the expected concrete type. The caller would then invoke
type-specific methods (e.g. `FloatAttr::getValue()`) on storage that
belongs to a different attribute kind (e.g. `IntegerAttr`), causing a
type-confusion crash.
The fix adds a non-virtual template overload of `parseOptionalAttribute`
in `AsmParser` that intercepts calls for concrete attribute types not
covered by the dedicated virtual overloads (`Attribute`, `ArrayAttr`,
`StringAttr`, `SymbolRefAttr`). It parses the attribute generically and
then validates the result type via `dyn_cast`, emitting an error if the
parsed attribute is of the wrong kind.
Fixes #108135
Assisted-by: Claude Code
Commit: 364f8d42398382315d7be61eacd0b13a857d078d
https://github.com/llvm/llvm-project/commit/364f8d42398382315d7be61eacd0b13a857d078d
Author: Abdullah Sarkar <fa2818 at nyu.edu>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
M llvm/test/CodeGen/X86/known-never-zero.ll
Log Message:
-----------
[DAG] isKnownNeverZero - add ISD::VECTOR_SHUFFLE handling (#187855)
Fixes #183351
Commit: 0f9562d587397fe8bd8b2765c4dfc21d79beb686
https://github.com/llvm/llvm-project/commit/0f9562d587397fe8bd8b2765c4dfc21d79beb686
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/test/lib/Dialect/Bufferization/TestOneShotModuleBufferize.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for modernize-use-equals-default in TestOneShotModuleBufferize.cpp (NFC)
Commit: fe383fa6cf9c4cf1dffb77f2c597d50e4f78fc69
https://github.com/llvm/llvm-project/commit/fe383fa6cf9c4cf1dffb77f2c597d50e4f78fc69
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in TileUsingInterface.cpp (NFC)
Commit: dd6f3534afe1f9ec5a8533a77cb02e0e2f38a778
https://github.com/llvm/llvm-project/commit/dd6f3534afe1f9ec5a8533a77cb02e0e2f38a778
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Transforms/RemoveDeadValues.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for llvm-else-after-return in RemoveDeadValues.cpp (NFC)
Commit: 9aaba7c24aa59c7c33d939948bfcb527ef09e597
https://github.com/llvm/llvm-project/commit/9aaba7c24aa59c7c33d939948bfcb527ef09e597
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Index/IR/IndexOps.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in IndexOps.cpp (NFC)
Commit: 16e0cc8308379857ecd69e6fe1aaf71e15b94910
https://github.com/llvm/llvm-project/commit/16e0cc8308379857ecd69e6fe1aaf71e15b94910
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
Log Message:
-----------
[SLP]Fix codegen of compares with consts, being trunced
If the const values have more active bits, than requested by the another
operand of the compare, such constants should not be trunced to avoid
miscompilation
Commit: 95951fca847a8b988b2a433e8f8fd421d6e97d16
https://github.com/llvm/llvm-project/commit/95951fca847a8b988b2a433e8f8fd421d6e97d16
Author: Zorojuro <sawantsukumar at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M libc/src/math/docs/add_math_function.md
Log Message:
-----------
[libc] Add missing shared_math docs in `add_math_function.md` (#188026)
This PR intends to add/update the following things:
- Add missing doc for CMake for shared_math
- Add missing testing command for shared_math_test
- Nits (e.g., grammar, spaces, missing colons, etc.)
Commit: bcdb7d3c8f3fb554938185d1f286941651864664
https://github.com/llvm/llvm-project/commit/bcdb7d3c8f3fb554938185d1f286941651864664
Author: David Green <david.green at arm.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/test/CodeGen/ARM/vld2.ll
Log Message:
-----------
[ARM] Regenerate vld2.ll test. NFC
Commit: 85f529dda149d2d4b1f2c4980dc1c4de7849bd03
https://github.com/llvm/llvm-project/commit/85f529dda149d2d4b1f2c4980dc1c4de7849bd03
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
Log Message:
-----------
Revert "[SLP]Fix codegen of compares with consts, being trunced"
This reverts commit 16e0cc8308379857ecd69e6fe1aaf71e15b94910 to add
a new test case for the miscompile
Commit: 5563b8279e0f3926eaaddb05396895bb9b529b4b
https://github.com/llvm/llvm-project/commit/5563b8279e0f3926eaaddb05396895bb9b529b4b
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
Log Message:
-----------
AMDGPU: Add more tests for v_dot2_f32_f16/bf16 (#179223)
Test for src modifiers, inline constants and vopd codegen.
Commit: 073de3f7e367caca4150cb20495fe14ed26b386c
https://github.com/llvm/llvm-project/commit/073de3f7e367caca4150cb20495fe14ed26b386c
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
Log Message:
-----------
[PowerPC] Fix typo in getInstSizeVerifyMode() hook
The logic here was inverted from what it was intended to be (which
shows up when forcing tests to emit object files).
Commit: c4b01ec20d3e845d348b0b005102b1301a8550ca
https://github.com/llvm/llvm-project/commit/c4b01ec20d3e845d348b0b005102b1301a8550ca
Author: hev <wangrui at loongson.cn>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/test/CodeGen/LoongArch/lasx/intrinsic-pickve2gr.ll
M llvm/test/CodeGen/LoongArch/lsx/intrinsic-pickve2gr.ll
Log Message:
-----------
[LoongArch] Mark VPICK_ZEXT_ELT as zero-extending in computeKnownBits (#187177)
Teach computeKnownBitsForTargetNode that VPICK_ZEXT_ELT produces a
zero-extended result.
VPICK_ZEXT_ELT extracts a narrower element (e.g. i16) and returns it in
a larger integer type (e.g. i64) with the upper bits guaranteed to be
zero. However, without KnownBits information, LLVM treats the upper bits
as unknown, which inhibits optimizations.
By marking all bits above the source element width as known zero, this
enables DAG combine and other optimizations to eliminate redundant
operations such as AND masks and SIGN_EXTEND_INREG.
For example, this allows patterns like:
(sign_extend_inreg (VPICK_ZEXT_ELT ...), i32)
to be simplified when the sign bit is known to be zero.
Commit: 5f5ad9588645d3a686c220403f288a77380b2bf5
https://github.com/llvm/llvm-project/commit/5f5ad9588645d3a686c220403f288a77380b2bf5
Author: hev <wangrui at loongson.cn>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/test/CodeGen/LoongArch/lsx/remat.ll
Log Message:
-----------
[LoongArch] Mark VREPLGR2VR/XVREPLGR2VR as rematerializable to reduce register pressure (#187431)
The VREPLGR2VR and XVREPLGR2VR instruction families replicate a scalar
general-purpose register value into all elements of a vector register.
These instructions are side-effect free and relatively cheap, with their
result depending only on the input register.
Mark them as isReMaterializable to allow the register allocator to
recompute the value when profitable instead of spilling and reloading it
from memory.
This can help reduce register pressure and avoid unnecessary memory
traffic in vectorized code.
Commit: 8c200875d72fdce54bda82b6f39469d5f59c1701
https://github.com/llvm/llvm-project/commit/8c200875d72fdce54bda82b6f39469d5f59c1701
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/IR/OpImplementation.h
Log Message:
-----------
[MLIR] Move SFINAE from return type to template argument in OpImplementation.h (NFC) (#188039)
Migrate all template methods that used `std::enable_if_t<cond,
ReturnType>` return-type SFINAE to the `typename =
std::enable_if_t<cond>` default template parameter style. This makes the
actual return type visible at a glance and the constraint readable as
part of the template signature.
Complementary overload pairs that require the `* = nullptr` non-type
parameter trick to remain structurally distinct
(parseCustomAttributeWithFallback, parseCustomTypeWithFallback) are left
unchanged.
Addressing post-merge comment on #186192
Assisted-by: Claude Code
Commit: 61b3b20fd96ea06a32738915771543e0dd49a687
https://github.com/llvm/llvm-project/commit/61b3b20fd96ea06a32738915771543e0dd49a687
Author: Nikita Popov <npopov at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
Log Message:
-----------
[AsmPrinter] Fix some issues with instruction size verification
If the instruction is part of a bundle, then emitInstruction() will
emit the entire bundle. As such, we should be summing up the sizes
of all instructions in the bundle.
Additionally, do not run the verification if an error has already
occurred. In that case, there may be a size mismatch as a result
of the error.
These came up when trying to enable the verification on additional
targets.
Commit: df00c1c00be26bff7d548b6baa5655c5254b601e
https://github.com/llvm/llvm-project/commit/df00c1c00be26bff7d548b6baa5655c5254b601e
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/AArch64/icmp-wrong-bitwidth.ll
Log Message:
-----------
[SLP][NFC]Add a test with the icmp miscompilation, NFC
Commit: af9bc2ab1ecc75e96cc086db18918e95e24b6df5
https://github.com/llvm/llvm-project/commit/af9bc2ab1ecc75e96cc086db18918e95e24b6df5
Author: Xinlong Chen <49522466+Xinlong-Chen at users.noreply.github.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg-mir.ll
M llvm/test/CodeGen/PowerPC/aix32-cc-abi-vaarg.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool-large.ll
M llvm/test/CodeGen/PowerPC/mergeable-string-pool.ll
M llvm/test/CodeGen/PowerPC/pr59074.ll
Log Message:
-----------
[PowerPC] Skip tryBitfieldInsert when an operand is a constant (#187663)
When either operand of an OR node is a constant, bail out of
`tryBitfieldInsert` and let `ORI`/`ORIS`/`ADDI`/`ADDIS` tablegen
patterns handle it.
These patterns produce a single instruction without the tied-register
constraint that RLWIMI requires, avoiding unnecessary LI + RLWIMI
sequences.
Prep work to help with regressions identified on
https://github.com/llvm/llvm-project/pull/186461
Commit: 4a06f38c6b925eb587ac0b6ab51d9e3c5844d33c
https://github.com/llvm/llvm-project/commit/4a06f38c6b925eb587ac0b6ab51d9e3c5844d33c
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
M mlir/test/Dialect/Linalg/invalid.mlir
Log Message:
-----------
[mlir][linalg] Fix crash in linalg.reduce verifier when inputs \!= inits count (#186278)
Add an early check in `ReduceOp::verify()` that compares the operand
count from the ODS accessor with `getNumDpsInputs()`. A mismatch means
the `SameVariadicOperandSize` invariant is violated and the verifier
emits a clear diagnostic instead of crashing.
Fixes #93973
Assisted-by: Claude Code
Commit: 40f0b312e3b7ab48fbd91360d892cc28e4baba6b
https://github.com/llvm/llvm-project/commit/40f0b312e3b7ab48fbd91360d892cc28e4baba6b
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
Log Message:
-----------
[clang][bytecode] Disable tail calls on MSVC and PPC (#188033)
Disable tail calls on MSVC and PPC.
Commit: 20fe74ebe19c844079f7093eeb945994274737a1
https://github.com/llvm/llvm-project/commit/20fe74ebe19c844079f7093eeb945994274737a1
Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/Dialect/X86/X86.td
M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp
M mlir/lib/Dialect/X86/IR/X86Dialect.cpp
M mlir/lib/Dialect/X86/Transforms/ShuffleVectorFMAOps.cpp
M mlir/lib/Dialect/X86/Transforms/VectorContractBF16ToFMA.cpp
M mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
Log Message:
-----------
[mlir][x86] Hardware extension namespaces (#184392)
Adds hardware extension C++ namespaces to X86 dialect op definitions to
match their IR mnemonic extensions.
All X86 dialect ops are updated to follow the scheme first introduced
with AMX ops i.e., 'x86::{ext}::{op_name}'.
Nested namespaces improve source code readability by explicitly
indicating which hardware extension each operation requires, and it
aligns naming scheme between code and IR.
Commit: 256a4e03b7f4fb2b3a6865ff75385305e4cc8e73
https://github.com/llvm/llvm-project/commit/256a4e03b7f4fb2b3a6865ff75385305e4cc8e73
Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
Log Message:
-----------
[AMDGPU][GlobalISel] Add RegBankLegalize rules for permlane16_swap/permlane32_swap (#187810)
Add register bank legalize rules for the amdgcn_permlane16_swap and
amdgcn_permlane32_swap intrinsics. Both results and both source register
operands map to VGPR since these are VALU lane swap operations.
Enable -new-reg-bank-select in the permlane16.swap and permlane32.swap
tests.
Commit: dfb2c773d22e2eb116cc71c6f14eec5dba7fd154
https://github.com/llvm/llvm-project/commit/dfb2c773d22e2eb116cc71c6f14eec5dba7fd154
Author: Mehdi Amini <joker.eph at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/lib/Dialect/Shard/Transforms/ShardingPropagation.cpp
Log Message:
-----------
[MLIR] Apply clang-tidy fixes for misc-use-internal-linkage in ShardingPropagation.cpp (NFC)
Commit: a6caf52908bf499fd7fc3ae96dcd3ef8c41d5ce1
https://github.com/llvm/llvm-project/commit/a6caf52908bf499fd7fc3ae96dcd3ef8c41d5ce1
Author: Donát Nagy <donat.nagy at ericsson.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
Log Message:
-----------
[NFC][analyzer] Clean up and document `ExplodedNodeSet` (#187742)
`ExplodedNodeSet` is a simple and useful utility type in the analyzer,
but its insertion methods were a bit confusing, so this commit clarifies
them (and adds doc-comments for this class).
Previously this class had `void Add(ExplodedNode*)` for inserting single
nodes and `void insert(const ExplodedNodeSet &)` for inserting all nodes
from another set; but `ExplodedNode*` is implicitly convertible to
`ExplodedNodeSet`, so it was also possible to insert single nodes with
`insert`. There was also a subtle difference between `Set.Add(Node)` and
`Set.insert(Node)`: `Add` accepted and ignored nullpointers and sink
nodes (which is often useful) while the constructor
`ExplodedNodeSet(ExplodedNode*)` enforced the same invariant in a less
helpful way, with an assertion.
This commit eliminates the name `Add` (because `insert` is more
customary for set types), but standardizes its "null or sink nodes are
silently ignored" behavior which is very useful in practice.
After this commit `insert` has two overloads:
`ExplodedNodeSet::insert(ExplodedNode*)` which inserts a single node (or
does nothing if the argument is null or sink) and
`ExplodedNodeSet::insert(const ExplodedNodeSet&)` which inserts all
nodes from the other set.
Note that around half of the calls to `Add` were recently introduced by
my `NodeBuilder` cleanup commit series; I expect to introduce dozens of
calls in the foreseeable future -- this commit can be considered as
preparation for those.
Commit: f4b523d669faf92d096f335b6c9dc832521dba93
https://github.com/llvm/llvm-project/commit/f4b523d669faf92d096f335b6c9dc832521dba93
Author: Kiva <zengtao at iscas.ac.cn>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/include/llvm/IR/PatternMatch.h
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/unittests/IR/PatternMatch.cpp
Log Message:
-----------
[PatternMatch][NFC] Add `m_IToFP` and `m_FPToI` (#188040)
Added two patterns for IR pattern matching, `m_IToFP` and `m_FPToI`
which are basically shortcuts of `m_CombinedOr(..., ...)`
> if there isn't already one, PatternMatch should have an m_ItoFP which
covers both
_Originally posted by @arsenm in
https://github.com/llvm/llvm-project/pull/185826#discussion_r2967473936_
/cc @arsenm
Commit: 75ac07d3692828ca22b10dce2fc2208d7ea9e840
https://github.com/llvm/llvm-project/commit/75ac07d3692828ca22b10dce2fc2208d7ea9e840
Author: lntue <lntue at google.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M libc/src/__support/math/acosf.h
M libc/src/__support/math/asinf.h
M libc/src/__support/math/inv_trigf_utils.h
Log Message:
-----------
[libc][math] Use Estrin's scheme to improve asinf and acosf performance. (#187885)
Commit: a7efdeb464dd3ccb742a0125621853120c4ca4eb
https://github.com/llvm/llvm-project/commit/a7efdeb464dd3ccb742a0125621853120c4ca4eb
Author: Peter Klausler <pklausler at nvidia.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/tools.h
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/tools.cpp
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/resolve-labels.cpp
A flang/test/Semantics/bug2436.f
A flang/test/Semantics/canondo18.f90
Log Message:
-----------
[flang] Accept label DO loop after !$ACC LOOP (#187581)
Extend Semantics/canonicalize-do.cpp to rewrite a label DO loop into a
DO construct in the parse tree even when its terminal statement is an
OpenACC block construct or atomic construct. Some tools were relocated
from Parser/openmp-utils.{h,cpp} to /tools.{h,cpp}.
Commit: bd46a7d172661d4477737a65b107bf40782c7e40
https://github.com/llvm/llvm-project/commit/bd46a7d172661d4477737a65b107bf40782c7e40
Author: Carlo Cabrera <github at carlo.cab>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M .github/workflows/bazel-checks.yml
M .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-libc-container.yml
M .github/workflows/build-metrics-container.yml
M .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
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/ids-check.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
M .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/lldb-pylint-action.yml
M .github/workflows/llvm-abi-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-code-lint.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/premerge.yaml
M .github/workflows/prune-branches.yml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/sycl-tests.yml
M .github/workflows/test-unprivileged-download-artifact.yml
M .github/workflows/version-check.yml
Log Message:
-----------
[Workflows] Set `persist-credentials` (#187951)
This is needed for #187905. Unless we disable the check, Zizmor will
flag uses of `actions/checkout` without an explicit
`persist-credentials` setting.
Of course, some workflows could rely on the credentials persisted by
`actions/checkout`. I asked Claude to check each affected job, and it
flagged only `prune-branches.yml`. The script `prune-unused-branches.py`
relies on the persisted credentials, so I've left that as
`persist-credentials: true` for now.
Commit: a90f583e7a11703aab50bdc5ece8717e089c69da
https://github.com/llvm/llvm-project/commit/a90f583e7a11703aab50bdc5ece8717e089c69da
Author: Carlo Cabrera <github at carlo.cab>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
A .github/workflows/zizmor.yml
Log Message:
-----------
[Workflows] Add Zizmor check (#187905)
The recent Trivy breach[^1] made me consider re-opening #117787.
Trivy was breached using an impostor commit[^2], which Zizmor can flag.
It's also much more widely used since my last PR.[^3]
The new workflow was taken from the example workflow in their
documentation.[^4]
[^1]: https://github.com/aquasecurity/trivy/discussions/10425
[^2]: https://docs.zizmor.sh/audits/#impostor-commit
[^3]: https://docs.zizmor.sh/trophy-case/
[^4]: https://docs.zizmor.sh/integrations/#via-zizmorcorezizmor-action
Commit: 034054431d6cb280c70f51291aa6ec938a0118a6
https://github.com/llvm/llvm-project/commit/034054431d6cb280c70f51291aa6ec938a0118a6
Author: Petar Avramovic <Petar.Avramovic at amd.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/SIInstrInfo.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
Log Message:
-----------
AMDGPU: Fix src2_modifiers for v_dot2_f32_f16/bf16 (#179224)
Commit: 5b7ad38d6ba835e4d4acef538846931fd64a2028
https://github.com/llvm/llvm-project/commit/5b7ad38d6ba835e4d4acef538846931fd64a2028
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AArch64/icmp-wrong-bitwidth.ll
M llvm/test/Transforms/SLPVectorizer/AArch64/trunc-insertion.ll
Log Message:
-----------
[SLP]Fix codegen of compares with consts, being trunced
If the const values have more active bits, than requested by the another
operand of the compare, such constants should not be trunced to avoid
miscompilation
Commit: a9775221ae31d626ceacdb72a49550ba7e566d67
https://github.com/llvm/llvm-project/commit/a9775221ae31d626ceacdb72a49550ba7e566d67
Author: Alex MacLean <amaclean at nvidia.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/CodeGen/Targets/NVPTX.cpp
A llvm/include/llvm/Support/NVVMAttributes.h
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVVMProperties.cpp
M llvm/lib/Target/NVPTX/NVVMProperties.h
M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
Log Message:
-----------
[NVPTX] Canonicalize NVVM attribute strings and refactor property queries (NFC) (#187752)
Commit: 7bda811f5a034263a0128a7cacfb4f2827be2b5e
https://github.com/llvm/llvm-project/commit/7bda811f5a034263a0128a7cacfb4f2827be2b5e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M clang/lib/AST/ByteCode/Interp.cpp
Log Message:
-----------
[clang][bytecode] Disable tailcalls on aarch64 (#188042)
Apparently it causes problems there, too.
See https://lab.llvm.org/buildbot/#/builders/24/builds/18781
Commit: b16efa69ee5ca67331348e4a41e7304a9d51af42
https://github.com/llvm/llvm-project/commit/b16efa69ee5ca67331348e4a41e7304a9d51af42
Author: Jorn Tuyls <jorn.tuyls at gmail.com>
Date: 2026-03-23 (Mon, 23 Mar 2026)
Changed paths:
M mlir/include/mlir/Bindings/Python/IRCore.h
Log Message:
-----------
[mlir][python] Fix PyObjectRef copy/move assignment for MSVC (#186758)
PyObjectRef has a user-declared move constructor but no explicit
copy/move assignment operators. On at least some version of MSVC,
instantiation of operator= is forced, causing a compile error:
```
In file included from mlir/lib/Bindings/Python/Globals.cpp:9:
In file included from mlir/include/mlir/Bindings/Python/IRCore.h:16:
<MSVC>/include/vector(1461,27): error: object of type 'value_type' (aka 'mlir::python::mlir::PyDiagnostic::DiagnosticInfo') cannot be assigned because its copy assignment operator is implicitly deleted
1461 | *_Mid = *_First;
| ^
<MSVC>/include/vector(1539,9): note: in instantiation of function template specialization 'std::vector<mlir::python::mlir::PyDiagnostic::DiagnosticInfo>::_Assign_counted_range<mlir::python::mlir::PyDiagnostic::DiagnosticInfo *>' requested here
1539 | _Assign_counted_range(_Right_data._Myfirst, static_cast<size_type>(_Right_data._Mylast - _Right_data._Myfirst));
| ^
mlir/include/mlir/Bindings/Python/IRCore.h(1317,33): note: in instantiation of member function 'std::vector<mlir::python::mlir::PyDiagnostic::DiagnosticInfo>::operator=' requested here
1317 | struct MLIR_PYTHON_API_EXPORTED MLIRError {
| ^
mlir/include/mlir/Bindings/Python/IRCore.h(369,16): note: copy assignment operator of 'DiagnosticInfo' is implicitly deleted because field 'location' has a deleted copy assignment operator
369 | PyLocation location;
| ^
mlir/include/mlir/Bindings/Python/IRCore.h(304,45): note: copy assignment operator of 'PyLocation' is implicitly deleted because base class 'BaseContextObject' has a deleted copy assignment operator
304 | class MLIR_PYTHON_API_EXPORTED PyLocation : public BaseContextObject {
| ^
mlir/include/mlir/Bindings/Python/IRCore.h(300,20): note: copy assignment operator of 'BaseContextObject' is implicitly deleted because field 'contextRef' has a deleted copy assignment operator
300 | PyMlirContextRef contextRef;
| ^
mlir/include/mlir/Bindings/Python/IRCore.h(73,3): note: copy assignment operator is implicitly deleted because 'PyObjectRef<mlir::python::mlir::PyMlirContext>' has a user-declared move constructor
73 | PyObjectRef(PyObjectRef &&other) noexcept
| ^
1 error generated.
```
Encountered on this env:
```
Compiler: clang-cl 20.1.8
STL: MSVC 14.44.35207 (Visual Studio 2022 Enterprise)
Runner: windows-2022 (GitHub Actions)
```
Commit: 4364b35c5454b07b95c08112cb5702e5b5706ef3
https://github.com/llvm/llvm-project/commit/4364b35c5454b07b95c08112cb5702e5b5706ef3
Author: Joel E. Denny <jdenny.ornl at gmail.com>
Date: 2026-03-24 (Tue, 24 Mar 2026)
Changed paths:
M .ci/all_requirements.txt
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .ci/green-dragon/lldb-ubuntu.groovy
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/bazel-checks.yml
M .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-libc-container.yml
M .github/workflows/build-metrics-container.yml
M .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
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/ids-check.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
M .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/lldb-pylint-action.yml
M .github/workflows/llvm-abi-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-code-lint.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/premerge.yaml
M .github/workflows/prune-branches.yml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/sycl-tests.yml
M .github/workflows/test-unprivileged-download-artifact.yml
M .github/workflows/version-check.yml
A .github/workflows/zizmor.yml
M bolt/include/bolt/Passes/ReorderFunctions.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
M bolt/runtime/instr.cpp
A bolt/test/AArch64/function-order-hybrid.s
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
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/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/Diagnostics.h
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/ScanningProjectModules.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CompilerTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/multiple-inheritance.rst
M clang-tools-extra/test/CMakeLists.txt
A clang-tools-extra/test/Unit/CMakeLists.txt
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/deque
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/forward_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/functional
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/queue
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/set
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/stack
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/tuple
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_set
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/utility
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/vector
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/trailing-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-structured-binding/fake_std_pair_tuple.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-structured-binding.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-transparent-functors.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_file.py
A clang/bindings/python/tests/cindex/test_version.py
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/UsersManual.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/include/clang/Analysis/MacroExpansionContext.h
A clang/include/clang/Basic/AArch64CodeGenUtils.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/CodeGenOptions.def
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/DiagnosticOptions.def
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
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/LowerToLLVM.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/ModuleDepCollector.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/TextDiagnosticBuffer.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Parse/Parser.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaPPC.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
A clang/lib/AST/HLSLResource.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Analysis/CMakeLists.txt
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/MacroExpansionContext.cpp
M clang/lib/Basic/ASTSourceDescriptor.cpp
M clang/lib/Basic/Cuda.cpp
M clang/lib/Basic/Module.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/X86.h
A clang/lib/CIR/CodeGen/CIRGenAMDGPU.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
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/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.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/CodeGenTypes.cpp
M clang/lib/CodeGen/EHScopeStack.h
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ModulesDriver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
A clang/lib/Headers/endian.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/llvm_libc_wrappers/ctype.h
M clang/lib/Headers/llvm_libc_wrappers/string.h
M clang/lib/Index/IndexingAction.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/Parser.cpp
A clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
M clang/test/AST/ByteCode/arrays.cpp
R clang/test/AST/ByteCode/builtin-align-cxx.cpp
M clang/test/AST/ByteCode/builtins.c
M clang/test/AST/ByteCode/constexpr-steps.cpp
M clang/test/AST/ByteCode/lambda.cpp
M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
M clang/test/AST/ByteCode/loops.cpp
M clang/test/AST/ByteCode/records.cpp
A clang/test/AST/HLSL/resources-in-structs-errors.hlsl
A clang/test/AST/HLSL/resources-in-structs.hlsl
M clang/test/AST/ast-crash-doc-function-template.cpp
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/dump.cpp
A clang/test/Analysis/Scalable/command-line-interface.cpp
A clang/test/Analysis/Scalable/downgradable-errors.cpp
A clang/test/Analysis/Scalable/help.cpp
M clang/test/Analysis/Scalable/ssaf-format/list.test
A clang/test/Analysis/allow-equality-of-stack-and-symbolic-ptr.c
A clang/test/Analysis/clang-suppress/class-template-specializations.cpp
A clang/test/Analysis/clang-suppress/classes.cpp
A clang/test/Analysis/clang-suppress/diagnostic-identifiers.cpp
A clang/test/Analysis/clang-suppress/friends.cpp
A clang/test/Analysis/clang-suppress/function-templates.cpp
A clang/test/Analysis/clang-suppress/lambdas.cpp
A clang/test/Analysis/clang-suppress/macros.cpp
A clang/test/Analysis/clang-suppress/namespaces.cpp
A clang/test/Analysis/clang-suppress/nested-templates.cpp
A clang/test/Analysis/clang-suppress/statements.cpp
A clang/test/Analysis/clang-suppress/template-methods.cpp
M clang/test/Analysis/indirect-goto-basics.c
M clang/test/Analysis/plist-macros-with-expansion-ctu.c
M clang/test/Analysis/plist-macros-with-expansion.c
M clang/test/Analysis/plist-macros-with-expansion.cpp
M clang/test/Analysis/ptr-arith.c
R clang/test/Analysis/suppression-attr.cpp
A clang/test/C/C2y/n3517.c
A clang/test/C/C2y/n3652.c
A clang/test/C/C2y/n3715.c
A clang/test/CIR/CodeGen/Inputs/std-compare.h
A clang/test/CIR/CodeGen/abi-lower-after-unreachable.cpp
A clang/test/CIR/CodeGen/abstract-cond.c
M clang/test/CIR/CodeGen/address-space.c
M clang/test/CIR/CodeGen/arg-attrs.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/globals.cpp
A clang/test/CIR/CodeGen/initializer-list-two-pointers.cpp
M clang/test/CIR/CodeGen/invoke-attrs.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/lambda.cpp
A clang/test/CIR/CodeGen/loop-cond-cleanup.cpp
M clang/test/CIR/CodeGen/misc-attrs.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/noreturn.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/replace-global.cpp
M clang/test/CIR/CodeGen/ret-attrs.cpp
A clang/test/CIR/CodeGen/save-temps.c
M clang/test/CIR/CodeGen/side-effect.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
M clang/test/CIR/CodeGen/ternary-throw.cpp
M clang/test/CIR/CodeGen/ternary.cpp
A clang/test/CIR/CodeGen/three-way-cmp.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
M clang/test/CIR/CodeGenBuiltins/builtins-overflow.cpp
M clang/test/CIR/CodeGenCUDA/address-spaces.cu
M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
M clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp
A clang/test/CIR/CodeGenHIP/amdgpu-module-flags.hip
M clang/test/CIR/CodeGenHIP/simple.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/data-copy-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/routine-anon-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-bind.c
M clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
M clang/test/CIR/CodeGenOpenACC/routine-clauses.cpp
M clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals2.cpp
M clang/test/CIR/CodeGenOpenACC/routine-locals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-members.cpp
M clang/test/CIR/CodeGenOpenACC/routine-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-templ.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
M clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
A clang/test/CIR/IR/invalid-cmp3way.cir
A clang/test/CIR/Lowering/global-address-space.cir
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg10xx.cpp
M clang/test/CXX/drs/cwg118.cpp
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg12xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg158.cpp
M clang/test/CXX/drs/cwg15xx.cpp
M clang/test/CXX/drs/cwg16xx.cpp
M clang/test/CXX/drs/cwg1736.cpp
M clang/test/CXX/drs/cwg17xx.cpp
M clang/test/CXX/drs/cwg1884.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg20xx.cpp
M clang/test/CXX/drs/cwg2149.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg2335.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg273.cpp
M clang/test/CXX/drs/cwg2771.cpp
M clang/test/CXX/drs/cwg279.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg2947.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/drs/cwg722.cpp
M clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CodeCompletion/cpp23-explicit-object.cpp
M clang/test/CodeCompletion/member-access.cpp
M clang/test/CodeGen/AArch64/bf16-getset-intrinsics.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
A clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
A clang/test/CodeGen/PowerPC/attr-target-clones.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
M clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
M clang/test/CodeGen/arm64-microsoft-sys.c
M clang/test/CodeGen/builtins-extended-image.c
M clang/test/CodeGen/builtins-image-load.c
M clang/test/CodeGen/builtins-image-store.c
M clang/test/CodeGen/overflow-behavior-types.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
A clang/test/CodeGenCUDA/mangling.cu
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
M clang/test/CodeGenCXX/builtin_FUNCTION.cpp
M clang/test/CodeGenCXX/dllexport-inherited-ctor.cpp
A clang/test/CodeGenCXX/microsoft-vector-deleting-dtors-new-array.cpp
A clang/test/CodeGenHIP/builtins-amdgcn-buffer-format.hip
A clang/test/CodeGenHLSL/builtins/QuadReadAcrossX.hlsl
M clang/test/CodeGenHLSL/builtins/mul.hlsl
M clang/test/CodeGenHLSL/builtins/transpose.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-gfx1250-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32-gfx10-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64-gfx10-err.cl
M clang/test/CodeGenOpenCL/convergent.cl
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclang_rt.profile.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/nvptx64-nvidia-cuda/libclang_rt.profile.a
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/autocomplete.c
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/cl-link.c
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/darwin-builtin-modules.c
R clang/test/Driver/darwin-ld-platform-version-macos-nosdk.c
M clang/test/Driver/darwin-ld-platform-version-macos.c
M clang/test/Driver/fsanitize-ignorelist.c
A clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
A clang/test/Driver/modules-driver-dep-graph.cpp
A clang/test/Driver/modules-driver-dep-scan-diagnostics.cpp
A clang/test/Driver/modules-driver-duplicate-named-module.cpp
M clang/test/Driver/modules-driver-manifest-not-found.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/spirv-llvm-link.c
A clang/test/Driver/x86-fixed-di-register.c
M clang/test/Driver/xcselect.c
A clang/test/Frontend/verify-directives-full-match.cpp
A clang/test/Frontend/verify-directives-one-diag.cpp
A clang/test/Frontend/verify-directives-order.cpp
A clang/test/Frontend/verify-directives-wildcard.cpp
A clang/test/Headers/endian.c
M clang/test/Index/annotate-module.m
M clang/test/Index/complete-qualified.cpp
M clang/test/Interpreter/pretty-print.cpp
A clang/test/Misc/noexecstack.c
M clang/test/Modules/DebugInfoNamespace.cpp
M clang/test/Modules/DebugInfoSubmoduleImport.c
M clang/test/Modules/DebugInfoTransitiveImport.m
M clang/test/Modules/ExtDebugInfo.cpp
M clang/test/Modules/ExtDebugInfo.m
M clang/test/Modules/ModuleDebugInfo.cpp
M clang/test/Modules/ModuleDebugInfo.m
M clang/test/Modules/ModuleModuleDebugInfo.cpp
A clang/test/Modules/align-val-t-merge.cpp
M clang/test/Modules/debug-info-moduleimport.m
M clang/test/Modules/global_index.m
M clang/test/Modules/load-after-failure.m
M clang/test/Modules/module-debuginfo-compdir.m
M clang/test/Modules/module-debuginfo-prefix.m
A clang/test/Modules/pr179178.cpp
A clang/test/Modules/pr186603.cppm
A clang/test/Modules/relative-module-cache.c
M clang/test/OpenMP/declare_target_ast_print.cpp
M clang/test/OpenMP/declare_target_codegen.cpp
M clang/test/OpenMP/declare_target_link_codegen.cpp
M clang/test/OpenMP/declare_target_messages.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
A clang/test/OpenMP/map_const_aggregate.cpp
M clang/test/OpenMP/openmp_offload_codegen.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/Sema/Inputs/lifetime-analysis.h
A clang/test/Sema/PowerPC/attr-target-clones.c
M clang/test/Sema/attr-target.c
M clang/test/Sema/builtins-microsoft-arm64.c
A clang/test/Sema/gh183974.c
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
A clang/test/Sema/x86-fixed-global-register.c
M clang/test/Sema/zvk-invalid-features.c
M clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.ignore-dllattr.cpp
M clang/test/SemaCXX/builtin-align-cxx.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
A clang/test/SemaCXX/deleted-template-spec-diag.cpp
M clang/test/SemaCXX/dllexport-constrained-inherited-ctor.cpp
M clang/test/SemaCXX/gh134265.cpp
M clang/test/SemaCXX/type_pack_element.cpp
A clang/test/SemaCXX/warn-maybe-unused-private-field.cpp
A clang/test/SemaHIP/builtins-amdgcn-buffer-format.hip
A clang/test/SemaHLSL/BuiltIns/QuadReadAcrossX-errors.hlsl
A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-format-error.cl
A clang/test/SemaOpenCL/builtins-amdgcn-struct-buffer-format-error.cl
A clang/test/SemaTemplate/GH176152.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/ctad.cpp
M clang/test/SemaTemplate/deduction-crash.cpp
M clang/test/SemaTemplate/stack-exhaustion.cpp
M clang/tools/c-index-test/c-index-test.c
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/unittests/AST/ProfilingTest.cpp
M clang/unittests/Analysis/CFGBackEdgesTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestMacroExpansion.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
A clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/scripts/asan_symbolize.py
M compiler-rt/lib/asan/tests/asan_interface_test.cpp
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
M compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfiling.h
A compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
M compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py
M compiler-rt/lib/sanitizer_common/scripts/sancov.py
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/flags.inc
M compiler-rt/lib/scudo/standalone/options.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test_main.cpp
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
M compiler-rt/lib/scudo/standalone/wrappers_cpp.cpp
M compiler-rt/test/asan/TestCases/wild_pointer.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/file.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/test/Driver/safe-trampoline-gnustack.f90
M flang-rt/test/lit.site.cfg.py.in
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
M flang/docs/Directives.md
M flang/docs/Extensions.md
M flang/docs/F202X.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/Intrinsics.md
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Character.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
M flang/include/flang/Parser/message.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/tools.h
M flang/include/flang/Runtime/character.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/openmp-directive-sets.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Character.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/CMakeLists.txt
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
M flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/source.cpp
M flang/lib/Parser/stmt-parser.h
M flang/lib/Parser/tools.cpp
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-private-boxed-array.mlir
A flang/test/Evaluate/bug2418.f90
A flang/test/Fir/OpenACC/acc-routine-to-gpu-func.fir
M flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
A flang/test/Fir/array-coor-canonicalization-acc.fir
A flang/test/Fir/bitcast-fold.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
M flang/test/Integration/OpenMP/copyprivate.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
A flang/test/Lower/HLFIR/ignore-tkr-c-base-addr.f90
M flang/test/Lower/Intrinsics/anint.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_signbit.f90
M flang/test/Lower/Intrinsics/index.f90
M flang/test/Lower/Intrinsics/iparity.f90
M flang/test/Lower/Intrinsics/is_contiguous.f90
M flang/test/Lower/Intrinsics/is_iostat_value.f90
M flang/test/Lower/Intrinsics/ishft.f90
M flang/test/Lower/Intrinsics/ishftc.f90
M flang/test/Lower/Intrinsics/lbound.f90
M flang/test/Lower/Intrinsics/leadz.f90
M flang/test/Lower/Intrinsics/len.f90
M flang/test/Lower/Intrinsics/lge_lgt_lle_llt.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Lower/Intrinsics/matmul.f90
M flang/test/Lower/Intrinsics/max.f90
M flang/test/Lower/Intrinsics/maxloc.f90
M flang/test/Lower/Intrinsics/maxval.f90
M flang/test/Lower/Intrinsics/merge.f90
M flang/test/Lower/Intrinsics/merge_bits.f90
M flang/test/Lower/Intrinsics/minloc.f90
A flang/test/Lower/Intrinsics/split.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
M flang/test/Lower/OpenACC/acc-host-data.f90
M flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
A flang/test/Lower/OpenMP/Todo/interchange.f90
M flang/test/Lower/OpenMP/atomic-update.f90
A flang/test/Lower/OpenMP/copyprivate-equivalence.f90
M flang/test/Lower/OpenMP/copyprivate.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/copyprivate3.f90
M flang/test/Lower/OpenMP/copyprivate4.f90
M flang/test/Lower/OpenMP/copyprivate5.f90
M flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
M flang/test/Lower/OpenMP/minmax-optional-parameters.f90
M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.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-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/PowerPC/ppc-vec-store-elem-order.f90
M flang/test/Lower/PowerPC/ppc-vec-store.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/fp-maxmin-behavior.f90
M flang/test/Lower/math-lowering/anint.f90
A flang/test/Parser/OpenMP/do-interchange.f90
A flang/test/Parser/OpenMP/interchange-fail.f90
A flang/test/Parser/OpenMP/interchange-permutation.f90
A flang/test/Parser/OpenMP/interchange.f90
A flang/test/Parser/shared-line-program-units.f90
A flang/test/Parser/shared-line-program-units.reject.0.f90
A flang/test/Parser/shared-line-program-units.reject.1.f90
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-wait-validity.f90
M flang/test/Semantics/OpenMP/do-collapse.f90
M flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/do-ordered.f90
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do10.f90
M flang/test/Semantics/OpenMP/do13.f90
M flang/test/Semantics/OpenMP/do15.f90
M flang/test/Semantics/OpenMP/do16.f90
M flang/test/Semantics/OpenMP/do22.f90
M flang/test/Semantics/OpenMP/fuse1.f90
A flang/test/Semantics/OpenMP/interchange-permutation.f90
A flang/test/Semantics/OpenMP/interchange01.f90
M flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence-nowarn.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence.f90
M flang/test/Semantics/OpenMP/threadprivate02.f90
M flang/test/Semantics/OpenMP/tile05.f90
M flang/test/Semantics/OpenMP/tile07.f90
A flang/test/Semantics/bug181353.f90
A flang/test/Semantics/bug2381.f90
A flang/test/Semantics/bug2436.f
A flang/test/Semantics/canondo18.f90
M flang/test/Semantics/getsymbols02.f90
A flang/test/Semantics/split.f90
M flang/test/Semantics/test_errors.py
M flang/test/Transforms/FIRToMemRef/alloca.mlir
M flang/unittests/Optimizer/CMakeLists.txt
A flang/unittests/Optimizer/FIRCallInterfaceTest.cpp
M libc/CMakeLists.txt
M libc/Maintainers.rst
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LibcConfig.cmake
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/config.json
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/config/windows/entrypoints.txt
A libc/docs/build_concepts.rst
R libc/docs/configure.rst
M libc/docs/contributing.rst
M libc/docs/dev/clang_tidy_checks.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/implementation_standard.rst
M libc/docs/dev/index.rst
A libc/docs/dev/modular_format.rst
A libc/docs/dev/syscall_wrapper_refactor.rst
M libc/docs/full_host_build.rst
M libc/docs/getting_started.rst
M libc/docs/headers/math/index.rst
M libc/docs/index.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ipc_macros.h
A libc/hdr/sys_sem_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/constraint_handler_t.h
A libc/hdr/types/errno_t.h
A libc/hdr/types/rsize_t.h
A libc/hdr/types/struct_sembuf.h
A libc/hdr/types/struct_semid_ds.h
A libc/hdr/types/struct_seminfo.h
M libc/include/CMakeLists.txt
M libc/include/errno.yaml
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
M libc/include/llvm-libc-macros/linux/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/sys-ipc-macros.h
A libc/include/llvm-libc-macros/linux/sys-sem-macros.h
A libc/include/llvm-libc-macros/sys-sem-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/constraint_handler_t.h
A libc/include/llvm-libc-types/errno_t.h
A libc/include/llvm-libc-types/rsize_t.h
A libc/include/llvm-libc-types/struct_sembuf.h
A libc/include/llvm-libc-types/struct_semid_ds.h
A libc/include/llvm-libc-types/struct_seminfo.h
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
A libc/include/sys/sem.yaml
M libc/include/threads.yaml
M libc/include/wctype.yaml
M libc/shared/math.h
A libc/shared/math/atanbf16.h
A libc/shared/math/atanpif16.h
A libc/shared/math/bf16divf128.h
A libc/shared/math/bf16fma.h
A libc/shared/math/daddf128.h
A libc/shared/math/daddl.h
A libc/shared/math/fma.h
A libc/shared/math/fmaf.h
A libc/shared/math/fmaf16.h
A libc/shared/math/log_bf16.h
A libc/shared/math/sqrtbf16.h
M libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M libc/src/__support/FPUtil/PolyEval.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/File/file.cpp
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
R libc/src/__support/OSUtil/linux/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/close.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/open.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/read.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/write.h
M libc/src/__support/ctype_utils.h
M libc/src/__support/macros/attributes.h
M libc/src/__support/macros/config.h
M libc/src/__support/math/CMakeLists.txt
M libc/src/__support/math/acosf.h
M libc/src/__support/math/asinf.h
A libc/src/__support/math/atanbf16.h
A libc/src/__support/math/atanpif16.h
A libc/src/__support/math/bf16divf128.h
A libc/src/__support/math/bf16fma.h
A libc/src/__support/math/daddf128.h
A libc/src/__support/math/daddl.h
A libc/src/__support/math/fma.h
A libc/src/__support/math/fmaf.h
A libc/src/__support/math/fmaf16.h
M libc/src/__support/math/hypotf.h
M libc/src/__support/math/inv_trigf_utils.h
M libc/src/__support/math/log.h
A libc/src/__support/math/log_bf16.h
M libc/src/__support/math/log_range_reduction.h
A libc/src/__support/math/sqrtbf16.h
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/open.cpp
M libc/src/math/CMakeLists.txt
A libc/src/math/atanbf16.h
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atanbf16.cpp
M libc/src/math/generic/atanpif16.cpp
M libc/src/math/generic/bf16divf128.cpp
M libc/src/math/generic/bf16fma.cpp
M libc/src/math/generic/daddf128.cpp
M libc/src/math/generic/daddl.cpp
M libc/src/math/generic/fma.cpp
M libc/src/math/generic/fmaf.cpp
M libc/src/math/generic/fmaf16.cpp
M libc/src/math/generic/log_bf16.cpp
M libc/src/math/generic/sqrtbf16.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
A libc/src/stdio/asprintf_modular.cpp
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/printf_modular.cpp
M libc/src/stdio/baremetal/vfprintf.cpp
M libc/src/stdio/baremetal/vfprintf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vprintf_modular.cpp
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/gpu/CMakeLists.txt
M libc/src/stdio/linux/stderr.cpp
M libc/src/stdio/linux/stdin.cpp
M libc/src/stdio/linux/stdout.cpp
M libc/src/stdio/printf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter.h
A libc/src/stdio/printf_core/float_impl.cpp
M libc/src/stdio/printf_core/printf_config.h
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/vasprintf_internal.h
A libc/src/stdio/printf_core/write_modes.def
M libc/src/stdio/printf_core/writer.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/snprintf.h
A libc/src/stdio/snprintf_modular.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sprintf.h
A libc/src/stdio/sprintf_modular.cpp
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
A libc/src/stdio/vasprintf_modular.cpp
M libc/src/stdio/vprintf.h
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsnprintf.h
A libc/src/stdio/vsnprintf_modular.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsprintf.h
A libc/src/stdio/vsprintf_modular.cpp
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/sys/CMakeLists.txt
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/random/linux/CMakeLists.txt
M libc/src/sys/random/linux/getrandom.cpp
A libc/src/sys/sem/CMakeLists.txt
A libc/src/sys/sem/linux/CMakeLists.txt
A libc/src/sys/sem/linux/semctl.cpp
A libc/src/sys/sem/linux/semget.cpp
A libc/src/sys/sem/linux/semop.cpp
A libc/src/sys/sem/semctl.h
A libc/src/sys/sem/semget.h
A libc/src/sys/sem/semop.h
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/write.cpp
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswprint.cpp
A libc/src/wctype/iswprint.h
A libc/src/wctype/iswpunct.cpp
A libc/src/wctype/iswpunct.h
M libc/test/integration/src/CMakeLists.txt
A libc/test/integration/src/sys/CMakeLists.txt
A libc/test/integration/src/sys/sem/CMakeLists.txt
A libc/test/integration/src/sys/sem/sem_test.cpp
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/atanbf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atanbf16_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/sem/CMakeLists.txt
A libc/test/src/sys/sem/linux/CMakeLists.txt
A libc/test/src/sys/sem/linux/sem_test.cpp
M libc/test/src/wctype/CMakeLists.txt
A libc/test/src/wctype/iswprint_test.cpp
A libc/test/src/wctype/iswpunct_test.cpp
M libc/utils/hdrgen/hdrgen/header.py
M libc/utils/hdrgen/tests/expected_output/test_header.h
M libc/utils/hdrgen/tests/expected_output/test_small.json
M libc/utils/hdrgen/tests/expected_output/test_small_proxy.h
M libc/utils/hdrgen/tests/input/merge1.yaml
M libclc/clc/include/clc/address_space/clc_qualifier.h
M libclc/clc/include/clc/async/clc_prefetch.h
M libclc/clc/include/clc/atomic/clc_atomic_compare_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_dec.h
M libclc/clc/include/clc/atomic/clc_atomic_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_add.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_and.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_max.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_min.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_or.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_sub.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_xor.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_clear.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_test_and_set.h
M libclc/clc/include/clc/atomic/clc_atomic_inc.h
M libclc/clc/include/clc/atomic/clc_atomic_load.h
M libclc/clc/include/clc/atomic/clc_atomic_store.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/collective/clc_work_group_broadcast.h
M libclc/clc/include/clc/collective/clc_work_group_reduce.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_step.h
M libclc/clc/include/clc/geometric/binary_def.inc
M libclc/clc/include/clc/geometric/clc_cross.h
M libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_fast_distance.h
M libclc/clc/include/clc/geometric/clc_fast_length.h
M libclc/clc/include/clc/geometric/clc_fast_normalize.h
M libclc/clc/include/clc/geometric/clc_length.h
M libclc/clc/include/clc/geometric/clc_normalize.h
M libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_bit_reverse.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_signed.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_unsigned.h
M libclc/clc/include/clc/integer/clc_bitfield_insert.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
A libclc/clc/include/clc/math/clc_canonicalize.h
M libclc/clc/include/clc/math/clc_cbrt.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_div_cr.h
M libclc/clc/include/clc/math/clc_div_fast.h
M libclc/clc/include/clc/math/clc_ep.h
M libclc/clc/include/clc/math/clc_ep_decl.inc
M libclc/clc/include/clc/math/clc_ep_log.h
M libclc/clc/include/clc/math/clc_erf.h
M libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
A libclc/clc/include/clc/math/clc_exp2_fast.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
A libclc/clc/include/clc/math/clc_flush_if_daz.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits_decl.inc
M libclc/clc/include/clc/math/clc_half_cos.h
M libclc/clc/include/clc/math/clc_half_divide.h
M libclc/clc/include/clc/math/clc_half_exp.h
M libclc/clc/include/clc/math/clc_half_exp10.h
M libclc/clc/include/clc/math/clc_half_exp2.h
M libclc/clc/include/clc/math/clc_half_log.h
M libclc/clc/include/clc/math/clc_half_log10.h
M libclc/clc/include/clc/math/clc_half_log2.h
M libclc/clc/include/clc/math/clc_half_powr.h
M libclc/clc/include/clc/math/clc_half_recip.h
M libclc/clc/include/clc/math/clc_half_rsqrt.h
M libclc/clc/include/clc/math/clc_half_sin.h
M libclc/clc/include/clc/math/clc_half_sqrt.h
M libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_ldexp.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
A libclc/clc/include/clc/math/clc_log2_fast.h
M libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_maxmag.h
M libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_nextdown.h
M libclc/clc/include/clc/math/clc_nextup.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_recip_fast.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sin.h
M libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sincos_helpers_decl.inc
A libclc/clc/include/clc/math/clc_sincos_helpers_fp16_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp64_decl.inc
A libclc/clc/include/clc/math/clc_sincospi.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_sqrt_cr.h
M libclc/clc/include/clc/math/clc_sqrt_fast.h
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
A libclc/clc/include/clc/math/clc_trigpi_helpers.h
A libclc/clc/include/clc/math/clc_trigpi_helpers_decl.inc
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/tables.h
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/mem_fence/clc_mem_fence.h
M libclc/clc/include/clc/misc/clc_shuffle.h
M libclc/clc/include/clc/misc/clc_shuffle2.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
M libclc/clc/include/clc/relational/clc_all.h
M libclc/clc/include/clc/relational/clc_any.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isequal.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isinf.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnan.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_issubnormal.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_select.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/include/clc/shared/binary_decl_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def.inc
M libclc/clc/include/clc/shared/binary_def_scalarize.inc
A libclc/clc/include/clc/shared/binary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/binary_def_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
A libclc/clc/include/clc/shared/binary_with_out_arg_scalarize.inc
M libclc/clc/include/clc/shared/clc_clamp.h
M libclc/clc/include/clc/shared/clc_less_aligned_types.h
M libclc/clc/include/clc/shared/clc_max.h
M libclc/clc/include/clc/shared/clc_min.h
M libclc/clc/include/clc/shared/clc_vload.h
M libclc/clc/include/clc/shared/clc_vstore.h
M libclc/clc/include/clc/shared/ternary_def.inc
M libclc/clc/include/clc/shared/ternary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def.inc
M libclc/clc/include/clc/shared/unary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/unary_def_with_ptr_scalarize.inc
M libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
M libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
M libclc/clc/include/clc/workitem/clc_get_enqueued_local_size.h
M libclc/clc/include/clc/workitem/clc_get_global_id.h
M libclc/clc/include/clc/workitem/clc_get_global_offset.h
M libclc/clc/include/clc/workitem/clc_get_global_size.h
M libclc/clc/include/clc/workitem/clc_get_group_id.h
M libclc/clc/include/clc/workitem/clc_get_local_id.h
M libclc/clc/include/clc/workitem/clc_get_local_linear_id.h
M libclc/clc/include/clc/workitem/clc_get_local_size.h
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_num_groups.h
M libclc/clc/include/clc/workitem/clc_get_num_sub_groups.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_local_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_work_dim.h
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_amdgpu_cbrt.inc
A libclc/clc/lib/amdgpu/math/clc_amdgpu_log.inc
A libclc/clc/lib/amdgpu/math/clc_cbrt.cl
M libclc/clc/lib/amdgpu/math/clc_exp.cl
M libclc/clc/lib/amdgpu/math/clc_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_exp2.cl
A libclc/clc/lib/amdgpu/math/clc_exp2_fast.cl
A libclc/clc/lib/amdgpu/math/clc_fmod.cl
M libclc/clc/lib/amdgpu/math/clc_frexp.cl
A libclc/clc/lib/amdgpu/math/clc_get_twobypi_bits.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_half_log.cl
M libclc/clc/lib/amdgpu/math/clc_half_log10.cl
M libclc/clc/lib/amdgpu/math/clc_half_log2.cl
M libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
M libclc/clc/lib/amdgpu/math/clc_half_recip.cl
M libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
M libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/amdgpu/math/clc_ldexp.cl
A libclc/clc/lib/amdgpu/math/clc_log.cl
A libclc/clc/lib/amdgpu/math/clc_log10.cl
A libclc/clc/lib/amdgpu/math/clc_log2.cl
A libclc/clc/lib/amdgpu/math/clc_log2_fast.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_native_log10.cl
M libclc/clc/lib/amdgpu/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl
M libclc/clc/lib/amdgpu/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_global_offset.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_group_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_local_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_work_dim.cl
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/async/clc_prefetch.cl
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
M libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_add.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_and.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_max.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_min.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_or.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_sub.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_xor.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_clear.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_test_and_set.cl
M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
M libclc/clc/lib/generic/atomic/clc_atomic_load.cl
M libclc/clc/lib/generic/atomic/clc_atomic_store.cl
M libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
M libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
M libclc/clc/lib/generic/common/clc_degrees.cl
M libclc/clc/lib/generic/common/clc_radians.cl
M libclc/clc/lib/generic/common/clc_sign.cl
M libclc/clc/lib/generic/common/clc_smoothstep.cl
M libclc/clc/lib/generic/common/clc_step.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2int.cl
M libclc/clc/lib/generic/conversion/clc_convert_int2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_integer.cl
M libclc/clc/lib/generic/geometric/clc_cross.cl
M libclc/clc/lib/generic/geometric/clc_distance.cl
M libclc/clc/lib/generic/geometric/clc_dot.cl
M libclc/clc/lib/generic/geometric/clc_fast_distance.cl
M libclc/clc/lib/generic/geometric/clc_fast_length.cl
M libclc/clc/lib/generic/geometric/clc_fast_normalize.cl
M libclc/clc/lib/generic/geometric/clc_length.cl
M libclc/clc/lib/generic/geometric/clc_length.inc
M libclc/clc/lib/generic/geometric/clc_normalize.cl
M libclc/clc/lib/generic/integer/clc_abs.cl
M libclc/clc/lib/generic/integer/clc_abs_diff.cl
M libclc/clc/lib/generic/integer/clc_add_sat.cl
M libclc/clc/lib/generic/integer/clc_bit_reverse.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_signed.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_unsigned.cl
M libclc/clc/lib/generic/integer/clc_bitfield_insert.cl
M libclc/clc/lib/generic/integer/clc_clz.cl
M libclc/clc/lib/generic/integer/clc_ctz.cl
M libclc/clc/lib/generic/integer/clc_hadd.cl
M libclc/clc/lib/generic/integer/clc_mad24.cl
M libclc/clc/lib/generic/integer/clc_mad_sat.cl
M libclc/clc/lib/generic/integer/clc_mul24.cl
M libclc/clc/lib/generic/integer/clc_mul_hi.cl
M libclc/clc/lib/generic/integer/clc_popcount.cl
M libclc/clc/lib/generic/integer/clc_rhadd.cl
M libclc/clc/lib/generic/integer/clc_rotate.cl
M libclc/clc/lib/generic/integer/clc_sub_sat.cl
M libclc/clc/lib/generic/integer/clc_upsample.cl
M libclc/clc/lib/generic/math/clc_acos.cl
M libclc/clc/lib/generic/math/clc_acos.inc
M libclc/clc/lib/generic/math/clc_acosh.cl
M libclc/clc/lib/generic/math/clc_acospi.cl
M libclc/clc/lib/generic/math/clc_asin.cl
M libclc/clc/lib/generic/math/clc_asinh.cl
M libclc/clc/lib/generic/math/clc_asinpi.cl
M libclc/clc/lib/generic/math/clc_atan.cl
M libclc/clc/lib/generic/math/clc_atan2.cl
M libclc/clc/lib/generic/math/clc_atan2pi.cl
M libclc/clc/lib/generic/math/clc_atanh.cl
M libclc/clc/lib/generic/math/clc_atanpi.cl
A libclc/clc/lib/generic/math/clc_canonicalize.cl
M libclc/clc/lib/generic/math/clc_cbrt.cl
M libclc/clc/lib/generic/math/clc_ceil.cl
M libclc/clc/lib/generic/math/clc_copysign.cl
M libclc/clc/lib/generic/math/clc_cos.cl
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_cosh.cl
M libclc/clc/lib/generic/math/clc_cospi.cl
M libclc/clc/lib/generic/math/clc_cospi.inc
M libclc/clc/lib/generic/math/clc_div_cr.cl
M libclc/clc/lib/generic/math/clc_div_fast.cl
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep.inc
M libclc/clc/lib/generic/math/clc_ep_log.cl
M libclc/clc/lib/generic/math/clc_erf.cl
M libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_exp.cl
M libclc/clc/lib/generic/math/clc_exp10.cl
M libclc/clc/lib/generic/math/clc_exp2.cl
A libclc/clc/lib/generic/math/clc_exp2_fast.cl
M libclc/clc/lib/generic/math/clc_exp_helper.cl
M libclc/clc/lib/generic/math/clc_expm1.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
M libclc/clc/lib/generic/math/clc_fdim.cl
M libclc/clc/lib/generic/math/clc_floor.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.inc
M libclc/clc/lib/generic/math/clc_fma.cl
M libclc/clc/lib/generic/math/clc_fmax.cl
M libclc/clc/lib/generic/math/clc_fmin.cl
M libclc/clc/lib/generic/math/clc_fmod.cl
M libclc/clc/lib/generic/math/clc_fract.cl
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_frexp.inc
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.cl
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.inc
M libclc/clc/lib/generic/math/clc_half_cos.cl
M libclc/clc/lib/generic/math/clc_half_divide.cl
M libclc/clc/lib/generic/math/clc_half_exp.cl
M libclc/clc/lib/generic/math/clc_half_exp10.cl
M libclc/clc/lib/generic/math/clc_half_exp2.cl
M libclc/clc/lib/generic/math/clc_half_log.cl
M libclc/clc/lib/generic/math/clc_half_log10.cl
M libclc/clc/lib/generic/math/clc_half_log2.cl
M libclc/clc/lib/generic/math/clc_half_powr.cl
M libclc/clc/lib/generic/math/clc_half_recip.cl
M libclc/clc/lib/generic/math/clc_half_rsqrt.cl
M libclc/clc/lib/generic/math/clc_half_sin.cl
M libclc/clc/lib/generic/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/math/clc_ilogb.cl
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/math/clc_lgamma.cl
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log1p.cl
M libclc/clc/lib/generic/math/clc_log2.cl
A libclc/clc/lib/generic/math/clc_log2_fast.cl
R libclc/clc/lib/generic/math/clc_log_base.h
A libclc/clc/lib/generic/math/clc_log_base.inc
M libclc/clc/lib/generic/math/clc_logb.cl
M libclc/clc/lib/generic/math/clc_mad.cl
M libclc/clc/lib/generic/math/clc_maxmag.cl
M libclc/clc/lib/generic/math/clc_minmag.cl
M libclc/clc/lib/generic/math/clc_modf.cl
M libclc/clc/lib/generic/math/clc_nan.cl
M libclc/clc/lib/generic/math/clc_native_cos.cl
M libclc/clc/lib/generic/math/clc_native_divide.cl
M libclc/clc/lib/generic/math/clc_native_exp.cl
M libclc/clc/lib/generic/math/clc_native_exp10.cl
M libclc/clc/lib/generic/math/clc_native_exp2.cl
M libclc/clc/lib/generic/math/clc_native_log.cl
M libclc/clc/lib/generic/math/clc_native_log10.cl
M libclc/clc/lib/generic/math/clc_native_log2.cl
M libclc/clc/lib/generic/math/clc_native_powr.cl
M libclc/clc/lib/generic/math/clc_native_recip.cl
M libclc/clc/lib/generic/math/clc_native_rsqrt.cl
M libclc/clc/lib/generic/math/clc_native_sin.cl
M libclc/clc/lib/generic/math/clc_native_sqrt.cl
M libclc/clc/lib/generic/math/clc_native_tan.cl
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_nextafter.inc
M libclc/clc/lib/generic/math/clc_nextdown.cl
M libclc/clc/lib/generic/math/clc_nextdown.inc
M libclc/clc/lib/generic/math/clc_nextup.cl
M libclc/clc/lib/generic/math/clc_nextup.inc
M libclc/clc/lib/generic/math/clc_pow.cl
R libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pow_base.inc
M libclc/clc/lib/generic/math/clc_pown.cl
R libclc/clc/lib/generic/math/clc_pown.inc
M libclc/clc/lib/generic/math/clc_powr.cl
R libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_recip_fast.cl
M libclc/clc/lib/generic/math/clc_remainder.cl
A libclc/clc/lib/generic/math/clc_remainder.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_remquo.inc
A libclc/clc/lib/generic/math/clc_remquo_stret.inc
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.cl
R libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/clc/lib/generic/math/clc_round.cl
M libclc/clc/lib/generic/math/clc_rsqrt.cl
M libclc/clc/lib/generic/math/clc_sin.cl
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos.cl
M libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
A libclc/clc/lib/generic/math/clc_sincospi.cl
A libclc/clc/lib/generic/math/clc_sincospi.inc
M libclc/clc/lib/generic/math/clc_sinh.cl
M libclc/clc/lib/generic/math/clc_sinpi.cl
M libclc/clc/lib/generic/math/clc_sinpi.inc
M libclc/clc/lib/generic/math/clc_sqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt_cr.cl
M libclc/clc/lib/generic/math/clc_sqrt_fast.cl
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/math/clc_tan.cl
M libclc/clc/lib/generic/math/clc_tan.inc
M libclc/clc/lib/generic/math/clc_tanh.cl
M libclc/clc/lib/generic/math/clc_tanpi.cl
M libclc/clc/lib/generic/math/clc_tanpi.inc
M libclc/clc/lib/generic/math/clc_tgamma.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_all.cl
M libclc/clc/lib/generic/relational/clc_any.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/generic/relational/clc_isequal.cl
M libclc/clc/lib/generic/relational/clc_isfinite.cl
M libclc/clc/lib/generic/relational/clc_isgreater.cl
M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
M libclc/clc/lib/generic/relational/clc_isinf.cl
M libclc/clc/lib/generic/relational/clc_isless.cl
M libclc/clc/lib/generic/relational/clc_islessequal.cl
M libclc/clc/lib/generic/relational/clc_islessgreater.cl
M libclc/clc/lib/generic/relational/clc_isnan.cl
M libclc/clc/lib/generic/relational/clc_isnormal.cl
M libclc/clc/lib/generic/relational/clc_isnotequal.cl
M libclc/clc/lib/generic/relational/clc_isordered.cl
M libclc/clc/lib/generic/relational/clc_issubnormal.cl
M libclc/clc/lib/generic/relational/clc_isunordered.cl
M libclc/clc/lib/generic/relational/clc_select.cl
M libclc/clc/lib/generic/relational/clc_signbit.cl
M libclc/clc/lib/generic/shared/clc_clamp.cl
M libclc/clc/lib/generic/shared/clc_max.cl
M libclc/clc/lib/generic/shared/clc_min.cl
M libclc/clc/lib/generic/shared/clc_vload.cl
M libclc/clc/lib/generic/shared/clc_vstore.cl
A libclc/clc/lib/generic/subnormal_config.cl
M libclc/clc/lib/generic/workitem/clc_get_global_id.cl
M libclc/clc/lib/generic/workitem/clc_get_num_sub_groups.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_log.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_rsqrt.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sinpi.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sqrt.cl
M libclc/clc/lib/ptx-nvidiacl/relational/clc_isinf.cl
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_group_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_max_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_num_groups.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_sub_group_local_id.cl
M libclc/clc/lib/spirv/CMakeLists.txt
M libclc/clc/lib/spirv/math/clc_fmax.cl
M libclc/clc/lib/spirv/math/clc_fmin.cl
A libclc/clc/lib/spirv/subnormal_config.cl
M libclc/cmake/modules/CMakeCLCInformation.cmake
M libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
M libclc/cmake/modules/CMakeTestCLCCompiler.cmake
M libclc/opencl/include/clc/opencl/convert.h
M libclc/opencl/include/clc/opencl/opencl-base.h
M libclc/opencl/include/clc/opencl/synchronization/utils.h
M libclc/opencl/include/clc/opencl/utils.h
M libclc/opencl/lib/amdgpu/async/wait_group_events.cl
M libclc/opencl/lib/clspv/CMakeLists.txt
M libclc/opencl/lib/clspv/conversion/convert_float2float.cl
M libclc/opencl/lib/clspv/conversion/convert_float2int.cl
M libclc/opencl/lib/clspv/conversion/convert_int2float.cl
M libclc/opencl/lib/clspv/conversion/convert_integer.cl
M libclc/opencl/lib/clspv/math/fma.cl
M libclc/opencl/lib/clspv/shared/vstore_half.cl
M libclc/opencl/lib/generic/CMakeLists.txt
M libclc/opencl/lib/generic/async/async_work_group_copy.cl
M libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
M libclc/opencl/lib/generic/async/prefetch.cl
M libclc/opencl/lib/generic/async/wait_group_events.cl
M libclc/opencl/lib/generic/atomic/atom_add.cl
M libclc/opencl/lib/generic/atomic/atom_and.cl
M libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atom_dec.cl
M libclc/opencl/lib/generic/atomic/atom_inc.cl
M libclc/opencl/lib/generic/atomic/atom_max.cl
M libclc/opencl/lib/generic/atomic/atom_min.cl
M libclc/opencl/lib/generic/atomic/atom_or.cl
M libclc/opencl/lib/generic/atomic/atom_sub.cl
M libclc/opencl/lib/generic/atomic/atom_xchg.cl
M libclc/opencl/lib/generic/atomic/atom_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_add.cl
M libclc/opencl/lib/generic/atomic/atomic_and.cl
M libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_strong.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_weak.cl
M libclc/opencl/lib/generic/atomic/atomic_dec.cl
M libclc/opencl/lib/generic/atomic/atomic_exchange.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_and.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_max.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_min.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_or.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_clear.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_test_and_set.cl
M libclc/opencl/lib/generic/atomic/atomic_inc.cl
M libclc/opencl/lib/generic/atomic/atomic_init.cl
M libclc/opencl/lib/generic/atomic/atomic_load.cl
M libclc/opencl/lib/generic/atomic/atomic_max.cl
M libclc/opencl/lib/generic/atomic/atomic_min.cl
M libclc/opencl/lib/generic/atomic/atomic_or.cl
M libclc/opencl/lib/generic/atomic/atomic_store.cl
M libclc/opencl/lib/generic/atomic/atomic_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_xchg.cl
M libclc/opencl/lib/generic/atomic/atomic_xor.cl
M libclc/opencl/lib/generic/collective/work_group_broadcast.cl
M libclc/opencl/lib/generic/collective/work_group_reduce.cl
M libclc/opencl/lib/generic/common/degrees.cl
M libclc/opencl/lib/generic/common/mix.cl
M libclc/opencl/lib/generic/common/radians.cl
M libclc/opencl/lib/generic/common/sign.cl
M libclc/opencl/lib/generic/common/smoothstep.cl
M libclc/opencl/lib/generic/common/step.cl
M libclc/opencl/lib/generic/conversion/convert_float2float.cl
M libclc/opencl/lib/generic/conversion/convert_float2int.cl
M libclc/opencl/lib/generic/conversion/convert_int2float.cl
M libclc/opencl/lib/generic/conversion/convert_integer.cl
M libclc/opencl/lib/generic/geometric/cross.cl
M libclc/opencl/lib/generic/geometric/distance.cl
M libclc/opencl/lib/generic/geometric/dot.cl
M libclc/opencl/lib/generic/geometric/fast_distance.cl
M libclc/opencl/lib/generic/geometric/fast_length.cl
M libclc/opencl/lib/generic/geometric/fast_normalize.cl
M libclc/opencl/lib/generic/geometric/length.cl
M libclc/opencl/lib/generic/geometric/normalize.cl
M libclc/opencl/lib/generic/integer/abs.cl
M libclc/opencl/lib/generic/integer/abs_diff.cl
M libclc/opencl/lib/generic/integer/add_sat.cl
M libclc/opencl/lib/generic/integer/bit_reverse.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_signed.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_unsigned.cl
M libclc/opencl/lib/generic/integer/bitfield_insert.cl
M libclc/opencl/lib/generic/integer/clz.cl
M libclc/opencl/lib/generic/integer/ctz.cl
M libclc/opencl/lib/generic/integer/hadd.cl
M libclc/opencl/lib/generic/integer/mad24.cl
M libclc/opencl/lib/generic/integer/mad_hi.cl
M libclc/opencl/lib/generic/integer/mad_sat.cl
M libclc/opencl/lib/generic/integer/mul24.cl
M libclc/opencl/lib/generic/integer/mul_hi.cl
M libclc/opencl/lib/generic/integer/popcount.cl
M libclc/opencl/lib/generic/integer/rhadd.cl
M libclc/opencl/lib/generic/integer/rotate.cl
M libclc/opencl/lib/generic/integer/sub_sat.cl
M libclc/opencl/lib/generic/integer/upsample.cl
M libclc/opencl/lib/generic/math/acos.cl
M libclc/opencl/lib/generic/math/acosh.cl
M libclc/opencl/lib/generic/math/acospi.cl
M libclc/opencl/lib/generic/math/asin.cl
M libclc/opencl/lib/generic/math/asinh.cl
M libclc/opencl/lib/generic/math/asinpi.cl
M libclc/opencl/lib/generic/math/atan.cl
M libclc/opencl/lib/generic/math/atan2.cl
M libclc/opencl/lib/generic/math/atan2pi.cl
M libclc/opencl/lib/generic/math/atanh.cl
M libclc/opencl/lib/generic/math/atanpi.cl
M libclc/opencl/lib/generic/math/cbrt.cl
M libclc/opencl/lib/generic/math/ceil.cl
M libclc/opencl/lib/generic/math/copysign.cl
M libclc/opencl/lib/generic/math/cos.cl
M libclc/opencl/lib/generic/math/cosh.cl
M libclc/opencl/lib/generic/math/cospi.cl
M libclc/opencl/lib/generic/math/erf.cl
M libclc/opencl/lib/generic/math/erfc.cl
M libclc/opencl/lib/generic/math/exp.cl
M libclc/opencl/lib/generic/math/exp10.cl
M libclc/opencl/lib/generic/math/exp2.cl
M libclc/opencl/lib/generic/math/expm1.cl
M libclc/opencl/lib/generic/math/fabs.cl
M libclc/opencl/lib/generic/math/fdim.cl
M libclc/opencl/lib/generic/math/floor.cl
M libclc/opencl/lib/generic/math/fma.cl
M libclc/opencl/lib/generic/math/fmax.cl
M libclc/opencl/lib/generic/math/fmin.cl
M libclc/opencl/lib/generic/math/fmod.cl
M libclc/opencl/lib/generic/math/fract.cl
M libclc/opencl/lib/generic/math/frexp.cl
M libclc/opencl/lib/generic/math/half_cos.cl
M libclc/opencl/lib/generic/math/half_divide.cl
M libclc/opencl/lib/generic/math/half_exp.cl
M libclc/opencl/lib/generic/math/half_exp10.cl
M libclc/opencl/lib/generic/math/half_exp2.cl
M libclc/opencl/lib/generic/math/half_log.cl
M libclc/opencl/lib/generic/math/half_log10.cl
M libclc/opencl/lib/generic/math/half_log2.cl
M libclc/opencl/lib/generic/math/half_powr.cl
M libclc/opencl/lib/generic/math/half_recip.cl
M libclc/opencl/lib/generic/math/half_rsqrt.cl
M libclc/opencl/lib/generic/math/half_sin.cl
M libclc/opencl/lib/generic/math/half_sqrt.cl
M libclc/opencl/lib/generic/math/half_tan.cl
M libclc/opencl/lib/generic/math/hypot.cl
M libclc/opencl/lib/generic/math/ilogb.cl
M libclc/opencl/lib/generic/math/ldexp.cl
M libclc/opencl/lib/generic/math/lgamma.cl
M libclc/opencl/lib/generic/math/lgamma_r.cl
M libclc/opencl/lib/generic/math/log.cl
M libclc/opencl/lib/generic/math/log10.cl
M libclc/opencl/lib/generic/math/log1p.cl
M libclc/opencl/lib/generic/math/log2.cl
M libclc/opencl/lib/generic/math/logb.cl
M libclc/opencl/lib/generic/math/mad.cl
M libclc/opencl/lib/generic/math/maxmag.cl
M libclc/opencl/lib/generic/math/minmag.cl
M libclc/opencl/lib/generic/math/modf.cl
M libclc/opencl/lib/generic/math/nan.cl
M libclc/opencl/lib/generic/math/native_cos.cl
M libclc/opencl/lib/generic/math/native_divide.cl
M libclc/opencl/lib/generic/math/native_exp.cl
M libclc/opencl/lib/generic/math/native_exp10.cl
M libclc/opencl/lib/generic/math/native_exp2.cl
M libclc/opencl/lib/generic/math/native_log.cl
M libclc/opencl/lib/generic/math/native_log10.cl
M libclc/opencl/lib/generic/math/native_log2.cl
M libclc/opencl/lib/generic/math/native_powr.cl
M libclc/opencl/lib/generic/math/native_recip.cl
M libclc/opencl/lib/generic/math/native_rsqrt.cl
M libclc/opencl/lib/generic/math/native_sin.cl
M libclc/opencl/lib/generic/math/native_sqrt.cl
M libclc/opencl/lib/generic/math/native_tan.cl
M libclc/opencl/lib/generic/math/nextafter.cl
M libclc/opencl/lib/generic/math/pow.cl
M libclc/opencl/lib/generic/math/pown.cl
M libclc/opencl/lib/generic/math/powr.cl
M libclc/opencl/lib/generic/math/remainder.cl
M libclc/opencl/lib/generic/math/remquo.cl
M libclc/opencl/lib/generic/math/rint.cl
M libclc/opencl/lib/generic/math/rootn.cl
M libclc/opencl/lib/generic/math/round.cl
M libclc/opencl/lib/generic/math/rsqrt.cl
M libclc/opencl/lib/generic/math/sin.cl
M libclc/opencl/lib/generic/math/sincos.cl
M libclc/opencl/lib/generic/math/sinh.cl
M libclc/opencl/lib/generic/math/sinpi.cl
M libclc/opencl/lib/generic/math/sqrt.cl
M libclc/opencl/lib/generic/math/tan.cl
M libclc/opencl/lib/generic/math/tanh.cl
M libclc/opencl/lib/generic/math/tanpi.cl
M libclc/opencl/lib/generic/math/tgamma.cl
M libclc/opencl/lib/generic/math/trunc.cl
M libclc/opencl/lib/generic/mem_fence/fence.cl
M libclc/opencl/lib/generic/misc/shuffle.cl
M libclc/opencl/lib/generic/misc/shuffle2.cl
M libclc/opencl/lib/generic/relational/all.cl
M libclc/opencl/lib/generic/relational/any.cl
M libclc/opencl/lib/generic/relational/bitselect.cl
M libclc/opencl/lib/generic/relational/isequal.cl
M libclc/opencl/lib/generic/relational/isfinite.cl
M libclc/opencl/lib/generic/relational/isgreater.cl
M libclc/opencl/lib/generic/relational/isgreaterequal.cl
M libclc/opencl/lib/generic/relational/isinf.cl
M libclc/opencl/lib/generic/relational/isless.cl
M libclc/opencl/lib/generic/relational/islessequal.cl
M libclc/opencl/lib/generic/relational/islessgreater.cl
M libclc/opencl/lib/generic/relational/isnan.cl
M libclc/opencl/lib/generic/relational/isnormal.cl
M libclc/opencl/lib/generic/relational/isnotequal.cl
M libclc/opencl/lib/generic/relational/isordered.cl
M libclc/opencl/lib/generic/relational/isunordered.cl
M libclc/opencl/lib/generic/relational/relational_binary_def.inc
M libclc/opencl/lib/generic/relational/relational_unary_def.inc
M libclc/opencl/lib/generic/relational/select.cl
M libclc/opencl/lib/generic/relational/signbit.cl
M libclc/opencl/lib/generic/shared/clamp.cl
M libclc/opencl/lib/generic/shared/max.cl
M libclc/opencl/lib/generic/shared/min.cl
M libclc/opencl/lib/generic/shared/vload.cl
M libclc/opencl/lib/generic/shared/vstore.cl
M libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
R libclc/opencl/lib/generic/subnormal_config.cl
M libclc/opencl/lib/generic/workitem/get_enqueued_local_size.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
M libclc/opencl/lib/generic/workitem/get_global_offset.cl
M libclc/opencl/lib/generic/workitem/get_group_id.cl
M libclc/opencl/lib/generic/workitem/get_local_id.cl
M libclc/opencl/lib/generic/workitem/get_local_size.cl
M libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/workitem/get_work_dim.cl
M libclc/test/CMakeLists.txt
R libclc/test/check_external_funcs.sh
M libclc/test/lit.cfg.py
M libclc/test/lit.site.cfg.py.in
M libcxx/CMakeLists.txt
M libcxx/docs/index.rst
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__tree
M libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/set
M libcxx/include/string
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/version
M libcxx/src/include/apple_availability.h
M libcxx/test/libcxx-03/transitive_includes/to_csv.py
M libcxx/test/libcxx/transitive_includes/to_csv.py
A libcxx/test/libcxx/type_traits/is_transparently_comparable.compile.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_rand.pass.cpp
A libcxx/test/std/containers/associative/lookup_with_converting_comparator.pass.cpp
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/utils/ci/lnt/commit-watch
M libcxx/utils/ci/lnt/run-benchmarks
A libcxx/utils/ci/lnt/runners/README.md
A libcxx/utils/ci/lnt/runners/apple-m5-clang21
A libcxx/utils/ci/lnt/runners/apple-m5-xcode26
M libcxx/utils/generate_abi_list.py
M libcxx/utils/generate_escaped_output_table.py
M libcxx/utils/generate_extended_grapheme_cluster_table.py
M libcxx/utils/generate_extended_grapheme_cluster_test.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_indic_conjunct_break_table.py
M libcxx/utils/generate_iwyu_mapping.py
M libcxx/utils/generate_width_estimation_table.py
M libcxx/utils/run.py
M libcxx/utils/ssh.py
M libcxx/utils/sym_diff.py
M libsycl/docs/index.rst
A libsycl/include/sycl/__impl/usm_alloc_type.hpp
A libsycl/include/sycl/__impl/usm_functions.hpp
M libsycl/include/sycl/sycl.hpp
M libsycl/src/CMakeLists.txt
M libsycl/src/detail/device_impl.cpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_utils.cpp
M libsycl/src/detail/offload/offload_utils.hpp
M libsycl/src/ld-version-script.txt
A libsycl/src/usm_functions.cpp
A libsycl/test/usm/alloc_functions.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-feature-gcs.s
M lld/test/ELF/combreloc.s
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/resources/build.rst
M lldb/docs/resources/formatterbytecode.rst
M lldb/docs/use/map.rst
M lldb/docs/use/symbolication.rst
M lldb/docs/use/tutorials/script-driven-debugging.md
M lldb/examples/python/formatter_bytecode.py
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/Host/Config.h.cmake
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Platform.h
M lldb/include/lldb/Utility/Log.h
M lldb/include/lldb/Utility/Stream.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
A lldb/source/Core/SafeAutoloadPaths.inc.in
M lldb/source/Core/UserSettingsController.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Expression/FunctionCaller.cpp
M lldb/source/Expression/IRInterpreter.cpp
M lldb/source/Expression/Materializer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/OptionValueProperties.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
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/IRForTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.cpp
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.h
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.h
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/Target/ThreadPlanStepInstruction.cpp
M lldb/source/Target/ThreadPlanStepOut.cpp
M lldb/source/Target/ThreadPlanStepRange.cpp
M lldb/source/Target/ThreadPlanStepThrough.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Target/UnwindLLDB.cpp
M lldb/source/Utility/Listener.cpp
M lldb/source/Utility/Stream.cpp
M lldb/source/Utility/StringList.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/ValueObject.cpp
A lldb/test/API/commands/expression/ptrauth-auth-traps/Makefile
A lldb/test/API/commands/expression/ptrauth-auth-traps/TestPtrAuthAuthTraps.py
A lldb/test/API/commands/expression/ptrauth-auth-traps/main.c
A lldb/test/API/commands/expression/ptrauth-objc/Makefile
A lldb/test/API/commands/expression/ptrauth-objc/TestPtrAuthObjectiveC.py
A lldb/test/API/commands/expression/ptrauth-objc/main.m
A lldb/test/API/commands/expression/ptrauth/Makefile
A lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
A lldb/test/API/commands/expression/ptrauth/main.c
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILExprPointerArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp
A lldb/test/API/functionalities/compilation-prefix-map/Makefile
A lldb/test/API/functionalities/compilation-prefix-map/TestCompilationPrefixMap.py
A lldb/test/API/functionalities/compilation-prefix-map/main.c
M lldb/test/API/functionalities/data-formatter/bytecode-synthetic/main.cpp
M lldb/test/API/functionalities/data-formatter/synthetic_subscript/main.c
A lldb/test/API/lang/c/ptrauth/Makefile
A lldb/test/API/lang/c/ptrauth/TestPtrAuth.py
A lldb/test/API/lang/c/ptrauth/main.c
M lldb/test/API/lang/cpp/incomplete-types/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/TestSharedCacheVMRange.py
A lldb/test/API/macosx/shared-cache-vm-range/main.c
A lldb/test/API/symstore/Makefile
A lldb/test/API/symstore/TestSymStore.py
A lldb/test/API/symstore/main.c
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-dap/variables/main.cpp
M lldb/test/API/windows/launch/replace-dll/TestReplaceDLL.py
M lldb/test/Shell/Diagnostics/TestDump.test
M lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-python-script-name-warnings.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-takes-priority.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/safe-path-fallback-no-dsym-script.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-basic-load.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-last-path-wins.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-nested-dir.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-dirname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-scriptname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-paths-configured.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-special-chars-sanitized.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-submodule-import.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-subpackage-import.test
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
M lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
M lldb/test/Shell/SymbolFile/NativePDB/vbases.test
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
M lldb/tools/debugserver/source/MacOSX/MachProcess.h
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
M lldb/tools/driver/CMakeLists.txt
A lldb/tools/driver/lldb-mte-entitlements.plist
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/Variables.cpp
M lldb/tools/lldb-dap/Variables.h
M lldb/unittests/DAP/VariablesTest.cpp
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
M lldb/unittests/Platform/PlatformTest.cpp
A lldb/unittests/Platform/TestUtils.cpp
A lldb/unittests/Platform/TestUtils.h
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
M lldb/unittests/Utility/LogTest.cpp
M lldb/unittests/Utility/StreamTest.cpp
M llvm/CMakeLists.txt
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/PointerUnionBM.cpp
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
M llvm/docs/BranchWeightMetadata.rst
M llvm/docs/CommandGuide/llc.rst
M llvm/docs/CommandGuide/llvm-link.rst
M llvm/docs/DirectX/DXILResources.rst
M llvm/docs/Frontend/PerformanceTips.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/examples/BrainF/BrainF.cpp
M llvm/examples/Fibonacci/fibonacci.cpp
M llvm/examples/IRTransforms/SimplifyCFG.cpp
M llvm/examples/ParallelJIT/ParallelJIT.cpp
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/CFG.h
M llvm/include/llvm/Analysis/DXILResource.h
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/IVUsers.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/LoopInfo.h
M llvm/include/llvm/Analysis/MemorySSA.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
R llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/CommandFlags.h
M llvm/include/llvm/CodeGen/ExpandMemCmp.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/LiveRangeEdit.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/ValueTypes.h
M llvm/include/llvm/Config/config.h.cmake
M llvm/include/llvm/DWARFLinker/AddressesMap.h
M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
M llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
M llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/DerivedTypes.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InlineAsm.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/MatrixBuilder.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/Value.def
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Object/Archive.h
A llvm/include/llvm/Object/BBAddrMap.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/SandboxIR/Values.def
M llvm/include/llvm/Support/FileSystem.h
M llvm/include/llvm/Support/GenericLoopInfo.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/include/llvm/Support/HTTP/HTTPClient.h
M llvm/include/llvm/Support/ModRef.h
M llvm/include/llvm/Support/NVPTXAddrSpace.h
A llvm/include/llvm/Support/NVVMAttributes.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/include/llvm/Transforms/Utils/Instrumentation.h
M llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
M llvm/lib/Analysis/CFG.cpp
M llvm/lib/Analysis/DXILResource.cpp
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/BinaryFormat/Magic.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/BasicBlockSections.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/CommandFlags.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/CodeGen/ExpandMemCmp.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineInstrBundle.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.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/SplitKit.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
M llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp
M llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
M llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
M llvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/HTTP/CMakeLists.txt
M llvm/lib/Support/HTTP/HTTPClient.cpp
M llvm/lib/Support/KnownFPClass.cpp
M llvm/lib/Support/TextEncoding.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Support/YAMLParser.cpp
M llvm/lib/Support/raw_socket_stream.cpp
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.cpp
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.h
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/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/R600MCInstLower.cpp
M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.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/SILowerI1Copies.cpp
M llvm/lib/Target/AMDGPU/SILowerI1Copies.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/HexagonLiveVariables.cpp
M llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.h
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.h
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
A llvm/lib/Target/PowerPC/PPCRegisterClasses.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoDMR.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoMMA.td
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.cpp
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
M llvm/lib/Target/X86/GISel/X86PostLegalizerCombiner.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrCMovSetCC.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86PassRegistry.def
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/Transforms/Coroutines/CoroElide.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/AlwaysInliner.cpp
M llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/lib/Transforms/IPO/LoopExtractor.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ModuleInliner.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/runtimes/CMakeLists.txt
A llvm/test/Analysis/BasicAA/gep-and-mask-gcd.ll
M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
A llvm/test/Analysis/DependenceAnalysis/exact-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/gcd-miv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/non-monotonic.ll
M llvm/test/Analysis/DependenceAnalysis/rdiv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-overflow.ll
A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-delta-signed-min.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-overflow.ll
M llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dep-same-ptr.ll
A llvm/test/Analysis/MemorySSA/call-loop-carried-dependency.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info-with-multiple-predecessors.ll
A llvm/test/Analysis/ScalarEvolution/two-loop-latches.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
M llvm/test/Assembler/atomic.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
A llvm/test/Assembler/byte-invalid.ll
A llvm/test/Assembler/byte.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/memory-attribute-errors.ll
M llvm/test/Assembler/memory-attribute.ll
A llvm/test/Bindings/llvm-c/byte.ll
M llvm/test/Bindings/llvm-c/echo.ll
M llvm/test/Bitcode/DIImportedEntity_elements.ll
M llvm/test/Bitcode/DIModule-fortran-external-module.ll
M llvm/test/Bitcode/attributes.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/memory-attribute-upgrade.ll
A llvm/test/CodeGen/AArch64/GlobalISel/combine-binop-neg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abds.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abdu.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-cross-block-different-regs.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-nzcvdef.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
A llvm/test/CodeGen/AArch64/aarch64-sys-intrinsic.ll
M llvm/test/CodeGen/AArch64/addsub-24bit-imm.mir
M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
M llvm/test/CodeGen/AArch64/arm64-neon-aba-abd.ll
M llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
M llvm/test/CodeGen/AArch64/bsp_implicit_ops.mir
A llvm/test/CodeGen/AArch64/ccmp-look-through-copy.mir
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
M llvm/test/CodeGen/AArch64/expand-blr-rvmarker-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-constructive-zzi.mir
M llvm/test/CodeGen/AArch64/expand-load-got-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-movi-renamable.mir
M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
M llvm/test/CodeGen/AArch64/expand-subs-pseudo.mir
M llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
A llvm/test/CodeGen/AArch64/is_fpclass.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
A llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
A llvm/test/CodeGen/AArch64/mops-mmo-size.ll
M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
M llvm/test/CodeGen/AArch64/movimm-wzr.mir
M llvm/test/CodeGen/AArch64/neg-selects.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/peephole-csel.mir
M llvm/test/CodeGen/AArch64/peephole-insert-subreg.mir
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
M llvm/test/CodeGen/AArch64/peephole-movd.mir
M llvm/test/CodeGen/AArch64/peephole-orr.mir
M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
M llvm/test/CodeGen/AArch64/redundant-orrwrs-from-zero-extend.mir
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryComm-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryCommWithRev-merging.mir
M llvm/test/CodeGen/AArch64/sve-pr92779.ll
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve2-bitsel-pseudos-expansion.mir
M llvm/test/CodeGen/AArch64/sve2p1-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.class.mir
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kernarg.segment.ptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsghalt.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.wqm.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.writelane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-icmp.s16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-salu-float.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sub.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uadde.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-usube.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_u64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
M llvm/test/CodeGen/AMDGPU/bf16-math.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/convergent.mir
M llvm/test/CodeGen/AMDGPU/copy-to-reg.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
A llvm/test/CodeGen/AMDGPU/insert-skips-gfx1250.mir
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sethalt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.var.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.ttracedata.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.event.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.waitcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
Log Message:
-----------
Merge branch 'main' into fix-blockfreq-unroll-unconditional-latches--prep
Commit: 50168f2ffa999e5475863f719b8d9c77e90cd6f6
https://github.com/llvm/llvm-project/commit/50168f2ffa999e5475863f719b8d9c77e90cd6f6
Author: Joel E. Denny <jdenny.ornl at gmail.com>
Date: 2026-03-24 (Tue, 24 Mar 2026)
Changed paths:
M .ci/all_requirements.txt
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .ci/green-dragon/lldb-ubuntu.groovy
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/bazel-checks.yml
M .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-libc-container.yml
M .github/workflows/build-metrics-container.yml
M .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
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/ids-check.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
M .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/lldb-pylint-action.yml
M .github/workflows/llvm-abi-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-code-lint.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/premerge.yaml
M .github/workflows/prune-branches.yml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/sycl-tests.yml
M .github/workflows/test-unprivileged-download-artifact.yml
M .github/workflows/version-check.yml
A .github/workflows/zizmor.yml
M bolt/include/bolt/Passes/ReorderFunctions.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
M bolt/runtime/instr.cpp
A bolt/test/AArch64/function-order-hybrid.s
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
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/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/Diagnostics.h
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/ScanningProjectModules.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CompilerTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/multiple-inheritance.rst
M clang-tools-extra/test/CMakeLists.txt
A clang-tools-extra/test/Unit/CMakeLists.txt
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/deque
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/forward_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/functional
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/queue
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/set
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/stack
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/tuple
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_set
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/utility
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/vector
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/trailing-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-structured-binding/fake_std_pair_tuple.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-structured-binding.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-transparent-functors.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_file.py
A clang/bindings/python/tests/cindex/test_version.py
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/UsersManual.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/include/clang/Analysis/MacroExpansionContext.h
A clang/include/clang/Basic/AArch64CodeGenUtils.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/CodeGenOptions.def
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/DiagnosticOptions.def
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
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/LowerToLLVM.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/ModuleDepCollector.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/TextDiagnosticBuffer.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Parse/Parser.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaPPC.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
A clang/lib/AST/HLSLResource.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Analysis/CMakeLists.txt
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/MacroExpansionContext.cpp
M clang/lib/Basic/ASTSourceDescriptor.cpp
M clang/lib/Basic/Cuda.cpp
M clang/lib/Basic/Module.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/X86.h
A clang/lib/CIR/CodeGen/CIRGenAMDGPU.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
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/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.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/CodeGenTypes.cpp
M clang/lib/CodeGen/EHScopeStack.h
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ModulesDriver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
A clang/lib/Headers/endian.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/llvm_libc_wrappers/ctype.h
M clang/lib/Headers/llvm_libc_wrappers/string.h
M clang/lib/Index/IndexingAction.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/Parser.cpp
A clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
M clang/test/AST/ByteCode/arrays.cpp
R clang/test/AST/ByteCode/builtin-align-cxx.cpp
M clang/test/AST/ByteCode/builtins.c
M clang/test/AST/ByteCode/constexpr-steps.cpp
M clang/test/AST/ByteCode/lambda.cpp
M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
M clang/test/AST/ByteCode/loops.cpp
M clang/test/AST/ByteCode/records.cpp
A clang/test/AST/HLSL/resources-in-structs-errors.hlsl
A clang/test/AST/HLSL/resources-in-structs.hlsl
M clang/test/AST/ast-crash-doc-function-template.cpp
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/dump.cpp
A clang/test/Analysis/Scalable/command-line-interface.cpp
A clang/test/Analysis/Scalable/downgradable-errors.cpp
A clang/test/Analysis/Scalable/help.cpp
M clang/test/Analysis/Scalable/ssaf-format/list.test
A clang/test/Analysis/allow-equality-of-stack-and-symbolic-ptr.c
A clang/test/Analysis/clang-suppress/class-template-specializations.cpp
A clang/test/Analysis/clang-suppress/classes.cpp
A clang/test/Analysis/clang-suppress/diagnostic-identifiers.cpp
A clang/test/Analysis/clang-suppress/friends.cpp
A clang/test/Analysis/clang-suppress/function-templates.cpp
A clang/test/Analysis/clang-suppress/lambdas.cpp
A clang/test/Analysis/clang-suppress/macros.cpp
A clang/test/Analysis/clang-suppress/namespaces.cpp
A clang/test/Analysis/clang-suppress/nested-templates.cpp
A clang/test/Analysis/clang-suppress/statements.cpp
A clang/test/Analysis/clang-suppress/template-methods.cpp
M clang/test/Analysis/indirect-goto-basics.c
M clang/test/Analysis/plist-macros-with-expansion-ctu.c
M clang/test/Analysis/plist-macros-with-expansion.c
M clang/test/Analysis/plist-macros-with-expansion.cpp
M clang/test/Analysis/ptr-arith.c
R clang/test/Analysis/suppression-attr.cpp
A clang/test/C/C2y/n3517.c
A clang/test/C/C2y/n3652.c
A clang/test/C/C2y/n3715.c
A clang/test/CIR/CodeGen/Inputs/std-compare.h
A clang/test/CIR/CodeGen/abi-lower-after-unreachable.cpp
A clang/test/CIR/CodeGen/abstract-cond.c
M clang/test/CIR/CodeGen/address-space.c
M clang/test/CIR/CodeGen/arg-attrs.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/globals.cpp
A clang/test/CIR/CodeGen/initializer-list-two-pointers.cpp
M clang/test/CIR/CodeGen/invoke-attrs.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/lambda.cpp
A clang/test/CIR/CodeGen/loop-cond-cleanup.cpp
M clang/test/CIR/CodeGen/misc-attrs.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/noreturn.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/replace-global.cpp
M clang/test/CIR/CodeGen/ret-attrs.cpp
A clang/test/CIR/CodeGen/save-temps.c
M clang/test/CIR/CodeGen/side-effect.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
M clang/test/CIR/CodeGen/ternary-throw.cpp
M clang/test/CIR/CodeGen/ternary.cpp
A clang/test/CIR/CodeGen/three-way-cmp.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
M clang/test/CIR/CodeGenBuiltins/builtins-overflow.cpp
M clang/test/CIR/CodeGenCUDA/address-spaces.cu
M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
M clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp
A clang/test/CIR/CodeGenHIP/amdgpu-module-flags.hip
M clang/test/CIR/CodeGenHIP/simple.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/data-copy-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/routine-anon-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-bind.c
M clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
M clang/test/CIR/CodeGenOpenACC/routine-clauses.cpp
M clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals2.cpp
M clang/test/CIR/CodeGenOpenACC/routine-locals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-members.cpp
M clang/test/CIR/CodeGenOpenACC/routine-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-templ.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
M clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
A clang/test/CIR/IR/invalid-cmp3way.cir
A clang/test/CIR/Lowering/global-address-space.cir
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg10xx.cpp
M clang/test/CXX/drs/cwg118.cpp
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg12xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg158.cpp
M clang/test/CXX/drs/cwg15xx.cpp
M clang/test/CXX/drs/cwg16xx.cpp
M clang/test/CXX/drs/cwg1736.cpp
M clang/test/CXX/drs/cwg17xx.cpp
M clang/test/CXX/drs/cwg1884.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg20xx.cpp
M clang/test/CXX/drs/cwg2149.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg2335.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg273.cpp
M clang/test/CXX/drs/cwg2771.cpp
M clang/test/CXX/drs/cwg279.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg2947.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/drs/cwg722.cpp
M clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CodeCompletion/cpp23-explicit-object.cpp
M clang/test/CodeCompletion/member-access.cpp
M clang/test/CodeGen/AArch64/bf16-getset-intrinsics.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
A clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
A clang/test/CodeGen/PowerPC/attr-target-clones.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
M clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
M clang/test/CodeGen/arm64-microsoft-sys.c
M clang/test/CodeGen/builtins-extended-image.c
M clang/test/CodeGen/builtins-image-load.c
M clang/test/CodeGen/builtins-image-store.c
M clang/test/CodeGen/overflow-behavior-types.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
A clang/test/CodeGenCUDA/mangling.cu
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
M clang/test/CodeGenCXX/builtin_FUNCTION.cpp
M clang/test/CodeGenCXX/dllexport-inherited-ctor.cpp
A clang/test/CodeGenCXX/microsoft-vector-deleting-dtors-new-array.cpp
A clang/test/CodeGenHIP/builtins-amdgcn-buffer-format.hip
A clang/test/CodeGenHLSL/builtins/QuadReadAcrossX.hlsl
M clang/test/CodeGenHLSL/builtins/mul.hlsl
M clang/test/CodeGenHLSL/builtins/transpose.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-gfx1250-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32-gfx10-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64-gfx10-err.cl
M clang/test/CodeGenOpenCL/convergent.cl
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclang_rt.profile.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/nvptx64-nvidia-cuda/libclang_rt.profile.a
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/autocomplete.c
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/cl-link.c
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/darwin-builtin-modules.c
R clang/test/Driver/darwin-ld-platform-version-macos-nosdk.c
M clang/test/Driver/darwin-ld-platform-version-macos.c
M clang/test/Driver/fsanitize-ignorelist.c
A clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
A clang/test/Driver/modules-driver-dep-graph.cpp
A clang/test/Driver/modules-driver-dep-scan-diagnostics.cpp
A clang/test/Driver/modules-driver-duplicate-named-module.cpp
M clang/test/Driver/modules-driver-manifest-not-found.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/spirv-llvm-link.c
A clang/test/Driver/x86-fixed-di-register.c
M clang/test/Driver/xcselect.c
A clang/test/Frontend/verify-directives-full-match.cpp
A clang/test/Frontend/verify-directives-one-diag.cpp
A clang/test/Frontend/verify-directives-order.cpp
A clang/test/Frontend/verify-directives-wildcard.cpp
A clang/test/Headers/endian.c
M clang/test/Index/annotate-module.m
M clang/test/Index/complete-qualified.cpp
M clang/test/Interpreter/pretty-print.cpp
A clang/test/Misc/noexecstack.c
M clang/test/Modules/DebugInfoNamespace.cpp
M clang/test/Modules/DebugInfoSubmoduleImport.c
M clang/test/Modules/DebugInfoTransitiveImport.m
M clang/test/Modules/ExtDebugInfo.cpp
M clang/test/Modules/ExtDebugInfo.m
M clang/test/Modules/ModuleDebugInfo.cpp
M clang/test/Modules/ModuleDebugInfo.m
M clang/test/Modules/ModuleModuleDebugInfo.cpp
A clang/test/Modules/align-val-t-merge.cpp
M clang/test/Modules/debug-info-moduleimport.m
M clang/test/Modules/global_index.m
M clang/test/Modules/load-after-failure.m
M clang/test/Modules/module-debuginfo-compdir.m
M clang/test/Modules/module-debuginfo-prefix.m
A clang/test/Modules/pr179178.cpp
A clang/test/Modules/pr186603.cppm
A clang/test/Modules/relative-module-cache.c
M clang/test/OpenMP/declare_target_ast_print.cpp
M clang/test/OpenMP/declare_target_codegen.cpp
M clang/test/OpenMP/declare_target_link_codegen.cpp
M clang/test/OpenMP/declare_target_messages.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
A clang/test/OpenMP/map_const_aggregate.cpp
M clang/test/OpenMP/openmp_offload_codegen.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/Sema/Inputs/lifetime-analysis.h
A clang/test/Sema/PowerPC/attr-target-clones.c
M clang/test/Sema/attr-target.c
M clang/test/Sema/builtins-microsoft-arm64.c
A clang/test/Sema/gh183974.c
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
A clang/test/Sema/x86-fixed-global-register.c
M clang/test/Sema/zvk-invalid-features.c
M clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.ignore-dllattr.cpp
M clang/test/SemaCXX/builtin-align-cxx.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
A clang/test/SemaCXX/deleted-template-spec-diag.cpp
M clang/test/SemaCXX/dllexport-constrained-inherited-ctor.cpp
M clang/test/SemaCXX/gh134265.cpp
M clang/test/SemaCXX/type_pack_element.cpp
A clang/test/SemaCXX/warn-maybe-unused-private-field.cpp
A clang/test/SemaHIP/builtins-amdgcn-buffer-format.hip
A clang/test/SemaHLSL/BuiltIns/QuadReadAcrossX-errors.hlsl
A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-format-error.cl
A clang/test/SemaOpenCL/builtins-amdgcn-struct-buffer-format-error.cl
A clang/test/SemaTemplate/GH176152.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/ctad.cpp
M clang/test/SemaTemplate/deduction-crash.cpp
M clang/test/SemaTemplate/stack-exhaustion.cpp
M clang/tools/c-index-test/c-index-test.c
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/unittests/AST/ProfilingTest.cpp
M clang/unittests/Analysis/CFGBackEdgesTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestMacroExpansion.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
A clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/scripts/asan_symbolize.py
M compiler-rt/lib/asan/tests/asan_interface_test.cpp
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
M compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfiling.h
A compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
M compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py
M compiler-rt/lib/sanitizer_common/scripts/sancov.py
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/flags.inc
M compiler-rt/lib/scudo/standalone/options.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test_main.cpp
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
M compiler-rt/lib/scudo/standalone/wrappers_cpp.cpp
M compiler-rt/test/asan/TestCases/wild_pointer.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/file.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/test/Driver/safe-trampoline-gnustack.f90
M flang-rt/test/lit.site.cfg.py.in
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
M flang/docs/Directives.md
M flang/docs/Extensions.md
M flang/docs/F202X.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/Intrinsics.md
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Character.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
M flang/include/flang/Parser/message.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/tools.h
M flang/include/flang/Runtime/character.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/openmp-directive-sets.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Character.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/CMakeLists.txt
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
M flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/source.cpp
M flang/lib/Parser/stmt-parser.h
M flang/lib/Parser/tools.cpp
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-private-boxed-array.mlir
A flang/test/Evaluate/bug2418.f90
A flang/test/Fir/OpenACC/acc-routine-to-gpu-func.fir
M flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
A flang/test/Fir/array-coor-canonicalization-acc.fir
A flang/test/Fir/bitcast-fold.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
M flang/test/Integration/OpenMP/copyprivate.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
A flang/test/Lower/HLFIR/ignore-tkr-c-base-addr.f90
M flang/test/Lower/Intrinsics/anint.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_signbit.f90
M flang/test/Lower/Intrinsics/index.f90
M flang/test/Lower/Intrinsics/iparity.f90
M flang/test/Lower/Intrinsics/is_contiguous.f90
M flang/test/Lower/Intrinsics/is_iostat_value.f90
M flang/test/Lower/Intrinsics/ishft.f90
M flang/test/Lower/Intrinsics/ishftc.f90
M flang/test/Lower/Intrinsics/lbound.f90
M flang/test/Lower/Intrinsics/leadz.f90
M flang/test/Lower/Intrinsics/len.f90
M flang/test/Lower/Intrinsics/lge_lgt_lle_llt.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Lower/Intrinsics/matmul.f90
M flang/test/Lower/Intrinsics/max.f90
M flang/test/Lower/Intrinsics/maxloc.f90
M flang/test/Lower/Intrinsics/maxval.f90
M flang/test/Lower/Intrinsics/merge.f90
M flang/test/Lower/Intrinsics/merge_bits.f90
M flang/test/Lower/Intrinsics/minloc.f90
A flang/test/Lower/Intrinsics/split.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
M flang/test/Lower/OpenACC/acc-host-data.f90
M flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
A flang/test/Lower/OpenMP/Todo/interchange.f90
M flang/test/Lower/OpenMP/atomic-update.f90
A flang/test/Lower/OpenMP/copyprivate-equivalence.f90
M flang/test/Lower/OpenMP/copyprivate.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/copyprivate3.f90
M flang/test/Lower/OpenMP/copyprivate4.f90
M flang/test/Lower/OpenMP/copyprivate5.f90
M flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
M flang/test/Lower/OpenMP/minmax-optional-parameters.f90
M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.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-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/PowerPC/ppc-vec-store-elem-order.f90
M flang/test/Lower/PowerPC/ppc-vec-store.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/fp-maxmin-behavior.f90
M flang/test/Lower/math-lowering/anint.f90
A flang/test/Parser/OpenMP/do-interchange.f90
A flang/test/Parser/OpenMP/interchange-fail.f90
A flang/test/Parser/OpenMP/interchange-permutation.f90
A flang/test/Parser/OpenMP/interchange.f90
A flang/test/Parser/shared-line-program-units.f90
A flang/test/Parser/shared-line-program-units.reject.0.f90
A flang/test/Parser/shared-line-program-units.reject.1.f90
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-wait-validity.f90
M flang/test/Semantics/OpenMP/do-collapse.f90
M flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/do-ordered.f90
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do10.f90
M flang/test/Semantics/OpenMP/do13.f90
M flang/test/Semantics/OpenMP/do15.f90
M flang/test/Semantics/OpenMP/do16.f90
M flang/test/Semantics/OpenMP/do22.f90
M flang/test/Semantics/OpenMP/fuse1.f90
A flang/test/Semantics/OpenMP/interchange-permutation.f90
A flang/test/Semantics/OpenMP/interchange01.f90
M flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence-nowarn.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence.f90
M flang/test/Semantics/OpenMP/threadprivate02.f90
M flang/test/Semantics/OpenMP/tile05.f90
M flang/test/Semantics/OpenMP/tile07.f90
A flang/test/Semantics/bug181353.f90
A flang/test/Semantics/bug2381.f90
A flang/test/Semantics/bug2436.f
A flang/test/Semantics/canondo18.f90
M flang/test/Semantics/getsymbols02.f90
A flang/test/Semantics/split.f90
M flang/test/Semantics/test_errors.py
M flang/test/Transforms/FIRToMemRef/alloca.mlir
M flang/unittests/Optimizer/CMakeLists.txt
A flang/unittests/Optimizer/FIRCallInterfaceTest.cpp
M libc/CMakeLists.txt
M libc/Maintainers.rst
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LibcConfig.cmake
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/config.json
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/config/windows/entrypoints.txt
A libc/docs/build_concepts.rst
R libc/docs/configure.rst
M libc/docs/contributing.rst
M libc/docs/dev/clang_tidy_checks.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/implementation_standard.rst
M libc/docs/dev/index.rst
A libc/docs/dev/modular_format.rst
A libc/docs/dev/syscall_wrapper_refactor.rst
M libc/docs/full_host_build.rst
M libc/docs/getting_started.rst
M libc/docs/headers/math/index.rst
M libc/docs/index.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ipc_macros.h
A libc/hdr/sys_sem_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/constraint_handler_t.h
A libc/hdr/types/errno_t.h
A libc/hdr/types/rsize_t.h
A libc/hdr/types/struct_sembuf.h
A libc/hdr/types/struct_semid_ds.h
A libc/hdr/types/struct_seminfo.h
M libc/include/CMakeLists.txt
M libc/include/errno.yaml
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
M libc/include/llvm-libc-macros/linux/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/sys-ipc-macros.h
A libc/include/llvm-libc-macros/linux/sys-sem-macros.h
A libc/include/llvm-libc-macros/sys-sem-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/constraint_handler_t.h
A libc/include/llvm-libc-types/errno_t.h
A libc/include/llvm-libc-types/rsize_t.h
A libc/include/llvm-libc-types/struct_sembuf.h
A libc/include/llvm-libc-types/struct_semid_ds.h
A libc/include/llvm-libc-types/struct_seminfo.h
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
A libc/include/sys/sem.yaml
M libc/include/threads.yaml
M libc/include/wctype.yaml
M libc/shared/math.h
A libc/shared/math/atanbf16.h
A libc/shared/math/atanpif16.h
A libc/shared/math/bf16divf128.h
A libc/shared/math/bf16fma.h
A libc/shared/math/daddf128.h
A libc/shared/math/daddl.h
A libc/shared/math/fma.h
A libc/shared/math/fmaf.h
A libc/shared/math/fmaf16.h
A libc/shared/math/log_bf16.h
A libc/shared/math/sqrtbf16.h
M libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M libc/src/__support/FPUtil/PolyEval.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/File/file.cpp
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
R libc/src/__support/OSUtil/linux/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/close.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/open.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/read.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/write.h
M libc/src/__support/ctype_utils.h
M libc/src/__support/macros/attributes.h
M libc/src/__support/macros/config.h
M libc/src/__support/math/CMakeLists.txt
M libc/src/__support/math/acosf.h
M libc/src/__support/math/asinf.h
A libc/src/__support/math/atanbf16.h
A libc/src/__support/math/atanpif16.h
A libc/src/__support/math/bf16divf128.h
A libc/src/__support/math/bf16fma.h
A libc/src/__support/math/daddf128.h
A libc/src/__support/math/daddl.h
A libc/src/__support/math/fma.h
A libc/src/__support/math/fmaf.h
A libc/src/__support/math/fmaf16.h
M libc/src/__support/math/hypotf.h
M libc/src/__support/math/inv_trigf_utils.h
M libc/src/__support/math/log.h
A libc/src/__support/math/log_bf16.h
M libc/src/__support/math/log_range_reduction.h
A libc/src/__support/math/sqrtbf16.h
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/open.cpp
M libc/src/math/CMakeLists.txt
A libc/src/math/atanbf16.h
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atanbf16.cpp
M libc/src/math/generic/atanpif16.cpp
M libc/src/math/generic/bf16divf128.cpp
M libc/src/math/generic/bf16fma.cpp
M libc/src/math/generic/daddf128.cpp
M libc/src/math/generic/daddl.cpp
M libc/src/math/generic/fma.cpp
M libc/src/math/generic/fmaf.cpp
M libc/src/math/generic/fmaf16.cpp
M libc/src/math/generic/log_bf16.cpp
M libc/src/math/generic/sqrtbf16.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
A libc/src/stdio/asprintf_modular.cpp
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/printf_modular.cpp
M libc/src/stdio/baremetal/vfprintf.cpp
M libc/src/stdio/baremetal/vfprintf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vprintf_modular.cpp
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/gpu/CMakeLists.txt
M libc/src/stdio/linux/stderr.cpp
M libc/src/stdio/linux/stdin.cpp
M libc/src/stdio/linux/stdout.cpp
M libc/src/stdio/printf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter.h
A libc/src/stdio/printf_core/float_impl.cpp
M libc/src/stdio/printf_core/printf_config.h
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/vasprintf_internal.h
A libc/src/stdio/printf_core/write_modes.def
M libc/src/stdio/printf_core/writer.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/snprintf.h
A libc/src/stdio/snprintf_modular.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sprintf.h
A libc/src/stdio/sprintf_modular.cpp
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
A libc/src/stdio/vasprintf_modular.cpp
M libc/src/stdio/vprintf.h
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsnprintf.h
A libc/src/stdio/vsnprintf_modular.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsprintf.h
A libc/src/stdio/vsprintf_modular.cpp
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/sys/CMakeLists.txt
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/random/linux/CMakeLists.txt
M libc/src/sys/random/linux/getrandom.cpp
A libc/src/sys/sem/CMakeLists.txt
A libc/src/sys/sem/linux/CMakeLists.txt
A libc/src/sys/sem/linux/semctl.cpp
A libc/src/sys/sem/linux/semget.cpp
A libc/src/sys/sem/linux/semop.cpp
A libc/src/sys/sem/semctl.h
A libc/src/sys/sem/semget.h
A libc/src/sys/sem/semop.h
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/write.cpp
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswprint.cpp
A libc/src/wctype/iswprint.h
A libc/src/wctype/iswpunct.cpp
A libc/src/wctype/iswpunct.h
M libc/test/integration/src/CMakeLists.txt
A libc/test/integration/src/sys/CMakeLists.txt
A libc/test/integration/src/sys/sem/CMakeLists.txt
A libc/test/integration/src/sys/sem/sem_test.cpp
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/atanbf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atanbf16_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/sem/CMakeLists.txt
A libc/test/src/sys/sem/linux/CMakeLists.txt
A libc/test/src/sys/sem/linux/sem_test.cpp
M libc/test/src/wctype/CMakeLists.txt
A libc/test/src/wctype/iswprint_test.cpp
A libc/test/src/wctype/iswpunct_test.cpp
M libc/utils/hdrgen/hdrgen/header.py
M libc/utils/hdrgen/tests/expected_output/test_header.h
M libc/utils/hdrgen/tests/expected_output/test_small.json
M libc/utils/hdrgen/tests/expected_output/test_small_proxy.h
M libc/utils/hdrgen/tests/input/merge1.yaml
M libclc/clc/include/clc/address_space/clc_qualifier.h
M libclc/clc/include/clc/async/clc_prefetch.h
M libclc/clc/include/clc/atomic/clc_atomic_compare_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_dec.h
M libclc/clc/include/clc/atomic/clc_atomic_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_add.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_and.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_max.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_min.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_or.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_sub.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_xor.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_clear.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_test_and_set.h
M libclc/clc/include/clc/atomic/clc_atomic_inc.h
M libclc/clc/include/clc/atomic/clc_atomic_load.h
M libclc/clc/include/clc/atomic/clc_atomic_store.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/collective/clc_work_group_broadcast.h
M libclc/clc/include/clc/collective/clc_work_group_reduce.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_step.h
M libclc/clc/include/clc/geometric/binary_def.inc
M libclc/clc/include/clc/geometric/clc_cross.h
M libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_fast_distance.h
M libclc/clc/include/clc/geometric/clc_fast_length.h
M libclc/clc/include/clc/geometric/clc_fast_normalize.h
M libclc/clc/include/clc/geometric/clc_length.h
M libclc/clc/include/clc/geometric/clc_normalize.h
M libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_bit_reverse.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_signed.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_unsigned.h
M libclc/clc/include/clc/integer/clc_bitfield_insert.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
A libclc/clc/include/clc/math/clc_canonicalize.h
M libclc/clc/include/clc/math/clc_cbrt.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_div_cr.h
M libclc/clc/include/clc/math/clc_div_fast.h
M libclc/clc/include/clc/math/clc_ep.h
M libclc/clc/include/clc/math/clc_ep_decl.inc
M libclc/clc/include/clc/math/clc_ep_log.h
M libclc/clc/include/clc/math/clc_erf.h
M libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
A libclc/clc/include/clc/math/clc_exp2_fast.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
A libclc/clc/include/clc/math/clc_flush_if_daz.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits_decl.inc
M libclc/clc/include/clc/math/clc_half_cos.h
M libclc/clc/include/clc/math/clc_half_divide.h
M libclc/clc/include/clc/math/clc_half_exp.h
M libclc/clc/include/clc/math/clc_half_exp10.h
M libclc/clc/include/clc/math/clc_half_exp2.h
M libclc/clc/include/clc/math/clc_half_log.h
M libclc/clc/include/clc/math/clc_half_log10.h
M libclc/clc/include/clc/math/clc_half_log2.h
M libclc/clc/include/clc/math/clc_half_powr.h
M libclc/clc/include/clc/math/clc_half_recip.h
M libclc/clc/include/clc/math/clc_half_rsqrt.h
M libclc/clc/include/clc/math/clc_half_sin.h
M libclc/clc/include/clc/math/clc_half_sqrt.h
M libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_ldexp.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
A libclc/clc/include/clc/math/clc_log2_fast.h
M libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_maxmag.h
M libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_nextdown.h
M libclc/clc/include/clc/math/clc_nextup.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_recip_fast.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sin.h
M libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sincos_helpers_decl.inc
A libclc/clc/include/clc/math/clc_sincos_helpers_fp16_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp64_decl.inc
A libclc/clc/include/clc/math/clc_sincospi.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_sqrt_cr.h
M libclc/clc/include/clc/math/clc_sqrt_fast.h
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
A libclc/clc/include/clc/math/clc_trigpi_helpers.h
A libclc/clc/include/clc/math/clc_trigpi_helpers_decl.inc
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/tables.h
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/mem_fence/clc_mem_fence.h
M libclc/clc/include/clc/misc/clc_shuffle.h
M libclc/clc/include/clc/misc/clc_shuffle2.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
M libclc/clc/include/clc/relational/clc_all.h
M libclc/clc/include/clc/relational/clc_any.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isequal.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isinf.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnan.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_issubnormal.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_select.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/include/clc/shared/binary_decl_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def.inc
M libclc/clc/include/clc/shared/binary_def_scalarize.inc
A libclc/clc/include/clc/shared/binary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/binary_def_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
A libclc/clc/include/clc/shared/binary_with_out_arg_scalarize.inc
M libclc/clc/include/clc/shared/clc_clamp.h
M libclc/clc/include/clc/shared/clc_less_aligned_types.h
M libclc/clc/include/clc/shared/clc_max.h
M libclc/clc/include/clc/shared/clc_min.h
M libclc/clc/include/clc/shared/clc_vload.h
M libclc/clc/include/clc/shared/clc_vstore.h
M libclc/clc/include/clc/shared/ternary_def.inc
M libclc/clc/include/clc/shared/ternary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def.inc
M libclc/clc/include/clc/shared/unary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/unary_def_with_ptr_scalarize.inc
M libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
M libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
M libclc/clc/include/clc/workitem/clc_get_enqueued_local_size.h
M libclc/clc/include/clc/workitem/clc_get_global_id.h
M libclc/clc/include/clc/workitem/clc_get_global_offset.h
M libclc/clc/include/clc/workitem/clc_get_global_size.h
M libclc/clc/include/clc/workitem/clc_get_group_id.h
M libclc/clc/include/clc/workitem/clc_get_local_id.h
M libclc/clc/include/clc/workitem/clc_get_local_linear_id.h
M libclc/clc/include/clc/workitem/clc_get_local_size.h
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_num_groups.h
M libclc/clc/include/clc/workitem/clc_get_num_sub_groups.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_local_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_work_dim.h
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_amdgpu_cbrt.inc
A libclc/clc/lib/amdgpu/math/clc_amdgpu_log.inc
A libclc/clc/lib/amdgpu/math/clc_cbrt.cl
M libclc/clc/lib/amdgpu/math/clc_exp.cl
M libclc/clc/lib/amdgpu/math/clc_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_exp2.cl
A libclc/clc/lib/amdgpu/math/clc_exp2_fast.cl
A libclc/clc/lib/amdgpu/math/clc_fmod.cl
M libclc/clc/lib/amdgpu/math/clc_frexp.cl
A libclc/clc/lib/amdgpu/math/clc_get_twobypi_bits.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_half_log.cl
M libclc/clc/lib/amdgpu/math/clc_half_log10.cl
M libclc/clc/lib/amdgpu/math/clc_half_log2.cl
M libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
M libclc/clc/lib/amdgpu/math/clc_half_recip.cl
M libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
M libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/amdgpu/math/clc_ldexp.cl
A libclc/clc/lib/amdgpu/math/clc_log.cl
A libclc/clc/lib/amdgpu/math/clc_log10.cl
A libclc/clc/lib/amdgpu/math/clc_log2.cl
A libclc/clc/lib/amdgpu/math/clc_log2_fast.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_native_log10.cl
M libclc/clc/lib/amdgpu/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl
M libclc/clc/lib/amdgpu/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_global_offset.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_group_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_local_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_work_dim.cl
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/async/clc_prefetch.cl
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
M libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_add.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_and.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_max.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_min.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_or.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_sub.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_xor.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_clear.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_test_and_set.cl
M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
M libclc/clc/lib/generic/atomic/clc_atomic_load.cl
M libclc/clc/lib/generic/atomic/clc_atomic_store.cl
M libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
M libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
M libclc/clc/lib/generic/common/clc_degrees.cl
M libclc/clc/lib/generic/common/clc_radians.cl
M libclc/clc/lib/generic/common/clc_sign.cl
M libclc/clc/lib/generic/common/clc_smoothstep.cl
M libclc/clc/lib/generic/common/clc_step.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2int.cl
M libclc/clc/lib/generic/conversion/clc_convert_int2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_integer.cl
M libclc/clc/lib/generic/geometric/clc_cross.cl
M libclc/clc/lib/generic/geometric/clc_distance.cl
M libclc/clc/lib/generic/geometric/clc_dot.cl
M libclc/clc/lib/generic/geometric/clc_fast_distance.cl
M libclc/clc/lib/generic/geometric/clc_fast_length.cl
M libclc/clc/lib/generic/geometric/clc_fast_normalize.cl
M libclc/clc/lib/generic/geometric/clc_length.cl
M libclc/clc/lib/generic/geometric/clc_length.inc
M libclc/clc/lib/generic/geometric/clc_normalize.cl
M libclc/clc/lib/generic/integer/clc_abs.cl
M libclc/clc/lib/generic/integer/clc_abs_diff.cl
M libclc/clc/lib/generic/integer/clc_add_sat.cl
M libclc/clc/lib/generic/integer/clc_bit_reverse.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_signed.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_unsigned.cl
M libclc/clc/lib/generic/integer/clc_bitfield_insert.cl
M libclc/clc/lib/generic/integer/clc_clz.cl
M libclc/clc/lib/generic/integer/clc_ctz.cl
M libclc/clc/lib/generic/integer/clc_hadd.cl
M libclc/clc/lib/generic/integer/clc_mad24.cl
M libclc/clc/lib/generic/integer/clc_mad_sat.cl
M libclc/clc/lib/generic/integer/clc_mul24.cl
M libclc/clc/lib/generic/integer/clc_mul_hi.cl
M libclc/clc/lib/generic/integer/clc_popcount.cl
M libclc/clc/lib/generic/integer/clc_rhadd.cl
M libclc/clc/lib/generic/integer/clc_rotate.cl
M libclc/clc/lib/generic/integer/clc_sub_sat.cl
M libclc/clc/lib/generic/integer/clc_upsample.cl
M libclc/clc/lib/generic/math/clc_acos.cl
M libclc/clc/lib/generic/math/clc_acos.inc
M libclc/clc/lib/generic/math/clc_acosh.cl
M libclc/clc/lib/generic/math/clc_acospi.cl
M libclc/clc/lib/generic/math/clc_asin.cl
M libclc/clc/lib/generic/math/clc_asinh.cl
M libclc/clc/lib/generic/math/clc_asinpi.cl
M libclc/clc/lib/generic/math/clc_atan.cl
M libclc/clc/lib/generic/math/clc_atan2.cl
M libclc/clc/lib/generic/math/clc_atan2pi.cl
M libclc/clc/lib/generic/math/clc_atanh.cl
M libclc/clc/lib/generic/math/clc_atanpi.cl
A libclc/clc/lib/generic/math/clc_canonicalize.cl
M libclc/clc/lib/generic/math/clc_cbrt.cl
M libclc/clc/lib/generic/math/clc_ceil.cl
M libclc/clc/lib/generic/math/clc_copysign.cl
M libclc/clc/lib/generic/math/clc_cos.cl
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_cosh.cl
M libclc/clc/lib/generic/math/clc_cospi.cl
M libclc/clc/lib/generic/math/clc_cospi.inc
M libclc/clc/lib/generic/math/clc_div_cr.cl
M libclc/clc/lib/generic/math/clc_div_fast.cl
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep.inc
M libclc/clc/lib/generic/math/clc_ep_log.cl
M libclc/clc/lib/generic/math/clc_erf.cl
M libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_exp.cl
M libclc/clc/lib/generic/math/clc_exp10.cl
M libclc/clc/lib/generic/math/clc_exp2.cl
A libclc/clc/lib/generic/math/clc_exp2_fast.cl
M libclc/clc/lib/generic/math/clc_exp_helper.cl
M libclc/clc/lib/generic/math/clc_expm1.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
M libclc/clc/lib/generic/math/clc_fdim.cl
M libclc/clc/lib/generic/math/clc_floor.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.inc
M libclc/clc/lib/generic/math/clc_fma.cl
M libclc/clc/lib/generic/math/clc_fmax.cl
M libclc/clc/lib/generic/math/clc_fmin.cl
M libclc/clc/lib/generic/math/clc_fmod.cl
M libclc/clc/lib/generic/math/clc_fract.cl
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_frexp.inc
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.cl
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.inc
M libclc/clc/lib/generic/math/clc_half_cos.cl
M libclc/clc/lib/generic/math/clc_half_divide.cl
M libclc/clc/lib/generic/math/clc_half_exp.cl
M libclc/clc/lib/generic/math/clc_half_exp10.cl
M libclc/clc/lib/generic/math/clc_half_exp2.cl
M libclc/clc/lib/generic/math/clc_half_log.cl
M libclc/clc/lib/generic/math/clc_half_log10.cl
M libclc/clc/lib/generic/math/clc_half_log2.cl
M libclc/clc/lib/generic/math/clc_half_powr.cl
M libclc/clc/lib/generic/math/clc_half_recip.cl
M libclc/clc/lib/generic/math/clc_half_rsqrt.cl
M libclc/clc/lib/generic/math/clc_half_sin.cl
M libclc/clc/lib/generic/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/math/clc_ilogb.cl
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/math/clc_lgamma.cl
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log1p.cl
M libclc/clc/lib/generic/math/clc_log2.cl
A libclc/clc/lib/generic/math/clc_log2_fast.cl
R libclc/clc/lib/generic/math/clc_log_base.h
A libclc/clc/lib/generic/math/clc_log_base.inc
M libclc/clc/lib/generic/math/clc_logb.cl
M libclc/clc/lib/generic/math/clc_mad.cl
M libclc/clc/lib/generic/math/clc_maxmag.cl
M libclc/clc/lib/generic/math/clc_minmag.cl
M libclc/clc/lib/generic/math/clc_modf.cl
M libclc/clc/lib/generic/math/clc_nan.cl
M libclc/clc/lib/generic/math/clc_native_cos.cl
M libclc/clc/lib/generic/math/clc_native_divide.cl
M libclc/clc/lib/generic/math/clc_native_exp.cl
M libclc/clc/lib/generic/math/clc_native_exp10.cl
M libclc/clc/lib/generic/math/clc_native_exp2.cl
M libclc/clc/lib/generic/math/clc_native_log.cl
M libclc/clc/lib/generic/math/clc_native_log10.cl
M libclc/clc/lib/generic/math/clc_native_log2.cl
M libclc/clc/lib/generic/math/clc_native_powr.cl
M libclc/clc/lib/generic/math/clc_native_recip.cl
M libclc/clc/lib/generic/math/clc_native_rsqrt.cl
M libclc/clc/lib/generic/math/clc_native_sin.cl
M libclc/clc/lib/generic/math/clc_native_sqrt.cl
M libclc/clc/lib/generic/math/clc_native_tan.cl
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_nextafter.inc
M libclc/clc/lib/generic/math/clc_nextdown.cl
M libclc/clc/lib/generic/math/clc_nextdown.inc
M libclc/clc/lib/generic/math/clc_nextup.cl
M libclc/clc/lib/generic/math/clc_nextup.inc
M libclc/clc/lib/generic/math/clc_pow.cl
R libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pow_base.inc
M libclc/clc/lib/generic/math/clc_pown.cl
R libclc/clc/lib/generic/math/clc_pown.inc
M libclc/clc/lib/generic/math/clc_powr.cl
R libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_recip_fast.cl
M libclc/clc/lib/generic/math/clc_remainder.cl
A libclc/clc/lib/generic/math/clc_remainder.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_remquo.inc
A libclc/clc/lib/generic/math/clc_remquo_stret.inc
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.cl
R libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/clc/lib/generic/math/clc_round.cl
M libclc/clc/lib/generic/math/clc_rsqrt.cl
M libclc/clc/lib/generic/math/clc_sin.cl
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos.cl
M libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
A libclc/clc/lib/generic/math/clc_sincospi.cl
A libclc/clc/lib/generic/math/clc_sincospi.inc
M libclc/clc/lib/generic/math/clc_sinh.cl
M libclc/clc/lib/generic/math/clc_sinpi.cl
M libclc/clc/lib/generic/math/clc_sinpi.inc
M libclc/clc/lib/generic/math/clc_sqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt_cr.cl
M libclc/clc/lib/generic/math/clc_sqrt_fast.cl
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/math/clc_tan.cl
M libclc/clc/lib/generic/math/clc_tan.inc
M libclc/clc/lib/generic/math/clc_tanh.cl
M libclc/clc/lib/generic/math/clc_tanpi.cl
M libclc/clc/lib/generic/math/clc_tanpi.inc
M libclc/clc/lib/generic/math/clc_tgamma.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_all.cl
M libclc/clc/lib/generic/relational/clc_any.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/generic/relational/clc_isequal.cl
M libclc/clc/lib/generic/relational/clc_isfinite.cl
M libclc/clc/lib/generic/relational/clc_isgreater.cl
M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
M libclc/clc/lib/generic/relational/clc_isinf.cl
M libclc/clc/lib/generic/relational/clc_isless.cl
M libclc/clc/lib/generic/relational/clc_islessequal.cl
M libclc/clc/lib/generic/relational/clc_islessgreater.cl
M libclc/clc/lib/generic/relational/clc_isnan.cl
M libclc/clc/lib/generic/relational/clc_isnormal.cl
M libclc/clc/lib/generic/relational/clc_isnotequal.cl
M libclc/clc/lib/generic/relational/clc_isordered.cl
M libclc/clc/lib/generic/relational/clc_issubnormal.cl
M libclc/clc/lib/generic/relational/clc_isunordered.cl
M libclc/clc/lib/generic/relational/clc_select.cl
M libclc/clc/lib/generic/relational/clc_signbit.cl
M libclc/clc/lib/generic/shared/clc_clamp.cl
M libclc/clc/lib/generic/shared/clc_max.cl
M libclc/clc/lib/generic/shared/clc_min.cl
M libclc/clc/lib/generic/shared/clc_vload.cl
M libclc/clc/lib/generic/shared/clc_vstore.cl
A libclc/clc/lib/generic/subnormal_config.cl
M libclc/clc/lib/generic/workitem/clc_get_global_id.cl
M libclc/clc/lib/generic/workitem/clc_get_num_sub_groups.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_log.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_rsqrt.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sinpi.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sqrt.cl
M libclc/clc/lib/ptx-nvidiacl/relational/clc_isinf.cl
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_group_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_max_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_num_groups.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_sub_group_local_id.cl
M libclc/clc/lib/spirv/CMakeLists.txt
M libclc/clc/lib/spirv/math/clc_fmax.cl
M libclc/clc/lib/spirv/math/clc_fmin.cl
A libclc/clc/lib/spirv/subnormal_config.cl
M libclc/cmake/modules/CMakeCLCInformation.cmake
M libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
M libclc/cmake/modules/CMakeTestCLCCompiler.cmake
M libclc/opencl/include/clc/opencl/convert.h
M libclc/opencl/include/clc/opencl/opencl-base.h
M libclc/opencl/include/clc/opencl/synchronization/utils.h
M libclc/opencl/include/clc/opencl/utils.h
M libclc/opencl/lib/amdgpu/async/wait_group_events.cl
M libclc/opencl/lib/clspv/CMakeLists.txt
M libclc/opencl/lib/clspv/conversion/convert_float2float.cl
M libclc/opencl/lib/clspv/conversion/convert_float2int.cl
M libclc/opencl/lib/clspv/conversion/convert_int2float.cl
M libclc/opencl/lib/clspv/conversion/convert_integer.cl
M libclc/opencl/lib/clspv/math/fma.cl
M libclc/opencl/lib/clspv/shared/vstore_half.cl
M libclc/opencl/lib/generic/CMakeLists.txt
M libclc/opencl/lib/generic/async/async_work_group_copy.cl
M libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
M libclc/opencl/lib/generic/async/prefetch.cl
M libclc/opencl/lib/generic/async/wait_group_events.cl
M libclc/opencl/lib/generic/atomic/atom_add.cl
M libclc/opencl/lib/generic/atomic/atom_and.cl
M libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atom_dec.cl
M libclc/opencl/lib/generic/atomic/atom_inc.cl
M libclc/opencl/lib/generic/atomic/atom_max.cl
M libclc/opencl/lib/generic/atomic/atom_min.cl
M libclc/opencl/lib/generic/atomic/atom_or.cl
M libclc/opencl/lib/generic/atomic/atom_sub.cl
M libclc/opencl/lib/generic/atomic/atom_xchg.cl
M libclc/opencl/lib/generic/atomic/atom_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_add.cl
M libclc/opencl/lib/generic/atomic/atomic_and.cl
M libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_strong.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_weak.cl
M libclc/opencl/lib/generic/atomic/atomic_dec.cl
M libclc/opencl/lib/generic/atomic/atomic_exchange.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_and.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_max.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_min.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_or.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_clear.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_test_and_set.cl
M libclc/opencl/lib/generic/atomic/atomic_inc.cl
M libclc/opencl/lib/generic/atomic/atomic_init.cl
M libclc/opencl/lib/generic/atomic/atomic_load.cl
M libclc/opencl/lib/generic/atomic/atomic_max.cl
M libclc/opencl/lib/generic/atomic/atomic_min.cl
M libclc/opencl/lib/generic/atomic/atomic_or.cl
M libclc/opencl/lib/generic/atomic/atomic_store.cl
M libclc/opencl/lib/generic/atomic/atomic_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_xchg.cl
M libclc/opencl/lib/generic/atomic/atomic_xor.cl
M libclc/opencl/lib/generic/collective/work_group_broadcast.cl
M libclc/opencl/lib/generic/collective/work_group_reduce.cl
M libclc/opencl/lib/generic/common/degrees.cl
M libclc/opencl/lib/generic/common/mix.cl
M libclc/opencl/lib/generic/common/radians.cl
M libclc/opencl/lib/generic/common/sign.cl
M libclc/opencl/lib/generic/common/smoothstep.cl
M libclc/opencl/lib/generic/common/step.cl
M libclc/opencl/lib/generic/conversion/convert_float2float.cl
M libclc/opencl/lib/generic/conversion/convert_float2int.cl
M libclc/opencl/lib/generic/conversion/convert_int2float.cl
M libclc/opencl/lib/generic/conversion/convert_integer.cl
M libclc/opencl/lib/generic/geometric/cross.cl
M libclc/opencl/lib/generic/geometric/distance.cl
M libclc/opencl/lib/generic/geometric/dot.cl
M libclc/opencl/lib/generic/geometric/fast_distance.cl
M libclc/opencl/lib/generic/geometric/fast_length.cl
M libclc/opencl/lib/generic/geometric/fast_normalize.cl
M libclc/opencl/lib/generic/geometric/length.cl
M libclc/opencl/lib/generic/geometric/normalize.cl
M libclc/opencl/lib/generic/integer/abs.cl
M libclc/opencl/lib/generic/integer/abs_diff.cl
M libclc/opencl/lib/generic/integer/add_sat.cl
M libclc/opencl/lib/generic/integer/bit_reverse.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_signed.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_unsigned.cl
M libclc/opencl/lib/generic/integer/bitfield_insert.cl
M libclc/opencl/lib/generic/integer/clz.cl
M libclc/opencl/lib/generic/integer/ctz.cl
M libclc/opencl/lib/generic/integer/hadd.cl
M libclc/opencl/lib/generic/integer/mad24.cl
M libclc/opencl/lib/generic/integer/mad_hi.cl
M libclc/opencl/lib/generic/integer/mad_sat.cl
M libclc/opencl/lib/generic/integer/mul24.cl
M libclc/opencl/lib/generic/integer/mul_hi.cl
M libclc/opencl/lib/generic/integer/popcount.cl
M libclc/opencl/lib/generic/integer/rhadd.cl
M libclc/opencl/lib/generic/integer/rotate.cl
M libclc/opencl/lib/generic/integer/sub_sat.cl
M libclc/opencl/lib/generic/integer/upsample.cl
M libclc/opencl/lib/generic/math/acos.cl
M libclc/opencl/lib/generic/math/acosh.cl
M libclc/opencl/lib/generic/math/acospi.cl
M libclc/opencl/lib/generic/math/asin.cl
M libclc/opencl/lib/generic/math/asinh.cl
M libclc/opencl/lib/generic/math/asinpi.cl
M libclc/opencl/lib/generic/math/atan.cl
M libclc/opencl/lib/generic/math/atan2.cl
M libclc/opencl/lib/generic/math/atan2pi.cl
M libclc/opencl/lib/generic/math/atanh.cl
M libclc/opencl/lib/generic/math/atanpi.cl
M libclc/opencl/lib/generic/math/cbrt.cl
M libclc/opencl/lib/generic/math/ceil.cl
M libclc/opencl/lib/generic/math/copysign.cl
M libclc/opencl/lib/generic/math/cos.cl
M libclc/opencl/lib/generic/math/cosh.cl
M libclc/opencl/lib/generic/math/cospi.cl
M libclc/opencl/lib/generic/math/erf.cl
M libclc/opencl/lib/generic/math/erfc.cl
M libclc/opencl/lib/generic/math/exp.cl
M libclc/opencl/lib/generic/math/exp10.cl
M libclc/opencl/lib/generic/math/exp2.cl
M libclc/opencl/lib/generic/math/expm1.cl
M libclc/opencl/lib/generic/math/fabs.cl
M libclc/opencl/lib/generic/math/fdim.cl
M libclc/opencl/lib/generic/math/floor.cl
M libclc/opencl/lib/generic/math/fma.cl
M libclc/opencl/lib/generic/math/fmax.cl
M libclc/opencl/lib/generic/math/fmin.cl
M libclc/opencl/lib/generic/math/fmod.cl
M libclc/opencl/lib/generic/math/fract.cl
M libclc/opencl/lib/generic/math/frexp.cl
M libclc/opencl/lib/generic/math/half_cos.cl
M libclc/opencl/lib/generic/math/half_divide.cl
M libclc/opencl/lib/generic/math/half_exp.cl
M libclc/opencl/lib/generic/math/half_exp10.cl
M libclc/opencl/lib/generic/math/half_exp2.cl
M libclc/opencl/lib/generic/math/half_log.cl
M libclc/opencl/lib/generic/math/half_log10.cl
M libclc/opencl/lib/generic/math/half_log2.cl
M libclc/opencl/lib/generic/math/half_powr.cl
M libclc/opencl/lib/generic/math/half_recip.cl
M libclc/opencl/lib/generic/math/half_rsqrt.cl
M libclc/opencl/lib/generic/math/half_sin.cl
M libclc/opencl/lib/generic/math/half_sqrt.cl
M libclc/opencl/lib/generic/math/half_tan.cl
M libclc/opencl/lib/generic/math/hypot.cl
M libclc/opencl/lib/generic/math/ilogb.cl
M libclc/opencl/lib/generic/math/ldexp.cl
M libclc/opencl/lib/generic/math/lgamma.cl
M libclc/opencl/lib/generic/math/lgamma_r.cl
M libclc/opencl/lib/generic/math/log.cl
M libclc/opencl/lib/generic/math/log10.cl
M libclc/opencl/lib/generic/math/log1p.cl
M libclc/opencl/lib/generic/math/log2.cl
M libclc/opencl/lib/generic/math/logb.cl
M libclc/opencl/lib/generic/math/mad.cl
M libclc/opencl/lib/generic/math/maxmag.cl
M libclc/opencl/lib/generic/math/minmag.cl
M libclc/opencl/lib/generic/math/modf.cl
M libclc/opencl/lib/generic/math/nan.cl
M libclc/opencl/lib/generic/math/native_cos.cl
M libclc/opencl/lib/generic/math/native_divide.cl
M libclc/opencl/lib/generic/math/native_exp.cl
M libclc/opencl/lib/generic/math/native_exp10.cl
M libclc/opencl/lib/generic/math/native_exp2.cl
M libclc/opencl/lib/generic/math/native_log.cl
M libclc/opencl/lib/generic/math/native_log10.cl
M libclc/opencl/lib/generic/math/native_log2.cl
M libclc/opencl/lib/generic/math/native_powr.cl
M libclc/opencl/lib/generic/math/native_recip.cl
M libclc/opencl/lib/generic/math/native_rsqrt.cl
M libclc/opencl/lib/generic/math/native_sin.cl
M libclc/opencl/lib/generic/math/native_sqrt.cl
M libclc/opencl/lib/generic/math/native_tan.cl
M libclc/opencl/lib/generic/math/nextafter.cl
M libclc/opencl/lib/generic/math/pow.cl
M libclc/opencl/lib/generic/math/pown.cl
M libclc/opencl/lib/generic/math/powr.cl
M libclc/opencl/lib/generic/math/remainder.cl
M libclc/opencl/lib/generic/math/remquo.cl
M libclc/opencl/lib/generic/math/rint.cl
M libclc/opencl/lib/generic/math/rootn.cl
M libclc/opencl/lib/generic/math/round.cl
M libclc/opencl/lib/generic/math/rsqrt.cl
M libclc/opencl/lib/generic/math/sin.cl
M libclc/opencl/lib/generic/math/sincos.cl
M libclc/opencl/lib/generic/math/sinh.cl
M libclc/opencl/lib/generic/math/sinpi.cl
M libclc/opencl/lib/generic/math/sqrt.cl
M libclc/opencl/lib/generic/math/tan.cl
M libclc/opencl/lib/generic/math/tanh.cl
M libclc/opencl/lib/generic/math/tanpi.cl
M libclc/opencl/lib/generic/math/tgamma.cl
M libclc/opencl/lib/generic/math/trunc.cl
M libclc/opencl/lib/generic/mem_fence/fence.cl
M libclc/opencl/lib/generic/misc/shuffle.cl
M libclc/opencl/lib/generic/misc/shuffle2.cl
M libclc/opencl/lib/generic/relational/all.cl
M libclc/opencl/lib/generic/relational/any.cl
M libclc/opencl/lib/generic/relational/bitselect.cl
M libclc/opencl/lib/generic/relational/isequal.cl
M libclc/opencl/lib/generic/relational/isfinite.cl
M libclc/opencl/lib/generic/relational/isgreater.cl
M libclc/opencl/lib/generic/relational/isgreaterequal.cl
M libclc/opencl/lib/generic/relational/isinf.cl
M libclc/opencl/lib/generic/relational/isless.cl
M libclc/opencl/lib/generic/relational/islessequal.cl
M libclc/opencl/lib/generic/relational/islessgreater.cl
M libclc/opencl/lib/generic/relational/isnan.cl
M libclc/opencl/lib/generic/relational/isnormal.cl
M libclc/opencl/lib/generic/relational/isnotequal.cl
M libclc/opencl/lib/generic/relational/isordered.cl
M libclc/opencl/lib/generic/relational/isunordered.cl
M libclc/opencl/lib/generic/relational/relational_binary_def.inc
M libclc/opencl/lib/generic/relational/relational_unary_def.inc
M libclc/opencl/lib/generic/relational/select.cl
M libclc/opencl/lib/generic/relational/signbit.cl
M libclc/opencl/lib/generic/shared/clamp.cl
M libclc/opencl/lib/generic/shared/max.cl
M libclc/opencl/lib/generic/shared/min.cl
M libclc/opencl/lib/generic/shared/vload.cl
M libclc/opencl/lib/generic/shared/vstore.cl
M libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
R libclc/opencl/lib/generic/subnormal_config.cl
M libclc/opencl/lib/generic/workitem/get_enqueued_local_size.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
M libclc/opencl/lib/generic/workitem/get_global_offset.cl
M libclc/opencl/lib/generic/workitem/get_group_id.cl
M libclc/opencl/lib/generic/workitem/get_local_id.cl
M libclc/opencl/lib/generic/workitem/get_local_size.cl
M libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/workitem/get_work_dim.cl
M libclc/test/CMakeLists.txt
R libclc/test/check_external_funcs.sh
M libclc/test/lit.cfg.py
M libclc/test/lit.site.cfg.py.in
M libcxx/CMakeLists.txt
M libcxx/docs/index.rst
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__tree
M libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/set
M libcxx/include/string
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/version
M libcxx/src/include/apple_availability.h
M libcxx/test/libcxx-03/transitive_includes/to_csv.py
M libcxx/test/libcxx/transitive_includes/to_csv.py
A libcxx/test/libcxx/type_traits/is_transparently_comparable.compile.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_rand.pass.cpp
A libcxx/test/std/containers/associative/lookup_with_converting_comparator.pass.cpp
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/utils/ci/lnt/commit-watch
M libcxx/utils/ci/lnt/run-benchmarks
A libcxx/utils/ci/lnt/runners/README.md
A libcxx/utils/ci/lnt/runners/apple-m5-clang21
A libcxx/utils/ci/lnt/runners/apple-m5-xcode26
M libcxx/utils/generate_abi_list.py
M libcxx/utils/generate_escaped_output_table.py
M libcxx/utils/generate_extended_grapheme_cluster_table.py
M libcxx/utils/generate_extended_grapheme_cluster_test.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_indic_conjunct_break_table.py
M libcxx/utils/generate_iwyu_mapping.py
M libcxx/utils/generate_width_estimation_table.py
M libcxx/utils/run.py
M libcxx/utils/ssh.py
M libcxx/utils/sym_diff.py
M libsycl/docs/index.rst
A libsycl/include/sycl/__impl/usm_alloc_type.hpp
A libsycl/include/sycl/__impl/usm_functions.hpp
M libsycl/include/sycl/sycl.hpp
M libsycl/src/CMakeLists.txt
M libsycl/src/detail/device_impl.cpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_utils.cpp
M libsycl/src/detail/offload/offload_utils.hpp
M libsycl/src/ld-version-script.txt
A libsycl/src/usm_functions.cpp
A libsycl/test/usm/alloc_functions.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-feature-gcs.s
M lld/test/ELF/combreloc.s
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/resources/build.rst
M lldb/docs/resources/formatterbytecode.rst
M lldb/docs/use/map.rst
M lldb/docs/use/symbolication.rst
M lldb/docs/use/tutorials/script-driven-debugging.md
M lldb/examples/python/formatter_bytecode.py
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/Host/Config.h.cmake
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Platform.h
M lldb/include/lldb/Utility/Log.h
M lldb/include/lldb/Utility/Stream.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
A lldb/source/Core/SafeAutoloadPaths.inc.in
M lldb/source/Core/UserSettingsController.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Expression/FunctionCaller.cpp
M lldb/source/Expression/IRInterpreter.cpp
M lldb/source/Expression/Materializer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/OptionValueProperties.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
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/IRForTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.cpp
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.h
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.h
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/Target/ThreadPlanStepInstruction.cpp
M lldb/source/Target/ThreadPlanStepOut.cpp
M lldb/source/Target/ThreadPlanStepRange.cpp
M lldb/source/Target/ThreadPlanStepThrough.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Target/UnwindLLDB.cpp
M lldb/source/Utility/Listener.cpp
M lldb/source/Utility/Stream.cpp
M lldb/source/Utility/StringList.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/ValueObject.cpp
A lldb/test/API/commands/expression/ptrauth-auth-traps/Makefile
A lldb/test/API/commands/expression/ptrauth-auth-traps/TestPtrAuthAuthTraps.py
A lldb/test/API/commands/expression/ptrauth-auth-traps/main.c
A lldb/test/API/commands/expression/ptrauth-objc/Makefile
A lldb/test/API/commands/expression/ptrauth-objc/TestPtrAuthObjectiveC.py
A lldb/test/API/commands/expression/ptrauth-objc/main.m
A lldb/test/API/commands/expression/ptrauth/Makefile
A lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
A lldb/test/API/commands/expression/ptrauth/main.c
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILExprPointerArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp
A lldb/test/API/functionalities/compilation-prefix-map/Makefile
A lldb/test/API/functionalities/compilation-prefix-map/TestCompilationPrefixMap.py
A lldb/test/API/functionalities/compilation-prefix-map/main.c
M lldb/test/API/functionalities/data-formatter/bytecode-synthetic/main.cpp
M lldb/test/API/functionalities/data-formatter/synthetic_subscript/main.c
A lldb/test/API/lang/c/ptrauth/Makefile
A lldb/test/API/lang/c/ptrauth/TestPtrAuth.py
A lldb/test/API/lang/c/ptrauth/main.c
M lldb/test/API/lang/cpp/incomplete-types/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/TestSharedCacheVMRange.py
A lldb/test/API/macosx/shared-cache-vm-range/main.c
A lldb/test/API/symstore/Makefile
A lldb/test/API/symstore/TestSymStore.py
A lldb/test/API/symstore/main.c
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-dap/variables/main.cpp
M lldb/test/API/windows/launch/replace-dll/TestReplaceDLL.py
M lldb/test/Shell/Diagnostics/TestDump.test
M lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-python-script-name-warnings.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-takes-priority.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/safe-path-fallback-no-dsym-script.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-basic-load.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-last-path-wins.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-nested-dir.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-dirname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-scriptname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-paths-configured.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-special-chars-sanitized.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-submodule-import.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-subpackage-import.test
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
M lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
M lldb/test/Shell/SymbolFile/NativePDB/vbases.test
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
M lldb/tools/debugserver/source/MacOSX/MachProcess.h
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
M lldb/tools/driver/CMakeLists.txt
A lldb/tools/driver/lldb-mte-entitlements.plist
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/Variables.cpp
M lldb/tools/lldb-dap/Variables.h
M lldb/unittests/DAP/VariablesTest.cpp
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
M lldb/unittests/Platform/PlatformTest.cpp
A lldb/unittests/Platform/TestUtils.cpp
A lldb/unittests/Platform/TestUtils.h
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
M lldb/unittests/Utility/LogTest.cpp
M lldb/unittests/Utility/StreamTest.cpp
M llvm/CMakeLists.txt
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/PointerUnionBM.cpp
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
M llvm/docs/BranchWeightMetadata.rst
M llvm/docs/CommandGuide/llc.rst
M llvm/docs/CommandGuide/llvm-link.rst
M llvm/docs/DirectX/DXILResources.rst
M llvm/docs/Frontend/PerformanceTips.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/examples/BrainF/BrainF.cpp
M llvm/examples/Fibonacci/fibonacci.cpp
M llvm/examples/IRTransforms/SimplifyCFG.cpp
M llvm/examples/ParallelJIT/ParallelJIT.cpp
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/CFG.h
M llvm/include/llvm/Analysis/DXILResource.h
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/IVUsers.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/LoopInfo.h
M llvm/include/llvm/Analysis/MemorySSA.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
R llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/CommandFlags.h
M llvm/include/llvm/CodeGen/ExpandMemCmp.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/LiveRangeEdit.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/ValueTypes.h
M llvm/include/llvm/Config/config.h.cmake
M llvm/include/llvm/DWARFLinker/AddressesMap.h
M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
M llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
M llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/DerivedTypes.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InlineAsm.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/MatrixBuilder.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/Value.def
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Object/Archive.h
A llvm/include/llvm/Object/BBAddrMap.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/SandboxIR/Values.def
M llvm/include/llvm/Support/FileSystem.h
M llvm/include/llvm/Support/GenericLoopInfo.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/include/llvm/Support/HTTP/HTTPClient.h
M llvm/include/llvm/Support/ModRef.h
M llvm/include/llvm/Support/NVPTXAddrSpace.h
A llvm/include/llvm/Support/NVVMAttributes.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/include/llvm/Transforms/Utils/Instrumentation.h
M llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
M llvm/lib/Analysis/CFG.cpp
M llvm/lib/Analysis/DXILResource.cpp
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/BinaryFormat/Magic.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/BasicBlockSections.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/CommandFlags.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/CodeGen/ExpandMemCmp.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineInstrBundle.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.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/SplitKit.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
M llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp
M llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
M llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
M llvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/HTTP/CMakeLists.txt
M llvm/lib/Support/HTTP/HTTPClient.cpp
M llvm/lib/Support/KnownFPClass.cpp
M llvm/lib/Support/TextEncoding.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Support/YAMLParser.cpp
M llvm/lib/Support/raw_socket_stream.cpp
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.cpp
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.h
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/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/R600MCInstLower.cpp
M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.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/SILowerI1Copies.cpp
M llvm/lib/Target/AMDGPU/SILowerI1Copies.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/HexagonLiveVariables.cpp
M llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.h
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.h
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
A llvm/lib/Target/PowerPC/PPCRegisterClasses.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoDMR.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoMMA.td
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.cpp
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
M llvm/lib/Target/X86/GISel/X86PostLegalizerCombiner.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrCMovSetCC.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86PassRegistry.def
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/Transforms/Coroutines/CoroElide.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/AlwaysInliner.cpp
M llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/lib/Transforms/IPO/LoopExtractor.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ModuleInliner.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/runtimes/CMakeLists.txt
A llvm/test/Analysis/BasicAA/gep-and-mask-gcd.ll
M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
A llvm/test/Analysis/DependenceAnalysis/exact-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/gcd-miv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/non-monotonic.ll
M llvm/test/Analysis/DependenceAnalysis/rdiv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-overflow.ll
A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-delta-signed-min.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-overflow.ll
M llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dep-same-ptr.ll
A llvm/test/Analysis/MemorySSA/call-loop-carried-dependency.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info-with-multiple-predecessors.ll
A llvm/test/Analysis/ScalarEvolution/two-loop-latches.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
M llvm/test/Assembler/atomic.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
A llvm/test/Assembler/byte-invalid.ll
A llvm/test/Assembler/byte.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/memory-attribute-errors.ll
M llvm/test/Assembler/memory-attribute.ll
A llvm/test/Bindings/llvm-c/byte.ll
M llvm/test/Bindings/llvm-c/echo.ll
M llvm/test/Bitcode/DIImportedEntity_elements.ll
M llvm/test/Bitcode/DIModule-fortran-external-module.ll
M llvm/test/Bitcode/attributes.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/memory-attribute-upgrade.ll
A llvm/test/CodeGen/AArch64/GlobalISel/combine-binop-neg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abds.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abdu.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-cross-block-different-regs.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-nzcvdef.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
A llvm/test/CodeGen/AArch64/aarch64-sys-intrinsic.ll
M llvm/test/CodeGen/AArch64/addsub-24bit-imm.mir
M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
M llvm/test/CodeGen/AArch64/arm64-neon-aba-abd.ll
M llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
M llvm/test/CodeGen/AArch64/bsp_implicit_ops.mir
A llvm/test/CodeGen/AArch64/ccmp-look-through-copy.mir
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
M llvm/test/CodeGen/AArch64/expand-blr-rvmarker-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-constructive-zzi.mir
M llvm/test/CodeGen/AArch64/expand-load-got-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-movi-renamable.mir
M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
M llvm/test/CodeGen/AArch64/expand-subs-pseudo.mir
M llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
A llvm/test/CodeGen/AArch64/is_fpclass.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
A llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
A llvm/test/CodeGen/AArch64/mops-mmo-size.ll
M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
M llvm/test/CodeGen/AArch64/movimm-wzr.mir
M llvm/test/CodeGen/AArch64/neg-selects.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/peephole-csel.mir
M llvm/test/CodeGen/AArch64/peephole-insert-subreg.mir
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
M llvm/test/CodeGen/AArch64/peephole-movd.mir
M llvm/test/CodeGen/AArch64/peephole-orr.mir
M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
M llvm/test/CodeGen/AArch64/redundant-orrwrs-from-zero-extend.mir
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryComm-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryCommWithRev-merging.mir
M llvm/test/CodeGen/AArch64/sve-pr92779.ll
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve2-bitsel-pseudos-expansion.mir
M llvm/test/CodeGen/AArch64/sve2p1-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.class.mir
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kernarg.segment.ptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsghalt.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.wqm.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.writelane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-icmp.s16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-salu-float.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sub.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uadde.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-usube.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_u64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
M llvm/test/CodeGen/AMDGPU/bf16-math.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/convergent.mir
M llvm/test/CodeGen/AMDGPU/copy-to-reg.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
A llvm/test/CodeGen/AMDGPU/insert-skips-gfx1250.mir
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sethalt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.var.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.ttracedata.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.event.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.waitcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
Log Message:
-----------
Merge branch 'fix-blockfreq-unroll-unconditional-latches--prep' into fix-blockfreq-unroll-unconditional-latches
Commit: 9c365a81f72ec671bc93a50e1567003999082f3a
https://github.com/llvm/llvm-project/commit/9c365a81f72ec671bc93a50e1567003999082f3a
Author: Joel E. Denny <jdenny.ornl at gmail.com>
Date: 2026-03-24 (Tue, 24 Mar 2026)
Changed paths:
M .ci/all_requirements.txt
M .ci/compute_projects.py
M .ci/compute_projects_test.py
M .ci/green-dragon/lldb-ubuntu.groovy
M .ci/monolithic-linux.sh
M .ci/monolithic-windows.sh
M .github/CODEOWNERS
M .github/new-prs-labeler.yml
M .github/workflows/bazel-checks.yml
M .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-libc-container.yml
M .github/workflows/build-metrics-container.yml
M .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
M .github/workflows/docs.yml
M .github/workflows/email-check.yaml
M .github/workflows/gha-codeql.yml
M .github/workflows/hlsl-test-all.yaml
M .github/workflows/ids-check.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
M .github/workflows/libcxx-run-benchmarks.yml
M .github/workflows/lldb-pylint-action.yml
M .github/workflows/llvm-abi-tests.yml
M .github/workflows/merged-prs.yml
M .github/workflows/mlir-spirv-tests.yml
M .github/workflows/new-prs.yml
M .github/workflows/pr-code-format.yml
M .github/workflows/pr-code-lint.yml
M .github/workflows/pr-subscriber.yml
M .github/workflows/premerge.yaml
M .github/workflows/prune-branches.yml
M .github/workflows/release-asset-audit.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-documentation.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-sources.yml
M .github/workflows/release-tasks.yml
M .github/workflows/spirv-tests.yml
M .github/workflows/sycl-tests.yml
M .github/workflows/test-unprivileged-download-artifact.yml
M .github/workflows/version-check.yml
A .github/workflows/zizmor.yml
M bolt/include/bolt/Passes/ReorderFunctions.h
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/include/bolt/Profile/DataReader.h
M bolt/include/bolt/Rewrite/RewriteInstance.h
M bolt/lib/Passes/ReorderFunctions.cpp
M bolt/lib/Profile/DataAggregator.cpp
M bolt/lib/Profile/DataReader.cpp
M bolt/lib/Rewrite/RewriteInstance.cpp
M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
M bolt/runtime/instr.cpp
A bolt/test/AArch64/function-order-hybrid.s
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
M clang-tools-extra/clang-doc/assets/function-template.mustache
M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
M clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
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/UseAfterMoveCheck.cpp
M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
M clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
M clang-tools-extra/clangd/CodeComplete.cpp
M clang-tools-extra/clangd/Diagnostics.cpp
M clang-tools-extra/clangd/Diagnostics.h
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/ScanningProjectModules.cpp
M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
M clang-tools-extra/clangd/unittests/CompilerTests.cpp
M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
M clang-tools-extra/docs/ReleaseNotes.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
M clang-tools-extra/docs/clang-tidy/checks/misc/multiple-inheritance.rst
M clang-tools-extra/test/CMakeLists.txt
A clang-tools-extra/test/Unit/CMakeLists.txt
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/deque
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/forward_list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/functional
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/list
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/queue
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/set
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/stack
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/string
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/tuple
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_map
A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/unordered_set
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/utility
M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/vector
M clang-tools-extra/test/clang-tidy/checkers/bugprone/dangling-handle.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/derived-method-shadowing-base-method.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/infinite-loop.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-pointer-arithmetic.cpp
M clang-tools-extra/test/clang-tidy/checkers/fuchsia/trailing-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
R clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-structured-binding/fake_std_pair_tuple.h
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-emplace.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-structured-binding.cpp
M clang-tools-extra/test/clang-tidy/checkers/modernize/use-transparent-functors.cpp
M clang-tools-extra/test/clang-tidy/checkers/performance/faster-string-find.cpp
M clang-tools-extra/test/clang-tidy/checkers/portability/std-allocator-const.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/container-contains.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/else-after-return.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-cxx17.cpp
M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
M clang-tools-extra/test/clang-tidy/infrastructure/clang-tidy-store-check-profile-one-tu.cpp
M clang/bindings/python/clang/cindex.py
M clang/bindings/python/tests/cindex/test_file.py
A clang/bindings/python/tests/cindex/test_version.py
M clang/docs/ClangFormatStyleOptions.rst
M clang/docs/InternalsManual.rst
M clang/docs/ReleaseNotes.rst
M clang/docs/SanitizerCoverage.rst
M clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
M clang/docs/UsersManual.rst
M clang/include/clang-c/Index.h
M clang/include/clang/AST/ASTContext.h
M clang/include/clang/AST/HLSLResource.h
M clang/include/clang/AST/PropertiesBase.td
M clang/include/clang/AST/TemplateBase.h
M clang/include/clang/AST/TextNodeDumper.h
M clang/include/clang/AST/TypeBase.h
M clang/include/clang/AST/TypeProperties.td
M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
M clang/include/clang/Analysis/MacroExpansionContext.h
A clang/include/clang/Basic/AArch64CodeGenUtils.h
M clang/include/clang/Basic/Attr.td
M clang/include/clang/Basic/AttrDocs.td
M clang/include/clang/Basic/Builtins.td
M clang/include/clang/Basic/BuiltinsAMDGPU.td
M clang/include/clang/Basic/BuiltinsX86.td
M clang/include/clang/Basic/CodeGenOptions.def
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/DiagnosticOptions.def
M clang/include/clang/Basic/DiagnosticParseKinds.td
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/Module.h
M clang/include/clang/Basic/OffloadArch.h
M clang/include/clang/Basic/TargetInfo.h
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
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/LowerToLLVM.h
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/DependencyScanning/DependencyScannerImpl.h
M clang/include/clang/DependencyScanning/ModuleDepCollector.h
M clang/include/clang/Format/Format.h
M clang/include/clang/Frontend/CompilerInstance.h
M clang/include/clang/Frontend/FrontendOptions.h
M clang/include/clang/Frontend/TextDiagnosticBuffer.h
M clang/include/clang/Frontend/VerifyDiagnosticConsumer.h
M clang/include/clang/Lex/HeaderSearch.h
M clang/include/clang/Lex/Preprocessor.h
M clang/include/clang/Options/Options.td
M clang/include/clang/Parse/Parser.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
A clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
R clang/include/clang/ScalableStaticAnalysisFramework/Core/Analyses/UnsafeBufferUsage/UnsafeBufferUsageBuilder.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
M clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
A clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
A clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
A clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
M clang/include/clang/Sema/SemaCodeCompletion.h
M clang/include/clang/Sema/SemaHLSL.h
M clang/include/clang/Sema/SemaPPC.h
M clang/include/clang/Sema/Template.h
M clang/include/clang/Serialization/ASTBitCodes.h
M clang/include/clang/Serialization/ASTReader.h
M clang/include/clang/Serialization/ModuleFile.h
M clang/include/clang/Serialization/ModuleManager.h
M clang/include/clang/StaticAnalyzer/Core/CheckerManager.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
M clang/lib/AST/ASTContext.cpp
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
M clang/lib/AST/ByteCode/ByteCodeEmitter.h
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/Compiler.h
M clang/lib/AST/ByteCode/Context.cpp
M clang/lib/AST/ByteCode/Context.h
M clang/lib/AST/ByteCode/DynamicAllocator.cpp
M clang/lib/AST/ByteCode/EvalEmitter.cpp
M clang/lib/AST/ByteCode/EvalEmitter.h
M clang/lib/AST/ByteCode/Function.cpp
M clang/lib/AST/ByteCode/Function.h
M clang/lib/AST/ByteCode/Interp.cpp
M clang/lib/AST/ByteCode/Interp.h
M clang/lib/AST/ByteCode/InterpBlock.cpp
M clang/lib/AST/ByteCode/InterpBlock.h
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/ByteCode/InterpFrame.cpp
M clang/lib/AST/ByteCode/InterpFrame.h
M clang/lib/AST/ByteCode/InterpState.cpp
M clang/lib/AST/ByteCode/InterpState.h
M clang/lib/AST/ByteCode/Opcodes.td
M clang/lib/AST/ByteCode/Program.cpp
M clang/lib/AST/CMakeLists.txt
M clang/lib/AST/Expr.cpp
M clang/lib/AST/ExprConstant.cpp
A clang/lib/AST/HLSLResource.cpp
M clang/lib/AST/QualTypeNames.cpp
M clang/lib/AST/TemplateBase.cpp
M clang/lib/AST/TextNodeDumper.cpp
M clang/lib/AST/Type.cpp
M clang/lib/AST/TypeLoc.cpp
M clang/lib/Analysis/CMakeLists.txt
M clang/lib/Analysis/ExprMutationAnalyzer.cpp
M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/MacroExpansionContext.cpp
M clang/lib/Basic/ASTSourceDescriptor.cpp
M clang/lib/Basic/Cuda.cpp
M clang/lib/Basic/Module.cpp
M clang/lib/Basic/OffloadArch.cpp
M clang/lib/Basic/Targets/NVPTX.cpp
M clang/lib/Basic/Targets/NVPTX.h
M clang/lib/Basic/Targets/PPC.cpp
M clang/lib/Basic/Targets/PPC.h
M clang/lib/Basic/Targets/X86.h
A clang/lib/CIR/CodeGen/CIRGenAMDGPU.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
M clang/lib/CIR/CodeGen/CIRGenBuilder.h
M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/CodeGen/CIRGenCall.cpp
M clang/lib/CIR/CodeGen/CIRGenClass.cpp
M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
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/CMakeLists.txt
M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMIR.cpp
M clang/lib/CodeGen/BackendUtil.cpp
M clang/lib/CodeGen/CGClass.cpp
M clang/lib/CodeGen/CGCleanup.cpp
M clang/lib/CodeGen/CGException.cpp
M clang/lib/CodeGen/CGExpr.cpp
M clang/lib/CodeGen/CGExprCXX.cpp
M clang/lib/CodeGen/CGExprScalar.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGHLSLRuntime.h
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
M clang/lib/CodeGen/CGStmt.cpp
M clang/lib/CodeGen/CGStmtOpenMP.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/CodeGenTypes.cpp
M clang/lib/CodeGen/EHScopeStack.h
M clang/lib/CodeGen/MicrosoftCXXABI.cpp
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
M clang/lib/CodeGen/Targets/NVPTX.cpp
M clang/lib/CodeGen/Targets/PPC.cpp
M clang/lib/CrossTU/CrossTranslationUnit.cpp
M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
M clang/lib/DependencyScanning/ModuleDepCollector.cpp
M clang/lib/Driver/CMakeLists.txt
M clang/lib/Driver/Driver.cpp
M clang/lib/Driver/ModulesDriver.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Driver/SanitizerArgs.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Arch/X86.cpp
M clang/lib/Driver/ToolChains/BareMetal.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Cuda.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/HIPAMD.cpp
M clang/lib/Driver/ToolChains/SPIRV.cpp
M clang/lib/Format/BreakableToken.cpp
M clang/lib/Format/Format.cpp
M clang/lib/Format/FormatToken.h
M clang/lib/Format/FormatTokenLexer.cpp
M clang/lib/Format/FormatTokenLexer.h
M clang/lib/Format/TokenAnnotator.cpp
M clang/lib/Format/TokenAnnotator.h
M clang/lib/Format/UnwrappedLineFormatter.cpp
M clang/lib/Format/UnwrappedLineParser.cpp
M clang/lib/Format/WhitespaceManager.cpp
M clang/lib/Frontend/ASTUnit.cpp
M clang/lib/Frontend/ChainedIncludesSource.cpp
M clang/lib/Frontend/CompilerInstance.cpp
M clang/lib/Frontend/CompilerInvocation.cpp
M clang/lib/Frontend/FrontendAction.cpp
M clang/lib/Frontend/FrontendActions.cpp
M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
M clang/lib/FrontendTool/CMakeLists.txt
M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
M clang/lib/Headers/CMakeLists.txt
M clang/lib/Headers/avx512fintrin.h
M clang/lib/Headers/avx512vbmi2intrin.h
M clang/lib/Headers/avx512vlintrin.h
M clang/lib/Headers/avx512vlvbmi2intrin.h
A clang/lib/Headers/endian.h
M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
M clang/lib/Headers/llvm_libc_wrappers/ctype.h
M clang/lib/Headers/llvm_libc_wrappers/string.h
M clang/lib/Index/IndexingAction.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/Lex/PPDirectives.cpp
M clang/lib/Lex/Preprocessor.cpp
M clang/lib/Parse/ParseDecl.cpp
M clang/lib/Parse/ParseExpr.cpp
M clang/lib/Parse/ParseExprCXX.cpp
M clang/lib/Parse/ParseOpenMP.cpp
M clang/lib/Parse/Parser.cpp
A clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
M clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
M clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
A clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
A clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
A clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
A clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
M clang/lib/Sema/Sema.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaAttr.cpp
M clang/lib/Sema/SemaCodeComplete.cpp
M clang/lib/Sema/SemaConcept.cpp
M clang/lib/Sema/SemaDecl.cpp
M clang/lib/Sema/SemaDeclAttr.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaExprMember.cpp
M clang/lib/Sema/SemaHLSL.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaModule.cpp
M clang/lib/Sema/SemaObjC.cpp
M clang/lib/Sema/SemaOpenMP.cpp
M clang/lib/Sema/SemaOverload.cpp
M clang/lib/Sema/SemaPPC.cpp
M clang/lib/Sema/SemaRISCV.cpp
M clang/lib/Sema/SemaTemplate.cpp
M clang/lib/Sema/SemaTemplateDeduction.cpp
M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
M clang/lib/Sema/SemaType.cpp
M clang/lib/Sema/TreeTransform.h
M clang/lib/Serialization/ASTReader.cpp
M clang/lib/Serialization/ASTReaderInternals.h
M clang/lib/Serialization/ASTWriter.cpp
M clang/lib/Serialization/GlobalModuleIndex.cpp
M clang/lib/Serialization/ModuleManager.cpp
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
M clang/lib/Tooling/DependencyScanningTool.cpp
M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
M clang/test/AST/ByteCode/arrays.cpp
R clang/test/AST/ByteCode/builtin-align-cxx.cpp
M clang/test/AST/ByteCode/builtins.c
M clang/test/AST/ByteCode/constexpr-steps.cpp
M clang/test/AST/ByteCode/lambda.cpp
M clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
M clang/test/AST/ByteCode/loops.cpp
M clang/test/AST/ByteCode/records.cpp
A clang/test/AST/HLSL/resources-in-structs-errors.hlsl
A clang/test/AST/HLSL/resources-in-structs.hlsl
M clang/test/AST/ast-crash-doc-function-template.cpp
M clang/test/AST/ast-dump-concepts.cpp
M clang/test/AST/dump.cpp
A clang/test/Analysis/Scalable/command-line-interface.cpp
A clang/test/Analysis/Scalable/downgradable-errors.cpp
A clang/test/Analysis/Scalable/help.cpp
M clang/test/Analysis/Scalable/ssaf-format/list.test
A clang/test/Analysis/allow-equality-of-stack-and-symbolic-ptr.c
A clang/test/Analysis/clang-suppress/class-template-specializations.cpp
A clang/test/Analysis/clang-suppress/classes.cpp
A clang/test/Analysis/clang-suppress/diagnostic-identifiers.cpp
A clang/test/Analysis/clang-suppress/friends.cpp
A clang/test/Analysis/clang-suppress/function-templates.cpp
A clang/test/Analysis/clang-suppress/lambdas.cpp
A clang/test/Analysis/clang-suppress/macros.cpp
A clang/test/Analysis/clang-suppress/namespaces.cpp
A clang/test/Analysis/clang-suppress/nested-templates.cpp
A clang/test/Analysis/clang-suppress/statements.cpp
A clang/test/Analysis/clang-suppress/template-methods.cpp
M clang/test/Analysis/indirect-goto-basics.c
M clang/test/Analysis/plist-macros-with-expansion-ctu.c
M clang/test/Analysis/plist-macros-with-expansion.c
M clang/test/Analysis/plist-macros-with-expansion.cpp
M clang/test/Analysis/ptr-arith.c
R clang/test/Analysis/suppression-attr.cpp
A clang/test/C/C2y/n3517.c
A clang/test/C/C2y/n3652.c
A clang/test/C/C2y/n3715.c
A clang/test/CIR/CodeGen/Inputs/std-compare.h
A clang/test/CIR/CodeGen/abi-lower-after-unreachable.cpp
A clang/test/CIR/CodeGen/abstract-cond.c
M clang/test/CIR/CodeGen/address-space.c
M clang/test/CIR/CodeGen/arg-attrs.cpp
M clang/test/CIR/CodeGen/dtors.cpp
M clang/test/CIR/CodeGen/globals.cpp
A clang/test/CIR/CodeGen/initializer-list-two-pointers.cpp
M clang/test/CIR/CodeGen/invoke-attrs.cpp
M clang/test/CIR/CodeGen/lambda-static-invoker.cpp
M clang/test/CIR/CodeGen/lambda.cpp
A clang/test/CIR/CodeGen/loop-cond-cleanup.cpp
M clang/test/CIR/CodeGen/misc-attrs.cpp
M clang/test/CIR/CodeGen/new.cpp
M clang/test/CIR/CodeGen/no-odr-use.cpp
M clang/test/CIR/CodeGen/noreturn.cpp
M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
M clang/test/CIR/CodeGen/replace-global.cpp
M clang/test/CIR/CodeGen/ret-attrs.cpp
A clang/test/CIR/CodeGen/save-temps.c
M clang/test/CIR/CodeGen/side-effect.cpp
M clang/test/CIR/CodeGen/struct-init.cpp
M clang/test/CIR/CodeGen/ternary-throw.cpp
M clang/test/CIR/CodeGen/ternary.cpp
A clang/test/CIR/CodeGen/three-way-cmp.cpp
M clang/test/CIR/CodeGenBuiltins/builtin-fcmp-sse.c
M clang/test/CIR/CodeGenBuiltins/builtins-overflow.cpp
M clang/test/CIR/CodeGenCUDA/address-spaces.cu
M clang/test/CIR/CodeGenCUDA/kernel-stub-name.cu
M clang/test/CIR/CodeGenCXX/simple-reinterpret-const-cast.cpp
A clang/test/CIR/CodeGenHIP/amdgpu-module-flags.hip
M clang/test/CIR/CodeGenHIP/simple.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
M clang/test/CIR/CodeGenOpenACC/combined-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/combined.cpp
M clang/test/CIR/CodeGenOpenACC/compute-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/compute-private-clause-templates.cpp
M clang/test/CIR/CodeGenOpenACC/data-copy-copyin-copyout-create.c
M clang/test/CIR/CodeGenOpenACC/data.c
M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
M clang/test/CIR/CodeGenOpenACC/enter-data.c
M clang/test/CIR/CodeGenOpenACC/exit-data.c
M clang/test/CIR/CodeGenOpenACC/host_data.c
M clang/test/CIR/CodeGenOpenACC/init.c
M clang/test/CIR/CodeGenOpenACC/kernels.c
M clang/test/CIR/CodeGenOpenACC/loop.cpp
M clang/test/CIR/CodeGenOpenACC/parallel.c
M clang/test/CIR/CodeGenOpenACC/routine-anon-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-bind.c
M clang/test/CIR/CodeGenOpenACC/routine-bind.cpp
M clang/test/CIR/CodeGenOpenACC/routine-clauses.cpp
M clang/test/CIR/CodeGenOpenACC/routine-device_type.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-globals2.cpp
M clang/test/CIR/CodeGenOpenACC/routine-locals.cpp
M clang/test/CIR/CodeGenOpenACC/routine-members.cpp
M clang/test/CIR/CodeGenOpenACC/routine-ns.cpp
M clang/test/CIR/CodeGenOpenACC/routine-templ.cpp
M clang/test/CIR/CodeGenOpenACC/serial.c
M clang/test/CIR/CodeGenOpenACC/set.c
M clang/test/CIR/CodeGenOpenACC/shutdown.c
M clang/test/CIR/CodeGenOpenACC/update.c
M clang/test/CIR/CodeGenOpenACC/wait.c
M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
M clang/test/CIR/IR/address-space.cir
M clang/test/CIR/IR/invalid-addrspace.cir
A clang/test/CIR/IR/invalid-cmp3way.cir
A clang/test/CIR/Lowering/global-address-space.cir
M clang/test/CXX/drs/cwg0xx.cpp
M clang/test/CXX/drs/cwg10xx.cpp
M clang/test/CXX/drs/cwg118.cpp
M clang/test/CXX/drs/cwg11xx.cpp
M clang/test/CXX/drs/cwg12xx.cpp
M clang/test/CXX/drs/cwg13xx.cpp
M clang/test/CXX/drs/cwg14xx.cpp
M clang/test/CXX/drs/cwg158.cpp
M clang/test/CXX/drs/cwg15xx.cpp
M clang/test/CXX/drs/cwg16xx.cpp
M clang/test/CXX/drs/cwg1736.cpp
M clang/test/CXX/drs/cwg17xx.cpp
M clang/test/CXX/drs/cwg1884.cpp
M clang/test/CXX/drs/cwg18xx.cpp
M clang/test/CXX/drs/cwg19xx.cpp
M clang/test/CXX/drs/cwg1xx.cpp
M clang/test/CXX/drs/cwg20xx.cpp
M clang/test/CXX/drs/cwg2149.cpp
M clang/test/CXX/drs/cwg21xx.cpp
M clang/test/CXX/drs/cwg22xx.cpp
M clang/test/CXX/drs/cwg2335.cpp
M clang/test/CXX/drs/cwg23xx.cpp
M clang/test/CXX/drs/cwg24xx.cpp
M clang/test/CXX/drs/cwg25xx.cpp
M clang/test/CXX/drs/cwg2630.cpp
M clang/test/CXX/drs/cwg26xx.cpp
M clang/test/CXX/drs/cwg273.cpp
M clang/test/CXX/drs/cwg2771.cpp
M clang/test/CXX/drs/cwg279.cpp
M clang/test/CXX/drs/cwg27xx.cpp
M clang/test/CXX/drs/cwg28xx.cpp
M clang/test/CXX/drs/cwg2947.cpp
M clang/test/CXX/drs/cwg29xx.cpp
M clang/test/CXX/drs/cwg2xx.cpp
M clang/test/CXX/drs/cwg30xx.cpp
M clang/test/CXX/drs/cwg3xx.cpp
M clang/test/CXX/drs/cwg4xx.cpp
M clang/test/CXX/drs/cwg5xx.cpp
M clang/test/CXX/drs/cwg6xx.cpp
M clang/test/CXX/drs/cwg722.cpp
M clang/test/CXX/drs/cwg787.cpp
M clang/test/CXX/drs/cwg7xx.cpp
M clang/test/CXX/drs/cwg8xx.cpp
M clang/test/CXX/drs/cwg9xx.cpp
M clang/test/CXX/expr/expr.prim/expr.prim.req/nested-requirement.cpp
M clang/test/CodeCompletion/cpp23-explicit-object.cpp
M clang/test/CodeCompletion/member-access.cpp
M clang/test/CodeGen/AArch64/bf16-getset-intrinsics.c
M clang/test/CodeGen/AArch64/neon-intrinsics.c
A clang/test/CodeGen/AArch64/neon/bf16-getset.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
A clang/test/CodeGen/PowerPC/attr-target-clones.c
M clang/test/CodeGen/X86/avx512f-builtins.c
M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
M clang/test/CodeGen/X86/avx512vl-builtins.c
M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
M clang/test/CodeGen/amdgpu-image-rsrc-type-debug-info.c
M clang/test/CodeGen/arm64-microsoft-sys.c
M clang/test/CodeGen/builtins-extended-image.c
M clang/test/CodeGen/builtins-image-load.c
M clang/test/CodeGen/builtins-image-store.c
M clang/test/CodeGen/overflow-behavior-types.c
M clang/test/CodeGen/sanitize-metadata-nosanitize.c
A clang/test/CodeGenCUDA/mangling.cu
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllexport.cpp
M clang/test/CodeGenCXX/attr-exclude_from_explicit_instantiation.exclude_from_dllimport.cpp
M clang/test/CodeGenCXX/builtin_FUNCTION.cpp
M clang/test/CodeGenCXX/dllexport-inherited-ctor.cpp
A clang/test/CodeGenCXX/microsoft-vector-deleting-dtors-new-array.cpp
A clang/test/CodeGenHIP/builtins-amdgcn-buffer-format.hip
A clang/test/CodeGenHLSL/builtins/QuadReadAcrossX.hlsl
M clang/test/CodeGenHLSL/builtins/mul.hlsl
M clang/test/CodeGenHLSL/builtins/transpose.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-unbounded.hlsl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-load-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-struct-buffer-store-format.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-gfx1250-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32-gfx10-err.cl
A clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64-gfx10-err.cl
M clang/test/CodeGenOpenCL/convergent.cl
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclang_rt.profile.a
A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/nvptx64-nvidia-cuda/libclang_rt.profile.a
M clang/test/Driver/amdgpu-toolchain.c
M clang/test/Driver/autocomplete.c
M clang/test/Driver/baremetal.cpp
M clang/test/Driver/cl-link.c
M clang/test/Driver/cuda-cross-compiling.c
M clang/test/Driver/darwin-builtin-modules.c
R clang/test/Driver/darwin-ld-platform-version-macos-nosdk.c
M clang/test/Driver/darwin-ld-platform-version-macos.c
M clang/test/Driver/fsanitize-ignorelist.c
A clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
A clang/test/Driver/modules-driver-dep-graph.cpp
A clang/test/Driver/modules-driver-dep-scan-diagnostics.cpp
A clang/test/Driver/modules-driver-duplicate-named-module.cpp
M clang/test/Driver/modules-driver-manifest-not-found.cpp
M clang/test/Driver/openmp-offload-gpu.c
M clang/test/Driver/spirv-llvm-link.c
A clang/test/Driver/x86-fixed-di-register.c
M clang/test/Driver/xcselect.c
A clang/test/Frontend/verify-directives-full-match.cpp
A clang/test/Frontend/verify-directives-one-diag.cpp
A clang/test/Frontend/verify-directives-order.cpp
A clang/test/Frontend/verify-directives-wildcard.cpp
A clang/test/Headers/endian.c
M clang/test/Index/annotate-module.m
M clang/test/Index/complete-qualified.cpp
M clang/test/Interpreter/pretty-print.cpp
A clang/test/Misc/noexecstack.c
M clang/test/Modules/DebugInfoNamespace.cpp
M clang/test/Modules/DebugInfoSubmoduleImport.c
M clang/test/Modules/DebugInfoTransitiveImport.m
M clang/test/Modules/ExtDebugInfo.cpp
M clang/test/Modules/ExtDebugInfo.m
M clang/test/Modules/ModuleDebugInfo.cpp
M clang/test/Modules/ModuleDebugInfo.m
M clang/test/Modules/ModuleModuleDebugInfo.cpp
A clang/test/Modules/align-val-t-merge.cpp
M clang/test/Modules/debug-info-moduleimport.m
M clang/test/Modules/global_index.m
M clang/test/Modules/load-after-failure.m
M clang/test/Modules/module-debuginfo-compdir.m
M clang/test/Modules/module-debuginfo-prefix.m
A clang/test/Modules/pr179178.cpp
A clang/test/Modules/pr186603.cppm
A clang/test/Modules/relative-module-cache.c
M clang/test/OpenMP/declare_target_ast_print.cpp
M clang/test/OpenMP/declare_target_codegen.cpp
M clang/test/OpenMP/declare_target_link_codegen.cpp
M clang/test/OpenMP/declare_target_messages.cpp
M clang/test/OpenMP/distribute_codegen.cpp
M clang/test/OpenMP/distribute_simd_codegen.cpp
A clang/test/OpenMP/map_const_aggregate.cpp
M clang/test/OpenMP/openmp_offload_codegen.cpp
M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
M clang/test/OpenMP/target_firstprivate_codegen.cpp
M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
M clang/test/OpenMP/target_parallel_codegen.cpp
M clang/test/OpenMP/target_parallel_for_codegen.cpp
M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
M clang/test/OpenMP/target_parallel_if_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
M clang/test/OpenMP/target_private_codegen.cpp
M clang/test/OpenMP/target_task_affinity_codegen.cpp
M clang/test/OpenMP/target_teams_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
M clang/test/OpenMP/target_teams_map_codegen.cpp
M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
M clang/test/OpenMP/teams_codegen.cpp
M clang/test/Sema/Inputs/lifetime-analysis.h
A clang/test/Sema/PowerPC/attr-target-clones.c
M clang/test/Sema/attr-target.c
M clang/test/Sema/builtins-microsoft-arm64.c
A clang/test/Sema/gh183974.c
M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
A clang/test/Sema/x86-fixed-global-register.c
M clang/test/Sema/zvk-invalid-features.c
M clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.ignore-dllattr.cpp
M clang/test/SemaCXX/builtin-align-cxx.cpp
M clang/test/SemaCXX/cxx2b-deducing-this.cpp
A clang/test/SemaCXX/deleted-template-spec-diag.cpp
M clang/test/SemaCXX/dllexport-constrained-inherited-ctor.cpp
M clang/test/SemaCXX/gh134265.cpp
M clang/test/SemaCXX/type_pack_element.cpp
A clang/test/SemaCXX/warn-maybe-unused-private-field.cpp
A clang/test/SemaHIP/builtins-amdgcn-buffer-format.hip
A clang/test/SemaHLSL/BuiltIns/QuadReadAcrossX-errors.hlsl
A clang/test/SemaOpenCL/builtins-amdgcn-raw-buffer-format-error.cl
A clang/test/SemaOpenCL/builtins-amdgcn-struct-buffer-format-error.cl
A clang/test/SemaTemplate/GH176152.cpp
M clang/test/SemaTemplate/concepts-recursive-inst.cpp
M clang/test/SemaTemplate/concepts.cpp
M clang/test/SemaTemplate/ctad.cpp
M clang/test/SemaTemplate/deduction-crash.cpp
M clang/test/SemaTemplate/stack-exhaustion.cpp
M clang/tools/c-index-test/c-index-test.c
M clang/tools/clang-format/git-clang-format
M clang/tools/clang-fuzzer/handle-llvm/handle_llvm.cpp
M clang/tools/clang-ssaf-format/CMakeLists.txt
M clang/tools/clang-ssaf-format/SSAFFormat.cpp
M clang/tools/clang-ssaf-linker/CMakeLists.txt
M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
M clang/tools/driver/cc1as_main.cpp
M clang/tools/libclang/CIndex.cpp
M clang/tools/libclang/CXIndexDataConsumer.cpp
M clang/unittests/AST/ProfilingTest.cpp
M clang/unittests/Analysis/CFGBackEdgesTest.cpp
M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
M clang/unittests/Analysis/FlowSensitive/TypeErasedDataflowAnalysisTest.cpp
M clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
M clang/unittests/Analysis/MacroExpansionContextTest.cpp
M clang/unittests/Format/ConfigParseTest.cpp
M clang/unittests/Format/FormatTest.cpp
M clang/unittests/Format/FormatTestMacroExpansion.cpp
M clang/unittests/Format/QualifierFixerTest.cpp
M clang/unittests/Format/TokenAnnotatorTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
A clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
M clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
A clang/unittests/ScalableStaticAnalysisFramework/SSAFBuiltinTestForceLinker.h
A clang/unittests/ScalableStaticAnalysisFramework/SSAFTestForceLinker.h
M clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
A clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
M clang/unittests/Serialization/ForceCheckFileInputTest.cpp
M clang/unittests/Tooling/CompilationDatabaseTest.cpp
M clang/utils/TableGen/ClangOpcodesEmitter.cpp
M clang/www/c_status.html
M clang/www/cxx_dr_status.html
M compiler-rt/cmake/base-config-ix.cmake
M compiler-rt/include/sanitizer/asan_interface.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/scripts/asan_symbolize.py
M compiler-rt/lib/asan/tests/asan_interface_test.cpp
M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
M compiler-rt/lib/fuzzer/scripts/unbalanced_allocs.py
M compiler-rt/lib/profile/CMakeLists.txt
M compiler-rt/lib/profile/InstrProfiling.h
A compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
M compiler-rt/lib/sanitizer_common/sanitizer_internal_defs.h
M compiler-rt/lib/sanitizer_common/scripts/gen_dynamic_list.py
M compiler-rt/lib/sanitizer_common/scripts/sancov.py
M compiler-rt/lib/scudo/standalone/allocator_config.def
M compiler-rt/lib/scudo/standalone/chunk.h
M compiler-rt/lib/scudo/standalone/combined.h
M compiler-rt/lib/scudo/standalone/flags.inc
M compiler-rt/lib/scudo/standalone/options.h
M compiler-rt/lib/scudo/standalone/report.cpp
M compiler-rt/lib/scudo/standalone/report.h
M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test_main.cpp
M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
M compiler-rt/lib/scudo/standalone/wrappers_c.inc
M compiler-rt/lib/scudo/standalone/wrappers_cpp.cpp
M compiler-rt/test/asan/TestCases/wild_pointer.cpp
M flang-rt/lib/runtime/character.cpp
M flang-rt/lib/runtime/file.cpp
M flang-rt/lib/runtime/namelist.cpp
M flang-rt/test/Driver/safe-trampoline-gnustack.f90
M flang-rt/test/lit.site.cfg.py.in
M flang-rt/unittests/Runtime/CharacterTest.cpp
M flang-rt/unittests/Runtime/ExternalIOTest.cpp
M flang/docs/Directives.md
M flang/docs/Extensions.md
M flang/docs/F202X.md
M flang/docs/FortranStandardsSupport.md
M flang/docs/Intrinsics.md
M flang/include/flang/Lower/CUDA.h
M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
M flang/include/flang/Optimizer/Builder/Runtime/Character.h
M flang/include/flang/Optimizer/Dialect/FIROps.td
M flang/include/flang/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.h
M flang/include/flang/Parser/message.h
M flang/include/flang/Parser/openmp-utils.h
M flang/include/flang/Parser/tools.h
M flang/include/flang/Runtime/character.h
M flang/include/flang/Semantics/expression.h
M flang/include/flang/Semantics/openmp-directive-sets.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/include/flang/Support/Fortran-features.h
M flang/lib/Evaluate/intrinsics.cpp
M flang/lib/Lower/CUDA.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Lower/OpenACC.cpp
M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
M flang/lib/Lower/OpenMP/OpenMP.cpp
M flang/lib/Lower/Support/PrivateReductionUtils.cpp
M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Builder/Runtime/Character.cpp
M flang/lib/Optimizer/CodeGen/CodeGen.cpp
M flang/lib/Optimizer/Dialect/CMakeLists.txt
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
M flang/lib/Optimizer/OpenACC/Analysis/CMakeLists.txt
M flang/lib/Optimizer/OpenACC/Analysis/FIROpenACCSupportAnalysis.cpp
M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
M flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Parser/openmp-parsers.cpp
M flang/lib/Parser/openmp-utils.cpp
M flang/lib/Parser/program-parsers.cpp
M flang/lib/Parser/source.cpp
M flang/lib/Parser/stmt-parser.h
M flang/lib/Parser/tools.cpp
M flang/lib/Semantics/canonicalize-do.cpp
M flang/lib/Semantics/check-call.cpp
M flang/lib/Semantics/check-omp-loop.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/check-omp-structure.h
M flang/lib/Semantics/definable.cpp
M flang/lib/Semantics/definable.h
M flang/lib/Semantics/expression.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/lib/Semantics/resolve-directives.cpp
M flang/lib/Semantics/resolve-labels.cpp
M flang/lib/Support/Fortran-features.cpp
A flang/test/Analysis/AliasAnalysis/alias-analysis-omp-private-boxed-array.mlir
A flang/test/Evaluate/bug2418.f90
A flang/test/Fir/OpenACC/acc-routine-to-gpu-func.fir
M flang/test/Fir/OpenACC/use-device-canonicalizer.mlir
A flang/test/Fir/array-coor-canonicalization-acc.fir
A flang/test/Fir/bitcast-fold.fir
M flang/test/Fir/convert-to-llvm.fir
M flang/test/Fir/fir-ops.fir
M flang/test/Fir/invalid.fir
M flang/test/Integration/OpenMP/copyprivate.f90
M flang/test/Lower/HLFIR/array-ctor-as-elemental.f90
M flang/test/Lower/HLFIR/array-ctor-as-inlined-temp.f90
M flang/test/Lower/HLFIR/binary-ops.f90
M flang/test/Lower/HLFIR/custom-intrinsic.f90
A flang/test/Lower/HLFIR/ignore-tkr-c-base-addr.f90
M flang/test/Lower/Intrinsics/anint.f90
M flang/test/Lower/Intrinsics/ieee_operator_eq.f90
M flang/test/Lower/Intrinsics/ieee_signbit.f90
M flang/test/Lower/Intrinsics/index.f90
M flang/test/Lower/Intrinsics/iparity.f90
M flang/test/Lower/Intrinsics/is_contiguous.f90
M flang/test/Lower/Intrinsics/is_iostat_value.f90
M flang/test/Lower/Intrinsics/ishft.f90
M flang/test/Lower/Intrinsics/ishftc.f90
M flang/test/Lower/Intrinsics/lbound.f90
M flang/test/Lower/Intrinsics/leadz.f90
M flang/test/Lower/Intrinsics/len.f90
M flang/test/Lower/Intrinsics/lge_lgt_lle_llt.f90
M flang/test/Lower/Intrinsics/log.f90
M flang/test/Lower/Intrinsics/matmul.f90
M flang/test/Lower/Intrinsics/max.f90
M flang/test/Lower/Intrinsics/maxloc.f90
M flang/test/Lower/Intrinsics/maxval.f90
M flang/test/Lower/Intrinsics/merge.f90
M flang/test/Lower/Intrinsics/merge_bits.f90
M flang/test/Lower/Intrinsics/minloc.f90
A flang/test/Lower/Intrinsics/split.f90
M flang/test/Lower/OpenACC/acc-atomic-update-hlfir.f90
M flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
M flang/test/Lower/OpenACC/acc-host-data.f90
M flang/test/Lower/OpenACC/acc-reduction-maxmin.f90
M flang/test/Lower/OpenACC/acc-reduction.f90
A flang/test/Lower/OpenMP/Todo/interchange.f90
M flang/test/Lower/OpenMP/atomic-update.f90
A flang/test/Lower/OpenMP/copyprivate-equivalence.f90
M flang/test/Lower/OpenMP/copyprivate.f90
M flang/test/Lower/OpenMP/copyprivate2.f90
M flang/test/Lower/OpenMP/copyprivate3.f90
M flang/test/Lower/OpenMP/copyprivate4.f90
M flang/test/Lower/OpenMP/copyprivate5.f90
M flang/test/Lower/OpenMP/delayed-privatization-cuda-device-array.cuf
M flang/test/Lower/OpenMP/minmax-optional-parameters.f90
M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.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-max-2-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
M flang/test/Lower/PowerPC/ppc-vec-store-elem-order.f90
M flang/test/Lower/PowerPC/ppc-vec-store.f90
M flang/test/Lower/array-elemental-calls-2.f90
M flang/test/Lower/fp-maxmin-behavior.f90
M flang/test/Lower/math-lowering/anint.f90
A flang/test/Parser/OpenMP/do-interchange.f90
A flang/test/Parser/OpenMP/interchange-fail.f90
A flang/test/Parser/OpenMP/interchange-permutation.f90
A flang/test/Parser/OpenMP/interchange.f90
A flang/test/Parser/shared-line-program-units.f90
A flang/test/Parser/shared-line-program-units.reject.0.f90
A flang/test/Parser/shared-line-program-units.reject.1.f90
M flang/test/Semantics/OpenACC/acc-atomic-validity.f90
M flang/test/Semantics/OpenACC/acc-wait-validity.f90
M flang/test/Semantics/OpenMP/do-collapse.f90
M flang/test/Semantics/OpenMP/do-concurrent-collapse.f90
M flang/test/Semantics/OpenMP/do-ordered.f90
M flang/test/Semantics/OpenMP/do08.f90
M flang/test/Semantics/OpenMP/do10.f90
M flang/test/Semantics/OpenMP/do13.f90
M flang/test/Semantics/OpenMP/do15.f90
M flang/test/Semantics/OpenMP/do16.f90
M flang/test/Semantics/OpenMP/do22.f90
M flang/test/Semantics/OpenMP/fuse1.f90
A flang/test/Semantics/OpenMP/interchange-permutation.f90
A flang/test/Semantics/OpenMP/interchange01.f90
M flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence-nowarn.f90
A flang/test/Semantics/OpenMP/threadprivate-equivalence.f90
M flang/test/Semantics/OpenMP/threadprivate02.f90
M flang/test/Semantics/OpenMP/tile05.f90
M flang/test/Semantics/OpenMP/tile07.f90
A flang/test/Semantics/bug181353.f90
A flang/test/Semantics/bug2381.f90
A flang/test/Semantics/bug2436.f
A flang/test/Semantics/canondo18.f90
M flang/test/Semantics/getsymbols02.f90
A flang/test/Semantics/split.f90
M flang/test/Semantics/test_errors.py
M flang/test/Transforms/FIRToMemRef/alloca.mlir
M flang/unittests/Optimizer/CMakeLists.txt
A flang/unittests/Optimizer/FIRCallInterfaceTest.cpp
M libc/CMakeLists.txt
M libc/Maintainers.rst
M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
M libc/cmake/modules/LibcConfig.cmake
M libc/config/baremetal/aarch64/entrypoints.txt
M libc/config/baremetal/arm/entrypoints.txt
M libc/config/baremetal/config.json
M libc/config/baremetal/riscv/entrypoints.txt
M libc/config/config.json
M libc/config/darwin/aarch64/entrypoints.txt
M libc/config/darwin/x86_64/entrypoints.txt
M libc/config/gpu/amdgpu/entrypoints.txt
M libc/config/gpu/nvptx/entrypoints.txt
M libc/config/linux/aarch64/entrypoints.txt
M libc/config/linux/arm/entrypoints.txt
M libc/config/linux/riscv/entrypoints.txt
M libc/config/linux/x86_64/entrypoints.txt
M libc/config/linux/x86_64/headers.txt
M libc/config/windows/entrypoints.txt
A libc/docs/build_concepts.rst
R libc/docs/configure.rst
M libc/docs/contributing.rst
M libc/docs/dev/clang_tidy_checks.rst
M libc/docs/dev/code_style.rst
M libc/docs/dev/implementation_standard.rst
M libc/docs/dev/index.rst
A libc/docs/dev/modular_format.rst
A libc/docs/dev/syscall_wrapper_refactor.rst
M libc/docs/full_host_build.rst
M libc/docs/getting_started.rst
M libc/docs/headers/math/index.rst
M libc/docs/index.rst
M libc/docs/uefi/support.rst
M libc/docs/uefi/using.rst
M libc/hdr/CMakeLists.txt
A libc/hdr/sys_ipc_macros.h
A libc/hdr/sys_sem_macros.h
M libc/hdr/types/CMakeLists.txt
A libc/hdr/types/constraint_handler_t.h
A libc/hdr/types/errno_t.h
A libc/hdr/types/rsize_t.h
A libc/hdr/types/struct_sembuf.h
A libc/hdr/types/struct_semid_ds.h
A libc/hdr/types/struct_seminfo.h
M libc/include/CMakeLists.txt
M libc/include/errno.yaml
M libc/include/llvm-libc-macros/CMakeLists.txt
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
A libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
M libc/include/llvm-libc-macros/linux/CMakeLists.txt
M libc/include/llvm-libc-macros/linux/sys-ipc-macros.h
A libc/include/llvm-libc-macros/linux/sys-sem-macros.h
A libc/include/llvm-libc-macros/sys-sem-macros.h
M libc/include/llvm-libc-types/CMakeLists.txt
A libc/include/llvm-libc-types/constraint_handler_t.h
A libc/include/llvm-libc-types/errno_t.h
A libc/include/llvm-libc-types/rsize_t.h
A libc/include/llvm-libc-types/struct_sembuf.h
A libc/include/llvm-libc-types/struct_semid_ds.h
A libc/include/llvm-libc-types/struct_seminfo.h
M libc/include/stdio.yaml
M libc/include/stdlib.yaml
A libc/include/sys/sem.yaml
M libc/include/threads.yaml
M libc/include/wctype.yaml
M libc/shared/math.h
A libc/shared/math/atanbf16.h
A libc/shared/math/atanpif16.h
A libc/shared/math/bf16divf128.h
A libc/shared/math/bf16fma.h
A libc/shared/math/daddf128.h
A libc/shared/math/daddl.h
A libc/shared/math/fma.h
A libc/shared/math/fmaf.h
A libc/shared/math/fmaf16.h
A libc/shared/math/log_bf16.h
A libc/shared/math/sqrtbf16.h
M libc/src/__support/CPP/type_traits/is_constant_evaluated.h
M libc/src/__support/FPUtil/PolyEval.h
M libc/src/__support/FPUtil/dyadic_float.h
M libc/src/__support/FPUtil/multiply_add.h
M libc/src/__support/File/file.cpp
M libc/src/__support/HashTable/CMakeLists.txt
M libc/src/__support/HashTable/randomness.h
M libc/src/__support/OSUtil/linux/CMakeLists.txt
M libc/src/__support/OSUtil/linux/fcntl.cpp
R libc/src/__support/OSUtil/linux/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
A libc/src/__support/OSUtil/linux/syscall_wrappers/close.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/getrandom.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/open.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/read.h
A libc/src/__support/OSUtil/linux/syscall_wrappers/write.h
M libc/src/__support/ctype_utils.h
M libc/src/__support/macros/attributes.h
M libc/src/__support/macros/config.h
M libc/src/__support/math/CMakeLists.txt
M libc/src/__support/math/acosf.h
M libc/src/__support/math/asinf.h
A libc/src/__support/math/atanbf16.h
A libc/src/__support/math/atanpif16.h
A libc/src/__support/math/bf16divf128.h
A libc/src/__support/math/bf16fma.h
A libc/src/__support/math/daddf128.h
A libc/src/__support/math/daddl.h
A libc/src/__support/math/fma.h
A libc/src/__support/math/fmaf.h
A libc/src/__support/math/fmaf16.h
M libc/src/__support/math/hypotf.h
M libc/src/__support/math/inv_trigf_utils.h
M libc/src/__support/math/log.h
A libc/src/__support/math/log_bf16.h
M libc/src/__support/math/log_range_reduction.h
A libc/src/__support/math/sqrtbf16.h
M libc/src/fcntl/linux/CMakeLists.txt
M libc/src/fcntl/linux/open.cpp
M libc/src/math/CMakeLists.txt
A libc/src/math/atanbf16.h
M libc/src/math/docs/add_math_function.md
M libc/src/math/generic/CMakeLists.txt
A libc/src/math/generic/atanbf16.cpp
M libc/src/math/generic/atanpif16.cpp
M libc/src/math/generic/bf16divf128.cpp
M libc/src/math/generic/bf16fma.cpp
M libc/src/math/generic/daddf128.cpp
M libc/src/math/generic/daddl.cpp
M libc/src/math/generic/fma.cpp
M libc/src/math/generic/fmaf.cpp
M libc/src/math/generic/fmaf16.cpp
M libc/src/math/generic/log_bf16.cpp
M libc/src/math/generic/sqrtbf16.cpp
M libc/src/stdio/CMakeLists.txt
M libc/src/stdio/asprintf.cpp
M libc/src/stdio/asprintf.h
A libc/src/stdio/asprintf_modular.cpp
M libc/src/stdio/baremetal/CMakeLists.txt
M libc/src/stdio/baremetal/printf.cpp
A libc/src/stdio/baremetal/printf_modular.cpp
M libc/src/stdio/baremetal/vfprintf.cpp
M libc/src/stdio/baremetal/vfprintf_internal.h
M libc/src/stdio/baremetal/vprintf.cpp
A libc/src/stdio/baremetal/vprintf_modular.cpp
M libc/src/stdio/generic/CMakeLists.txt
M libc/src/stdio/gpu/CMakeLists.txt
M libc/src/stdio/linux/stderr.cpp
M libc/src/stdio/linux/stdin.cpp
M libc/src/stdio/linux/stdout.cpp
M libc/src/stdio/printf.h
M libc/src/stdio/printf_core/CMakeLists.txt
M libc/src/stdio/printf_core/converter.h
A libc/src/stdio/printf_core/float_impl.cpp
M libc/src/stdio/printf_core/printf_config.h
M libc/src/stdio/printf_core/printf_main.h
M libc/src/stdio/printf_core/vasprintf_internal.h
A libc/src/stdio/printf_core/write_modes.def
M libc/src/stdio/printf_core/writer.h
M libc/src/stdio/snprintf.cpp
M libc/src/stdio/snprintf.h
A libc/src/stdio/snprintf_modular.cpp
M libc/src/stdio/sprintf.cpp
M libc/src/stdio/sprintf.h
A libc/src/stdio/sprintf_modular.cpp
M libc/src/stdio/vasprintf.cpp
M libc/src/stdio/vasprintf.h
A libc/src/stdio/vasprintf_modular.cpp
M libc/src/stdio/vprintf.h
M libc/src/stdio/vsnprintf.cpp
M libc/src/stdio/vsnprintf.h
A libc/src/stdio/vsnprintf_modular.cpp
M libc/src/stdio/vsprintf.cpp
M libc/src/stdio/vsprintf.h
A libc/src/stdio/vsprintf_modular.cpp
M libc/src/string/memory_utils/op_x86.h
M libc/src/string/memory_utils/x86_64/inline_memcpy.h
M libc/src/sys/CMakeLists.txt
M libc/src/sys/mman/linux/CMakeLists.txt
M libc/src/sys/mman/linux/shm_open.cpp
M libc/src/sys/random/linux/CMakeLists.txt
M libc/src/sys/random/linux/getrandom.cpp
A libc/src/sys/sem/CMakeLists.txt
A libc/src/sys/sem/linux/CMakeLists.txt
A libc/src/sys/sem/linux/semctl.cpp
A libc/src/sys/sem/linux/semget.cpp
A libc/src/sys/sem/linux/semop.cpp
A libc/src/sys/sem/semctl.h
A libc/src/sys/sem/semget.h
A libc/src/sys/sem/semop.h
M libc/src/unistd/linux/CMakeLists.txt
M libc/src/unistd/linux/close.cpp
M libc/src/unistd/linux/read.cpp
M libc/src/unistd/linux/write.cpp
M libc/src/wctype/CMakeLists.txt
A libc/src/wctype/iswprint.cpp
A libc/src/wctype/iswprint.h
A libc/src/wctype/iswpunct.cpp
A libc/src/wctype/iswpunct.h
M libc/test/integration/src/CMakeLists.txt
A libc/test/integration/src/sys/CMakeLists.txt
A libc/test/integration/src/sys/sem/CMakeLists.txt
A libc/test/integration/src/sys/sem/sem_test.cpp
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/atanbf16_test.cpp
M libc/test/src/math/smoke/CMakeLists.txt
A libc/test/src/math/smoke/atanbf16_test.cpp
M libc/test/src/sys/CMakeLists.txt
A libc/test/src/sys/sem/CMakeLists.txt
A libc/test/src/sys/sem/linux/CMakeLists.txt
A libc/test/src/sys/sem/linux/sem_test.cpp
M libc/test/src/wctype/CMakeLists.txt
A libc/test/src/wctype/iswprint_test.cpp
A libc/test/src/wctype/iswpunct_test.cpp
M libc/utils/hdrgen/hdrgen/header.py
M libc/utils/hdrgen/tests/expected_output/test_header.h
M libc/utils/hdrgen/tests/expected_output/test_small.json
M libc/utils/hdrgen/tests/expected_output/test_small_proxy.h
M libc/utils/hdrgen/tests/input/merge1.yaml
M libclc/clc/include/clc/address_space/clc_qualifier.h
M libclc/clc/include/clc/async/clc_prefetch.h
M libclc/clc/include/clc/atomic/clc_atomic_compare_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_dec.h
M libclc/clc/include/clc/atomic/clc_atomic_exchange.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_add.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_and.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_max.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_min.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_or.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_sub.h
M libclc/clc/include/clc/atomic/clc_atomic_fetch_xor.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_clear.h
M libclc/clc/include/clc/atomic/clc_atomic_flag_test_and_set.h
M libclc/clc/include/clc/atomic/clc_atomic_inc.h
M libclc/clc/include/clc/atomic/clc_atomic_load.h
M libclc/clc/include/clc/atomic/clc_atomic_store.h
M libclc/clc/include/clc/clc_convert.h
M libclc/clc/include/clc/collective/clc_work_group_broadcast.h
M libclc/clc/include/clc/collective/clc_work_group_reduce.h
M libclc/clc/include/clc/common/clc_degrees.h
M libclc/clc/include/clc/common/clc_radians.h
M libclc/clc/include/clc/common/clc_sign.h
M libclc/clc/include/clc/common/clc_smoothstep.h
M libclc/clc/include/clc/common/clc_step.h
M libclc/clc/include/clc/geometric/binary_def.inc
M libclc/clc/include/clc/geometric/clc_cross.h
M libclc/clc/include/clc/geometric/clc_distance.h
M libclc/clc/include/clc/geometric/clc_dot.h
M libclc/clc/include/clc/geometric/clc_fast_distance.h
M libclc/clc/include/clc/geometric/clc_fast_length.h
M libclc/clc/include/clc/geometric/clc_fast_normalize.h
M libclc/clc/include/clc/geometric/clc_length.h
M libclc/clc/include/clc/geometric/clc_normalize.h
M libclc/clc/include/clc/geometric/unary_def.inc
M libclc/clc/include/clc/integer/clc_abs.h
M libclc/clc/include/clc/integer/clc_abs_diff.h
M libclc/clc/include/clc/integer/clc_add_sat.h
M libclc/clc/include/clc/integer/clc_bit_reverse.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_signed.h
M libclc/clc/include/clc/integer/clc_bitfield_extract_unsigned.h
M libclc/clc/include/clc/integer/clc_bitfield_insert.h
M libclc/clc/include/clc/integer/clc_clz.h
M libclc/clc/include/clc/integer/clc_ctz.h
M libclc/clc/include/clc/integer/clc_hadd.h
M libclc/clc/include/clc/integer/clc_mad24.h
M libclc/clc/include/clc/integer/clc_mad_hi.h
M libclc/clc/include/clc/integer/clc_mad_sat.h
M libclc/clc/include/clc/integer/clc_mul24.h
M libclc/clc/include/clc/integer/clc_mul_hi.h
M libclc/clc/include/clc/integer/clc_popcount.h
M libclc/clc/include/clc/integer/clc_rhadd.h
M libclc/clc/include/clc/integer/clc_rotate.h
M libclc/clc/include/clc/integer/clc_sub_sat.h
M libclc/clc/include/clc/integer/clc_upsample.h
M libclc/clc/include/clc/integer/gentype.inc
M libclc/clc/include/clc/integer/gentype24.inc
M libclc/clc/include/clc/internal/clc.h
M libclc/clc/include/clc/internal/math/clc_sw_fma.h
M libclc/clc/include/clc/math/clc_acos.h
M libclc/clc/include/clc/math/clc_acosh.h
M libclc/clc/include/clc/math/clc_acospi.h
M libclc/clc/include/clc/math/clc_asin.h
M libclc/clc/include/clc/math/clc_asinh.h
M libclc/clc/include/clc/math/clc_asinpi.h
M libclc/clc/include/clc/math/clc_atan.h
M libclc/clc/include/clc/math/clc_atan2.h
M libclc/clc/include/clc/math/clc_atan2pi.h
M libclc/clc/include/clc/math/clc_atanh.h
M libclc/clc/include/clc/math/clc_atanpi.h
A libclc/clc/include/clc/math/clc_canonicalize.h
M libclc/clc/include/clc/math/clc_cbrt.h
M libclc/clc/include/clc/math/clc_ceil.h
M libclc/clc/include/clc/math/clc_copysign.h
M libclc/clc/include/clc/math/clc_cos.h
M libclc/clc/include/clc/math/clc_cosh.h
M libclc/clc/include/clc/math/clc_cospi.h
M libclc/clc/include/clc/math/clc_div_cr.h
M libclc/clc/include/clc/math/clc_div_fast.h
M libclc/clc/include/clc/math/clc_ep.h
M libclc/clc/include/clc/math/clc_ep_decl.inc
M libclc/clc/include/clc/math/clc_ep_log.h
M libclc/clc/include/clc/math/clc_erf.h
M libclc/clc/include/clc/math/clc_erfc.h
M libclc/clc/include/clc/math/clc_exp.h
M libclc/clc/include/clc/math/clc_exp10.h
M libclc/clc/include/clc/math/clc_exp2.h
A libclc/clc/include/clc/math/clc_exp2_fast.h
M libclc/clc/include/clc/math/clc_exp_helper.h
M libclc/clc/include/clc/math/clc_expm1.h
M libclc/clc/include/clc/math/clc_fabs.h
M libclc/clc/include/clc/math/clc_fdim.h
M libclc/clc/include/clc/math/clc_floor.h
A libclc/clc/include/clc/math/clc_flush_if_daz.h
M libclc/clc/include/clc/math/clc_fma.h
M libclc/clc/include/clc/math/clc_fmax.h
M libclc/clc/include/clc/math/clc_fmin.h
M libclc/clc/include/clc/math/clc_fmod.h
M libclc/clc/include/clc/math/clc_fract.h
M libclc/clc/include/clc/math/clc_frexp.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits.h
A libclc/clc/include/clc/math/clc_get_twobypi_bits_decl.inc
M libclc/clc/include/clc/math/clc_half_cos.h
M libclc/clc/include/clc/math/clc_half_divide.h
M libclc/clc/include/clc/math/clc_half_exp.h
M libclc/clc/include/clc/math/clc_half_exp10.h
M libclc/clc/include/clc/math/clc_half_exp2.h
M libclc/clc/include/clc/math/clc_half_log.h
M libclc/clc/include/clc/math/clc_half_log10.h
M libclc/clc/include/clc/math/clc_half_log2.h
M libclc/clc/include/clc/math/clc_half_powr.h
M libclc/clc/include/clc/math/clc_half_recip.h
M libclc/clc/include/clc/math/clc_half_rsqrt.h
M libclc/clc/include/clc/math/clc_half_sin.h
M libclc/clc/include/clc/math/clc_half_sqrt.h
M libclc/clc/include/clc/math/clc_half_tan.h
M libclc/clc/include/clc/math/clc_hypot.h
M libclc/clc/include/clc/math/clc_ilogb.h
M libclc/clc/include/clc/math/clc_ldexp.h
M libclc/clc/include/clc/math/clc_lgamma.h
M libclc/clc/include/clc/math/clc_lgamma_r.h
M libclc/clc/include/clc/math/clc_log.h
M libclc/clc/include/clc/math/clc_log10.h
M libclc/clc/include/clc/math/clc_log1p.h
M libclc/clc/include/clc/math/clc_log2.h
A libclc/clc/include/clc/math/clc_log2_fast.h
M libclc/clc/include/clc/math/clc_logb.h
M libclc/clc/include/clc/math/clc_mad.h
M libclc/clc/include/clc/math/clc_maxmag.h
M libclc/clc/include/clc/math/clc_minmag.h
M libclc/clc/include/clc/math/clc_modf.h
M libclc/clc/include/clc/math/clc_nan.h
M libclc/clc/include/clc/math/clc_native_cos.h
M libclc/clc/include/clc/math/clc_native_divide.h
M libclc/clc/include/clc/math/clc_native_exp.h
M libclc/clc/include/clc/math/clc_native_exp10.h
M libclc/clc/include/clc/math/clc_native_exp2.h
M libclc/clc/include/clc/math/clc_native_log.h
M libclc/clc/include/clc/math/clc_native_log10.h
M libclc/clc/include/clc/math/clc_native_log2.h
M libclc/clc/include/clc/math/clc_native_powr.h
M libclc/clc/include/clc/math/clc_native_recip.h
M libclc/clc/include/clc/math/clc_native_rsqrt.h
M libclc/clc/include/clc/math/clc_native_sin.h
M libclc/clc/include/clc/math/clc_native_sqrt.h
M libclc/clc/include/clc/math/clc_native_tan.h
M libclc/clc/include/clc/math/clc_nextafter.h
M libclc/clc/include/clc/math/clc_nextdown.h
M libclc/clc/include/clc/math/clc_nextup.h
M libclc/clc/include/clc/math/clc_pow.h
M libclc/clc/include/clc/math/clc_pown.h
M libclc/clc/include/clc/math/clc_powr.h
M libclc/clc/include/clc/math/clc_recip_fast.h
M libclc/clc/include/clc/math/clc_remainder.h
M libclc/clc/include/clc/math/clc_remquo.h
M libclc/clc/include/clc/math/clc_rint.h
M libclc/clc/include/clc/math/clc_rootn.h
M libclc/clc/include/clc/math/clc_round.h
M libclc/clc/include/clc/math/clc_rsqrt.h
M libclc/clc/include/clc/math/clc_sin.h
M libclc/clc/include/clc/math/clc_sincos.h
M libclc/clc/include/clc/math/clc_sincos_helpers.h
M libclc/clc/include/clc/math/clc_sincos_helpers_decl.inc
A libclc/clc/include/clc/math/clc_sincos_helpers_fp16_decl.inc
M libclc/clc/include/clc/math/clc_sincos_helpers_fp64_decl.inc
A libclc/clc/include/clc/math/clc_sincospi.h
M libclc/clc/include/clc/math/clc_sinh.h
M libclc/clc/include/clc/math/clc_sinpi.h
M libclc/clc/include/clc/math/clc_sqrt.h
M libclc/clc/include/clc/math/clc_sqrt_cr.h
M libclc/clc/include/clc/math/clc_sqrt_fast.h
M libclc/clc/include/clc/math/clc_subnormal_config.h
M libclc/clc/include/clc/math/clc_tan.h
M libclc/clc/include/clc/math/clc_tanh.h
M libclc/clc/include/clc/math/clc_tanpi.h
M libclc/clc/include/clc/math/clc_tgamma.h
A libclc/clc/include/clc/math/clc_trigpi_helpers.h
A libclc/clc/include/clc/math/clc_trigpi_helpers_decl.inc
M libclc/clc/include/clc/math/clc_trunc.h
M libclc/clc/include/clc/math/gentype.inc
M libclc/clc/include/clc/math/math.h
M libclc/clc/include/clc/math/remquo_decl.inc
M libclc/clc/include/clc/math/tables.h
M libclc/clc/include/clc/math/unary_def_with_int_ptr.inc
M libclc/clc/include/clc/math/unary_def_with_int_return.inc
M libclc/clc/include/clc/math/unary_def_with_ptr.inc
M libclc/clc/include/clc/mem_fence/clc_mem_fence.h
M libclc/clc/include/clc/misc/clc_shuffle.h
M libclc/clc/include/clc/misc/clc_shuffle2.h
M libclc/clc/include/clc/misc/shuffle2_def.inc
M libclc/clc/include/clc/misc/shuffle_def.inc
M libclc/clc/include/clc/relational/clc_all.h
M libclc/clc/include/clc/relational/clc_any.h
M libclc/clc/include/clc/relational/clc_bitselect.h
M libclc/clc/include/clc/relational/clc_isequal.h
M libclc/clc/include/clc/relational/clc_isfinite.h
M libclc/clc/include/clc/relational/clc_isgreater.h
M libclc/clc/include/clc/relational/clc_isgreaterequal.h
M libclc/clc/include/clc/relational/clc_isinf.h
M libclc/clc/include/clc/relational/clc_isless.h
M libclc/clc/include/clc/relational/clc_islessequal.h
M libclc/clc/include/clc/relational/clc_islessgreater.h
M libclc/clc/include/clc/relational/clc_isnan.h
M libclc/clc/include/clc/relational/clc_isnormal.h
M libclc/clc/include/clc/relational/clc_isnotequal.h
M libclc/clc/include/clc/relational/clc_isordered.h
M libclc/clc/include/clc/relational/clc_issubnormal.h
M libclc/clc/include/clc/relational/clc_isunordered.h
M libclc/clc/include/clc/relational/clc_select.h
M libclc/clc/include/clc/relational/clc_signbit.h
M libclc/clc/include/clc/shared/binary_decl_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def.inc
M libclc/clc/include/clc/shared/binary_def_scalarize.inc
A libclc/clc/include/clc/shared/binary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/binary_def_with_int_second_arg.inc
M libclc/clc/include/clc/shared/binary_def_with_scalar_second_arg.inc
A libclc/clc/include/clc/shared/binary_with_out_arg_scalarize.inc
M libclc/clc/include/clc/shared/clc_clamp.h
M libclc/clc/include/clc/shared/clc_less_aligned_types.h
M libclc/clc/include/clc/shared/clc_max.h
M libclc/clc/include/clc/shared/clc_min.h
M libclc/clc/include/clc/shared/clc_vload.h
M libclc/clc/include/clc/shared/clc_vstore.h
M libclc/clc/include/clc/shared/ternary_def.inc
M libclc/clc/include/clc/shared/ternary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def.inc
M libclc/clc/include/clc/shared/unary_def_scalarize.inc
M libclc/clc/include/clc/shared/unary_def_scalarize_loop.inc
M libclc/clc/include/clc/shared/unary_def_with_ptr_scalarize.inc
M libclc/clc/include/clc/subgroup/clc_sub_group_broadcast.h
M libclc/clc/include/clc/subgroup/clc_sub_group_reduce.h
M libclc/clc/include/clc/synchronization/clc_work_group_barrier.h
M libclc/clc/include/clc/workitem/clc_get_enqueued_local_size.h
M libclc/clc/include/clc/workitem/clc_get_global_id.h
M libclc/clc/include/clc/workitem/clc_get_global_offset.h
M libclc/clc/include/clc/workitem/clc_get_global_size.h
M libclc/clc/include/clc/workitem/clc_get_group_id.h
M libclc/clc/include/clc/workitem/clc_get_local_id.h
M libclc/clc/include/clc/workitem/clc_get_local_linear_id.h
M libclc/clc/include/clc/workitem/clc_get_local_size.h
M libclc/clc/include/clc/workitem/clc_get_max_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_num_groups.h
M libclc/clc/include/clc/workitem/clc_get_num_sub_groups.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_local_id.h
M libclc/clc/include/clc/workitem/clc_get_sub_group_size.h
M libclc/clc/include/clc/workitem/clc_get_work_dim.h
M libclc/clc/lib/amdgpu/CMakeLists.txt
A libclc/clc/lib/amdgpu/math/clc_amdgpu_cbrt.inc
A libclc/clc/lib/amdgpu/math/clc_amdgpu_log.inc
A libclc/clc/lib/amdgpu/math/clc_cbrt.cl
M libclc/clc/lib/amdgpu/math/clc_exp.cl
M libclc/clc/lib/amdgpu/math/clc_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_exp2.cl
A libclc/clc/lib/amdgpu/math/clc_exp2_fast.cl
A libclc/clc/lib/amdgpu/math/clc_fmod.cl
M libclc/clc/lib/amdgpu/math/clc_frexp.cl
A libclc/clc/lib/amdgpu/math/clc_get_twobypi_bits.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp10.cl
M libclc/clc/lib/amdgpu/math/clc_half_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_half_log.cl
M libclc/clc/lib/amdgpu/math/clc_half_log10.cl
M libclc/clc/lib/amdgpu/math/clc_half_log2.cl
M libclc/clc/lib/amdgpu/math/clc_half_native_unary.inc
M libclc/clc/lib/amdgpu/math/clc_half_recip.cl
M libclc/clc/lib/amdgpu/math/clc_half_rsqrt.cl
M libclc/clc/lib/amdgpu/math/clc_half_sqrt.cl
M libclc/clc/lib/amdgpu/math/clc_ldexp.cl
A libclc/clc/lib/amdgpu/math/clc_log.cl
A libclc/clc/lib/amdgpu/math/clc_log10.cl
A libclc/clc/lib/amdgpu/math/clc_log2.cl
A libclc/clc/lib/amdgpu/math/clc_log2_fast.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp.cl
M libclc/clc/lib/amdgpu/math/clc_native_exp2.cl
M libclc/clc/lib/amdgpu/math/clc_native_log10.cl
M libclc/clc/lib/amdgpu/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/amdgpu/subgroup/clc_sub_group_broadcast.cl
M libclc/clc/lib/amdgpu/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_global_offset.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_group_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_local_id.cl
M libclc/clc/lib/amdgpu/workitem/clc_get_work_dim.cl
M libclc/clc/lib/clspv/math/clc_sw_fma.cl
M libclc/clc/lib/generic/CMakeLists.txt
M libclc/clc/lib/generic/async/clc_prefetch.cl
M libclc/clc/lib/generic/atomic/clc_atomic_compare_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
M libclc/clc/lib/generic/atomic/clc_atomic_exchange.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_add.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_and.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_max.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_min.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_or.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_sub.cl
M libclc/clc/lib/generic/atomic/clc_atomic_fetch_xor.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_clear.cl
M libclc/clc/lib/generic/atomic/clc_atomic_flag_test_and_set.cl
M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
M libclc/clc/lib/generic/atomic/clc_atomic_load.cl
M libclc/clc/lib/generic/atomic/clc_atomic_store.cl
M libclc/clc/lib/generic/collective/clc_work_group_broadcast.cl
M libclc/clc/lib/generic/collective/clc_work_group_reduce.cl
M libclc/clc/lib/generic/common/clc_degrees.cl
M libclc/clc/lib/generic/common/clc_radians.cl
M libclc/clc/lib/generic/common/clc_sign.cl
M libclc/clc/lib/generic/common/clc_smoothstep.cl
M libclc/clc/lib/generic/common/clc_step.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_float2int.cl
M libclc/clc/lib/generic/conversion/clc_convert_int2float.cl
M libclc/clc/lib/generic/conversion/clc_convert_integer.cl
M libclc/clc/lib/generic/geometric/clc_cross.cl
M libclc/clc/lib/generic/geometric/clc_distance.cl
M libclc/clc/lib/generic/geometric/clc_dot.cl
M libclc/clc/lib/generic/geometric/clc_fast_distance.cl
M libclc/clc/lib/generic/geometric/clc_fast_length.cl
M libclc/clc/lib/generic/geometric/clc_fast_normalize.cl
M libclc/clc/lib/generic/geometric/clc_length.cl
M libclc/clc/lib/generic/geometric/clc_length.inc
M libclc/clc/lib/generic/geometric/clc_normalize.cl
M libclc/clc/lib/generic/integer/clc_abs.cl
M libclc/clc/lib/generic/integer/clc_abs_diff.cl
M libclc/clc/lib/generic/integer/clc_add_sat.cl
M libclc/clc/lib/generic/integer/clc_bit_reverse.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_signed.cl
M libclc/clc/lib/generic/integer/clc_bitfield_extract_unsigned.cl
M libclc/clc/lib/generic/integer/clc_bitfield_insert.cl
M libclc/clc/lib/generic/integer/clc_clz.cl
M libclc/clc/lib/generic/integer/clc_ctz.cl
M libclc/clc/lib/generic/integer/clc_hadd.cl
M libclc/clc/lib/generic/integer/clc_mad24.cl
M libclc/clc/lib/generic/integer/clc_mad_sat.cl
M libclc/clc/lib/generic/integer/clc_mul24.cl
M libclc/clc/lib/generic/integer/clc_mul_hi.cl
M libclc/clc/lib/generic/integer/clc_popcount.cl
M libclc/clc/lib/generic/integer/clc_rhadd.cl
M libclc/clc/lib/generic/integer/clc_rotate.cl
M libclc/clc/lib/generic/integer/clc_sub_sat.cl
M libclc/clc/lib/generic/integer/clc_upsample.cl
M libclc/clc/lib/generic/math/clc_acos.cl
M libclc/clc/lib/generic/math/clc_acos.inc
M libclc/clc/lib/generic/math/clc_acosh.cl
M libclc/clc/lib/generic/math/clc_acospi.cl
M libclc/clc/lib/generic/math/clc_asin.cl
M libclc/clc/lib/generic/math/clc_asinh.cl
M libclc/clc/lib/generic/math/clc_asinpi.cl
M libclc/clc/lib/generic/math/clc_atan.cl
M libclc/clc/lib/generic/math/clc_atan2.cl
M libclc/clc/lib/generic/math/clc_atan2pi.cl
M libclc/clc/lib/generic/math/clc_atanh.cl
M libclc/clc/lib/generic/math/clc_atanpi.cl
A libclc/clc/lib/generic/math/clc_canonicalize.cl
M libclc/clc/lib/generic/math/clc_cbrt.cl
M libclc/clc/lib/generic/math/clc_ceil.cl
M libclc/clc/lib/generic/math/clc_copysign.cl
M libclc/clc/lib/generic/math/clc_cos.cl
M libclc/clc/lib/generic/math/clc_cos.inc
M libclc/clc/lib/generic/math/clc_cosh.cl
M libclc/clc/lib/generic/math/clc_cospi.cl
M libclc/clc/lib/generic/math/clc_cospi.inc
M libclc/clc/lib/generic/math/clc_div_cr.cl
M libclc/clc/lib/generic/math/clc_div_fast.cl
M libclc/clc/lib/generic/math/clc_ep.cl
M libclc/clc/lib/generic/math/clc_ep.inc
M libclc/clc/lib/generic/math/clc_ep_log.cl
M libclc/clc/lib/generic/math/clc_erf.cl
M libclc/clc/lib/generic/math/clc_erfc.cl
M libclc/clc/lib/generic/math/clc_exp.cl
M libclc/clc/lib/generic/math/clc_exp10.cl
M libclc/clc/lib/generic/math/clc_exp2.cl
A libclc/clc/lib/generic/math/clc_exp2_fast.cl
M libclc/clc/lib/generic/math/clc_exp_helper.cl
M libclc/clc/lib/generic/math/clc_expm1.cl
M libclc/clc/lib/generic/math/clc_fabs.cl
M libclc/clc/lib/generic/math/clc_fdim.cl
M libclc/clc/lib/generic/math/clc_floor.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.cl
A libclc/clc/lib/generic/math/clc_flush_if_daz.inc
M libclc/clc/lib/generic/math/clc_fma.cl
M libclc/clc/lib/generic/math/clc_fmax.cl
M libclc/clc/lib/generic/math/clc_fmin.cl
M libclc/clc/lib/generic/math/clc_fmod.cl
M libclc/clc/lib/generic/math/clc_fract.cl
M libclc/clc/lib/generic/math/clc_frexp.cl
M libclc/clc/lib/generic/math/clc_frexp.inc
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.cl
A libclc/clc/lib/generic/math/clc_get_twobypi_bits.inc
M libclc/clc/lib/generic/math/clc_half_cos.cl
M libclc/clc/lib/generic/math/clc_half_divide.cl
M libclc/clc/lib/generic/math/clc_half_exp.cl
M libclc/clc/lib/generic/math/clc_half_exp10.cl
M libclc/clc/lib/generic/math/clc_half_exp2.cl
M libclc/clc/lib/generic/math/clc_half_log.cl
M libclc/clc/lib/generic/math/clc_half_log10.cl
M libclc/clc/lib/generic/math/clc_half_log2.cl
M libclc/clc/lib/generic/math/clc_half_powr.cl
M libclc/clc/lib/generic/math/clc_half_recip.cl
M libclc/clc/lib/generic/math/clc_half_rsqrt.cl
M libclc/clc/lib/generic/math/clc_half_sin.cl
M libclc/clc/lib/generic/math/clc_half_sqrt.cl
M libclc/clc/lib/generic/math/clc_half_tan.cl
M libclc/clc/lib/generic/math/clc_hypot.cl
M libclc/clc/lib/generic/math/clc_ilogb.cl
M libclc/clc/lib/generic/math/clc_ldexp.cl
M libclc/clc/lib/generic/math/clc_lgamma.cl
M libclc/clc/lib/generic/math/clc_lgamma_r.cl
M libclc/clc/lib/generic/math/clc_log.cl
M libclc/clc/lib/generic/math/clc_log10.cl
M libclc/clc/lib/generic/math/clc_log1p.cl
M libclc/clc/lib/generic/math/clc_log2.cl
A libclc/clc/lib/generic/math/clc_log2_fast.cl
R libclc/clc/lib/generic/math/clc_log_base.h
A libclc/clc/lib/generic/math/clc_log_base.inc
M libclc/clc/lib/generic/math/clc_logb.cl
M libclc/clc/lib/generic/math/clc_mad.cl
M libclc/clc/lib/generic/math/clc_maxmag.cl
M libclc/clc/lib/generic/math/clc_minmag.cl
M libclc/clc/lib/generic/math/clc_modf.cl
M libclc/clc/lib/generic/math/clc_nan.cl
M libclc/clc/lib/generic/math/clc_native_cos.cl
M libclc/clc/lib/generic/math/clc_native_divide.cl
M libclc/clc/lib/generic/math/clc_native_exp.cl
M libclc/clc/lib/generic/math/clc_native_exp10.cl
M libclc/clc/lib/generic/math/clc_native_exp2.cl
M libclc/clc/lib/generic/math/clc_native_log.cl
M libclc/clc/lib/generic/math/clc_native_log10.cl
M libclc/clc/lib/generic/math/clc_native_log2.cl
M libclc/clc/lib/generic/math/clc_native_powr.cl
M libclc/clc/lib/generic/math/clc_native_recip.cl
M libclc/clc/lib/generic/math/clc_native_rsqrt.cl
M libclc/clc/lib/generic/math/clc_native_sin.cl
M libclc/clc/lib/generic/math/clc_native_sqrt.cl
M libclc/clc/lib/generic/math/clc_native_tan.cl
M libclc/clc/lib/generic/math/clc_nextafter.cl
M libclc/clc/lib/generic/math/clc_nextafter.inc
M libclc/clc/lib/generic/math/clc_nextdown.cl
M libclc/clc/lib/generic/math/clc_nextdown.inc
M libclc/clc/lib/generic/math/clc_nextup.cl
M libclc/clc/lib/generic/math/clc_nextup.inc
M libclc/clc/lib/generic/math/clc_pow.cl
R libclc/clc/lib/generic/math/clc_pow.inc
A libclc/clc/lib/generic/math/clc_pow_base.inc
M libclc/clc/lib/generic/math/clc_pown.cl
R libclc/clc/lib/generic/math/clc_pown.inc
M libclc/clc/lib/generic/math/clc_powr.cl
R libclc/clc/lib/generic/math/clc_powr.inc
M libclc/clc/lib/generic/math/clc_recip_fast.cl
M libclc/clc/lib/generic/math/clc_remainder.cl
A libclc/clc/lib/generic/math/clc_remainder.inc
M libclc/clc/lib/generic/math/clc_remquo.cl
M libclc/clc/lib/generic/math/clc_remquo.inc
A libclc/clc/lib/generic/math/clc_remquo_stret.inc
M libclc/clc/lib/generic/math/clc_rint.cl
M libclc/clc/lib/generic/math/clc_rootn.cl
R libclc/clc/lib/generic/math/clc_rootn.inc
M libclc/clc/lib/generic/math/clc_round.cl
M libclc/clc/lib/generic/math/clc_rsqrt.cl
M libclc/clc/lib/generic/math/clc_sin.cl
M libclc/clc/lib/generic/math/clc_sin.inc
M libclc/clc/lib/generic/math/clc_sincos.cl
M libclc/clc/lib/generic/math/clc_sincos.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers.cl
M libclc/clc/lib/generic/math/clc_sincos_helpers.inc
A libclc/clc/lib/generic/math/clc_sincos_helpers_fp16.inc
M libclc/clc/lib/generic/math/clc_sincos_helpers_fp64.inc
A libclc/clc/lib/generic/math/clc_sincospi.cl
A libclc/clc/lib/generic/math/clc_sincospi.inc
M libclc/clc/lib/generic/math/clc_sinh.cl
M libclc/clc/lib/generic/math/clc_sinpi.cl
M libclc/clc/lib/generic/math/clc_sinpi.inc
M libclc/clc/lib/generic/math/clc_sqrt.cl
M libclc/clc/lib/generic/math/clc_sqrt_cr.cl
M libclc/clc/lib/generic/math/clc_sqrt_fast.cl
M libclc/clc/lib/generic/math/clc_tables.cl
M libclc/clc/lib/generic/math/clc_tan.cl
M libclc/clc/lib/generic/math/clc_tan.inc
M libclc/clc/lib/generic/math/clc_tanh.cl
M libclc/clc/lib/generic/math/clc_tanpi.cl
M libclc/clc/lib/generic/math/clc_tanpi.inc
M libclc/clc/lib/generic/math/clc_tgamma.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.cl
A libclc/clc/lib/generic/math/clc_trigpi_helpers.inc
M libclc/clc/lib/generic/math/clc_trunc.cl
M libclc/clc/lib/generic/mem_fence/clc_mem_fence.cl
M libclc/clc/lib/generic/misc/clc_shuffle.cl
M libclc/clc/lib/generic/misc/clc_shuffle2.cl
M libclc/clc/lib/generic/relational/clc_all.cl
M libclc/clc/lib/generic/relational/clc_any.cl
M libclc/clc/lib/generic/relational/clc_bitselect.cl
M libclc/clc/lib/generic/relational/clc_isequal.cl
M libclc/clc/lib/generic/relational/clc_isfinite.cl
M libclc/clc/lib/generic/relational/clc_isgreater.cl
M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
M libclc/clc/lib/generic/relational/clc_isinf.cl
M libclc/clc/lib/generic/relational/clc_isless.cl
M libclc/clc/lib/generic/relational/clc_islessequal.cl
M libclc/clc/lib/generic/relational/clc_islessgreater.cl
M libclc/clc/lib/generic/relational/clc_isnan.cl
M libclc/clc/lib/generic/relational/clc_isnormal.cl
M libclc/clc/lib/generic/relational/clc_isnotequal.cl
M libclc/clc/lib/generic/relational/clc_isordered.cl
M libclc/clc/lib/generic/relational/clc_issubnormal.cl
M libclc/clc/lib/generic/relational/clc_isunordered.cl
M libclc/clc/lib/generic/relational/clc_select.cl
M libclc/clc/lib/generic/relational/clc_signbit.cl
M libclc/clc/lib/generic/shared/clc_clamp.cl
M libclc/clc/lib/generic/shared/clc_max.cl
M libclc/clc/lib/generic/shared/clc_min.cl
M libclc/clc/lib/generic/shared/clc_vload.cl
M libclc/clc/lib/generic/shared/clc_vstore.cl
A libclc/clc/lib/generic/subnormal_config.cl
M libclc/clc/lib/generic/workitem/clc_get_global_id.cl
M libclc/clc/lib/generic/workitem/clc_get_num_sub_groups.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_id.cl
M libclc/clc/lib/generic/workitem/clc_get_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_log.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_rsqrt.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sinpi.cl
M libclc/clc/lib/ptx-nvidiacl/math/clc_sqrt.cl
M libclc/clc/lib/ptx-nvidiacl/relational/clc_isinf.cl
M libclc/clc/lib/ptx-nvidiacl/synchronization/clc_work_group_barrier.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_global_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_group_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_id.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_local_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_max_sub_group_size.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_num_groups.cl
M libclc/clc/lib/ptx-nvidiacl/workitem/clc_get_sub_group_local_id.cl
M libclc/clc/lib/spirv/CMakeLists.txt
M libclc/clc/lib/spirv/math/clc_fmax.cl
M libclc/clc/lib/spirv/math/clc_fmin.cl
A libclc/clc/lib/spirv/subnormal_config.cl
M libclc/cmake/modules/CMakeCLCInformation.cmake
M libclc/cmake/modules/CMakeDetermineCLCCompiler.cmake
M libclc/cmake/modules/CMakeTestCLCCompiler.cmake
M libclc/opencl/include/clc/opencl/convert.h
M libclc/opencl/include/clc/opencl/opencl-base.h
M libclc/opencl/include/clc/opencl/synchronization/utils.h
M libclc/opencl/include/clc/opencl/utils.h
M libclc/opencl/lib/amdgpu/async/wait_group_events.cl
M libclc/opencl/lib/clspv/CMakeLists.txt
M libclc/opencl/lib/clspv/conversion/convert_float2float.cl
M libclc/opencl/lib/clspv/conversion/convert_float2int.cl
M libclc/opencl/lib/clspv/conversion/convert_int2float.cl
M libclc/opencl/lib/clspv/conversion/convert_integer.cl
M libclc/opencl/lib/clspv/math/fma.cl
M libclc/opencl/lib/clspv/shared/vstore_half.cl
M libclc/opencl/lib/generic/CMakeLists.txt
M libclc/opencl/lib/generic/async/async_work_group_copy.cl
M libclc/opencl/lib/generic/async/async_work_group_strided_copy.cl
M libclc/opencl/lib/generic/async/prefetch.cl
M libclc/opencl/lib/generic/async/wait_group_events.cl
M libclc/opencl/lib/generic/atomic/atom_add.cl
M libclc/opencl/lib/generic/atomic/atom_and.cl
M libclc/opencl/lib/generic/atomic/atom_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atom_dec.cl
M libclc/opencl/lib/generic/atomic/atom_inc.cl
M libclc/opencl/lib/generic/atomic/atom_max.cl
M libclc/opencl/lib/generic/atomic/atom_min.cl
M libclc/opencl/lib/generic/atomic/atom_or.cl
M libclc/opencl/lib/generic/atomic/atom_sub.cl
M libclc/opencl/lib/generic/atomic/atom_xchg.cl
M libclc/opencl/lib/generic/atomic/atom_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_add.cl
M libclc/opencl/lib/generic/atomic/atomic_and.cl
M libclc/opencl/lib/generic/atomic/atomic_cmpxchg.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_strong.cl
M libclc/opencl/lib/generic/atomic/atomic_compare_exchange_weak.cl
M libclc/opencl/lib/generic/atomic/atomic_dec.cl
M libclc/opencl/lib/generic/atomic/atomic_exchange.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_add.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_and.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_max.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_min.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_or.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_fetch_xor.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_clear.cl
M libclc/opencl/lib/generic/atomic/atomic_flag_test_and_set.cl
M libclc/opencl/lib/generic/atomic/atomic_inc.cl
M libclc/opencl/lib/generic/atomic/atomic_init.cl
M libclc/opencl/lib/generic/atomic/atomic_load.cl
M libclc/opencl/lib/generic/atomic/atomic_max.cl
M libclc/opencl/lib/generic/atomic/atomic_min.cl
M libclc/opencl/lib/generic/atomic/atomic_or.cl
M libclc/opencl/lib/generic/atomic/atomic_store.cl
M libclc/opencl/lib/generic/atomic/atomic_sub.cl
M libclc/opencl/lib/generic/atomic/atomic_xchg.cl
M libclc/opencl/lib/generic/atomic/atomic_xor.cl
M libclc/opencl/lib/generic/collective/work_group_broadcast.cl
M libclc/opencl/lib/generic/collective/work_group_reduce.cl
M libclc/opencl/lib/generic/common/degrees.cl
M libclc/opencl/lib/generic/common/mix.cl
M libclc/opencl/lib/generic/common/radians.cl
M libclc/opencl/lib/generic/common/sign.cl
M libclc/opencl/lib/generic/common/smoothstep.cl
M libclc/opencl/lib/generic/common/step.cl
M libclc/opencl/lib/generic/conversion/convert_float2float.cl
M libclc/opencl/lib/generic/conversion/convert_float2int.cl
M libclc/opencl/lib/generic/conversion/convert_int2float.cl
M libclc/opencl/lib/generic/conversion/convert_integer.cl
M libclc/opencl/lib/generic/geometric/cross.cl
M libclc/opencl/lib/generic/geometric/distance.cl
M libclc/opencl/lib/generic/geometric/dot.cl
M libclc/opencl/lib/generic/geometric/fast_distance.cl
M libclc/opencl/lib/generic/geometric/fast_length.cl
M libclc/opencl/lib/generic/geometric/fast_normalize.cl
M libclc/opencl/lib/generic/geometric/length.cl
M libclc/opencl/lib/generic/geometric/normalize.cl
M libclc/opencl/lib/generic/integer/abs.cl
M libclc/opencl/lib/generic/integer/abs_diff.cl
M libclc/opencl/lib/generic/integer/add_sat.cl
M libclc/opencl/lib/generic/integer/bit_reverse.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_signed.cl
M libclc/opencl/lib/generic/integer/bitfield_extract_unsigned.cl
M libclc/opencl/lib/generic/integer/bitfield_insert.cl
M libclc/opencl/lib/generic/integer/clz.cl
M libclc/opencl/lib/generic/integer/ctz.cl
M libclc/opencl/lib/generic/integer/hadd.cl
M libclc/opencl/lib/generic/integer/mad24.cl
M libclc/opencl/lib/generic/integer/mad_hi.cl
M libclc/opencl/lib/generic/integer/mad_sat.cl
M libclc/opencl/lib/generic/integer/mul24.cl
M libclc/opencl/lib/generic/integer/mul_hi.cl
M libclc/opencl/lib/generic/integer/popcount.cl
M libclc/opencl/lib/generic/integer/rhadd.cl
M libclc/opencl/lib/generic/integer/rotate.cl
M libclc/opencl/lib/generic/integer/sub_sat.cl
M libclc/opencl/lib/generic/integer/upsample.cl
M libclc/opencl/lib/generic/math/acos.cl
M libclc/opencl/lib/generic/math/acosh.cl
M libclc/opencl/lib/generic/math/acospi.cl
M libclc/opencl/lib/generic/math/asin.cl
M libclc/opencl/lib/generic/math/asinh.cl
M libclc/opencl/lib/generic/math/asinpi.cl
M libclc/opencl/lib/generic/math/atan.cl
M libclc/opencl/lib/generic/math/atan2.cl
M libclc/opencl/lib/generic/math/atan2pi.cl
M libclc/opencl/lib/generic/math/atanh.cl
M libclc/opencl/lib/generic/math/atanpi.cl
M libclc/opencl/lib/generic/math/cbrt.cl
M libclc/opencl/lib/generic/math/ceil.cl
M libclc/opencl/lib/generic/math/copysign.cl
M libclc/opencl/lib/generic/math/cos.cl
M libclc/opencl/lib/generic/math/cosh.cl
M libclc/opencl/lib/generic/math/cospi.cl
M libclc/opencl/lib/generic/math/erf.cl
M libclc/opencl/lib/generic/math/erfc.cl
M libclc/opencl/lib/generic/math/exp.cl
M libclc/opencl/lib/generic/math/exp10.cl
M libclc/opencl/lib/generic/math/exp2.cl
M libclc/opencl/lib/generic/math/expm1.cl
M libclc/opencl/lib/generic/math/fabs.cl
M libclc/opencl/lib/generic/math/fdim.cl
M libclc/opencl/lib/generic/math/floor.cl
M libclc/opencl/lib/generic/math/fma.cl
M libclc/opencl/lib/generic/math/fmax.cl
M libclc/opencl/lib/generic/math/fmin.cl
M libclc/opencl/lib/generic/math/fmod.cl
M libclc/opencl/lib/generic/math/fract.cl
M libclc/opencl/lib/generic/math/frexp.cl
M libclc/opencl/lib/generic/math/half_cos.cl
M libclc/opencl/lib/generic/math/half_divide.cl
M libclc/opencl/lib/generic/math/half_exp.cl
M libclc/opencl/lib/generic/math/half_exp10.cl
M libclc/opencl/lib/generic/math/half_exp2.cl
M libclc/opencl/lib/generic/math/half_log.cl
M libclc/opencl/lib/generic/math/half_log10.cl
M libclc/opencl/lib/generic/math/half_log2.cl
M libclc/opencl/lib/generic/math/half_powr.cl
M libclc/opencl/lib/generic/math/half_recip.cl
M libclc/opencl/lib/generic/math/half_rsqrt.cl
M libclc/opencl/lib/generic/math/half_sin.cl
M libclc/opencl/lib/generic/math/half_sqrt.cl
M libclc/opencl/lib/generic/math/half_tan.cl
M libclc/opencl/lib/generic/math/hypot.cl
M libclc/opencl/lib/generic/math/ilogb.cl
M libclc/opencl/lib/generic/math/ldexp.cl
M libclc/opencl/lib/generic/math/lgamma.cl
M libclc/opencl/lib/generic/math/lgamma_r.cl
M libclc/opencl/lib/generic/math/log.cl
M libclc/opencl/lib/generic/math/log10.cl
M libclc/opencl/lib/generic/math/log1p.cl
M libclc/opencl/lib/generic/math/log2.cl
M libclc/opencl/lib/generic/math/logb.cl
M libclc/opencl/lib/generic/math/mad.cl
M libclc/opencl/lib/generic/math/maxmag.cl
M libclc/opencl/lib/generic/math/minmag.cl
M libclc/opencl/lib/generic/math/modf.cl
M libclc/opencl/lib/generic/math/nan.cl
M libclc/opencl/lib/generic/math/native_cos.cl
M libclc/opencl/lib/generic/math/native_divide.cl
M libclc/opencl/lib/generic/math/native_exp.cl
M libclc/opencl/lib/generic/math/native_exp10.cl
M libclc/opencl/lib/generic/math/native_exp2.cl
M libclc/opencl/lib/generic/math/native_log.cl
M libclc/opencl/lib/generic/math/native_log10.cl
M libclc/opencl/lib/generic/math/native_log2.cl
M libclc/opencl/lib/generic/math/native_powr.cl
M libclc/opencl/lib/generic/math/native_recip.cl
M libclc/opencl/lib/generic/math/native_rsqrt.cl
M libclc/opencl/lib/generic/math/native_sin.cl
M libclc/opencl/lib/generic/math/native_sqrt.cl
M libclc/opencl/lib/generic/math/native_tan.cl
M libclc/opencl/lib/generic/math/nextafter.cl
M libclc/opencl/lib/generic/math/pow.cl
M libclc/opencl/lib/generic/math/pown.cl
M libclc/opencl/lib/generic/math/powr.cl
M libclc/opencl/lib/generic/math/remainder.cl
M libclc/opencl/lib/generic/math/remquo.cl
M libclc/opencl/lib/generic/math/rint.cl
M libclc/opencl/lib/generic/math/rootn.cl
M libclc/opencl/lib/generic/math/round.cl
M libclc/opencl/lib/generic/math/rsqrt.cl
M libclc/opencl/lib/generic/math/sin.cl
M libclc/opencl/lib/generic/math/sincos.cl
M libclc/opencl/lib/generic/math/sinh.cl
M libclc/opencl/lib/generic/math/sinpi.cl
M libclc/opencl/lib/generic/math/sqrt.cl
M libclc/opencl/lib/generic/math/tan.cl
M libclc/opencl/lib/generic/math/tanh.cl
M libclc/opencl/lib/generic/math/tanpi.cl
M libclc/opencl/lib/generic/math/tgamma.cl
M libclc/opencl/lib/generic/math/trunc.cl
M libclc/opencl/lib/generic/mem_fence/fence.cl
M libclc/opencl/lib/generic/misc/shuffle.cl
M libclc/opencl/lib/generic/misc/shuffle2.cl
M libclc/opencl/lib/generic/relational/all.cl
M libclc/opencl/lib/generic/relational/any.cl
M libclc/opencl/lib/generic/relational/bitselect.cl
M libclc/opencl/lib/generic/relational/isequal.cl
M libclc/opencl/lib/generic/relational/isfinite.cl
M libclc/opencl/lib/generic/relational/isgreater.cl
M libclc/opencl/lib/generic/relational/isgreaterequal.cl
M libclc/opencl/lib/generic/relational/isinf.cl
M libclc/opencl/lib/generic/relational/isless.cl
M libclc/opencl/lib/generic/relational/islessequal.cl
M libclc/opencl/lib/generic/relational/islessgreater.cl
M libclc/opencl/lib/generic/relational/isnan.cl
M libclc/opencl/lib/generic/relational/isnormal.cl
M libclc/opencl/lib/generic/relational/isnotequal.cl
M libclc/opencl/lib/generic/relational/isordered.cl
M libclc/opencl/lib/generic/relational/isunordered.cl
M libclc/opencl/lib/generic/relational/relational_binary_def.inc
M libclc/opencl/lib/generic/relational/relational_unary_def.inc
M libclc/opencl/lib/generic/relational/select.cl
M libclc/opencl/lib/generic/relational/signbit.cl
M libclc/opencl/lib/generic/shared/clamp.cl
M libclc/opencl/lib/generic/shared/max.cl
M libclc/opencl/lib/generic/shared/min.cl
M libclc/opencl/lib/generic/shared/vload.cl
M libclc/opencl/lib/generic/shared/vstore.cl
M libclc/opencl/lib/generic/subgroup/sub_group_broadcast.cl
M libclc/opencl/lib/generic/subgroup/sub_group_reduce.cl
R libclc/opencl/lib/generic/subnormal_config.cl
M libclc/opencl/lib/generic/workitem/get_enqueued_local_size.cl
M libclc/opencl/lib/generic/workitem/get_global_id.cl
M libclc/opencl/lib/generic/workitem/get_global_offset.cl
M libclc/opencl/lib/generic/workitem/get_group_id.cl
M libclc/opencl/lib/generic/workitem/get_local_id.cl
M libclc/opencl/lib/generic/workitem/get_local_size.cl
M libclc/opencl/lib/generic/workitem/get_num_groups.cl
M libclc/opencl/lib/generic/workitem/get_work_dim.cl
M libclc/test/CMakeLists.txt
R libclc/test/check_external_funcs.sh
M libclc/test/lit.cfg.py
M libclc/test/lit.site.cfg.py.in
M libcxx/CMakeLists.txt
M libcxx/docs/index.rst
M libcxx/include/__cxx03/__algorithm/shuffle.h
M libcxx/include/__functional/is_transparent.h
M libcxx/include/__functional/operations.h
M libcxx/include/__tree
M libcxx/include/__type_traits/make_transparent.h
M libcxx/include/map
M libcxx/include/set
M libcxx/include/string
M libcxx/include/unordered_map
M libcxx/include/unordered_set
M libcxx/include/version
M libcxx/src/include/apple_availability.h
M libcxx/test/libcxx-03/transitive_includes/to_csv.py
M libcxx/test/libcxx/transitive_includes/to_csv.py
A libcxx/test/libcxx/type_traits/is_transparently_comparable.compile.pass.cpp
M libcxx/test/std/algorithms/alg.modifying.operations/alg.random.shuffle/random_shuffle_rand.pass.cpp
A libcxx/test/std/containers/associative/lookup_with_converting_comparator.pass.cpp
M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/new.version.compile.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
M libcxx/test/tools/clang_tidy_checks/CMakeLists.txt
M libcxx/utils/ci/lnt/commit-watch
M libcxx/utils/ci/lnt/run-benchmarks
A libcxx/utils/ci/lnt/runners/README.md
A libcxx/utils/ci/lnt/runners/apple-m5-clang21
A libcxx/utils/ci/lnt/runners/apple-m5-xcode26
M libcxx/utils/generate_abi_list.py
M libcxx/utils/generate_escaped_output_table.py
M libcxx/utils/generate_extended_grapheme_cluster_table.py
M libcxx/utils/generate_extended_grapheme_cluster_test.py
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_indic_conjunct_break_table.py
M libcxx/utils/generate_iwyu_mapping.py
M libcxx/utils/generate_width_estimation_table.py
M libcxx/utils/run.py
M libcxx/utils/ssh.py
M libcxx/utils/sym_diff.py
M libsycl/docs/index.rst
A libsycl/include/sycl/__impl/usm_alloc_type.hpp
A libsycl/include/sycl/__impl/usm_functions.hpp
M libsycl/include/sycl/sycl.hpp
M libsycl/src/CMakeLists.txt
M libsycl/src/detail/device_impl.cpp
M libsycl/src/detail/global_objects.cpp
M libsycl/src/detail/global_objects.hpp
M libsycl/src/detail/offload/offload_utils.cpp
M libsycl/src/detail/offload/offload_utils.hpp
M libsycl/src/ld-version-script.txt
A libsycl/src/usm_functions.cpp
A libsycl/test/usm/alloc_functions.cpp
M lld/ELF/Config.h
M lld/ELF/Driver.cpp
M lld/ELF/SyntheticSections.cpp
M lld/ELF/SyntheticSections.h
M lld/ELF/Writer.cpp
M lld/test/ELF/aarch64-feature-bti.s
M lld/test/ELF/aarch64-feature-gcs.s
M lld/test/ELF/combreloc.s
M lldb/cmake/modules/LLDBConfig.cmake
M lldb/docs/resources/build.rst
M lldb/docs/resources/formatterbytecode.rst
M lldb/docs/use/map.rst
M lldb/docs/use/symbolication.rst
M lldb/docs/use/tutorials/script-driven-debugging.md
M lldb/examples/python/formatter_bytecode.py
M lldb/include/lldb/Core/Debugger.h
M lldb/include/lldb/Core/Module.h
M lldb/include/lldb/DataFormatters/TypeSynthetic.h
M lldb/include/lldb/Host/Config.h.cmake
M lldb/include/lldb/Interpreter/ScriptInterpreter.h
M lldb/include/lldb/Symbol/CompilerType.h
M lldb/include/lldb/Symbol/TypeSystem.h
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/include/lldb/Target/Platform.h
M lldb/include/lldb/Utility/Log.h
M lldb/include/lldb/Utility/Stream.h
M lldb/include/lldb/ValueObject/DILEval.h
M lldb/include/lldb/ValueObject/ValueObject.h
M lldb/packages/Python/lldbsuite/test/decorators.py
M lldb/packages/Python/lldbsuite/test/lldbutil.py
M lldb/source/Breakpoint/WatchpointAlgorithms.cpp
M lldb/source/Commands/CommandObjectTarget.cpp
M lldb/source/Core/CMakeLists.txt
M lldb/source/Core/CoreProperties.td
M lldb/source/Core/Debugger.cpp
M lldb/source/Core/Module.cpp
M lldb/source/Core/ModuleList.cpp
A lldb/source/Core/SafeAutoloadPaths.inc.in
M lldb/source/Core/UserSettingsController.cpp
M lldb/source/DataFormatters/FormatManager.cpp
M lldb/source/DataFormatters/FormatterBytecode.cpp
M lldb/source/DataFormatters/TypeSynthetic.cpp
M lldb/source/DataFormatters/ValueObjectPrinter.cpp
M lldb/source/Expression/FunctionCaller.cpp
M lldb/source/Expression/IRInterpreter.cpp
M lldb/source/Expression/Materializer.cpp
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
M lldb/source/Host/posix/ConnectionFileDescriptorPosix.cpp
M lldb/source/Interpreter/CommandInterpreter.cpp
M lldb/source/Interpreter/OptionValueProperties.cpp
M lldb/source/Interpreter/ScriptInterpreter.cpp
M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.h
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.h
M lldb/source/Plugins/ExpressionParser/Clang/CMakeLists.txt
M lldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
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/IRForTarget.cpp
M lldb/source/Plugins/ExpressionParser/Clang/IRForTarget.h
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.cpp
A lldb/source/Plugins/ExpressionParser/Clang/InjectPointerSigningFixups.h
M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCDeclVendor.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.h
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
M lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
M lldb/source/Plugins/Process/Linux/NativeThreadLinux.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/CommunicationKDP.cpp
M lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDP.cpp
M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp
M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
M lldb/source/Plugins/StructuredData/DarwinLog/StructuredDataDarwinLog.cpp
M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/CompileUnitIndex.h
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.cpp
M lldb/source/Plugins/SymbolFile/NativePDB/DWARFLocationExpression.h
M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
M lldb/source/Plugins/SymbolLocator/CMakeLists.txt
M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/CMakeLists.txt
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.h
A lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStoreProperties.td
M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
M lldb/source/Symbol/CompilerType.cpp
M lldb/source/Symbol/SymbolFile.cpp
M lldb/source/Target/Memory.cpp
M lldb/source/Target/Platform.cpp
M lldb/source/Target/Process.cpp
M lldb/source/Target/SectionLoadList.cpp
M lldb/source/Target/StackFrameList.cpp
M lldb/source/Target/StopInfo.cpp
M lldb/source/Target/Thread.cpp
M lldb/source/Target/ThreadList.cpp
M lldb/source/Target/ThreadPlanStepInRange.cpp
M lldb/source/Target/ThreadPlanStepInstruction.cpp
M lldb/source/Target/ThreadPlanStepOut.cpp
M lldb/source/Target/ThreadPlanStepRange.cpp
M lldb/source/Target/ThreadPlanStepThrough.cpp
M lldb/source/Target/TraceDumper.cpp
M lldb/source/Target/UnwindLLDB.cpp
M lldb/source/Utility/Listener.cpp
M lldb/source/Utility/Stream.cpp
M lldb/source/Utility/StringList.cpp
M lldb/source/ValueObject/DILEval.cpp
M lldb/source/ValueObject/ValueObject.cpp
A lldb/test/API/commands/expression/ptrauth-auth-traps/Makefile
A lldb/test/API/commands/expression/ptrauth-auth-traps/TestPtrAuthAuthTraps.py
A lldb/test/API/commands/expression/ptrauth-auth-traps/main.c
A lldb/test/API/commands/expression/ptrauth-objc/Makefile
A lldb/test/API/commands/expression/ptrauth-objc/TestPtrAuthObjectiveC.py
A lldb/test/API/commands/expression/ptrauth-objc/main.m
A lldb/test/API/commands/expression/ptrauth/Makefile
A lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
A lldb/test/API/commands/expression/ptrauth/main.c
M lldb/test/API/commands/frame/var-dil/expr/Arithmetic/TestFrameVarDILArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/TestFrameVarDILExprPointerArithmetic.py
M lldb/test/API/commands/frame/var-dil/expr/PointerArithmetic/main.cpp
A lldb/test/API/functionalities/compilation-prefix-map/Makefile
A lldb/test/API/functionalities/compilation-prefix-map/TestCompilationPrefixMap.py
A lldb/test/API/functionalities/compilation-prefix-map/main.c
M lldb/test/API/functionalities/data-formatter/bytecode-synthetic/main.cpp
M lldb/test/API/functionalities/data-formatter/synthetic_subscript/main.c
A lldb/test/API/lang/c/ptrauth/Makefile
A lldb/test/API/lang/c/ptrauth/TestPtrAuth.py
A lldb/test/API/lang/c/ptrauth/main.c
M lldb/test/API/lang/cpp/incomplete-types/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/Makefile
A lldb/test/API/macosx/shared-cache-vm-range/TestSharedCacheVMRange.py
A lldb/test/API/macosx/shared-cache-vm-range/main.c
A lldb/test/API/symstore/Makefile
A lldb/test/API/symstore/TestSymStore.py
A lldb/test/API/symstore/main.c
M lldb/test/API/tools/lldb-dap/variables/TestDAP_variables.py
M lldb/test/API/tools/lldb-dap/variables/main.cpp
M lldb/test/API/windows/launch/replace-dll/TestReplaceDLL.py
M lldb/test/Shell/Diagnostics/TestDump.test
M lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-python-script-name-warnings.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/dsym-takes-priority.test
A lldb/test/Shell/Platform/AutoLoad/Darwin/safe-path-fallback-no-dsym-script.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-basic-load.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-last-path-wins.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-nested-dir.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-dirname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-match-wrong-scriptname.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-no-paths-configured.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-special-chars-sanitized.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-submodule-import.test
A lldb/test/Shell/Platform/AutoLoad/UNIX/safe-path-subpackage-import.test
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterC.txt
M lldb/test/Shell/ScriptInterpreter/Python/Inputs/FormatterBytecode/RigidArrayLLDBFormatterSwift.txt
M lldb/test/Shell/ScriptInterpreter/Python/python-bytecode.test
M lldb/test/Shell/SymbolFile/NativePDB/vbases.test
M lldb/test/Shell/Target/dependent-modules-nodupe-windows.test
M lldb/tools/debugserver/source/MacOSX/MachProcess.h
M lldb/tools/debugserver/source/MacOSX/MachProcess.mm
M lldb/tools/driver/CMakeLists.txt
A lldb/tools/driver/lldb-mte-entitlements.plist
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/Handler/EvaluateRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/SetVariableRequestHandler.cpp
M lldb/tools/lldb-dap/Handler/VariablesRequestHandler.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.cpp
M lldb/tools/lldb-dap/ProtocolUtils.h
M lldb/tools/lldb-dap/Variables.cpp
M lldb/tools/lldb-dap/Variables.h
M lldb/unittests/DAP/VariablesTest.cpp
M lldb/unittests/Platform/CMakeLists.txt
M lldb/unittests/Platform/PlatformDarwinTest.cpp
M lldb/unittests/Platform/PlatformTest.cpp
A lldb/unittests/Platform/TestUtils.cpp
A lldb/unittests/Platform/TestUtils.h
M lldb/unittests/Symbol/TestTypeSystemClang.cpp
M lldb/unittests/Utility/LogTest.cpp
M lldb/unittests/Utility/StreamTest.cpp
M llvm/CMakeLists.txt
M llvm/benchmarks/CMakeLists.txt
A llvm/benchmarks/PointerUnionBM.cpp
M llvm/cmake/config-ix.cmake
M llvm/cmake/modules/AddLLVM.cmake
M llvm/cmake/modules/LLVMExternalProjectUtils.cmake
M llvm/docs/BranchWeightMetadata.rst
M llvm/docs/CommandGuide/llc.rst
M llvm/docs/CommandGuide/llvm-link.rst
M llvm/docs/DirectX/DXILResources.rst
M llvm/docs/Frontend/PerformanceTips.rst
M llvm/docs/GettingInvolved.rst
M llvm/docs/LangRef.rst
M llvm/docs/RISCVUsage.rst
M llvm/docs/ReleaseNotes.md
M llvm/docs/SPIRVUsage.rst
M llvm/docs/TableGen/ProgRef.rst
M llvm/examples/BrainF/BrainF.cpp
M llvm/examples/Fibonacci/fibonacci.cpp
M llvm/examples/IRTransforms/SimplifyCFG.cpp
M llvm/examples/ParallelJIT/ParallelJIT.cpp
M llvm/include/llvm-c/Core.h
M llvm/include/llvm/ADT/GenericCycleImpl.h
M llvm/include/llvm/ADT/GenericCycleInfo.h
M llvm/include/llvm/ADT/STLForwardCompat.h
M llvm/include/llvm/Analysis/AliasAnalysis.h
M llvm/include/llvm/Analysis/CFG.h
M llvm/include/llvm/Analysis/DXILResource.h
M llvm/include/llvm/Analysis/DependenceAnalysis.h
M llvm/include/llvm/Analysis/IR2Vec.h
M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
M llvm/include/llvm/Analysis/IVUsers.h
M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
M llvm/include/llvm/Analysis/LoopInfo.h
M llvm/include/llvm/Analysis/MemorySSA.h
M llvm/include/llvm/Analysis/ScalarEvolution.h
M llvm/include/llvm/Analysis/ScalarEvolutionPatternMatch.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/AsmParser/LLToken.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
R llvm/include/llvm/CodeGen/AtomicExpandUtils.h
M llvm/include/llvm/CodeGen/BasicTTIImpl.h
M llvm/include/llvm/CodeGen/CommandFlags.h
M llvm/include/llvm/CodeGen/ExpandMemCmp.h
M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
M llvm/include/llvm/CodeGen/ISDOpcodes.h
M llvm/include/llvm/CodeGen/LiveRangeEdit.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/include/llvm/CodeGen/MachineInstr.h
M llvm/include/llvm/CodeGen/MachineInstrBundle.h
M llvm/include/llvm/CodeGen/Passes.h
M llvm/include/llvm/CodeGen/RegisterScavenging.h
M llvm/include/llvm/CodeGen/SelectionDAG.h
M llvm/include/llvm/CodeGen/TargetInstrInfo.h
M llvm/include/llvm/CodeGen/TargetLowering.h
M llvm/include/llvm/CodeGen/ValueTypes.h
M llvm/include/llvm/Config/config.h.cmake
M llvm/include/llvm/DWARFLinker/AddressesMap.h
M llvm/include/llvm/DebugInfo/CodeView/CodeViewSymbols.def
M llvm/include/llvm/DebugInfo/CodeView/SymbolRecord.h
M llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h
M llvm/include/llvm/Frontend/OpenMP/OMP.td
M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
M llvm/include/llvm/IR/Attributes.td
M llvm/include/llvm/IR/BasicBlock.h
M llvm/include/llvm/IR/Constants.h
M llvm/include/llvm/IR/CycleInfo.h
M llvm/include/llvm/IR/DataLayout.h
M llvm/include/llvm/IR/DerivedTypes.h
M llvm/include/llvm/IR/IRBuilder.h
M llvm/include/llvm/IR/InlineAsm.h
M llvm/include/llvm/IR/InstVisitor.h
M llvm/include/llvm/IR/Instructions.h
M llvm/include/llvm/IR/IntrinsicsAArch64.td
M llvm/include/llvm/IR/IntrinsicsDirectX.td
M llvm/include/llvm/IR/IntrinsicsSPIRV.td
M llvm/include/llvm/IR/MatrixBuilder.h
M llvm/include/llvm/IR/PatternMatch.h
M llvm/include/llvm/IR/Type.h
M llvm/include/llvm/IR/Value.def
M llvm/include/llvm/InitializePasses.h
M llvm/include/llvm/Object/Archive.h
A llvm/include/llvm/Object/BBAddrMap.h
M llvm/include/llvm/Object/ELFTypes.h
M llvm/include/llvm/Passes/CodeGenPassBuilder.h
M llvm/include/llvm/Passes/MachinePassRegistry.def
M llvm/include/llvm/Remarks/RemarkStreamer.h
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Instruction.h
M llvm/include/llvm/SandboxIR/PassManager.h
M llvm/include/llvm/SandboxIR/Value.h
M llvm/include/llvm/SandboxIR/Values.def
M llvm/include/llvm/Support/FileSystem.h
M llvm/include/llvm/Support/GenericLoopInfo.h
M llvm/include/llvm/Support/GenericLoopInfoImpl.h
M llvm/include/llvm/Support/HTTP/HTTPClient.h
M llvm/include/llvm/Support/ModRef.h
M llvm/include/llvm/Support/NVPTXAddrSpace.h
A llvm/include/llvm/Support/NVVMAttributes.h
M llvm/include/llvm/Support/TargetOpcodes.def
M llvm/include/llvm/Target/GenericOpcodes.td
M llvm/include/llvm/Target/GlobalISel/Combine.td
M llvm/include/llvm/Target/TargetSelectionDAG.td
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
M llvm/include/llvm/Transforms/Utils/Cloning.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/include/llvm/Transforms/Utils/Instrumentation.h
M llvm/include/llvm/Transforms/Utils/LoopRotationUtils.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/lib/Analysis/BasicAliasAnalysis.cpp
M llvm/lib/Analysis/BranchProbabilityInfo.cpp
M llvm/lib/Analysis/CFG.cpp
M llvm/lib/Analysis/DXILResource.cpp
M llvm/lib/Analysis/DependenceAnalysis.cpp
M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
M llvm/lib/Analysis/IR2Vec.cpp
M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
M llvm/lib/Analysis/InlineCost.cpp
M llvm/lib/Analysis/InstructionSimplify.cpp
M llvm/lib/Analysis/KernelInfo.cpp
M llvm/lib/Analysis/LoopAccessAnalysis.cpp
M llvm/lib/Analysis/LoopInfo.cpp
M llvm/lib/Analysis/MemorySSA.cpp
M llvm/lib/Analysis/ScalarEvolution.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/ValueTracking.cpp
M llvm/lib/AsmParser/LLLexer.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/BinaryFormat/Magic.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
M llvm/lib/CodeGen/AtomicExpandPass.cpp
M llvm/lib/CodeGen/BasicBlockSections.cpp
M llvm/lib/CodeGen/BranchFolding.cpp
M llvm/lib/CodeGen/BranchRelaxation.cpp
M llvm/lib/CodeGen/CodeGen.cpp
M llvm/lib/CodeGen/CodeGenPrepare.cpp
M llvm/lib/CodeGen/CommandFlags.cpp
M llvm/lib/CodeGen/EarlyIfConversion.cpp
M llvm/lib/CodeGen/ExpandMemCmp.cpp
M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
M llvm/lib/CodeGen/GlobalISel/Utils.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/LiveRangeEdit.cpp
M llvm/lib/CodeGen/MIRParser/MIParser.cpp
M llvm/lib/CodeGen/MIRPrinter.cpp
M llvm/lib/CodeGen/MIRSampleProfile.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/MachineBlockPlacement.cpp
M llvm/lib/CodeGen/MachineFunction.cpp
M llvm/lib/CodeGen/MachineInstr.cpp
M llvm/lib/CodeGen/MachineInstrBundle.cpp
M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.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/SplitKit.cpp
M llvm/lib/CodeGen/TargetInstrInfo.cpp
M llvm/lib/CodeGen/UnreachableBlockElim.cpp
M llvm/lib/CodeGen/ValueTypes.cpp
M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
M llvm/lib/DebugInfo/CodeView/SymbolDumper.cpp
M llvm/lib/DebugInfo/CodeView/SymbolRecordMapping.cpp
M llvm/lib/DebugInfo/CodeView/TypeIndexDiscovery.cpp
M llvm/lib/DebugInfo/DWARF/DWARFDebugLoc.cpp
M llvm/lib/DebugInfo/PDB/Native/NativeSession.cpp
M llvm/lib/DebugInfo/PDB/Native/TpiStreamBuilder.cpp
M llvm/lib/ExecutionEngine/Orc/SpeculateAnalyses.cpp
M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
M llvm/lib/IR/AsmWriter.cpp
M llvm/lib/IR/Attributes.cpp
M llvm/lib/IR/AutoUpgrade.cpp
M llvm/lib/IR/BasicBlock.cpp
M llvm/lib/IR/Constants.cpp
M llvm/lib/IR/Core.cpp
M llvm/lib/IR/DataLayout.cpp
M llvm/lib/IR/Function.cpp
M llvm/lib/IR/Instructions.cpp
M llvm/lib/IR/Intrinsics.cpp
M llvm/lib/IR/LLVMContextImpl.cpp
M llvm/lib/IR/LLVMContextImpl.h
M llvm/lib/IR/Type.cpp
M llvm/lib/IR/Verifier.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/MC/MCELFStreamer.cpp
M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Remarks/RemarkStreamer.cpp
M llvm/lib/SandboxIR/Context.cpp
M llvm/lib/SandboxIR/Instruction.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/HTTP/CMakeLists.txt
M llvm/lib/Support/HTTP/HTTPClient.cpp
M llvm/lib/Support/KnownFPClass.cpp
M llvm/lib/Support/TextEncoding.cpp
M llvm/lib/Support/Unix/Path.inc
M llvm/lib/Support/Windows/Path.inc
M llvm/lib/Support/YAMLParser.cpp
M llvm/lib/Support/raw_socket_stream.cpp
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/AArch64/AArch64.h
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp
M llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp
M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64InstrFormats.td
M llvm/lib/Target/AArch64/AArch64InstrGISel.td
M llvm/lib/Target/AArch64/AArch64InstrInfo.td
M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
M llvm/lib/Target/AArch64/AArch64PassRegistry.def
M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp
M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPU.td
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
M llvm/lib/Target/AMDGPU/AMDGPUGISel.td
M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstrInfo.h
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.h
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
R llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.h
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.cpp
A llvm/lib/Target/AMDGPU/AMDGPUMachineFunctionInfo.h
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/lib/Target/AMDGPU/AMDGPUSearchableTables.td
M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.h
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/CMakeLists.txt
M llvm/lib/Target/AMDGPU/DSInstructions.td
M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
M llvm/lib/Target/AMDGPU/R600ISelLowering.h
M llvm/lib/Target/AMDGPU/R600MCInstLower.cpp
M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/R600MachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/SIISelLowering.h
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.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/SILowerI1Copies.cpp
M llvm/lib/Target/AMDGPU/SILowerI1Copies.h
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
M llvm/lib/Target/AMDGPU/SIMachineScheduler.cpp
M llvm/lib/Target/AMDGPU/SIPreEmitPeephole.cpp
M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
M llvm/lib/Target/AMDGPU/SOPInstructions.td
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
M llvm/lib/Target/AMDGPU/VOP1Instructions.td
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/AMDGPU/VOPInstructions.td
M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
M llvm/lib/Target/ARM/ARMConstantIslandPass.cpp
M llvm/lib/Target/ARM/ARMISelLowering.cpp
M llvm/lib/Target/ARM/ARMTargetMachine.cpp
M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
M llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
M llvm/lib/Target/DirectX/DXIL.td
M llvm/lib/Target/DirectX/DXILOpLowering.cpp
M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
M llvm/lib/Target/DirectX/DirectXIRPasses/PointerTypeAnalysis.cpp
M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
M llvm/lib/Target/Hexagon/HexagonLiveVariables.cpp
M llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchAsmBackend.cpp
M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp
M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
M llvm/lib/Target/Mips/MicroMipsInstrFPU.td
M llvm/lib/Target/Mips/Mips.td
M llvm/lib/Target/Mips/MipsInstrFPU.td
M llvm/lib/Target/Mips/MipsInstrInfo.td
M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
M llvm/lib/Target/Mips/MipsSEISelLowering.h
M llvm/lib/Target/NVPTX/CMakeLists.txt
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
M llvm/lib/Target/NVPTX/NVPTX.h
M llvm/lib/Target/NVPTX/NVPTX.td
M llvm/lib/Target/NVPTX/NVPTXAliasAnalysis.cpp
M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXForwardParams.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
M llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp
M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
M llvm/lib/Target/NVPTX/NVPTXMarkKernelPtrsGlobal.cpp
M llvm/lib/Target/NVPTX/NVPTXTagInvariantLoads.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
M llvm/lib/Target/NVPTX/NVPTXUtilities.h
M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.cpp
A llvm/lib/Target/NVPTX/NVVMProperties.h
M llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp
M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
M llvm/lib/Target/PowerPC/PPCInstrInfo.h
M llvm/lib/Target/PowerPC/PPCInstrInfo.td
A llvm/lib/Target/PowerPC/PPCRegisterClasses.td
M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoDMR.td
M llvm/lib/Target/PowerPC/PPCRegisterInfoMMA.td
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfo.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZibi.td
M llvm/lib/Target/RISCV/RISCVInstrPredicates.td
M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
M llvm/lib/Target/RISCV/RISCVProcessors.td
M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.cpp
M llvm/lib/Target/SPIRV/MCTargetDesc/SPIRVInstPrinter.h
M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.h
M llvm/lib/Target/SPIRV/SPIRVInstrInfo.td
M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/lib/Target/SPIRV/SPIRVMCInstLower.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.h
M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
M llvm/lib/Target/SPIRV/SPIRVSymbolicOperands.td
M llvm/lib/Target/SPIRV/SPIRVUtils.h
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.cpp
M llvm/lib/Target/Sparc/SparcTargetTransformInfo.h
M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGSort.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyCFGStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFastISel.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyInstrAtomics.td
M llvm/lib/Target/X86/GISel/X86PostLegalizerCombiner.cpp
M llvm/lib/Target/X86/X86.h
M llvm/lib/Target/X86/X86.td
M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
M llvm/lib/Target/X86/X86FastISel.cpp
M llvm/lib/Target/X86/X86FrameLowering.cpp
M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Target/X86/X86ISelLowering.h
M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
M llvm/lib/Target/X86/X86InstrArithmetic.td
M llvm/lib/Target/X86/X86InstrCMovSetCC.td
M llvm/lib/Target/X86/X86InstrCompiler.td
M llvm/lib/Target/X86/X86InstrFragments.td
M llvm/lib/Target/X86/X86InstrInfo.cpp
M llvm/lib/Target/X86/X86InstrInfo.h
M llvm/lib/Target/X86/X86InstrPredicates.td
M llvm/lib/Target/X86/X86InstrShiftRotate.td
M llvm/lib/Target/X86/X86InstrUtils.td
M llvm/lib/Target/X86/X86PassRegistry.def
M llvm/lib/Target/X86/X86RegisterInfo.cpp
M llvm/lib/Target/X86/X86SelectionDAGInfo.cpp
M llvm/lib/Target/X86/X86Subtarget.cpp
M llvm/lib/Target/X86/X86Subtarget.h
M llvm/lib/Target/X86/X86TargetMachine.cpp
M llvm/lib/TargetParser/TargetParser.cpp
M llvm/lib/Transforms/Coroutines/CoroElide.cpp
M llvm/lib/Transforms/Coroutines/CoroInternal.h
M llvm/lib/Transforms/Coroutines/CoroSplit.cpp
M llvm/lib/Transforms/Coroutines/Coroutines.cpp
M llvm/lib/Transforms/IPO/AlwaysInliner.cpp
M llvm/lib/Transforms/IPO/ForceFunctionAttrs.cpp
M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/lib/Transforms/IPO/Inliner.cpp
M llvm/lib/Transforms/IPO/LoopExtractor.cpp
M llvm/lib/Transforms/IPO/MergeFunctions.cpp
M llvm/lib/Transforms/IPO/ModuleInliner.cpp
M llvm/lib/Transforms/IPO/PartialInlining.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
M llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
M llvm/lib/Transforms/Instrumentation/SanitizerCoverage.cpp
M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
M llvm/lib/Transforms/Scalar/LoopRotation.cpp
M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
M llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp
M llvm/lib/Transforms/Scalar/Reassociate.cpp
M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
M llvm/lib/Transforms/Utils/AMDGPUEmitPrintf.cpp
M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
M llvm/lib/Transforms/Utils/CodeExtractor.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/LoopRotationUtils.cpp
M llvm/lib/Transforms/Utils/LoopSimplify.cpp
M llvm/lib/Transforms/Utils/LoopUtils.cpp
M llvm/lib/Transforms/Utils/LowerAtomic.cpp
M llvm/lib/Transforms/Utils/ProfileVerify.cpp
M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromBBs.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/RegionsFromMetadata.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/SeedCollection.cpp
M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
M llvm/lib/Transforms/Vectorize/VPlanAnalysis.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
M llvm/lib/Transforms/Vectorize/VPlanValue.h
M llvm/runtimes/CMakeLists.txt
A llvm/test/Analysis/BasicAA/gep-and-mask-gcd.ll
M llvm/test/Analysis/CostModel/AArch64/arith-bf16.ll
M llvm/test/Analysis/DependenceAnalysis/StrongSIV.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-addrec-wrap.ll
A llvm/test/Analysis/DependenceAnalysis/exact-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/exact-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/gcd-miv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/non-monotonic.ll
M llvm/test/Analysis/DependenceAnalysis/rdiv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/strong-siv-overflow.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-addrec-wrap.ll
M llvm/test/Analysis/DependenceAnalysis/symbolic-rdiv-overflow.ll
A llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-delta-signed-min.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-large-btc.ll
M llvm/test/Analysis/DependenceAnalysis/weak-zero-siv-overflow.ll
M llvm/test/Analysis/IR2Vec/Inputs/reference_default_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd1_vocab_print.txt
M llvm/test/Analysis/IR2Vec/Inputs/reference_wtd2_vocab_print.txt
A llvm/test/Analysis/LoopAccessAnalysis/invariant-dep-same-ptr.ll
A llvm/test/Analysis/MemorySSA/call-loop-carried-dependency.ll
M llvm/test/Analysis/ScalarEvolution/backedge-taken-count-guard-info-with-multiple-predecessors.ll
A llvm/test/Analysis/ScalarEvolution/two-loop-latches.ll
M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
M llvm/test/Assembler/2008-02-18-IntPointerCrash.ll
M llvm/test/Assembler/atomic.ll
M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
A llvm/test/Assembler/byte-invalid.ll
A llvm/test/Assembler/byte.ll
M llvm/test/Assembler/invalid-inttype.ll
M llvm/test/Assembler/memory-attribute-errors.ll
M llvm/test/Assembler/memory-attribute.ll
A llvm/test/Bindings/llvm-c/byte.ll
M llvm/test/Bindings/llvm-c/echo.ll
M llvm/test/Bitcode/DIImportedEntity_elements.ll
M llvm/test/Bitcode/DIModule-fortran-external-module.ll
M llvm/test/Bitcode/attributes.ll
M llvm/test/Bitcode/compatibility.ll
M llvm/test/Bitcode/memory-attribute-upgrade.ll
A llvm/test/CodeGen/AArch64/GlobalISel/combine-binop-neg.mir
M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abds.mir
A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-abdu.mir
M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
M llvm/test/CodeGen/AArch64/GlobalISel/select-rev.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-cross-block-different-regs.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-nzcvdef.mir
M llvm/test/CodeGen/AArch64/aarch64-condopt-unsigned.mir
A llvm/test/CodeGen/AArch64/aarch64-sys-intrinsic.ll
M llvm/test/CodeGen/AArch64/addsub-24bit-imm.mir
M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
M llvm/test/CodeGen/AArch64/arm64-neon-aba-abd.ll
M llvm/test/CodeGen/AArch64/blr-bti-preserves-operands.mir
M llvm/test/CodeGen/AArch64/bsp_implicit_ops.mir
A llvm/test/CodeGen/AArch64/ccmp-look-through-copy.mir
M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
M llvm/test/CodeGen/AArch64/expand-blr-rvmarker-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-constructive-zzi.mir
M llvm/test/CodeGen/AArch64/expand-load-got-pseudo.mir
M llvm/test/CodeGen/AArch64/expand-movi-renamable.mir
M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
M llvm/test/CodeGen/AArch64/expand-subs-pseudo.mir
M llvm/test/CodeGen/AArch64/f16f32dot-fixed-length-fdot.ll
A llvm/test/CodeGen/AArch64/is_fpclass.ll
M llvm/test/CodeGen/AArch64/load-insert-zero.ll
A llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
A llvm/test/CodeGen/AArch64/mops-mmo-size.ll
M llvm/test/CodeGen/AArch64/movimm-expand-ldst.mir
M llvm/test/CodeGen/AArch64/movimm-wzr.mir
M llvm/test/CodeGen/AArch64/neg-selects.ll
M llvm/test/CodeGen/AArch64/neon-bitwise-instructions.ll
M llvm/test/CodeGen/AArch64/peephole-csel.mir
M llvm/test/CodeGen/AArch64/peephole-insert-subreg.mir
M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
M llvm/test/CodeGen/AArch64/peephole-movd.mir
M llvm/test/CodeGen/AArch64/peephole-orr.mir
M llvm/test/CodeGen/AArch64/peephole-sxtw.mir
M llvm/test/CodeGen/AArch64/redundant-orrwrs-from-zero-extend.mir
M llvm/test/CodeGen/AArch64/rem-by-const.ll
M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
M llvm/test/CodeGen/AArch64/sve-insert-element.ll
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryComm-merging.mir
M llvm/test/CodeGen/AArch64/sve-intrinsics-int-binaryCommWithRev-merging.mir
M llvm/test/CodeGen/AArch64/sve-pr92779.ll
M llvm/test/CodeGen/AArch64/sve-pseudos-expand-undef.mir
M llvm/test/CodeGen/AArch64/sve2-bitsel-pseudos-expansion.mir
M llvm/test/CodeGen/AArch64/sve2p1-fdot.ll
M llvm/test/CodeGen/AArch64/sve2p1-fixed-length-fdot.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.setreg.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.softwqm.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.strictwqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.add.ll
A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.atomic.sub.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.wqm.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/minmaxabs-i64.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.v2i16.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.class.mir
R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.kernarg.segment.ptr.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.readlane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsg.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.sendmsghalt.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.wqm.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.writelane.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgpu-ffbh-u32.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-constant.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-icmp.s16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-salu-float.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-sub.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-uadde.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-usube.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/select-to-fmin-fmax.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/smul.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.v2i16.ll
M llvm/test/CodeGen/AMDGPU/add-max.ll
M llvm/test/CodeGen/AMDGPU/add_u64.ll
M llvm/test/CodeGen/AMDGPU/addrspacecast-gas.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination-gfx12.ll
M llvm/test/CodeGen/AMDGPU/barrier-elimination.ll
M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
M llvm/test/CodeGen/AMDGPU/bf16-math.ll
M llvm/test/CodeGen/AMDGPU/bf16.ll
M llvm/test/CodeGen/AMDGPU/bitop3.ll
M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/callee-frame-setup.ll
M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
M llvm/test/CodeGen/AMDGPU/cf-loop-on-constant.ll
M llvm/test/CodeGen/AMDGPU/convergent.mir
M llvm/test/CodeGen/AMDGPU/copy-to-reg.ll
M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/cttz_zero_undef.ll
M llvm/test/CodeGen/AMDGPU/ds-negative-offset-addressing-mode-loop.ll
M llvm/test/CodeGen/AMDGPU/ds_read2-gfx1250.ll
M llvm/test/CodeGen/AMDGPU/ds_write2.ll
M llvm/test/CodeGen/AMDGPU/dst-sel-hazard.mir
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/fcanonicalize.bf16.ll
M llvm/test/CodeGen/AMDGPU/flat-load-saddr-to-vaddr.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-store.ll
M llvm/test/CodeGen/AMDGPU/fmax3.ll
M llvm/test/CodeGen/AMDGPU/fmin3.ll
M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-atomics.ll
M llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
M llvm/test/CodeGen/AMDGPU/global-address.ll
M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/idiv-licm.ll
M llvm/test/CodeGen/AMDGPU/implicit-arg-v5-opt.ll
A llvm/test/CodeGen/AMDGPU/insert-skips-gfx1250.mir
M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
M llvm/test/CodeGen/AMDGPU/literal64.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bitop3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.flat.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cluster.workgroup.max.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.f16.fp8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.e5m3.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pk.f16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sat.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk16.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.sr.pk16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.sr.pk.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.add.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.read.tr.gfx950.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.sub.gs.reg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.flat.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.async.to.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.store.async.from.lds.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.monitor.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.load.tr.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mbcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rcp.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.rsq.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.data.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sethalt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.sleep.var.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.ttracedata.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.event.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx12.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.wait.gfx1250.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.waitcnt.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.tfe.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.update.dpp.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.id.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imod.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.index.gfx1250.w32.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
M llvm/test/CodeGen/AMDGPU/llvm.cos.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.prefetch.ll
M llvm/test/CodeGen/AMDGPU/llvm.sin.bf16.ll
M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
M llvm/test/CodeGen/AMDGPU/llvm.sqrt.bf16.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
M llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll
Log Message:
-----------
Merge branch 'fix-blockfreq-unroll-unconditional-latches' into fix-blockfreq-unroll-unconditional-latches--fast
Compare: https://github.com/llvm/llvm-project/compare/5b29070396ae...9c365a81f72e
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