[all-commits] [llvm/llvm-project] d7856f: [RISCV][GISel] Add exact flag to G_LSHR in RISCVLe...
Vitaly Buka via All-commits
all-commits at lists.llvm.org
Tue May 26 22:40:31 PDT 2026
Branch: refs/heads/users/vitalybuka/spr/lit-enforce-read-only-behavior-on-lit_configmaxindividualtesttime-1
Home: https://github.com/llvm/llvm-project
Commit: d7856fed0268ae8c903a6928610122647a44d2fa
https://github.com/llvm/llvm-project/commit/d7856fed0268ae8c903a6928610122647a44d2fa
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insert-subvector.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
Log Message:
-----------
[RISCV][GISel] Add exact flag to G_LSHR in RISCVLegalizerInfo::legalizeVScale (#199595)
This matches what is in SelectionDAG.
Commit: 23b754f5745a51f5f1ff2d9c65f539b54c913589
https://github.com/llvm/llvm-project/commit/23b754f5745a51f5f1ff2d9c65f539b54c913589
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
Log Message:
-----------
[RISCV] Use the new "let append" TableGen feature to reduce duplication. NFC (#199596)
Similar to #198761, use this to add [IsRV64] where needed.
Commit: d4550cc82efa06745192f78120e1acfc7892b35d
https://github.com/llvm/llvm-project/commit/d4550cc82efa06745192f78120e1acfc7892b35d
Author: Igor Gorban <igor.gorban at intel.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M clang/lib/Sema/OpenCLBuiltins.td
A clang/test/SemaOpenCL/intel-bfloat16-conversions-builtins.cl
Log Message:
-----------
[OpenCL] Add cl_intel_bfloat16_conversions builtins (#199422)
Add cl_intel_bfloat16_conversions declarations to OpenCLBuiltins.td
and cover the extension with a dedicated header-free SPIR test.
Specification:
https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_bfloat16_conversions.html
Co-authored-by: Copilot
Commit: 44d60bad70c7832c2917724d183aa6c208fe589b
https://github.com/llvm/llvm-project/commit/44d60bad70c7832c2917724d183aa6c208fe589b
Author: YunQiang Su <syq at debian.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
Log Message:
-----------
sanitizer_common: Fix build on MIPS with _TIME_BITS=64 (#199590)
When we build sanitizer_common with -D_TIME_BITS=64, the assert of
struct_kernel_stat_sz fails due to the size of struct stat get different
size.
Commit: fe3d6b051b31f5794cd29818acb9203dbb7dd6f4
https://github.com/llvm/llvm-project/commit/fe3d6b051b31f5794cd29818acb9203dbb7dd6f4
Author: Li-Zheng-Rong <2508120225 at hhu.edu.cn>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang-tools-extra/clangd/ProjectModules.cpp
Log Message:
-----------
[NFC] [clangd] [C++20] [Modules] Fix false duplicate module warning for equivalent paths (#199343)
When checking for multiple source files declaring the same module, the
comparison used raw string equality on file paths. This causes false
positives when the same file is represented by different but equivalent
path strings.
Use pathEqual(normalizePath(...), normalizePath(...)) instead to compare
canonical paths, consistent with how clangd handles path comparisons
elsewhere.
Commit: 44583eca36b6e4e11cc171bc05d9eb0c5b716e1d
https://github.com/llvm/llvm-project/commit/44583eca36b6e4e11cc171bc05d9eb0c5b716e1d
Author: Arun Thangamani <arun.thangamani at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
Log Message:
-----------
[mlir][x86] Fix - multiple issues / F8 support for AMX dot-product lowering (#196984)
This patch fixes issues or support additional patterns for AMX
`dot-product` lowering.
1. Fix issue related to write-back to `C` matrix,
2. Supports additional lowering pattern where the cache tile sizes are:
32,32,32,
3. Online packing - loop peeling is now based on `step` size,
4. Extends support for `f8` lowering (`mx-fp8` lowering will be
supported after vector.contract has `mx` support).
Commit: de188bbad3df25ccc85a853328c98a45b9df7db3
https://github.com/llvm/llvm-project/commit/de188bbad3df25ccc85a853328c98a45b9df7db3
Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/MC/CMakeLists.txt
Log Message:
-----------
[DirectX][ObjectYAML] Fix CI build issue in DXContainerInfo.cpp (#199605)
After https://github.com/llvm/llvm-project/pull/198222, the following
error was reported in CI bots:
```
[1546/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o
FAILED: [code=1] lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o
sccache /usr/bin/g++ -DLLVM_EXPORTS -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/runner/work/circt/circt/build/lib/MC -I/home/runner/work/circt/circt/llvm/llvm/lib/MC -I/home/runner/work/circt/circt/build/include -I/home/runner/work/circt/circt/llvm/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-dangling-reference -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-dangling-pointer -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17 -fPIC -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -MD -MT lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o -MF lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o.d -o lib/MC/CMakeFiles/LLVMMC.dir/DXContainerInfo.cpp.o -c /home/runner/work/circt/circt/llvm/llvm/lib/MC/DXContainerInfo.cpp
/home/runner/work/circt/circt/llvm/llvm/lib/MC/DXContainerInfo.cpp:14:10: fatal error: llvm/Support/VCSRevision.h: No such file or directory
14 | #include "llvm/Support/VCSRevision.h"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
[1547/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/ConstantPools.cpp.o
[1548/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerRootSignature.cpp.o
[1549/5356] Building CXX object lib/MC/CMakeFiles/LLVMMC.dir/DXContainerPSVInfo.cpp.o
[1550/5356] Building CXX object lib/Bitcode/Reader/CMakeFiles/LLVMBitReader.dir/MetadataLoader.cpp.o
[1551/5356] Building CXX object lib/Bitcode/Reader/CMakeFiles/LLVMBitReader.dir/BitcodeReader.cpp.o
ninja: build stopped: subcommand failed.
```
This adds llvm_vcsrevision_h dependency to MC to fix that.
Commit: fb8243f32c955690ebdfdd32eb9aaaf0c391b648
https://github.com/llvm/llvm-project/commit/fb8243f32c955690ebdfdd32eb9aaaf0c391b648
Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
Log Message:
-----------
[RISCV] Use append TableGen feature in RISCVInstrInfoXqci.td (#199603)
This improves the readability of the file.
An AI came up with the patch which I reviewed and ensured that the tests
pass.
Commit: c618e112145fbbbe7ab14ab202f8626703920b96
https://github.com/llvm/llvm-project/commit/c618e112145fbbbe7ab14ab202f8626703920b96
Author: Varad Rahul Kamthe <133588066+varadk27 at users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
A mlir/test/Target/LLVMIR/nvvm/divf/divf.mlir
A mlir/test/Target/LLVMIR/nvvm/divf/divf_invalid.mlir
Log Message:
-----------
[MLIR][NVVM] Add `nvvm.divf` Op (#198744)
Adds the `nvvm.divf` NVVM dialect op covering all 16 PTX `div` forms via attribute-driven selection:
- Default (`approx = false, full = false`): IEEE-compliant rounded divide (`div.<RM>[.ftz].{f32,f64}`), 12 forms -- requires `rnd` ∈ `{rn, rm, rp, rz}`; supports f32 and f64 (f64 does not accept `ftz`).
- `approx = true`: fast hardware approximation (`div.approx[.ftz].f32`), 2 forms -- f32 only.
- `full = true`: full-range approximation (`div.full[.ftz].f32`), 2 forms -- f32 only.
Commit: b86512ce648f4a31ba5110dc0e0f84b63f5be785
https://github.com/llvm/llvm-project/commit/b86512ce648f4a31ba5110dc0e0f84b63f5be785
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
Log Message:
-----------
[RISCV][P-ext] Split v4i16/v8i8 vselect on RV32. (#198898)
We don't have a 64-bit merge instruction on RV32.
Assisted-by: Claude Sonnet 4.5
Commit: 377af85dad4e71b928a493464af5cf2f32e7e192
https://github.com/llvm/llvm-project/commit/377af85dad4e71b928a493464af5cf2f32e7e192
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/Transforms/LICM/strlen.ll
M llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll
M llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
Log Message:
-----------
[InferAttrs] Annotate math and basic string libcalls with `nosync` (#197761)
Math libcalls as well as some simple string ones do not create
synchronizes-with edges, thus `nosync` may be derived.
Co-authored-by: Johannes Doerfert <jdoerfert.llvm at gmail.com>
Commit: be39e065d325ad52628c23eb01d999656e30a22f
https://github.com/llvm/llvm-project/commit/be39e065d325ad52628c23eb01d999656e30a22f
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/IR/LegacyPassManager.cpp
Log Message:
-----------
[IR] Inline remove_if in PMDataManager::removeNotPreservedAnalysis (#199571)
PR #198982 rewrote removeNotPreservedAnalysis to use DenseMap::remove_if
with one predicate shared across two call sites. The predicate is always
inlined; the cost is that two call sites make
DenseMapBase::remove_if<...>
itself emit out of line instead of inlining into the caller. As this
runs
after every modifying codegen pass (legacy PM), it shows up as a small
instructions:u regression, most visibly at -O0 where the legacy codegen
PM
is a large fraction of compile time:
https://llvm-compile-time-tracker.com/compare.php?from=69a5cf515fd317bcf918e48de9137dd8549870c5&to=6302439f5aaea6cb776d8ceb5c2ef9108fccf702&stat=instructions%3Au
Collect the maps into a SmallVector and prune them from a single
remove_if
call site, so the instantiation is inlined again.
Commit: a225aafbd1a40be0dd9c31e2d0b0b7c42b9d36e3
https://github.com/llvm/llvm-project/commit/a225aafbd1a40be0dd9c31e2d0b0b7c42b9d36e3
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/ProgrammersManual.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ADT/DenseMap.h
M llvm/unittests/ADT/DenseMapTest.cpp
M llvm/unittests/ADT/DenseSetTest.cpp
Log Message:
-----------
[DenseMap] Invalidate iterators on erase (#199369)
Tighten DenseMap's `erase` contract so that, like `insert` and `grow`,
it invalidates iterators and references obtained before the call.
Under the current tombstone-based deletion this is purely an
LLVM_ENABLE_ABI_BREAKING_CHECKS check — the bucket array is not actually
mutated for other entries — but it surfaces stale-iterator-after-erase
patterns now rather than when DenseMap's deletion scheme changes.
Mirrors the SmallPtrSet change in #96762, which dropped tombstones in
small mode and likewise had `erase` invalidate iterators.
Depends on #198982 and #199365
Commit: 49e2295cf52cac72cc3d3bcb4738582bc0c6bde1
https://github.com/llvm/llvm-project/commit/49e2295cf52cac72cc3d3bcb4738582bc0c6bde1
Author: Antonio Frighetto <me at antoniofrighetto.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/GVN.cpp
A llvm/test/Transforms/GVN/PRE/pre-load-combine-metadata.ll
Log Message:
-----------
[GVN] Properly combine AA metadata if available load is hoisted (#197948)
Ensure the AA metadata are properly merged between the new load and the
old one during PRE. Actually set `DoesKMove` in `combineMetadataForCSE`,
otherwise the new load is assumed not to move, which is not correct if
the new load has happened to be hoisted.
Fixes: https://github.com/llvm/llvm-project/issues/196787.
Commit: a69ce910db2d33ae6203aed998feba3136d68e0b
https://github.com/llvm/llvm-project/commit/a69ce910db2d33ae6203aed998feba3136d68e0b
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp
Log Message:
-----------
[Clang][AMDGPU] clean up auto-generated CHECK lines in a test (NFC) (#199614)
Commit: d06d3a7bdca153c3130704ef115c72095488e1f7
https://github.com/llvm/llvm-project/commit/d06d3a7bdca153c3130704ef115c72095488e1f7
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/AST/ASTImporter.cpp
A clang/test/Analysis/ctu/constraintsatisfaction.cpp
Log Message:
-----------
[clang][ASTImporter] Fix of crash at ConstraintSatisfaction import (#197407)
Null pointer dereference could happen during `ASTImporter` import of a
`ConstraintSatisfaction` object.
Commit: fda6309919a0c391ed224c0da214ba89ecff5478
https://github.com/llvm/llvm-project/commit/fda6309919a0c391ed224c0da214ba89ecff5478
Author: Cullen Rhodes <cullen.rhodes at arm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
Log Message:
-----------
[AArch64][GlobalISel] Add tablegen pattern for uaddo combine (#198724)
Related to #197693 which filters the worklist to only include opcodes
for which there are combines. It's mostly handled by canMatchOpcode
which is tablgen'ed but some old combines like this one are missing a
tablegen pattern and require extra handling. This adds a simple wrapper
so it gets picked up by canMatchOpcode and we can delete the C++
handling.
Assisted-by: codex
Commit: 4ab4d2d9bb4a1d87b36bb4703d3b95138129c051
https://github.com/llvm/llvm-project/commit/4ab4d2d9bb4a1d87b36bb4703d3b95138129c051
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
M llvm/test/Transforms/LoopVectorize/RISCV/sink-to-early-exit.ll
M llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
M llvm/test/Transforms/LoopVectorize/early-exit-calls.ll
M llvm/test/Transforms/LoopVectorize/early-exit-load-live-out.ll
M llvm/test/Transforms/LoopVectorize/early-exit-unary-ops.ll
M llvm/test/Transforms/LoopVectorize/multi_early_exit.ll
M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
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
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/sink-to-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
Log Message:
-----------
[VPlan] Fold canonical IV recipe creation into createLoopRegion. (#198383)
Remove the separate addCanonicalIVRecipes transform and create the
canonical IV's increment and the latch's exiting branch directly in
createLoopRegion, using the loop region's VPRegionValue for the
canonical IV. The temporary VPPhi placeholder previously inserted in the
header is no longer needed.
PR: https://github.com/llvm/llvm-project/pull/198383
Commit: 970ecaef1db3701f04e63223ce9188a748be6083
https://github.com/llvm/llvm-project/commit/970ecaef1db3701f04e63223ce9188a748be6083
Author: Vladislav Semykin <34096407+ViNN280801 at users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaExpr.cpp
M clang/test/SemaCXX/cxx2a-consteval.cpp
Log Message:
-----------
[Clang][Sema] Fix crash in __builtin_dump_struct with immediate callables (#192880)
## Motivation
`ComplexRemove` (used by `Sema::PopExpressionEvaluationContext` to strip
nested `ConstantExpr` wrappers) inherits the default
`TreeTransform::TransformOpaqueValueExpr`, which asserts on any
`OpaqueValueExpr` with a non-null `SourceExpr` unless a binding has
already been set up.
`__builtin_dump_struct` binds the record pointer to an `OpaqueValueExpr`
inside a `PseudoObjectExpr`. When the callable argument is
immediate-escalated (e.g. via `__builtin_is_within_lifetime`),
`RemoveNestedImmediateInvocation` roots `ComplexRemove` inside the PSE's
semantic form, reaching that OVE without the binding the assert expects
- triggering a crash.
## Closing Issues
Closes #192846
---------
Signed-off-by: ViNN280801 <vladislav.semykin at gmail.com>
Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
Co-authored-by: Younan Zhang <zyn7109 at gmail.com>
Commit: a975b7cd3538cfba015c7a49e2e86be58aa546c3
https://github.com/llvm/llvm-project/commit/a975b7cd3538cfba015c7a49e2e86be58aa546c3
Author: Luke Lau <luke at igalia.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/test/CodeGen/RISCV/rvv/masked-udiv.ll
Log Message:
-----------
[RISCV] Fix fixed-length masked.{u,s}{div,rem} lowering not converting operands (#197913)
Similar to #197724, but this time I also somehow forgot to convert the
operands to scalable vectors. I'm surprised that nothing asserted here,
since SDT_RISCVIntBinOp_VL has a type profile constraint that the
operands and result types need to be the same.
Commit: 4448a1a7c095dc781495d631b73dcdff652436ba
https://github.com/llvm/llvm-project/commit/4448a1a7c095dc781495d631b73dcdff652436ba
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/avx512-ext.ll
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-mask-op.ll
Log Message:
-----------
[X86] LowerBUILD_VECTORvXi1 - scalarize the bool masks if we insert a single non-const value (#199523)
Minor generalization of the existing fold for splat bool masks - if only
a single value is used in insertion(s) (as well as any immediate/undefs
values), then fold to a scalar select (val, insert|immediate, immediate)
Yak shaving for #198162
Commit: 19e915fc5c91645ccc4050180e9daabec30358c4
https://github.com/llvm/llvm-project/commit/19e915fc5c91645ccc4050180e9daabec30358c4
Author: hev <wangrui at loongson.cn>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
A llvm/test/CodeGen/LoongArch/musttail-call.ll
A llvm/test/CodeGen/LoongArch/musttail-indirect-args.ll
Log Message:
-----------
[LoongArch] Fix musttail with indirect arguments by forwarding incoming pointers (#198965)
When a `musttail` call passes arguments indirectly (fp128 on LA32, i128
on LA32), the backend allocates a stack temporary and hands the callee a
pointer. The tail call deallocates the caller's frame, and the pointer
dangles.
Fix by forwarding the incoming indirect pointers instead. They point to
the caller's caller's frame, which stays valid after the tail call.
Forwarded formal parameters reuse the pointer directly; computed values
get stored into the incoming buffer first.
The pointers are saved in virtual registers (`CopyToReg`/`CopyFromReg`)
rather than SDValues. The SelectionDAG is cleared between basic blocks
and musttail calls can appear in non-entry blocks, so storing raw
SDValues across BBs is unsound (this was the bug that led to the revert
in 501417baa60f). The vreg save only fires when the function has
musttail calls; other functions see no codegen change.
Non-musttail tail calls with indirect args are still rejected.
This uses the same strategy as the corresponding RISC-V fix (#185094).
Commit: 73f141f75caf842e289a9d8166365b702adfeb3b
https://github.com/llvm/llvm-project/commit/73f141f75caf842e289a9d8166365b702adfeb3b
Author: Hans Wennborg <hans at hanshq.net>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
Log Message:
-----------
[NFC] Add null terminator assert to CodeViewRecordIO::mapStringZ (#199624)
mapStringZ assumes that there's a null terminator past the end of Value
(I suppose the name hints at this too). This doesn't seem very nice to
me, but at least we can add an assert to check that the assumption
holds.
Commit: 322ff9f317bbefd52751028dc358524797e18045
https://github.com/llvm/llvm-project/commit/322ff9f317bbefd52751028dc358524797e18045
Author: Luke Lau <luke at igalia.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
Log Message:
-----------
[RISCV] Remove TargetLowering arg from getContainerForFixedLengthVector. NFC (#199629)
Unless I'm missing something we can just fetch the TLI from
RISCVSubtarget
Commit: 5ab7435196ce395fc0713f4034e65fcaee67e63e
https://github.com/llvm/llvm-project/commit/5ab7435196ce395fc0713f4034e65fcaee67e63e
Author: Sander de Smalen <sander.desmalen at arm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
R llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fsub-chained.ll
Log Message:
-----------
[LV] Add support for partial reduction chains with fsubs. (#197114)
The cost-model prevented this from happening, but the LV would otherwise
generate incorrect code (i.e. without the fneg).
Commit: 3398f4e66558c67f7a8db70982d8bdbd8ed9a52d
https://github.com/llvm/llvm-project/commit/3398f4e66558c67f7a8db70982d8bdbd8ed9a52d
Author: jeanPerier <jperier at nvidia.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/test/Dialect/LLVMIR/mem2reg.mlir
Log Message:
-----------
[mlir][mem2reg] fix assert for indirect blocking uses inside regions (#199193)
When adding new blocking uses created by the interface of a previous
blocking uses (typically forwarding the blocking uses to the op result
users), the mem2reg framework was assuming that the new blocking uses
are in the same region as the original blocking use, which is not true
in general and lead to the assert:
`Transforms/Mem2Reg.cpp:743: void
{anonymous}::MemorySlotPromoter::removeBlockingUses(mlir::Region*):
Assertion `op->getParentRegion() == region && "all operations must still
be in the same region"' failed.`
This patch fixes this by adding the new uses into the userToBlockingUses
for the region of the new blocking uses.
Commit: b2634fc4f8b1b1702a970812d534d3a888788b3e
https://github.com/llvm/llvm-project/commit/b2634fc4f8b1b1702a970812d534d3a888788b3e
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
Log Message:
-----------
[clang][bytecode] Fix a crash in __builtin_subcb (#199400)
Don't try to initialize pointers that can't be initialized
Commit: 495e6c54420fb06664d0dfaeee1926eade10f114
https://github.com/llvm/llvm-project/commit/495e6c54420fb06664d0dfaeee1926eade10f114
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
A llvm/test/Transforms/Coroutines/coro-materialize-intrinsics.ll
M llvm/test/Transforms/Coroutines/coro-materialize.ll
Log Message:
-----------
[Coroutines] Allow rematerialization of unary operators and selected intrinsics (#197698)
All of those can be cheaply recomputed when the coroutine has resumed.
Before this change, results of unary operators and intrinsics were
spilled into the coroutine frame and reloaded on resume:
```
%neg = fneg float %n
store float %neg, ptr %neg.spill.addr
; In resume:
%neg.reload = load float, ptr %neg.reload.addr
; ... use %neg.reload
```
After this change, only the operand is spilled and the operation is
rematerialized on each resume, avoiding the frame store:
```
store float %n, ptr %n.spill.addr
; In resume:
%n.reload = load float, ptr %n.reload.addr
%neg = fneg float %n.reload
; ... use %neg
```
Assisted-by: Claude Code
Commit: adcad45cbdf804c18ba691d879df98a9e3e22fc2
https://github.com/llvm/llvm-project/commit/adcad45cbdf804c18ba691d879df98a9e3e22fc2
Author: Kartik Ohlan <kartik7ohlan at gmail.com>
Date: 2026-05-26 (Tue, 26 May 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] Vector saturating rounding shift right and narrow intrinsics (#198947)
This PR ignores all SISD variants that we had in #198216
Part of https://github.com/llvm/llvm-project/issues/185382
Move the test cases to
[intrinsics.c](https://github.com/llvm/llvmproject/pull/clang/test/CodeGen/AArch64/neon/intrinsics.c)
Removed the test cases from
[neon-intrinsics.c](https://github.com/llvm/llvmproject/pull/clang/test/CodeGen/AArch64/neon/intrinsics.c)
variants that are skipped/ not covered in this PR (SISD)
```
1. vqrshrunh_n_s16 (uint8_t, _h scalar)
2. vqrshruns_n_s32 (uint16_t, _s scalar)
3. vqrshrnh_n_s16 (int8_t, _h scalar)
4. vqrshrns_n_s32 (int16_t, _s scalar)
5. vqrshrnh_n_u16 (uint8_t, _h scalar)
6. vqrshrns_n_u32 (uint16_t, _s scalar)
```
Commit: 0f1d083eff4bb5d409093a0c2b5ce32f070f8af7
https://github.com/llvm/llvm-project/commit/0f1d083eff4bb5d409093a0c2b5ce32f070f8af7
Author: Michael Kruse <llvm-project at meinersbur.de>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/test/CMakeLists.txt
Log Message:
-----------
[Clang][test] check-clang-format not created with LLVM_ENABLE_IDE (#199638)
add_lit_testsuites skips creating targets for each subdirectory when
LLVM_ENABLE_IDE. Only create the dependency (introduced in #199169) when
the check-clang-format target actually exists.
Fixes the LLVM build when using an IDE.
Commit: c437052c0a473ebf4880947b1c70e0745acd1ee6
https://github.com/llvm/llvm-project/commit/c437052c0a473ebf4880947b1c70e0745acd1ee6
Author: lntue <lntue at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/CMakeLists.txt
M llvm/include/llvm/ADT/APFloat.h
M llvm/lib/Support/APFloat.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/unittests/ADT/APFloatTest.cpp
Log Message:
-----------
Reland "[APFloat] Add exp functions for single and double using exp/expf implementations from LLVM libc." (#197440) (#199570)
This reverts commit 1565f096d868f479f075fce3792db7b908cab9aa.
**Fixes applied on LLVM libc side:**
- gcc 7, 8, 9 compatibility:
- https://github.com/llvm/llvm-project/pull/197476
- https://github.com/llvm/llvm-project/pull/197868
- Add gcc's versions to LLVM libc-shared-tests precommit CI:
https://github.com/llvm/llvm-project/pull/199300
**Original commits messages:**
Discourse RFC:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450
- The implementation in LLVM libc is free-standing header-only:
https://github.com/llvm/llvm-project/issues/147386
- expf / exp implementation in LLVM libc is correctly rounded for all
rounding modes.
- Only support default rounding modes for now. Other rounding modes will
wait for proper static rounding implementations in LLVM libc.
- No cmake build dependency between LLVM and LLVM libc, only requires
LLVM libc source presents in llvm-project/libc folder.
Commit: 10c0de887256f33427353a1f8988842b98a340c9
https://github.com/llvm/llvm-project/commit/10c0de887256f33427353a1f8988842b98a340c9
Author: Joseph Huber <huberjn at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
Log Message:
-----------
[LinkerWrapper] Fix temps being dumped to CWD instead of output path (#198679)
Summary:
Offloading save temps is a complex dance where we have clang,
linker-wrapper, and lld all making their own temp files. The ones in the
linker wrapper were not respecting the output directory because we
stripped everything with filename. Just get rid of this so it uses the
output file's directory properly in this mode.
Commit: 79337832f7a35c1ae5326a80c37a6459dd752048
https://github.com/llvm/llvm-project/commit/79337832f7a35c1ae5326a80c37a6459dd752048
Author: Igor Gorban <igor.gorban at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/Sema/OpenCLBuiltins.td
A clang/test/SemaOpenCL/intel-split-work-group-barrier-builtins.cl
Log Message:
-----------
[OpenCL] Add cl_intel_split_work_group_barrier builtins (#199424)
Add cl_intel_split_work_group_barrier declarations to OpenCLBuiltins.td
and cover the extension with a dedicated header-free SPIR test.
Specification:
https://registry.khronos.org/OpenCL/extensions/intel/cl_intel_split_work_group_barrier.html
Co-authored-by: Copilot
Commit: 028153a165d6c161f0a7eb045840f5e2b70f6088
https://github.com/llvm/llvm-project/commit/028153a165d6c161f0a7eb045840f5e2b70f6088
Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlan.cpp
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
Log Message:
-----------
[VPlan] Make TransformState::get BCast-logic robust (#197589)
The logic for inserting Broadcasts in a more optimal location in
VPTransformState::get is quite fragile, especially around scalable VFs.
Fix it, resulting in minor improvements.
Commit: a903b9512750cf1c5cd6c6f233f74257bae5d4bf
https://github.com/llvm/llvm-project/commit/a903b9512750cf1c5cd6c6f233f74257bae5d4bf
Author: MaoJiaping <maojiaping1 at huawei.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Utils/CloneModule.cpp
M llvm/lib/Transforms/Utils/SplitModule.cpp
A llvm/test/tools/llvm-split/alias-to-ifunc.ll
A llvm/test/tools/llvm-split/ifunc.ll
Log Message:
-----------
[CloneModule] Clone undefined ifuncs (#197353)
To satisfy the verifier rule "IFunc resolver must be a definition". We
fix iFunc handling when cloning modules.
When cloning a module, if an IFunc has no definition
(ShouldCloneDefinition returns false), directly create an external
GlobalValue (Function or GlobalVariable) instead of trying to clone the
ifunc.
Add a test case for llvm-split to verify the ifunc cloning/splitting
behavior works correctly.
Commit: 05a237293730ce2e83718037d7addabd6c15b238
https://github.com/llvm/llvm-project/commit/05a237293730ce2e83718037d7addabd6c15b238
Author: Bogdan Vetrenko <b.vetrenko at yandex.ru>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrGISel.td
A llvm/test/CodeGen/RISCV/GlobalISel/bitreverse-zbkb.ll
Log Message:
-----------
[RISCV][GlobalISel] Lower i8 bitreverse using brev8 with Zbkb (#199469)
This teaches RISC-V GlobalISel to custom-lower scalar i8 G_BITREVERSE
using brev8 when Zbkb is available.
The i8 source is zero-extended to XLEN before applying the riscv_brev8
intrinsic. Since brev8 reverses bits independently within each byte, the
high zero bytes remain zero, so the result can be truncated back to i8.
Commit: ded7aa0dcf4965aec5a1d036524cbc0fb14ad5e1
https://github.com/llvm/llvm-project/commit/ded7aa0dcf4965aec5a1d036524cbc0fb14ad5e1
Author: sujianIBM <Jian.Su at ibm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
Log Message:
-----------
[z/OS] Add --ignore-case to FileCheck on output from od. (#196396)
This test fails on z/OS because `od` outputs upper case letters on z/OS.
Commit: 70321b9c3b2674d7613193e54dec5abf6b831bf7
https://github.com/llvm/llvm-project/commit/70321b9c3b2674d7613193e54dec5abf6b831bf7
Author: Junji Watanabe <jwata at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Support/Path.cpp
M llvm/unittests/Support/CommandLineTest.cpp
M llvm/unittests/Support/Path.cpp
Log Message:
-----------
[Support] Support runtime override for LLVM_WINDOWS_PREFER_FORWARD_SLASH (#199210)
Allow overriding the compile-time LLVM_WINDOWS_PREFER_FORWARD_SLASH
setting at runtime using an environment variable of the same name.
This enables testing both path separator behaviors (forward slash vs.
backslash on Windows) using a single build, which is useful for
CI/Buildbots.
The environment variable is checked once and cached in a static variable
for performance.
Also updated relevant tests in SupportTests (Path.cpp and
CommandLineTest.cpp) to dynamically detect the preferred separator style
at runtime instead of relying on the compile-time macro, making them
compatible with the override.
Commit: f72be679b604cb7d2f8aa1db4fd5e6428150fd39
https://github.com/llvm/llvm-project/commit/f72be679b604cb7d2f8aa1db4fd5e6428150fd39
Author: Igor Wodiany <igor.wodiany at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/utils/profcheck-xfail.txt
Log Message:
-----------
[ProfCheck] Add test from #197698 to xfail list (#199650)
All other coroutines tests are already on the list, but the new test has
not been added.
Commit: 573138d541279fbe19ff3a85820fd99f422e00a1
https://github.com/llvm/llvm-project/commit/573138d541279fbe19ff3a85820fd99f422e00a1
Author: Tom Tromey <tromey at adacore.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/include/llvm/IR/DebugInfo.h
M llvm/lib/IR/DebugInfo.cpp
A llvm/test/DebugInfo/Generic/debuginfofinder-composite-type.ll
Log Message:
-----------
Handle more cases in DebugInfoFinder (#194684)
In #181028 we discovered that DebugInfoFinder is missing some cases.
This corrects several of these. It is hard to know if I found them all.
Commit: f2ce225f0f778838e755c306be26adc823282146
https://github.com/llvm/llvm-project/commit/f2ce225f0f778838e755c306be26adc823282146
Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/CodingStandards.rst
Log Message:
-----------
Exclude documentation files from 80 columns rule in Coding Standard (#197666)
This implements the accepted
[RFC](https://discourse.llvm.org/t/rfc-remove-80-column-limit-in-documentation-files/89678)
"Remove 80 column limit in documentation files."
Commit: 3eb9aacb7c47ac15085c4bfced48de9bcee912a3
https://github.com/llvm/llvm-project/commit/3eb9aacb7c47ac15085c4bfced48de9bcee912a3
Author: David Pagan <dave.pagan at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
Log Message:
-----------
[clang][CodeGen][NFC] Fixed typos in comments. (#197052)
Commit: 095faea999a2adaff9c54a5d7b7b1ef431db92ff
https://github.com/llvm/llvm-project/commit/095faea999a2adaff9c54a5d7b7b1ef431db92ff
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
A llvm/test/Transforms/SLPVectorizer/AArch64/slp-extval-struct-operand-no-scalar-reuse.ll
Log Message:
-----------
[SLP] Fix assertion "Deleting out-of-tree value" for struct-typed vectorized operands
When an external-use scalar had a struct-typed vectorized operand, OperandIsScalar
incorrectly returned true (because the struct scalar was in ValueToExtUses), causing
the scalar to be cloned into ExternalUsesAsOriginalScalar. The clone used the struct
scalar directly, but struct-typed vectorized scalars are deleted after vectorization
- their external-use handling erases the extractvalue user rather than replacing the
struct value via replaceAllUsesWith.
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/199679
Commit: e5f4f31b3508dd06598051039268c27498472218
https://github.com/llvm/llvm-project/commit/e5f4f31b3508dd06598051039268c27498472218
Author: Justin Lebar <justin.lebar at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/test/Transforms/JumpThreading/branch-debug-info2.ll
M llvm/test/Transforms/JumpThreading/select.ll
M llvm/test/Transforms/JumpThreading/stale-loop-info-after-unfold-select.ll
Log Message:
-----------
[JumpThreading] Freeze undef/poison select condition in unfoldSelectInstr (#199408)
When unfoldSelectInstr rewrites a select as a conditional branch, it
used SI->getCondition() directly, without freezing it first. A select
with an undef or poison condition does not immediately cause UB,
but branching on undef or poison does, so we need to freeze it.
This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.
Commit: 471244d790755842e1262b9c6a889186e0a6e078
https://github.com/llvm/llvm-project/commit/471244d790755842e1262b9c6a889186e0a6e078
Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/InferAlignment.cpp
A llvm/test/Transforms/InferAlignment/propagate-across-blocks.ll
Log Message:
-----------
[InferAlignment] Propagate alignment information across blocks (#198114)
This patch implements DT-based cross-block alignment propagation. The
algorithm processes the basic blocks in a depth-first traversal of DT.
The stack is emulated to avoid recursive visiting.
IR diff: https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/321.
Most of the improvement is useless, as it makes load/store instructions
overaligned. But several alignment checks are eliminated:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/321/commits/2ac31cb4f44261fa256d23061346af3aac73a41d.
Compile-time impact: +0.03%
https://llvm-compile-time-tracker.com/compare.php?from=f45f3ce5da9e35f819db9b8ed2775dac8c2b1171&to=93d511bc2a64792fcdb8d84b0b696a7c8d61ef40&stat=instructions%3Au
Commit: 8b2751198db37809936c4675bc45a96b4c6d41cb
https://github.com/llvm/llvm-project/commit/8b2751198db37809936c4675bc45a96b4c6d41cb
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll
Log Message:
-----------
[X86] Add test coverage showing failure to recognise VPSHLD/VPSHRD nodes as potential faux shuffles (#199673)
Commit: cb96a3edf7a81e75169fdcc057f3e19a1d09f73b
https://github.com/llvm/llvm-project/commit/cb96a3edf7a81e75169fdcc057f3e19a1d09f73b
Author: Yury Plyakhin <yury.plyakhin at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
R clang/test/Driver/clang-offload-bundler-asserts-on.c
R clang/test/Driver/clang-offload-bundler-standardize.c
R clang/test/Driver/clang-offload-bundler-zlib.c
R clang/test/Driver/clang-offload-bundler-zstd.c
R clang/test/Driver/clang-offload-bundler.c
R clang/test/Driver/fat-archive-unbundle-ext.c
R clang/test/Driver/linker-wrapper-canonical-prefixes.c
R clang/test/Driver/linker-wrapper-hip-amdgcnspirv.c
R clang/test/Driver/linker-wrapper-hip-no-rdc.c
R clang/test/Driver/linker-wrapper-image.c
R clang/test/Driver/linker-wrapper-llvm-help.c
R clang/test/Driver/linker-wrapper.c
R clang/test/Driver/nvlink-wrapper.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-canonical-prefixes.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-amdgcnspirv.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-llvm-help.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper.c
A clang/test/OffloadTools/clang-linker-wrapper/lit.local.cfg
A clang/test/OffloadTools/clang-linker-wrapper/openmp-spirv.cpp
A clang/test/OffloadTools/clang-nvlink-wrapper/nvlink-wrapper.c
A clang/test/OffloadTools/clang-offload-bundler/asserts-on.c
A clang/test/OffloadTools/clang-offload-bundler/basic.c
A clang/test/OffloadTools/clang-offload-bundler/fat-archive-unbundle-ext.c
A clang/test/OffloadTools/clang-offload-bundler/standardize.c
A clang/test/OffloadTools/clang-offload-bundler/zlib.c
A clang/test/OffloadTools/clang-offload-bundler/zstd.c
A clang/test/OffloadTools/clang-sycl-linker/basic.ll
A clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
A clang/test/OffloadTools/clang-sycl-linker/triple.ll
R clang/test/Tooling/clang-linker-wrapper-spirv.cpp
R clang/test/Tooling/clang-sycl-linker-split-mode.ll
R clang/test/Tooling/clang-sycl-linker-triple.ll
R clang/test/Tooling/clang-sycl-linker.ll
M clang/test/Tooling/lit.local.cfg
Log Message:
-----------
[clang][test] Move offload tools tests to clang/test/OffloadTools (#198434)
Tests for clang-offload-bundler, clang-linker-wrapper,
clang-nvlink-wrapper, and clang-sycl-linker were scattered across
clang/test/Driver/ and clang/test/Tooling/. Neither location was
appropriate: Driver/ is for testing the compiler driver, and Tooling/ is
for testing the LibTooling infrastructure.
Move them to clang/test/OffloadTools/ with one subdirectory per tool,
following the convention used by llvm/test/tools/. The tool-name prefix
is dropped from filenames since the containing directory already
identifies the tool.
The spirv-tools feature/substitution setup is carried over from
Tooling's lit.local.cfg into a new lit.local.cfg in
clang-linker-wrapper/, since the parent clang/test/lit.cfg.py does not
set up that feature. The dead spirv-tools block is removed from
Tooling/lit.local.cfg now that no tests there depend on it.
`clang-linker-wrapper-spirv.cpp` was relying on libomp in the
environment. It is now rewritten to run the `clang-linker-wrapper`
directly rather than going through the driver and added stub symbols
allow avoiding linking against OpenMP runtime libraries.
Commit: ca9884dd065961cb112f4940b3f80339765a0104
https://github.com/llvm/llvm-project/commit/ca9884dd065961cb112f4940b3f80339765a0104
Author: Yanzuo Liu <zwuis at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang-tools-extra/clangd/Selection.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclarationName.h
M clang/lib/Sema/SemaExprCXX.cpp
M clang/test/AST/ast-dump-expr-json.cpp
M clang/test/AST/ast-dump-expr.cpp
M clang/unittests/Tooling/Syntax/BuildTreeTest.cpp
Log Message:
-----------
[clang] Add missing type source info of `decltype` specifier in destructor call to AST (#197680)
The type source info will be stored in `MemberExpr::MemberDNLoc`.
This patch fixes the underlying issue of #195788.
Commit: fbbaa545ce1a8faebd453f9918513b7ec804671d
https://github.com/llvm/llvm-project/commit/fbbaa545ce1a8faebd453f9918513b7ec804671d
Author: Matthias Springer <me at m-sp.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
M mlir/test/Dialect/Async/async-to-async-runtime.mlir
Log Message:
-----------
[mlir][async] Lazily create the coroutine destroy-cleanup block (#199583)
`setupCoroMachinery` previously emitted a `cleanupForDestroy` block
unconditionally, alongside the normal `cleanup` block. That block is
only ever used as the "destroy" successor of an `async.coro.suspend`, so
for coroutines that never suspend (e.g. an `async.func` whose body
contains no `async.await`) it ended up unreachable in the lowered CFG.
Make `cleanupForDestroy` mirror the existing `setError` (and
`setupSetErrorBlock`) pattern and materialize it lazily via a new
`setupCleanupForDestroyBlock` helper, called only from the two places
(`outlineExecuteOp` and the `async.await` lowering) that actually wire
it up. Store the coroutine id on `CoroMachinery` so the helper can
rebuild the block contents without keeping the original `async.coro.id`
op around.
This change is in preparation of adding a new builtin token type. Dead
`async.coro.free` ops are inefficient and cause problems in the lowering
to LLVM.
Assisted-by: Opus 4.7
Commit: 3a25f7b645fa68343d548eb116d884fd1ebb3edb
https://github.com/llvm/llvm-project/commit/3a25f7b645fa68343d548eb116d884fd1ebb3edb
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/test/AST/ast-dump-decl.cpp
M clang/test/AST/ast-dump-linkage-internal.cpp
M clang/test/AST/ast-dump-linkage.cpp
M clang/test/AST/ast-dump-templates-pattern.cpp
Log Message:
-----------
[clang] preserve exact redeclaration for getTemplateInstantiationPattern (#199473)
This makes these functions not always return the definition if any. The
few users which depend on this are updated to fetch the definition
themselves.
Also fixes the VarDecl variant returning the queried declaration itself.
Commit: e8d5037b400dbe2afd4554ed1e1f38a697c62c36
https://github.com/llvm/llvm-project/commit/e8d5037b400dbe2afd4554ed1e1f38a697c62c36
Author: Matheus Izvekov <mizvekov at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A clang/test/ASTMerge/class-template-spec/Inputs/class-template-spec.cpp
A clang/test/ASTMerge/class-template-spec/test.cpp
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
Log Message:
-----------
[clang] NFC: readd test cases reverted in 79f4d8f014 (#199676)
This adds back the test cases reverted in 79f4d8f014
We need some sort of process to stop losing regression tests due to
reverts...
Commit: 721cddfd8f06dccae71196de7f0ae49ff54fe254
https://github.com/llvm/llvm-project/commit/721cddfd8f06dccae71196de7f0ae49ff54fe254
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll
Log Message:
-----------
[SLP][NFC]Add a test with inst count heuristic for AMDHSA, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/199693
Commit: bd9ce0ab1edd3c1e5557af8df883bac9b4c99150
https://github.com/llvm/llvm-project/commit/bd9ce0ab1edd3c1e5557af8df883bac9b4c99150
Author: Balázs Kéri <balazs.keri at ericsson.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
Log Message:
-----------
[clang][analyzer] Make CallAndMessage:ArgPointeeInitializedness released (NFC) (#199184)
The option was in `InAlpha` state but should be `Released` instead. It
was improved in changes #164600 and #173854.
Commit: 52aac75c005446e988f8dfe27edd41bd70e3ce68
https://github.com/llvm/llvm-project/commit/52aac75c005446e988f8dfe27edd41bd70e3ce68
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
Log Message:
-----------
[RISCV][GISel] Use sXLen member variable instead of creating it locally. NFC (#199594)
Commit: 6b17cf8d11ce2d8b37b5770a0b9f6082a3fc63e2
https://github.com/llvm/llvm-project/commit/6b17cf8d11ce2d8b37b5770a0b9f6082a3fc63e2
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
Log Message:
-----------
[RISCV][P-ext] Support packed SSHLSAT with non-constant splat shift amount. (#198937)
We can use the pssha instructions. These instructions look at the lower
8-bits of the shift amount and treat positive values as a left shift and
a negative value as a right shift.
Since out of bound shift amounts for SSHLSAT are poison, we can directly
pass the shift amount to the instruction.
Commit: fe4c2bb1b3d5626d7de8112e815b8548b20a81fe
https://github.com/llvm/llvm-project/commit/fe4c2bb1b3d5626d7de8112e815b8548b20a81fe
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
A mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
R mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
A mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
A mlir/test/Dialect/XeGPU/sg-to-lane-distribute.mlir
R mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
R mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
R mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir
R mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
R mlir/test/Dialect/XeGPU/xegpu-subgroup-distribute-no-arch.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
Log Message:
-----------
[mlir][xegpu] Deprecate XeGPUSubgroupDistribute and rename XeGPUSgToWiDistributeExperimental to XeGPUSgToLaneDistribute (#198027)
The XeGPUSubgroupDistribute pass is now fully superseded by the newer
subgroup-to-lane distribution flow, so this PR removes its
implementation & all associated tests.
The replacement pass XeGPUSgToWiDistributeExperimental is renamed to
XeGPUSgToLaneDistribute.
Commit: c927d44cb119a290b4946ebbd5547ca4f3f872a7
https://github.com/llvm/llvm-project/commit/c927d44cb119a290b4946ebbd5547ca4f3f872a7
Author: DeanSturtevant1 <dsturtevant at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
Revert "Revert "[libc] Port 2b2a63819f9f26d661bad5c269a03077d22ff6b4"" (#199681)
Reverts llvm/llvm-project#197857.
Original change relanded as #199570
Commit: 3718ab29aa885036143a630ecd53dea52c41b57c
https://github.com/llvm/llvm-project/commit/3718ab29aa885036143a630ecd53dea52c41b57c
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
Log Message:
-----------
[gn build] Port c437052c (#199709)
Commit: d1b31664ea1c8caeefc24c289bcc2617ae81a40b
https://github.com/llvm/llvm-project/commit/d1b31664ea1c8caeefc24c289bcc2617ae81a40b
Author: Simon Pilgrim <llvm-dev at redking.me.uk>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll
Log Message:
-----------
[X86] getFauxShuffleMask - add handling for X86ISD::VSHLD/VSHRD funnel shifts (#199707)
Another step towards #145276
Commit: 4acfc32f007528dbe5de20a163ccadfd4668a849
https://github.com/llvm/llvm-project/commit/4acfc32f007528dbe5de20a163ccadfd4668a849
Author: Arthur Eubanks <aeubanks at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/JumpThreading.cpp
M llvm/test/Transforms/JumpThreading/branch-debug-info2.ll
M llvm/test/Transforms/JumpThreading/select.ll
M llvm/test/Transforms/JumpThreading/stale-loop-info-after-unfold-select.ll
Log Message:
-----------
Revert "[JumpThreading] Freeze undef/poison select condition in unfoldSelectInstr" (#199713)
Reverts llvm/llvm-project#199408
Causes many crashes, e.g.
https://github.com/llvm/llvm-project/pull/199408#issuecomment-4545738591
Fixes https://github.com/llvm/llvm-project/issues/199702
Commit: 6fdfe1ead81f20ad5365de3f9313b9d658e40153
https://github.com/llvm/llvm-project/commit/6fdfe1ead81f20ad5365de3f9313b9d658e40153
Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/include/llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h
M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
M llvm/include/llvm/Transforms/Coroutines/CoroCleanup.h
M llvm/include/llvm/Transforms/Coroutines/CoroConditionalWrapper.h
M llvm/include/llvm/Transforms/Coroutines/CoroEarly.h
M llvm/include/llvm/Transforms/Coroutines/CoroElide.h
M llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
M llvm/include/llvm/Transforms/IPO/Annotation2Metadata.h
M llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h
M llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h
M llvm/include/llvm/Transforms/IPO/ConstantMerge.h
M llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h
M llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
M llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h
M llvm/include/llvm/Transforms/IPO/ExpandVariadics.h
M llvm/include/llvm/Transforms/IPO/FatLTOCleanup.h
M llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h
M llvm/include/llvm/Transforms/IPO/GlobalOpt.h
M llvm/include/llvm/Transforms/IPO/GlobalSplit.h
M llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
M llvm/include/llvm/Transforms/IPO/IROutliner.h
M llvm/include/llvm/Transforms/IPO/LoopExtractor.h
M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
M llvm/include/llvm/Transforms/IPO/OpenMPOpt.h
M llvm/include/llvm/Transforms/IPO/PartialInlining.h
M llvm/include/llvm/Transforms/IPO/SCCP.h
M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
M llvm/include/llvm/Transforms/Instrumentation/BlockCoverageInference.h
M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
M llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfLowering.h
M llvm/include/llvm/Transforms/Instrumentation/PGOForceFunctionAttrs.h
M llvm/include/llvm/Transforms/Scalar/ADCE.h
M llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
M llvm/include/llvm/Transforms/Scalar/AnnotationRemarks.h
M llvm/include/llvm/Transforms/Scalar/BDCE.h
M llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h
M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
M llvm/include/llvm/Transforms/Scalar/ConstraintElimination.h
M llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
M llvm/include/llvm/Transforms/Scalar/DCE.h
M llvm/include/llvm/Transforms/Scalar/DFAJumpThreading.h
M llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h
M llvm/include/llvm/Transforms/Scalar/DivRemPairs.h
M llvm/include/llvm/Transforms/Scalar/DropUnnecessaryAssumes.h
M llvm/include/llvm/Transforms/Scalar/ExpandMemCmp.h
M llvm/include/llvm/Transforms/Scalar/FlattenCFG.h
M llvm/include/llvm/Transforms/Scalar/Float2Int.h
M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
M llvm/include/llvm/Transforms/Scalar/GuardWidening.h
M llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h
M llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h
M llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h
M llvm/include/llvm/Transforms/Scalar/InferAddressSpaces.h
M llvm/include/llvm/Transforms/Scalar/InferAlignment.h
M llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h
M llvm/include/llvm/Transforms/Scalar/JumpTableToSwitch.h
M llvm/include/llvm/Transforms/Scalar/LICM.h
M llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
M llvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
M llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h
M llvm/include/llvm/Transforms/Scalar/LoopDeletion.h
M llvm/include/llvm/Transforms/Scalar/LoopDistribute.h
M llvm/include/llvm/Transforms/Scalar/LoopFlatten.h
M llvm/include/llvm/Transforms/Scalar/LoopFuse.h
M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
M llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h
M llvm/include/llvm/Transforms/Scalar/LoopInterchange.h
M llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h
M llvm/include/llvm/Transforms/Scalar/LoopPredication.h
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
M llvm/include/llvm/Transforms/Scalar/LoopSink.h
M llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h
M llvm/include/llvm/Transforms/Scalar/LoopTermFold.h
M llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
M llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
M llvm/include/llvm/Transforms/Scalar/LoopVersioningLICM.h
M llvm/include/llvm/Transforms/Scalar/LowerAtomicPass.h
M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
M llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
M llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h
M llvm/include/llvm/Transforms/Scalar/LowerWidenableCondition.h
M llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
M llvm/include/llvm/Transforms/Scalar/MergeICmps.h
M llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
M llvm/include/llvm/Transforms/Scalar/NewGVN.h
M llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
M llvm/include/llvm/Transforms/Scalar/PlaceSafepoints.h
M llvm/include/llvm/Transforms/Scalar/Reg2Mem.h
M llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h
M llvm/include/llvm/Transforms/Scalar/SROA.h
M llvm/include/llvm/Transforms/Scalar/ScalarizeMaskedMemIntrin.h
M llvm/include/llvm/Transforms/Scalar/SeparateConstOffsetFromGEP.h
M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
M llvm/include/llvm/Transforms/Scalar/Sink.h
M llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h
M llvm/include/llvm/Transforms/Scalar/StraightLineStrengthReduce.h
M llvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
M llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h
M llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
M llvm/include/llvm/Transforms/Utils/AddDiscriminators.h
M llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h
M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
M llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
M llvm/include/llvm/Transforms/Utils/CanonicalizeFreezeInLoops.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/include/llvm/Transforms/Utils/CountVisits.h
M llvm/include/llvm/Transforms/Utils/CtorUtils.h
M llvm/include/llvm/Transforms/Utils/DXILUpgrade.h
M llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
M llvm/include/llvm/Transforms/Utils/DeclareRuntimeLibcalls.h
M llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h
M llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h
M llvm/include/llvm/Transforms/Utils/Evaluator.h
M llvm/include/llvm/Transforms/Utils/FixIrreducible.h
M llvm/include/llvm/Transforms/Utils/GlobalStatus.h
M llvm/include/llvm/Transforms/Utils/GuardUtils.h
M llvm/include/llvm/Transforms/Utils/HelloWorld.h
M llvm/include/llvm/Transforms/Utils/IRNormalizer.h
M llvm/include/llvm/Transforms/Utils/InjectTLIMappings.h
M llvm/include/llvm/Transforms/Utils/InstructionNamer.h
M llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h
M llvm/include/llvm/Transforms/Utils/LoopConstrainer.h
M llvm/include/llvm/Transforms/Utils/LoopPeel.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/include/llvm/Transforms/Utils/LoopVersioning.h
M llvm/include/llvm/Transforms/Utils/LowerAtomic.h
M llvm/include/llvm/Transforms/Utils/LowerGlobalDtors.h
M llvm/include/llvm/Transforms/Utils/LowerIFunc.h
M llvm/include/llvm/Transforms/Utils/LowerInvoke.h
M llvm/include/llvm/Transforms/Utils/LowerSwitch.h
M llvm/include/llvm/Transforms/Utils/LowerVectorIntrinsics.h
M llvm/include/llvm/Transforms/Utils/MatrixUtils.h
M llvm/include/llvm/Transforms/Utils/MemoryOpRemark.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Utils/MetaRenamer.h
M llvm/include/llvm/Transforms/Utils/MisExpect.h
M llvm/include/llvm/Transforms/Utils/MoveAutoInit.h
M llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h
M llvm/include/llvm/Transforms/Utils/RelLookupTableConverter.h
M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
M llvm/include/llvm/Transforms/Utils/SampleProfileInference.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseUtil.h
M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
M llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h
M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
M llvm/include/llvm/Transforms/Utils/StripConvergenceIntrinsics.h
M llvm/include/llvm/Transforms/Utils/StripGCRelocates.h
M llvm/include/llvm/Transforms/Utils/StripNonLineTableDebugInfo.h
M llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
M llvm/include/llvm/Transforms/Utils/UnifyLoopExits.h
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/include/llvm/Transforms/Utils/VNCoercion.h
M llvm/include/llvm/Transforms/Vectorize/LoopIdiomVectorize.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.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/Passes/TransactionAcceptOrRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/include/llvm/Transforms/Vectorize/VectorCombine.h
Log Message:
-----------
llvm: Fix most LLVM_ABI annotations in Transforms (#199042)
This updates most LLVM_ABI annotations in the Transforms headers to
match expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
Commit: 26f19eed998d513c1200f46733db14d73e2b3a71
https://github.com/llvm/llvm-project/commit/26f19eed998d513c1200f46733db14d73e2b3a71
Author: Matthias Wippich <mfwippich at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/test/SemaCXX/cxx2c-decomposition.cpp
Log Message:
-----------
[clang] propagate constexpr/constinit to binding VarDecl (#195860)
This patch implements one of the missing parts of P2686. This is
required to make the test case from
[cwg3135](https://cplusplus.github.io/CWG/issues/3135.html) (and
likewise the examples of [P1789](https://wg21.link/p1789) work).
Commit: 551ff98cc3e6c9d6791c8606f7b3e2ad6d7a438c
https://github.com/llvm/llvm-project/commit/551ff98cc3e6c9d6791c8606f7b3e2ad6d7a438c
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 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/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll
Log Message:
-----------
[SLP][TTI][AMDGPU] Add TTI hook preferSLPInstCountCheck for per-target opt-out (#199696)
Add `preferSLPInstCountCheck()` to TTI so targets can opt out of the
2-element inst-count heuristic in `getTreeCost()`. Default returns
`true`
(existing behavior unchanged). `getTreeCost()` ANDs the existing
`SLPInstCountCheck` flag with the hook result. `GCNTTIImpl` returns
`false` for gfx940/gfx941/gfx942 and gfx950.
Fixes #199662.
Commit: d685a3b0e30f1375acc2796f9ce9f090cec85332
https://github.com/llvm/llvm-project/commit/d685a3b0e30f1375acc2796f9ce9f090cec85332
Author: Tom Tromey <tromey at adacore.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/utils/emacs/llvm-mode.el
Log Message:
-----------
Use symbol matching for types in llvm-mode.el (#199250)
llvm-mode.el does this:
(defconst llvm-mode-primitive-type-regexp
(concat
"\\(i[0-9]+\\|"
(regexp-opt '(...strings...) t)
Here the "t" means to wrap the regexp in "\(..\)". However, this means
that in assembly like:
!10 = distinct !DICompositeType(tag: DW_TAG_structure_type, ...
.. the "type" in "DW_TAG_structure_type" will be highlighted
differently.
The fix is to tell regexp-opt to only match complete symbols.
Commit: 44da8601d71ea712b92589bc83f498d6e952c4f9
https://github.com/llvm/llvm-project/commit/44da8601d71ea712b92589bc83f498d6e952c4f9
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
M mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
Log Message:
-----------
[MLIR][XeGPU] Clone trivial operations with multiple consumers in layout propagation to avoid layout conflict (#197514)
In XeGPU layout propagation, when a trivially rematerializable producer
(e.g. a CSE-merged vector.step) has multiple uses demanding distinct
layouts, clone the producer once per required layout so each def retains
a single well-defined layout. This avoids inserting a bridging
xegpu.convert_layout whose WG-to-SG lowering would otherwise force a
costly SLM round-trip to redistribute data across subgroups.
Commit: eca8638e130325d108e39aab5654bae8f0a06209
https://github.com/llvm/llvm-project/commit/eca8638e130325d108e39aab5654bae8f0a06209
Author: Guy David <guyda96 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
Log Message:
-----------
[ORC] Avoid iterator invalidation when erasing image info symbols (#199655)
processObjCImageInfo iterated the section's DenseSet of symbols while
calling removeDefinedSymbol, which erases from that same set. Re-fetch
begin() each iteration so the iterator is always fresh.
Started with https://github.com/llvm/llvm-project/pull/199369.
Commit: 4b7ec0c715398d970a2669573f931e167b532e75
https://github.com/llvm/llvm-project/commit/4b7ec0c715398d970a2669573f931e167b532e75
Author: Guy David <guyda96 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Analysis/GlobalsModRef.cpp
Log Message:
-----------
[GlobalsModRef] Don't erase while iterating (#199656)
The loop erases from AllocsForIndirectGlobals while walking it, which
now hits the iterator invalidation assert in DenseMap::erase. Use
remove_if instead.
Started with https://github.com/llvm/llvm-project/pull/199369.
Commit: 68ebd09d5e19c30a79d416940d3400b5637b0f69
https://github.com/llvm/llvm-project/commit/68ebd09d5e19c30a79d416940d3400b5637b0f69
Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/MachO/InputSection.h
M lld/docs/ReleaseNotes.rst
M lld/test/MachO/arm64-thunks.s
Log Message:
-----------
[lld][macho] Restructure thunk generation algorithm (#193367)
Refactor the algorithm that generates thunks for Mach-O. Prior to this
PR, sections were finalized as early as possible while still leaving
enough room (`slopScale * thunkSize`) for new thunks to be created.
There was also additional bookkeeping
(`estimateBranchTargetThresholdVA()`) so that once all sections were
finalized, we could estimate the end of the stubs sections. This avoided
new thunks to stubs sections in some cases.
In this PR, I've restructured the algorithm to avoid eagerly finalizing
sections. Instead, I maintain a `branchesToProcess` queue to hold
branches that could need to use a thunk. I avoid processing this branch
until its target has been finalized, or if finalizing another section
not leave enough room for new thunks (computed using `slopScale`). This
increases the likelihood that a branch will be direct, rather than use a
thunk, as reflected in the test change. Once all sections are finalized,
we can compute an upper bound on the number of thunks that need to be
created. We use this to estimate the end of the stubs section, allowing
us to keep some direct branches.
For testing, I linked a large binary before and after this PR. Results
show a 0.80% reduction in the number of thunks and 6.6% reduction in
number of thunk calls. The change in the duration of the link was
negligible.
| | Thunk Count | Thunk Calls |
|-| - | - |
| Base | 138499 | 1707623 |
| New | 137395 | 1595313 |
Commit: 6e94fa069fa912cbfa6ec7f7d1fbafe6bed72f47
https://github.com/llvm/llvm-project/commit/6e94fa069fa912cbfa6ec7f7d1fbafe6bed72f47
Author: David Rivera <davidriverg at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/CIR/MissingFeatures.h
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/test/CIR/CodeGenCUDA/device-stub.cu
Log Message:
-----------
[CIR][CUDA] Emit global var registration (#199270)
Commit: 7146087fb49476055704f92e24295c549c89fa21
https://github.com/llvm/llvm-project/commit/7146087fb49476055704f92e24295c549c89fa21
Author: David Green <david.green at arm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-compares.ll
Log Message:
-----------
[AArch64][DAG] Use getSetCCResultType in PromoteSETCC (#198320)
During the promotion of a v16bf16 vector setcc with 256 bit sve, a
v16i16 setcc(v16f32) is created, that gets legalized to a v8i16
setcc(v8f32), which trips up an assert in the aarch64 custom lowering to
vector registers. It could be solved elsewhere but this addresses it by
making sure that when the f32 setcc is created, the result type matches
getSetCCResultType.
The mvn+xtn vs xtn+mvn is mostly benign, and should both probably be a
subhn if it can be done without causing regressions.
Commit: e526b2003977f45bb8809480320e74d3f8e19c69
https://github.com/llvm/llvm-project/commit/e526b2003977f45bb8809480320e74d3f8e19c69
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
Log Message:
-----------
[SLP] Add new tests for instrinsics in getVectorElementSize() (#199612)
More tests for additions to #199129.
Commit: a917c00ab13fb7d374428563a1b8fa0eef1e35b1
https://github.com/llvm/llvm-project/commit/a917c00ab13fb7d374428563a1b8fa0eef1e35b1
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M libcxx/include/__algorithm/copy_if.h
M libcxx/include/__algorithm/partial_sort_copy.h
M libcxx/include/__algorithm/ranges_copy_if.h
M libcxx/include/__algorithm/ranges_partial_sort_copy.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/unique_copy.h
M libcxx/include/__memory/ranges_uninitialized_algorithms.h
M libcxx/include/__memory/uninitialized_algorithms.h
Log Message:
-----------
[libc++] Use __in_out_result in the remaining appropriate algorithms (#198156)
We've already switched some algorithms to use `__in_out_result` instead
of `pair` as the return type. This updates the remaining appropriate
algorithms.
Commit: 990e35ea9d80e9ef2dc9a4fc1cc2a386d538b576
https://github.com/llvm/llvm-project/commit/990e35ea9d80e9ef2dc9a4fc1cc2a386d538b576
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes 44da860 (#199723)
This fixes 44da8601d71ea712b92589bc83f498d6e952c4f9.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 80a5207d940bcffa4f4339111dca65a4fcca8926
https://github.com/llvm/llvm-project/commit/80a5207d940bcffa4f4339111dca65a4fcca8926
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
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/VPlanRecipes.cpp
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
M llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
Log Message:
-----------
[VPlan] Thread scalar types through VPInstruction and VPPhi. (NFC) (#199378)
Update VPInstruction and VPPhi to populate VPSingleDefValue's scalar
type. For most opcodes, the scalar type is determine from the operands,
via computeScalarTypeForInstruction, which roughly matches to removed
inference code. For some opcodes, like FirstActiveLane, the type must be
provided explicitly.
PR: https://github.com/llvm/llvm-project/pull/199378
Commit: b395ca789219aedfe856fc89329840cbee9fae8d
https://github.com/llvm/llvm-project/commit/b395ca789219aedfe856fc89329840cbee9fae8d
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll
Log Message:
-----------
[SPIR-V] Fix legalized load of single-element vector from array (#198330)
Commit: bacd876134494c69d02b4509e125c47b5e86d3d2
https://github.com/llvm/llvm-project/commit/bacd876134494c69d02b4509e125c47b5e86d3d2
Author: Karim Alweheshy <9082720+karim-alweheshy at users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lld/MachO/BPSectionOrderer.cpp
A lld/test/MachO/eh-frame-ordering.s
Log Message:
-----------
[lld][MachO] Preserve __eh_frame ordering during BP section sorting (#191412)
The Balanced Partitioning section orderer collects all live
`ConcatInputSection`s as candidates for content-similarity reordering.
This includes `__eh_frame` CIE and FDE records, which have internal
ordering constraints: each FDE contains a backward-relative 32-bit
offset to its parent CIE, requiring CIEs to precede their FDEs.
When the BP orderer assigns priorities to `__eh_frame` subsections and
`Writer.cpp` sorts by those priorities, FDEs can end up before their
parent CIEs. The resulting CIE-pointer offsets resolve correctly with
32-bit wrapping arithmetic but underflow with 64-bit pointer arithmetic,
causing DWARF consumers (crash reporters, debuggers) to silently lose
unwind data.
## Fix
Have the BP orderer skip the Mach-O `__TEXT,__eh_frame` section
explicitly before collecting candidate subsections, preserving the
existing CIE/FDE order without adding state to `Section`.
This is the only MachO section with this constraint:
- `__unwind_info` is a `SyntheticSection` (not a `ConcatOutputSection`),
so it never enters the BP pipeline
- `__gcc_except_tab` LSDA entries are referenced by absolute offset, so
reordering is safe
- `-order_file` is unaffected because it assigns priorities through
symbol definitions (which live in `__text`, not `__eh_frame`). Only the
BP orderer enumerates sections directly.
## Production impact
Verified on a large iOS application (~218 MB binary, ~34,000 FDEs)
linked with `lld` + `--bp-compression-sort=both`.
### Static analysis of `__eh_frame`
Simulating 64-bit CIE pointer resolution on the output binary across
multiple builds:
| Build | `__eh_frame` layout | FDEs resolved (64-bit) | FDEs failed |
|---|---|---|---|
| lld + BP sort | FDEs first | 15 / 34,257 | **34,242 (99.96%)** |
| lld + fix | CIEs first | 30,558 / 30,558 | **0** |
### Runtime verification
Proxied crash report uploads from a device running both the affected and
fixed binaries:
| | Affected build | Fixed build |
|---|---|---|
| Threads captured | 3 | 24 |
| Total frames | 28 | 135 |
| Background threads | 0-2 | 23 |
The affected build lost ~85% of thread data. The crash reporter could
only unwind the crashed thread (via compact unwind). All background
thread unwind data was silently dropped.
## Reproducer
Minimal test case (ARM64). Requires `--bp-compression-sort=both` to
trigger:
```bash
llvm-mc -filetype=obj -emit-compact-unwind-non-canonical=true \
-triple=arm64-apple-macos11.0 test.s -o test.o
ld64.lld -arch arm64 -platform_version macos 11.0 11.0 \
-syslibroot $(xcrun --show-sdk-path) -lSystem -lc++ \
test.o -o test --bp-compression-sort=both
llvm-objdump --dwarf=frames test
# Without fix: "error: parsing FDE data at 0x0 failed due to missing CIE"
# With fix: CIE records correctly precede their FDEs
```
Standalone reproducer with 64-bit CIE simulation script:
https://gist.github.com/karim-alweheshy/ae28196c4fbb295f81cc793cfbe0c1b7
## Test
The lit test creates multiple functions with `cfi_escape` (forcing DWARF
unwind mode) and different personality functions (producing separate
CIEs), then links with `--bp-compression-sort=both`. Verified on both
x86_64 and arm64.
Made with [Cursor](https://cursor.com)
---------
Co-authored-by: Karim Alweheshy <karim.alweheshy at reddit.com>
Co-authored-by: Ellis Hoag <ellis.sparky.hoag at gmail.com>
Commit: 1869d9925f5d278c607eb2859ab413ba15438c50
https://github.com/llvm/llvm-project/commit/1869d9925f5d278c607eb2859ab413ba15438c50
Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/LangRef.rst
M llvm/include/llvm/IR/Intrinsics.td
Log Message:
-----------
Update `memset.inline` third argument documentation (#199725)
Similar to `memcpy.inline`, `memset.inline`'s size argument doesn't need
to be a constant. Checked by the test
Transforms/PreISelIntrinsicLowering/X86/memset-inline-non-constant-len.ll.
Commit: 460556ae66e45b203f49c1c43878b4e0ef6d0f49
https://github.com/llvm/llvm-project/commit/460556ae66e45b203f49c1c43878b4e0ef6d0f49
Author: Min-Yih Hsu <min.hsu at sifive.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp
Log Message:
-----------
[ORC] Shutdown the socket FD before closing it in FDSimpleRemoteEPCTransport (#196835)
It is totally possible that when
`FDSimpleRemoteEPCTransport::disconnect` is called,
`FDSimpleRemoteEPCTransport::listenLoop` is still reading on the socket
FD the former is closing. On Linux, closing a socket FD when it is being
read by another thread is an undefined behavior I believe. And on modern
kernels, the reading thread will not be waken up, so `listenLoop` will
be blocked forever and preventing the process from exiting.
This patch fixes this issue by calling `shutdown(2)` on the socket FDs
before closing them.
Commit: 4bc1cd92e41f682a5aa49fd5ca10a2002d8470ba
https://github.com/llvm/llvm-project/commit/4bc1cd92e41f682a5aa49fd5ca10a2002d8470ba
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/release-binaries.yml
Log Message:
-----------
workflows/release-binaries: Fix yaml error (#199735)
This was introduced by: 25294a2fffcf40cbd8b6743d78524badeded7446
Commit: e925643b1e7fc936955c0cc01c2c3ce1abd2f4ce
https://github.com/llvm/llvm-project/commit/e925643b1e7fc936955c0cc01c2c3ce1abd2f4ce
Author: Carlos Seo <carlos.seo at linaro.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M flang/lib/Semantics/check-omp-structure.cpp
A flang/test/Semantics/OpenMP/declare-simd-interface-body.f90
M flang/test/Semantics/OpenMP/linear-clause03.f90
Log Message:
-----------
[flang][OpenMP] Warn that declare simd in an interface body has no effect (#199248)
Follow-up to the crash fix for #192581. A DECLARE SIMD directive may
legally appear in the specification part of an interface body, but it
applies to the external procedure being declared rather than to any
definition in this compilation. Flang does not propagate the directive
to callers, so it has no effect and is silently dropped during lowering.
Detect this in semantics by checking whether the program unit containing
the directive is an interface body (SubprogramDetails::isInterface())
and emit an -Wopenmp-usage warning so the user knows the directive is
ignored.
Updates #192581
Commit: ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
https://github.com/llvm/llvm-project/commit/ae0dc3104bf5a53a69c4ab5bce6e3a5365fa7740
Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Semantics/openmp-utils.cpp
Log Message:
-----------
[flang][OpenMP] Make `iv` const-reference to original parser::Name (#199727)
Merging since this is a trivial change.
Commit: 041c5e0e06c9aa9581cd4714b93d89422741bab8
https://github.com/llvm/llvm-project/commit/041c5e0e06c9aa9581cd4714b93d89422741bab8
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
Log Message:
-----------
[VPlan] Add missing maybe_unsused to OpTy (NFC). (#199734)
This fixes a warning when building w/o assertions.
https://lab.llvm.org/buildbot/#/builders/228/builds/76
Commit: 196c7018fc11e40d69b476562a105023e56e72a5
https://github.com/llvm/llvm-project/commit/196c7018fc11e40d69b476562a105023e56e72a5
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/test/Dialect/MemRef/flatten_memref.mlir
M mlir/test/Dialect/Vector/flatten-memref-and-emulate-narrow-types.mlir
Log Message:
-----------
[mlir][MemRef] Move FlattenMemRefs to interfaces (#198625)
Use IndexedAccessOpInterface for indexed memory operations and
VectorTransferOpInterface update methods for vector transfers ops. Add
an IndexedMemCopyOpInterface-based flattening pattern for DMA-like
operations.
This gets rid of the hardcoded operation list in the patterns, allowing
dialects like AMDGPU to transparently work with memref flattening.
As a consequence, the specialized vector- and memref-dialect only
constructors that only load a subset of the flattening patterns are
removed.
Also adds a max() method to SaturatedInteger because it was useful for
computing the size of a flat memref.
---------
Co-authored-by: Codex <codex at openai.com>
Commit: da57dc996221b505a16d9827474b086347eb25e4
https://github.com/llvm/llvm-project/commit/da57dc996221b505a16d9827474b086347eb25e4
Author: Domenic Nutile <domenic.nutile at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
Log Message:
-----------
[AMDGPU][True16] Legalize extloads into 16-bit registers (#198670)
<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
Stack PRs:
https://github.com/llvm/llvm-project/pull/198669
https://github.com/llvm/llvm-project/pull/198671
See https://github.com/llvm/llvm-project/pull/195289 for previous
discussion
---------
Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>
Co-authored-by: Domenic Nutile <domenic.nutile at amd.com>
Commit: 9ec4c66daffdf2fc740c2429a4d1ec3ff4d997b0
https://github.com/llvm/llvm-project/commit/9ec4c66daffdf2fc740c2429a4d1ec3ff4d997b0
Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/AMDGPUUsage.rst
M llvm/lib/IR/Type.cpp
M llvm/test/Assembler/target-type-param-errors.ll
A llvm/test/Verifier/amdgpu-stridemark-structured-gep.ll
A llvm/test/Verifier/amdgpu-stridemark-tokenlike.ll
M llvm/test/Verifier/structured-gep-indices-bad.ll
Log Message:
-----------
[AMDGPU] Lay groundwork for stridemark type / addrspace(9) via sgep (#198930)
This commit introduces and documents the `amdgpu.stridemark` target
type, which is used to express when a structured.gep intrinsic is being
used to increment/decrement the index part of a `ptr addrspace(9)` (as
opposed to GEP, which manipulates the offset part)
Future PRs will add inbounds/nusw/nuw support to structured GEP to
enable more efficient code generation and then will implement a lowering
of these structured GEPs to struct.buffer intrinsics.
Commit: 31111955fc5c182f40080d3a9a0dc2ab4e175cf1
https://github.com/llvm/llvm-project/commit/31111955fc5c182f40080d3a9a0dc2ab4e175cf1
Author: Alex Langford <alangford at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/posix/DomainSocket.cpp
M lldb/unittests/Host/SocketTest.cpp
Log Message:
-----------
[lldb] Set SO_NOSIGPIPE on platforms that support it (#198044)
On macOS, I've seen instances where debugserver goes down very quickly
after it starts up (less than 100ms). Normally, LLDB is able to detect
when debugserver goes down and report it without bringing down the
entire debug session. However that's not happening here. My best guess
is that debugserver is going down before LLDB is ready to react to it.
To mitigate this scenario, adopt SO_NOSIGPIPE. Note that this mostly
matters for tools that embed liblldb. The LLDB driver ignores all
SIGPIPEs.
rdar://173516461
Commit: 09709d7f5357c843c596db34721aa5d85e06323c
https://github.com/llvm/llvm-project/commit/09709d7f5357c843c596db34721aa5d85e06323c
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/libc-shared-tests.yml
Log Message:
-----------
[Github] Pin container image reference in libc-shared-tests (#199737)
Pinned to the image used in the last successful workflow run.
Introduced in c32de3e3759c3368978535e4ff4fb83323219fb0.
Commit: 2a80a9d52ee17a2a3188f52a3befcb2e8ed57ae6
https://github.com/llvm/llvm-project/commit/2a80a9d52ee17a2a3188f52a3befcb2e8ed57ae6
Author: Ziqing Luo <ziqing_luo at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/test/Modules/safe_buffers_optout.cpp
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-complex.cpp
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files-2.cpp
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-issue-79379.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-pch.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-template-instantiation-notes.cpp
Log Message:
-----------
[-Wunsafe-buffer-usage] Move warning-only analysis back to function-based (#198006)
Move the warning-only analysis back to the end of parsing each Decl.
The warning-only analysis no longer does any extra AST deserialization.
Pre-compiled code will only be analyzed once during its own compilation.
When `-fsafe-buffer-usage-suggestions` is used, the behavior is the
same as before, because it requires visibility of the whole
translation unit.
rdar://177185295
Also fix rdar://107480207 & rdar://176992568 for the warning-only case.
Commit: 85717da6350cfc3de1d166fcef661abadb377fcf
https://github.com/llvm/llvm-project/commit/85717da6350cfc3de1d166fcef661abadb377fcf
Author: Keith Smiley <keithbsmiley at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Options/Options.td
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/test/DebugInfo/Generic/sysroot-sdk.c
M clang/test/Modules/debug-info-moduleimport.m
M lldb/test/API/lang/objc/modules-auto-import/Makefile
M lldb/test/API/lang/objc/modules-auto-import/TestModulesAutoImport.py
Log Message:
-----------
[clang] Add -fno-debug-record-sysroot (#192541)
This enables excluding the absolute path to the sysroot from debug info
for reproducible builds. These fields are used by lldb, which also has
fallbacks since it's possible these paths don't exist on the machine
doing the debugging when built remotely anyways.
This was also possible using
`-fdebug-prefix-map=/path/to/Xcode.app=/some/path`
but depending on the environment you might not be able to easily pass
that with the user specific developer directory path.
Assisted by: claude
Commit: 769ffe95aac091593563cb2a8cc282b0b6dd2099
https://github.com/llvm/llvm-project/commit/769ffe95aac091593563cb2a8cc282b0b6dd2099
Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
Log Message:
-----------
[lldb-dap][NFC] Use GetStringValue helper (#199672)
I noticed some inconsistency in working with
`SBStructuredData.GetStringValue` (e.g. use `length + 1` or `length`),
so it would be better to remove that code duplication and use common
helper (`GetStringValue`) to do this routine.
Commit: 461f816d44203c3644b30bd3e42eb7c86c23a0f2
https://github.com/llvm/llvm-project/commit/461f816d44203c3644b30bd3e42eb7c86c23a0f2
Author: Finn Plummer <mail at inbelic.dev>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.h
M clang/test/CodeGenDirectX/Builtins/dot2add.c
M clang/test/CodeGenHLSL/ArrayAssignable.logicalptr.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/ArrayReturn.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
M clang/test/CodeGenHLSL/BoolMatrix.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
M clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
M clang/test/CodeGenHLSL/builtins/BoolSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/f16tof32-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/f16tof32.hlsl
M clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/mad.hlsl
M clang/test/CodeGenHLSL/convergence/cf.for.plain.hlsl
M clang/test/CodeGenHLSL/convergence/do.while.hlsl
M clang/test/CodeGenHLSL/convergence/entry.point.hlsl
M clang/test/CodeGenHLSL/convergence/for.hlsl
M clang/test/CodeGenHLSL/convergence/global_array.hlsl
M clang/test/CodeGenHLSL/convergence/while.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-store.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-methods.hlsl
M clang/test/CodeGenHLSL/resources/CBufferMatrixSingleSubscriptSwizzle.hlsl
M clang/test/CodeGenHLSL/resources/MatrixElement_cbuffer.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/resources/Texture2D-Mips.hlsl
M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs-array.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs-inheritance.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
M clang/test/CodeGenHLSL/this-assignment.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
M clang/test/SemaHLSL/Resources/static_resources.hlsl
A llvm/test/Transforms/IndVarSimplify/convergent-controlled-loop.ll
A llvm/test/Transforms/LoopRotate/convergent-controlled.ll
A llvm/test/Transforms/SimpleLoopUnswitch/convergent-controlled.ll
Log Message:
-----------
Reland "[HLSL][DirectX] Emit convergence control tokens when targeting DirectX" (#194452)
The initial landing surfaced 3 somewhat orthogonal issues related to
loop unrolling. These are addressed:
[here](https://github.com/llvm/llvm-project/pull/193592),
[here](https://github.com/llvm/llvm-project/pull/193593) and
[here](https://github.com/llvm/llvm-project/pull/193590).
These caused these
[tests](https://github.com/llvm/llvm-project/actions/runs/24577221310/job/71865579618#step:8:87913)
to fail in the offload test suite.
We can verify that these are now passing as expected (fixing any of the
3 issues would resolve this and allow us to reland)
Some additional tests were added since the revert that are now accounted
for and updated in the reland fixes commit.
This relands https://github.com/llvm/llvm-project/pull/188792
Commit: 631d16eaaa88ab76feaa6c672ce4a4ca4bfcf14b
https://github.com/llvm/llvm-project/commit/631d16eaaa88ab76feaa6c672ce4a4ca4bfcf14b
Author: Ziqing Luo <ziqing_luo at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
Log Message:
-----------
[SSAF][WPA] Bounds propagation graph is a supergraph of the pointer-flow graph (#198889)
Background: The whole-program UnsafeBufferReachableAnalysis propagates
bounds between pointers. It uses the pointer-flow graph extracted and
linked from translation units.
This commit patches the gap between the semantics of bounds propagation
and pointer-flow: the bounds propagation graph is a super graph of the
pointer-flow graph in that a pointer-flow graph edge `(src, i) -> (dst,
j)` is the projection of a finite set of bounds propagation graph edges
`{(src, i+d) -> (dst, j+d) | 0 <= d < UB}` for a small constant upper
bound UB. See the following example for the idea:
```
void f(int ***p, int **q) {
*p = q;
(**p)[5] = 0;
}
```
There is one edge for the static pointer assignment: '(p, 2) -> (q, 1)'.
In terms of bounds propagation, this assignment implies that if 'p' at
pointer level 2 requires bounds, 'q' at pointer level 1 must also have
them. Furthermore, this relationship propagates to deeper indirection
levels: if 'p' at level 3 requires bounds (due to '(**p)[5]'), so does
'q' at level 2.
Commit: 6d99fcb5c8a2a4a71a4c77a7074776f535ed6a82
https://github.com/llvm/llvm-project/commit/6d99fcb5c8a2a4a71a4c77a7074776f535ed6a82
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
Log Message:
-----------
[libc++] Mark string.capacity/over_max_size.pass.cpp as UNSUPPORTED on old dylibs (#199682)
This test is currently failing in the CI for unknown reasons, likely
related to the setup and not a recent patch. Disable it for now to get
the CI green again.
Commit: 95cb4d4b536af5c6f462e7a2c6ad2dd14c2701b7
https://github.com/llvm/llvm-project/commit/95cb4d4b536af5c6f462e7a2c6ad2dd14c2701b7
Author: vangthao95 <vang.thao at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll
Log Message:
-----------
AMDGPU/GlobalISel: RegBankLegalize rules for wave_shuffle (#196412)
Add uniform and divergent RegBankLegalize rules for wave shuffle. When
wave_shuffle is uniform, it is folded by AMDGPUUniformIntrinsicCombine
before reaching RegBankLegalize, to its value operand when value is
uniform, or to amdgcn_readlane when only idx is uniform. Add a test to
disable UniformIntrinsicCombine so we can verify and test for uniform
rule.
Commit: ff243860d7934d763dea4f3fa345b4bfef6d393c
https://github.com/llvm/llvm-project/commit/ff243860d7934d763dea4f3fa345b4bfef6d393c
Author: Liza Burakova <liza at chromium.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lld/MachO/LTO.cpp
A lld/test/MachO/Inputs/large-lto-object.ll
M lld/test/MachO/lto-object-path.ll
Log Message:
-----------
[lld][MachO] Fix SIGBUS crash in saveOrHardlinkBuffer (#198381)
This change removes a hardlink in saveOrHardlinkBuffer if the
hardlink already exists.
On Mac, -object_path_lto files are hardlinked to the cache when
possible. If the hardlink fails, the saveOrHardlinkBuffer method
falls back to saveBuffer instead.
saveBuffer() opens the file that is being written to as a
raw_fd_ostream object, which truncates a file when opening if the
file already exists.
Most of the time this is not an issue, however, if the hardlink
fails because it actually already exists, AND the hardlink exists
specifically between the -object_path_lto file and the cache file,
then when the file is opened and truncated, we also accidentally
truncate the file we are trying to read from.
This fixes a recurring issue Chromium saw in buildbots that
occassionally hit the above circumstances to cause the crash.
Chromium bug for reference is crbug.com/40060675.
This test adds a new file with a large-ish array (32KB) to ensure
the file is large enough to be mmap'd during the linking process.
This was necessary to reproduce the crash, as smaller files were
not mmap'd. The SIGBUS crash only occurs when the file is mmap'd
then truncated.
Commit: 8d2f190609b680cca5829e77f68b45798cd79444
https://github.com/llvm/llvm-project/commit/8d2f190609b680cca5829e77f68b45798cd79444
Author: Fan Mo <w007878 at hotmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Sema/SemaOpenACCClause.cpp
A clang/test/SemaOpenACC/compute-construct-reduction-vla.c
A clang/test/SemaOpenACC/compute-construct-reduction-vla.cpp
Log Message:
-----------
[clang][SemaOpenACC] Reject VLA reduction (#199178)
`GenerateReductionInitRecipeExpr` only handled `ConstantArrayType` when
walking the operand type to build an InitListExpr. A VariableArrayType
`(int arr[i+1])` fell through to the final else branch and tripped
`assert(Ty->isScalarType())`.
Rather than silently accepting VLAs (which have no reasonable lowering.
unlike pointers, there is an expectation of initialized values,but we
cannot statically enumerate elements), reject them outright in
`CheckVarType` with a new diagnostic err_acc_reduction_vla. This is
consistent with the fact that neither codegen nor lowering currently
supports VLA reductions, and other compilers (GCC crashes, NVC++
silently ignores) do not meaningfully handle them either. The fix
upgrades the existing warning path for non-constant arrays in
`CheckVarType` to an error when the clause kind is Reduction, so VLAs
never reach `GenerateReductionInitRecipeExpr`.
Reproducer:
```c
void foo(void) {
int i;
int arr[i + 1];
#pragma acc parallel reduction(& : arr)
while (1) ;
}
```
Fixes #199162
cc @erichkeane
---
note: calude code was used for generating the regression test case
---------
Co-authored-by: Lemmon <yuzutech.llc at gmail.com>
Commit: 92cfd0a3f0ac20fbba4fc74a4bdae409fceebd49
https://github.com/llvm/llvm-project/commit/92cfd0a3f0ac20fbba4fc74a4bdae409fceebd49
Author: Erick Velez <erickvelez7 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
A clang-tools-extra/test/clang-doc/compact.cpp
M clang-tools-extra/test/clang-doc/enum.cpp
M clang-tools-extra/test/clang-doc/index.cpp
M clang-tools-extra/test/clang-doc/json/class-requires.cpp
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/json/class-template.cpp
M clang-tools-extra/test/clang-doc/json/class.cpp
M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
M clang-tools-extra/test/clang-doc/json/concept.cpp
M clang-tools-extra/test/clang-doc/json/function-requires.cpp
M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
M clang-tools-extra/test/clang-doc/json/inheritance.cpp
M clang-tools-extra/test/clang-doc/json/method-template.cpp
M clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
M clang-tools-extra/test/clang-doc/json/namespace.cpp
M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
Log Message:
-----------
[clang-doc] Add option for compact JSON (#190822)
By default all JSON is serialized "pretty" with whitespace. This patch
adds an option to serialize JSON without whitespace. This trims the size
of the JSON folder for clang from around 1.3 GB to 785 MB, which is a
39.6% decrease.
Commit: 282e90796bb9c7962520002806290279a41f6db6
https://github.com/llvm/llvm-project/commit/282e90796bb9c7962520002806290279a41f6db6
Author: lntue <lntue at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/libc-fullbuild-tests.yml
Log Message:
-----------
[libc][ci] Improve full build precommit CIs caching keys. (#199742)
Currently full build precommit CIs only uses c_compiler as the cache's
key which will be the same for many of them listed in the matrix list.
We change to use the combination of (target + build_type + c_compiler)
as keys to uniquely distinguish them and the future gcc builds.
Commit: 3aa913fe647480791432d99bbdc016688d1ae841
https://github.com/llvm/llvm-project/commit/3aa913fe647480791432d99bbdc016688d1ae841
Author: lntue <lntue at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
Log Message:
-----------
[libc][math] Temporarily disable exception tests for NextAfter and NextToward tests on Windows. (#199740)
They are a bit flaky on Windows.
See https://github.com/llvm/llvm-project/issues/199738
Commit: fafc2b32ffffdcf12717a8d3d166f91b34ae6362
https://github.com/llvm/llvm-project/commit/fafc2b32ffffdcf12717a8d3d166f91b34ae6362
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/TableGen/TGParser.cpp
Log Message:
-----------
[TableGen] Fix wrong op name in a grammar comment(NFC) (#199661)
Commit: 010faf1e36c75a0f96dd45e6dd0a1ed30736b159
https://github.com/llvm/llvm-project/commit/010faf1e36c75a0f96dd45e6dd0a1ed30736b159
Author: Tomer Shafir <tomer.shafir8 at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/TableGen/TGParser.cpp
Log Message:
-----------
[TableGen] Add missing grammar comment for !cond(NFC) (#199663)
Commit: 9d751a2985c1f2ef061f7f9f53d44676d1287883
https://github.com/llvm/llvm-project/commit/9d751a2985c1f2ef061f7f9f53d44676d1287883
Author: David Salinas <dsalinas at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Object/OffloadBundle.cpp
A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff-compress.test
A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff.test
A llvm/test/tools/llvm-readobj/COFF/AMDGPU/offloading.test
Log Message:
-----------
[llvm][Object] Add COFF support to extractOffloadBundleFatBinary (#199574)
Use PointerToRawData from the COFF section header to compute the section
offset, replacing the previous stub that returned an error for all COFF
object files.
This enables llvm-objdump --offloading and llvm-readobj --offloading to
work on COFF fatbins produced by HIP on Windows.
---------
Co-authored-by: James Henderson <James.Henderson at sony.com>
Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Commit: 5df91f6c83ca8035a67c79b224ca949e34966d82
https://github.com/llvm/llvm-project/commit/5df91f6c83ca8035a67c79b224ca949e34966d82
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/sycl-tests.yml
Log Message:
-----------
workflows/sycl-tests: Pin container image reference (#199466)
I pinned the image to the version that was used in the last successful
workflow run.
https://github.com/llvm/llvm-project/security/code-scanning/1808
https://docs.zizmor.sh/audits/#unpinned-images
Commit: 88fbc0614e826d09c986fd1b6e80eb2435e97d6c
https://github.com/llvm/llvm-project/commit/88fbc0614e826d09c986fd1b6e80eb2435e97d6c
Author: Justin Lebar <justin.lebar at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/test/Transforms/DeadStoreElimination/merge-stores.ll
Log Message:
-----------
[DSE] Restrict partial-overlap store merging to matching orderings. (#199728)
Partial-overlap store merging folds the later killing store into the
earlier dead store and erases the killing store. That is invalid if the
killing store is volatile or has stronger-than-unordered atomic
ordering, because erasing it drops an observable write. It is also invalid
if the killing and dead stores have different atomic orderings, because
the bytes originally written by the killing store would inherit the dead
store's atomicity after the merge -- silently dropping (or adding)
atomicity for those bytes.
Require both stores to be unordered (i.e. non-volatile with ordering at
most unordered) and to share the same ordering. This preserves the
existing fold for two simple stores or two unordered-atomic stores
(e.g. simple.ll's test43a) while leaving volatile, ordered-atomic, and
atomicity-mismatched cases in place.
This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply at anthropic.com>
Commit: 584b596d812044070193e7be9c1d3f39c7e147df
https://github.com/llvm/llvm-project/commit/584b596d812044070193e7be9c1d3f39c7e147df
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/release-doxygen.yml
Log Message:
-----------
workflows/release-doxygen: Remove template expansions (#199456)
https://github.com/llvm/llvm-project/security/code-scanning/1725
https://github.com/llvm/llvm-project/security/code-scanning/1726
https://github.com/llvm/llvm-project/security/code-scanning/1838
Commit: ef59dbea76d82f008e5314c47e574193dbc4d403
https://github.com/llvm/llvm-project/commit/ef59dbea76d82f008e5314c47e574193dbc4d403
Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/lib/Evaluate/tools.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
A flang/test/HLFIR/c_devptr_byvalue.cuf
Log Message:
-----------
[flang][cuda] Lower c_devptr value arguments in bind(c) like c_ptr (#199316)
Treat `type(c_devptr), value` arguments in BIND(C) interfaces like
`type(c_ptr), value` by passing the nested raw address value instead of
the outer derived type ABI. This keeps call signatures consistent for
CUDA Fortran generic specifics that share a C binding label and avoids
argument misclassification at the x86_64 register/stack boundary.
Commit: 08e83a533e47607ce3229b32548f24e08d466fe6
https://github.com/llvm/llvm-project/commit/08e83a533e47607ce3229b32548f24e08d466fe6
Author: Tom Stellard <tstellar at redhat.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/release-tasks.yml
Log Message:
-----------
workflows/release-tasks: Remove template expansion (#199444)
https://github.com/llvm/llvm-project/security/code-scanning/1737
https://github.com/llvm/llvm-project/security/code-scanning/1738
https://github.com/llvm/llvm-project/security/code-scanning/1739
https://github.com/llvm/llvm-project/security/code-scanning/1740
https://github.com/llvm/llvm-project/security/code-scanning/1741
https://github.com/llvm/llvm-project/security/code-scanning/1742
Commit: 6519c04eb459deab1c71756ddfc04fd7ee852904
https://github.com/llvm/llvm-project/commit/6519c04eb459deab1c71756ddfc04fd7ee852904
Author: Dhruva Chakrabarti <Dhruva.Chakrabarti at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/CodeGen/InlineSpiller.cpp
Log Message:
-----------
[1/3][RegAlloc][LiveRegMatrix] Fix inconsistency in HoistSpillHelper delegates (#197773)
HoistSpillHelper's LiveRangeEdit delegate callbacks did not keep the
LiveRegMatrix consistent when eliminateDeadDefs triggered interval
shrinking and splitting during spill hoisting.
Three issues:
1. No LRE_WillShrinkVirtReg override: when eliminateDeadDefs shrinks a
vreg's interval via shrinkToUses, the matrix was not updated. Add an
override that unassigns the vreg from the matrix and records it in
PendingReassignments for later re-assignment.
2. LRE_DidCloneVirtReg called VRM.assignVirt2Phys without
Matrix->assign: when splitSeparateComponents creates new vregs, the
clones got VRM entries but were never inserted into the matrix. Fix by
consuming PendingReassignments and properly assigning both Old (shrunk)
and New (split) intervals to the matrix.
3. No flush for shrink-without-split: if a vreg was shrunk but not
split, LRE_DidCloneVirtReg was never called to re-assign it. Add a flush
loop at the end of hoistAllSpills to re-assign any remaining pending
vregs.
Also update LRE_CanEraseVirtReg to clear pending entries for erased
vregs.
LIT tests exercised by this patch (i.e. if I introduce consistency
verification as in https://github.com/llvm/llvm-project/pull/197778 but
not this patch, the following tests fail):
CodeGen/X86/AMX/amx-gemm.ll
CodeGen/X86/apx/push2-pop2.ll
CodeGen/X86/udivmodei5.ll
Assisted-by: Cursor/Claude Opus
Commit: 7a66e99b12eed64c5509280c800b0ce21dcd0bff
https://github.com/llvm/llvm-project/commit/7a66e99b12eed64c5509280c800b0ce21dcd0bff
Author: Domenic Nutile <domenic.nutile at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
M llvm/test/CodeGen/AMDGPU/GlobalISel/load-d16.ll
M llvm/test/CodeGen/AMDGPU/global-saddr-load.ll
Log Message:
-----------
[AMDGPU][True16] Add regbank combiner cases to fix regression around G_SEXTLOAD (#198671)
<sub>Stack created with <a
href="https://github.com/github/gh-stack">GitHub Stacks CLI</a> • <a
href="https://gh.io/stacks-feedback">Give Feedback 💬</a></sub>
Stack PRs:
https://github.com/llvm/llvm-project/pull/198669
https://github.com/llvm/llvm-project/pull/198670
See https://github.com/llvm/llvm-project/pull/195289 for previous
discussion
Commit: 13f9f468dcf8e89d232f28304fa595bf0efbf84b
https://github.com/llvm/llvm-project/commit/13f9f468dcf8e89d232f28304fa595bf0efbf84b
Author: Scott Linder <scott.linder at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/av-spill-expansion-with-machine-cp.mir
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/dbg-info-inline-at.ll
A llvm/test/CodeGen/AMDGPU/debug-frame.ll
M llvm/test/CodeGen/AMDGPU/ds-read2-write2-debug-info.ll
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-u32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
A llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir
M llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir
M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
M llvm/test/CodeGen/AMDGPU/inflate-av-remat-imm.mir
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
M llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
M llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir
M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-single-wave-workgroup-memops.ll
M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
M llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir
Log Message:
-----------
[AMDGPU] Emit entry function Dwarf CFI (#183152)
Entry functions represent the end of unwinding, as they are the
outer-most frame. This implies they can only have a meaningful
definition for the CFA, which AMDGPU defines using a memory location
description with a literal private address space address. The return
address is set to undefined as a sentinel value to signal the end of
unwinding.
Change-Id: I21580f6a24f4869ba32939c9c6332506032cc654
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>
Commit: 593a23887939b55219acae47fcb1cda48ff37319
https://github.com/llvm/llvm-project/commit/593a23887939b55219acae47fcb1cda48ff37319
Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll
Log Message:
-----------
[AMDGPU] Diagnose unsupported fma_legacy/sudot4/sudot8 intrinsics on some subtargets (#198464)
Add proper diagnostics for `llvm.amdgcn.fma.legacy`,
`llvm.amdgcn.sudot4` and `llvm.amdgcn.sudot8` on subtargets where they
are unsupported
Commit: 3ce7b405579d64f8e26e14c6cc02df92117af330
https://github.com/llvm/llvm-project/commit/3ce7b405579d64f8e26e14c6cc02df92117af330
Author: Ben Langmuir <blangmuir at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/Basic/FileManager.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/unittests/Basic/FileManagerTest.cpp
Log Message:
-----------
Revert "[clang] Use FileError in FileManager::getFileRef, getDirectoryRef" (#199721)
Reverts llvm/llvm-project#199126
This caused a small compile time regression.
Commit: 3212caa942dea9247fffcd96ec2949f0f960731d
https://github.com/llvm/llvm-project/commit/3212caa942dea9247fffcd96ec2949f0f960731d
Author: Jordan Rupprecht <rupprecht at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
Log Message:
-----------
[bazel] Use `additional_compiler_inputs` to handle include scanning for TargetPassRegistry.inc (#199201)
This use of using `#include` with a macro breaks include scanning, for
example:
* `GET_PASS_REGISTRY` defined here:
https://github.com/llvm/llvm-project/blob/5c853423f4f9e7296b7596b7f3ccade481686bfd/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp#L603
* `GET_PASS_REGISTRY` included here:
https://github.com/llvm/llvm-project/blob/5c853423f4f9e7296b7596b7f3ccade481686bfd/llvm/include/llvm/Passes/TargetPassRegistry.inc#L60
When include scanning is enabled, the `PassRegistry.def` gets omitted
because it the include scanner does not handle this case. Providing it
via `additional_compiler_inputs` ensures it is included even in that
case.
Commit: 3dd3b6fe758c4ca230e9de624b2586990bd07d74
https://github.com/llvm/llvm-project/commit/3dd3b6fe758c4ca230e9de624b2586990bd07d74
Author: Jun Wang <jwang_2024 at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst
Log Message:
-----------
[AMDGPU][docs][NFC] Fix some instruction names in gfx950 doc (#199094)
In the GFX950 documentation, some instructions that should have the
_sdwa suffix were incorrectly given the _dpp suffix.
Commit: 5157be7bd5c12ac2836bdefb4e9cded6871b065c
https://github.com/llvm/llvm-project/commit/5157be7bd5c12ac2836bdefb4e9cded6871b065c
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/SandboxIR.md
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/lib/SandboxIR/Tracker.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
Log Message:
-----------
[SandboxIR][Tracker] Implement accept(/*AcceptAll*/) and revert(/*RevertAll*/) (#197289)
In the context of nested checkpoints the tracker's API was somewhat
inconsistent. Tracker::revert() would revert to the last checkpoint but
accept() would accept all changes.
This patch fixes this, and introduces `accept(bool AcceptAll)` and
`revert(bool RevertAll)`.
Commit: fdd3b84773f107f51b25b5591278f2724c911283
https://github.com/llvm/llvm-project/commit/fdd3b84773f107f51b25b5591278f2724c911283
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-fma-loss.ll
Log Message:
-----------
[SLP] Fix FMA regression in FMA-candidate retry
When tryToVectorize is called with AllowFMACandidates=true, falling
through to tryToVectorizeList vectorizes the fmul operands of an
FMA-candidate fadd without accounting for the lost FMA opportunity.
canConvertToFMA requires those fmuls to have one use, so vectorizing
them always breaks FMA formation. The cost model for tryToVectorizeList
omits the fadd from the tree and compares "2 fmuls vs 1 vfmul", missing
the scalar FMA savings entirely.
Block tryToVectorizeList when AllowFMACandidates=true. TryToReduce is
safe because computeReductionCost accounts for FMA in the scalar
baseline via canConvertToFMA on the fadd user.
Fixes a 4.5% regression in SPEC17 imagemagick on AArch64 introduced by
Reviewers: sushgokh, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/199706
Commit: 4ef6ca40f53fe5ef09b940a3d7d9a92a091dd878
https://github.com/llvm/llvm-project/commit/4ef6ca40f53fe5ef09b940a3d7d9a92a091dd878
Author: Igor Kudrin <ikudrin at accesssoftek.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/Sema/SemaARM.cpp
M clang/test/AST/ast-dump-aarch64-mte.c
M clang/test/CodeGen/arm64-mte.c
M clang/test/Sema/builtins-arm64-mte.c
Log Message:
-----------
[Clang][AArch64] Fix crash with large arguments to MTE built-ins (#197620)
The second argument to `__builtin_arm_irg()` and `__builtin_arm_gmi()`
is expected to be 64-bit. When a wider type is passed, the compiler
still generates a `zext` instruction, leading to a backend error:
```
> cat test.c
unsigned test(void* a, unsigned __int128 m) {
return __builtin_arm_gmi(a, m);
}
> clang -target aarch64 -march=armv9+memtag -S test.c
fatal error: error in backend: Cannot select: ... i64,ch = load<... zext from i128>
```
This is fixed by applying the required implicit conversions to the
argument in Sema.
Commit: f78a233ac89dc0f9f0f26dfe051874013ae6e242
https://github.com/llvm/llvm-project/commit/f78a233ac89dc0f9f0f26dfe051874013ae6e242
Author: Scott Linder <scott.linder at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
M llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
M llvm/test/CodeGen/AMDGPU/cc-entry.ll
M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
M llvm/test/CodeGen/AMDGPU/debug-frame.ll
M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
M llvm/test/CodeGen/AMDGPU/frame-index.mir
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.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/local-stack-alloc-block-sp-reference.ll
M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill-offset-overflow-gfx950.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
M llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
M llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll
M llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir
M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.ll
M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
M llvm/test/CodeGen/AMDGPU/spill-restore-partial-copy.mir
M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
M llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir
M llvm/test/CodeGen/AMDGPU/spill_kill_v16.mir
M llvm/test/CodeGen/AMDGPU/spillv16.mir
M llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
M llvm/test/CodeGen/AMDGPU/stack-realign.ll
M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
M llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
M llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir
M llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir
M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
M llvm/test/DebugInfo/AMDGPU/cfi.ll
M llvm/test/DebugInfo/AMDGPU/debug-loc-copy.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.nogenerated.expected
Log Message:
-----------
[AMDGPU] Implement CFI for non-kernel functions (#183153)
This does not implement CSR spills other than those AMDGPU handles
during PEI. The remaining spills are handled in a subsequent patch.
Change-Id: I5e3a9a62cf9189245011a82a129790d813d49373
Co-authored-by: Scott Linder <scott.linder at amd.com>
Co-authored-by: Venkata Ramanaiah Nalamothu <VenkataRamanaiah.Nalamothu at amd.com>
Commit: c052a26f2d8cedf921226f088fca8525cb8c7e5b
https://github.com/llvm/llvm-project/commit/c052a26f2d8cedf921226f088fca8525cb8c7e5b
Author: Cyndy Ishida <cyndy_ishida at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/lib/Basic/DarwinSDKInfo.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/unittests/Basic/DarwinSDKInfoTest.cpp
Log Message:
-----------
Revert "[clang][driver][darwin] Hold onto full triples in Darwin SDKP… (#199756)
…latformInfo (#197791)"
This reverts commit 9c06c5de6a20df13cfe6d9a7022308e96f378955. It broke
downstream builds for compiler-rt builtins.
Resolves: rdar://177813095
Commit: a4c8cfdac226b89f82963bb65d64c246723e1ea9
https://github.com/llvm/llvm-project/commit/a4c8cfdac226b89f82963bb65d64c246723e1ea9
Author: Jonathan L'Work <113400649+Jonathan03ant at users.noreply.github.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
A llvm/test/CodeGen/AMDGPU/elf-note-null-terminator.ll
Log Message:
-----------
[AMDGPU] Fix ELF note emission to include null terminator (#199720)
The `AMDGPUTargetELFStreamer::EmitNote()` function claims the note name
includes a null terminator (NameSZ = Name.size() + 1) but only emits the
string bytes via `emitBytes(Name)`, relying on alignment padding to
provide the null byte. Works for most situations but breaks with 8-byte
names where padding lands exactly at the boundary.
Explicitly emit null terminator with `S.emitInt8(0)` after
`emitBytes(Name)`.
Commit: 2c336879888a59e3438529712320ad7ab1d47210
https://github.com/llvm/llvm-project/commit/2c336879888a59e3438529712320ad7ab1d47210
Author: carlobertolli <carlo.bertolli at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/CodeGen/AMDGPU/extract-vector-elt-binop-build-vector.ll
Log Message:
-----------
[AMDGPU] Add regression test for extract of vector binop scalarization (#198825)
Test that extracting both lanes from a binop of two build_vectors
sharing a variable operand at different lane positions correctly folds
per-lane constants.
Assisted-by: Cursor (Claude)
Commit: 0eb28e6de2654073efb4920e21b535fe181de041
https://github.com/llvm/llvm-project/commit/0eb28e6de2654073efb4920e21b535fe181de041
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/fmuladd_width_prop.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
Log Message:
-----------
[SLP] Propagate through instrinsics in BoUpSLP::getVectorElementSize() (#199129)
We propagate through simple binary operations already, some operations
are excluded since it happens to be an intrinsic.
Motivated by case exposed when removing vectorization from pre-LTO, see
https://github.com/llvm/llvm-project/pull/195886#issuecomment-4486422243.
Commit: 8a64511b59a293e213ebedcf9ea1b1c34373e551
https://github.com/llvm/llvm-project/commit/8a64511b59a293e213ebedcf9ea1b1c34373e551
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
A llvm/test/Transforms/LoopVectorize/AArch64/clamped-load.ll
A llvm/test/Transforms/LoopVectorize/AArch64/discarded-interleave-group.ll
A llvm/test/Transforms/LoopVectorize/RISCV/clamped-load.ll
A llvm/test/Transforms/LoopVectorize/clamped-load-vf-ranges.ll
M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
Log Message:
-----------
[LV] Add tests with pointers based on URem expressions (NFC). (#199763)
Add tests with loads and stores with pointers based on URem expressions.
Commit: 0e0127e5b21dce0cf500e24467f1471d479876be
https://github.com/llvm/llvm-project/commit/0e0127e5b21dce0cf500e24467f1471d479876be
Author: Alex Langford <alangford at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lldb/source/ValueObject/ValueObjectVTable.cpp
M lldb/test/API/functionalities/vtable/TestVTableValue.py
Log Message:
-----------
[lldb] Fix vtable support on arm64e (#199116)
There were 2 small issues.
1. ValueObjectVTableChild was not fixing the addresses it was pulling
from signed pointers. This broke things like `SBValue::GetLoadAddress`
and identifying the function pointer type from debug info.
2. TestVTableValue.py made a lot of assumptions that did not hold on
arm64e. a. GetValueAsUnsigned will return a raw pointer value. Most of
the time, we needed GetValueAsAddress. b. The test was reading pointers
out of memory without fixing them up. c. The summary for a function
pointer on arm64e includes the load address. This isn't true on other
platforms.
Commit: f5a3f1d4bf101c0c5dc00c08b52f13fd00e891f9
https://github.com/llvm/llvm-project/commit/f5a3f1d4bf101c0c5dc00c08b52f13fd00e891f9
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll
Log Message:
-----------
[SLP][NFC]Add a test iwhtthre vectorization regression, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/199774
Commit: a14d084bbb1a7261d8a71c56120159abb6af330b
https://github.com/llvm/llvm-project/commit/a14d084bbb1a7261d8a71c56120159abb6af330b
Author: Daniel Thornburgh <dthorn at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M libc/config/baremetal/config.json
Log Message:
-----------
Reland "[libc] Enable baremetal float printf using modular format" (#199758)
Reverts llvm/llvm-project#199114
#199118 fixed the issue uncovered in the Fuchsia CI build.
Commit: a7aceff0b1e552cbc2306e575e9ac649853fda8e
https://github.com/llvm/llvm-project/commit/a7aceff0b1e552cbc2306e575e9ac649853fda8e
Author: vporpo <vasileios.porpodas at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/docs/SandboxIR.md
M llvm/include/llvm/SandboxIR/Context.h
M llvm/include/llvm/SandboxIR/Tracker.h
M llvm/lib/SandboxIR/Tracker.cpp
M llvm/unittests/SandboxIR/TrackerTest.cpp
Log Message:
-----------
Revert "[SandboxIR][Tracker] Implement accept(/*AcceptAll*/) and revert(/*RevertAll*/)" (#199776)
Reverts llvm/llvm-project#197289
Commit: 27abffa3efe272d725a6c4eceeebfe8c17e0f8e8
https://github.com/llvm/llvm-project/commit/27abffa3efe272d725a6c4eceeebfe8c17e0f8e8
Author: Jason Molenda <jmolenda at apple.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lldb/docs/resources/lldbgdbremote.md
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
A lldb/test/API/functionalities/gdb_remote_client/TestUnavailableRegisters.py
M lldb/tools/debugserver/source/RNBRemote.cpp
Log Message:
-----------
[lldb] New expedited register specfication for unavailable regs (#193894)
When lldb-server/debugserver send a stop packet, they expedite the
vaLues of many of the general purpose registers in the stop packet, so
lldb doesn't need to fetch them separately.
On Darwin systems using an AArch64 M4 or newer SOC with SME, we need to
fetch the streaming vector length (svl) register when in Streaming SVE
Mode to correctly size the registers in lldb. On Darwin systems, when we
are not in SSVE mode, svl is undefined -- it is not included in the
expedited registers. However, lldb will still try to fetch the value, so
we get a register-read packet at every stop on M4 and newer systems,
trying to fetch the value.
This patch adds a new format for the expedited registers. They are
normally a `;` separated series of `{regnum}:{native endian bytes}`.
This allows for `{regnum}:` alone, indicating that the register value
for regnum cannot be fetched at this stop.
It updates debugserver to always add svcr, tpidr2, and svl to the
expedited registers, whether we can fetch them or not.
Most of the changes happen in GDBRemoteRegisterContext. This class
maintains a buffer sized for the register context bytes, and an array of
bool to indicate whether we have fetched the value for a given register
yet or not. If we have fetched the value, we can supply the bytes from
the register context byte array. If it is not yet fetched, we read it.
This PR changes this fetched-or-not bool array to a LazyBool with
eLazyBoolYes meaning we have the bytes for the register value in the
lldb buffer.
eLazyBoolCalculate means we have not yet tried to read the register
value.
eLazyBoolNo means that the register is currently readable.
The meaning of these 3 LazyBool states could be a little confusing as
you read GDBRemoteRegisterContext, so all getting/setting of these is
done through the methods
SetAllRegistersValid()
SetAllRegistersUnfetched()
{Set,Get}RegisterIsValid()
{Set,Get}RegisterIsUnavailable()
{Set,Get}RegisterIsUnfetched()
Whcih I think makes it a little easer to understand. The changes to
GDBRemoteRegisterContext were the trickiest part of this PR, all the
other changes are simple.
Linux et al mostly work on AArch64 systems with SVE + SME, in which case
we have either a vector length or a streaming vector length, at all
times. But the M4 & newer SOCs from Apple don't have any SVE registers
when not in streaming SVE mode, so we have this issue of an extra
register read at all stops, unless in SSVE mode.
rdar://161581129
---------
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
Commit: e42046a747f597da40f76e1656be919dea946f15
https://github.com/llvm/llvm-project/commit/e42046a747f597da40f76e1656be919dea946f15
Author: Nishant Patel <nishant.b.patel at intel.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M mlir/test/Integration/Dialect/XeGPU/WG/load_store_matrix.mlir
Log Message:
-----------
[MLIR][XeGPU] Fix pass name in RUN command (#199766)
Commit: 7e98d1960e989945cfb2ec016b950fbd2bb5d937
https://github.com/llvm/llvm-project/commit/7e98d1960e989945cfb2ec016b950fbd2bb5d937
Author: Ehsan Amiri <ehsan.amiri at huawei.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
A llvm/test/Transforms/LoopFusion/different_guards.ll
Log Message:
-----------
[LoopFusion] Do not fuse loops with different guards (#199724)
The testcase that was originally contributed to #193641 exposed a
functional issue in which loop fusion can fuse functions with different
loop guards. There seem to two distinct bugs and each of them alone is
enough to let this happen.
- The condition that checks loop guards are identical, intends to
exclude loops that require peeling. But the condition is not correct and
it allows some loops that do not require peeling to pass.
- The condition that checks two guards are identical implicitly assume
conditions of guard branches are instructions, but this is not
necessarily always correct.
This patch fixes the problem for the loops that do not require peeling.
The issue still exists for loops that require peeling and will be fixed
separately.
Commit: e9e5d4ee914ac98ecb6fafa9e1f8f4231a9282d3
https://github.com/llvm/llvm-project/commit/e9e5d4ee914ac98ecb6fafa9e1f8f4231a9282d3
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
Log Message:
-----------
clang/AMDGPU: Remove unnecessary fallback to check -march (#199780)
-march is now rewritten to -mcpu.
Commit: f263446abbdd9f1ef12d60107329ea976e94247e
https://github.com/llvm/llvm-project/commit/f263446abbdd9f1ef12d60107329ea976e94247e
Author: Matt Arsenault <Matthew.Arsenault at amd.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/test/Driver/amdgpu-validate-sanitize.cl
Log Message:
-----------
clang/AMDGPU: Report all runtimeless sanitizers as available (#199642)
Commit: f3c0f26a3961b20b6e698fe3579499528d006b48
https://github.com/llvm/llvm-project/commit/f3c0f26a3961b20b6e698fe3579499528d006b48
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/test/Transforms/FIRToMemRef/array-coor-rebox-slice-shape.mlir
M flang/test/Transforms/FIRToMemRef/array-coor-slice-shift.mlir
Log Message:
-----------
[flang][FIRToMemRef] Get strides from descriptor for some array_coor cases. (#199158)
This is a follow-up on Jean's comment
https://github.com/llvm/llvm-project/pull/198933#discussion_r3279535746
This patch makes use of the descriptor strides when `fir.array_coor`'s
memref is a `fir.box` that is not a fir.embox result.
Commit: 187dfef80ee9d5cb89efc918a2af407389553779
https://github.com/llvm/llvm-project/commit/187dfef80ee9d5cb89efc918a2af407389553779
Author: Slava Zakharin <szakharin at nvidia.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
A flang/include/flang/Optimizer/Dialect/FIRBoxUtils.h
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Dialect/CMakeLists.txt
A flang/lib/Optimizer/Dialect/FIRBoxUtils.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/test/Fir/array-coor-canonicalization.fir
Log Message:
-----------
[flang] Enabled pulling of rebox into array_coor. (#199161)
This patch enables pulling slicing `fir.rebox` operations
into `fir.array_coor`. This helps preserve information about
the original rank of the array being accessed.
`FIRToMemRef` and later passes may benefit from this.
Assisted by: Claude
Commit: bf420f0d18562cd4a3ec7ae65354c62970adb262
https://github.com/llvm/llvm-project/commit/bf420f0d18562cd4a3ec7ae65354c62970adb262
Author: Kunal Pathak <kunalspathak.github at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
A llvm/test/CodeGen/AArch64/interleaved-store-noninbounds-gep.ll
Log Message:
-----------
[AArch64] Fix hasNearbyPairedStore to handle non-inbounds GEPs (#199137)
Problem: `hasNearbyPairedStore` uses
`stripAndAccumulateInBoundsConstantOffsets` to decompose store pointers
into (base, offset) pairs and check whether two stores are 16 bytes
apart. This fails when LSR has rewritten pointer arithmetic into
non-inbounds GEPs because the function refuses to look through them. The
two stores then appear to have different base pointers and the check
returns false. When this happens, `lowerInterleavedStore` proceeds to
emit `ST2` for a pattern that would be more profitable as `zip+stp`,
since the load-store optimizer can pair adjacent stores into `STP` but
cannot merge `ST2` with anything. On a bf16-to-fp32 NEON conversion loop
this causes a regression from 11 to 17 instructions per iteration.
Note: Interleaved stores support was added for RISCV in
https://github.com/llvm/llvm-project/pull/115354. Turning this off
produces the desired STP instructions.
https://godbolt.org/z/1afsjPd3e
Fix: Switch to `stripAndAccumulateConstantOffsets` with
`AllowNonInbounds=true`. The function is a bail-out heuristic doing pure
address arithmetic, so the inbounds semantic guarantee is not needed for
correctness.
---------
Co-authored-by: Kunal Pathak <kupathak at fb.com>
Commit: fc60e08b4574a85f6966a751f32290f5732d1329
https://github.com/llvm/llvm-project/commit/fc60e08b4574a85f6966a751f32290f5732d1329
Author: lntue <lntue at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/libc-overlay-tests.yml
Log Message:
-----------
[libc] Use containers for overlay precommit CIs. (#199294)
Commit: 577e9a7cc82faf3dae98dba4aea917a6ffaab293
https://github.com/llvm/llvm-project/commit/577e9a7cc82faf3dae98dba4aea917a6ffaab293
Author: Sy Brand <sy.brand at fastly.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/test/Preprocessor/wasm-target-features.c
A lld/test/wasm/stack-pointer-abi.s
A lld/test/wasm/thread-context-abi-mismatch.s
A lld/test/wasm/tls-libcall.s
M lld/wasm/Config.h
M lld/wasm/Driver.cpp
M lld/wasm/Options.td
M lld/wasm/SyntheticSections.cpp
M lld/wasm/Writer.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
A llvm/test/CodeGen/WebAssembly/stack-abi.ll
M llvm/test/CodeGen/WebAssembly/thread_pointer.ll
M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll
A llvm/test/DebugInfo/WebAssembly/thread-context-abi.ll
Log Message:
-----------
[WebAssembly] WASIP3 Library Call Thread Context Support (#175800)
The [WebAssembly Component
Model](https://component-model.bytecodealliance.org/) has added support
for [cooperative
multithreading](https://github.com/WebAssembly/component-model/pull/557).
This has been implemented in the [Wasmtime
engine](https://github.com/bytecodealliance/wasmtime/pull/11751) and is
part of the wider project of [WASI preview
3](https://wasi.dev/roadmap#upcoming-wasi-03-releases), which is
currently tracked
[here](https://github.com/orgs/bytecodealliance/projects/16).
These changes require updating the way that `__stack_pointer` and
`__tls_base` work purely for a new `wasm32-wasip3` target; other targets
will not be touched. Specifically, rather than using a Wasm global for
tracking the stack pointer and TLS base, the new
[`context.get/set`](https://github.com/WebAssembly/component-model/blob/main/design/mvp/CanonicalABI.md#-canon-contextget)
component model builtin functions will be used (the intention being that
runtimes will need to aggressively optimize these calls into single
load/stores). For justification on this choice rather than switching out
the global at context-switch boundaries, see [this
comment](https://github.com/WebAssembly/wasi-libc/issues/691#issuecomment-3716405618)
and [this
comment](https://github.com/WebAssembly/wasi-libc/issues/691#issuecomment-3716916730).
This PR adds support for using library calls instead of globals for
holding the stack pointer and TLS base. When used, this thread context
ABI emits calls to `__wasm_{get,set}_{stack_pointer,tls_base}` when
needed. These functions can then be implemented in `libc`. This is
enabled only for the WASIp3 target.
There is a temporary macro define for `__wasm_libcall_thread_context__`
which can be removed once `wasi-libc` has fully migrated to the new ABI
for the WASIp3 target.
Commit: e918a5ada8a9e693a7f68614bfce698d38f903d3
https://github.com/llvm/llvm-project/commit/e918a5ada8a9e693a7f68614bfce698d38f903d3
Author: Matthias Wippich <mfwippich at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/ShellEnvironment.py
M llvm/utils/lit/lit/Test.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/TestingConfig.py
M llvm/utils/lit/lit/display.py
M llvm/utils/lit/lit/formats/base.py
M llvm/utils/lit/lit/llvm/config.py
M llvm/utils/lit/lit/llvm/subst.py
M llvm/utils/lit/lit/reports.py
M llvm/utils/lit/lit/run.py
Log Message:
-----------
[lit][NFC] remove new-style class opt-ins (#199784)
In Python 3.0 and later it is no longer necessary to explicitly derive
from `object` to opt into "new-style" classes, they are the default.
Since the current minimum Python version is 3.8, this is no longer
required. This patch removes `object` from the base class lists of all
affected classes in lit.
Commit: 9eb0d424db2df869428c800e5a5535342d70de31
https://github.com/llvm/llvm-project/commit/9eb0d424db2df869428c800e5a5535342d70de31
Author: Matthias Wippich <mfwippich at gmail.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/ShUtil.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/formats/base.py
M llvm/utils/lit/lit/formats/googletest.py
M llvm/utils/lit/lit/formats/shtest.py
M llvm/utils/lit/lit/util.py
M llvm/utils/lit/tests/Inputs/check_path.py
M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-control-chars.py
M llvm/utils/lit/tests/Inputs/shtest-not/print_environment.py
M llvm/utils/lit/tests/Inputs/shtest-timeout/short.py
Log Message:
-----------
[lit][NFC] remove future statements for mandatory features in Python 3 (#199786)
This patch removes future statements from lit for features that are
mandatory in Python 3.0 and later.
Specifically, it removes future statements for
[`absolute_import`](https://docs.python.org/3/library/__future__.html#future__.absolute_import)
and
[`print_function`](https://docs.python.org/3/library/__future__.html#future__.print_function),
since both became mandatory in Python 3.0.
Commit: 2bd872b03fe16726870a34ee6cb50e9d81947e68
https://github.com/llvm/llvm-project/commit/2bd872b03fe16726870a34ee6cb50e9d81947e68
Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Analysis/VectorUtils.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/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
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/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask-uniforms.ll
A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
A llvm/test/Transforms/LoopVectorize/AArch64/expensive-alias-masking.ll
A llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing-alias-mask.ll
A llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-alias-mask.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-data-tail-folding-style.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-needs-freeze.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-small-index.ll
A llvm/test/Transforms/LoopVectorize/alias-mask.ll
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
A llvm/test/Transforms/LoopVectorize/remove-redundant-trip-count-scev.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
Log Message:
-----------
[LV] Add support for partial alias masking with tail folding (#182457)
This patch adds basic support for partial alias masking, which allows
entering the vector loop even when there is aliasing within a single
vector iteration. It does this by clamping the VF to the safe distance
between pointers. This allows the runtime VF to be anywhere from 2 to
the "static" VF.
Conceptually, this transform looks like:
```
// `c` and `b` may alias.
for (int i = 0; i < n; i++) {
c[i] = a[i] + b[i];
}
```
->
```
svbool_t alias_mask = loop.dependence.war.mask(b, c);
int num_active = num_active_lanes(mask);
if (num_active >= 2) {
for (int i = 0; i < n; i += num_active) {
// ... vector loop masked with `alias_mask`
}
}
// ... scalar tail
```
This initial patch has a number of limitations:
- The loop must be tail-folded
* We intend to follow-up with full alias-masking support for loops
without tail-folding
- The mask and transform is only valid for IC = 1
* Some recipes may not handle the "ClampedVF" correctly at IC > 1
* Note: On AArch64, we also only have native alias mask instructions
for IC = 1
- Reverse iteration is not supported
* The mask reversal logic is not correct for the alias mask (or
clamped ALM)
- First order recurrences are not supported
* The `splice.right` is not lowered correctly for clamped VFs
- Reductions are not supported
* The final horizontal reduction needs to set lanes past the
"ClampedVF" to the identity value
- This style of vectorization is not enabled by default/costed
* It can be enabled with `-force-partial-aliasing-vectorization`
* When enabled, alias masking is used instead of the standard diff
checks (when legal to do so)
This PR supersedes #100579 (closes #100579).
Commit: e6d8a8f9384b353cc95baccac8c233309e1c3568
https://github.com/llvm/llvm-project/commit/e6d8a8f9384b353cc95baccac8c233309e1c3568
Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/test/CodeGen/unique-internal-linkage-names.cpp
Log Message:
-----------
[Clang] Emit prefix map normalization before generating hashes for the unique linkage names. (#198667)
Use normalized path from the macro prefix map to generate the unique ids
for the internal linkage names. That allows a reproducible hash on any
build system. Regularly the macro prefix map gets normalized in favor of
the target system before the path substitution.
Commit: e0ef143823ce8f733c50fae675f05d0df0f702e5
https://github.com/llvm/llvm-project/commit/e0ef143823ce8f733c50fae675f05d0df0f702e5
Author: Sam Clegg <sbc at chromium.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M lld/test/wasm/alias.s
M lld/test/wasm/build-id.test
M lld/test/wasm/ctor-return-value.s
M lld/test/wasm/duplicate-global-imports.s
M lld/test/wasm/export-optional.s
M lld/test/wasm/externref.s
M lld/test/wasm/function-imports-first.ll
M lld/test/wasm/function-imports.s
M lld/test/wasm/gc-imports.s
M lld/test/wasm/gc-sections.ll
M lld/test/wasm/global-base.test
M lld/test/wasm/globals.s
M lld/test/wasm/lto/tls.ll
M lld/test/wasm/map-file.s
M lld/test/wasm/merge-string-debug.s
M lld/test/wasm/mutable-global-exports.s
M lld/test/wasm/name-section-mangling.s
M lld/test/wasm/signature-mismatch-export.ll
M lld/test/wasm/signature-mismatch.s
M lld/test/wasm/stack-first.test
M lld/test/wasm/stack-pointer-abi.s
M lld/test/wasm/startstop.ll
M lld/test/wasm/table-base.s
M lld/test/wasm/tag-section.ll
M lld/test/wasm/tls-base-non-shared-memory.s
M lld/test/wasm/undefined-weak-call.s
M lld/test/wasm/unresolved-symbols-dynamic.s
M lld/test/wasm/weak-undefined-pic.s
M lld/test/wasm/weak-undefined.s
M lld/wasm/Driver.cpp
Log Message:
-----------
[lld][WebAssembly] Only include __stack_pointer when needed (#199739)
Commit: 7938535a54b51a4ca84821b7766d68049c9aa895
https://github.com/llvm/llvm-project/commit/7938535a54b51a4ca84821b7766d68049c9aa895
Author: Owen Rodley <orodley at google.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
M clang/test/CodeGen/lto-newpm-pipeline.c
M clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
M lld/test/ELF/lto/devirt_vcall_vis_export_dynamic.ll
M lld/test/ELF/lto/devirt_vcall_vis_public.ll
M lld/test/ELF/lto/devirt_vcall_vis_shared_def.ll
M llvm/include/llvm/Analysis/CtxProfAnalysis.h
M llvm/include/llvm/Bitcode/BitcodeReader.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/GlobalValue.h
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/LTO/LTO.h
A llvm/include/llvm/Transforms/Utils/AssignGUID.h
M llvm/lib/Analysis/CtxProfAnalysis.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
A llvm/lib/Transforms/Utils/AssignGUID.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
M llvm/lib/Transforms/Utils/CloneModule.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/test/Assembler/index-value-order.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
M llvm/test/Bitcode/thinlto-function-summary.ll
M llvm/test/CodeGen/X86/fat-lto-section.ll
M llvm/test/LTO/Resolution/X86/not-prevailing-alias.ll
M llvm/test/LTO/Resolution/X86/not-prevailing-weak-aliasee.ll
M llvm/test/Linker/funcimport2.ll
M llvm/test/Other/new-pm-O0-defaults.ll
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
M llvm/test/ThinLTO/AArch64/aarch64_inline.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions1.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions2.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions3.ll
M llvm/test/ThinLTO/X86/ctor-dtor-alias.ll
M llvm/test/ThinLTO/X86/ctor-dtor-alias2.ll
M llvm/test/ThinLTO/X86/deadstrip.ll
M llvm/test/ThinLTO/X86/devirt_function_alias.ll
M llvm/test/ThinLTO/X86/devirt_function_alias2.ll
M llvm/test/ThinLTO/X86/devirt_pure_virtual_base.ll
M llvm/test/ThinLTO/X86/devirt_vcall_vis_public.ll
M llvm/test/ThinLTO/X86/distributed_import.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-exported-internal.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-unknown.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-weak.ll
M llvm/test/ThinLTO/X86/globals-import.ll
M llvm/test/ThinLTO/X86/hidden-escaped-symbols-alt.ll
M llvm/test/ThinLTO/X86/hidden-escaped-symbols.ll
M llvm/test/ThinLTO/X86/import-ro-constant.ll
M llvm/test/ThinLTO/X86/index-const-prop-alias.ll
M llvm/test/ThinLTO/X86/index-const-prop.ll
M llvm/test/ThinLTO/X86/linkonce_resolution_comdat.ll
M llvm/test/ThinLTO/X86/memprof-dups.ll
M llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
M llvm/test/ThinLTO/X86/memprof_imported_internal.ll
M llvm/test/ThinLTO/X86/memprof_imported_internal2.ll
M llvm/test/ThinLTO/X86/prevailing_weak_globals_import.ll
M llvm/test/ThinLTO/X86/visibility-elf.ll
M llvm/test/ThinLTO/X86/visibility-macho.ll
M llvm/test/ThinLTO/X86/weak_resolution.ll
M llvm/test/ThinLTO/X86/windows-vftable.ll
M llvm/test/ThinLTO/X86/writeonly.ll
A llvm/test/Transforms/AssignGUID/assign_guid.ll
M llvm/test/Transforms/EmbedBitcode/embed-wpd.ll
M llvm/test/Transforms/EmbedBitcode/embed.ll
M llvm/test/Transforms/FunctionImport/funcimport-debug-retained-nodes.ll
M llvm/test/Transforms/FunctionImport/funcimport.ll
M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
M llvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
M llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
M llvm/test/Transforms/SampleProfile/ctxsplit.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal-typeid.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal1.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll
M llvm/test/Transforms/WholeProgramDevirt/branch-funnel-profile.ll
M llvm/test/Transforms/WholeProgramDevirt/export-single-impl.ll
M llvm/test/Transforms/WholeProgramDevirt/export-vcp.ll
M llvm/test/tools/gold/X86/devirt_vcall_vis_export_dynamic.ll
M llvm/test/tools/gold/X86/devirt_vcall_vis_public.ll
M llvm/test/tools/gold/X86/devirt_vcall_vis_shared_def.ll
M llvm/test/tools/gold/X86/thinlto_weak_library.ll
M llvm/test/tools/gold/X86/thinlto_weak_resolution.ll
M llvm/test/tools/gold/X86/v1.16/devirt_vcall_vis_export_dynamic.ll
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/opt/NewPMDriver.cpp
M llvm/tools/opt/optdriver.cpp
Log Message:
-----------
Compute GUIDs once and store in metadata (#184065)
This allows us to keep GUIDs consistent across compilation phases which
may change the name or linkage type.
See https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801
This is a large change since the addition of metadata breaks many tests.
The test changes are mostly just trivial changes to checks to get them
passing.
Commit: d139f653019ee8058eaadf5e5deda79ee8faf093
https://github.com/llvm/llvm-project/commit/d139f653019ee8058eaadf5e5deda79ee8faf093
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll
Log Message:
-----------
[SLP][NFC]Add another test for external phi user, NFC
Reviewers:
Pull Request: https://github.com/llvm/llvm-project/pull/199804
Commit: 7e6f337e1dcf0bfb93e8d084ee3bd57a1cf9ff2d
https://github.com/llvm/llvm-project/commit/7e6f337e1dcf0bfb93e8d084ee3bd57a1cf9ff2d
Author: Xiaodong Liu <57342990+XiaodongLoong at users.noreply.github.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M llvm/docs/CommandGuide/llvm-mca.rst
M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-carry-over.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-add-sequence.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-all-views.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-retire.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-readadv.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-alias.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-noalias.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-out-of-order-retire.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-store-readadv.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A57-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-writeback.s
M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/forwarding-idioms.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/writeback-loads-stores.s
M llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
M llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-add-sequence.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-double.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-trans.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx11-double.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx12-permlane16-cycles.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx12-pseudo-scalar-trans.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx9-retireooo.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-carryover.s
M llvm/test/tools/llvm-mca/ARM/m55-storefwd.s
M llvm/test/tools/llvm-mca/ARM/m7-negative-readadvance.s
M llvm/test/tools/llvm-mca/ARM/memcpy-ldm-stm.s
M llvm/test/tools/llvm-mca/ARM/vld1-index-update.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/fpr.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/gpr.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/zero-reg.s
M llvm/test/tools/llvm-mca/RISCV/MIPS/p8700.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/div-fdiv.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass-c.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/jump.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/sp-bypass.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/disable-im.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/no-vsetvli-to-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s
M llvm/test/tools/llvm-mca/RISCV/XiangShan/gpr-bypass.s
M llvm/test/tools/llvm-mca/RISCV/XiangShan/load-to-alu.s
M llvm/test/tools/llvm-mca/SystemZ/stm-lm.s
M llvm/test/tools/llvm-mca/X86/AlderlakeP/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/AlderlakeP/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Atom/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/load-store-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/load-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/one-idioms.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-6.s
M llvm/test/tools/llvm-mca/X86/Barcelona/store-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/BdVer2/add-sequence.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependent-pmuld-paddd.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dot-product.s
M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-alias.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/memcpy-like-test.s
M llvm/test/tools/llvm-mca/X86/BdVer2/one-idioms.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/BdVer2/pipes-fpu.s
M llvm/test/tools/llvm-mca/X86/BdVer2/pr37790.s
M llvm/test/tools/llvm-mca/X86/BdVer2/rank.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-5.s
M llvm/test/tools/llvm-mca/X86/BdVer2/store-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vbroadcast-operand-latency.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Broadwell/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/BtVer2/add-sequence.s
M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/cmpxchg-read-advance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependent-pmuld-paddd.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dot-product.s
M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/BtVer2/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/load-store-alias.s
M llvm/test/tools/llvm-mca/X86/BtVer2/memcpy-like-test.s
M llvm/test/tools/llvm-mca/X86/BtVer2/negative-read-advance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/one-idioms.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/BtVer2/pipes-fpu.s
M llvm/test/tools/llvm-mca/X86/BtVer2/pr37790.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rank.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-6.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-5.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-adc-sequence-readadvance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-add-sequence-readadvance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/stmxcsr-ldmxcsr.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vbroadcast-operand-latency.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/xadd.s
M llvm/test/tools/llvm-mca/X86/BtVer2/xchg.s
M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms-avx-256.s
M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-3.s
M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/Haswell/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/Haswell/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Haswell/stmxcsr-ldmxcsr.s
M llvm/test/tools/llvm-mca/X86/Haswell/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/LunarlakeP/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/LunarlakeP/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SLM/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SandyBridge/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SapphireRapids/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SapphireRapids/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver2/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver3/dependency-breaking-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-mmx.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-mmx.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-x87.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver4/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s
M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/bextr-read-after-ld.s
M llvm/test/tools/llvm-mca/X86/bzhi-read-after-ld.s
M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-3.s
M llvm/test/tools/llvm-mca/X86/sqrt-rsqrt-rcp-memop.s
M llvm/test/tools/llvm-mca/X86/stack-engine-pop.s
M llvm/test/tools/llvm-mca/X86/stack-engine-push.s
M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-2.s
M llvm/tools/llvm-mca/Views/TimelineView.cpp
M llvm/tools/llvm-mca/Views/TimelineView.h
Log Message:
-----------
[llvm-mca] Fix total execution count in Average Wait times (#199500)
Fix the column `0` for the `<total>` row in llvm-mca's `Average Wait times` report. The `total`
row now represents the total dynamic execution count used to normalize the averages,
instead of the per-instruction iteration count. Update the timeline view docs and autogenerated
test expectations accordingly.
Co-authored-by: liuxiaodong <liuxiaodong at sunmmio.com>
Commit: 40602b6346cc3e2fda464f31d9e9473c55be94b3
https://github.com/llvm/llvm-project/commit/40602b6346cc3e2fda464f31d9e9473c55be94b3
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M lld/COFF/Writer.cpp
M lld/test/COFF/ctors_dtors_priority.s
Log Message:
-----------
[LLD][COFF] Gate second-dot section-name stripping on MinGW (#199625)
The comment in getOutputSectionName has always called the second-dot
stripping "for MinGW" (e.g. .ctors.NNNN), but the code applied it on
every target. This hiddes a split-dwarf bug #199616.
Take an isMinGW gate and skip the stripping when it is false.
Commit: 1b19eccf1751f99a8a77371428bc2708169c516e
https://github.com/llvm/llvm-project/commit/1b19eccf1751f99a8a77371428bc2708169c516e
Author: Amir Ayupov <aaupov at fb.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
Log Message:
-----------
[BOLT][NFC] Split out function marking from profile parsing
Move out `setHasProfileAvailable` into `markFunctionsWithProfile`.
This also allows extracting per-pre-aggregated type handling in
`parseAggregatedLBREntry` into a switch statement.
Test Plan:
NFC
Processing time change (wall time):
* 10MB pre-aggregated profile:
- Parsing aggregated branch events: 0.16s -> 0.05s
- Pre-process profile data (parsing+marking): 0.18s -> 0.16s
* 6GB perf.data file:
- Parsing branch events: 29.06s -> 28.55s
- Pre-process profile data (excluding perf script): 29.47s -> 29.13s
Reviewers:
rafaelauler, yota9, maksfb, ayermolo, yozhu, yavtuk, paschalis-mpeis
Pull Request: https://github.com/llvm/llvm-project/pull/199320
Commit: 73de4c73dc9b143212848cc0f97abc123cc7893c
https://github.com/llvm/llvm-project/commit/73de4c73dc9b143212848cc0f97abc123cc7893c
Author: Shilei Tian <i at tianshilei.me>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
Log Message:
-----------
[NFC][AMDGPU] Improve the predicate uses for WMMAs (#199807)
Commit: 7259dd668674a2eb26be6cd21452292fe39fcc09
https://github.com/llvm/llvm-project/commit/7259dd668674a2eb26be6cd21452292fe39fcc09
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
Log Message:
-----------
[RISCV][P-ext] Add DefVXSAT argument to tablegen classes. NFC (#199797)
Sink the lets Defs = [VXSAT] into the classs.
This makes the encoding based structure of this file more consistent.
Commit: 05e1af73ba2d3f8fcf8fca2eca7aaf62d44eb3b6
https://github.com/llvm/llvm-project/commit/05e1af73ba2d3f8fcf8fca2eca7aaf62d44eb3b6
Author: Craig Topper <craig.topper at sifive.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
Log Message:
-----------
[RISCV][P-ext] Remove duplicate hasSideEffects=0, mayLoad=0, mayStore=0. NFC (#199798)
We had a let outside the class and inside.
Commit: 0d5b7522dc729f04c27d8c9d536321d57b3b3196
https://github.com/llvm/llvm-project/commit/0d5b7522dc729f04c27d8c9d536321d57b3b3196
Author: Jianjian Guan <jacquesguan at me.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
Log Message:
-----------
[RISCV][NFC] Remove SegInstSEW for unused function (#199598)
Since SegInstSEW is only used by segment load/store, no need to keep it
for other builtins.
Commit: 853d532794be83adc97d51c9ff8c9095ce32631b
https://github.com/llvm/llvm-project/commit/853d532794be83adc97d51c9ff8c9095ce32631b
Author: Sam Clegg <sbc at chromium.org>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/test/tools/llvm-symbolizer/wasm-basic.s
Log Message:
-----------
Fix llvm-symbolizer test broken by #199739 (#199801)
I broke this test in #199739. As a result to that change, the start of
the CODE section in the linked WASM file shifted from 0x41 to 0x37 (a
shift of -10 bytes).
I was not aware that `wasm-ld` had testing outside of `lld/test/wasm`.
Commit: 5a616ce490abe551ffc7a7714c28e90c483f5b39
https://github.com/llvm/llvm-project/commit/5a616ce490abe551ffc7a7714c28e90c483f5b39
Author: Nikolas Klauser <nikolasklauser at berlin.de>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M libcxx/utils/ci/docker/docker-compose.yml
Log Message:
-----------
[libc++] Update the GCC head version to 17 (#199823)
GCC released a new version, so we should bump the versions installed in
the CI so we can upgrade.
Commit: 22ba468002d561185371c06f899c8c753edc6750
https://github.com/llvm/llvm-project/commit/22ba468002d561185371c06f899c8c753edc6750
Author: Timm Baeder <tbaeder at redhat.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/test/AST/ByteCode/unions.cpp
Log Message:
-----------
[clang][bytecode] Fix non-defaulted union copy/move ctors (#199394)
They are like regular record ctors.
Commit: 80490b8cfa343692500706f31893ba429fec96b7
https://github.com/llvm/llvm-project/commit/80490b8cfa343692500706f31893ba429fec96b7
Author: Iris Shi <0.0 at owo.li>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M clang/docs/ReleaseNotes.rst
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Sema/SemaStmtAsm.cpp
A clang/test/Sema/inline-asm-constraint-embedded-null.c
Log Message:
-----------
[clang][diagnostics] Reject embedded NUL characters in inline asm (#196462)
As suggested by @jmorse and @efriedma-quic in #196223.
---------
Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
Commit: 3913c828ab911757e8c971817757c2ab51452e45
https://github.com/llvm/llvm-project/commit/3913c828ab911757e8c971817757c2ab51452e45
Author: somi <1wosomm1 at gmail.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M llvm/lib/MC/MCStreamer.cpp
R llvm/test/MC/AsmParser/cfi-unfinished-frame.s
M llvm/test/MC/ELF/cfi-scope-errors.s
Log Message:
-----------
[MC] Diagnose unfinished CFI frame from an earlier section (#196775)
Fixes #177852.
The reproducer has two `.cfi_startproc` directives separated by a
`.popsection`. The first is never closed; the second is properly paired
with `.cfi_endproc`. `MCStreamer::finish()` only inspects the last entry
of `DwarfFrameInfos`, so the unfinished earlier frame slips through and
crashes `finishImpl()` when it emits frame data with a null End label.
Use `hasUnfinishedDwarfFrameInfo()` instead, which walks the full
`FrameInfoStack` and catches every unfinished frame.
---------
Co-authored-by: Fangrui Song <i at maskray.me>
Commit: c85c8af5426eb1affa14388deb78a4731737bf04
https://github.com/llvm/llvm-project/commit/c85c8af5426eb1affa14388deb78a4731737bf04
Author: Garvit Gupta <garvgupt at qti.qualcomm.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M compiler-rt/lib/builtins/CMakeLists.txt
Log Message:
-----------
[compiler-rt][ARM] Add missing SUPERSEDES for optimized FP comparison sources (#199604)
PR #179924 and #179925 added optimized assembly implementations for ARM
double-precision and single-precision FP comparisons (arm/cmpdf2.S,
arm/gedf2.S, arm/unorddf2.S, arm/cmpsf2.S, arm/gesf2.S, arm/unordsf2.S)
but only added SUPERSEDES annotations for the thumb1 variants. The arm
variants were missing these annotations, causing both the generic and
optimized implementations to be included in libclang_rt.builtins.a.
For double-precision, the archive contains:
- comparedf2.c.obj (pos 28): defines __unorddf2, __aeabi_dcmpun, ...
- divdc3.c.obj (pos 32): defines __divdc3; refs __aeabi_dcmpun
- unorddf2.S.obj (pos 126): defines __unorddf2, __aeabi_dcmpun
- aeabi_dcmp.S.obj (pos 158): defines __aeabi_dcmpeq; refs __eqdf2
When linking divdc3_test.c, the linker loads divdc3.c.obj which
introduces __aeabi_dcmpun as undefined. BFD-like linkers (GNU ld, ELD)
continue scanning forward and resolve __aeabi_dcmpun from unorddf2.S.obj
(pos 126). Later, aeabi_dcmp.S.obj introduces __eqdf2 as undefined,
which is resolved by comparedf2.c.obj (pos 28) on the next pass. Since
both comparedf2.c.obj and unorddf2.S.obj define __unorddf2, the linker
reports a duplicate symbol error.
lld does not encounter this because of the difference in the way it
resolves symbol references. This causes comparedf2.c.obj (pos 28) to be
selected first for __aeabi_dcmpun, making unorddf2.S.obj unnecessary.
The same pattern exists for single-precision where arm/comparesf2.S and
arm/unordsf2.S both define __unordsf2 and __aeabi_fcmpun.
The fix adds SUPERSEDES annotations so that the generic implementations
(comparedf2.c for double-precision and arm/comparesf2.S for single-
precision) are removed from the source list when the optimized assembly
replacements are present. The assembly files together provide all
symbols that the generic implementations define.
The surrounding code was reviewed, and this PR was developed with the
assistance of AI.
Commit: 18ddec75ba8241bb49e290cbc60c05dca7ab6250
https://github.com/llvm/llvm-project/commit/18ddec75ba8241bb49e290cbc60c05dca7ab6250
Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M lldb/source/Target/Process.cpp
Log Message:
-----------
[lldb] Use private stop for breakpoint-delaying decision (#199639)
Commit: 532940bdee66bf5f36a70578698aab66f16919af
https://github.com/llvm/llvm-project/commit/532940bdee66bf5f36a70578698aab66f16919af
Author: Haohai Wen <haohai.wen at intel.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
A llvm/include/llvm/Object/BBAddrMap.def
M llvm/include/llvm/Object/BBAddrMap.h
Log Message:
-----------
[BBAddrMap] Drive Features and Metadata bits from BBAddrMap.def (#196906)
Move the bit name list of BBAddrMap::Features and BBAddrMap::BBEntry::Metadata
into a new BBAddrMap.def and derive the enum, bitfield, encode(), decode(),
and operator== from it. Adding a new bit now only requires one line in the
.def file.
Also expose BBAddrMap::Features::KnownMask for future use.
Commit: 4ee7e900f321c78271c87da47f1d7bd4263f3e7c
https://github.com/llvm/llvm-project/commit/4ee7e900f321c78271c87da47f1d7bd4263f3e7c
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M bolt/test/lit.cfg.py
M libsycl/test/lit.cfg.py
M lldb/test/API/lit.cfg.py
M lldb/test/Shell/lit.cfg.py
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/TestingConfig.py
M llvm/utils/lit/lit/formats/googletest.py
M llvm/utils/lit/lit/main.py
M llvm/utils/lit/tests/Inputs/googletest-timeout/lit.cfg
M llvm/utils/lit/tests/Inputs/shtest-timeout/lit.cfg
Log Message:
-----------
[lit] Move maxIndividualTestTime from global to test suite config (#198192)
Simplify LitConfig initialization and setter to allow None values.
TestingConfig.maxIndividualTestTime is initialized to 0 (or resolved to
0 if None) strictly during initialization.
This fixes an issue where the aggressive BOLT timeout of 60s (previously
set globally on lit_config) was leaking and affecting libc++ tests. By
moving the timeout configuration from the global lit_config to the
individual test suite config, we ensure that timeouts are isolated and
respect suite-local settings without leaking.
PR Stack:
* ➤ https://github.com/llvm/llvm-project/pull/198192
* https://github.com/llvm/llvm-project/pull/198193
Assisted-by: Gemini
Commit: 4f54064a6e192eb182ba5e718f1b6d70065a6609
https://github.com/llvm/llvm-project/commit/4f54064a6e192eb182ba5e718f1b6d70065a6609
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2026-05-27 (Wed, 27 May 2026)
Changed paths:
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M llvm/include/llvm/IR/MemoryModelRelaxationAnnotations.h
M llvm/lib/IR/MemoryModelRelaxationAnnotations.cpp
Log Message:
-----------
[IR] Introduce an appendTags() idiom to set MMRA metadata [NFC] (#199621)
This is a simple set-union of new tags and existing tags. This is safer
than directly setting metadata, which can over-write existing MMRAs.
Assisted-By: Claude Opus 4.6
---------
Co-authored-by: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
Commit: 957a7e0c5f4b12767ec6cb22b35d04d627895759
https://github.com/llvm/llvm-project/commit/957a7e0c5f4b12767ec6cb22b35d04d627895759
Author: Vitaly Buka <vitalybuka at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M .github/workflows/libc-fullbuild-tests.yml
M .github/workflows/libc-overlay-tests.yml
M .github/workflows/libc-shared-tests.yml
M .github/workflows/release-binaries.yml
M .github/workflows/release-doxygen.yml
M .github/workflows/release-tasks.yml
M .github/workflows/sycl-tests.yml
M bolt/include/bolt/Profile/DataAggregator.h
M bolt/lib/Profile/DataAggregator.cpp
M clang-tools-extra/clang-doc/JSONGenerator.cpp
M clang-tools-extra/clang-doc/Representation.cpp
M clang-tools-extra/clang-doc/Representation.h
M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
M clang-tools-extra/clangd/ProjectModules.cpp
M clang-tools-extra/clangd/Selection.cpp
M clang-tools-extra/clangd/SemanticHighlighting.cpp
A clang-tools-extra/test/clang-doc/compact.cpp
M clang-tools-extra/test/clang-doc/enum.cpp
M clang-tools-extra/test/clang-doc/index.cpp
M clang-tools-extra/test/clang-doc/json/class-requires.cpp
M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
M clang-tools-extra/test/clang-doc/json/class-template.cpp
M clang-tools-extra/test/clang-doc/json/class.cpp
M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
M clang-tools-extra/test/clang-doc/json/concept.cpp
M clang-tools-extra/test/clang-doc/json/function-requires.cpp
M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
M clang-tools-extra/test/clang-doc/json/inheritance.cpp
M clang-tools-extra/test/clang-doc/json/method-template.cpp
M clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
M clang-tools-extra/test/clang-doc/json/namespace.cpp
M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
M clang-tools-extra/test/clang-doc/templates.cpp
M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
M clang/docs/ReleaseNotes.rst
M clang/include/clang/AST/DeclarationName.h
M clang/include/clang/Basic/DarwinSDKInfo.h
M clang/include/clang/Basic/DebugOptions.def
M clang/include/clang/Basic/DiagnosticSemaKinds.td
M clang/include/clang/Basic/riscv_vector.td
M clang/include/clang/Basic/riscv_vector_common.td
M clang/include/clang/CIR/MissingFeatures.h
M clang/include/clang/Options/Options.td
M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
M clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
M clang/include/clang/Support/RISCVVIntrinsicUtils.h
M clang/lib/AST/ASTImporter.cpp
M clang/lib/AST/ByteCode/Compiler.cpp
M clang/lib/AST/ByteCode/InterpBuiltin.cpp
M clang/lib/AST/Decl.cpp
M clang/lib/AST/DeclCXX.cpp
M clang/lib/Basic/DarwinSDKInfo.cpp
M clang/lib/Basic/FileManager.cpp
M clang/lib/Basic/TargetInfo.cpp
M clang/lib/Basic/Targets/WebAssembly.cpp
M clang/lib/Basic/Targets/WebAssembly.h
M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
M clang/lib/CodeGen/CGCUDANV.cpp
M clang/lib/CodeGen/CGDebugInfo.cpp
M clang/lib/CodeGen/CGExprAgg.cpp
M clang/lib/CodeGen/CGHLSLBuiltins.cpp
M clang/lib/CodeGen/CGHLSLRuntime.cpp
M clang/lib/CodeGen/CGOpenMPRuntime.cpp
M clang/lib/CodeGen/CodeGenFunction.h
M clang/lib/CodeGen/CodeGenModule.cpp
M clang/lib/CodeGen/CodeGenModule.h
M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
M clang/lib/Driver/ToolChains/AMDGPU.cpp
M clang/lib/Driver/ToolChains/Clang.cpp
M clang/lib/Driver/ToolChains/Darwin.cpp
M clang/lib/Driver/ToolChains/Darwin.h
M clang/lib/Driver/ToolChains/WebAssembly.cpp
M clang/lib/Lex/HeaderSearch.cpp
M clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
M clang/lib/Sema/AnalysisBasedWarnings.cpp
M clang/lib/Sema/OpenCLBuiltins.td
M clang/lib/Sema/SemaARM.cpp
M clang/lib/Sema/SemaDeclCXX.cpp
M clang/lib/Sema/SemaExpr.cpp
M clang/lib/Sema/SemaExprCXX.cpp
M clang/lib/Sema/SemaLookup.cpp
M clang/lib/Sema/SemaOpenACCClause.cpp
M clang/lib/Sema/SemaStmtAsm.cpp
M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
M clang/lib/Support/RISCVVIntrinsicUtils.cpp
M clang/test/AST/ByteCode/builtin-functions.cpp
M clang/test/AST/ByteCode/unions.cpp
M clang/test/AST/ast-dump-aarch64-mte.c
M clang/test/AST/ast-dump-decl.cpp
M clang/test/AST/ast-dump-expr-json.cpp
M clang/test/AST/ast-dump-expr.cpp
M clang/test/AST/ast-dump-linkage-internal.cpp
M clang/test/AST/ast-dump-linkage.cpp
M clang/test/AST/ast-dump-templates-pattern.cpp
A clang/test/ASTMerge/class-template-spec/Inputs/class-template-spec.cpp
A clang/test/ASTMerge/class-template-spec/test.cpp
A clang/test/Analysis/ctu/constraintsatisfaction.cpp
M clang/test/CIR/CodeGenCUDA/device-stub.cu
M clang/test/CMakeLists.txt
M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
M clang/test/CodeGen/AArch64/neon-intrinsics.c
M clang/test/CodeGen/AArch64/neon/intrinsics.c
M clang/test/CodeGen/arm64-mte.c
M clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
M clang/test/CodeGen/lto-newpm-pipeline.c
M clang/test/CodeGen/unique-internal-linkage-names.cpp
M clang/test/CodeGenCXX/builtin-amdgcn-fence.cpp
M clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
M clang/test/CodeGenDirectX/Builtins/dot2add.c
M clang/test/CodeGenHLSL/ArrayAssignable.logicalptr.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/ArrayReturn.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixConstructor.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixExplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixImplicitTruncation.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptConstSwizzle.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptGetter.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptSetter.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
M clang/test/CodeGenHLSL/BasicFeatures/MatrixToAndFromVectorConstructors.hlsl
M clang/test/CodeGenHLSL/BoolMatrix.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorFunction.hlsl
M clang/test/CodeGenHLSL/GlobalConstructorLib.hlsl
M clang/test/CodeGenHLSL/GlobalConstructors.hlsl
M clang/test/CodeGenHLSL/builtins/AddUint64.hlsl
M clang/test/CodeGenHLSL/builtins/BoolSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/ScalarSwizzles.hlsl
M clang/test/CodeGenHLSL/builtins/abs.hlsl
M clang/test/CodeGenHLSL/builtins/ceil.hlsl
M clang/test/CodeGenHLSL/builtins/f16tof32-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/f16tof32.hlsl
M clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
M clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
M clang/test/CodeGenHLSL/builtins/floor.hlsl
M clang/test/CodeGenHLSL/builtins/mad.hlsl
M clang/test/CodeGenHLSL/convergence/cf.for.plain.hlsl
M clang/test/CodeGenHLSL/convergence/do.while.hlsl
M clang/test/CodeGenHLSL/convergence/entry.point.hlsl
M clang/test/CodeGenHLSL/convergence/for.hlsl
M clang/test/CodeGenHLSL/convergence/global_array.hlsl
M clang/test/CodeGenHLSL/convergence/while.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-accessor-scalar-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-one-based-swizzle-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-accessor-scalar-store.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-load.hlsl
M clang/test/CodeGenHLSL/matrix-member-zero-based-swizzle-store.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-constructors.hlsl
M clang/test/CodeGenHLSL/resources/ByteAddressBuffers-methods.hlsl
M clang/test/CodeGenHLSL/resources/CBufferMatrixSingleSubscriptSwizzle.hlsl
M clang/test/CodeGenHLSL/resources/MatrixElement_cbuffer.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-lib.hlsl
M clang/test/CodeGenHLSL/resources/StructuredBuffers-methods-ps.hlsl
M clang/test/CodeGenHLSL/resources/Texture2D-Mips.hlsl
M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
M clang/test/CodeGenHLSL/resources/TypedBuffers-methods.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer.hlsl
M clang/test/CodeGenHLSL/resources/cbuffer_with_packoffset.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-many.hlsl
M clang/test/CodeGenHLSL/resources/res-array-global-subarray-one.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local-multi-dim.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local1.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local2.hlsl
M clang/test/CodeGenHLSL/resources/res-array-local3.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs-array.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs-inheritance.hlsl
M clang/test/CodeGenHLSL/resources/resources-in-structs.hlsl
M clang/test/CodeGenHLSL/static-local-ctor.hlsl
M clang/test/CodeGenHLSL/this-assignment-overload.hlsl
M clang/test/CodeGenHLSL/this-assignment.hlsl
M clang/test/CodeGenHLSL/this-reference.hlsl
M clang/test/DebugInfo/Generic/sysroot-sdk.c
M clang/test/Driver/amdgpu-validate-sanitize.cl
R clang/test/Driver/clang-offload-bundler-asserts-on.c
R clang/test/Driver/clang-offload-bundler-standardize.c
R clang/test/Driver/clang-offload-bundler-zlib.c
R clang/test/Driver/clang-offload-bundler-zstd.c
R clang/test/Driver/clang-offload-bundler.c
R clang/test/Driver/fat-archive-unbundle-ext.c
R clang/test/Driver/linker-wrapper-canonical-prefixes.c
R clang/test/Driver/linker-wrapper-hip-amdgcnspirv.c
R clang/test/Driver/linker-wrapper-hip-no-rdc.c
R clang/test/Driver/linker-wrapper-image.c
R clang/test/Driver/linker-wrapper-llvm-help.c
R clang/test/Driver/linker-wrapper.c
R clang/test/Driver/nvlink-wrapper.c
M clang/test/Modules/debug-info-moduleimport.m
M clang/test/Modules/safe_buffers_optout.cpp
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-canonical-prefixes.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-amdgcnspirv.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-llvm-help.c
A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper.c
A clang/test/OffloadTools/clang-linker-wrapper/lit.local.cfg
A clang/test/OffloadTools/clang-linker-wrapper/openmp-spirv.cpp
A clang/test/OffloadTools/clang-nvlink-wrapper/nvlink-wrapper.c
A clang/test/OffloadTools/clang-offload-bundler/asserts-on.c
A clang/test/OffloadTools/clang-offload-bundler/basic.c
A clang/test/OffloadTools/clang-offload-bundler/fat-archive-unbundle-ext.c
A clang/test/OffloadTools/clang-offload-bundler/standardize.c
A clang/test/OffloadTools/clang-offload-bundler/zlib.c
A clang/test/OffloadTools/clang-offload-bundler/zstd.c
A clang/test/OffloadTools/clang-sycl-linker/basic.ll
A clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
A clang/test/OffloadTools/clang-sycl-linker/triple.ll
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-complex.cpp
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files-2.cpp
M clang/test/PCH/unsafe-buffer-usage-pragma-pch-cross-files.cpp
M clang/test/Preprocessor/wasm-target-features.c
M clang/test/Sema/builtins-arm64-mte.c
A clang/test/Sema/inline-asm-constraint-embedded-null.c
M clang/test/SemaCXX/cxx2a-consteval.cpp
M clang/test/SemaCXX/cxx2c-decomposition.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-issue-79379.cpp
M clang/test/SemaCXX/warn-unsafe-buffer-usage-pragma-pch.cpp
A clang/test/SemaCXX/warn-unsafe-buffer-usage-template-instantiation-notes.cpp
M clang/test/SemaHLSL/Resources/static_resources.hlsl
A clang/test/SemaOpenACC/compute-construct-reduction-vla.c
A clang/test/SemaOpenACC/compute-construct-reduction-vla.cpp
A clang/test/SemaOpenCL/intel-bfloat16-conversions-builtins.cl
A clang/test/SemaOpenCL/intel-split-work-group-barrier-builtins.cl
R clang/test/Tooling/clang-linker-wrapper-spirv.cpp
R clang/test/Tooling/clang-sycl-linker-split-mode.ll
R clang/test/Tooling/clang-sycl-linker-triple.ll
R clang/test/Tooling/clang-sycl-linker.ll
M clang/test/Tooling/lit.local.cfg
M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
M clang/unittests/Basic/DarwinSDKInfoTest.cpp
M clang/unittests/Basic/FileManagerTest.cpp
M clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
M clang/unittests/Tooling/Syntax/BuildTreeTest.cpp
M clang/utils/TableGen/RISCVVEmitter.cpp
M compiler-rt/lib/builtins/CMakeLists.txt
M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
M flang/include/flang/Lower/CallInterface.h
M flang/include/flang/Optimizer/Builder/FIRBuilder.h
A flang/include/flang/Optimizer/Dialect/FIRBoxUtils.h
M flang/include/flang/Optimizer/Dialect/FIRType.h
M flang/include/flang/Semantics/openmp-utils.h
M flang/lib/Evaluate/tools.cpp
M flang/lib/Lower/CallInterface.cpp
M flang/lib/Lower/ConvertCall.cpp
M flang/lib/Lower/ConvertConstant.cpp
M flang/lib/Lower/ConvertVariable.cpp
M flang/lib/Optimizer/Builder/FIRBuilder.cpp
M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
M flang/lib/Optimizer/Dialect/CMakeLists.txt
A flang/lib/Optimizer/Dialect/FIRBoxUtils.cpp
M flang/lib/Optimizer/Dialect/FIROps.cpp
M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
M flang/lib/Semantics/check-omp-structure.cpp
M flang/lib/Semantics/openmp-utils.cpp
M flang/test/Fir/array-coor-canonicalization.fir
A flang/test/HLFIR/c_devptr_byvalue.cuf
A flang/test/Semantics/OpenMP/declare-simd-interface-body.f90
M flang/test/Semantics/OpenMP/linear-clause03.f90
M flang/test/Transforms/FIRToMemRef/array-coor-rebox-slice-shape.mlir
M flang/test/Transforms/FIRToMemRef/array-coor-slice-shift.mlir
M libc/config/baremetal/config.json
M libc/test/src/math/smoke/NextAfterTest.h
M libc/test/src/math/smoke/NextTowardTest.h
M libcxx/include/__algorithm/copy_if.h
M libcxx/include/__algorithm/partial_sort_copy.h
M libcxx/include/__algorithm/ranges_copy_if.h
M libcxx/include/__algorithm/ranges_partial_sort_copy.h
M libcxx/include/__algorithm/ranges_unique_copy.h
M libcxx/include/__algorithm/unique_copy.h
M libcxx/include/__memory/ranges_uninitialized_algorithms.h
M libcxx/include/__memory/uninitialized_algorithms.h
M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
M libcxx/utils/ci/docker/docker-compose.yml
M lld/COFF/Writer.cpp
M lld/MachO/BPSectionOrderer.cpp
M lld/MachO/ConcatOutputSection.cpp
M lld/MachO/ConcatOutputSection.h
M lld/MachO/InputSection.h
M lld/MachO/LTO.cpp
M lld/docs/ReleaseNotes.rst
M lld/test/COFF/ctors_dtors_priority.s
M lld/test/ELF/lto/devirt_vcall_vis_export_dynamic.ll
M lld/test/ELF/lto/devirt_vcall_vis_public.ll
M lld/test/ELF/lto/devirt_vcall_vis_shared_def.ll
A lld/test/MachO/Inputs/large-lto-object.ll
M lld/test/MachO/arm64-thunks.s
A lld/test/MachO/eh-frame-ordering.s
M lld/test/MachO/lto-object-path.ll
M lld/test/wasm/alias.s
M lld/test/wasm/build-id.test
M lld/test/wasm/ctor-return-value.s
M lld/test/wasm/duplicate-global-imports.s
M lld/test/wasm/export-optional.s
M lld/test/wasm/externref.s
M lld/test/wasm/function-imports-first.ll
M lld/test/wasm/function-imports.s
M lld/test/wasm/gc-imports.s
M lld/test/wasm/gc-sections.ll
M lld/test/wasm/global-base.test
M lld/test/wasm/globals.s
M lld/test/wasm/lto/tls.ll
M lld/test/wasm/map-file.s
M lld/test/wasm/merge-string-debug.s
M lld/test/wasm/mutable-global-exports.s
M lld/test/wasm/name-section-mangling.s
M lld/test/wasm/signature-mismatch-export.ll
M lld/test/wasm/signature-mismatch.s
M lld/test/wasm/stack-first.test
A lld/test/wasm/stack-pointer-abi.s
M lld/test/wasm/startstop.ll
M lld/test/wasm/table-base.s
M lld/test/wasm/tag-section.ll
A lld/test/wasm/thread-context-abi-mismatch.s
M lld/test/wasm/tls-base-non-shared-memory.s
A lld/test/wasm/tls-libcall.s
M lld/test/wasm/undefined-weak-call.s
M lld/test/wasm/unresolved-symbols-dynamic.s
M lld/test/wasm/weak-undefined-pic.s
M lld/test/wasm/weak-undefined.s
M lld/wasm/Config.h
M lld/wasm/Driver.cpp
M lld/wasm/Options.td
M lld/wasm/SyntheticSections.cpp
M lld/wasm/Writer.cpp
M lldb/docs/resources/lldbgdbremote.md
M lldb/source/Host/common/Socket.cpp
M lldb/source/Host/posix/DomainSocket.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp
M lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp
M lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h
M lldb/source/Target/Process.cpp
M lldb/source/ValueObject/ValueObjectVTable.cpp
A lldb/test/API/functionalities/gdb_remote_client/TestUnavailableRegisters.py
M lldb/test/API/functionalities/vtable/TestVTableValue.py
M lldb/test/API/lang/objc/modules-auto-import/Makefile
M lldb/test/API/lang/objc/modules-auto-import/TestModulesAutoImport.py
M lldb/tools/debugserver/source/RNBRemote.cpp
M lldb/tools/lldb-dap/DAP.cpp
M lldb/tools/lldb-dap/JSONUtils.cpp
M lldb/tools/lldb-dap/LLDBUtils.cpp
M lldb/unittests/Host/SocketTest.cpp
M llvm/CMakeLists.txt
M llvm/docs/AMDGPU/AMDGPUAsmGFX950.rst
M llvm/docs/AMDGPUUsage.rst
M llvm/docs/CodingStandards.rst
M llvm/docs/CommandGuide/llvm-mca.rst
M llvm/docs/LangRef.rst
M llvm/docs/ProgrammersManual.rst
M llvm/docs/ReleaseNotes.md
M llvm/include/llvm/ADT/APFloat.h
M llvm/include/llvm/ADT/DenseMap.h
M llvm/include/llvm/Analysis/CtxProfAnalysis.h
M llvm/include/llvm/Analysis/TargetTransformInfo.h
M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
M llvm/include/llvm/Bitcode/BitcodeReader.h
M llvm/include/llvm/Bitcode/LLVMBitCodes.h
M llvm/include/llvm/IR/DebugInfo.h
M llvm/include/llvm/IR/FixedMetadataKinds.def
M llvm/include/llvm/IR/GlobalValue.h
M llvm/include/llvm/IR/Intrinsics.td
M llvm/include/llvm/IR/MemoryModelRelaxationAnnotations.h
M llvm/include/llvm/IR/Module.h
M llvm/include/llvm/IR/ModuleSummaryIndex.h
M llvm/include/llvm/LTO/LTO.h
A llvm/include/llvm/Object/BBAddrMap.def
M llvm/include/llvm/Object/BBAddrMap.h
M llvm/include/llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h
M llvm/include/llvm/Transforms/Coroutines/CoroAnnotationElide.h
M llvm/include/llvm/Transforms/Coroutines/CoroCleanup.h
M llvm/include/llvm/Transforms/Coroutines/CoroConditionalWrapper.h
M llvm/include/llvm/Transforms/Coroutines/CoroEarly.h
M llvm/include/llvm/Transforms/Coroutines/CoroElide.h
M llvm/include/llvm/Transforms/Coroutines/SpillUtils.h
M llvm/include/llvm/Transforms/IPO/Annotation2Metadata.h
M llvm/include/llvm/Transforms/IPO/ArgumentPromotion.h
M llvm/include/llvm/Transforms/IPO/CalledValuePropagation.h
M llvm/include/llvm/Transforms/IPO/ConstantMerge.h
M llvm/include/llvm/Transforms/IPO/CrossDSOCFI.h
M llvm/include/llvm/Transforms/IPO/DeadArgumentElimination.h
M llvm/include/llvm/Transforms/IPO/ElimAvailExtern.h
M llvm/include/llvm/Transforms/IPO/ExpandVariadics.h
M llvm/include/llvm/Transforms/IPO/FatLTOCleanup.h
M llvm/include/llvm/Transforms/IPO/ForceFunctionAttrs.h
M llvm/include/llvm/Transforms/IPO/GlobalOpt.h
M llvm/include/llvm/Transforms/IPO/GlobalSplit.h
M llvm/include/llvm/Transforms/IPO/HotColdSplitting.h
M llvm/include/llvm/Transforms/IPO/IROutliner.h
M llvm/include/llvm/Transforms/IPO/LoopExtractor.h
M llvm/include/llvm/Transforms/IPO/MemProfContextDisambiguation.h
M llvm/include/llvm/Transforms/IPO/OpenMPOpt.h
M llvm/include/llvm/Transforms/IPO/PartialInlining.h
M llvm/include/llvm/Transforms/IPO/SCCP.h
M llvm/include/llvm/Transforms/IPO/SampleProfileMatcher.h
M llvm/include/llvm/Transforms/InstCombine/InstCombiner.h
M llvm/include/llvm/Transforms/Instrumentation/AddressSanitizerCommon.h
M llvm/include/llvm/Transforms/Instrumentation/BlockCoverageInference.h
M llvm/include/llvm/Transforms/Instrumentation/CGProfile.h
M llvm/include/llvm/Transforms/Instrumentation/ControlHeightReduction.h
M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfFlattening.h
M llvm/include/llvm/Transforms/Instrumentation/PGOCtxProfLowering.h
M llvm/include/llvm/Transforms/Instrumentation/PGOForceFunctionAttrs.h
M llvm/include/llvm/Transforms/Scalar/ADCE.h
M llvm/include/llvm/Transforms/Scalar/AlignmentFromAssumptions.h
M llvm/include/llvm/Transforms/Scalar/AnnotationRemarks.h
M llvm/include/llvm/Transforms/Scalar/BDCE.h
M llvm/include/llvm/Transforms/Scalar/CallSiteSplitting.h
M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h
M llvm/include/llvm/Transforms/Scalar/ConstraintElimination.h
M llvm/include/llvm/Transforms/Scalar/CorrelatedValuePropagation.h
M llvm/include/llvm/Transforms/Scalar/DCE.h
M llvm/include/llvm/Transforms/Scalar/DFAJumpThreading.h
M llvm/include/llvm/Transforms/Scalar/DeadStoreElimination.h
M llvm/include/llvm/Transforms/Scalar/DivRemPairs.h
M llvm/include/llvm/Transforms/Scalar/DropUnnecessaryAssumes.h
M llvm/include/llvm/Transforms/Scalar/ExpandMemCmp.h
M llvm/include/llvm/Transforms/Scalar/FlattenCFG.h
M llvm/include/llvm/Transforms/Scalar/Float2Int.h
M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
M llvm/include/llvm/Transforms/Scalar/GuardWidening.h
M llvm/include/llvm/Transforms/Scalar/IVUsersPrinter.h
M llvm/include/llvm/Transforms/Scalar/IndVarSimplify.h
M llvm/include/llvm/Transforms/Scalar/InductiveRangeCheckElimination.h
M llvm/include/llvm/Transforms/Scalar/InferAddressSpaces.h
M llvm/include/llvm/Transforms/Scalar/InferAlignment.h
M llvm/include/llvm/Transforms/Scalar/InstSimplifyPass.h
M llvm/include/llvm/Transforms/Scalar/JumpTableToSwitch.h
M llvm/include/llvm/Transforms/Scalar/LICM.h
M llvm/include/llvm/Transforms/Scalar/LoopAccessAnalysisPrinter.h
M llvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
M llvm/include/llvm/Transforms/Scalar/LoopDataPrefetch.h
M llvm/include/llvm/Transforms/Scalar/LoopDeletion.h
M llvm/include/llvm/Transforms/Scalar/LoopDistribute.h
M llvm/include/llvm/Transforms/Scalar/LoopFlatten.h
M llvm/include/llvm/Transforms/Scalar/LoopFuse.h
M llvm/include/llvm/Transforms/Scalar/LoopIdiomRecognize.h
M llvm/include/llvm/Transforms/Scalar/LoopInstSimplify.h
M llvm/include/llvm/Transforms/Scalar/LoopInterchange.h
M llvm/include/llvm/Transforms/Scalar/LoopLoadElimination.h
M llvm/include/llvm/Transforms/Scalar/LoopPredication.h
M llvm/include/llvm/Transforms/Scalar/LoopRotation.h
M llvm/include/llvm/Transforms/Scalar/LoopSimplifyCFG.h
M llvm/include/llvm/Transforms/Scalar/LoopSink.h
M llvm/include/llvm/Transforms/Scalar/LoopStrengthReduce.h
M llvm/include/llvm/Transforms/Scalar/LoopTermFold.h
M llvm/include/llvm/Transforms/Scalar/LoopUnrollAndJamPass.h
M llvm/include/llvm/Transforms/Scalar/LoopUnrollPass.h
M llvm/include/llvm/Transforms/Scalar/LoopVersioningLICM.h
M llvm/include/llvm/Transforms/Scalar/LowerAtomicPass.h
M llvm/include/llvm/Transforms/Scalar/LowerConstantIntrinsics.h
M llvm/include/llvm/Transforms/Scalar/LowerGuardIntrinsic.h
M llvm/include/llvm/Transforms/Scalar/LowerMatrixIntrinsics.h
M llvm/include/llvm/Transforms/Scalar/LowerWidenableCondition.h
M llvm/include/llvm/Transforms/Scalar/MakeGuardsExplicit.h
M llvm/include/llvm/Transforms/Scalar/MergeICmps.h
M llvm/include/llvm/Transforms/Scalar/MergedLoadStoreMotion.h
M llvm/include/llvm/Transforms/Scalar/NaryReassociate.h
M llvm/include/llvm/Transforms/Scalar/NewGVN.h
M llvm/include/llvm/Transforms/Scalar/PartiallyInlineLibCalls.h
M llvm/include/llvm/Transforms/Scalar/PlaceSafepoints.h
M llvm/include/llvm/Transforms/Scalar/Reg2Mem.h
M llvm/include/llvm/Transforms/Scalar/RewriteStatepointsForGC.h
M llvm/include/llvm/Transforms/Scalar/SROA.h
M llvm/include/llvm/Transforms/Scalar/ScalarizeMaskedMemIntrin.h
M llvm/include/llvm/Transforms/Scalar/SeparateConstOffsetFromGEP.h
M llvm/include/llvm/Transforms/Scalar/SimpleLoopUnswitch.h
M llvm/include/llvm/Transforms/Scalar/Sink.h
M llvm/include/llvm/Transforms/Scalar/SpeculativeExecution.h
M llvm/include/llvm/Transforms/Scalar/StraightLineStrengthReduce.h
M llvm/include/llvm/Transforms/Scalar/StructurizeCFG.h
M llvm/include/llvm/Transforms/Scalar/TailRecursionElimination.h
M llvm/include/llvm/Transforms/Scalar/WarnMissedTransforms.h
M llvm/include/llvm/Transforms/Utils/AddDiscriminators.h
A llvm/include/llvm/Transforms/Utils/AssignGUID.h
M llvm/include/llvm/Transforms/Utils/BreakCriticalEdges.h
M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
M llvm/include/llvm/Transforms/Utils/CanonicalizeAliases.h
M llvm/include/llvm/Transforms/Utils/CanonicalizeFreezeInLoops.h
M llvm/include/llvm/Transforms/Utils/ControlFlowUtils.h
M llvm/include/llvm/Transforms/Utils/CountVisits.h
M llvm/include/llvm/Transforms/Utils/CtorUtils.h
M llvm/include/llvm/Transforms/Utils/DXILUpgrade.h
M llvm/include/llvm/Transforms/Utils/DebugSSAUpdater.h
M llvm/include/llvm/Transforms/Utils/DeclareRuntimeLibcalls.h
M llvm/include/llvm/Transforms/Utils/EntryExitInstrumenter.h
M llvm/include/llvm/Transforms/Utils/EscapeEnumerator.h
M llvm/include/llvm/Transforms/Utils/Evaluator.h
M llvm/include/llvm/Transforms/Utils/FixIrreducible.h
M llvm/include/llvm/Transforms/Utils/GlobalStatus.h
M llvm/include/llvm/Transforms/Utils/GuardUtils.h
M llvm/include/llvm/Transforms/Utils/HelloWorld.h
M llvm/include/llvm/Transforms/Utils/IRNormalizer.h
M llvm/include/llvm/Transforms/Utils/InjectTLIMappings.h
M llvm/include/llvm/Transforms/Utils/InstructionNamer.h
M llvm/include/llvm/Transforms/Utils/LibCallsShrinkWrap.h
M llvm/include/llvm/Transforms/Utils/LoopConstrainer.h
M llvm/include/llvm/Transforms/Utils/LoopPeel.h
M llvm/include/llvm/Transforms/Utils/LoopUtils.h
M llvm/include/llvm/Transforms/Utils/LoopVersioning.h
M llvm/include/llvm/Transforms/Utils/LowerAtomic.h
M llvm/include/llvm/Transforms/Utils/LowerGlobalDtors.h
M llvm/include/llvm/Transforms/Utils/LowerIFunc.h
M llvm/include/llvm/Transforms/Utils/LowerInvoke.h
M llvm/include/llvm/Transforms/Utils/LowerSwitch.h
M llvm/include/llvm/Transforms/Utils/LowerVectorIntrinsics.h
M llvm/include/llvm/Transforms/Utils/MatrixUtils.h
M llvm/include/llvm/Transforms/Utils/MemoryOpRemark.h
M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
M llvm/include/llvm/Transforms/Utils/MetaRenamer.h
M llvm/include/llvm/Transforms/Utils/MisExpect.h
M llvm/include/llvm/Transforms/Utils/MoveAutoInit.h
M llvm/include/llvm/Transforms/Utils/NameAnonGlobals.h
M llvm/include/llvm/Transforms/Utils/RelLookupTableConverter.h
M llvm/include/llvm/Transforms/Utils/SSAUpdater.h
M llvm/include/llvm/Transforms/Utils/SampleProfileInference.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h
M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseUtil.h
M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
M llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h
M llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h
M llvm/include/llvm/Transforms/Utils/StripConvergenceIntrinsics.h
M llvm/include/llvm/Transforms/Utils/StripGCRelocates.h
M llvm/include/llvm/Transforms/Utils/StripNonLineTableDebugInfo.h
M llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h
M llvm/include/llvm/Transforms/Utils/UnifyLoopExits.h
M llvm/include/llvm/Transforms/Utils/UnrollLoop.h
M llvm/include/llvm/Transforms/Utils/VNCoercion.h
M llvm/include/llvm/Transforms/Vectorize/LoopIdiomVectorize.h
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.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/Passes/TransactionAcceptOrRevert.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/RegionWithScore.h
M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.h
M llvm/include/llvm/Transforms/Vectorize/VectorCombine.h
M llvm/lib/Analysis/CtxProfAnalysis.cpp
M llvm/lib/Analysis/GlobalsModRef.cpp
M llvm/lib/Analysis/TargetTransformInfo.cpp
M llvm/lib/Analysis/VectorUtils.cpp
M llvm/lib/AsmParser/LLParser.cpp
M llvm/lib/Bitcode/Reader/BitcodeAnalyzer.cpp
M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
M llvm/lib/CodeGen/InlineSpiller.cpp
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
M llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp
M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
M llvm/lib/ExecutionEngine/Orc/Shared/SimpleRemoteEPCUtils.cpp
M llvm/lib/IR/DebugInfo.cpp
M llvm/lib/IR/Globals.cpp
M llvm/lib/IR/LegacyPassManager.cpp
M llvm/lib/IR/MemoryModelRelaxationAnnotations.cpp
M llvm/lib/IR/Type.cpp
M llvm/lib/LTO/LTO.cpp
M llvm/lib/LTO/LTOBackend.cpp
M llvm/lib/MC/CMakeLists.txt
M llvm/lib/MC/MCStreamer.cpp
M llvm/lib/Object/OffloadBundle.cpp
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Support/APFloat.cpp
M llvm/lib/Support/CMakeLists.txt
M llvm/lib/Support/Path.cpp
M llvm/lib/TableGen/TGParser.cpp
M llvm/lib/Target/AArch64/AArch64Combine.td
M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
M llvm/lib/Target/AMDGPU/GCNSubtarget.h
M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
M llvm/lib/Target/AMDGPU/SIFrameLowering.h
M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.h
M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
M llvm/lib/Target/RISCV/RISCVISelLowering.h
M llvm/lib/Target/RISCV/RISCVInstrGISel.td
M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
M llvm/lib/Target/SPIRV/SPIRVLegalizePointerCast.cpp
M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h
M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyExplicitLocals.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyFrameLowering.h
M llvm/lib/Target/WebAssembly/WebAssemblyISelDAGToDAG.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyLateEHPrepare.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyRegStackify.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.cpp
M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.cpp
M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
M llvm/lib/Target/X86/X86ISelLowering.cpp
M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
M llvm/lib/Transforms/IPO/FunctionImport.cpp
M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
M llvm/lib/Transforms/Scalar/GVN.cpp
M llvm/lib/Transforms/Scalar/InferAlignment.cpp
M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
M llvm/lib/Transforms/Scalar/LoopFuse.cpp
A llvm/lib/Transforms/Utils/AssignGUID.cpp
M llvm/lib/Transforms/Utils/BuildLibCalls.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
M llvm/lib/Transforms/Utils/CallPromotionUtils.cpp
M llvm/lib/Transforms/Utils/CloneModule.cpp
M llvm/lib/Transforms/Utils/FunctionImportUtils.cpp
M llvm/lib/Transforms/Utils/InlineFunction.cpp
M llvm/lib/Transforms/Utils/SplitModule.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/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/VPlanUtils.h
M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
A llvm/test/Analysis/LoopAccessAnalysis/clamped-access-pattern.ll
M llvm/test/Assembler/index-value-order.ll
M llvm/test/Assembler/target-type-param-errors.ll
M llvm/test/Bitcode/thinlto-alias.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-partial-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-pgo.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph-sample-profile-summary.ll
M llvm/test/Bitcode/thinlto-function-summary-callgraph.ll
M llvm/test/Bitcode/thinlto-function-summary-refgraph.ll
M llvm/test/Bitcode/thinlto-function-summary.ll
M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
M llvm/test/CodeGen/AArch64/fp16-v4-instructions.ll
A llvm/test/CodeGen/AArch64/interleaved-store-noninbounds-gep.ll
M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-compares.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/call-outgoing-stack-args.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-sextload-s16-true16.mir
M llvm/test/CodeGen/AMDGPU/GlobalISel/localizer.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/memory-legalizer-atomic-fence.ll
M llvm/test/CodeGen/AMDGPU/GlobalISel/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
M llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
M llvm/test/CodeGen/AMDGPU/amdgcn-call-whole-wave.ll
M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
M llvm/test/CodeGen/AMDGPU/av-spill-expansion-with-machine-cp.mir
M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
M llvm/test/CodeGen/AMDGPU/call-args-inreg-bfloat.ll
M llvm/test/CodeGen/AMDGPU/cc-entry.ll
M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
M llvm/test/CodeGen/AMDGPU/dbg-info-inline-at.ll
A llvm/test/CodeGen/AMDGPU/debug-frame.ll
M llvm/test/CodeGen/AMDGPU/ds-read2-write2-debug-info.ll
M llvm/test/CodeGen/AMDGPU/dwarf-multi-register-use-crash.ll
M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
A llvm/test/CodeGen/AMDGPU/elf-note-null-terminator.ll
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-u32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
A llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir
A llvm/test/CodeGen/AMDGPU/extract-vector-elt-binop-build-vector.ll
M llvm/test/CodeGen/AMDGPU/flat-saddr-load.ll
M llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir
M llvm/test/CodeGen/AMDGPU/frame-index.mir
M llvm/test/CodeGen/AMDGPU/function-args-inreg.ll
M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
M llvm/test/CodeGen/AMDGPU/inflate-av-remat-imm.mir
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-crash.ll
M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
M llvm/test/CodeGen/AMDGPU/issue98474-assigned-physreg-interference.mir
M llvm/test/CodeGen/AMDGPU/issue98474-virtregrewriter-live-out-undef-subregisters.mir
M llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir
M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.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.sudot4.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll
M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll
M llvm/test/CodeGen/AMDGPU/llvm.dbg.value.ll
M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
M llvm/test/CodeGen/AMDGPU/memory-legalizer-single-wave-workgroup-memops.ll
M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
M llvm/test/CodeGen/AMDGPU/nofpclass-call.ll
M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill-offset-overflow-gfx950.mir
M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
M llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
M llvm/test/CodeGen/AMDGPU/preserve-wwm-copy-dst-reg.ll
M llvm/test/CodeGen/AMDGPU/prologue-epilogue-markers.ll
M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
M llvm/test/CodeGen/AMDGPU/ptr-arg-dbg-value.ll
M llvm/test/CodeGen/AMDGPU/regalloc-introduces-copy-sgpr-to-agpr.mir
M llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir
M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/si-optimize-vgpr-live-range-dbg-instr.ll
M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
M llvm/test/CodeGen/AMDGPU/spill-restore-partial-copy.mir
M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir
M llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir
M llvm/test/CodeGen/AMDGPU/spill_kill_v16.mir
M llvm/test/CodeGen/AMDGPU/spillv16.mir
M llvm/test/CodeGen/AMDGPU/split-arg-dbg-value.ll
M llvm/test/CodeGen/AMDGPU/stack-realign.ll
M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
M llvm/test/CodeGen/AMDGPU/swdev504645-global-fold.ll
M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
M llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir
M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
M llvm/test/CodeGen/AMDGPU/unfold-masked-merge-scalar-variablemask.ll
M llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir
M llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir
M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
M llvm/test/CodeGen/AMDGPU/vgpr-tuple-allocation.ll
M llvm/test/CodeGen/AMDGPU/wave32.ll
M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
A llvm/test/CodeGen/LoongArch/musttail-call.ll
A llvm/test/CodeGen/LoongArch/musttail-indirect-args.ll
A llvm/test/CodeGen/RISCV/GlobalISel/bitreverse-zbkb.ll
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-extract-subvector.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-insert-subvector.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv32.mir
M llvm/test/CodeGen/RISCV/GlobalISel/legalizer/rvv/legalize-vscale-rv64.mir
M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
M llvm/test/CodeGen/RISCV/rvv/masked-udiv.ll
M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll
A llvm/test/CodeGen/WebAssembly/stack-abi.ll
M llvm/test/CodeGen/WebAssembly/thread_pointer.ll
M llvm/test/CodeGen/WebAssembly/tls-local-exec.ll
M llvm/test/CodeGen/X86/avx512-ext.ll
M llvm/test/CodeGen/X86/avx512-insert-extract.ll
M llvm/test/CodeGen/X86/avx512-mask-op.ll
M llvm/test/CodeGen/X86/fat-lto-section.ll
A llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll
M llvm/test/DebugInfo/AMDGPU/cfi.ll
M llvm/test/DebugInfo/AMDGPU/debug-loc-copy.ll
A llvm/test/DebugInfo/Generic/debuginfofinder-composite-type.ll
A llvm/test/DebugInfo/WebAssembly/thread-context-abi.ll
M llvm/test/LTO/Resolution/X86/not-prevailing-alias.ll
M llvm/test/LTO/Resolution/X86/not-prevailing-weak-aliasee.ll
M llvm/test/Linker/funcimport2.ll
R llvm/test/MC/AsmParser/cfi-unfinished-frame.s
M llvm/test/MC/ELF/cfi-scope-errors.s
M llvm/test/Other/new-pm-O0-defaults.ll
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
M llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
M llvm/test/ThinLTO/AArch64/aarch64_inline.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions1.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions2.ll
M llvm/test/ThinLTO/X86/Inputs/cache-typeid-resolutions3.ll
M llvm/test/ThinLTO/X86/ctor-dtor-alias.ll
M llvm/test/ThinLTO/X86/ctor-dtor-alias2.ll
M llvm/test/ThinLTO/X86/deadstrip.ll
M llvm/test/ThinLTO/X86/devirt_function_alias.ll
M llvm/test/ThinLTO/X86/devirt_function_alias2.ll
M llvm/test/ThinLTO/X86/devirt_pure_virtual_base.ll
M llvm/test/ThinLTO/X86/devirt_vcall_vis_public.ll
M llvm/test/ThinLTO/X86/distributed_import.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-exported-internal.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-unknown.ll
M llvm/test/ThinLTO/X86/funcattrs-prop-weak.ll
M llvm/test/ThinLTO/X86/globals-import.ll
M llvm/test/ThinLTO/X86/hidden-escaped-symbols-alt.ll
M llvm/test/ThinLTO/X86/hidden-escaped-symbols.ll
M llvm/test/ThinLTO/X86/import-ro-constant.ll
M llvm/test/ThinLTO/X86/index-const-prop-alias.ll
M llvm/test/ThinLTO/X86/index-const-prop.ll
M llvm/test/ThinLTO/X86/linkonce_resolution_comdat.ll
M llvm/test/ThinLTO/X86/memprof-dups.ll
M llvm/test/ThinLTO/X86/memprof_callee_type_mismatch.ll
M llvm/test/ThinLTO/X86/memprof_imported_internal.ll
M llvm/test/ThinLTO/X86/memprof_imported_internal2.ll
M llvm/test/ThinLTO/X86/prevailing_weak_globals_import.ll
M llvm/test/ThinLTO/X86/visibility-elf.ll
M llvm/test/ThinLTO/X86/visibility-macho.ll
M llvm/test/ThinLTO/X86/weak_resolution.ll
M llvm/test/ThinLTO/X86/windows-vftable.ll
M llvm/test/ThinLTO/X86/writeonly.ll
A llvm/test/Transforms/AssignGUID/assign_guid.ll
A llvm/test/Transforms/Coroutines/coro-materialize-intrinsics.ll
M llvm/test/Transforms/Coroutines/coro-materialize.ll
M llvm/test/Transforms/DeadStoreElimination/merge-stores.ll
M llvm/test/Transforms/EmbedBitcode/embed-wpd.ll
M llvm/test/Transforms/EmbedBitcode/embed.ll
M llvm/test/Transforms/FunctionImport/funcimport-debug-retained-nodes.ll
M llvm/test/Transforms/FunctionImport/funcimport.ll
A llvm/test/Transforms/GVN/PRE/pre-load-combine-metadata.ll
A llvm/test/Transforms/IndVarSimplify/convergent-controlled-loop.ll
A llvm/test/Transforms/InferAlignment/propagate-across-blocks.ll
M llvm/test/Transforms/InferFunctionAttrs/annotate.ll
M llvm/test/Transforms/LICM/strlen.ll
A llvm/test/Transforms/LoopFusion/different_guards.ll
A llvm/test/Transforms/LoopRotate/convergent-controlled.ll
A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask-uniforms.ll
A llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
A llvm/test/Transforms/LoopVectorize/AArch64/clamped-load.ll
A llvm/test/Transforms/LoopVectorize/AArch64/discarded-interleave-group.ll
A llvm/test/Transforms/LoopVectorize/AArch64/expensive-alias-masking.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-costs.ll
M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
R llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fsub-chained.ll
M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.ll
A llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
A llvm/test/Transforms/LoopVectorize/RISCV/clamped-load.ll
M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
M llvm/test/Transforms/LoopVectorize/RISCV/sink-to-early-exit.ll
M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
A llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-printing-alias-mask.ll
M llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
A llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-alias-mask.ll
M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-data-tail-folding-style.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-needs-freeze.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
A llvm/test/Transforms/LoopVectorize/alias-mask-small-index.ll
A llvm/test/Transforms/LoopVectorize/alias-mask.ll
M llvm/test/Transforms/LoopVectorize/cast-induction.ll
A llvm/test/Transforms/LoopVectorize/clamped-load-vf-ranges.ll
M llvm/test/Transforms/LoopVectorize/early-exit-calls.ll
M llvm/test/Transforms/LoopVectorize/early-exit-load-live-out.ll
M llvm/test/Transforms/LoopVectorize/early-exit-unary-ops.ll
M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
M llvm/test/Transforms/LoopVectorize/multi_early_exit.ll
M llvm/test/Transforms/LoopVectorize/multiple-early-exits.ll
M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
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
A llvm/test/Transforms/LoopVectorize/remove-redundant-trip-count-scev.ll
M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-hint.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave-only.ll
M llvm/test/Transforms/LoopVectorize/single-early-exit-interleave.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
M llvm/test/Transforms/LoopVectorize/sink-to-early-exit.ll
M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-early-exit.ll
M llvm/test/Transforms/LowerTypeTests/cfi-icall-alias.ll
M llvm/test/Transforms/MergeICmps/X86/alias-merge-blocks.ll
M llvm/test/Transforms/MergeICmps/X86/entry-block-shuffled.ll
M llvm/test/Transforms/PGOProfile/thinlto_indirect_call_promotion.ll
M llvm/test/Transforms/PhaseOrdering/speculative-devirt-then-inliner.ll
M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-pattern.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/lcssa-phi-extract-scale.ll
A llvm/test/Transforms/SLPVectorizer/AArch64/slp-extval-struct-operand-no-scalar-reuse.ll
A llvm/test/Transforms/SLPVectorizer/AMDGPU/inst-count-heuristic.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/fmuladd_width_prop.ll
A llvm/test/Transforms/SLPVectorizer/RISCV/get-vec-element-size.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll
M llvm/test/Transforms/SLPVectorizer/X86/dot-product.ll
M llvm/test/Transforms/SLPVectorizer/X86/slp-fma-loss.ll
M llvm/test/Transforms/SampleProfile/ctxsplit.ll
A llvm/test/Transforms/SimpleLoopUnswitch/convergent-controlled.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal-typeid.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal1.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-internal2.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc-internal.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split-vfunc.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/split.ll
M llvm/test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll
M llvm/test/Transforms/WholeProgramDevirt/branch-funnel-profile.ll
M llvm/test/Transforms/WholeProgramDevirt/export-single-impl.ll
M llvm/test/Transforms/WholeProgramDevirt/export-vcp.ll
A llvm/test/Verifier/amdgpu-stridemark-structured-gep.ll
A llvm/test/Verifier/amdgpu-stridemark-tokenlike.ll
M llvm/test/Verifier/structured-gep-indices-bad.ll
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.generated.expected
M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/amdgpu_generated_funcs.ll.nogenerated.expected
M llvm/test/tools/gold/X86/devirt_vcall_vis_export_dynamic.ll
M llvm/test/tools/gold/X86/devirt_vcall_vis_public.ll
M llvm/test/tools/gold/X86/devirt_vcall_vis_shared_def.ll
M llvm/test/tools/gold/X86/thinlto_weak_library.ll
M llvm/test/tools/gold/X86/thinlto_weak_resolution.ll
M llvm/test/tools/gold/X86/v1.16/devirt_vcall_vis_export_dynamic.ll
M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-carry-over.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A53-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-add-sequence.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-all-views.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-in-order-retire.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-readadv.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-alias.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-store-noalias.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-out-of-order-retire.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-store-readadv.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A55-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/A57-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Nano-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Premium-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-writeback.s
M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/HiSilicon/tsv110-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/N3-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V1-zero-dependency.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V2-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-forwarding.s
M llvm/test/tools/llvm-mca/AArch64/Neoverse/V3AE-writeback.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/clear-upper-regs.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/forwarding-idioms.s
M llvm/test/tools/llvm-mca/AArch64/Olympus/writeback-loads-stores.s
M llvm/test/tools/llvm-mca/AArch64/cortex-a55-carry-over.s
M llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-add-sequence.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-double.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx10-trans.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx11-double.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx12-permlane16-cycles.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx12-pseudo-scalar-trans.s
M llvm/test/tools/llvm-mca/AMDGPU/gfx9-retireooo.s
M llvm/test/tools/llvm-mca/ARM/cortex-a57-carryover.s
M llvm/test/tools/llvm-mca/ARM/m55-storefwd.s
M llvm/test/tools/llvm-mca/ARM/m7-negative-readadvance.s
M llvm/test/tools/llvm-mca/ARM/memcpy-ldm-stm.s
M llvm/test/tools/llvm-mca/ARM/vld1-index-update.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/fpr.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/gpr.s
M llvm/test/tools/llvm-mca/RISCV/Andes45/zero-reg.s
M llvm/test/tools/llvm-mca/RISCV/MIPS/p8700.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/div-fdiv.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass-c.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/gpr-bypass.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/jump.s
M llvm/test/tools/llvm-mca/RISCV/SiFive7/sp-bypass.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/different-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/disable-im.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/lmul-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-lmul-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/multiple-same-sew-instruments.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/needs-sew-but-only-lmul.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/no-vsetvli-to-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-at-start.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-middle.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-in-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/sew-instrument-straddles-region.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetivli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SiFiveX280/vsetvli-lmul-sew-instrument.s
M llvm/test/tools/llvm-mca/RISCV/SyntacoreSCR/SCR4_5-FPU.s
M llvm/test/tools/llvm-mca/RISCV/XiangShan/gpr-bypass.s
M llvm/test/tools/llvm-mca/RISCV/XiangShan/load-to-alu.s
M llvm/test/tools/llvm-mca/SystemZ/stm-lm.s
M llvm/test/tools/llvm-mca/X86/AlderlakeP/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/AlderlakeP/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Atom/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/load-store-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/load-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/one-idioms.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Barcelona/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/Barcelona/reg-move-elimination-6.s
M llvm/test/tools/llvm-mca/X86/Barcelona/store-throughput.s
M llvm/test/tools/llvm-mca/X86/Barcelona/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/BdVer2/add-sequence.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/clear-super-register-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dependent-pmuld-paddd.s
M llvm/test/tools/llvm-mca/X86/BdVer2/dot-product.s
M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/hadd-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-alias.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-store-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/load-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/memcpy-like-test.s
M llvm/test/tools/llvm-mca/X86/BdVer2/one-idioms.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/BdVer2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/BdVer2/pipes-fpu.s
M llvm/test/tools/llvm-mca/X86/BdVer2/pr37790.s
M llvm/test/tools/llvm-mca/X86/BdVer2/rank.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/BdVer2/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/register-files-5.s
M llvm/test/tools/llvm-mca/X86/BdVer2/store-throughput.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vbroadcast-operand-latency.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/vec-logic-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/BdVer2/xop-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms-avx-256.s
M llvm/test/tools/llvm-mca/X86/BdVer2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Broadwell/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/BtVer2/add-sequence.s
M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/bottleneck-hints-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/clear-super-register-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/cmpxchg-read-advance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-cmp.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpeq.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-pcmpgt.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependency-breaking-sbb-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dependent-pmuld-paddd.s
M llvm/test/tools/llvm-mca/X86/BtVer2/dot-product.s
M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/hadd-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/BtVer2/int-to-fpu-forwarding-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/load-store-alias.s
M llvm/test/tools/llvm-mca/X86/BtVer2/memcpy-like-test.s
M llvm/test/tools/llvm-mca/X86/BtVer2/negative-read-advance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/one-idioms.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/BtVer2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/BtVer2/pipes-fpu.s
M llvm/test/tools/llvm-mca/X86/BtVer2/pr37790.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rank.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/read-advance-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-3.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-4.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-5.s
M llvm/test/tools/llvm-mca/X86/BtVer2/reg-move-elimination-6.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/register-files-5.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-adc-sequence-readadvance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/rmw-add-sequence-readadvance.s
M llvm/test/tools/llvm-mca/X86/BtVer2/stmxcsr-ldmxcsr.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vbroadcast-operand-latency.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/BtVer2/vec-logic-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/BtVer2/xadd.s
M llvm/test/tools/llvm-mca/X86/BtVer2/xchg.s
M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms-avx-256.s
M llvm/test/tools/llvm-mca/X86/BtVer2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/Generic/avx512-super-registers-3.s
M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-1.s
M llvm/test/tools/llvm-mca/X86/Generic/xop-super-registers-2.s
M llvm/test/tools/llvm-mca/X86/Haswell/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/Haswell/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Haswell/stmxcsr-ldmxcsr.s
M llvm/test/tools/llvm-mca/X86/Haswell/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/IceLakeServer/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/LunarlakeP/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/LunarlakeP/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SLM/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SandyBridge/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SapphireRapids/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SapphireRapids/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/SkylakeClient/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/SkylakeServer/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver1/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver1/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver2/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver2/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver2/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/Znver3/dependency-breaking-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/mulx-hi-read-advance.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-mmx.s
M llvm/test/tools/llvm-mca/X86/Znver3/one-idioms-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-2.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-3.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-4.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-6.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update-7.s
M llvm/test/tools/llvm-mca/X86/Znver3/partial-reg-update.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-mmx.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/reg-move-elimination-x87.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-avx-ymm.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-gpr.s
M llvm/test/tools/llvm-mca/X86/Znver3/zero-idioms-sse-xmm.s
M llvm/test/tools/llvm-mca/X86/Znver4/independent-load-stores.s
M llvm/test/tools/llvm-mca/X86/Znver4/partially-overlapping-group-resources.s
M llvm/test/tools/llvm-mca/X86/Znver4/zero-idioms.s
M llvm/test/tools/llvm-mca/X86/bextr-read-after-ld.s
M llvm/test/tools/llvm-mca/X86/bzhi-read-after-ld.s
M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/fma3-read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-2.s
M llvm/test/tools/llvm-mca/X86/read-after-ld-3.s
M llvm/test/tools/llvm-mca/X86/sqrt-rsqrt-rcp-memop.s
M llvm/test/tools/llvm-mca/X86/stack-engine-pop.s
M llvm/test/tools/llvm-mca/X86/stack-engine-push.s
M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-1.s
M llvm/test/tools/llvm-mca/X86/variable-blend-read-after-ld-2.s
M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml
A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff-compress.test
A llvm/test/tools/llvm-objdump/Offloading/fatbin-coff.test
A llvm/test/tools/llvm-readobj/COFF/AMDGPU/offloading.test
A llvm/test/tools/llvm-split/alias-to-ifunc.ll
A llvm/test/tools/llvm-split/ifunc.ll
M llvm/test/tools/llvm-symbolizer/wasm-basic.s
M llvm/tools/llvm-link/llvm-link.cpp
M llvm/tools/llvm-mca/Views/TimelineView.cpp
M llvm/tools/llvm-mca/Views/TimelineView.h
M llvm/tools/opt/NewPMDriver.cpp
M llvm/tools/opt/optdriver.cpp
M llvm/unittests/ADT/APFloatTest.cpp
M llvm/unittests/ADT/DenseMapTest.cpp
M llvm/unittests/ADT/DenseSetTest.cpp
M llvm/unittests/Support/CommandLineTest.cpp
M llvm/unittests/Support/Path.cpp
M llvm/unittests/Transforms/Vectorize/VPDomTreeTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
M llvm/unittests/Transforms/Vectorize/VPlanTestBase.h
M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp
M llvm/utils/emacs/llvm-mode.el
M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
M llvm/utils/lit/lit/LitConfig.py
M llvm/utils/lit/lit/ShUtil.py
M llvm/utils/lit/lit/ShellEnvironment.py
M llvm/utils/lit/lit/Test.py
M llvm/utils/lit/lit/TestRunner.py
M llvm/utils/lit/lit/TestingConfig.py
M llvm/utils/lit/lit/display.py
M llvm/utils/lit/lit/formats/base.py
M llvm/utils/lit/lit/formats/googletest.py
M llvm/utils/lit/lit/formats/shtest.py
M llvm/utils/lit/lit/llvm/config.py
M llvm/utils/lit/lit/llvm/subst.py
M llvm/utils/lit/lit/reports.py
M llvm/utils/lit/lit/run.py
M llvm/utils/lit/lit/util.py
M llvm/utils/lit/tests/Inputs/check_path.py
M llvm/utils/lit/tests/Inputs/shtest-format/external_shell/write-control-chars.py
M llvm/utils/lit/tests/Inputs/shtest-not/print_environment.py
M llvm/utils/lit/tests/Inputs/shtest-timeout/short.py
M llvm/utils/profcheck-xfail.txt
M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
M mlir/include/mlir/Dialect/MemRef/Transforms/Passes.td
M mlir/include/mlir/Dialect/MemRef/Transforms/Transforms.h
M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
M mlir/include/mlir/Dialect/XeGPU/Transforms/Passes.td
M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
M mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
M mlir/lib/Dialect/GPU/Pipelines/GPUToXeVMPipeline.cpp
M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
M mlir/lib/Dialect/X86/Utils/X86Utils.cpp
M mlir/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
A mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToLaneDistribute.cpp
R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
R mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
M mlir/lib/Transforms/Mem2Reg.cpp
M mlir/test/Dialect/Async/async-to-async-runtime.mlir
M mlir/test/Dialect/LLVMIR/mem2reg.mlir
M mlir/test/Dialect/MemRef/flatten_memref.mlir
M mlir/test/Dialect/Vector/flatten-memref-and-emulate-narrow-types.mlir
M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
R mlir/test/Dialect/XeGPU/move-gpu-func-to-warp-op.mlir
M mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
A mlir/test/Dialect/XeGPU/sg-to-lane-distribute-unit.mlir
A mlir/test/Dialect/XeGPU/sg-to-lane-distribute.mlir
R mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
R mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
R mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir
R mlir/test/Dialect/XeGPU/subgroup-distribute.mlir
R mlir/test/Dialect/XeGPU/xegpu-subgroup-distribute-no-arch.mlir
M mlir/test/Integration/Dialect/XeGPU/WG/load_store_matrix.mlir
A mlir/test/Target/LLVMIR/nvvm/divf/divf.mlir
A mlir/test/Target/LLVMIR/nvvm/divf/divf_invalid.mlir
M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
Log Message:
-----------
rebase
Created using spr 1.3.7
Compare: https://github.com/llvm/llvm-project/compare/cd27e2e847e1...957a7e0c5f4b
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