[all-commits] [llvm/llvm-project] d46e7d: [clang][bytecode] Fix an assertion failure in AddS...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Sat Jun 6 05:00:46 PDT 2026


  Branch: refs/heads/users/alexey-bataev/spr/slp-vectorize-full-insertvalue-buildvector-sequences
  Home:   https://github.com/llvm/llvm-project
  Commit: d46e7dcee756766e9f23dd2ce3179e5e9a6cd536
      https://github.com/llvm/llvm-project/commit/d46e7dcee756766e9f23dd2ce3179e5e9a6cd536
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/c.c

  Log Message:
  -----------
  [clang][bytecode] Fix an assertion failure in AddSubNonNumber (#200393)

Calling Integral::getPtr() shouldn't happen for AddrLabelDiff integrals.


  Commit: 2501cdd2cad9d3180860d7506611afd474a182cc
      https://github.com/llvm/llvm-project/commit/2501cdd2cad9d3180860d7506611afd474a182cc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] Add VBMI2 shuffle test to track miscompile reported in #200136 (#200569)


  Commit: 3c95dd29d834fde3a1070655a8a33df8ab3ee8b8
      https://github.com/llvm/llvm-project/commit/3c95dd29d834fde3a1070655a8a33df8ab3ee8b8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    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/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp

  Log Message:
  -----------
  [VPlan] Thread scalar type through VPBlend, VPExpression recipes. (NFC) (#200255)

Set the scalar type for VPBlendRecipe and VPExpressionRecipe at
construction time, instead of inferring it on demand via VPTypeAnalysis.
With this change, all VPValues have their scalar type set at
construction, so VPTypeAnalysis::inferScalarType becomes a thin wrapper
around VPValue::getScalarType.

To be removed in a follow-up:
https://github.com/llvm/llvm-project/pull/200256.

PR: https://github.com/llvm/llvm-project/pull/200255


  Commit: 30ec1fa2a9d9b6e0b6af64e93b500321977eafa1
      https://github.com/llvm/llvm-project/commit/30ec1fa2a9d9b6e0b6af64e93b500321977eafa1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/invalid.cpp

  Log Message:
  -----------
  [clang][bytecode] Reject invalid UnaryOperators (#200394)


  Commit: ef6a217703a8738b89e22a19d3daca06b0028da0
      https://github.com/llvm/llvm-project/commit/ef6a217703a8738b89e22a19d3daca06b0028da0
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a crash with an empty InitListExpr (#200366)

Fixes https://github.com/llvm/llvm-project/issues/200295


  Commit: f7d576010fc1fbc40e8534d276d3c4837d5c5aa9
      https://github.com/llvm/llvm-project/commit/f7d576010fc1fbc40e8534d276d3c4837d5c5aa9
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/IndexingUtils.h
    M mlir/lib/Dialect/Utils/IndexingUtils.cpp

  Log Message:
  -----------
  [mlir][nfc] Fix assertion text in IndexingUtils (#181826)

Update the assertion text to match the actual code behavior.
Some functions enforce strictly positive values, whereas the error
message incorrectly mentioned "nonnegative".


  Commit: 470411cf18e33fe461f7207831604f989a7a6e61
      https://github.com/llvm/llvm-project/commit/470411cf18e33fe461f7207831604f989a7a6e61
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Loosen an assertion about operator delete (#200575)

We may also see OO_Array_Delete here.


  Commit: 0d1ed9383d1dc5133409e5088e336bc54700fbf7
      https://github.com/llvm/llvm-project/commit/0d1ed9383d1dc5133409e5088e336bc54700fbf7
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M libc/src/__support/CPP/cstddef.h
    M libc/src/stdlib/qsort_data.h

  Log Message:
  -----------
  [libc] Tag cpp::byte with gnu::may_alias (#200462)

Clang's TBAA grants the [basic.lval]/11.3 char-aliasing privilege only
to the named ::std::byte type (Type::isStdByteType() requires the enum
to be declared in the std namespace). LIBC_NAMESPACE::cpp::byte lives in
libc's cpp namespace, so it gets its own TBAA node disjoint from char
even though it has the same shape as std::byte.

That mismatch lets the optimizer reorder typed loads past raw-byte
writes through cpp::byte *, miscompiling HeapSort on rv64/Release
(UnsortedThreeElementArray{1,2,3}, UnsortedTwoElementArray1 in
SortingTest.h). The same hazard is latent in every cpp::byte *-based
raw-aliasing site: memory_utils Ptr/CPtr, lsearch/lfind, block.h and
freelist_heap.h allocator metadata.

Tag the type with gnu::may_alias so accesses through cpp::byte * share
the universal char-aliasing TBAA node, fixing all of the above in one
place. This patch also reverts PR #194171, as the may_alias attribute
fixes it too.


  Commit: 2396aa8ac0e8af3e46306284e62448487a33a997
      https://github.com/llvm/llvm-project/commit/2396aa8ac0e8af3e46306284e62448487a33a997
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp

  Log Message:
  -----------
  [CIR][NFC] Mark Complex visitExpr as unsupported (#197782)

Mark Complex visitExpr as unsupported, similar to Clang ORCG, not as NYI


  Commit: 51256ed963046edd0cf02bf744d61f14fc9523b3
      https://github.com/llvm/llvm-project/commit/51256ed963046edd0cf02bf744d61f14fc9523b3
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/DerivedTypes.h
    M llvm/include/llvm/IR/Type.h
    M llvm/lib/IR/Type.cpp
    M llvm/lib/IR/Use.cpp

  Log Message:
  -----------
  [IR][NFC] Inline Type::isIntegerTy(n) (#200471)

Although this gets inlined in LTO builds, non-LTO builds benefit from
having isIntegerTy(n) defined in a header.

Co-authored-by: Nikita Popov <npopov at redhat.com>


  Commit: aa1cf3205e63c1944238b41408fb3425fc585c61
      https://github.com/llvm/llvm-project/commit/aa1cf3205e63c1944238b41408fb3425fc585c61
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/ValueHandle.h
    M llvm/unittests/IR/ValueHandleTest.cpp

  Log Message:
  -----------
  [IR] Fix PoisoningVH relocation of a poisoned handle (#200540)

In LLVM_ENABLE_ABI_BREAKING_CHECKS builds, when poisoned (`deleted()` or
`allUsesReplacedWith()`), a PoisoningVH is removed from its use list but
keeps its raw value pointer for identity, so its PrevPtr/Next are left
stale.

PoisoningVH has no move constructor, so relocating a value that embeds
one
falls back to the copy constructor, where `setRawValPtr` relinks with
the stale pointers and corrupts the use list.

This is a latent bug for any relocation of a PoisoningVH handle
but becomes load-bearing for #199615 , which relocating erase exercises
it via ScalarEvolution's BackedgeTakenInfo (its ExitNotTakenInfo holds a
PoisoningVH<BasicBlock>).

Fix by special casing the `Poisoned` case.
Aided By Claude Opus 4.8


  Commit: b771021970fcacf5eb01aaca360541534fc51547
      https://github.com/llvm/llvm-project/commit/b771021970fcacf5eb01aaca360541534fc51547
  Author: lntue <lntue at google.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml

  Log Message:
  -----------
  [libc][ci] Clean up libc-fullbuild-tests precommit CI. (#200520)

- Pin containers.
- Cleaner names for different targets and options.
- Add Build Test step.
- Skip shared tests and death tests.


  Commit: 013ee58df53b528657bc18d3869fa5dc8d1d5ff5
      https://github.com/llvm/llvm-project/commit/013ee58df53b528657bc18d3869fa5dc8d1d5ff5
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h
    M llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
    R llvm/test/tools/llvm-pdbutil/dxcontainer.test
    M llvm/tools/llvm-pdbutil/PdbYaml.cpp
    M llvm/tools/llvm-pdbutil/PdbYaml.h
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.h
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  Revert "Reapply "[PDB][llvm-pdbutil] Add DXContainer support for `pdb2yaml` and `yaml2pdb`"" (#200588)

Reverts llvm/llvm-project#200413

Breaks build bots:

https://lab.llvm.org/buildbot/#/builders/169/builds/23142
https://lab.llvm.org/buildbot/#/builders/25/builds/18082


  Commit: 56a9bba59817fa9ae5c91e011c1885ba7a689695
      https://github.com/llvm/llvm-project/commit/56a9bba59817fa9ae5c91e011c1885ba7a689695
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/FMF.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/include/llvm/IR/Value.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Utils/Local.cpp

  Log Message:
  -----------
  [IR] SubclassOptionalData is only optional for Instruction (#200419)

BasicBlock currently uses this for HasAddressTaken. ConstantExpr uses
this for flags and it should not be possible to modify constant
expressions after they have been created.

Therefore, update the documentation accordingly and remove the unsafe
clearSubclassOptionalData.

Remove hasSameSubclassOptionalData, as it is unused.


  Commit: 90779840d51aa3fff6fa030ade7150bc647ac5ff
      https://github.com/llvm/llvm-project/commit/90779840d51aa3fff6fa030ade7150bc647ac5ff
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/test/Transforms/LowerInvoke/lowerinvoke.ll

  Log Message:
  -----------
  [LowerInvoke] Use createCallMatchingInvoke instead of rolling it ourselves (#200536)

Using createCallMatchingInvoke ensures we copy metadata from the invoke
onto the call.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 1f10f1ca8af3dff956b353d7ff3ea169c82ed909
      https://github.com/llvm/llvm-project/commit/1f10f1ca8af3dff956b353d7ff3ea169c82ed909
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/lib/IR/Value.cpp
    M llvm/unittests/ADT/BitVectorTest.cpp

  Log Message:
  -----------
  [DenseMap] Replace tombstone deletion with TAOCP 6.4 Algorithm R (#200595)

DenseMap uses quadratic probing with lazy deletion: an erased entry
becomes a tombstone, a third bucket state alongside empty and live that
every find/insert must inspect.

Switch to linear probing with backward-shift deletion (Knuth TAOCP 6.4
Algorithm R), similar to the SmallPtrSet change #197637. This removes
the tombstone state entirely.

In exchange, erase now relocates the following live entries to close the
hole, so it invalidates iterators and references other than the erased
one. For callers that cache pointers into the bucket array,
erase(Key, OnMoved) and erase(iterator, OnMoved) fire a callback once
per
shifted bucket, so fix-ups cost O(cluster) rather than O(NumEntries).
ValueHandleBase::RemoveFromUseList uses this to refresh each moved
handle's PrevPtr.

Linear probing is more vulnerable to primary clustering than quadratic
probing, so this relies on the stronger DenseMapInfo<T*>::getHashValue
mixer from #197390.

Operation distribution when compiling CGExpr.cpp/ScalarEvolution.cpp:
62.8% lookups, 34.3% inserts, 2.9% erases. The heaviest DenseMap
specializations have pointer keys and 16-byte key/value pairs.
Alternatives such as Robin Hood hashing, Verstable, and Boost's
unordered_flat_map were evaluated; they are slower and have a larger
code footprint. I believe the current in-band sentinel value approach,
despite the pain (#146595), is the best, or at least very difficult to
beat.

---

This is a pure reland of #199615 (reverted in #200421) after fixing
the PoisoningVH bug by #200540.
Non-core cleanups aided by Claude Opus 4.7.


  Commit: 6d2a90bd8bf321df0d1c3f2953fcc51ce5344b13
      https://github.com/llvm/llvm-project/commit/6d2a90bd8bf321df0d1c3f2953fcc51ce5344b13
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] matchBinaryPermuteShuffle - match to X86ISD::SHLD funnel shift patterns (REAPPLIED) (#200604)

Add matchShuffleAsVSHLD helper to recognise shuffle masks that can fold
to funnel shifts

Reapplied with fix for shift amount not being appropriately scaled -
test case added at #200569

Fixes #145276


  Commit: 42d712ea62f5430d515ee86c3c351816e4188459
      https://github.com/llvm/llvm-project/commit/42d712ea62f5430d515ee86c3c351816e4188459
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/X86/vector_max_bandwidth.ll

  Log Message:
  -----------
  [X86][TTI] Use dyn_cast_or_null in getGSVectorCost. (#200606)

Ptr may be nullptr, use dyn_cast_or_null to fix crash.

Fixes https://github.com/llvm/llvm-project/issues/200330.


  Commit: 8d5d550242cfda2deb9a098b6f86b4fd0b1c06a6
      https://github.com/llvm/llvm-project/commit/8d5d550242cfda2deb9a098b6f86b4fd0b1c06a6
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h

  Log Message:
  -----------
  [VPlan] Factor vputils::getIntrinsicID (NFC) (#200174)

In preparation to get getOpcodeOrIntrinsicID used by CSE to handle calls
and to constant-fold intrinsic calls, factor out vputils::getIntrinsicID
from VPlanPatternMatch to re-use.


  Commit: 223ef1f31274c5dc0f176789fa09e9e467fb49fe
      https://github.com/llvm/llvm-project/commit/223ef1f31274c5dc0f176789fa09e9e467fb49fe
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/builtins-nvptx-native-half-type.c
    M clang/test/CodeGen/promoted-complex-div.c
    M llvm/include/llvm/Analysis/ConstantFolding.h
    M llvm/include/llvm/Analysis/InstSimplifyFolder.h
    M llvm/include/llvm/Analysis/TargetFolder.h
    M llvm/include/llvm/IR/ConstantFolder.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IRBuilderFolder.h
    M llvm/include/llvm/IR/NoFolder.h
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/extracts-from-scalarizable-vector.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reduction-extension-after-bitwidth.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/SystemZ/reorder-same-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/const-reduced-vals-resized.ll
    M llvm/test/Transforms/SLPVectorizer/X86/constant-based-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/crash_reordering_undefs.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ctpop-non-power-of-2-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/identity-match-splat-less-defined.ll
    M llvm/test/Transforms/SLPVectorizer/X86/minbw-multiused-from-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-load-reduced-as-part-of-bv.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduce-with-folded-to-consts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-value-in-tree.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reschedule-only-scheduled.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-replace-extractelement.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revec-reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll

  Log Message:
  -----------
  [IRBuilder] ConstFold unary intrinsics (#200496)

Extend TargetFolder and InstSimplifyFolder to fold unary intrinsics.
CreateUnaryIntrinsic now returns a Value, similar to
CreateBinaryIntrinsic, and this has necessitated more changes.


  Commit: 866945c20298c1bca4af6973a31f4739dfe49e91
      https://github.com/llvm/llvm-project/commit/866945c20298c1bca4af6973a31f4739dfe49e91
  Author: Nhat Nguyen <nhat7203 at gmail.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__ranges/concat_view.h
    M libcxx/include/module.modulemap.in
    M libcxx/include/ranges
    M libcxx/include/version
    M libcxx/modules/std/ranges.inc
    A libcxx/test/libcxx/ranges/range.adaptors/range.concat/iterator.valueless_by_exception.pass.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.concat/nodiscard.verify.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/adaptor.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/begin.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/constraints.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctad.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctor.default.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctor.views.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/end.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/arithmetic.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/compare.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/ctor.default.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/ctor.other.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/decrement.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/deref.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/increment.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/iter_move.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/iter_swap.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/member_types.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/subscript.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/size.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/types.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][ranges] P2542R8: Implement `views::concat` (#120920)

Closes #105419
Closes #105348
Closes #105349
Closes #171314

Assisted-by: Chatgpt. 
I use AI to help me write some tests, however. I have reviewed the code
I submit in the tests.

---------

Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Hristo Hristov <hghristov.rmm at gmail.com>
Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 7a07381d55111165be955ae7919c460b71aed0ae
      https://github.com/llvm/llvm-project/commit/7a07381d55111165be955ae7919c460b71aed0ae
  Author: lntue <lntue at google.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M libc/src/wctype/CMakeLists.txt
    M libc/src/wctype/wctype.cpp
    R libc/src/wctype/wctype.h
    A libc/src/wctype/wctype_impl.h
    M libc/test/src/wctype/iswctype_test.cpp
    M libc/test/src/wctype/wctype_test.cpp

  Log Message:
  -----------
  [libc][wctype] Rename src/wctype/wctype.h to avoid name collision with system header. (#200613)


  Commit: b51054818b78dc395cd4d33f17cfb6e98a36a76d
      https://github.com/llvm/llvm-project/commit/b51054818b78dc395cd4d33f17cfb6e98a36a76d
  Author: Justin T. Gibbs <gibbs at scsiguy.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp

  Log Message:
  -----------
  [asan] NFC: tag ambiguous literal args at Allocate call sites (#200615)

Groundwork for #200478

Add /*name=*/ comments to ambiguous literal call-site arguments in
compiler-rt/lib/asan/asan_allocator.cpp so the parameter name is visible
at the call site for the Allocate / instance.Allocate uses. Covers the
can_fill flag and the bare alignment literals (8, 16, 0) used by:

  asan_malloc / asan_vec_malloc / asan_realloc / asan_valloc /
  asan_pvalloc / asan_memalign / asan_aligned_alloc /
  asan_posix_memalign / asan_new / asan_new_aligned

and the internal Reallocate / Calloc paths.

NFC.

Assisted by: Claude Opus 4.7


  Commit: baa079610087a765edf4edada9e3f155c8ef0b16
      https://github.com/llvm/llvm-project/commit/baa079610087a765edf4edada9e3f155c8ef0b16
  Author: Justin T. Gibbs <gibbs at scsiguy.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/asan/asan_malloc_mac.cpp
    M compiler-rt/lib/asan/asan_new_delete.cpp
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp

  Log Message:
  -----------
  [asan] NFC: clang-format allocator-related files (#200478)

Depends on #200615
Groundwork for #196413.

Mechanical cleanup of allocator related files in preparation of
functional changes. clang-format (v21.1.2) applied whole-file to:

  compiler-rt/lib/asan/asan_allocator.cpp
  compiler-rt/lib/asan/asan_allocator.h
  compiler-rt/lib/asan/asan_malloc_linux.cpp
  compiler-rt/lib/asan/asan_malloc_mac.cpp
  compiler-rt/lib/asan/asan_new_delete.cpp
  compiler-rt/lib/asan/tests/asan_noinst_test.cpp

Both compiler-rt/lib/asan/.clang-format and
compiler-rt/lib/sanitizer_common/.clang-format use
"BasedOnStyle: Google", so pointer alignment becomes "Type* name"
throughout.

NFC.

Assisted by: Claude Opus 4.7


  Commit: 16a127b531eb7916d5f3b4839d1a9cc2852df4b1
      https://github.com/llvm/llvm-project/commit/16a127b531eb7916d5f3b4839d1a9cc2852df4b1
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/test/Transforms/GVN/invariant.group.ll
    M llvm/test/Transforms/NewGVN/invariant.group.ll
    M llvm/test/Transforms/SimplifyCFG/merge-cond-stores.ll

  Log Message:
  -----------
  [IR] Fix !invariant.group in combineMetadataForCSE when K moves (#200551)

SimplifyCFG mergeConditionalStoreToAddress currently transforms

    if (cond)
      store ptr, x !invariant.group;
    else
      store ptr, y;

into

    store ptr, select(cond, x, y) !invariant.group;  // BUG

It's clearly not valid to preserve !invariant.group here.

Fix this inside combineMetadataForCSE.  It can only preserve
!invariant.group if

 1. !DoesKMove, meaning that original instruction ("K") is replaced by
    the combined instruction in place, without moving it,
 2. Both stores have !invariant.group.

This matches the logic for preserving !invariant.load.

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: dbf01d40ca99e24756f7872ea39644b2fdb46f3d
      https://github.com/llvm/llvm-project/commit/dbf01d40ca99e24756f7872ea39644b2fdb46f3d
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/include/clang/Config/config.h

  Log Message:
  -----------
  [bazel] Add CLANG_USE_EXPERIMENTAL_CONST_INTERP (fixup for #199396) (#200619)


  Commit: b17edc69b07d2753ca74a3a0139cbfa68f2940b8
      https://github.com/llvm/llvm-project/commit/b17edc69b07d2753ca74a3a0139cbfa68f2940b8
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp

  Log Message:
  -----------
  [ExpandIRInsts] Drop ProfcheckDisableMetadataFixes in some cases (#200627)

This is unnecessary inside of applyProfMetadataIfEnabled because it is
already handled before the callback lambda gets called within the
function. There was also a redundant case to remove.


  Commit: 1f2223d231a73da00168b6c205a0e59e147a55d3
      https://github.com/llvm/llvm-project/commit/1f2223d231a73da00168b6c205a0e59e147a55d3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ExpandIRInsts] Fix profile metadata after #200291 (#200629)


  Commit: e920ece6ae3ba4b41b0a5ba9a7a6b95b9eb560d6
      https://github.com/llvm/llvm-project/commit/e920ece6ae3ba4b41b0a5ba9a7a6b95b9eb560d6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-30 (Sat, 30 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    M llvm/test/CodeGen/RISCV/prefer-w-inst.mir
    M llvm/test/CodeGen/RISCV/sextw-removal.ll

  Log Message:
  -----------
  [RISCV] Prevent RISCVOptWInstrs from shrinking volatile LD instructions. (#200472)

Fixes #200379


  Commit: b49a468051e1d36af19096cd01ff6a4b9a367ead
      https://github.com/llvm/llvm-project/commit/b49a468051e1d36af19096cd01ff6a4b9a367ead
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/GCOV.h
    M llvm/lib/ProfileData/InstrProfCorrelator.cpp

  Log Message:
  -----------
  [Profile] Remove unused argument of DataExtractor constructor (NFC) (#197119)

`AddressSize` parameter is not used by `DataExtractor` and will be
removed in the future. See #190519 for more context.


  Commit: 80f6b7641ef95d435a9e641970291375e3013cbe
      https://github.com/llvm/llvm-project/commit/80f6b7641ef95d435a9e641970291375e3013cbe
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/include/llvm/Object/ELF.h
    M llvm/lib/Object/Decompressor.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp

  Log Message:
  -----------
  [Object] Remove unused argument of DataExtractor constructor (NFC) (#197124)

`AddressSize` parameter is not used by `DataExtractor` and will be
removed in the future. See #190519 for more context.


  Commit: da3f152eebca11285f33777bf3bb97f69fb9f10d
      https://github.com/llvm/llvm-project/commit/da3f152eebca11285f33777bf3bb97f69fb9f10d
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h

  Log Message:
  -----------
  [IR][NFC] Fast path for Constant::isNullValue (#200434)

Constant::isNullValue is the, by far, most frequently called out-of-line
function of Constant. It also has non-trivial logic and needs to switch
on the class type.

Therefore, compute the "is null" property once on construction and store
it in an unused bit in SubclassOptionalData.

This improves performance of stage2-O3 by 0.15%.


  Commit: c78c9004a7f82de1c9d9e7489651e4d6e9320e01
      https://github.com/llvm/llvm-project/commit/c78c9004a7f82de1c9d9e7489651e4d6e9320e01
  Author: David Green <david.green at arm.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/bf16-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll

  Log Message:
  -----------
  [AArch64] Add tests for bf16 convert with fast-math flags. NFC (#200643)


  Commit: a67efda258fa73c7b6b915fb31b8412b800a15e9
      https://github.com/llvm/llvm-project/commit/a67efda258fa73c7b6b915fb31b8412b800a15e9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll

  Log Message:
  -----------
  [VPlan] Recognize shl by constant in getSCEVExprForVPValue. (#199359)

Treat `shl x, c` (with c < bitwidth) as `x * (1 << c)` so callers that
analyze GEP indices via SCEV can see through stride shifts written as
logical shifts.

PR: https://github.com/llvm/llvm-project/pull/199359


  Commit: 7966cbbdd02b686dbee9134514ea113772bcfa62
      https://github.com/llvm/llvm-project/commit/7966cbbdd02b686dbee9134514ea113772bcfa62
  Author: Conor Kotwasinski <conorkotwasinski2024 at u.northwestern.edu>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/alias_mask.ll
    M llvm/test/CodeGen/AArch64/dag-combine-setcc.ll
    M llvm/test/CodeGen/AArch64/fixed_masked_deinterleaved_loads.ll
    M llvm/test/CodeGen/AArch64/fixed_masked_interleaved_stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-expandloads.ll
    M llvm/test/CodeGen/AArch64/sve-mask-partition.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll

  Log Message:
  -----------
  [AArch64] Use ADDP tree for v16i8 to i16 bitmask extraction (#199812)

Re-land of #192974, reverted in 868aefd.

The original PR was reverted because the new lowering produced an
EXTRACT_VECTOR_ELT with an illegal i16 result type, which tripped the
operation legalizer when called from combineBoolVectorAndTruncateStore
on a `<32 x i1>` store split into two `<16 x i1>` halves. Returning i32
(handled by the caller's existing getZExtOrTrunc) avoids this.

Regression test added: bitmask_v32i8_split in
vec-combine-compare-to-bitmask.ll.

Note: in alias_mask.ll's whilewr_8_split2, the four halfword bitmask
results are now stored as separate `str h` × 4 rather than packed into
a d-register via ZIP1+EXT before a single store. Functionally
equivalent, slightly fewer NEON arithmetic ops. Side effect of the i32
return type; the store-merging combine doesn't match the same shape.


  Commit: 37845da44408c608b691c702375e06dccfd8b803
      https://github.com/llvm/llvm-project/commit/37845da44408c608b691c702375e06dccfd8b803
  Author: Daniil Dudkin <unterumarmung at yandex.ru>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp

  Log Message:
  -----------
  [clang-tidy] `use-ranges`: preserve used `unique` results (#196035)

Preserve iterator uses when replacing `std::unique` with
`std::ranges::unique` by appending `.begin()` in used-result contexts.

Fix #127658

Assisted by Codex.


  Commit: 8dc098589f3123003846244e8df642a58bd17f4a
      https://github.com/llvm/llvm-project/commit/8dc098589f3123003846244e8df642a58bd17f4a
  Author: Daniil Dudkin <unterumarmung at yandex.ru>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-default-member-init.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-default-member-init/non-visible-references.h
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-non-visible-references-notes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-non-visible-references.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid unsafe `use-default-member-init` fixes (#191607)

Suppress `modernize-use-default-member-init` diagnostics when moving a
constructor initializer into a default member initializer would
reference a declaration not visible from the field declaration.

Add `IgnoreNonVisibleReferences` to allow preserving the warning without
emitting unsafe fix-its, and document the new behavior.

Fixes #156412

Assisted by Codex


  Commit: b48743be091be62232e3d51b7481604d224b992a
      https://github.com/llvm/llvm-project/commit/b48743be091be62232e3d51b7481604d224b992a
  Author: Daniil Dudkin <unterumarmung at yandex.ru>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp

  Log Message:
  -----------
  [clang-tidy] `use-ranges`: preserve iterator results with `.begin()` (#196036)

Preserve used iterator results for `remove`, `partition`,
`stable_partition`, and `rotate`-style replacements by appending
`.begin()` where the ranges algorithm returns a subrange.

Fix #124794

Assisted by Codex.


  Commit: fe87c971bf07eb38af97ca96bf2810e94e7549dc
      https://github.com/llvm/llvm-project/commit/fe87c971bf07eb38af97ca96bf2810e94e7549dc
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/tools/llubi/lib/Context.cpp

  Log Message:
  -----------
  [llubi] Fix the number of words to reserve in `Context::toBytes` (#200651)

The bits should be divided by 64 instead of 8 :(


  Commit: 5d20fd32807e4fdb4fc8b278a77c0ab06676fd15
      https://github.com/llvm/llvm-project/commit/5d20fd32807e4fdb4fc8b278a77c0ab06676fd15
  Author: Maximilian Ehlers <2843450+b-m-f at users.noreply.github.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M mlir/docs/Tutorials/Toy/Ch-2.md

  Log Message:
  -----------
  [mlir] Fix typo in toy tutorial (#200640)

Signed-off-by: Maximilian Ehlers <maximilian at sodawa.com>


  Commit: 025b9a27cf74c16e1b1467aa8d7423abaac8363b
      https://github.com/llvm/llvm-project/commit/025b9a27cf74c16e1b1467aa8d7423abaac8363b
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/docs/TableGen/ProgRef.rst
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/TableGen/TGLexer.h
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/TableGen/TGParser.h
    A llvm/test/TableGen/switch.td

  Log Message:
  -----------
  [TableGen] Add !switch operator (#199659)

This patch add a syntactic sugar operator to TableGen named `!switch`,
to simplify use cases where a user needs to conditionally use a value
based on exact key match. It supports variadic case arguments (0 or
more). It requires a default value - which creates a stricter grammar
that is simpler to parse, and I think the flexibility cost is not real -
it is considered a best practice in SW design for switch expressions (or
statements) on arbitrary types to always provide a default.

At parse time, after key and value type-checking, we reduce the
`!switch` expression to `!cond`, as they effectively entirely share the
downstream logic. The impl also extracts a shared pre-reduction
type-checking for `!switch` and `!cond` called
`TGParser::resolveInitTypes`.

Motivation: switch-behaving `!cond` value selection in `llvm/lib/Target`
e.g. from `llvm/lib/Target/AArch64/AArch64InstrFormats.td`:
```
// Helper class to convert vector element types to integers.
class ChangeElementTypeToInteger<ValueType InVT> {
  ValueType VT = !cond(
    !eq(InVT, v2f32): v2i32,
    !eq(InVT, v4f32): v4i32,
    // TODO: Other types.
    true : untyped);
}
```
It seems like the patch can possibly have a pretty wide impact following
up, and make many parts of TableGen code a bit more compact. I intend to
migrate actual TableGen code in followup patches.


  Commit: 07f9a7d2ab89731bdb9e4093c66f35c46044894a
      https://github.com/llvm/llvm-project/commit/07f9a7d2ab89731bdb9e4093c66f35c46044894a
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/test/CIR/CodeGen/complex-atomic-cast.c

  Log Message:
  -----------
  [CIR] Implement Atomic Complex to Complex cast (#199260)

Implement Atomic Complex to Complex types cast

Issue https://github.com/llvm/llvm-project/issues/192331


  Commit: a89a6596129cbfdf788c5d0af0d4e071708afcf4
      https://github.com/llvm/llvm-project/commit/a89a6596129cbfdf788c5d0af0d4e071708afcf4
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/test/Transforms/TailCallElim/accum_recursion.ll
    M llvm/test/Transforms/TailCallElim/dropping_debugloc_acc_rec_inst_rnew.ll

  Log Message:
  -----------
  [TailCallElim] Drop poison-generating flags on reassociated accumulators (#200624)

For example if you have recursion like

    int prod(n) {
      if (n == 0) return 1;
      return prod(n-1) * f(n)
    }

then logically this computes (((f(1) * f(2)) * f(3)) * f(4)) * ... f(n).

But TailCallElim reassociates this, computing instead
((f(n) * f(n-1)) * f(n-2)) * ...

If the operator (* in this case) had poison-generating flags like
nsw, those may not still apply after reassociation.  (For example,
suppose in this example f(1) returns 0 -- in that case the original
multiplication cannot overflow, but the new one still might.)

Fix this by clearing the poison-generating flags after reassociating.


  Commit: c42f1884730fb51a5f802ad621c0cc7f68715424
      https://github.com/llvm/llvm-project/commit/c42f1884730fb51a5f802ad621c0cc7f68715424
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectFrame.cpp

  Log Message:
  -----------
  [lldb] Fix up comment placement (NFC) (#200671)

Follow up to https://github.com/llvm/llvm-project/pull/200084


  Commit: 77860f206812145c7d327aa139a75ed09726695e
      https://github.com/llvm/llvm-project/commit/77860f206812145c7d327aa139a75ed09726695e
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp

  Log Message:
  -----------
  [NFC][LLVM] Remove redundant verifier type checks for some intrinsics (#200658)

Remove the following redundant type checks:

* `[s|u]div_fix*` intrinsics, existing checks in `isSignatureValid` will
verify that arg0 and arg1 are int or int vectors (since they use
`llvm_anyint_ty`) and arg2 is declared as i32, so checks related to it
are also redundant.
* For `lrint` family, the result is `llvm_anyfloat_ty` and the argument
is `llvm_anyint_ty`, so one of the checks is redundant.


  Commit: 5000716798109db57396540160b9d989441b95b6
      https://github.com/llvm/llvm-project/commit/5000716798109db57396540160b9d989441b95b6
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Convert math.cttz to spirv.GLFindILsb (#200455)


  Commit: e3574d46e0de8d2c96beb0d092812a3cab153db7
      https://github.com/llvm/llvm-project/commit/e3574d46e0de8d2c96beb0d092812a3cab153db7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  [NFC][LLVM] Fix Intrinsics.td to adhere to 80 col limit (#199346)

Verified that there is no difference in the tablegen generated files for
intrinsics except line number changes in the comments in
IntrinsicEnums.inc.


  Commit: 62a23823a97991f09745b9e76f81b490989bc467
      https://github.com/llvm/llvm-project/commit/62a23823a97991f09745b9e76f81b490989bc467
  Author: Vedran Miletić <vedran at miletic.net>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll

  Log Message:
  -----------
  [AMDGPU] Use v_rsq_f32 for f16 rsqrt on targets without 16-bit insts (#200646)

On gfx6/gfx7 the f16 1.0/sqrt(x) pattern was not folded to a reciprocal
square root because performFDivCombine bailed out whenever f16 fsqrt was
not a legal operation. f16 fsqrt is Custom (promoted) on these targets,
so the combine never fired and the full f32 fdiv expansion was emitted.

Split the legality check: when same-type fsqrt is legal (gfx8+), keep
emitting the native rsq. For f16 without a legal fsqrt, compute the
reciprocal square root in f32 with v_rsq_f32 and round back. This is
accurate enough for f16, and needs no denormal scaling because every f16
value extends to a normal f32 and an f16 rsq result is never denormal.

bf16 is intentionally left expanded: it shares f32's exponent range, so
bf16 denormals would extend to f32 denormals that v_rsq_f32 does not
handle.

Fixes #76948

Co-authored-by: Claude Opus 4.8 <noreply at anthropic.com>


  Commit: 4298580c5516bc37c5afd3389b61374ac4b6014e
      https://github.com/llvm/llvm-project/commit/4298580c5516bc37c5afd3389b61374ac4b6014e
  Author: David Green <david.green at arm.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    A llvm/test/CodeGen/Thumb2/mve-shuffle-fp16.ll

  Log Message:
  -----------
  [ARM] Fix some fp16 Shuffle lowering without +fullfp16 (#200688)

Without fullfp16 f16 is not a legal type, meaning we need to be careful
with
how we legalize shuffle vector and buildvector operations that cannot be
treated more optimially using shuffles.


  Commit: 0631ac764a565ed13283e3c7b70a746d0a8018cc
      https://github.com/llvm/llvm-project/commit/0631ac764a565ed13283e3c7b70a746d0a8018cc
  Author: sstwcw <su3e8a96kzlver at posteo.net>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang/lib/Format/DefinitionBlockSeparator.cpp
    M clang/unittests/Format/DefinitionBlockSeparatorTest.cpp

  Log Message:
  -----------
  [clang-format] Remove the blank line in the function try block (#199086)

old with config `{SeparateDefinitionBlocks: Always}`

```C++
void foo() try {
  // do something
} catch (const std::exception &e) {

  // handle exception
}
```

new

```C++
void foo() try {
  // do something
} catch (const std::exception &e) {
  // handle exception
}
```

Fixes #58183.

With the option `SeparateDefinitionBlocks` set, the program previously
added a blank line in the catch block. Now the problem is fixed.


  Commit: fae9a1c3e887d58f03994d078f117e1f29b1810c
      https://github.com/llvm/llvm-project/commit/fae9a1c3e887d58f03994d078f117e1f29b1810c
  Author: sstwcw <su3e8a96kzlver at posteo.net>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/unittests/Format/FormatTestVerilog.cpp

  Log Message:
  -----------
  [clang-format] Recognize Verilog class item qualifiers (#199085)

old

```SystemVerilog
class Packet
  extern protected virtual function int send
      (int value);
  endclass : Packet
```

new

```SystemVerilog
class Packet
  extern protected virtual function int send
      (int value);
endclass : Packet
```

Previously the `extern` line failed to parse completely because the
`protected virtual` part was not recognized. It made the following lines
get indented wrong.


  Commit: 6897c5e24ce5e78afc2084f2c573577508443db1
      https://github.com/llvm/llvm-project/commit/6897c5e24ce5e78afc2084f2c573577508443db1
  Author: Min-Yih Hsu <min at myhsu.dev>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
    M llvm/lib/Target/M68k/Disassembler/M68kDisassembler.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.h
    M llvm/lib/Target/M68k/M68kISelDAGToDAG.cpp
    M llvm/lib/Target/M68k/M68kInstrControl.td
    M llvm/lib/Target/M68k/M68kInstrData.td
    M llvm/lib/Target/M68k/M68kInstrFormats.td
    M llvm/lib/Target/M68k/M68kInstrInfo.td
    M llvm/lib/Target/M68k/MCTargetDesc/M68kBaseInfo.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMemOperandPrinter.h
    M llvm/test/MC/Disassembler/M68k/data.txt
    A llvm/test/MC/M68k/Data/Classes/lea-m68020.s
    M llvm/test/MC/M68k/Relocations/PIC/text-plt.s
    M llvm/test/MC/M68k/Relocations/text-plt.s

  Log Message:
  -----------
  [M68k][MC] Add MC support for PCI w/ base displacement addressing mode (#200696)

Program Counter Indirect with Index (PCI) is augmented in M68020+ with
(1) larger displacement (up to 32-bit), and (2) Index scaling factor. We
call this PCIBD (PCI with Base Displacement) to distinguish it with the
older PCI.
Since all the components inside PCIBD are optional, including index
register, we can actually use it to replace PCD (PC displacement)
addressing mode in newer machines in order to leverage the larger
displacement.

This is the first step to support 32-bit memory addresses on M68020+
machines.


  Commit: 86350249871598fe76318ebd21af468879b9e87e
      https://github.com/llvm/llvm-project/commit/86350249871598fe76318ebd21af468879b9e87e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/sve-ldst-multi-vec.mir

  Log Message:
  -----------
  [AArch64][SME] Add multi-vector load opcodes to getMemOpInfo (#200238)

We recently started emitting these in
84fab943b5740ec273e9f8d238ea8420033320a4, which now means we can hit an
unhandled opcode error in AArch64InstrInfo::getMemOpInfo when resolving
stack offsets.

Fixes #200034


  Commit: 1bbd613e6267ea0a08994b56adc73cc7b2b5d07d
      https://github.com/llvm/llvm-project/commit/1bbd613e6267ea0a08994b56adc73cc7b2b5d07d
  Author: Aayush Shrivastava <79578660+iamaayushrivastava at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/test/Analysis/ValueTracking/recurrence-knownbits.ll
    M llvm/test/Transforms/InstCombine/and2.ll
    M llvm/test/Transforms/InstCombine/conditional-variable-length-signext-after-high-bit-extract.ll
    M llvm/test/Transforms/InstCombine/lshr.ll
    M llvm/test/Transforms/InstCombine/shift-direction-in-bit-test.ll

  Log Message:
  -----------
  [InstCombine] Fold lshr 1, X into zext (X == 0) (#200669)

This PR implements the missed optimisation reported in #200538.

`1 >> X` produces 1 only when X == 0, and 0 for all other in-range
values. Fold it directly into `zext (icmp eq X, 0)`.


  Commit: 50f452f4b561eafccec23f649e379d9c845afa64
      https://github.com/llvm/llvm-project/commit/50f452f4b561eafccec23f649e379d9c845afa64
  Author: mike-goutokuji <gfunni234 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll

  Log Message:
  -----------
  [InstCombine] Fix miscompilation when folding cttz with non-powers-of-2 (#200583)

Does not fold correctly: https://alive2.llvm.org/ce/z/uhHnBd


  Commit: f68ef5b4303de763ecf37fd57cbefc3891ee48c0
      https://github.com/llvm/llvm-project/commit/f68ef5b4303de763ecf37fd57cbefc3891ee48c0
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp

  Log Message:
  -----------
  [clang-tidy] Fix FP/FN in cppcoreguidelines-missing-std-forward (#178651)

Closes #176873


  Commit: 28be1eaf755a36187c40c2e251a663f811db5d9c
      https://github.com/llvm/llvm-project/commit/28be1eaf755a36187c40c2e251a663f811db5d9c
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/test/DebugInfo/COFF/fission-sections.ll

  Log Message:
  -----------
  [MC][COFF] Mark .debug_*.dwo sections IMAGE_SCN_LNK_REMOVE (#199616)

Mirror ELF's SHF_EXCLUDE so lld-link drops .dwo content from the linked
image.


  Commit: 256d09201cf9728e7cdadde20365cfe063abe3c3
      https://github.com/llvm/llvm-project/commit/256d09201cf9728e7cdadde20365cfe063abe3c3
  Author: lijinpei-amd <jinpei.li at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/test/CodeGen/MIR/AMDGPU/long-branch-reg-all-sgpr-used.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg-debug.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-long-branch-reg.ll
    A llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-min-num-agprs.ll
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-no-ir.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info.ll

  Log Message:
  -----------
  [AMDGPU] Fix missing SIMachineFunctionInfo::MinNumAGPRs from YAML mirror (#200647)

Fixes #162202.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 090308199b301dc5c6a2470b3a6b7ef89866dd6a
      https://github.com/llvm/llvm-project/commit/090308199b301dc5c6a2470b3a6b7ef89866dd6a
  Author: Thrrreeee <shijinrui at bytedance.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugNames.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp

  Log Message:
  -----------
  [BOLT][DebugInfo] Make parallel DWARF debug names generation deterministic(1/2) (#197670)

This change makes BOLT's split DWARF rewriting path produce
deterministic debug names output when processing CUs in parallel.

Previously, several pieces of state used while building `.debug_names`
and updating DWO names were populated during parallel CU processing.
This could make CU/TU index assignment, cross-
CU DIE lookup, and duplicate DWO name disambiguation depend on thread
scheduling order, which in turn could lead to non-reproducible output
across runs.
The patch moves DWO name collection into a deterministic pre-processing
step, pre-allocates debug names CU / foreign TU slots before concurrent
processing, protects cross-CU DIE tracking
with a mutex, and adds a stable tie-breaker when sorting accelerator
table entries. It also centralizes creation of the DWO output directory
before parallel work starts.
This improves reproducibility of BOLT output, makes debug info rewriting
less sensitive to parallel execution order, and avoids subtle
nondeterminism in generated `.debug_names` / split DWARF artifacts.

RFC - [[RFC][BOLT] A New Parallel DWARF Processing Approach in
BOLT](https://discourse.llvm.org/t/rfc-bolt-a-new-parallel-dwarf-processing-approach-in-bolt/90736)
(The overall changes will be split into two separate PRs for easier
review.)
Draft PR - [[BOLT][DebugInfo] Add a new parallel DWARF
processing(2/2)](https://github.com/llvm/llvm-project/pull/197859)
(including all changes)


  Commit: 41c269c6cb3f6f7fb6da74052d926948ac7a1c0e
      https://github.com/llvm/llvm-project/commit/41c269c6cb3f6f7fb6da74052d926948ac7a1c0e
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/docs/AMDGPUAsyncOperations.rst
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][DOCS] add async ops supported by asyncmark on GFX12 onwards (#200374)

Also clean up the text a bit.


  Commit: c90a8c270328f5d88b7688f7a4eece8f2100f931
      https://github.com/llvm/llvm-project/commit/c90a8c270328f5d88b7688f7a4eece8f2100f931
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/test/CodeGen/WebAssembly/simd-setcc-reductions.ll
    M llvm/test/CodeGen/WebAssembly/simd-vecreduce-bool.ll

  Log Message:
  -----------
  [WebAssembly] Handle wide mask reductions in performSETCCCombine (#189358)

This extends `performSETCCCombine` to handle wide fixed-length mask
reductions such as `v32i1` and `v64i1`.

Small mask reductions already had good combines, but `v32i1`/`v64i1`
cases still fell back to scalar bitmask materialization. This change
adds a wide-mask path using chunked `wasm_anytrue` / `wasm_alltrue`,
while preserving the existing small-mask combines.

For example, a reduction like

  %1 = icmp eq <32 x i16> %v, zeroinitializer
  %2 = bitcast <32 x i1> %1 to i32
  %3 = icmp ne i32 %2, 0

now avoids scalar bitmask reconstruction.

Fixed: https://github.com/llvm/llvm-project/issues/187294


  Commit: 0ecf562dac85a29f3de1dd598e3ae0ecc34d1240
      https://github.com/llvm/llvm-project/commit/0ecf562dac85a29f3de1dd598e3ae0ecc34d1240
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenAction.cpp

  Log Message:
  -----------
  [Clang] Fix write-to-global TimePassesIsEnabled race condition in BackendConsumer ctor (#200102)

When multiple threads launch multiple clang::CompilerInstance to compile
sources, there is no crash but thread-sanitizer reports race condition
in simultaneously writing to global variables llvm::TimePassesIsEnabled
and llvm::TimePassesPerRun in BackendConsumer constructor.

This PR fixes it using ManagedStatic SmartMutex and SmartScopedLock.


  Commit: d083abc9045fc58544892a2a7a67bf1246f5391c
      https://github.com/llvm/llvm-project/commit/d083abc9045fc58544892a2a7a67bf1246f5391c
  Author: Ruiling, Song <ruiling.song at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-lower-exec-sync-and-module-lds.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-lower-exec-sync.ll
    A llvm/test/CodeGen/AMDGPU/s-barrier-id-allocation.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier-lowering.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll

  Log Message:
  -----------
  AMDGPU: Improve barrier id allocation (#199997)

The existing barrier ID allocation is over-conservative when a barrier
object was indirectly accessed by several kernels. Instead of the
existing allocate barrier ID for such case per-module basis, we track
the ID allocation per kernel. This would be able to reuse the same
barrier ID for different objects which are accessed (indirectly/directly)
by non-overlapping kernels. See the case: s-barrier-id-allocation.ll.

The motivation comes from downstream use-cases which are handled using
exactly the same mechanism.

I have removed the uniquifyGVPerKernel() since it is less useful in the
new way. And I think there are correctness issues in it. For
non-kernel functions, it just did the replacement without ensuring it is
really called by the kernel (`if (!isKernel(*F) || F == KF)`). This is
problematic if the non-kernel functions was called by other kernels. We
can bring it back carefully if we really need it in the future.


  Commit: 7963f459e2f3324f912feab2662a0cd23b5762d7
      https://github.com/llvm/llvm-project/commit/7963f459e2f3324f912feab2662a0cd23b5762d7
  Author: Yashas Andaluri <yandalur at qti.qualcomm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    A llvm/lib/Target/Hexagon/HexagonAggressiveRDFCopy.cpp
    A llvm/lib/Target/Hexagon/HexagonAggressiveRDFCopy.h
    M llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp
    M llvm/lib/Target/Hexagon/RDFCopy.cpp
    M llvm/lib/Target/Hexagon/RDFCopy.h
    A llvm/lib/Target/Hexagon/RDFCopyBase.h
    M llvm/test/CodeGen/Hexagon/rdf-copy-clobber.mir
    A llvm/test/CodeGen/Hexagon/rdf-copy-combine.mir

  Log Message:
  -----------
  [Hexagon] Add AggressiveRDF copy propagation (#182818)

This patch adds a reworked copy propagation algorithm. AggressiveRDF
extends standard RDF copy propagation with support for super-register
and sub-register copy propagation. It determines candidates for copy
propagation by verifying that both the copy instruction and all reached
uses have the same reaching definitions for the source register(s).

Created a RDFCopyBase parent class for the common members used by old
RDF copy propagation and AggressiveRDF copy propagation classes.
AggressiveRDF copy propagation is disabled by default. It can be enabled
using -hexagon-aggressive-rdf-copy=true


  Commit: 56f28d538f737bcd50081f75fbb8c01d0bc80c38
      https://github.com/llvm/llvm-project/commit/56f28d538f737bcd50081f75fbb8c01d0bc80c38
  Author: Justin T. Gibbs <gibbs at scsiguy.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.cpp

  Log Message:
  -----------
  [asan] Allow OOM Policy Injection in Allocator::Allocate API (#196413)

Groundwork for #196388.

Allocator::Allocate() previously unconditionally applied the global
OOM policy as dictated by the AllocatorMayReturnNull() flag: return
nullptr or abort via Report*+Die(). Introduce Allocator::AllocateImpl()
which delegates this decision to the caller via its 'may_return_null'
boolean parameter, allowing future changes to the operator new
implementation to fully control this behavior.

Implementation:

  * Rename Allocator::Allocate(...) to Allocator::AllocateImpl(...) and
    add a may_return_null parameter that replaces the three internal
    AllocatorMayReturnNull() calls (RSS limit, oversize, OOM).

  * Reintroduce Allocator::Allocate(...) as a thin wrapper that calls
    AllocateImpl(..., AllocatorMayReturnNull()), preserving the
    flag-deferring semantics for every existing caller.

NFC.


  Commit: f86ce229856e0cf4cbcd29ce1261596a5cb79aa5
      https://github.com/llvm/llvm-project/commit/f86ce229856e0cf4cbcd29ce1261596a5cb79aa5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCContext.h
    M llvm/lib/MC/MCAsmInfoELF.cpp
    M llvm/lib/MC/MCAsmInfoGOFF.cpp
    M llvm/lib/MC/MCAsmInfoWasm.cpp
    M llvm/lib/MC/MCAsmInfoXCOFF.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp

  Log Message:
  -----------
  [MC] Remove PrivateLabelPrefix in favor of InternalSymbolPrefix. NFC (#200700)

Every target sets `PrivateLabelPrefix` equal to `InternalSymbolPrefix`.
BPF was the last target where the two diverged, and it was unified to
".L"
(#185164).

With no remaining target distinguishing the two, drop the redundant
`PrivateLabelPrefix` member and `getPrivateLabelPrefix` accessor and
route
the basic-block label callers (MCContext::createBlockSymbol, the
inline-asm
label fixups in AsmParser/MasmParser, and BOLT) through
`getInternalSymbolPrefix`.


  Commit: 0b70118713e57c947914888310584589ffca664d
      https://github.com/llvm/llvm-project/commit/0b70118713e57c947914888310584589ffca664d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/vp-reverse-mask.ll

  Log Message:
  -----------
  [SelectionDAG] Fix SplitVecRes_VP_REVERSE for sub-byte (i1) element types (#200625)

The strided-store/reload reverse computes the byte stride as
getScalarSizeInBits() / 8, which is 0 for i1: every lane lands at the
same address and the result is garbage.

Widen sub-byte elements to a byte integer (i1 -> i8), reverse, then
truncate back.


  Commit: a98f112fa80eab69f843e1e6326e0ef58f6d02d6
      https://github.com/llvm/llvm-project/commit/a98f112fa80eab69f843e1e6326e0ef58f6d02d6
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-31 (Sun, 31 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/vp-splice-mask-vectors.ll

  Log Message:
  -----------
  [SelectionDAG] Fix SplitVecRes_VP_SPLICE for sub-byte (i1) element types (#200626)

The stack splice addresses elements by byte offset
(getVectorElementPointer) and, for a negative offset,
a stride of getScalarSizeInBits() / 8. Both break for i1:
getVectorElementPointer asserts, or the stride degenerates
to 0.

Widen sub-byte elements to a byte integer (i1 -> i8), splice, then truncate
back, like SplitVecRes_VP_REVERSE.


  Commit: 01b0cccf58d2f908d8d9a29188dc586d17261b64
      https://github.com/llvm/llvm-project/commit/01b0cccf58d2f908d8d9a29188dc586d17261b64
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:

  Log Message:
  -----------
  [Maintainers] Fix broken libc link (NFC) (#199653)

Was recently converted to .md (836c77bc0282).


  Commit: f0c423380111db36f946c4ffd696928cf09db78a
      https://github.com/llvm/llvm-project/commit/f0c423380111db36f946c4ffd696928cf09db78a
  Author: David Green <david.green at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    A llvm/test/CodeGen/AArch64/ld1st1_post_mmo.ll

  Log Message:
  -----------
  [AArch64] Copy MMO in ld1 / st1 post index selection. (#199023)

The non-postinc variants were already copying the MMO, this extend that
to the post variants of the instructions, allowing better scheduling.


  Commit: dbe5e3391c0f7ecb4dd5b3f8943c1ebf689e4118
      https://github.com/llvm/llvm-project/commit/dbe5e3391c0f7ecb4dd5b3f8943c1ebf689e4118
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/sys-param-macros.h
    A libc/include/sys/param.yaml

  Log Message:
  -----------
  [libc] Add sys/param.h header (#200559)

Added the sys/param.h header containing standard BSD macros:

* NBBY
* MIN and MAX
* howmany, roundup, and powerof2
* MAXPATHLEN

The macros are defined in llvm-libc-macros/sys-param-macros.h with
guards to prevent redefinition conflicts.

Enabled the header for x86_64, aarch64, riscv, and arm Linux targets.

Assisted-by: Automated tooling, human reviewed.


  Commit: 85ec9552dc84cbc5acd025bdeb9b258b044591b9
      https://github.com/llvm/llvm-project/commit/85ec9552dc84cbc5acd025bdeb9b258b044591b9
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/docs/AMDGPUMemoryModel.rst
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/UserGuides.rst

  Log Message:
  -----------
  [AMDGPU] A Vulkan-style memory model weaker than the LLVM model (#191246)

Add a new AMDGPU memory model specification that is weaker than the LLVM
memory model using Vulkan-style availability/visibility semantics and
scoped operations. The model allows more efficient implementations while
maintaining a safe-by-default mapping to the standard LLVM model.

**RFC:**
https://discourse.llvm.org/t/a-vulkan-style-memory-model-for-amdgpu-and-beyond/90498

Related changes:

- #191390
- #199489


  Commit: db5d4d8e1e79a7cda990d7bb96881eb6316a3055
      https://github.com/llvm/llvm-project/commit/db5d4d8e1e79a7cda990d7bb96881eb6316a3055
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan][NFC] Extract logical recipe simplifications from simplifyRecipe() (#196915)

Taking suggestion from here by @david-arm
https://github.com/llvm/llvm-project/pull/196080#pullrequestreview-4237356141 - outlining logical recipees.


  Commit: fb2fe71ffe5ffbced0ce2ce1f4c81bfcb5d487d9
      https://github.com/llvm/llvm-project/commit/fb2fe71ffe5ffbced0ce2ce1f4c81bfcb5d487d9
  Author: David Green <david.green at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll

  Log Message:
  -----------
  [AArch64] Generate umaddl and smaddl from disjoint or (#200198)

Similar to other patches recently, this adds add_like handling to the
tablegen patterns for smaddl and umaddl, allowing them to match from
disjoint or.


  Commit: c9b2d7224c006239641214b2b58b0ab67a254308
      https://github.com/llvm/llvm-project/commit/c9b2d7224c006239641214b2b58b0ab67a254308
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp

  Log Message:
  -----------
  [TBAA] Remove handling for old TBAA format (#200370)

Nowadays only struct-path TBAA is supported, and the verifier enforced
this.


  Commit: 44ddc97ade5ae1dcc06a10492ac9f2119cecd9c4
      https://github.com/llvm/llvm-project/commit/44ddc97ade5ae1dcc06a10492ac9f2119cecd9c4
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp

  Log Message:
  -----------
  [TableGen] Remove redundant special BitsInit/BitInt resolution(NFC) (#200674)

BitsInit and BitInt are subclasses of TypedInit, so the code above will
handle them and separate if for them is not necessary. See
https://github.com/llvm/llvm-project/pull/199659#discussion_r3319597920

Keeping the test cases in `llvm/test/TableGen/switch.td` to avoid
regressions.


  Commit: b73b44b5f8463072b9084b2d791f7639f0adad17
      https://github.com/llvm/llvm-project/commit/b73b44b5f8463072b9084b2d791f7639f0adad17
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/TableGen/TGParser.cpp

  Log Message:
  -----------
  [TableGen] Align ParseOperationCond vector names(NFC) (#199666)

Depends on https://github.com/llvm/llvm-project/pull/199659. The first 1
commits are from the base PR.


  Commit: e5ab4f8a1f766febdc65ce89c00dec85393cfd68
      https://github.com/llvm/llvm-project/commit/e5ab4f8a1f766febdc65ce89c00dec85393cfd68
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/test/API/python_api/interpreter/TestCommandInterpreterAPI.py
    R lldb/test/Shell/Commands/process-attach-dummy.test

  Log Message:
  -----------
  [lldb] Fix CommandInterpreter::GetExecutionContext (#199922)

Following up Jonas's comment in #198949, this patch changes the function
to not ignore the override context in the adopt_dummy_target=false case.

However, I don't implement Jonas's suggestion exactly either. Instead of
"bypassing" the override context if it contains the dummy target, this
patch returns an empty context instead. I think this makes more sense,
as the intention of the user may very well have been to run the command
in the context of the dummy target. The test suite has no opinion either
way, but this is sufficient to fix the regression that #198949 was
trying to fix.

I also delete the test added in that PR, as the tests in this patch
cover more cases, and the test has the potential of interfering with
another process/test running on the same system.


  Commit: 6a33d3f71207ae2d8497bbc29f738a91bf38aab4
      https://github.com/llvm/llvm-project/commit/6a33d3f71207ae2d8497bbc29f738a91bf38aab4
  Author: David Green <david.green at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-exp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sin.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sinh.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Fill in some missing float types in mir tests. NFC (#200743)


  Commit: 7a435caaf3faa8ac36ac8bb57a34e9042f2bf63a
      https://github.com/llvm/llvm-project/commit/7a435caaf3faa8ac36ac8bb57a34e9042f2bf63a
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/CMakeLists.txt
    R llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp
    R llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.h
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTableExecutorEmitter.cpp
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/MatchTable.cpp
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/MatchTable.h
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.cpp
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.h
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/Types.cpp
    A llvm/utils/TableGen/Common/GlobalISel/MatchTable/Types.h
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Reorganize GlobalISelMatchTable.h/.cpp (#200153)

This file was a bit of a kitchen sink, and the implementation of the
match table is sufficiently difficult to get comfortable with already.
I spent the past few weeks looking at it, finding improvements, etc. and
I think a nice way to make it a bit easier to approach is to split up
the file a bit so that the main implementation (Matchers.h/.cpp) only
contains the code pertaining to the Matchers (RuleMatchers, Preds,
etc.).

We now have 3 files:

- One for type (LLT) related utilities.
- One for the MatchTable emission logic, which is generic and should not
  be tied to any specific implementation. It just has the tools to emit
  the opcodes for the table.
- One for the entire Matcher system, including PredicateMatchers and so
on.


  Commit: ea6769c8c7ddeed6643ce2487d6c96d8f1b8abb2
      https://github.com/llvm/llvm-project/commit/ea6769c8c7ddeed6643ce2487d6c96d8f1b8abb2
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/DWARFLinker/AddressesMap.h
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DIEAttributeCloner.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp

  Log Message:
  -----------
  [DWARFLinker] Remove unused argument of DataExtractor constructor (NFC) (#196364)

`AddressSize` parameter is not used by `DataExtractor` and will be
removed in the future. See #190519 for more context. As a drive-by
change, use the constructor taking ArrayRef where it allows removing
extra casts.


  Commit: 13e62f031fcfba57d525727e39e2e7e53c245435
      https://github.com/llvm/llvm-project/commit/13e62f031fcfba57d525727e39e2e7e53c245435
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
    M llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll

  Log Message:
  -----------
  [LoopInterchange] Enable it by default (#124911)

This enables loop-interchange, which was first discussed here:
https://discourse.llvm.org/t/enabling-loop-interchange/82589

All bugs have been fixed, including DependenceAnalysis, and all
components have at least one maintainer; default enablement is
now meeting the requirements in the Developer's policy.

This has been a major effort by different people, many thanks to:
- Ryotaro Kasuga,
- Madhur Amilkanthwar,
- Sebastian Pop,
- Ehsan Amiri,
- Michael Kruse,
- Nikita Popov,
- Sjoerd Meijer.


  Commit: fa02a6ed66b1700c996b49c96c6bc0eb014c9518
      https://github.com/llvm/llvm-project/commit/fa02a6ed66b1700c996b49c96c6bc0eb014c9518
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/RISCV/switch-of-powers-of-two.ll
    M llvm/test/Transforms/SimplifyCFG/rangereduce.ll

  Log Message:
  -----------
  [SimplifyCFG] Permit less dense lookup tables (#200664)

It should be most often beneficial to generate a lookup table instead of
a jump table: the lookup table is rarely larger, but saves on
instructions and an indirect branch. Therefore, adjust the lookup table
threshold to match the jump table threshold.

The motivation is clang::Decl::castToDeclContext, which is a rather hot
function when parsing C++ programs, but the switch density is just 38%.
This improves stage2-O0g by 0.17% (7zip/kimwitu++ >0.5%).


  Commit: 91b77dc685cf628cbf925e43e25f2f86a912b38b
      https://github.com/llvm/llvm-project/commit/91b77dc685cf628cbf925e43e25f2f86a912b38b
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/IR/DebugLoc.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/TrackingMDRef.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Metadata.cpp
    A llvm/test/Assembler/dbg-declare-invalid-debug-loc.ll
    A llvm/test/Assembler/dbg.ll
    M llvm/test/CodeGen/X86/stack-protector-dbginfo.ll
    M llvm/test/DebugInfo/Generic/2009-10-16-Phi.ll
    M llvm/test/DebugInfo/Generic/location-verifier.ll
    M llvm/test/DebugInfo/MIR/X86/regcoalescer.mir
    M llvm/test/Transforms/MergeFunc/mergefunc-preserve-nonnull.ll
    M llvm/test/Verifier/RemoveDI/llvm.dbg.intrinsic-dbg-attachment.ll
    R llvm/test/Verifier/dbg-declare-invalid-debug-loc.ll
    M llvm/test/Verifier/dbg.ll
    M llvm/test/tools/llvm-reduce/remove-metadata.ll
    M llvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [IR] Don't use TrackingMDNodeRef for DebugLoc (#200649)

TrackingMDNodeRef is expensive and the tracking functionality is only
used when parsing textual LLVM IR. Therefore, store a plain DILocation
pointer in DebugLoc and update the debug locs explicitly when parsing
finishes.

Invalid debug metadata now fails directly at parsing and not (just)
later when verifying. A consequence is that old-style DILocations cannot
be parsed from textual IR anymore.

As related cleanup, remove the now-unused hasTrivialDestructor() on
TrackingMDRef.

While work on changing DILocation to no longer be metadata is on the
way, it is going to take a while to finish, we can get this immediate
performance and max-rss improvement earlier.


  Commit: 78f429c3b2aeb8105c888133008dea0023b8eebb
      https://github.com/llvm/llvm-project/commit/78f429c3b2aeb8105c888133008dea0023b8eebb
  Author: Harry Ramsey <harry.ramsey at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/sve2-sra.ll

  Log Message:
  -----------
  [AArch64][SVE] Match (add_like x (lsr y, c)) -> usra x, y, c

Modify SVE USRA pattern to accept add_like, so both add and or disjoint
forms can select usra.

Add known-bits support for predicated SVE logical shifts, allowing
or_disjoint matching to prove disjointness for plain ORs where possible.


  Commit: 4c2348902c68ae2b095317e34ff0b4fdcc571042
      https://github.com/llvm/llvm-project/commit/4c2348902c68ae2b095317e34ff0b4fdcc571042
  Author: Akash Agrawal <akashag at qti.qualcomm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/cttz-elts-split.ll

  Log Message:
  -----------
  [TargetLowering] Split CTTZ_ELTS when its step vector requires splitting (#197623)

Follow-up to #190914: getLegalMaskAndStepVector() returns an empty
StepVec to signal that the operation should be split. Only
expandVectorFindLastActive handled this; expandCttzElts crashed by
dereferencing the null SDValue during vector op legalization. Apply the
same split-and-recurse strategy, preferring the low half since CTTZ_ELTS
finds the first active lane.

Assisted-by: Anthropic::claude-4.6


  Commit: 261e0f4ec53f1e98a6c5c3a958827eb83c4e4dd9
      https://github.com/llvm/llvm-project/commit/261e0f4ec53f1e98a6c5c3a958827eb83c4e4dd9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/CMakeLists.txt
    M libc/docs/headers/index.rst
    M libc/include/CMakeLists.txt
    A libc/include/netinet/tcp.yaml
    A libc/utils/docgen/netinet/tcp.yaml

  Log Message:
  -----------
  [libc] Add netinet/tcp.h header (#200356)

This patch adds the netinet/tcp.h header definition. For now I'm only
adding TCP_NODELAY to it, as that's the only constant specified by
POSIX.

I also include the header in the public headers list for linux targets
and hook it up to the implementation status docs.

I don't add a test as this is just a constant definition, and it would
be very hard to devise (if even possible over a loopback interface) a
test to check that the option has the desired effect (in fact, POSIX
says that an implementation doesn't even have to let you set the
option).

Assisted by Gemini.


  Commit: fe4b56cc54c76cb8268c4d0fb509c37428e593d6
      https://github.com/llvm/llvm-project/commit/fe4b56cc54c76cb8268c4d0fb509c37428e593d6
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 7a435ca (#200749)


  Commit: fb8cb1b3d0edd14ff0b40562200b827aca72598f
      https://github.com/llvm/llvm-project/commit/fb8cb1b3d0edd14ff0b40562200b827aca72598f
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Target/Process.cpp
    M lldb/unittests/Target/MemoryTest.cpp

  Log Message:
  -----------
  [lldb] Strip pointer metadata in ReadMemoryRanges (#200398)

The Process base class is generally responsible for fixing pointer
metadata before delegating memory reads to concrete Process
specializations. However, ReadMemoryRanges was a direct path into the
derived classes, which made it so that pointer metadata was never
stripped.

This commit creates a non-virtual ReadMemoryRanges in Process, which
clears pointer metadata, before delegating to the new virtual method
DoReadMemoryRanges. This also allows, in the future, to plug into the
memory cache system.


  Commit: 2b955975dcc524dca2881080a66ce192c5582645
      https://github.com/llvm/llvm-project/commit/2b955975dcc524dca2881080a66ce192c5582645
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/test/Conversion/MemRefToSPIRV/bitwidth-emulation.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add i64 tests for MemRef bitwidth emulation (NFC) (#200724)


  Commit: 24b8cfa374d7c78fadcbb41bf9cb497c84f8dda5
      https://github.com/llvm/llvm-project/commit/24b8cfa374d7c78fadcbb41bf9cb497c84f8dda5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/test/Target/SPIRV/selection.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add roundtrip and validation test for spirv.Switch (NFC) (#200572)

Add missing `spirv-val` tests for spirv.Switch operation


  Commit: abdab060c8a762aad1d11bafaa275c7d75b2f16b
      https://github.com/llvm/llvm-project/commit/abdab060c8a762aad1d11bafaa275c7d75b2f16b
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Convert math.fpowi to spirv.GL.Pow (#200563)


  Commit: 40b722df905dc14be1e8eb39560614e9226c50ad
      https://github.com/llvm/llvm-project/commit/40b722df905dc14be1e8eb39560614e9226c50ad
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCLOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
    M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/ocl-ops.mlir
    M mlir/test/Target/SPIRV/gl-ops.mlir
    M mlir/test/Target/SPIRV/ocl-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add GL Trunc and CL trunc ops (#200738)


  Commit: 51b54fffee8c4b3440a03b3affceba3690754115
      https://github.com/llvm/llvm-project/commit/51b54fffee8c4b3440a03b3affceba3690754115
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/cxx23.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix discarded dynamic casts (#200723)

If they are checked.


  Commit: 683c367c21d8595a45a97e0439540d3efcd29b25
      https://github.com/llvm/llvm-project/commit/683c367c21d8595a45a97e0439540d3efcd29b25
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test
    M lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test
    M lldb/tools/lldb-server/lldb-server.cpp

  Log Message:
  -----------
  [lldb][lldb-server][Darwin] Error when gdbserver mode is requested (#199654)

Fixes #199035

lldb-server's platform mode works on Apple platforms but the gdbserver
mode does not. Users should use debugserver instead, and platform mode
knows to spawn debugserver instead of lldb-server.

I'm adding an error to state this, because until now it would maybe
appear to work, or crash in strange ways. None of which can be fixed by
a user and are a waste of our time dealing with the bug reports.


  Commit: 62b7cf9623fc310525f39ed69aaecc318a909731
      https://github.com/llvm/llvm-project/commit/62b7cf9623fc310525f39ed69aaecc318a909731
  Author: Sanket Pandit <sanket.p25 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    A llvm/test/CodeGen/AMDGPU/buffer-store-dwordx4-vpk-mul-war-hazard-gfx942.mir

  Log Message:
  -----------
  [AMDGPU] Widen MUBUF/MTBUF source-vgpr WAR hazard on gfx940-family to SGPR soffset (#197267)

createsVALUHazard previously gated the MUBUF/MTBUF source-vgpr WAR
hazard to fire only when SOFFSET was a literal or absent. On
gfx940-family subtargets that gate is too narrow: the hazard also fires
when SOFFSET is sourced from an SGPR.

Concretely, on gfx950 a sequence of the form

```
  buffer_store_dwordx4 v[X:X+3], voff, descr, sN offen
  v_pk_mul_f32 v[X:X+1], <src>, <src>           # next VALU cycle
```

deterministically commits the post-pk_mul value of v[X+1] to memory for
the second dword of the store; the other three dwords store correctly.

The wait-state window depends on the SOFFSET shape:

  - sgpr-sourced SOFFSET: 1 wait state  (S_NOP 0)
  - literal/absent SOFFSET: 2 wait states (S_NOP 1)
  - pre-gfx940 literal SOFFSET (unchanged): 1 wait state
  - pre-gfx940 sgpr SOFFSET (unchanged): no hazard

Implementation widens createsVALUHazard's trigger on gfx940-family and
splits checkVALUHazardsHelper's single 2-wait-state scan into a per-MI
window: a 1-cycle scan and a 2-cycle scan, taking the max. FLAT-wide
stores keep the existing 2-wait-state behavior on gfx940 family.

Empirically reproduced and characterised on gfx950 by Triton's
fused-attention backward kernel; the threshold sweep in
repro/minimal_hazard pins the sgpr-SOFFSET window at exactly 1 cycle (a
single S_NOP 0 clears the corruption). gfx942 (MI300) was not validated
on hardware; the same gate is applied there because the existing
recognizer rule treats the gfx940 family uniformly.

New MIR test covers literal and SGPR soffset on gfx900 (older), gfx942
and gfx950, plus negative cases (dwordx2 store, non-overlapping write).

Assisted-by: Cursor <cursoragent at cursor.com>


  Commit: e9556fcc4a18522e93d3975962a77a008e92b38b
      https://github.com/llvm/llvm-project/commit/e9556fcc4a18522e93d3975962a77a008e92b38b
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/MathToSPIRV/MathToSPIRV.cpp
    M mlir/test/Conversion/MathToSPIRV/math-to-gl-spirv.mlir
    M mlir/test/Conversion/MathToSPIRV/math-to-opencl-spirv.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Convert math.trunc to GL Trunc and CL trunc (#200739)


  Commit: ae1d75e6071e51fff924c6904852fc3a2ae56687
      https://github.com/llvm/llvm-project/commit/ae1d75e6071e51fff924c6904852fc3a2ae56687
  Author: Sonal Pinto <sonalpinto at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/src/__support/math/expxf16_utils.h
    M libc/src/__support/math/hypotf16.h

  Log Message:
  -----------
  [libc][math] Guard f16 math headers to fix certain 32-bit ARM builds (#200715)

Wrap hypotf16.h and expxf16_utils.h in LIBC_TYPES_HAS_FLOAT16 macros
like other flaot16 math headers. This fixes build breaks on systems
where float16 is unsupported (like some 32-bit ARM).


  Commit: 63c29df8ecebb57bdcc04de652afc8d2d98650d7
      https://github.com/llvm/llvm-project/commit/63c29df8ecebb57bdcc04de652afc8d2d98650d7
  Author: Dmitry Polukhin <34227995+dmpolukhin at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/PCH/friend-template-spec-redecl.cpp

  Log Message:
  -----------
  [Serialization] Fix assertion on re-deserialized friend template spec… (#200566)

…ialization in PCH (#198133)

A friend function-template specialization declared inside a class
template is serialized into a PCH. When the class template is later
instantiated while loading the PCH, the friend specialization can be
deserialized re-entrantly (VisitFriendDecl -> VisitFunctionDecl -> ...
-> VisitFunctionDecl for the same specialization) at the same time as
the canonical copy, producing two redeclarations of the same
specialization in the template's specialization set.

ASTDeclReader::VisitFunctionDecl asserted that this collision could only
happen when merging declarations from different modules. Since
38b3d87bd384, friend functions defined inside dependent class templates
are loaded eagerly, so the collision can now also occur within a single
PCH/AST file (non-modules build), tripping the assertion:

  Assertion failed: (Reader.getContext().getLangOpts().Modules &&
  "already deserialized this template specialization"), function
  VisitFunctionDecl

The merge that follows (mergeRedeclarable) already links the two
redeclarations correctly regardless of whether modules are enabled, so
the fix is to drop the modules-only assumption and let the merge run.

Fixes https://github.com/llvm/llvm-project/issues/198133


  Commit: 581c37afad03abd4230139de7e5e8e1f094de825
      https://github.com/llvm/llvm-project/commit/581c37afad03abd4230139de7e5e8e1f094de825
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port ae1d75e (#200758)


  Commit: f2f9eae932778b04ab31760c7c068eb6bafb10fe
      https://github.com/llvm/llvm-project/commit/f2f9eae932778b04ab31760c7c068eb6bafb10fe
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512vbmi2.ll

  Log Message:
  -----------
  [X86] matchShuffleAsVSHLD - fix incorrect shift factor (#200754)

#200604 left the non-commuted case to still scale by 8bits instead of the src scalar bit size


  Commit: ea8f3dfe487e1c0df1fbd31dded17ec77567229e
      https://github.com/llvm/llvm-project/commit/ea8f3dfe487e1c0df1fbd31dded17ec77567229e
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/cast-costs.ll
    A llvm/test/Transforms/LoopVectorize/vscale-cost.ll

  Log Message:
  -----------
  [LV][NFC] Add cost model tests for VPInstructionWithType (#200135)


  Commit: 044b63d5771802d1baaa6e877e76e0c562aa0724
      https://github.com/llvm/llvm-project/commit/044b63d5771802d1baaa6e877e76e0c562aa0724
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Avoid some code duplication for `ScalarValueInitExpr` (#200755)


  Commit: 1b24a402bf5bb84b32f9d6d1be6b46099363adde
      https://github.com/llvm/llvm-project/commit/1b24a402bf5bb84b32f9d6d1be6b46099363adde
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A clang-tools-extra/Maintainers.md
    R clang-tools-extra/Maintainers.rst
    A clang-tools-extra/docs/Maintainers.md
    R clang-tools-extra/docs/Maintainers.rst

  Log Message:
  -----------
  [clang-tools-extra] Move maintainer files to .md files (#200769)

Without any formatting changes. This will break the docs build, but a
follow up (#200365) will fix the formatting and so on.


  Commit: 050c202e82a643322aa9d76a69f2c6639e4b99d6
      https://github.com/llvm/llvm-project/commit/050c202e82a643322aa9d76a69f2c6639e4b99d6
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang-tools-extra/Maintainers.md
    M clang-tools-extra/docs/Maintainers.md
    M clang-tools-extra/docs/conf.py
    M llvm/Maintainers.md

  Log Message:
  -----------
  [clang-tools-extra][docs] Convert maintainers file to Markdown (#200365)

Following the way clang does it.

* Moved files to .md (done in #200769).
* Reformatted into Markdown.
* Changed the stub file docs/Maintainers.rst into docs/Maintainers.md
and used a myst directive for the include.
* In the config file, added myst parser and ".md" as a recognised file
extension.

After this change, all maintainers files in llvm-project will be in
Markdown format.


  Commit: 919f72a12f14c6b30400dc84584fd33846ffb008
      https://github.com/llvm/llvm-project/commit/919f72a12f14c6b30400dc84584fd33846ffb008
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .github/CODEOWNERS
    M libc/docs/porting.rst
    M llvm/docs/Contributing.rst
    M llvm/docs/DeveloperPolicy.rst

  Log Message:
  -----------
  [docs] Remove all references to Maintainers.rst (#200368)

All projects are using Maintainers.md files as of #200365.


  Commit: bd1b3d47462acf4f854f593bdd77b3f127adea46
      https://github.com/llvm/llvm-project/commit/bd1b3d47462acf4f854f593bdd77b3f127adea46
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Core/Mangled.h
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/unittests/Core/MangledTest.cpp

  Log Message:
  -----------
  [lldb] Reduce size of Mangled class (#200181)

The Mangled class is used in several places in LLDB, most notably as a
direct member of Symbol. This makes this class one of the most
frequently long-lived allocations in LLDB.

In commit a2672250be871bdac18c1a955265a98704434218 , this class got a
(large) cache that stores information about demangled data. This cache
is stored in a std::optional member, which means the memory for the
class is allocated within our Mangled object. It should be noted that
this cache is only used when we actually demangle the name, which
doesn't happen for every mangled name we encounter.

The additional cache member caused that the size of Mangled went from
16B to 152B by default (that is, even if the Mangled name was never
demangled).

This patch replaces the std::optional with a unique_ptr which stores the
cache on first use in a separate heap allocation. This changes decreases
the amount of allocated memory when debugging a relatively small
Objective-C project from 1.57GiB to 1.18GiB (-400MiB).


  Commit: 356d7e6bf429a7ff3ae798bb994631ef33891a44
      https://github.com/llvm/llvm-project/commit/356d7e6bf429a7ff3ae798bb994631ef33891a44
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/IR/Value.cpp
    M llvm/test/Analysis/ValueTracking/memory-dereferenceable.ll

  Log Message:
  -----------
  [IR] Handle nofree noalias in canBeFreed() (#200194)

Based on the argument nofree semantics specified in
https://github.com/llvm/llvm-project/pull/195658, we can conclude that
an argument with both nofree and noalias cannot be freed.

This also handles the case of readonly + noalias, to be consistent with
the logic for functions (and because we had a FIXME for it...)


  Commit: 0059fe6596aee0052f9ba40188ee2cef27b93af0
      https://github.com/llvm/llvm-project/commit/0059fe6596aee0052f9ba40188ee2cef27b93af0
  Author: Kashika Akhouri <akhourik at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add support for lifetime capture_by (#196884)

This PR implements support for the `[[clang::lifetime_capture_by(X)]]`
attribute within the lifetime-safety analysis.

The PR introduces a new helper in `FactGenerator.cpp` called
`handleLifetimeCaptureBy` which detects
`[[clang::lifetime_capture_by(X)]]` on parameters. If detected, the
analyzer now generates an `OriginFlowFact` ensuring that captured
dependencies are added to the capturer's state. The PR supports
capture_by params and `this` and currently doesn't implement attributes
on function declarations.

Example:
Integrate `[[clang::lifetimebound]]`: This existing Clang annotation is
crucial for specifying that the lifetime of a function's output is tied
to one of its inputs.

```cpp
void setS(std::string_view& in, std::string_view out [[clang::lifetime_capture_by(X)]]);

std::string_view foo() {
  std::string a = "on stack";
  std::string_view res;
  setS(res, a);
  return res;  // warning: returning address of local variable 'a'.
}
```

Lifetime Facts:
```cpp
Function: foo
  Block B2:
  End of Block
  Block B1:
    OriginFlow: 
        Dest: 0 (Expr: ImplicitCastExpr, Type : const char *)
        Src:  1 (Expr: StringLiteral, Type : const char (&)[9])
    Use (0 (Expr: ImplicitCastExpr, Type : const char *), Read)
    Use (2 (Expr: CXXDefaultArgExpr, Type : const class std::allocator<char> &), Read)
    Expire (MaterializeTemporaryExpr at 0x562afa69fdb0)
    OriginFlow: 
        Dest: 3 (Decl: res, Type : std::string_view)
        Src:  4 (Expr: CXXConstructExpr, Type : std::string_view)
    Use (3 (Decl: res, Type : std::string_view), Read)
    Issue (0 (Path: res), ToOrigin: 7 (Expr: DeclRefExpr, Decl: res))
    Issue (1 (Path: a), ToOrigin: 8 (Expr: DeclRefExpr, Decl: a))
    OriginFlow: 
        Dest: 9 (Expr: ImplicitCastExpr, Type : const class std::basic_string<char> &)
        Src:  8 (Expr: DeclRefExpr, Decl: a)
    Use (9 (Expr: ImplicitCastExpr, Type : const class std::basic_string<char> &), Read)
    OriginFlow: 
        Dest: 10 (Expr: CXXMemberCallExpr, Type : __sv_type)
        Src:  9 (Expr: ImplicitCastExpr, Type : const class std::basic_string<char> &)
    OriginFlow: 
        Dest: 11 (Expr: ImplicitCastExpr, Type : __sv_type)
        Src:  10 (Expr: CXXMemberCallExpr, Type : __sv_type)
    Use (11 (Expr: ImplicitCastExpr, Type : __sv_type), Read)
// New Origin Flow fact added    
OriginFlow: 
        Dest: 3 (Decl: res, Type : std::string_view)
        Src:  11 (Expr: ImplicitCastExpr, Type : __sv_type), Merge
    Use (3 (Decl: res, Type : std::string_view), Read)
    Issue (2 (Path: res), ToOrigin: 12 (Expr: DeclRefExpr, Decl: res))
    OriginFlow: 
        Dest: 13 (Expr: ImplicitCastExpr, Type : const std::string_view &)
        Src:  12 (Expr: DeclRefExpr, Decl: res)
    OriginFlow: 
        Dest: 14 (Expr: ImplicitCastExpr, Type : std::string_view)
        Src:  3 (Decl: res, Type : std::string_view)
    OriginFlow: 
        Dest: 15 (Expr: CXXConstructExpr, Type : std::string_view)
        Src:  14 (Expr: ImplicitCastExpr, Type : std::string_view)
    Expire (a)
    Expire (res, Origin: 3 (Decl: res, Type : std::string_view))
    OriginEscapes (15 (Expr: CXXConstructExpr, Type : std::string_view), via Return)
  End of Block
  Block B0:
  End of Block
```


  Commit: 9738adaff8e2ea79917858a5e6349572e884c4cd
      https://github.com/llvm/llvm-project/commit/9738adaff8e2ea79917858a5e6349572e884c4cd
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/detail/get_device_kernel_info.hpp
    A libsycl/include/sycl/__impl/detail/unified_range_view.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    M libsycl/src/detail/global_objects.cpp
    M libsycl/src/detail/program_manager.cpp
    M libsycl/src/detail/program_manager.hpp
    M libsycl/src/detail/queue_impl.cpp
    M libsycl/src/detail/queue_impl.hpp
    M libsycl/src/queue.cpp
    A libsycl/test/basic/get_backend.cpp
    A libsycl/test/basic/submit_fn_ptr.cpp

  Log Message:
  -----------
  [libsycl] Add single_task (#192499)

Depends on liboffload PR:
https://github.com/llvm/llvm-project/pull/194333.

The approach with void sycl_kernel_launch(pack of arguments) implies
that
we can use or copy arguments only during that call. Since it pass only
kernel arguments as parameters and returns void - we have to split
setting
of extra kernel data like event dependencies and range and getting
result
event from arguments handling and direct kernel submision if it is
possible. Key stages: 1) passing to queue (or handler in future)
dependency
events and range (for parallel_for), saving them in queue (copy/move).
2)
wrapping kernel arguments into typeless wrappers (pointer based,
initially
no copy) and passing to the queue. Then depending on scenario (without
host
tasks and accessors we should be able to submit everything directly)
collection of arguments is converted to preferred liboffload structure
(no
copy of objects, copy of pointers) and passed to liboffload or RT does
deep
copy of provided arguments (simple copy of pointer of USM and copy of
value
for other arguments) to keep them alive till kernel enqueue outside
parent
submit call. 3) getting event associated with kernel enqueue. Key notes:
1)
Having these 3 separated calls is not the best solution but the only one
allowing to avoid copy for some scenarios (otherwise we have to do deep
copy always and then do joined kernel submission outside
sycl_kernel_launch
scope). 2) submit must be thread-safe. Since we have 3 calls we need to
keep kernel params and resulting event in a per queue + per thread/per
kernel way. To achieve this without copy and joined kernel submission
queue
(in future - handler) stores thread_local data for kernel submission.
thread_local can't be used for non-static class members so they are
static.
Given: same queue can be used from different threads but thread can't
use
different queues at the same moment; that means that we actually need
per
thread storage.

This is part of the SYCL support upstreaming effort. The relevant RFCs
can be found here:


https://discourse.llvm.org/t/rfc-add-full-support-for-the-sycl-programming-model/74080
https://discourse.llvm.org/t/rfc-sycl-runtime-upstreaming/74479

---------

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 73ded458839c0a105b19476929f6206356f92991
      https://github.com/llvm/llvm-project/commit/73ded458839c0a105b19476929f6206356f92991
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/test/Analysis/cxx23-assume-attribute.cpp

  Log Message:
  -----------
  [Liveness][analyzer] Fix handling of [[assume]] attributes  (#198618)

Before this commit, if the analyzer encountered code like
```
int f(int a, int b) {
  [[assume(a == 2), assume(b == 3)]];
  return a + b;
}
```
it performed the following steps:
1. It visited the expression `a == 2` with `ExprEngine::Visit` (after
visiting its sub-expressions, within the regular visitation that visits
each statement of the `CFGBlock`). This triggered the `EagerlyAssume`
logic and separated two execution paths.
2. It discarded the result bound to `a == 2` from the `Environment`
because `a == 2` is not a direct child of the `AttributedStmt`.
3. Analogously, it visited an evaluated `b == 3`.
4. Analogously, it discarded the result bound to `b == 3`.
5. On each execution path `VisitAttributedStmt` was reached, it ran the
`PreStmt<AttributedStmt>` checkers and stored their results in
`CheckerPreStmt`. As there are AFAIK no such checkers, after this step
the only element of `CheckerPreStmt` was the node `Pred`.
6. It constructed a `NodeBuilder`, which was unused, but its constructor
inserted the nodes in `CheckerPreStmt` into `EvalSet`. This was
essentially a shortcut that skipped the handling of the assumptions --
but ultimately its effects were absorbed and negated by the tricky side
effects of `ExprEngine::Visit`.
7. For each node `N` in `CheckerPreStmt` (i.e. for `N == Pred`) and for
each assume attribute, it created a child node of `N` where the
assumption of **that one attribute** was visited again with
`ExprEngine::Visit`. (I.e. it separated execution paths and implicitly
placed "OR" relationships between the assumptions.)
8. It **completely ignored** the value produced by the assumption
expression: did not update the state and did not discard execution paths
where the [[assume]] assumption contradicted earlier knowledge.

This commit fixes all four logic errors:
1. The liveness analysis is updated to ensure that an `AttributedStmt`
keeps alive the assumption expressions of its [[assume]] attributes.
This ensured that their results remain in the `Environment`.
2. Now there is no `NodeBuilder` that skips the handling the
assumptions.
3. The invocation of `ExprEngine::Visit` is removed from
`VisitAttributedStmt`: there is no reason to revisit those statements
   (now that we don't lose the evaluation results).
4. The state is updated to record that the values of the assumption
expressions are ALL assumed to be true. If the assumption leads to a
contradiction, the execution path is discarded (by not generating a
node).

This commit also adds a few new testcases and resolves some FIXME
comments in previously existing tests.


  Commit: caf469dc802464a3554f52b10c818d4e0c840062
      https://github.com/llvm/llvm-project/commit/caf469dc802464a3554f52b10c818d4e0c840062
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Support/ConvertUTF.h
    M llvm/lib/Support/ConvertUTFWrapper.cpp

  Log Message:
  -----------
  [Support] Take ArrayRef in convertWideToUTF8 (#200687)

`convertWideToUTF8` took a `std::wstring`, but it never modified its
data. An `ArrayRef` or `std::wstring_view` are sufficient here. I chose
`ArrayRef<wchar_t>` over `std::wstring_view`, because it can be
implicitly constructed from any range that provides `data()` and
`size()`. A second overload taking a `const wchar_t *` is provided to
convert null terminated wide C-strings.


  Commit: faa87b02121fbb668fcf71260a63c88729b83abf
      https://github.com/llvm/llvm-project/commit/faa87b02121fbb668fcf71260a63c88729b83abf
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/clmul-scalable.ll

  Log Message:
  -----------
  [AArch64] Lower scalable i64 CLMUL with SVE2/SME (#198999)

When AES or SSVE-AES are not available, but SVE2 or SME are,
clmul.nxv2i64 can benefit from a cross-byte CLMUL of .S precision. This
re-uses the functionality added for nxv8i16.


  Commit: 9863725ffe80054d3fb86d7468746a1d0def26c4
      https://github.com/llvm/llvm-project/commit/9863725ffe80054d3fb86d7468746a1d0def26c4
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/test/Analysis/DependenceAnalysis/exact-siv-mul-overflow.ll

  Log Message:
  -----------
  [DA] Add test for the Exact test misses dependency due to overflow (NFC) (#200780)

This patch adds a test case that demonstrates that the Exact test misses
the dependency due to mishandling of overflow. The test case is taken
from #200766.


  Commit: 421b27c4ab4b789bc5084f5f3ff9c008f69846df
      https://github.com/llvm/llvm-project/commit/421b27c4ab4b789bc5084f5f3ff9c008f69846df
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/AsmParser/LLParser.cpp
    A llvm/test/Assembler/dbg-intrinsic-forward-ref-upgrade.ll

  Log Message:
  -----------
  [AsmParser] Apply deferred debug locations before intrinsic upgrade. (#200779)

Intrinsic upgrades may delete instructions, leaving dangling pointers
that may be accessed when applying deferred debug locations after
91b77dc (#200649).

Fix by applying deferred debug locations before intrinsic upgrade.

PR: https://github.com/llvm/llvm-project/pull/200779


  Commit: 56c9a2c796661fd8b2ca627ce1f39cb3e97a203f
      https://github.com/llvm/llvm-project/commit/56c9a2c796661fd8b2ca627ce1f39cb3e97a203f
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    R flang/test/Lower/OpenMP/Todo/dyn-groupprivate-clause.f90
    A flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h

  Log Message:
  -----------
  [flang][mlir] Add flang to mlir lowering for dyn_groupprivate (#180938)

This PR implements the Flang frontend lowering for the
`dyn_groupprivate` clause
Changes:
- Add ClauseProcessor handling for DynGroupprivate clause
- Generate appropriate MLIR representation for dyn_groupprivate
- Add/update test cases for dyn_groupprivate lowering
- Remove TODO marker for dyn_groupprivate clause


  Commit: 2666b44bdc9d2098d394c0afce91a00437b75823
      https://github.com/llvm/llvm-project/commit/2666b44bdc9d2098d394c0afce91a00437b75823
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    R llvm/test/Transforms/InstCombine/fold-vp-load.ll
    A llvm/test/Transforms/VectorCombine/RISCV/fold-vp-load.ll

  Log Message:
  -----------
  [InstCombine][VectorCombine] Move bitcast vp.load fold into VectorCombine (#200321)

Fixes https://github.com/llvm/llvm-project/issues/199896

In #192173 we started folding bitcasts of vp.loads with an all ones mask
into a vp.load with the casted type. However on RISC-V a vp.load of an
i1 vector is illegal (since there's no masked variant of `vlm.v`), and
we have no way of checking this in InstCombine.

This moves the fold into VectorCombine so we can query TTI if the cost
is legal (and profitable)

As a side note, it may be possible to lower a vp.load of an i1 vector on
RISC-V to `vlm.v` **only** if the mask is all ones. But this means the
lowering would only be valid for certain values, which is difficult to
cost. And I'm not sure if it would be profitable anyway.


  Commit: ec366837a1630c8e235b7fa235b43bd80feb4d82
      https://github.com/llvm/llvm-project/commit/ec366837a1630c8e235b7fa235b43bd80feb4d82
  Author: mbhade-amd <MilinNarayan.Bhade at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/store-load-forward-conflict.ll

  Log Message:
  -----------
  [SLP][NFC] Pre-commit tests for store-to-load forwarding bail-out (#199908)


  Commit: 0ef35be046b020a2106651ad4da879249872c88e
      https://github.com/llvm/llvm-project/commit/0ef35be046b020a2106651ad4da879249872c88e
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/invalid.cpp

  Log Message:
  -----------
  [clang][bytecode] Don't deref() non-dereferencable pointers (#200774)

That shouldn't happen and the isDummy() check wasn't enough.


  Commit: 725d3eb71deb995c657355579a17417f71e3a3a8
      https://github.com/llvm/llvm-project/commit/725d3eb71deb995c657355579a17417f71e3a3a8
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/test/Analysis/DependenceAnalysis/exact-siv-mul-overflow.ll

  Log Message:
  -----------
  [DA] Fix overflow in the Exact test (#200781)

In exactTestImpl, some computations using APInt could overflow, which
might lead to incorrect results.
This patch addresses the issue by replacing APInt with
OverflowSafeSignedAPInt, a class that is sensitive to overflow and
allows us to detect it properly.

Fixes #200766.


  Commit: 06ffb655904657e847854eee1c7c76ccdc75b254
      https://github.com/llvm/llvm-project/commit/06ffb655904657e847854eee1c7c76ccdc75b254
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/Sema/SemaConcept.cpp
    M clang/test/SemaTemplate/concepts-using-decl.cpp

  Log Message:
  -----------
  [Clang] Profile the NNS of UnresolvedUsingType and CXXThisType correctly in concept hashing (#199617)

They were sometimes incorrect because the written type doesn't contain
an NNS which contains template parameters we're interested in.

No release note because the bug broke MS STL and I want to backport it
to the last 22.x release

Fixes https://github.com/llvm/llvm-project/issues/198663


  Commit: ceb18ffc04cfbef5294a9625351995b6330674e9
      https://github.com/llvm/llvm-project/commit/ceb18ffc04cfbef5294a9625351995b6330674e9
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Install LLDB test deps (#199900)

lldb-api tests are hitting:

"/home/runner/work/llvm-project/llvm-project/lldb/packages/Python/lldbsuite/test/lldbplatformutil.py",
line 12, in <module>
    from packaging import version
    ModuleNotFoundError: No module named 'packaging'

when building release binaries on Arm64/x86 Linux. Install deps before
running tests.

Fixes #176422.


  Commit: de3529386e1e773f0186755b83bbc12e7884f863
      https://github.com/llvm/llvm-project/commit/de3529386e1e773f0186755b83bbc12e7884f863
  Author: hcx <hechenxi at bosc.ac.cn>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/test/Lower/HLFIR/structure-constructor.f90
    M flang/test/Lower/OpenMP/private-derived-type.f90
    M flang/test/Lower/call-copy-in-out.f90
    A flang/test/Lower/component-wise-init.f90
    M flang/test/Lower/default-initialization.f90
    M flang/test/Lower/derived-type-finalization.f90
    M flang/test/Lower/derived-type-temp.f90
    M flang/test/Lower/forall/forall-allocatable-2.f90
    M flang/test/Lower/pointer-default-init.f90

  Log Message:
  -----------
  [flang][lowering] Implement component-wise initialization for derived types (#187465)

Currently, the compiler defaults to a full `memcpy` when initializing
derived types.

This patch introduces component-wise initialization for pointer /
allocatable components, avoiding unnecessary initialization data
generation and redundant copies.

Ineligible cases continue to use the existing `memcpy` initialization
path.

RFC: https://discourse.llvm.org/t/rfc-automatic-static-promotion-of-large-local-variables-in-flang/89539

Key changes:

- In `flang/lib/Lower/ConvertVariable.cpp`:
- Add `genDerivedTypeComponentInit` for component-wise derived type
initialization.
- Add `isEligibleForComponentWiseInit` to guard the new initialization
path.
- Add `genInlinedInitWithMemcpy` to factor out the existing full
`memcpy` initialization logic.
- Update `defaultInitializeAtRuntime` to select the appropriate
initialization path.
- Add and update regression tests.

---------

Co-authored-by: ict-ql <168183727+ict-ql at users.noreply.github.com>
Co-authored-by: buggfg <wangyingying at bosc.ac.cn>


  Commit: d5a24ef8d093708141b03ef1da809363841065b1
      https://github.com/llvm/llvm-project/commit/d5a24ef8d093708141b03ef1da809363841065b1
  Author: Piotr Sobczak <piotr.sobczak at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/unaligned-buffer.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/unaligned-buffer.ll
    A llvm/test/Verifier/AMDGPU/module-flag-oob-mode.ll

  Log Message:
  -----------
  [AMDGPU] Replace relaxed-buffer-oob-mode feature with module flag (#160922)

Remove AMDGPU subtarget feature toggle for relaxed buffer OOB handling
and replace it with two explicit LLVM module flags:
- amdgpu.buffer.oob.relaxed for untyped buffer instructions
- amdgpu.tbuffer.oob.relaxed for typed buffer instructions

Each flag is modeled as i32 with Max merge behavior and validated as a
tri-state value, where 0 means Any/default, 1 means Relaxed and 2 means Strict. 
The absence of the module flag implies the default mode, which is currently treated
as Strict by the backend.


  Commit: 813cf3358e5eefc4a9f7393ea373f50c943fd893
      https://github.com/llvm/llvm-project/commit/813cf3358e5eefc4a9f7393ea373f50c943fd893
  Author: Walter <90877047+WalterKruger at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/gfni-operand-and-fold.ll
    M llvm/test/CodeGen/X86/gfni-xor-fold-avx512.ll
    M llvm/test/CodeGen/X86/gfni-xor-fold.ll

  Log Message:
  -----------
  [X86] Fold XOR of VGF2P8AFFINEQB and its source (#198448)

Adds a optimization to fold XORs between `vgf2p8affineqb` and its
source. That XOR can done through the existing affine transformation by
XORing its matrix with the identity matrix. This patch:

- Folds XOR between `vgf2p8affineqb` and its source.
- Only occurs when the matrix is constant, ensuring that it can't
increase the dependency chain.
- Doesn't occur if the affine is multi use, preventing an increase in
code size.
- Includes test coverage for both positive and negative cases.

Fixes #184061


  Commit: 76220f2c8d24b877c16c895efe9a4504e3e72cc3
      https://github.com/llvm/llvm-project/commit/76220f2c8d24b877c16c895efe9a4504e3e72cc3
  Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaCast.cpp
    M clang/test/SemaCXX/builtin-bit-cast.cpp

  Log Message:
  -----------
  [clang][SemaCXX] Fix crash caused by unresolved overloaded function type when using `__builtin_bit_cast` (#200574)

Resolves #200112

By early checking for placeholder expressions, crash can be avoided for
unreachable builtin type when fetching type info.


  Commit: b99a6fc497a014c80091ab7582e331b3d03090e9
      https://github.com/llvm/llvm-project/commit/b99a6fc497a014c80091ab7582e331b3d03090e9
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp

  Log Message:
  -----------
  [lldb][windows] bound ReadProcessMemory (#200230)


  Commit: 57bde44b4de822687b3790e2813b148ecd9c06e5
      https://github.com/llvm/llvm-project/commit/57bde44b4de822687b3790e2813b148ecd9c06e5
  Author: juan.vazquez <juvazq at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/include/llvm/CodeGen/BreakFalseDeps.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/BreakFalseDeps.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/apx/ndd-false-deps.mir
    M llvm/test/CodeGen/X86/break-false-dep-crash.mir
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [CodeGen] Port break-false-deps to new pass manager (#194262)


  Commit: 397c594e4665ef7f1ad9d5084b4bf87a3135ccb9
      https://github.com/llvm/llvm-project/commit/397c594e4665ef7f1ad9d5084b4bf87a3135ccb9
  Author: Afonso Rafael (Gafanhoto) <afonsorafael at sapo.pt>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp

  Log Message:
  -----------
  [LoopFusion] remove else after return (NFC) (#200783)


  Commit: e5cf9adf6a191e92018f58518ced79735b121231
      https://github.com/llvm/llvm-project/commit/e5cf9adf6a191e92018f58518ced79735b121231
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/detail/kernel_arg_helpers.hpp
    M libsycl/include/sycl/__impl/detail/unified_range_view.hpp
    A libsycl/include/sycl/__impl/index_space_classes.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    A libsycl/include/sycl/__spirv/spirv_vars.hpp
    M libsycl/include/sycl/sycl.hpp
    A libsycl/test/basic/parallel_for_indexers.cpp
    A libsycl/test/basic/queue_parallel_for_generic.cpp
    A libsycl/test/basic/wrapped_usm_pointers.cpp

  Log Message:
  -----------
  [libsycl] Add parallel_for feature (#189068)

Depends on https://github.com/llvm/llvm-project/pull/188797 (stacked
PRs).

Depends on liboffload PR:
https://github.com/llvm/llvm-project/pull/184343.
Depends on clang driver update to pick the right location for search of
libsycl: follow up for https://github.com/llvm/llvm-project/pull/188770.
Without it test will fail since clang can't find libsycl in build dir.
Depends on future liboffload fix for range. Without it test will fail on
data check.

This is part of the SYCL support upstreaming effort. The relevant RFCs
can be found here:


https://discourse.llvm.org/t/rfc-add-full-support-for-the-sycl-programming-model/74080
https://discourse.llvm.org/t/rfc-sycl-runtime-upstreaming/74479

---------

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>


  Commit: 143338131f0e8f1586f7f9aacb7d94dfde169b08
      https://github.com/llvm/llvm-project/commit/143338131f0e8f1586f7f9aacb7d94dfde169b08
  Author: Ritanya-B-Bharadwaj <ritanya.b.bharadwaj at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/docs/FortranStandardsSupport.md
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Lower/typeof-classof.f90
    A flang/test/Parser/typeof-classof-attrs.f90
    A flang/test/Semantics/typeof-classof-errors.f90
    A flang/test/Semantics/typeof-classof.f90

  Log Message:
  -----------
  [flang] Add support for TYPEOF and CLASSOF type specifiers (#188804)

Implements parsing, semantics and lowering for the Fortran 2023 TYPEOF and CLASSOF type specifiers (R703). TYPEOF produces the declared type of a data-ref; CLASSOF produces a polymorphic version. Includes constraint
checks (C709–C713) and tests.

Semantics resolves TYPEOF/CLASSOF to the concrete underlying type in the symbol table, so no lowering code changes were needed. Added a lowering test to verify FIR/HLFIR generation works correctly for intrinsic types,
derived types, extended types, and polymorphic CLASSOF with allocatable/pointer.

Fixes - https://github.com/llvm/llvm-project/issues/185635


  Commit: 080286d051efe040c8678aef122d235785d74d5e
      https://github.com/llvm/llvm-project/commit/080286d051efe040c8678aef122d235785d74d5e
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/IR/CFG.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/Value.cpp
    R llvm/test/Assembler/invalid-uselistorder_bb-float-literal.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-bb.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-body.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-func.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-not-bb.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-not-func.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-numbered.ll
    R llvm/test/Assembler/uselistorder_bb.ll
    M llvm/utils/emacs/llvm-mode.el
    M llvm/utils/vim/syntax/llvm.vim
    M llvm/utils/vscode/llvm/syntaxes/ll.tmLanguage.yaml

  Log Message:
  -----------
  [IR] BlockAddress doesn't use BasicBlock (#200772)

BlockAddress is the only non-terminator user of a BasicBlock, and it
occurs very rarely. To speed up predecessor iteration, change
BlockAddress to no longer use its BasicBlock.

This should also make uselistorder_bb obsolete.


  Commit: c9d5ccaa2283507b1b5a3cbebf59ac521edb9f73
      https://github.com/llvm/llvm-project/commit/c9d5ccaa2283507b1b5a3cbebf59ac521edb9f73
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M bolt/lib/Profile/DataReader.cpp
    M bolt/test/X86/nolbr.s

  Log Message:
  -----------
  [BOLT] Fix fdata parsing warning (#200725)


  Commit: 3afd3a99562704798e268162701c0ecb3b82e5a5
      https://github.com/llvm/llvm-project/commit/3afd3a99562704798e268162701c0ecb3b82e5a5
  Author: Vaisman <vasili.svirski at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/test/Dialect/NVGPU/roundtrip.mlir

  Log Message:
  -----------
  [mlir][nvgpu] Add roundtrip tests for warpgroup MMA operations (#199272)

Add roundtrip tests for the following NVGPU dialect operations:
- `nvgpu.warpgroup.mma.init.accumulator`
- `nvgpu.warpgroup.mma.store`

These operations were present in the dialect but lacked roundtrip
test coverage in `roundtrip.mlir`. The tests verify that operand
and result types survive the parser/printer roundtrip.


  Commit: a2d89d1938837362c367f40dc22891e1471e7de7
      https://github.com/llvm/llvm-project/commit/a2d89d1938837362c367f40dc22891e1471e7de7
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt

  Log Message:
  -----------
  [libc] Add sys/uio.h to Linux public header target lists (#200793)

The headers don't get installed without this.

Assisted by Gemini.


  Commit: c7a58d582c8f0967a3345b52c5a7d74b869b384a
      https://github.com/llvm/llvm-project/commit/c7a58d582c8f0967a3345b52c5a7d74b869b384a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-flags.ll

  Log Message:
  -----------
  [LV] Add test for printing cast flags. (#200806)

Add test showing missing flags when printing VPInstructionWithType
casts.


  Commit: fc8911a78e3618adbf422d7856ed0cb4115eada1
      https://github.com/llvm/llvm-project/commit/fc8911a78e3618adbf422d7856ed0cb4115eada1
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp

  Log Message:
  -----------
  [lldb][windows] fix late null check (#200822)

`process_sp` should be null checked before calling the
`HijackProcessEvents` method. This patch also removes 2 unused
variables.


  Commit: 6a80387760c17b7e72e77b1b24ac1808bdf0929e
      https://github.com/llvm/llvm-project/commit/6a80387760c17b7e72e77b1b24ac1808bdf0929e
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp

  Log Message:
  -----------
  [NFC][lldb][windows] Simplify PlatformWindows::ConnectRemote (#200823)


  Commit: cedd8d914432253879a1b830c0550c0fb7f01776
      https://github.com/llvm/llvm-project/commit/cedd8d914432253879a1b830c0550c0fb7f01776
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp

  Log Message:
  -----------
  [NFC][lldb][windows] simplify NativeProcessWindows::FindSoftwareBreakpoint (#200820)


  Commit: d2bea40d8822e51f58c2655996f27d159179d120
      https://github.com/llvm/llvm-project/commit/d2bea40d8822e51f58c2655996f27d159179d120
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp

  Log Message:
  -----------
  [NFC][lldb][windows] follow styling guidelines for hProcess (#200812)

`hProcess` does not follow the LLVM styling guidelines. Rename it to
`process`.


  Commit: b05c5e4d8238bfe34f3b4df72377f714f2e60d2f
      https://github.com/llvm/llvm-project/commit/b05c5e4d8238bfe34f3b4df72377f714f2e60d2f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp

  Log Message:
  -----------
  [lldb][Windows] Don't kill lldb when a thread fails to stop (#200805)

Replace `exit(1)` in `NativeProcessWindows::StopThread` with logging so
a single thread suspend failure no longer terminates lldb itself.


  Commit: c07f4eef0945cf8e3b1d7480cbfcfa19f79d885f
      https://github.com/llvm/llvm-project/commit/c07f4eef0945cf8e3b1d7480cbfcfa19f79d885f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp

  Log Message:
  -----------
  [clang][bytecode] Remove unknown-size-array special handling (#200789)

from `Pointer::toAPValue()`.


  Commit: e6ab63e40b5d53ec7c2b03cc6d084c0edeb7f32b
      https://github.com/llvm/llvm-project/commit/e6ab63e40b5d53ec7c2b03cc6d084c0edeb7f32b
  Author: idubinov <igor.dubinov at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    R llvm/test/CodeGen/SPIRV/EnqueueEmptyKernel.ll
    M llvm/test/CodeGen/SPIRV/transcoding/enqueue_kernel.ll

  Log Message:
  -----------
  [SPIRV] Fix enqueue empty kernel (#187671)

Function reference arguments don't get spv_bitcast after opaque pointer
migration, while data pointer arguments still might. Therefore:
a. getBlockStructInstr() got updated to check G_GLOBAL_VALUE ->
G_ADDRSPACE_CAST pattern for function reference arguments;
b. buildEnqueueKernel() got updated to add bitcast the block literal
pointer from struct* to i8*, as required by OpEnqueueKernel.

---------

Co-authored-by: Arseniy Obolenskiy <gooddoog at student.su>
Co-authored-by: Marcos Maronas <mmaronas at amd.com>
Co-authored-by: Dmitry Sidorov <dsidorov at amd.com>


  Commit: 8994480709a9b39042685842d8201c97fb822a68
      https://github.com/llvm/llvm-project/commit/8994480709a9b39042685842d8201c97fb822a68
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [LV] Remove legacy setVectorizedCallDecision & co (NFC). (#195519)

Remove setVectorizedCallDecision & co after being superseded by
https://github.com/llvm/llvm-project/pull/195518.

Note that we still need to retain some of the call cost logic in the
legacy cost model, to compute if scalarization is profitable.

Depends on https://github.com/llvm/llvm-project/pull/195518.

PR: https://github.com/llvm/llvm-project/pull/195519


  Commit: 5c9b5781b7384956db5bd4ca019593a2d4024088
      https://github.com/llvm/llvm-project/commit/5c9b5781b7384956db5bd4ca019593a2d4024088
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/MC/AArch64/SME2/uqcvt-diagnostics.s

  Log Message:
  -----------
  [AArch64][SME2] Fix mnemonic in uqcvt-diagnostics.s test (NFC) (#200824)


  Commit: 87f09d325da79b379723b29755861da9baf2dc7a
      https://github.com/llvm/llvm-project/commit/87f09d325da79b379723b29755861da9baf2dc7a
  Author: Conscat <omg.lily2000 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/test/SemaCXX/typeof.cpp

  Log Message:
  -----------
  [clang] Parse `__typeof_unqual__` consistently with `__typeof__` (#198948)

C23 `__typeof_unqual` and `__typeof_unqual__` are supported in all
language modes as an extension.
However, existing tests missed this form:
```cpp
int main() {
   __typeof_unqual(int) x = 0;
}
```
That doesn't compile today.
```
<source>:2:4: error: expected expression
    2 |    __typeof_unqual(int) x = 0;
      |    ^
1 error generated.
Compiler returned: 1
```
I think the fix is to parse `tok::kw_typeof_unqual` everywhere that we
currently parse `tok::kw_typeof`. It simply falls through `case`s
beneath `tok::kw_typeof`, so this should handle them equivalently. No
keyword semantics are changed by this PR.

While in here I noticed Clang Format ignores the token too, so I gave
Clang Format the same parsing parity between these tokens. It now holds
true under `isTypeName()`, just like `typeof`. `__typeof_unqual` kind of
accidentally formatted correctly in C++ anyways, but not in C, so this
is a meaningful fix. Previously it had no tests at all.

In the `clang-format` release notes, I'm not sure whether this should be
considered a fix or a new feature. I've left the clang-format notes
unchanged for now.

Assisted-by: Cursor/Claude Opus


  Commit: 25ebed5fc05af9263300e381c684b3202fec3b2f
      https://github.com/llvm/llvm-project/commit/25ebed5fc05af9263300e381c684b3202fec3b2f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp

  Log Message:
  -----------
  [lldb][windows] refactor null handling in DynamicLoaderWindowsDYLD (#200821)

This patch thightens the null guards.

---------

Co-authored-by: Nerixyz <nero.9 at hotmail.de>


  Commit: dbeea291e5412c2d23a702078346ca894999bb92
      https://github.com/llvm/llvm-project/commit/dbeea291e5412c2d23a702078346ca894999bb92
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
    M llvm/test/tools/llvm-objcopy/DXContainer/copy-headers.yaml
    M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml

  Log Message:
  -----------
  [llvm-objcopy] Strip header from DXContainer's ILDB part during `--dump-section` (#198578)

This strips the header from ILDB part of DXContainer during
`llvm-objcopy --dump-section`, so that the output contains bitcode only.


  Commit: 6535731ef84e8ceccbb3f9ad511d23a202dcab81
      https://github.com/llvm/llvm-project/commit/6535731ef84e8ceccbb3f9ad511d23a202dcab81
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopInterchange/memory-attr.ll

  Log Message:
  -----------
  [LoopInterchange] Add test where loop has memory-affected calls (NFC) (#200827)

This patch adds the following two test cases:

- There is a call to a function with `memory(write)` in the loop nest,
which is taken from #200796.
- There is a call to a function with `memory(none)` in the loop nest.

For the former case, we are not allowed to interchange the loops because
the function call may write to an unknown memory location, but the
transformation is still applied, i.e., a miscompilation. As for the
latter case, the call should not prevent the loops from being
interchanged, which seems to be the original intention of the code.


  Commit: 9f1568aca7542dd363a4f5e575311e6c901d8226
      https://github.com/llvm/llvm-project/commit/9f1568aca7542dd363a4f5e575311e6c901d8226
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/test/Integration/OpenMP/atomic-capture-release.f90

  Log Message:
  -----------
  [flang][OpenMP] Restricting Integration test atomic-capture-release.f90 run to x86 and aarch64 (#200770)

Similar to the the change in
`flang/test/Integration/OpenMP/atomic-compare.f90`, restricting the test
case `flang/test/Integration/OpenMP/atomic-capture-release.f90` to run
on
`x86-registered-target & aarch64-registered-target`

This also Fixes
[#200729](https://github.com/llvm/llvm-project/issues/200729)

A comment has been added to the merge in
[[Flang][OpenMP]Handling restrictions of using Memory-Order-Clause with
Atomic-Clause](https://github.com/llvm/llvm-project/pull/199636)

>LLVM Buildbot has detected a new failure on builder
ppc64le-mlir-rhel-clang running on ppc64le-mlir-rhel-test while building
flang,llvm,mlir at step 4 "cmake-configure".
Full details are available at:
https://lab.llvm.org/buildbot/#/builders/129/builds/45227

Hence this PR.

Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>


  Commit: 61480755ee91a7e1a24726fbcf4d6fd0e9b561e9
      https://github.com/llvm/llvm-project/commit/61480755ee91a7e1a24726fbcf4d6fd0e9b561e9
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/test/X86/pre-aggregated-perf.test
    M bolt/test/perf2bolt/perf_test.test
    M bolt/tools/driver/llvm-bolt.cpp
    M bolt/tools/heatmap/heatmap.cpp

  Log Message:
  -----------
  [BOLT] Support multiple perf data inputs

Allow multiple -p/-perfdata args (comma-separated and repeated).
Process them in parallel with `--perfdata-jobs/-pj` (default 4,
0 for all available hardware threads). Keep YAML/DataReader
inputs single-profile only.

This also enables density computation with multiple perf files.
Prior to that, it was impossible to compute total density as
it wasn't computed from symbolized profiles.

Depends on
#199323
#199322
#199321
#199320

Test Plan:
Updated pre-aggregated-perf.test and perf_test

For a large binary (300MB text) and 7 ETM perf data files
(6GB each), compared to parallel perf2bolt + merge-fdata:
* processing time is equal: 670+3s -> 669s (within noise),
* output is equivalent: sorted fdata is equal.

Reviewers:
paschalis-mpeis, rafaelauler, yozhu, ayermolo, yavtuk, maksfb, yota9

Reviewed By: paschalis-mpeis, rafaelauler

Pull Request: https://github.com/llvm/llvm-project/pull/199324


  Commit: e68990b844ee4bfbb29a187b32232a1edb04a873
      https://github.com/llvm/llvm-project/commit/e68990b844ee4bfbb29a187b32232a1edb04a873
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h

  Log Message:
  -----------
  [NFC][lldb][windows] break down NativeProcessWindows::OnDebugException (#200832)

This patch breaks down `NativeProcessWindows::OnDebugException` into 3
different handlers (one for each exception) for readability.


  Commit: 53133f6234e926dc5385c0b1b328cc4f2b76de23
      https://github.com/llvm/llvm-project/commit/53133f6234e926dc5385c0b1b328cc4f2b76de23
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/test/CodeGen/X86/bitcnt-load-with-cmov.ll

  Log Message:
  -----------
  [Peephole] Do not fold load if any clobber exists (#198238)

Fixes #198173, which is introduced by
https://github.com/llvm/llvm-project/commit/9525bcc3e06e6c0bff3a85f503e47b06a63d6dcc.
The original patch missed the case where there is a clobber between
`LoadMI` and `FlagProducer`.


  Commit: 5fa7b5547d2a70003a681ecf2823170c69c44bec
      https://github.com/llvm/llvm-project/commit/5fa7b5547d2a70003a681ecf2823170c69c44bec
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp

  Log Message:
  -----------
  [NFC][lldb][windows] cleanup ProcessLauncherWindows result check (#200804)


  Commit: b05222259c09b55a41f2a368dce8c21b016fe293
      https://github.com/llvm/llvm-project/commit/b05222259c09b55a41f2a368dce8c21b016fe293
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/tools/llubi/intr_vector_manip.ll
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llubi/lib/Library.cpp
    M llvm/tools/llubi/lib/Value.h

  Log Message:
  -----------
  [llubi] Fix the storage kind of poison results (#200830)

`AnyValue::poison()` only represents scalar integer/fp/pointer values.


  Commit: ef7cbc5f9c408a1c505fc5aa4e1920fb8c0ed9c0
      https://github.com/llvm/llvm-project/commit/ef7cbc5f9c408a1c505fc5aa4e1920fb8c0ed9c0
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
    M mlir/test/Conversion/TosaToSPIRVTosa/tosa-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv][tosa] Add remaining TOSA 1.0 SPIR-V TOSA ops (#200383)

Add conversion patterns for additional TOSA 1.0 operations targeting the
SPIR-V TOSA extended instruction set.

This covers pooling and convolution ops, FFT/RFFT, matmul, concat, pad,
rescale, const, const_shape, and identity. Concat is split into
conservative chunks to avoid producing SPIR-V instructions with too many
operands.

Add a multi-result conversion pattern for FFT/RFFT and share the
convolution replacement logic for conv2d, conv3d, and depthwise_conv2d
while keeping transpose_conv2d explicit because it has different
attributes.

Also share constant attribute conversion for const and const_shape,
including integer element type conversions such as index to i32, i4 to
i8, and i48 to i64, and preserve the empty const_shape edge case.

Add conversion tests for the newly covered operations.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: 82b4ef588555273c1561ffeae6f3ca3c78120189
      https://github.com/llvm/llvm-project/commit/82b4ef588555273c1561ffeae6f3ca3c78120189
  Author: RonDahan101 <166982786+RonDahan101 at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve2-histcnt-vplan.ll

  Log Message:
  -----------
  [LV] Fix missing MetaData for histogram instructions (#134241)


  Commit: 96f5b177203af235f59e9c3512dd3734a4edbefb
      https://github.com/llvm/llvm-project/commit/96f5b177203af235f59e9c3512dd3734a4edbefb
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_udphdr.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_udphdr.h
    A libc/include/netinet/udp.yaml
    M libc/test/src/CMakeLists.txt
    A libc/test/src/netinet/CMakeLists.txt
    A libc/test/src/netinet/udp_test.cpp

  Log Message:
  -----------
  [libc] Add netinet/udp.h containing struct udphdr (#200839)

This patch adds a generated <netinet/udp.h> containing the `udphdr`
structure definition.

There are two styles ("linux" and "BSD") of udphdr field names (and both
of them can be found in the wild), so I follow the glibc and bionic
approach of using an anonymous union. (musl uses a #define on the field
names, which doesn't seem that great).

I've added the target to `include/CMakeLists.txt` and registered it
under target lists in `headers.txt` for the supported Linux platforms
(x86_64, aarch64, and riscv).

To verify layout and alignment correctness, I've added a layout and
field compatibility unit test under `test/src/netinet/udp_test.cpp`.

Assisted by Gemini.


  Commit: 45660cb7d894741cfaeb5f94058662c81f9a07ca
      https://github.com/llvm/llvm-project/commit/45660cb7d894741cfaeb5f94058662c81f9a07ca
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp

  Log Message:
  -----------
  [lldb][Windows] Use captured error in ConnectionGenericFile::Read (#200803)

Use the captured value on both branches so the reported error matches
the one that was tested against.


  Commit: 234e46a14635cb1b76e4852fc49a3407f6d87a1b
      https://github.com/llvm/llvm-project/commit/234e46a14635cb1b76e4852fc49a3407f6d87a1b
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    A flang/test/Semantics/cuf-missing-intrinsic-modules.cuf

  Log Message:
  -----------
  [cuda][flang] Diagnose missing CUDA intrinsic modules in Flang semantics (#200509)

- Replace CUDA intrinsic module `CHECK`s with actionable diagnostics
when `cudadevice` or `__cuda_builtins` cannot be read.
- Avoid dereferencing missing CUDA module scopes during implicit CUDA
symbol import.
- Add a semantics test covering the missing CUDA intrinsic module
diagnostic.


  Commit: 1f1ae8f372d680c12fea01b041a0ab83e169225a
      https://github.com/llvm/llvm-project/commit/1f1ae8f372d680c12fea01b041a0ab83e169225a
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp

  Log Message:
  -----------
  [NFC][clang-sycl-linker] Apply LLVM coding standards to ClangSYCLLinker.cpp (#200543)

Bring the file in line with llvm/docs/CodingStandards.rst without
changing
behavior:

- Restore the canonical //===---===// file-header banner.
- Move free functions out of the anonymous namespace and mark them
  `static`; keep only types (LinkerOptTable, LinkResult, SplitModule,
  IRSplitMode, EntryPointCategorizer) inside anonymous namespaces.
- Rename a local `OutputFile` in createTempFile to `Path` to stop it
  shadowing the file-scope `OutputFile`.
- Rename the inner `Err` in runCodeGen to `MatErr` to stop it shadowing
  the surrounding `SMDiagnostic Err`.
- Normalize parameter-name comments to the `/*Name=*/value` form.
- Strip quotes from Doxygen `\param 'Name'` directives.

Co-Authored-By: Claude


  Commit: 83538c5ef242052a9140603a167858af86b033c3
      https://github.com/llvm/llvm-project/commit/83538c5ef242052a9140603a167858af86b033c3
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGenOpenCL/as_type.cl

  Log Message:
  -----------
  [CIR] Implement __builtin_astype for vec4 to vec3 (#199374)

Implement __builtin_astype for vec4 to vec3

Issue #192311


  Commit: 9e0d8a65db700435bda0ca8d63dadb07e6e18370
      https://github.com/llvm/llvm-project/commit/9e0d8a65db700435bda0ca8d63dadb07e6e18370
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/Type.h
    M lldb/source/Symbol/Type.cpp
    M lldb/unittests/Symbol/TestType.cpp

  Log Message:
  -----------
  [LLDB] Detect cycles during Type resolution (#200304)

I got LLDB crash reports from the Swift plugin where (presumably
malformed) debug info sends lldb_private::Type into an infite recursion.
Most likely this is a bug in the DWARF parser, however, even malformed
inputs shouldn't crash LLDB so this patch adds cycle detection.

rdar://177856769

Assisted-by: claude


  Commit: 8b901cc2a0a3310b2b25d01f31d4bec665b714ef
      https://github.com/llvm/llvm-project/commit/8b901cc2a0a3310b2b25d01f31d4bec665b714ef
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/tools/lldb-dap/InstructionBreakpoint.cpp
    M lldb/tools/lldb-dap/InstructionBreakpoint.h

  Log Message:
  -----------
  [lldb-dap] Cleanup InstructionBreakpoint (#200228)

Added mutex like in other breakpoints
([PR](https://github.com/llvm/llvm-project/pull/134030)). Also removed
unused `m_offset` field.


  Commit: 92b01a1bac4d01bb548c625a464840e32dea6c13
      https://github.com/llvm/llvm-project/commit/92b01a1bac4d01bb548c625a464840e32dea6c13
  Author: lntue <lntue at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml

  Log Message:
  -----------
  [libc] Add GPU build-only to fullbuild precommit CIs. (#200593)

- Add build-only CI for AMDGPU.
- Also pass correct flags to other targets.


  Commit: e4065977f3de2b3518cad25a9ad07030610edd79
      https://github.com/llvm/llvm-project/commit/e4065977f3de2b3518cad25a9ad07030610edd79
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar.h
    M llvm/include/llvm/Transforms/Scalar/SROA.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/CodeGen/NVPTX/lower-byval-args.ll
    A llvm/test/Transforms/PhaseOrdering/struct-to-vector-before-memcpyopt.ll
    A llvm/test/Transforms/SROA/struct-to-vector-fp-store-only-tail.ll
    A llvm/test/Transforms/SROA/struct-to-vector-subpartition.ll
    A llvm/test/Transforms/SROA/struct-to-vector.ll

  Log Message:
  -----------
  [SROA] Canonicalize homogeneous structs to fixed vectors (opt-in, after memcpyopt) (#165159)

SROA sometimes keeps temporary allocas around for homogeneous structs
like
`{ i32, i32, i32, i32 }` because the partition has only memcpy/memset
traffic
and no scalar typed users to drive vector promotion. On targets like
AMDGPU
these allocas turn into scratch memory and hurt performance. This PR
adds a
helper `tryCanonicalizeStructToVector` that converts such a partition to
a
fixed vector type when every non-debug, non-lifetime user is a memory
intrinsic, so the alloca can promote through normal vector load/store
paths.
The element-shape rule accepts any homogeneous element count, any
integer
width, any FP type, and integral pointer types, as long as the struct is
tightly packed.

Canonicalization is gated behind a new per-pass option
`canonicalize-struct-to-vector` on `SROAOptions`, off by default. Only
the
late SROA passes in `addVectorPasses` (new PM, non-LTO and FullLTO) and
the
two legacy-PM SROAs in NVPTX enable it, so it always runs after
`MemCpyOptPass`. Running it earlier can hide memcpy chains that
memcpyopt
would otherwise collapse, and can also emit wide stores whose suffix
lanes
are undef when only part of a struct was initialized. Both hazards are
covered by new tests `struct-to-vector-before-memcpyopt.ll` and
`struct-to-vector-fp-store-only-tail.ll`. The opt-in design and the
"after memcpyopt" placement come from @YonahGoldberg's refactor, which
removed every regression reported in earlier benchmark runs (see
dtcxzyw/llvm-opt-benchmark-nightly#306). AMDGPU inherits the new-PM
opt-ins
automatically; other targets keep upstream-main SROA behavior unless
they
opt in.

Co-authored-by: Yonah Goldberg <ygoldberg at nvidia.com>

---------

Co-authored-by: Yonah Goldberg <ygoldberg at nvidia.com>


  Commit: b480b451b211c3956e06e5630f368daa14325f6f
      https://github.com/llvm/llvm-project/commit/b480b451b211c3956e06e5630f368daa14325f6f
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Verifier/AMDGPU/intrinsic-load-to-lds.ll

  Log Message:
  -----------
  [AMDGPU] Verify data size of load-to-LDS intrinsics (#200587)

An out-of-range size immarg (e.g. 0) produced an illegal i0 memory type
during SelectionDAG building and crashed the backend instead of being
rejected up front


  Commit: 0068e3c4c9233d54d22d205ab17ecd88a97050c0
      https://github.com/llvm/llvm-project/commit/0068e3c4c9233d54d22d205ab17ecd88a97050c0
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/SampleBias.ll

  Log Message:
  -----------
  [DirectX] Implement lowering of llvm.dx.resource.samplebias to the SampleBias DXIL Op (#199745)

Fixes #192548

This PR implements the lowering of the `llvm.dx.resource.samplebias`
intrinsic to the `SampleBias` DXIL Op.

Although I reckon that other `lowerSample*` functions in
`DXILOpLowering.cpp` will have shared logic, this is the first one to be
implemented. Consolidating common logic between future `lowerSample*`
functions can be left to a later PR implementing the second or other
`lowerSample*` function.

Assisted-by: Claude Opus 4.6


  Commit: 09f30ef6105e3f9695ad876fcb5add2e7917712b
      https://github.com/llvm/llvm-project/commit/09f30ef6105e3f9695ad876fcb5add2e7917712b
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] Use SetTarget for launch and attach commands (#200133)

Without this patch event listener registration was skipped, as a result
`Modules` view in UI was not displayed in case of launching target via
`launchCommands` or `attachCommands`.


  Commit: 5eca8b67ff3c5f371141d54b6e4544a0ebe77fdb
      https://github.com/llvm/llvm-project/commit/5eca8b67ff3c5f371141d54b6e4544a0ebe77fdb
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M compiler-rt/lib/profile/CMakeLists.txt

  Log Message:
  -----------
  [PGO][HIP] Fix profile-only Windows link by gating ROCm interceptor macro (#200859)

PR #200111 stops compiling InstrProfilingPlatformROCm.cpp (which defines
the
HIP GPU helper __llvm_profile_hip_collect_device_data) in profile-only
builds.
But the compile define -DCOMPILER_RT_BUILD_PROFILE_ROCM=1 was still
added
whenever the COMPILER_RT_BUILD_PROFILE_ROCM option was on (the default),
so
InstrProfilingFile.c still referenced the helper from
__llvm_profile_write_file
even though it was never built.

On ELF the declaration is weak, so the undefined symbol folds to null
and the
address-guarded call is skipped. COFF/Windows has no such fallback:

  error LNK2019: unresolved external symbol
  __llvm_profile_hip_collect_device_data referenced in function
  __llvm_profile_write_file

Add the define only when PROFILE_HAS_HIP_INTERCEPTOR is true, i.e. the
same
condition that keeps InstrProfilingPlatformROCm.cpp in the archive, so
the
macro is defined iff the helper is actually compiled in.

Reported by zmodem:
https://github.com/llvm/llvm-project/pull/200111#issuecomment-4593893230


  Commit: 1f467e7180891c0d4249c6c0d78be1dae62c36a5
      https://github.com/llvm/llvm-project/commit/1f467e7180891c0d4249c6c0d78be1dae62c36a5
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M offload/test/mapping/ompx_hold/struct.c
    M offload/test/offloading/indirect_fp_mapping.c

  Log Message:
  -----------
  [offload][LIT] Disable two tests failing on new Intel GPU driver (#200856)

One new consistent failure and one which causes instability.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 668441fbdacdeee35069989acf92824db9af1764
      https://github.com/llvm/llvm-project/commit/668441fbdacdeee35069989acf92824db9af1764
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll

  Log Message:
  -----------
  [LV] Add VPlan printing test wih UDiv SCEV expansion. (NFC) (#200845)


  Commit: 2b4f07dfa997a31af99fa43ba9348b76e0624ed9
      https://github.com/llvm/llvm-project/commit/2b4f07dfa997a31af99fa43ba9348b76e0624ed9
  Author: duk <74797529+duk-37 at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupLEAs.cpp
    A llvm/test/CodeGen/X86/lea-fixup-mcsymbol.mir

  Log Message:
  -----------
  [X86] Fix X86FixupLEAs displacement check for other types of operands (#200705)

This has [already bitten us
before](https://github.com/llvm/llvm-project/pull/71641) with
BlockAddresses, but another case popped up recently: under complex
conditions, LEAs in the three-operand case with symbolic displacements
could be miscompiled due to `MO_MCSymbol` not being handled in a similar
way. To avoid other issues in the future, just be more conservative
about the symbol type and only return false if we know for a fact that
the offset is zero.

Fixes #200707


  Commit: 2b9a8029af27be8c8e7fc6c2c07ca79bc89359a8
      https://github.com/llvm/llvm-project/commit/2b9a8029af27be8c8e7fc6c2c07ca79bc89359a8
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM] Nominate Ehsan as a DA maintainer (#200375)

This is related to #200335. I would like to nominate Ehsan as a
maintainer for DependenceAnalysis as I am aware he expressed interest in
that. I am happy that Ryotaro became a maintainer, and if we get one
more maintainer with Ehsan, that is a really good sign of a healthy loop
optimisation community; I think this is a good thing, and support this.

---------

Co-authored-by: Ehsan Amiri <ehsan.amiri at huawei.com>


  Commit: 754d3d0d966423f9d308c6823deed55b02bac9f2
      https://github.com/llvm/llvm-project/commit/754d3d0d966423f9d308c6823deed55b02bac9f2
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/distribute-simd.f90
    M flang/test/Lower/OpenMP/linear_modifier.f90
    M flang/test/Lower/OpenMP/loop-pointer-variable.f90
    M flang/test/Lower/OpenMP/ordered-simd.f90
    M flang/test/Lower/OpenMP/wsloop-simd.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-simd-linear.mlir

  Log Message:
  -----------
  Reland "[flang][OpenMP] Fix lowering of LINEAR iteration variables (#188851)" (#194623)

Linear iteration variables were being treated as private. This fixes
one of the issues reported in #170784.

The regressions in the OpenMP V&V and Fujitsu testsuites happened
because the users iterator was apparently becoming invalid, after one of
its uses was replaced. This was fixed by making a copy of the list of
users.


  Commit: 4044ea38d4c4b3d00a33116be5e780f5bada33bb
      https://github.com/llvm/llvm-project/commit/4044ea38d4c4b3d00a33116be5e780f5bada33bb
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libcxx/include/__iterator/bounded_iter.h
    M libcxx/include/__iterator/capacity_aware_iterator.h
    A libcxx/test/libcxx/utilities/optional/nodiscard.iterator.verify.cpp

  Log Message:
  -----------
  [libc++] Applied `[[nodiscard]]` to `optional::iterator` (#198489)

Towards #172124


  Commit: 1e79ea1f5b3e4aafdaeeb577babbf3b969744232
      https://github.com/llvm/llvm-project/commit/1e79ea1f5b3e4aafdaeeb577babbf3b969744232
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    A llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll

  Log Message:
  -----------
  [LoopUnroll] Support parallel reductions for minmax (#182473)

This patch
* Supports parallel reductions for min/max operations in LoopUnroller.
* Adds relevant test (including intrinsics).
* Renames flag -unroll-add-parallel-reduction to
-unroll-parallel-reduction.
* Relaxes check in IVDescriptors.cpp (`getMinMaxRecurrence`) to handle
out-of-loop uses.

Planning to take support for vector types in the next patch.


  Commit: cd6891edcffa29284bb0815ec771467facaf3f35
      https://github.com/llvm/llvm-project/commit/cd6891edcffa29284bb0815ec771467facaf3f35
  Author: Aayush Shrivastava <79578660+iamaayushrivastava at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/include/math.yaml

  Log Message:
  -----------
  [libc][math] Add missing math.yaml entries for acospif and atan2f16 (#199442)

Fixes #199266

This PR adds missing `math.yaml` entries for `acospif` and `atan2f16`.


  Commit: d1010189961f8060cebbe2543f5d586d4fbad263
      https://github.com/llvm/llvm-project/commit/d1010189961f8060cebbe2543f5d586d4fbad263
  Author: NeKon69 <nobodqwe at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/include/clang/Analysis/CFG.h
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Store cleanup expressions for temporaries (#200568)

Now in `CFGFullExprCleanup` we also store a cleanup expressions to be
able to get an accurate location where destruction happened.

This helps user understand lifetime semantics of objects better.

Closes #195503


  Commit: 294b72f48f1178e4f9cf9a68f3c807c12557298a
      https://github.com/llvm/llvm-project/commit/294b72f48f1178e4f9cf9a68f3c807c12557298a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Assert operand correctness at construction. (NFC) (#200686)

Update VPWidenPHIRecipe, VPBlendRecipe and VPReductionRecipe to assert
type correctness at construction.

PR: https://github.com/llvm/llvm-project/pull/200686


  Commit: 6277fbf3f1afe5a87a66301cadeb5daa4dfce3b4
      https://github.com/llvm/llvm-project/commit/6277fbf3f1afe5a87a66301cadeb5daa4dfce3b4
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Support/ELFAttrParserCompact.h
    M llvm/include/llvm/Support/ELFAttrParserExtended.h
    M llvm/lib/Support/ELFAttrParserCompact.cpp
    M llvm/lib/Support/ELFAttrParserExtended.cpp

  Log Message:
  -----------
  [Support] Remove unused argument of DataExtractor constructor (NFC) (#197121)

`AddressSize` parameter is not used by `DataExtractor` and will be
removed in the future. See #190519 for more context.


  Commit: 203c0668d4b098714d1748de766e890fe6296891
      https://github.com/llvm/llvm-project/commit/203c0668d4b098714d1748de766e890fe6296891
  Author: Aayush Shrivastava <79578660+iamaayushrivastava at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/AST/AttrImpl.cpp
    M clang/test/Sema/alloc-size.c
    M clang/test/Sema/attr-nonnull.c

  Log Message:
  -----------
  [clang] Fix assertion crash in alloc_size structural equivalence check (#199407) (#199980)

Fixes #199407

Remove ParamIdx from the `USE_DEFAULT_EQUALITY` default-comparison path
and add an explicit `equalAttrArgs<ParamIdx>` specialization that safely
handles invalid (unset) values.


  Commit: 52ff7167af07c3173e0dddebba8c5cf288d45d71
      https://github.com/llvm/llvm-project/commit/52ff7167af07c3173e0dddebba8c5cf288d45d71
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/test/CodeGen/AMDGPU/vgpr_constant64_to_sgpr.mir

  Log Message:
  -----------
  [AMDGPU] Use S_MOV_B64_IMM_PSEUDO when moving 64-bit VGPR const to SGPR (#200576)

S_MOV_B64 only encodes a 32-bit literal, so rematerializing a non-inline
64-bit immediate through it silently dropped the high 32 bits


  Commit: 2a2e45257b8277ae6dbd3bce1627a9b07d1a301d
      https://github.com/llvm/llvm-project/commit/2a2e45257b8277ae6dbd3bce1627a9b07d1a301d
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll

  Log Message:
  -----------
  [AMDGPU] Use fpext to widen sub DWORD FP printf args (#200870)

Widening half/bfloat printf varargs via bitcast+sext corrupted the FP
bit pattern for negative values

Extend by value-preserving fpext to float instead


  Commit: 56ccbc25315030088b04435e4828efbc22f0e926
      https://github.com/llvm/llvm-project/commit/56ccbc25315030088b04435e4828efbc22f0e926
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    R llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll

  Log Message:
  -----------
  Revert "[LoopUnroll] Support parallel reductions for minmax (#182473)" (#200892)

This reverts commit 1e79ea1f5b3e4aafdaeeb577babbf3b969744232.


  Commit: b8db0a46a08d5aa14a872dd9b1a778b334b2cce4
      https://github.com/llvm/llvm-project/commit/b8db0a46a08d5aa14a872dd9b1a778b334b2cce4
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/merge-vectors.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/unaligned-buffer.ll

  Log Message:
  -----------
  Make tests added in rd5a24ef work in read-only source filesystems. (#200883)


  Commit: 8bae84de90eb5b042cc8a320b88f92357e09975f
      https://github.com/llvm/llvm-project/commit/8bae84de90eb5b042cc8a320b88f92357e09975f
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h

  Log Message:
  -----------
  [flang][OpenMP] Simplify checks for type-parameter inquiry (#198217)

Remove the no longer needed IsDataRefTypeParamInquiry.


  Commit: 09bf7ef7d7848e4c78d3790a51dc28d9f157e777
      https://github.com/llvm/llvm-project/commit/09bf7ef7d7848e4c78d3790a51dc28d9f157e777
  Author: Harlen Batagelo <hbatagelo at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Testing/Annotations/Annotations.h
    M llvm/lib/Testing/Annotations/Annotations.cpp
    M llvm/unittests/Testing/Annotations/AnnotationsTest.cpp

  Log Message:
  -----------
  [Testing] Allow custom markers in llvm::Annotations (#195570)

The current annotation markers can conflict with several language
constructs. Notably, `[[ ]]` and `^` collide with C++ attributes (e.g.,
`[[nodiscard]]`), the C++26 reflection operator (`^^int`), and
Objective-C blocks (`void (^foo)(void)`). Similarly, `$` can conflict
with identifiers that also use `$` with `-fdollars-in-identifiers`, as
well as with C++26 code that uses `$` as raw-string delimiters or as a
preprocessing token
([P2558R2](https://www.open-std.org/JTC1/SC22/WG21/docs/papers/2023/p2558r2.html)).

Because the markers are currently hardcoded in `llvm::Annotations`,
existing workarounds have to rely on digraphs or macro substitution via
implicit `#define`s. These approaches reduce readability and make tests
cumbersome to write. This PR alleviates these issues by adding support
for custom markers. It adds an overloaded `Annotations` constructor that
accepts a new `Annotations::Markers` struct. For example, to use `~` for
point, `@` for name, and `{{`/`}}` for range:

```cpp
Annotations Example(R"cpp(
  @name(payload){{[[nodiscard]] int foo(int x);}}~
)cpp", {"~", "@", "{{", "}}"});
```

Alternatively, we can use setters to customize the markers individually:
```cpp
Annotations Example(R"cpp(
  @name(payload){{[[nodiscard]] int foo(int x);}}~
)cpp", Annotations::Markers().setPoint("~")
                             .setName("@@")
                             .setRangeBegin("{{")
                             .setRangeEnd("}}"));
```

Using longer markers:
```cpp
Annotations Example(R"cpp(
  $$name(payload)[[[[[nodiscard]] int foo(int x);]]]^^
)cpp", {"^^", "$$", "[[[", "]]]"});
```

Using multi-byte characters:
```cpp
Annotations Example(R"cpp(
  🏷️name(payload)👉[[nodiscard]] int foo(int x);👈🎯
)cpp", {"🎯", "🏷️", "👉", "👈"});
```

The existing single-argument constructor delegates to the new overload,
preserving backward compatibility.

PS: The original code has a FIXME comment mentioning alternative
approaches, such as escaping and changing the default syntax. While
valid, escaping would increase visual noise, and changing the default
syntax would break existing tests. The approach proposed here provides
the flexibility to choose a syntax that is clean for a specific context
and is backward compatible. See https://reviews.llvm.org/D59814 for
earlier discussion about these alternative design choices.


  Commit: e5851a8f307a8e59742c5ab8fed7abdbe3f9cf21
      https://github.com/llvm/llvm-project/commit/e5851a8f307a8e59742c5ab8fed7abdbe3f9cf21
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/convert-fp.ll

  Log Message:
  -----------
  [NVPTX] Fix fptosi/fptoui to i1. (#200718)

The langref says:

> The 'fptosi' instruction converts its floating-point operand into the
> nearest (rounding towards zero) signed integer value. If the value
> cannot fit in ty2, the result is a poison value.

Previously `fptosi to i1` and `fptoui to i1` were lowered as `x == 0.0`,
which is clearly incorrect.

Because the conversion truncates toward zero, the only results that are
not poison are:

 - 0 and -1 for the signed case, and
 - 0 and 1 for the unsigned case.

So the i1 result is fully determined by a single fp compare:

 - `fptosi x to i1`  ==  `x <= -1.0`
 - `fptoui x to i1`  ==  `x >= 1.0`

with any value being acceptable for the poison (out-of-range) inputs.


  Commit: 0f1f234990f40c942fb8b87cd2141c48848b8253
      https://github.com/llvm/llvm-project/commit/0f1f234990f40c942fb8b87cd2141c48848b8253
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/test/src/math/acos_test.cpp
    M libc/test/src/math/asin_test.cpp
    M libc/test/src/math/atan_test.cpp
    M libc/test/src/math/cbrt_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincos_test.cpp

  Log Message:
  -----------
  [libc][math] Adding constexpr to tests for Double-type math functions  (#200681)

Similar to 
```CPP
  constexpr uint64_t X_COUNT = 123;
  constexpr uint64_t X_START = FPBits(0.25).uintval();
  constexpr uint64_t X_STOP = FPBits(4.0).uintval();
  constexpr uint64_t X_STEP = (X_STOP - X_START) / X_COUNT;

  constexpr uint64_t Y_COUNT = 137;
  constexpr uint64_t Y_START = FPBits(0.25).uintval();
  constexpr uint64_t Y_STOP = FPBits(4.0).uintval();
  constexpr uint64_t Y_STEP = (Y_STOP - Y_START) / Y_COUNT;
  ```
  in [atan2_test.cpp](https://github.com/llvm/llvm-project/blob/main/libc/test/src/math/atan2_test.cpp)
  This PR tends to add constexpr to all double function tests-only
  
  Additonally, replacing 
  ``` CPP
  LIBC_NAMESPACE::fputil::FPBits<double>(x).uintval();
   ```
to 
```CPP
FPBits(x).uintval();
```
  Assisted using Copilot.


  Commit: 209d77c43a8aba33d1fbadfdcc4246a35d5fe433
      https://github.com/llvm/llvm-project/commit/209d77c43a8aba33d1fbadfdcc4246a35d5fe433
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/IR/Globals.cpp

  Log Message:
  -----------
  [IR] Reorder checks in isInterposable() (NFC) (#200862)

The isDSOLocal() check is a lot cheaper than getSemanticInterposition(),
so perform it first.


  Commit: 80875b8a637dcee352721ad6fe4f7b2886abc370
      https://github.com/llvm/llvm-project/commit/80875b8a637dcee352721ad6fe4f7b2886abc370
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/replace-first-order-recurrence-by-versioned-iv.ll

  Log Message:
  -----------
  [LV] Add users to header phis in tests (NFC). (#200890)

Make sure the header phis in various tests are actually used, to make
them more robust w.r.t. to future simplification changes. Those dead
phis would be cleaned up before LV in the regular pipeline.


  Commit: dc448dad35c896eab52dba9500ad599b69c420fa
      https://github.com/llvm/llvm-project/commit/dc448dad35c896eab52dba9500ad599b69c420fa
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/fold-shuffle-chains-to-reduce.ll

  Log Message:
  -----------
  [VectorCombine] Don't fold non-idempotent shuffle reductions when shuffle duplicates element (#200778)

This is a small correctness fix for foldShuffleChainsToReduce. For odd /
non-power-of-2 vector sizes the parity-mask scheme duplicates a lane,
which is only sound when the reduction op is idempotent. For
non-idempotent ops (e.g. add, xor) the duplicated lane changes the
result, so I track a HasLaneDuplication flag and bail out of the fold in
that case. Tests cover non-foldable add/xor and a still-foldable
idempotent smax.


  Commit: 0d98eb6e872811bdfd0545e46bdfd4251b493e2d
      https://github.com/llvm/llvm-project/commit/0d98eb6e872811bdfd0545e46bdfd4251b493e2d
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/test/CIR/CodeGen/cleanup-conditional.cpp
    M clang/test/CIR/CodeGen/loop-cond-cleanup.cpp

  Log Message:
  -----------
  [CIR] Fix ordering of lifetime-extended cleanups (#200874)

We had a bug that was causing any lifetime-extended cleanups that
occurred within a full-expression cleanup scope to be emitted
prematurely when the expression also required deferred conditional
cleanups. This was, in some cases, causing a dangling reference to
temporaries that had already been destructed. Luckily, it was also
causing us to not emit a return at the end of the function in one case,
leading the verifier to draw attention to this problem.

This change introduces new functions in RunCleanupsScope to allow
"ordinary" EH stack cleanups to be force-emitted separately from
lifetime-extended cleanups. Classic codegen doesn't need this capability
because it handles deferred conditional cleanups very differently than
CIR due to its flat/branching approach.

The testing for this fix did uncover a significant issue wherein CIR is
calling destructors in the wrong order even after the fix in this PR.
However, that's a pre-existing issue that will require changes beyond
the scope of this fix, so I'll handle it in a follow-up.

Assisted-by: Cursor / claude-opus-4.7


  Commit: 9433fd7666ca6e0e38c05e3dc911b0685ffa0ab3
      https://github.com/llvm/llvm-project/commit/9433fd7666ca6e0e38c05e3dc911b0685ffa0ab3
  Author: Wael Yehia <wmyehia2001 at yahoo.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M compiler-rt/lib/builtins/ppc/init_ifuncs.c

  Log Message:
  -----------
  [AIX] Set the ifunc constructor's priority to 100, to run before any user code (#200893)

Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>


  Commit: 0b411ba0a26b82e301453a67ca44a5c986aa0bdc
      https://github.com/llvm/llvm-project/commit/0b411ba0a26b82e301453a67ca44a5c986aa0bdc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] lowerShuffleAsBitBlend - use getConstVector to create selection mask (#200877)

Avoids wasteful SDValue creation if the shuffle matching fails, handles
any i64 legalisation and makes it easier to add UNDEF element handling
in the future.


  Commit: 910b4af8118ffef60c58f397794368577b35a7e1
      https://github.com/llvm/llvm-project/commit/910b4af8118ffef60c58f397794368577b35a7e1
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
    M llvm/test/tools/llvm-objcopy/DXContainer/copy-headers.yaml
    M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml

  Log Message:
  -----------
  Revert "[llvm-objcopy] Strip header from DXContainer's ILDB part during `--dump-section`" (#200867)

Reverts llvm/llvm-project#198578
Failed build: https://lab.llvm.org/buildbot/#/builders/190/builds/43332


  Commit: 4ae332399664a0f2426576b84bfcd173e85d9125
      https://github.com/llvm/llvm-project/commit/4ae332399664a0f2426576b84bfcd173e85d9125
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/CMakeLists.txt
    M offload/plugins-nextgen/level_zero/dynamic_l0/level_zero/ze_api.h
    M offload/plugins-nextgen/level_zero/include/AsyncQueue.h
    A offload/plugins-nextgen/level_zero/include/L0CmdListManager.h
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/include/L0Kernel.h
    M offload/plugins-nextgen/level_zero/include/L0Memory.h
    M offload/plugins-nextgen/level_zero/include/L0Options.h
    M offload/plugins-nextgen/level_zero/include/L0Plugin.h
    R offload/plugins-nextgen/level_zero/include/TLS.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp
    M offload/plugins-nextgen/level_zero/src/L0Options.cpp
    M offload/plugins-nextgen/level_zero/src/L0Program.cpp
    A offload/plugins-nextgen/level_zero/src/L0Queue.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Refactor AsyncQueues (#200650)

This PR introduces a major refactor on how L0 queues are used in the
plugin as the current design is too tied to OpenMP behavior. There are
two major changes:

* We no longer have a per-thread queue cache as this resulted in a
single logical queue backed up by multiple L0 queues. We now have a per
device cache which should have a similar level of reuse performance.
* The AsyncQueueTy type has been largely extended to hide the logic of
the different queues types (which are now subclasses of AsyncQueueTy).
This has greatly simplified the L0Device implementation.

As part of this refactor a number of other changes happened:

* Copy command lists were removed in favor of the
ZE_COMMAND_QUEUE_FLAG_COPY_OFFLOAD_HINT driver hint.
* Support for inorder queues was added (can be selected using
LIBOMPTARGET_LEVEL_ZERO_COMMAND_MODE=inorder).
* Sync queues now use inorder queues.
* Queue operations conditionally only use events when necessary (OMPT,
profiling or queue logic).
* MemFill now support asynchronous operations

There are a few more things that still need to be adjusted and cleanup
but as this PR is already big enough as it is, I'll prepare a follow-up
to fix them.


  Commit: 948b2b594af8101f5062c66aa8e23334fed4e2c0
      https://github.com/llvm/llvm-project/commit/948b2b594af8101f5062c66aa8e23334fed4e2c0
  Author: Ege Beysel <beysel at roofline.ai>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/test/Dialect/Linalg/transform-lower-pack.mlir

  Log Message:
  -----------
  [mlir][Linalg] Enable lowering/decomposing scalable pack ops (#200216)

Enables lowering/decomposing `linalg.pack` ops with dynamic inner tiles
to a sequence of `tensor.pad` -> `tensor.expand_shape` ->
`linalg.transpose` ops.

---------

Signed-off-by: Ege Beysel <beyselege at gmail.com>


  Commit: 4a00d0099bbe5eb318fd4af3e701a1e150b0f9e4
      https://github.com/llvm/llvm-project/commit/4a00d0099bbe5eb318fd4af3e701a1e150b0f9e4
  Author: lntue <lntue at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libc-overlay-tests.yml
    M .github/workflows/libc-shared-tests.yml

  Log Message:
  -----------
  [libc][ci] Use lld for linking in precommit CIs. (#200897)


  Commit: ae464f629520427be2ff63768d8a9fa4f0345223
      https://github.com/llvm/llvm-project/commit/ae464f629520427be2ff63768d8a9fa4f0345223
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/cert/err33-c.cpp

  Log Message:
  -----------
  [clang-tidy] Fix cert-err33-c inheriting CheckedReturnTypes from bugp… (#200169)

…rone-unused-return-value

The cert-err33-c alias did not override CheckedReturnTypes, causing it
to inherit the default from bugprone-unused-return-value. This made it
flag any function returning std::error_code, std::expected, etc. That is
outside the scope of CERT ERR33-C (a fixed list of C standard library
functions).
Set CheckedReturnTypes to empty so the alias only checks its intended
function list.

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: c5eafbcc29c5d83deea9ae2232883ebef1febec0
      https://github.com/llvm/llvm-project/commit/c5eafbcc29c5d83deea9ae2232883ebef1febec0
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/test/Analysis/bstring_UninitRead.c
    M clang/test/Analysis/initialization.c
    M clang/test/Analysis/initialization.cpp

  Log Message:
  -----------
  [analyzer] Normalize sub-array indices in RegionStore initializer res… (#200044)

…olution

After #198346, alpha.unix.cstring.UninitializedRead reports a false
positive when a pointer into a fully-initialized const multidimensional
array is advanced past an inner dimension boundary and used as a source
argument to memcpy. The root cause is in
`convertOffsetsFromSvalToUnsigneds` in RegionStore, which returned
UndefinedVal for any element index exceeding its sub-array extent,
conflating pointer arithmetic legality with memory initializedness.

This patch separates the two concerns. The RegionStore now normalizes
indices that overflow an inner dimension by carrying into the outer
dimension via divmod, the same way `arr[0][5]` in `int arr[4][3]`
denotes the same memory as `arr[1][2]`. UndefinedVal is returned only
when the computed flat offset exceeds the total array allocation.
Whether cross-subobject pointer arithmetic constitutes undefined
behavior per C/C++ standards is a separate concern for individual
checkers to diagnose. No existing checker flags sub-array boundary
crossing as UB, verified both before and after #198346.

Fixes #199271


  Commit: 4c64e23f917db492d1f5c125303bc2bd61f211ec
      https://github.com/llvm/llvm-project/commit/4c64e23f917db492d1f5c125303bc2bd61f211ec
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/lib/scudo/standalone/tests/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/gdb-remote/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/Hexagon/BUILD.gn
    M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#200910)

3d24f9acc92b
7963f459e2f3
7a435caaf3fa
866945c20298
a0ac75213425


  Commit: 4b3249a79b2e2856f24d5e8d718381b4b097d29b
      https://github.com/llvm/llvm-project/commit/4b3249a79b2e2856f24d5e8d718381b4b097d29b
  Author: Jared Hoberock <jaredhoberock at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
    M mlir/test/Conversion/GPUCommon/lower-alloc-to-gpu-runtime-calls.mlir
    M mlir/test/Conversion/GPUCommon/lower-launch-func-bare-ptr.mlir

  Log Message:
  -----------
  [MLIR][GPU] Support synchronous gpu.alloc and gpu.dealloc in gpu-to-llvm (#191661)

The gpu-to-llvm conversion patterns for gpu.alloc and gpu.dealloc
previously required async tokens for non-host shared operations. This
prevented lowering synchronous device memory allocation and deallocation
to runtime calls.

Changes:
- gpu.alloc: drop the isAsyncWithOneDependency guard for non-shared
allocs. Cap the number of async dependencies at one to preserve the
prior single-dependency invariant. Cast the runtime-returned pointer to
the memref's address space when they differ, so the descriptor's pointer
slots type-check for memref<..., N>.
- gpu.dealloc: drop the async requirement entirely. Use a null stream
when no async dependencies are present. Use eraseOp instead of replaceOp
for sync deallocs (which have no results). Cap the number of async
dependencies at one.
- Add a unit test for the synchronous alloc/dealloc lowering and a test
that more than one async dependency leaves the op unconverted.
- Update lower-launch-func-bare-ptr.mlir, which previously asserted
gpu.alloc survived the conversion (because the pattern bailed for sync
non-shared allocs); it now asserts the full lowering through
mgpuMemAlloc + addrspacecast.

Assisted-by: Claude


  Commit: 8c30cb246ce877c6a6b534fff5e58cc46ced95d3
      https://github.com/llvm/llvm-project/commit/8c30cb246ce877c6a6b534fff5e58cc46ced95d3
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/dynamic_l0/L0DynWrapper.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Add support for dynamic l0 fallbacks (#200517)

The PR adds support to define fallbacks for DLWRAP routines that are not
found when loading the library.
It implements a fallback for
zeCommandListAppendLaunchKernelWithArguments introduced in #194333 which
might not be available in older drivers.


  Commit: eae4d72971719d7c68c30c7eeb37135606e346aa
      https://github.com/llvm/llvm-project/commit/eae4d72971719d7c68c30c7eeb37135606e346aa
  Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
    M mlir/test/Dialect/OpenACC/acc-compute-lowering-loop.mlir

  Log Message:
  -----------
  [openacc] Attach Parallelism Levels to Auto Loops (#200884)

Auto loops are analyzed by the compiler in later compilation stages to
determine whether they can be parallelized. These loops may carry
parallelism levels (this does not guarantee that they are parallelizable, 
compiler should still analyze them). However, if the loop is parallelized, 
the parallelism levels specified in the source should be respected. This 
change attaches the parallelism level to auto loops, which enables their 
propagation through next compilation steps.


  Commit: 4aa9a9f6f6b9e04c64e18f2f23efbd3745982773
      https://github.com/llvm/llvm-project/commit/4aa9a9f6f6b9e04c64e18f2f23efbd3745982773
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll

  Log Message:
  -----------
  [X86] lowerShuffleAsBitMask - use getConstVector to create bitmask (#200889)

Avoids wasteful SDValue creation if the shuffle matching fails, handles
any i64 legalisation, avoid issues with later folds not recognising fp
'allones' masks and makes it easier to add UNDEF element handling in the
future.


  Commit: 659c3fbd732771ad30052a9cd2c5896cfe00737e
      https://github.com/llvm/llvm-project/commit/659c3fbd732771ad30052a9cd2c5896cfe00737e
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
    M lldb/tools/lldb-dap/ProtocolUtils.cpp

  Log Message:
  -----------
  [lldb-dap] Mark source deemphasize if path doesn't exist (#194702)

LLDB-DAP has a problem with sanitizers in GCC. When we stop in
sanitizer's code, lldb-dap sends stack frames with path (sanitizer's
build dir path) that doesn't exist on machine. It leads to problems in
VS Code UI (see issue below).

Fixes #184789


  Commit: 27d344d36ecac3645ed8b8a1ba37dd6772be6a71
      https://github.com/llvm/llvm-project/commit/27d344d36ecac3645ed8b8a1ba37dd6772be6a71
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/utils/gn/build/write_cmake_config.py
    M llvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7964b66b (#200914)


  Commit: 7a9fdaa0b1a0c003d9c278bd40647b357952ca93
      https://github.com/llvm/llvm-project/commit/7a9fdaa0b1a0c003d9c278bd40647b357952ca93
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py

  Log Message:
  -----------
  [lldb] Skip minidump case in TestDynamicValue.py for arm64e (#200047)

The minidump format does not currently have a way to distinguish arm64e
from arm64.


  Commit: 5fa177b90c8f365743bfe2633d620aa333a4bd02
      https://github.com/llvm/llvm-project/commit/5fa177b90c8f365743bfe2633d620aa333a4bd02
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/EmulateAtomics.cpp
    M mlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Dialect/AMDGPU/amdgpu-emulate-atomics.mlir
    M mlir/test/Dialect/AMDGPU/canonicalize.mlir
    M mlir/test/Dialect/AMDGPU/ops.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL][AMDGPU] Add result arguments to buffer atomics (#198596)

Buffer atomic operations were failing LLVM validation because they
weren't declared as having a result (the old value). This commit updates
those operations to fix the error. (Note: if you don't need the result,
you just don't use it, and the compiler backend emits an atomic that
doesn't return the old value.)


  Commit: f323e93d46d9ca3b34a35739089f14ee15865012
      https://github.com/llvm/llvm-project/commit/f323e93d46d9ca3b34a35739089f14ee15865012
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-flags.ll

  Log Message:
  -----------
  [VPlan] Propagate print flags for VPInstructionWithType. (#200838)

Update VPInstructionWithType::print to include printing flags.


  Commit: a330c89d7de14a13b55e5aef3b80b054815c24ab
      https://github.com/llvm/llvm-project/commit/a330c89d7de14a13b55e5aef3b80b054815c24ab
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M bolt/docs/profiles.md
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/test/perf2bolt/lit.local.cfg
    A bolt/test/perf2bolt/perf_brstack.test
    M bolt/test/perf2bolt/perf_test.test

  Log Message:
  -----------
  [BOLT] Add perf2bolt pre-aggregated profile output

Add a pre-aggregated profile output format (`--profile-format=preagg`)
so perf.data can be pre-parsed/aggregated and used as input with -pa.

Supports branch (T traces) and basic samples (S records).

Currently only covers main binary, can be extended to cover multi-DSO.

Test Plan: Updated perf_test.test, added perf_brstack.test

Reviewers:
yota9, ayermolo, yozhu, maksfb, yavtuk, paschalis-mpeis, rafaelauler

Reviewed By: paschalis-mpeis

Pull Request: https://github.com/llvm/llvm-project/pull/199465


  Commit: a4f3a0153b8be8044d6b4a85e9632618930193f4
      https://github.com/llvm/llvm-project/commit/a4f3a0153b8be8044d6b4a85e9632618930193f4
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/include/L0Plugin.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp

  Log Message:
  -----------
  [OFFLOAD][L0][NFC] Remove Device TLS table (#200923)

After #200650 the Device TLS table is not used anymore so it can be
removed.


  Commit: 43ce763adaf01ec2e454c912bf022c7778f9c05b
      https://github.com/llvm/llvm-project/commit/43ce763adaf01ec2e454c912bf022c7778f9c05b
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    R offload/plugins-nextgen/level_zero/include/AsyncQueue.h
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/include/L0Kernel.h
    A offload/plugins-nextgen/level_zero/include/L0Queue.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/plugins-nextgen/level_zero/src/L0Queue.cpp

  Log Message:
  -----------
  [OFFLOAD][L0][NFC] Rename AsyncQueueTy struct to L0QueueTy (#200921)

L0QueueTy is more descriptive after the changes in #200650.

Also renamed the header name and one internal field to be more
descriptive.


  Commit: 3e45dea1ecce8e0360f58a74f2d4cd45eac301e4
      https://github.com/llvm/llvm-project/commit/3e45dea1ecce8e0360f58a74f2d4cd45eac301e4
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    A clang/test/CIR/CodeGen/cleanup-derived-to-base-ref.cpp

  Log Message:
  -----------
  [CIR] Spill and reload values across deferred cleanup scopes (#200904)

The `valuesToReload` handling in our `RunCleanupScope::forceCleanup()`
function was not taking into account cleanup scopes for deferred
conditional cleanups that get created when we call
`forceDeactivation()`. This was leading to a CIR verification error in
cases where a deferred cleanup was used in an expression that returns a
value.

This change adds code to spill values ahead of the `forceDeactivation()`
call when we see that there are cleanups on the deferred stack.

Assisted-by: Cursor / claude-opus-4.7


  Commit: 385ba8821c75a13ca45a38047e69670921ba9a06
      https://github.com/llvm/llvm-project/commit/385ba8821c75a13ca45a38047e69670921ba9a06
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/test/API/macosx/branch-islands/Makefile

  Log Message:
  -----------
  [lldb] Fix TestBranchIslands.py for arm64e (#200498)

Need to pass CFLAGS to clang when building the asm files, otherwise the
triple isn't used and they're automatically compiled for the host
platform.


  Commit: 8b66d829fbcc37eeb8a2a2e14dfc7bf40ee067e1
      https://github.com/llvm/llvm-project/commit/8b66d829fbcc37eeb8a2a2e14dfc7bf40ee067e1
  Author: Renato Golin <rengolin at systemcall.eu>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .clang-format-ignore
    R clang/.clang-format-ignore
    M llvm/docs/CodingStandards.rst

  Log Message:
  -----------
  [Docs] Update coding standard for TD files (#200848)

This PR proposes an update to the coding standards document to make
explicit that we do not want unnecessary formatting changes to TD files.

This is in response to this merged PR (#199346), which lead to this RFC
(https://discourse.llvm.org/t/80-column-limit-for-td-files/90950/).

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: 4d3513075df51a2cb579e3d82e9593aac42a4bce
      https://github.com/llvm/llvm-project/commit/4d3513075df51a2cb579e3d82e9593aac42a4bce
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp

  Log Message:
  -----------
  [lldb] Strip objc superclass pointer in trampoline handler (#200490)

The pointer needs to be stripped before being handed off to any objc
runtime functions. Otherwise the utility expression will hit a PAC
exception and the thread plan will fail to execute correctly.

This fixes TestObjCStepping.py on arm64e.


  Commit: e6874781e5b678101ff5f220c3a0dd4df5d2cf29
      https://github.com/llvm/llvm-project/commit/e6874781e5b678101ff5f220c3a0dd4df5d2cf29
  Author: jofrn <jo7frn1 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/X86/atomic-load-store.ll

  Log Message:
  -----------
  [SelectionDAG] Widen <2 x T> vector types for atomic store (#197618)

Vector types of 2 elements must be widened. This change does this
for vector types of atomic store in SelectionDAG so that it can
translate aligned vectors of >1 size.

Store-side counterpart to #148897. Stacked on top of #197166; and below
of #197619.


  Commit: 24ea912d3b66800a5b341a31b9d20494a15e728c
      https://github.com/llvm/llvm-project/commit/24ea912d3b66800a5b341a31b9d20494a15e728c
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  [LLVM] Fix style issue in Maintainers file (#200917)


  Commit: fc2ab20894edd965e0394ca3a30a2ed5beb11617
      https://github.com/llvm/llvm-project/commit/fc2ab20894edd965e0394ca3a30a2ed5beb11617
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
    M llvm/test/CodeGen/AMDGPU/callbr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-v2f32.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/fsqrt.f64.ll
    M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-flat.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-global.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-local.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/packed-fneg-fsub-fp16.ll
    M llvm/test/CodeGen/AMDGPU/ps-shader-arg-count.ll
    M llvm/test/CodeGen/AMDGPU/rsq.f64.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-flat.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-global.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-local.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Switch some tests to -new-reg-bank-select (#200853)


  Commit: 9740a4bb88463581a4fd6c1362b9d1d14c995cb3
      https://github.com/llvm/llvm-project/commit/9740a4bb88463581a4fd6c1362b9d1d14c995cb3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/test/CodeGen/AArch64/selectopt-cast.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [SelectOpt] Preserve Profile Information (#200680)

If at least one of the SelectLike instructions in the group has profile
metadata, we can propagate it given they all share the same condition.


  Commit: 64ed6837d6026b97dcb5e175caf3d54ad3397850
      https://github.com/llvm/llvm-project/commit/64ed6837d6026b97dcb5e175caf3d54ad3397850
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-post-legalize.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-pre-legalize.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-unmerge-values.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-i1-copy.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-select.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext-inreg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptrunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-amdgcn-fdiv-fast.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-rotl-rotr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-divrem.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-unmerge-undef.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-load-and-mask.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-divrem.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-shuffle.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-unmerge-values.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-widen-scalar-loads.mir

  Log Message:
  -----------
  AMDGPU/GlobalISel: Remove redundant -global-isel from -run-pass MIR tests (NFC) (#200857)


  Commit: 8c65695c54b74bc806f1f74314a45a0bb8c56642
      https://github.com/llvm/llvm-project/commit/8c65695c54b74bc806f1f74314a45a0bb8c56642
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Queue.h
    M offload/plugins-nextgen/level_zero/src/L0Queue.cpp

  Log Message:
  -----------
  [OFFLOAD][L0][NFC] Add struct for deferred memory operations (#200928)

Improve readibility a bit by using a well-defined struct instead of
tuples.


  Commit: 11158cfe3faa2c9c04c8b5fdac3ac25eec75cb51
      https://github.com/llvm/llvm-project/commit/11158cfe3faa2c9c04c8b5fdac3ac25eec75cb51
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/HotColdSplit/coldentrycount.ll

  Log Message:
  -----------
  [HotColdSplit] Consolidate pass pipeline (#200941)

Codegenprepare was added for more of a E2E test in
f0f68c6e6c5e0064c0196e4f1528e910a47766e0. The pipeline was split in
cb5e48d1c2c4774ed9f17ff89412f1291b640172 to allow for the removal of the
HotColdSplit legacy pass. Now that CodeGenPrepare has been ported to the
NewPM in f1ec0d12bb0843f0deab83ef2b5cf1339cbc4f0b (which even touched
this test), we can use a single pass pipeline and simplify the run line
a little bit.


  Commit: fbcf6bbf35a176a27ce8ca509c00d6b5c8a8c064
      https://github.com/llvm/llvm-project/commit/fbcf6bbf35a176a27ce8ca509c00d6b5c8a8c064
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lld/COFF/Chunks.h
    M lld/MachO/ConcatOutputSection.h
    M lld/wasm/SyntheticSections.h

  Log Message:
  -----------
  [lld] Remove unused DenseMapInfo::getTombstoneKey (#200636)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 54796f26bf917bd68434f4c13c2a9bb16506cba9
      https://github.com/llvm/llvm-project/commit/54796f26bf917bd68434f4c13c2a9bb16506cba9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Core/Highlighter.h
    M lldb/include/lldb/Host/HostThread.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Utility/ConstString.h
    M lldb/include/lldb/Utility/FileSpec.h
    M lldb/include/lldb/Utility/UUID.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp

  Log Message:
  -----------
  [lldb] Remove unused DenseMapInfo::getTombstoneKey (#200635)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: f0d3a8f1f20b8f569d6c2cf2add3295ea6ac3abf
      https://github.com/llvm/llvm-project/commit/f0d3a8f1f20b8f569d6c2cf2add3295ea6ac3abf
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Passes/DataflowAnalysis.h
    M bolt/include/bolt/Passes/SplitFunctions.h
    M bolt/include/bolt/Profile/DataReader.h

  Log Message:
  -----------
  [BOLT] Remove unused DenseMapInfo::getTombstoneKey (#200637)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 7ccb0ed0172625239626a7503f6996ebd27a6aea
      https://github.com/llvm/llvm-project/commit/7ccb0ed0172625239626a7503f6996ebd27a6aea
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lld/wasm/Config.h
    M lld/wasm/Writer.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Refine type used for internal TLS-related symbols. NFC (#200899)

I noticed this while reviewing #200855.


  Commit: 333bc302b49f37da1987e15ae6f66a3027f615f7
      https://github.com/llvm/llvm-project/commit/333bc302b49f37da1987e15ae6f66a3027f615f7
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/Symbol.h

  Log Message:
  -----------
  [lldb] Add static_assert to catch increases to size of Symbol (#200919)


  Commit: 67139a27775e72b0b199a37946a8b3fa0abdc75e
      https://github.com/llvm/llvm-project/commit/67139a27775e72b0b199a37946a8b3fa0abdc75e
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M flang/include/flang/Lower/IterationSpace.h
    M flang/include/flang/Lower/Support/Utils.h
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Lower/Support/Utils.cpp

  Log Message:
  -----------
  [flang] Remove unused DenseMapInfo::getTombstoneKey (#200632)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 4b91251dd8af6a109c07c7a89bafab9be0dd829c
      https://github.com/llvm/llvm-project/commit/4b91251dd8af6a109c07c7a89bafab9be0dd829c
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M mlir/docs/DefiningDialects/Operations.md
    M mlir/include/mlir/Analysis/CallGraph.h
    M mlir/include/mlir/Analysis/DataFlowFramework.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrs.h
    M mlir/include/mlir/IR/AffineExpr.h
    M mlir/include/mlir/IR/AffineMap.h
    M mlir/include/mlir/IR/Attributes.h
    M mlir/include/mlir/IR/Block.h
    M mlir/include/mlir/IR/BlockSupport.h
    M mlir/include/mlir/IR/BuiltinAttributes.h
    M mlir/include/mlir/IR/DialectInterface.h
    M mlir/include/mlir/IR/IntegerSet.h
    M mlir/include/mlir/IR/Location.h
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/include/mlir/IR/OperationSupport.h
    M mlir/include/mlir/IR/Remarks.h
    M mlir/include/mlir/IR/TypeRange.h
    M mlir/include/mlir/IR/Types.h
    M mlir/include/mlir/IR/Value.h
    M mlir/include/mlir/Pass/PassInstrumentation.h
    M mlir/include/mlir/Pass/PassManager.h
    M mlir/include/mlir/Support/InterfaceSupport.h
    M mlir/include/mlir/Support/TypeID.h
    M mlir/include/mlir/TableGen/Constraint.h
    M mlir/include/mlir/TableGen/Format.h
    M mlir/include/mlir/TableGen/Pattern.h
    M mlir/include/mlir/Tools/PDLL/AST/Types.h
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Dialect/Func/Transforms/DuplicateFunctionElimination.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/lib/Support/StorageUniquer.cpp
    M mlir/lib/TableGen/Constraint.cpp
    M mlir/lib/Transforms/Utils/CFGToSCF.cpp
    M mlir/lib/Transforms/Utils/CSE.cpp
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/tools/mlir-tblgen/EnumsGen.cpp

  Log Message:
  -----------
  [mlir] Remove unused DenseMapInfo::getTombstoneKey (#200633)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 9e29f7ddc42e325aa34dcf58a5da800afa9f64ad
      https://github.com/llvm/llvm-project/commit/9e29f7ddc42e325aa34dcf58a5da800afa9f64ad
  Author: jofrn <jo7frn1 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/atomic-load-store.ll
    M llvm/test/CodeGen/X86/atomic-unordered.ll

  Log Message:
  -----------
  [X86] Remove extra MOV after widening atomic store (#197619)

This change adds patterns to optimize out an extra MOV present after
widening the atomic store. Covers `<2 x i8>` (SSE4.1+), `<2 x i16>`,
`<4 x i8>`, `<2 x i32>`, `<2 x float>`, `<4 x i16>`,
`<2 x ptr addrspace(270)>`.

Store-side counterpart to #148898. Stacked on top of #197618; and below
of #197860.


  Commit: f254ae6f7f12042d3822c64d4467fe3d385f992c
      https://github.com/llvm/llvm-project/commit/f254ae6f7f12042d3822c64d4467fe3d385f992c
  Author: Marcos Ramirez Joos <mramirezjoos.oss at proton.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    A libc/cmake/modules/compiler_features/check_stdc_fenv_access.cpp
    M libc/src/__support/FPUtil/FEnvImpl.h

  Log Message:
  -----------
  [libc] Add FENV_ACCESS pragma with CMake compiler feature detection (#200268)

Related to https://github.com/llvm/llvm-project/pull/199009

Added compiler feature detection for _STDC FENV_ACCESS_ pragma. It is
used to conditionally add function-scoped `#pragma STDC FENV_ACCESS ON`
to `libc/src/__support/FPUtil/FEnvAccess.h`, whenever functions from the
`<fenv.h>` header are called and the target supports the pragma.


  Commit: b9d5c24b42f7101f8a34ebb660adc68a22e40dc3
      https://github.com/llvm/llvm-project/commit/b9d5c24b42f7101f8a34ebb660adc68a22e40dc3
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/include/clang/Config/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7a907089 (#200953)


  Commit: d7ee01c0fa3113b0b2d98e77273f794a182bf2dd
      https://github.com/llvm/llvm-project/commit/d7ee01c0fa3113b0b2d98e77273f794a182bf2dd
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/literals.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt

  Log Message:
  -----------
  [AMDGPU] Fix disasm of i16 operands fp inline constants (#200944)


  Commit: 9bda223f692b10d4311331e2c2ae82293b8af63e
      https://github.com/llvm/llvm-project/commit/9bda223f692b10d4311331e2c2ae82293b8af63e
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/src/__support/math/acos.h
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/asin_utils.h
    M libc/src/__support/math/asinpi.h
    M libc/src/__support/math/atan2f128.h
    M libc/src/__support/math/atan_utils.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/math/cos.h
    M libc/src/__support/math/exp.h
    M libc/src/__support/math/exp10.h
    M libc/src/__support/math/exp2.h
    M libc/src/__support/math/expm1.h
    M libc/src/__support/math/log.h
    M libc/src/__support/math/log10.h
    M libc/src/__support/math/log1p.h
    M libc/src/__support/math/log2.h
    M libc/src/__support/math/log_range_reduction.h
    M libc/src/__support/math/range_reduction_double_common.h
    M libc/src/__support/math/sin.h
    M libc/src/__support/math/sincos.h
    M libc/src/__support/math/sincos_eval.h
    M libc/src/__support/math/tan.h
    M libc/test/src/__support/FPUtil/comparison_operations_test.cpp
    M libc/test/src/__support/FPUtil/dyadic_float_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp

  Log Message:
  -----------
  [libc] Renaming Float128 (DyadicFloat<128>) to DFloat128 (#200907)

This is to be able to use the `Float128` for emulated float128 type.
[#200565 ](https://github.com/llvm/llvm-project/pull/200565)


  Commit: e58e30842fdbae26153757985de2d5fecc7a174e
      https://github.com/llvm/llvm-project/commit/e58e30842fdbae26153757985de2d5fecc7a174e
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/test/CodeGen/builtins-nvptx.c
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw.py
    R llvm/test/CodeGen/NVPTX/atomics-with-scope.ll

  Log Message:
  -----------
  [NVPTX][clang] Remove nvvm scoped atomic intrinsics; use atomicrmw/cmpxchg (#200735)

The
`llvm.nvvm.atomic.{add,exch,max,min,inc,dec,and,or,xor,cas}.gen.{i,f}.{cta,sys}`
intrinsics are redundant; we can use atomicrmw / cmpxchg with a syncscope.

Moreover, the nvvm atomics are problematic because they don't have
unsigned min/max opcodes. Clang uses these intrinsics and currently emits
signed min/max for what should be unsigned operations!

Fix by doing the following.

 - Remove the nvvm intrinsics.
 - Auto-upgrade the removed intrinsics to atomicrmw/cmpxchg.
 - Make clang Clang emits atomicrmw/cmpxchg directly.


  Commit: 1123d2bd380e6524dce0f9c09e010b8a3e80a7fa
      https://github.com/llvm/llvm-project/commit/1123d2bd380e6524dce0f9c09e010b8a3e80a7fa
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/clmulh.ll
    M llvm/test/CodeGen/RISCV/imm.ll
    M llvm/test/CodeGen/RISCV/rv64i-demanded-bits.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll
    M llvm/test/CodeGen/RISCV/rv64zbkb.ll
    M llvm/test/CodeGen/RISCV/sextw-removal.ll

  Log Message:
  -----------
  [RISCV] Improve shrinkDemandedConstant. (#196585)

Teach shrinkDemandedConstant to restore a constant that can be
materialized as:
  lui a0, hi20
  addi(w) a0, a0, lo12
  slli a1, a0, 32
  add a0, a0, a1

or:
  lui a0, hi20
  addi(w) a0, a0, lo12
  pack a0, a0, a0

This fixes a regression between clang 18 and 19 on this test case
https://godbolt.org/z/Ma746a8xP


  Commit: daac50b33ee19d5ef5669da8f0119b6ce5c395d8
      https://github.com/llvm/llvm-project/commit/daac50b33ee19d5ef5669da8f0119b6ce5c395d8
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M polly/include/polly/Support/VirtualInstruction.h

  Log Message:
  -----------
  [Polly] Remove unused DenseMapInfo::getTombstoneKey (#200963)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 6bbbdbaad55c70fe3234519ab2e81edd26de285a
      https://github.com/llvm/llvm-project/commit/6bbbdbaad55c70fe3234519ab2e81edd26de285a
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp

  Log Message:
  -----------
  [AMDGPU] Simplicy the logic in checkWMMACoexecutionHazards, NFC (#200717)


  Commit: 94337fb6b2d5935cdaa9abecdba8274924119dcc
      https://github.com/llvm/llvm-project/commit/94337fb6b2d5935cdaa9abecdba8274924119dcc
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb/test] Fix variant double-expansion in LLDBTestCaseFactory (#200943)

LLDBTestCaseFactory generates the actual test methods that get run: for
every `test*` method on a TestBase subclass, it stamps out one copy per
debug-info format (dwarf, dsym, ...) and, if a variant like
swift_clang's clang/noclang is registered, one copy per variant value on
top. When two test methods in the same class have names that share a
prefix and the longer one is declared first in the file, the shorter
method's expansion ends up re-stamping every copy already produced for
the longer one.

The variant-expansion helper decides what to copy by name-prefix match:
when processing `test_expr`, it grabs `test_expr`, `test_expr_dwarf`,
`test_expr_dsym`, ... and produces a clang/noclang suffix for each one.
The factory was handing it the full running dict of already-synthesized
methods, so by the time `test_expr`'s turn came, the dict also held
`test_expr_stripped_dwarf` and `test_expr_stripped_dsym` from
`test_expr_stripped`. Those names start with `test_expr_` too, so they
pick up a second clang/noclang suffix and inherit `test_expr`'s
xfail/skip predicates.

HiddenIvarsTestCase trips this twice in a row (test_expr_stripped before
test_expr; test_frame_variable_stripped before test_frame_variable).
Upstream `_test_variants` is empty so the bug is latent on mainline, but
any registered variant exposes it.

With swift_clang (values clang/noclang) registered, test_expr_stripped +
test_expr should produce eight methods (4 dwarf/dsym × 2 clang/noclang
per original). Before this patch the factory emits twelve, four of them
junk:

```
  test_expr_stripped_dsym_clang_clang
  test_expr_stripped_dsym_clang_noclang
  test_expr_stripped_dsym_noclang_clang
  test_expr_stripped_dsym_noclang_noclang
  test_expr_stripped_dwarf_clang_clang
  test_expr_stripped_dwarf_clang_noclang
  test_expr_stripped_dwarf_noclang_clang
  test_expr_stripped_dwarf_noclang_noclang
  test_expr_dsym_clang
  test_expr_dsym_noclang
  test_expr_dwarf_clang
  test_expr_dwarf_noclang
```

Track each method's expansion in a local dict and merge it back into the
shared dict only once that method is fully processed, so the variant
helper never sees another method's copies.


  Commit: 0597087c44e493610d3f96608bef46e721201af6
      https://github.com/llvm/llvm-project/commit/0597087c44e493610d3f96608bef46e721201af6
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M lldb/CMakeLists.txt
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Skip libc++ category tests on Darwin when no in-tree libc++ is built (#199262)

`canRunLibcxxTests()` previously short-circuited with "libc++ always
present" for all Darwin targets, meaning the "libc++" test category was
never skipped on macOS — even when `LLDB_HAS_LIBCXX` is `OFF` and no
`--libcxx-include-dir` / `--libcxx-library-dir` are passed to dotest.
The tests would silently run against the system libc++ instead of an
in-tree build, producing results inconsistent with what the suite is
designed to validate.

This fixes `canRunLibcxxTests()` to apply the same `libcxx_include_dir`
/ `libcxx_library_dir` guard on `Darwin` that `Linux` already uses. When
those dirs are absent (i.e. no in-tree libc++ was built), the function
returns `False` and `checkLibcxxSupport()` appends `libc++` to
`skip_categories` — skipping those tests exactly as Linux does.

On the CMake side, the `SEND_ERROR` for `LLDB_HAS_LIBCXX=OFF` is
downgraded to a `WARNING` so downstreams that intentionally skip the
runtimes build can keep `LLDB_INCLUDE_TESTS=ON` for the tests they
actually want to run. The warning is also gated on the new
`LLDB_ENABLE_LIBCXX_TESTS` option (default `ON`): setting it to OFF
acknowledges the deliberate choice and silences the warning without
requiring either an in-tree libc++ build or disabling all tests.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: b8aa19be4846132525b4f65e7bc5369c6693232f
      https://github.com/llvm/llvm-project/commit/b8aa19be4846132525b4f65e7bc5369c6693232f
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Object/DXContainer.cpp
    M llvm/unittests/Object/DXContainerTest.cpp

  Log Message:
  -----------
  [Object][DirectX] Fix UB when parsing a DXContainer from a null buffer (#200865)

Adds an additional check that `Src != nullptr` before doing other
operations on it, which caused a UB in one test with #200413.


  Commit: f8a5f67e81e95c8007072c3cb307cf5b3bebfd64
      https://github.com/llvm/llvm-project/commit/f8a5f67e81e95c8007072c3cb307cf5b3bebfd64
  Author: Sergey Stepanov <23sas32 at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZicfiss.td
    M llvm/test/CodeGen/RISCV/shadowcallstack.ll

  Log Message:
  -----------
  [RISCV] Use sspush/sspopchk mnemonics for shadow stack codegen (#200182)

After PR #178609, SSPUSH/SSPOPCHK/C_SSPUSH became encodable under the
Zimop/Zcmop predicates alone (old Zicfiss requirement was relaxed to
Zimop).
Before that, the hw-shadow-stack codegen path introduced in PR #152251
needed PseudoMOP_* wrappers that expand to the base
MOP_RR_7/MOP_R_28/C_MOP_1, because the real SSPUSH/SSPOPCHK/C_SSPUSH
were gated by Zicfiss while the codegen path only required Zimop.
As a side effect, the assembler printed `mop.rr.7 zero, zero,
ra`/`mop.r.28 zero, ra` for hw-shadow-stack functions instead of the
proper `sspush ra`/`sspopchk ra` mnemonics from the CFI RISC-V spec
(while the disassembler already printed proper sspush/sspopchk.

With predicates now aligned, the pseudos are just plain wrappers with
identical predicates to the real instructions, so they became redundant.
This patch removes them and emits SSPUSH/SSPOPCHK/C_SSPUSH directly.


  Commit: cd328c777b2925881e852adbd129848cc0c327dc
      https://github.com/llvm/llvm-project/commit/cd328c777b2925881e852adbd129848cc0c327dc
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-no_create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-present-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-private-firstprivate-ast.cpp
    M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/data-construct-create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-no_create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-present-ast.cpp
    M clang/test/SemaOpenACC/sub-array-ast.cpp
    M clang/test/SemaTemplate/alias-templates.cpp
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [clang] fix transformation of SubstNonTypeTemplateParmExpr nodes from type alias templates and concepts (#200850)

This makes sure SubstNonTypeTemplateParmExpr produced from
non-specialization decls (Type alias templates and concepts) are
correctly transformed.

This makes the SubstNonTypeTemplateParmExpr store the parameter type
directly, and uses that instead of relying on the AssociatedDecl.

Fixes #191738
Fixes #196375


  Commit: 1460e27c8d38bd9632e1bd95d1f534ba71996a02
      https://github.com/llvm/llvm-project/commit/1460e27c8d38bd9632e1bd95d1f534ba71996a02
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/wchar.yaml
    M libc/src/wchar/CMakeLists.txt
    A libc/src/wchar/swprintf.cpp
    A libc/src/wchar/swprintf.h
    M libc/test/src/wchar/CMakeLists.txt
    A libc/test/src/wchar/swprintf_test.cpp

  Log Message:
  -----------
  [libc] Add a placeholder for swprintf function (#200895)

Add a declaration and stub implementation for the `swprintf` function.
Only enable it when `LLVM_LIBC_ENABLE_EXPERIMENTAL_ENTRYPOINTS` is
specified to clarify that the implementation is not ready yet.

We're singling out `swprintf` among the other wide-character formatting
functions because it's used in libc++ to implement `std::to_wstring` for
floating point values
(https://github.com/llvm/llvm-project/blob/2a2e45257b8277ae6dbd3bce1627a9b07d1a301d/libcxx/src/string.cpp#L366),
and is the last remaining piece of functionality preventing us from
turning on wide character support in libc++ built against llvm-libc.
Adding the stub function would allow us to test the compilation with
`_LIBCPP_HAS_WIDE_CHARACTERS` enabled, and start keeping track of what
tests from libc++ test suite are working / not working yet.


  Commit: 79b7fefcacdc7b5dc8817cecddcbb9a8da3c996c
      https://github.com/llvm/llvm-project/commit/79b7fefcacdc7b5dc8817cecddcbb9a8da3c996c
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libcxx/include/__type_traits/integral_constant.h
    M libcxx/include/__type_traits/is_constant_evaluated.h
    M libcxx/include/__type_traits/is_within_lifetime.h
    A libcxx/test/libcxx/type_traits/nodiscard.verify.cpp
    M libcxx/test/std/utilities/meta/meta.const.eval/is_within_lifetime.compile.pass.cpp

  Log Message:
  -----------
  [libc++][type_traits] Applied `[[nodiscard]]` (#200760)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/type.traits


  Commit: f1c6c1a3de116fb273b25d5f9022c8d44ea72fb4
      https://github.com/llvm/llvm-project/commit/f1c6c1a3de116fb273b25d5f9022c8d44ea72fb4
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/mulwide.ll

  Log Message:
  -----------
  [NVPTX] Fix sext(shl nsw x, topbit) miscompile. (#200924)

Consider the following IR.

    i64 f(i32 %x) {
      %s = shl nsw i32 %x, 31
      %e = sext i32 %s to i64
      ret %e
    }

combineMulWide (renamed in this patch to combineSZExtToMulWide) rewrites
this into:

    mul.wide.s32 %dst, %x, -2147483648

The LLVM IR is only meaningful for %x == 0 or -1; all other inputs
result in poison. Therefore to check whether this rewrite is correct, we
just need to ask if it generates the correct output when %x is 0 and
when %x is -1.

  - When x == 0, IR and PTX both produce 0.  OK.
  - When x == -1:
    - IR produces sext(INT32_MIN), whereas
    - PTX produces sext(-1) * sext(INT32_MIN) = -sext(INT32_MIN)

Therefore the transformation is not correct.

This only happens when we're shifting by N-1 bits (where N is the narrow
integer width).  In other cases, the multiplier is positive and it works
fine.


  Commit: 45b3c4488fb59468fa5fb3637d5b9ecbd4f0c81e
      https://github.com/llvm/llvm-project/commit/45b3c4488fb59468fa5fb3637d5b9ecbd4f0c81e
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypesDetails.h
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDataLayout.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/bitfield-union.c
    M clang/test/CIR/CodeGen/bitfields.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    M clang/test/CIR/CodeGen/class.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/constant-inits.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/ctor.cpp
    M clang/test/CIR/CodeGen/cxx-abi-lowering-string-array.cpp
    M clang/test/CIR/CodeGen/destructors.cpp
    M clang/test/CIR/CodeGen/dumb-record.cpp
    M clang/test/CIR/CodeGen/dynamic-cast.cpp
    M clang/test/CIR/CodeGen/empty-union.c
    M clang/test/CIR/CodeGen/empty-union.cpp
    M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
    M clang/test/CIR/CodeGen/forward-decls.cpp
    M clang/test/CIR/CodeGen/global-dtor-union-narrowed.cpp
    M clang/test/CIR/CodeGen/inline-cxx-func.cpp
    M clang/test/CIR/CodeGen/member-functions.cpp
    M clang/test/CIR/CodeGen/mms-bitfields.c
    M clang/test/CIR/CodeGen/multi-vtable.cpp
    M clang/test/CIR/CodeGen/no-proto-fn-ptr-global-init.c
    M clang/test/CIR/CodeGen/no-unique-address.cpp
    M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
    M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
    M clang/test/CIR/CodeGen/record-type-metadata.cpp
    M clang/test/CIR/CodeGen/record-with-padded-union.cpp
    M clang/test/CIR/CodeGen/record-zero-init-padding.c
    M clang/test/CIR/CodeGen/struct.c
    M clang/test/CIR/CodeGen/template-specialization.cpp
    M clang/test/CIR/CodeGen/three-way-cmp.cpp
    M clang/test/CIR/CodeGen/union.c
    M clang/test/CIR/CodeGen/union.cpp
    M clang/test/CIR/CodeGen/var_arg.c
    M clang/test/CIR/CodeGen/variable-template-specialization.cpp
    M clang/test/CIR/CodeGen/vbase.cpp
    M clang/test/CIR/CodeGen/virtual-function-calls.cpp
    M clang/test/CIR/CodeGen/vtable-emission.cpp
    M clang/test/CIR/CodeGen/vtable-nyi-nonconvertible-functype.cpp
    M clang/test/CIR/CodeGen/vtt.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlvp2intersect-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vp2intersect-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
    M clang/test/CIR/CodeGenCXX/zero_init_bases.cpp
    M clang/test/CIR/IR/array-ctor.cir
    M clang/test/CIR/IR/array-dtor.cir
    M clang/test/CIR/IR/bitfield_info.cir
    M clang/test/CIR/IR/construct-catch-param.cir
    M clang/test/CIR/IR/copy.cir
    M clang/test/CIR/IR/dynamic-cast.cir
    M clang/test/CIR/IR/func-attrs.cir
    M clang/test/CIR/IR/func.cir
    M clang/test/CIR/IR/global-init.cir
    M clang/test/CIR/IR/invalid-array-structor.cir
    M clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/IR/invalid-const-record.cir
    M clang/test/CIR/IR/invalid-construct-catch-param.cir
    M clang/test/CIR/IR/invalid-data-member.cir
    M clang/test/CIR/IR/invalid-delete-array.cir
    M clang/test/CIR/IR/invalid-dyn-cast.cir
    M clang/test/CIR/IR/invalid-struct.cir
    M clang/test/CIR/IR/invalid-type-info.cir
    M clang/test/CIR/IR/invalid-vtable.cir
    M clang/test/CIR/IR/method-attr.cir
    M clang/test/CIR/IR/struct.cir
    M clang/test/CIR/IR/vtable-addrpt.cir
    M clang/test/CIR/IR/vtable-attr.cir
    M clang/test/CIR/IR/vtt-addrpoint.cir
    M clang/test/CIR/Lowering/struct.cir
    M clang/test/CIR/Lowering/vtt-addrpoint.cir
    M clang/test/CIR/Transforms/canonicalize-cleanup-scope.cir
    M clang/test/CIR/Transforms/cxx-abi-lowering-attrs.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-construct-catch-invalid.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-construct-catch.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-itanium.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-multi-exit.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-simple.cir
    M clang/test/CIR/Transforms/flatten-preserve-attrs.cir
    M clang/test/CIR/Transforms/flatten-throwing-in-cleanup.cir
    M clang/test/CIR/Transforms/flatten-try-op.cir
    M clang/test/CIR/Transforms/pure-ptr-arithmetic.cir
    M clang/unittests/CIR/PointerLikeTest.cpp
    M clang/unittests/CIR/RecordTypeMetadataTest.cpp
    M clang/unittests/CIR/UnionTypeSizeTest.cpp

  Log Message:
  -----------
  [CIR] Split RecordType into StructType/UnionType

Union tail padding was stored as the last element of the `members` array
with a `padded = true` flag. Every pass touching `RecordType` had to
special-case unions: skip the last member when iterating, call
`getLargestMember()` to find the storage type, check `isUnion()` before
almost every layout query. This spread union-specific logic across
`CIRTypes.cpp`, `LowerToLLVM.cpp`, `CXXABILowering.cpp`,
`CIRGenRecordLayoutBuilder.cpp`, and `CIRGenExpr.cpp`.

This PR moves union tail padding to a dedicated `padding` field on
`RecordTypeStorage` and introduces two C++ view classes: `UnionType` and
`StructType`, both subclassing `RecordType` via `classof`-based
dispatch. `mlir::dyn_cast<UnionType>` and `mlir::isa<StructType>` work
naturally.

`UnionType` owns the union-specific API: `getPadding()` returns the
tail-padding type (null if none), and `getUnionStorageType(DataLayout)`
returns the highest-alignment variant. `RecordType::getLargestMember()`
and the old `RecordType::getPadding()` (which returned the last member)
are removed.

The CIR text syntax for padded unions changes from `union "Name" padded
{members..., padType}` to `union "Name" padded {members...}, padding =
{padType}`, separating padding from the member list.

`CIRGenRecordLayoutBuilder::appendPaddingBytes` now routes union tail
padding to a new `unionPadding` field instead of appending to
`fieldTypes`. `LowerToLLVM` and `CXXABILowering` use the new `UnionType`
API directly.


  Commit: 22e13e71ed46f0d47f90ae5e6cea2956db892be3
      https://github.com/llvm/llvm-project/commit/22e13e71ed46f0d47f90ae5e6cea2956db892be3
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Options/FlangOptions.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Support/LangOptions.def
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/semantics.cpp
    A flang/test/Semantics/Inputs/device_modfile01_a.mod
    A flang/test/Semantics/device-modfile01.f90
    A flang/test/Semantics/device-modfile02.f90

  Log Message:
  -----------
  [Flang] Fix device-side module lookup (#200863)

When invoking flang with device-offloading (eg. `flang modfile.f90
-fopenmp --offload-arch=gfx90a`), it will invoke the frontend twice:
once for the host architecture, and a second time for the architecture
specified with `--offload-arch`. However, both frontend invocations are
going to write `modfile.mod` (or whatever the module name in
`modfile.f90`), and as a result the second one for gfx90a will be what
the file contains after the driver invocation returns. Until #171515
both version of the file were identical, but now both files are using a
different set of builtin modules. Since Flang's mod files store the
checksums of used module files in them, this can result in a checksum
mismatch error. For instance, modfile.mod being the gfx90a version, and
then using it to compile with `flang modfile.f90
--target=x86_64-linux-gnu`) will have a checksum mismath.

flang -fc1 host x86_64        --> modfile.mod --> lib/clang/23/finclude/flang/x86_64-linux-gnu/iso_fortran_env.mod
                                 /  /     \  \
flang -fc1 -foffload-device nvptx  /       \  lib/clang/23/finclude/flang/nvptx64-nvidia-cuda/iso_fortran_env.mod
                                  /         \
flang -fc1 -foffload-device amdgcn           lib/clang/23/finclude/flang/amdgcn-amd-amdhsa/iso_fortran_env.mod

We fix this by

1. Not overwriting the `--target` host module file with the
   `--offload-arch` module; the auxiliary target is the canonical version
   for its contents; and

2. Ignore checksum errors when using an intrinsic module during
   offloading. The device version should be compatible with the host
   version, just with definitions which the .mod file will eventually
   import from the intrinsic module at compile-time.


  Commit: f7fd7a17361ceb850a9c370df25777ba10519710
      https://github.com/llvm/llvm-project/commit/f7fd7a17361ceb850a9c370df25777ba10519710
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
    A llvm/test/MC/AArch64/LFI/tlsdesccall.s

  Log Message:
  -----------
  [LFI][AArch64] Emit .tlsdesccall with the associated blr (#200903)

This PR fixes an issue in the LFI control-flow rewrites if a blr is
marked with `.tlsdesccall`. The `.tlsdesccall` should be moved after
rewriting so that it is associated with the rewritten `blr`, rather than
the guard instruction.


  Commit: 015d0479b94ce48e431398813525a59a16c6e4eb
      https://github.com/llvm/llvm-project/commit/015d0479b94ce48e431398813525a59a16c6e4eb
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    A llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/TriggerCrashPass.cpp
    A llvm/test/Other/trigger-crash-flags.ll
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

  Log Message:
  -----------
  [LLVM] Add flags to crash the opt/codegen pipeline (#200967)

Will be used for testing crash reduction.


  Commit: c92353836fc9cccebe8af71b93bafb450d128505
      https://github.com/llvm/llvm-project/commit/c92353836fc9cccebe8af71b93bafb450d128505
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [DirectX] Disable DCE and DSE for -O0 (#192520)

These are optimisation passes which are inappropriate to run when the
user has requested no optimisations, and which make it more difficult to
write tests.

Co-authored-by: Andrew Savonichev <andrew.savonichev at gmail.com>


  Commit: 6d0b3fd88b60e23ff945b98f68b1607fb6f2fa5b
      https://github.com/llvm/llvm-project/commit/6d0b3fd88b60e23ff945b98f68b1607fb6f2fa5b
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/utils/instrumentor-config-wizard.py

  Log Message:
  -----------
  [Instrumentor] Improve the config wizard script (#199108)

This makes the config wizard script more generic as we grow
instrumentation opportunities. Better output, e.g., clear paths, are
also displayed now.

Prepared with Claude (AI) and tested by me afterwards.


  Commit: 62118b56a7482549b0c19adf3fdf724afbb959a6
      https://github.com/llvm/llvm-project/commit/62118b56a7482549b0c19adf3fdf724afbb959a6
  Author: idubinov <igor.dubinov at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp

  Log Message:
  -----------
  [NFC][SPIR-V] Fix unused-variable in SPIRVBuiltins (#200842)


  Commit: f9ae788567343e89f7cb9a9b18d1a43967baf7b3
      https://github.com/llvm/llvm-project/commit/f9ae788567343e89f7cb9a9b18d1a43967baf7b3
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    M clang/lib/Sema/HeuristicResolver.cpp

  Log Message:
  -----------
  [clang][HeuristicResolver] Handle non-dependent TemplateSpecializationType gracefully (#200714)

Fixes https://github.com/llvm/llvm-project/issues/197716


  Commit: ccd2606d0c30c58554cc11038a2160672ef529d5
      https://github.com/llvm/llvm-project/commit/ccd2606d0c30c58554cc11038a2160672ef529d5
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp
    M clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/friend-template.cpp
    M clang/test/SemaTemplate/instantiate-scope.cpp
    M clang/test/Templight/templight-default-func-arg.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [clang] fix getTemplateInstantiationArgs (#199528)

This implements a new strategy for collecting the template arguments, by
relying on the qualifiers and template parameter lists to navigate the
template context of out-of-line definitions.

This greatly simplifies the signature of that function, by removing a
bunch of workarounds, and simpliffying a couple that weren't removed
yet.

Since this now relies on qualifiers and template parameter lists, this
patch expends most of its effort making sure these are placed,
transformed and propagated to template instantiations.

Also makes the explicit specialization AST nodes stop abusing the
template parameter lists by storing it's own template parameter list,
creating a dedicated field for them, similar to partial specializations.

Fixes #101330


  Commit: a6255e47bfc5dad9729dc0e0c7d1cda65b52adf5
      https://github.com/llvm/llvm-project/commit/a6255e47bfc5dad9729dc0e0c7d1cda65b52adf5
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    R llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    R llvm/lib/Transforms/Utils/TriggerCrashPass.cpp
    R llvm/test/Other/trigger-crash-flags.ll
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

  Log Message:
  -----------
  Revert "[LLVM] Add flags to crash the opt/codegen pipeline" (#200977)

Reverts llvm/llvm-project#200967

Test failing on some buildbots:
https://lab.llvm.org/buildbot/#/builders/11/builds/41237


  Commit: ad6366d6cc417f504b4a7fe7ff14e12ae79d7346
      https://github.com/llvm/llvm-project/commit/ad6366d6cc417f504b4a7fe7ff14e12ae79d7346
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/Headers.h
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
    M clang-tools-extra/clangd/index/Ref.h
    M clang-tools-extra/clangd/index/SymbolID.h
    M clang-tools-extra/clangd/index/dex/Token.h
    M clang-tools-extra/clangd/index/dex/Trigram.h
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
    M clang/include/clang/AST/APValue.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTTypeTraits.h
    M clang/include/clang/AST/BaseSubobject.h
    M clang/include/clang/AST/CharUnits.h
    M clang/include/clang/AST/DeclID.h
    M clang/include/clang/AST/DeclarationName.h
    M clang/include/clang/AST/GlobalDecl.h
    M clang/include/clang/AST/NestedNameSpecifier.h
    M clang/include/clang/AST/Redeclarable.h
    M clang/include/clang/AST/TypeOrdering.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
    M clang/include/clang/Analysis/CallGraph.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    M clang/include/clang/Analysis/FlowSensitive/Formula.h
    M clang/include/clang/Analysis/ProgramPoint.h
    M clang/include/clang/Analysis/RetainSummaryManager.h
    M clang/include/clang/Basic/DirectoryEntry.h
    M clang/include/clang/Basic/FileEntry.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/Module.h
    M clang/include/clang/Basic/SourceLocation.h
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/DependencyScanning/DependencyGraph.h
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/Weak.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Tooling/Inclusions/StandardLibrary.h
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGObjCMacConstantLiteralUtil.h
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/Indexing.cpp

  Log Message:
  -----------
  [clang][clang-tools-extra] Remove unused DenseMapInfo::getTombstoneKey (#200634)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: dbab3f71775f6edd11546385aeddb9d0b053a2b5
      https://github.com/llvm/llvm-project/commit/dbab3f71775f6edd11546385aeddb9d0b053a2b5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-print-after-all.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions-vs-first-order-recurrences.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll

  Log Message:
  -----------
  [VPlan] Move IV predicate handling to VPlan. (#192876)


  Commit: 8ce6c5ff2c134414d8e1815bdc122699abd89954
      https://github.com/llvm/llvm-project/commit/8ce6c5ff2c134414d8e1815bdc122699abd89954
  Author: Yuta Nakamura <44285097+nakasan617 at users.noreply.github.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive in bugprone-use-after-move for std::tie (#192895)

std::tie(a, b) = expr reinitializes all variables passed to std::tie
because the tuple assignment operator writes back through the stored
references. The check was not recognizing this pattern, causing a false
positive on the second std::tie assignment in loops like:

  std::tie(a, b) = foo(std::move(a), std::move(b));
  std::tie(a, b) = foo(std::move(a), std::move(b)); // false positive

Add std::tie assignment as a reinitialization case in
makeReinitMatcher().

Fixes #136105.

---

**AI Disclosure:** Claude (Anthropic) was used to assist in diagnosing
the CI test failure and identifying the off-by-one line number in the
CHECK-NOTES.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
Co-authored-by: Zeyi Xu <mitchell.xu2 at gmail.com>


  Commit: 734012d9897c5b6a9157b8e3a8f8c38dd8ac63f4
      https://github.com/llvm/llvm-project/commit/734012d9897c5b6a9157b8e3a8f8c38dd8ac63f4
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    A llvm/test/CodeGen/RISCV/cmp-zilsd-csr.ll
    A llvm/test/CodeGen/RISCV/saverestore-zilsd-fixed-location.ll

  Log Message:
  -----------
  [RISCV] Disable Zilsd CSR-pair generation when push/pop or save-restore is enabled (#200623)

We were generating duplicate/worse code due to the generation of the
`Zilsd` load/store doubles for handling `CSR's` when `Zcmp/Xqccmp` or
`Save/Restore Libcalls` were enabled.


  Commit: ff2fec30ac7ca732aec032f45c7d300d04c1e7bf
      https://github.com/llvm/llvm-project/commit/ff2fec30ac7ca732aec032f45c7d300d04c1e7bf
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/MissingEndComparisonCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/MissingEndComparisonCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/missing-end-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/algorithm
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/iterator
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-custom.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx98.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison.cpp

  Log Message:
  -----------
  [clang-tidy] Add `bugprone-missing-end-comparison` check (#182543)

This PR introduces a new check `bugprone-missing-end-comparison`.

It detects instances where the result of a standard algorithm is used
directly in a boolean context without being compared against the
corresponding end iterator.

Currently the check can't handle algorithms returning `std::pair` and
`std::ranges::mismatch_result`, but it should be a good enough starting
point for future improvements.

As of AI-Usage: Assisted by Gemini CLI (for pre-commit reviewing,
documentation and some code refactor/cleanup)
Closes https://github.com/llvm/llvm-project/issues/178731

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: b3221413294c8cb1de20059b06021a5ab0d73b25
      https://github.com/llvm/llvm-project/commit/b3221413294c8cb1de20059b06021a5ab0d73b25
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.cpp
    M llvm/test/Transforms/SandboxVectorizer/load_store_vec.ll
    M llvm/test/Transforms/SandboxVectorizer/load_store_vec_mixed_types.ll

  Log Message:
  -----------
  [SandboxVec][LoadStoreVec][AMDGPU] Remove early reject of mixed types (#200523)

Up until now mixing floats and non-floats was disabled in the legality
checks. This patch changes this. We are now eagerly vectorizing mixed
types, but we are also checking the cost model to make sure we don't
regress on targets where this is expensive.


  Commit: c0e4fc8afeaf80e5acff8ec73b3d4ebac492a729
      https://github.com/llvm/llvm-project/commit/c0e4fc8afeaf80e5acff8ec73b3d4ebac492a729
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:

  Log Message:
  -----------
  [ORC] Simplify DylibManager::lookupSymbols, remove LookupRequest. (#195954)

DylibManager::lookupSymbols used to take an array of LookupRequests,
where each request specified a handle and list of symbols to lookup
within that handle.

This commit replaces the array of lookup requests with a single handle
and list of symbols passed directly to lookupSymbols.

In practice all clients were passing a singlton array anyway, and
simplifying this signature significantly simplifies implementations.


  Commit: a4e18dc2a2e300dd6b5e93225b050d852abb319d
      https://github.com/llvm/llvm-project/commit/a4e18dc2a2e300dd6b5e93225b050d852abb319d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutorResolutionGenerator.h

  Log Message:
  -----------
  [ORC] Fix header comment. NFC. (#200980)


  Commit: 5148d2de75ec49b7642dff033164e51b099f06c4
      https://github.com/llvm/llvm-project/commit/5148d2de75ec49b7642dff033164e51b099f06c4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/DynamicAllocator.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/unittests/AST/ByteCode/CMakeLists.txt
    A clang/unittests/AST/ByteCode/Pointer.cpp

  Log Message:
  -----------
  [clang][bytecode] Improve `getType()`  (#200342)

We previously often fell back to the type of the declaration, which is
wrong if we're pointing e.g. to a nested array.

Add a new unit test to vaildate this.


  Commit: fba43a5b8923ea4f1d526ff0180a33543b65bc59
      https://github.com/llvm/llvm-project/commit/fba43a5b8923ea4f1d526ff0180a33543b65bc59
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/Lowering/call-llvm-intrinsic.cir

  Log Message:
  -----------
  [CIR] Fix cir.call_llvm_intrinsic lowering for 0-result ops (#199516)

`cir.call_llvm_intrinsic` declares `Optional<CIR_AnyType>:$result`, but
the lowering indexed `op->getResultTypes()[0]` unconditionally and OOBed
on void calls.
Guard with `getNumResults()` and pick the void overload of
`LLVM::CallIntrinsicOp::create` in `createCallLLVMIntrinsicOp`.


  Commit: 7290d876ad409596fe232e20bc4e83706fc5c05b
      https://github.com/llvm/llvm-project/commit/7290d876ad409596fe232e20bc4e83706fc5c05b
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Implement lowering for __builtin_amdgcn_dispatch_ptr (#199880)

Port `emitAMDGPUDispatchPtr` from OGCG. Emits the `amdgcn.dispatch.ptr`
intrinsic and inserts an address-space cast when the builtin's expected
return type differs.


  Commit: 4cef4efb2fc088426b1d75435536fafa6b562617
      https://github.com/llvm/llvm-project/commit/4cef4efb2fc088426b1d75435536fafa6b562617
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
    M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    A llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
    M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
    M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
    A llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
    M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
    M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
    A llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
    M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll

  Log Message:
  -----------
  [llvm-debuginfo-analyzer] Add support for LLVM IR format. (#200603)

llvm-debuginfo-analyzer is a command line tool that processes debug
info contained in a binary file and produces a debug information
format agnostic “Logical View”, which is a high-level semantic
representation of the debug info, independent of the low-level format.

Add support for the LLVM IR format and be able to generate logical
views. Both textual representation (.ll) and bitcode (.bc) formats
are supported.

This relands https://github.com/llvm/llvm-project/pull/135440, which was
reverted in https://github.com/llvm/llvm-project/pull/199890.
It includes the fixes for the buildbots problems.


  Commit: f3bed426308372c70df7565095d6abaaab5d1aa6
      https://github.com/llvm/llvm-project/commit/f3bed426308372c70df7565095d6abaaab5d1aa6
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/AArch64/vector-splice-compress-mmo-align.ll

  Log Message:
  -----------
  [SelectionDAG] Don't over-claim alignment on vector splice/compress stack MMOs (#200622)

expandVectorSplice and expandVECTOR_COMPRESS allocate their scratch slot
on the stack with getReducedAlign, but the memory accesses they generate
touching this slot use the type's natural alignment, which may be
larger!


  Commit: adcd285fc4047759e4014d6568d80bb64589aded
      https://github.com/llvm/llvm-project/commit/adcd285fc4047759e4014d6568d80bb64589aded
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/mem_map_linux.cpp
    M compiler-rt/lib/scudo/standalone/report_linux.cpp
    M compiler-rt/lib/scudo/standalone/report_linux.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp

  Log Message:
  -----------
  [scudo] Return nullptr if a remap fails on linux. (#200537)

Add a check if a fixed address mmap doesn't return the expected address.

Allow a remap call to fail if the mmap fails and returns a nullptr to
the caller.

Fix a place where if remap fails in the secondary, it didn't do
anything. Now it will unmap the original entry on failure.


  Commit: 363fdc5895b55c8c4775149df832960f615d3839
      https://github.com/llvm/llvm-project/commit/363fdc5895b55c8c4775149df832960f615d3839
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp
    A llvm/test/Assembler/dilabel.ll

  Log Message:
  -----------
  [LLVM][IR] Make sure that DILabel's line is always printed (#200846)

This commit ensures that the textual IR of the DILabel always contains
the `line` information. This is required as the absence of a line causes
a parsing failure, i.e., this change fixes the print + parse roundtrip.


  Commit: 872e45be708bbe82424addcee26757697adc7a98
      https://github.com/llvm/llvm-project/commit/872e45be708bbe82424addcee26757697adc7a98
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/gfni-or-fold.ll

  Log Message:
  -----------
  [X86] Fold OR of constant splats into GF2P8AFFINEQB (#194330)

Fold OR of a constant byte splat into X86ISD::GF2P8AFFINEQB when the
affine matrix is known at compile time.

For bits forced to 1 by the OR mask, zero the corresponding matrix rows
(in reverse row order within each 64-bit lane) and set the same bits in
the immediate. This turns:

  gf2p8affineqb(x, M, imm) | C

into:

  gf2p8affineqb(x, M & KeepMask, imm | C)

where KeepMask clears the rows for output bits selected by C.

This removes a separate OR after GF2P8AFFINEQB for constant-matrix cases
and extends the existing GFNI combine coverage beyond XOR folds.

Fixes: https://github.com/llvm/llvm-project/issues/191173


  Commit: d046ee42e576f9fa6f8e3b57bfe9d6c574ab1708
      https://github.com/llvm/llvm-project/commit/d046ee42e576f9fa6f8e3b57bfe9d6c574ab1708
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-06-01 (Mon, 01 Jun 2026)

  Changed paths:
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  workflows/upload-release-artifact: Fix typo introduced in 01cfbaabef6cb59a1a6eb870bf5f48ac2e747118 (#200730)


  Commit: 9547e0f5960bb1021112c5a373217c209b6b4014
      https://github.com/llvm/llvm-project/commit/9547e0f5960bb1021112c5a373217c209b6b4014
  Author: Carlos Alberto Enciso <Carlos.Enciso at sony.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
    M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    R llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
    M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
    M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
    R llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
    R llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
    M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
    M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
    R llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
    M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
    R llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
    R llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll

  Log Message:
  -----------
  Revert "[llvm-debuginfo-analyzer] Add support for LLVM IR format. (#200603)" (#201019)

This reverts commit 4cef4efb2fc088426b1d75435536fafa6b562617.

There are link issues with some buildbots.


  Commit: 622302e847858a7a8ca5f2b360c67d7647689cc9
      https://github.com/llvm/llvm-project/commit/622302e847858a7a8ca5f2b360c67d7647689cc9
  Author: Jerry Zhang Jian <jerry.zhangjian at sifive.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVIndirectBranchTracking.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/test/CodeGen/RISCV/lpad-setjmp-isel.ll
    A llvm/test/CodeGen/RISCV/lpad-setjmp-no-cfp.ll
    A llvm/test/CodeGen/RISCV/lpad-setjmp.ll
    M llvm/test/CodeGen/RISCV/lpad.ll

  Log Message:
  -----------
  [RISCV] Ensure LPAD alignment for calls to returns_twice functions (#177515)

When Zicfilp is enabled, all LPAD instructions must be 4-byte aligned,
including those following a returns_twice call. Linker relaxation can
convert calls to c.jal (RV32C) or cm.jalt (Zcmt), causing LPAD
misalignment.

This patch handles calls to returns_twice functions (e.g., setjmp) when
Zicfilp CFI is enabled:

1. In ISel (LowerCall), detect
CLI.CB->hasFnAttr(Attribute::ReturnsTwice)
   and select LPAD_CALL or LPAD_CALL_INDIRECT ISD opcodes. Custom ISel
   in RISCVISelDAGToDAG adds the landing pad label as a pseudo operand.

2. RISCVAsmPrinter::emitLpadAlignedCall handles assembly output: when
Zca
is enabled, emit .p2align 2 before the call. When linker relaxation is
   also enabled, wrap with .option push/exact/pop to prevent relaxation.
   The LPAD instruction is emitted immediately after the call.

3. RISCVMCCodeEmitter::expandFunctionCallLpad handles object output:
expands the pseudo to AUIPC+JALR+LPAD (direct) or JALR+LPAD (indirect),
   without R_RISCV_RELAX relocation.

Note: Both AsmPrinter and MCCodeEmitter need separate expansion logic
because GNU assembler doesn't yet support call.lpad/jalr.lpad syntax.

4. RISCVIndirectBranchTracking no longer needs to scan for returns_twice
   calls since LPAD is now emitted directly by the pseudo expansion.

The existing lpad.ll test is updated to add cf-protection-branch module
flag, as the test_returns_twice function was intended to test
CFI-enabled
behavior. Without this flag, LPAD insertion after setjmp would not be
triggered.

Known issue: When Large Code Model and Zicfilp are both enabled, direct
calls to returns_twice functions use SW_GUARDED_CALL which takes
priority
over LPAD_CALL. This combination is not yet handled and will be
addressed
in a follow-up patch.

Signed-off-by: Jerry Zhang Jian <jerry.zhangjian at sifive.com>


  Commit: b8e768f6ae95343ac542b195265572ecd063fc2b
      https://github.com/llvm/llvm-project/commit/b8e768f6ae95343ac542b195265572ecd063fc2b
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/cmake/caches/release_cpack_pre_build_strip_lto.cmake

  Log Message:
  -----------
  [CMake][Release] Use llvm-bitcode-strip on Darwin for build with -ffat-lto-objects (#200764)

Building with --fat-lto-objects was added in #140381 (cff9ae7a15a5). On
macOS the tests are failing when building release binaries with many
"The file was not recognized as a valid object file" errors, e.g.:

  2026-01-16T12:54:26.0928880Z

/Users/runner/work/llvm-project/llvm-project/build/tools/clang/stage2-instrumented-bins/tools/clang/stage2-bins/_CPack_Packages/Darwin/TXZ/LLVM-22.1.0-rc1-macOS-ARM64/bin/llvm-strip:
  error:

'/Users/runner/work/llvm-project/llvm-project/build/tools/clang/stage2-instrumented-bins/tools/clang/stage2-bins/_CPack_Packages/Darwin/TXZ/LLVM-22.1.0-rc1-macOS-ARM64/lib/libLLVMAArch64AsmParser.a(AArch64AsmParser.cpp.o)':
  The file was not recognized as a valid object file

It's assuming bitcode is embedded in section .llvm.lto
(llvm/lib/Object/ObjectFile.cpp:80) but on MachO it's in
__LLVM,__bitcode (llvm/lib/Object/MachOObjectFile.cpp:2184)

llvm-bitcode-strip is a driver for the MachO bitcode_strip utility which
handles this. Use this instead.

Fixes #176398.

Assisted-by: codex


  Commit: c4484e8422745ab8c1ada25a6bda5d69ef8da924
      https://github.com/llvm/llvm-project/commit/c4484e8422745ab8c1ada25a6bda5d69ef8da924
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen] De-type getMinimalPhysRegClass and related APIs (#197495)

Follow-up #193438 to de-type getMinimalPhysRegClass so it can be replaced with
the precomputed getDefaultMinimalPhysRegClass. Type is also removed from
related APIs.

There's very few uses of getMinimalPhysRegClass with a non-default type
(MVT::Other) and none at all for getCommonMinimalPhysRegClass. Rather than
trying to also handle the type when precomputing at compile-time it seems
better to remove the type altogether and simplify the APIs. This also improves
compile-time for a number of targets and configurations:

CTMark geomean:
- stage1-O3: -0.23%
- stage1-ReleaseThinLTO: -0.19%
- stage1-ReleaseLTO-g: -0.15%
- stage1-aarch64-O3: -0.57%
- stage2-O3: -0.23%
- clang: -0.13%

https://llvm-compile-time-tracker.com/compare.php?from=eae0b6b2498305ee29dc85a405ede9ccdc10ce7d&to=08c052a2db407d2a21d468001fd2035d3720acf7&stat=instructions%3Au

Assisted-by: codex


  Commit: bb20724ecb743be0d67270934830510f0149ed15
      https://github.com/llvm/llvm-project/commit/bb20724ecb743be0d67270934830510f0149ed15
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/test/CodeGen/X86/ifma-combine-vpmadd52.ll
    M llvm/test/CodeGen/X86/slow-pmullq.ll

  Log Message:
  -----------
  [X86] Move Non-VLX handling for VPMADD52 instructions entirely into tablegen (#200800)

Just widen v2i64/v4i64 cases to v8i64

Removes more VLX/NoVLX testing from DAG


  Commit: b3438c9af04b2ccf13b0adb6faf5e1fa0e3fb585
      https://github.com/llvm/llvm-project/commit/b3438c9af04b2ccf13b0adb6faf5e1fa0e3fb585
  Author: Jiahao Guo <eoonguo at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/IR/invalid-lifetime.cir
    A clang/test/CIR/IR/lifetime.cir
    A clang/test/CIR/Lowering/lifetime.cir

  Log Message:
  -----------
  [CIR] Add cir.lifetime.start and cir.lifetime.end Op (#199599)

### summary

Adds the `cir.lifetime.start` and `cir.lifetime.end` ops, which mark the
beginning and end of an alloca's live range. They mirror the LLVM
intrinsics `llvm.lifetime.start` / `llvm.lifetime.end`


  Commit: c22474fc02c1c26c81577d4cc147ed3b7c04a079
      https://github.com/llvm/llvm-project/commit/c22474fc02c1c26c81577d4cc147ed3b7c04a079
  Author: Abhinav Pradeep <abhinav.pradeep at oracle.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/test/Sema/warn-lifetime-safety-lifetimebound.cpp

  Log Message:
  -----------
  [LifetimeSafety] Prevent false-negative lifetimebound verification when origin escapes in an unrelated manner (#200786)

This PR removes a false-negative `[[lifetimebound]]` verification result
that occurs when the annotated attribute escapes via unrelated origin
escape kinds (escape through global, escape through field).

Change summary:
- `Checker.cpp` has function `checkAnnotations` which checks if an
escaping `Origin` was an annotated parameter. Modified the logic there
to only verify `[[lifetimebound]]` in the case that the escape was
through a return statement.

Fixes #200412

---------

Signed-off-by: Abhinav Pradeep <abhinav.pradeep at oracle.com>


  Commit: 6f44c750a1987b050490f9655dc88c0145a44813
      https://github.com/llvm/llvm-project/commit/6f44c750a1987b050490f9655dc88c0145a44813
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/math-libcalls-tbaa.c

  Log Message:
  -----------
  [clang][CodeGen] Drop TBAA metadata emission on FP libcalls (#200752)

TBAA annotation on FP libcalls has been superseded by
recently-introduced `llvm.errno.tbaa` module-level metadata.


  Commit: 114e135010ba92afd87462dd120f865b83f966b3
      https://github.com/llvm/llvm-project/commit/114e135010ba92afd87462dd120f865b83f966b3
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h

  Log Message:
  -----------
  [lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::ivar_t API (#201042)


  Commit: a6a5bfc12f25de87815995d08e7d4f14477764ca
      https://github.com/llvm/llvm-project/commit/a6a5bfc12f25de87815995d08e7d4f14477764ca
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/memory-attr.ll

  Log Message:
  -----------
  [LoopInterchange] Prevent interchange when memory-accessing calls exist (#200828)

Previously loop-interchange can be applied even though the loop has call
instructions which may access the memory. The root cause of this problem
is that the implementation didn't match the comment, like below:

```cpp
        // readnone functions do not prevent interchanging.
        if (CI->onlyWritesMemory() || isa<PseudoProbeInst>(CI))
          continue;
```

However, I think ensuring `readnone` is insufficient in the first place,
because the LLVM Language Reference states about `readnone` as follows:

```
This attribute indicates that the function does not dereference that pointer argument, even though it may read or write the memory that the pointer points to if accessed through other pointers.
```

So, this patch fixes the issue by verifying that all the calls in the
loop have the `memory(none)` attribute. We could probably check that all
the arguments of the calls have `readnone`, but I believe just calling
`doesNotAccessMemory` is simpler and sufficient in practical cases
(though I haven't actually checked).

Fixes #200796.


  Commit: 9c63a7e92616b96239b6687f229a15776572b5cb
      https://github.com/llvm/llvm-project/commit/9c63a7e92616b96239b6687f229a15776572b5cb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/convert_functions.ll

  Log Message:
  -----------
  [SPIR-V] Fix inverted signed/unsigned opcode for int-to-int convert builtins (#200791)


  Commit: e174a520b21103890ebc7367952202914b2baf88
      https://github.com/llvm/llvm-project/commit/e174a520b21103890ebc7367952202914b2baf88
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode] Reject invalid UETT_OpenMPRequiredSimdAlign nodes (#200997)


  Commit: 0a758f9356138e327134a9aea2d760a50c49a419
      https://github.com/llvm/llvm-project/commit/0a758f9356138e327134a9aea2d760a50c49a419
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/GVN.h
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/test/Analysis/TypeBasedAliasAnalysis/gvn-nonlocal-type-mismatch.ll
    M llvm/test/Transforms/GVN/PRE/load-metadata.ll
    M llvm/test/Transforms/GVN/PRE/lpre-call-wrap.ll
    M llvm/test/Transforms/GVN/PRE/phi-translate-2.ll
    M llvm/test/Transforms/GVN/PRE/phi-translate-add.ll
    M llvm/test/Transforms/GVN/PRE/phi-translate.ll
    M llvm/test/Transforms/GVN/PRE/pre-after-rle.ll
    M llvm/test/Transforms/GVN/PRE/pre-aliasning-path.ll
    M llvm/test/Transforms/GVN/PRE/pre-load-combine-metadata.ll
    M llvm/test/Transforms/GVN/PRE/pre-load-dbg.ll
    M llvm/test/Transforms/GVN/PRE/pre-load-guards.ll
    M llvm/test/Transforms/GVN/PRE/pre-load-implicit-cf-updates.ll
    M llvm/test/Transforms/GVN/PRE/pre-load.ll
    M llvm/test/Transforms/GVN/PRE/pre-single-pred.ll
    M llvm/test/Transforms/GVN/PRE/preserve-tbaa.ll
    M llvm/test/Transforms/GVN/PRE/rle-addrspace-cast.ll
    M llvm/test/Transforms/GVN/PRE/rle-semidominated.ll
    M llvm/test/Transforms/GVN/PRE/rle.ll
    M llvm/test/Transforms/GVN/nonescaping.ll
    M llvm/test/Transforms/GVN/pr14166.ll
    M llvm/test/Transforms/GVN/readattrs.ll
    M llvm/test/Transforms/GVN/setjmp.ll
    M llvm/test/Transforms/GVN/tbaa.ll
    M llvm/test/Transforms/GVN/vscale.ll

  Log Message:
  -----------
  [GVN] MemorySSA for GVN: eliminate redundant loads via MemorySSA (#152859)

Introduce the main algorithm performing redundant load elimination via
MemorySSA in GVN. The entry point is `findReachingValuesForLoad`, which,
given as input a possibly redundant load `L`, it attempts to provide as
output a set of reaching memory values (`ReachingMemVal`), i.e., which
values (defs or equivalent reads) can reach `L` along at least one path
where that memory location is not modified meanwhile (if non-local, PRE
will establish whether the load may be eliminated).

Specifically, a reaching value may be of the following descriptor kind
(`DepKind`):
* Def: found a new instruction that produces exactly the bits the load
would read. For example, a must-alias store (which defines the load
memory location), or a must-alias read (exactly reads the same memory
location, found, e.g., after a phi-translation fixup);
* Clobber: found a write that clobbers a superset of the bits the load
would read. For example, a memset call over a memory region, whose value
read overlaps such a region (and may be forwarded to the load), or a
generic call clobbering the load that cannot be reused;
* Other: a precise instruction could not be found, but know the block
where the dependency exists (e.g., a memory location already live at
function entry).

We start off by looking for the users of the defining memory access of
the given load within the same block, searching for local dependencies.
We may need to iteratively follow the use-def chain of the defining
memory access to find the actual clobbering access, while staying within
the scope of the load. If an actual local def/clobber (or liveOnEntry)
is found, we are done and return that one. Otherwise, we move visiting
the predecessors of the load's block, considering the incoming value
from the MemoryPhi as a potential clobbering access. Hence, we search
for dependencies within the predecessor block itself. If the new
potential clobbering access is a MemoryPhi, we continue visiting the
transitive closure of the predecessor, recording its new potential
clobbering access. In this phase, as we are exploring non-local
definitions, the load itself may be considered a must-alias def as well
when being examined from a backedge path.

Co-authored-by: Momchil Velikov <momchil.velikov at arm.com>


  Commit: b0e72b7c3f240cdc7e20eb6692d4662e7315bbc6
      https://github.com/llvm/llvm-project/commit/b0e72b7c3f240cdc7e20eb6692d4662e7315bbc6
  Author: markyang92 <80628866+markyang92 at users.noreply.github.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/CMakeLists.txt
    M clang/utils/perf-training/lit.site.cfg.in

  Log Message:
  -----------
  [clang][cmake] Move perf-training out of CLANG_INCLUDE_TESTS (#192163)

perf-training defines the generate-profdata target used by the PGO
bootstrap build.
However, it is currently enabled only when CLANG_INCLUDE_TESTS=ON.
For distribution builds such as Yocto/OE, tests are usually disabled by
setting this to OFF.

But perf-training is a PGO utility, not a test target, and it is
currently gated by that block.
As a result, generate-profdata is unavailable to the PGO bootstrap build
when
CLANG_INCLUDE_TESTS=OFF.

Move perf-training out of the CLANG_INCLUDE_TESTS block.

This is safe because utils/perf-training/CMakeLists.txt adds targets
only when
LLVM_BUILD_INSTRUMENTED or CLANG_BOLT is enabled, so moving it out does
not add
any targets unless PGO or BOLT is actually in use.

Also fix the path in lit.site.cfg.in for standalone builds.
When llvm_src_dir is set from CMAKE_SOURCE_DIR, standalone clang builds
end up
using the clang source directory instead of the LLVM source directory.
Set it to the proper LLVM source location instead.

Assisted-by: claude


  Commit: 0a52250e27e87b6b29492fc5223f9634acb948b1
      https://github.com/llvm/llvm-project/commit/0a52250e27e87b6b29492fc5223f9634acb948b1
  Author: 陈子昂 <2802328816 at qq.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/strided-access-wide-stride.ll

  Log Message:
  -----------
  [LV][RISCV] Add crash test for wide pointer stride in convertToStridedAccesses (#200985)

Pre-commit test for https://github.com/llvm/llvm-project/issues/199640.
The test demonstrates a crash when the pointer stride exceeds the
canonical IV type (i32) range. To be updated by #199647.


  Commit: edeffec62d462e0d162c6bcb41050c9afe192815
      https://github.com/llvm/llvm-project/commit/edeffec62d462e0d162c6bcb41050c9afe192815
  Author: Zhige Chen <zhige_chen at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/test/tools/llubi/controlflow.ll
    A llvm/test/tools/llubi/global.ll
    A llvm/test/tools/llubi/global_constant_store.ll
    A llvm/test/tools/llubi/global_constexpr_initializer.ll
    A llvm/test/tools/llubi/global_external.ll
    M llvm/tools/llubi/lib/Context.cpp
    M llvm/tools/llubi/lib/Context.h
    M llvm/tools/llubi/lib/ExecutorBase.cpp
    M llvm/tools/llubi/lib/Interpreter.cpp
    M llvm/tools/llubi/lib/Value.cpp
    M llvm/tools/llubi/lib/Value.h
    M llvm/tools/llubi/llubi.cpp

  Log Message:
  -----------
  [llubi] Global variables with simple initializers and global-address constants (#200547)

This PR implements global variables with simple initializers and
global-address constants. Support for constant expressions, alias, etc.,
are left for future PRs.


  Commit: 88e96462dec6f3bbab7901a85b33bd15d4df6736
      https://github.com/llvm/llvm-project/commit/88e96462dec6f3bbab7901a85b33bd15d4df6736
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add handling for scalar sqabs intrinsic (#200222)

sqabs is a neon intrinsic, so can only be performed on vector register
banks. To handle intrinsic properly, coerce regbankselection to put
sqabs on fpr banks.


  Commit: 32c7aaa3326f920cafd8474c6d5774ed5c0b3558
      https://github.com/llvm/llvm-project/commit/32c7aaa3326f920cafd8474c6d5774ed5c0b3558
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll

  Log Message:
  -----------
  Remove an invalid FIXME in a MemCpyOpt test (#200809)

Call slot optimization explicitly [requires `writable` and `noalias`][0]
when the destination is an argument, and `sret` doesn't imply any of
these.

So the `memcpy` into the return value pointer cannot be optimized away
in this test.

The test for doing this optimization when the `sret` argument is also
`writable` and `noalias` is [here][1].

Relevant commits:

- 369c9b791bc3f380e884bcad444287998c32ae16 requires writability in call
slot optimization and adds the `writable` attribute in the test linked
above, which already has `sret`, so that it optimizes as before. So
`sret` does not imply `writable`.

- f445e39ab271d07733f0f45048badd9e58905aec updates `isWritable` used in
the commit above to check for `noalias` on arguments before concluding
"writable".

The FIXME should probably have been removed with one of these commits.

[0]:
https://github.com/llvm/llvm-project/blob/356d7e6bf429a7ff3ae798bb994631ef33891a44/llvm/lib/Analysis/AliasAnalysis.cpp#L1009-L1019

[1]:
https://github.com/llvm/llvm-project/blob/356d7e6bf429a7ff3ae798bb994631ef33891a44/llvm/test/Transforms/MemCpyOpt/sret.ll#L9


  Commit: ecf8b039e5e80a609a4446b29e83600062179cc6
      https://github.com/llvm/llvm-project/commit/ecf8b039e5e80a609a4446b29e83600062179cc6
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp

  Log Message:
  -----------
  [AMDGPU] Recompute EXEC liveness in SIWholeQuadMode::toExact (#200866)

This is required as stale liveness information can lead to an incorrect
optimization in `SIOptimizeExecMaskingPreRA`. For example, when `hi16`
is removed from EXEC, `optimizeElseBranch` produces an incorrect result
by removing `S_AND`.

This is caused by the following code:

```c++
  SlotIndex StartIdx = LIS->getInstructionIndex(SaveExecMI);
  SlotIndex EndIdx = LIS->getInstructionIndex(*AndExecMI);
  for (MCRegUnit Unit : TRI->regunits(ExecReg)) {
    LiveRange &RegUnit = LIS->getRegUnit(Unit);
    if (RegUnit.find(StartIdx) != std::prev(RegUnit.find(EndIdx)))
      return false;
  }
```

When `hi16` is available there are two `RegUnit`s, one for `hi16` and
one for `lo16`. In the case of `wqm.ll` test it produces two live
ranges:

```
0: [320r,320d:3)[368r,368d:2)[736r,736d:4)[832r,832d:1)[944r,944d:0) 0 at 944r 1 at 832r 2 at 368r 3 at 320r 4 at 736r
1: [12r,12d:1)[320r,320d:5)[368r,368d:4)[736r,736d:6)[744r,744d:0)[832r,832d:3)[944r,944d:2) 0 at 744r 1 at 12r 2 at 944r 3 at 832r 4 at 368r 5 at 320r 6 at 736r
```

When `hi16` is removed there is only one range:

```
0: [320r,320d:3)[368r,368d:2)[736r,736d:4)[832r,832d:1)[944r,944d:0) 0 at 944r 1 at 832r 2 at 368r 3 at 320r 4 at 736r
```

If only the first range is considered the loop will finish without
returning false and continue to remove `S_AND`. It is because EXEC
register for `S_AND` added by `SIWholeQuadMode::toExact` is not in the
range. This is incorrect.

When `hi16` is present the incorrect behavior is masked by the second
live range coming from `hi16`, causing the loop to return. This can be
most likely explained by the fact that `hi16` is only computed after the
new `S_AND` was added so contains more up to date information. Removing
EXEC from `LiveIntervals` forces the live range to be recomputed.


  Commit: 2fc8a3e84ec08659e33b63e91f1d9b4be0890cfc
      https://github.com/llvm/llvm-project/commit/2fc8a3e84ec08659e33b63e91f1d9b4be0890cfc
  Author: Elvina Yakubova <eyakubova at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    A bolt/test/AArch64/veneer-erratum-843419.s

  Log Message:
  -----------
  [BOLT][AArch64] Eliminate e843419 veneers (#187955)

Detect and eliminate A53 843419 errata veneers with the drop-cortex-a53-843419-veneers option.


  Commit: 7d62e753bb9ef0c21d1be9d155e4f6456391a406
      https://github.com/llvm/llvm-project/commit/7d62e753bb9ef0c21d1be9d155e4f6456391a406
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/test/API/functionalities/thread/jump/TestThreadJump.py

  Log Message:
  -----------
  [lldb][test] Disable part of TestThreadJump.py on WoA (#201074)

See https://github.com/llvm/llvm-project/issues/201068.


  Commit: 4cfbf8ec82cb7e6f06c3f382a1b4ec082bd42b18
      https://github.com/llvm/llvm-project/commit/4cfbf8ec82cb7e6f06c3f382a1b4ec082bd42b18
  Author: Kshitij Paranjape <kshitijvparanjape at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
    M llvm/test/Transforms/LoopVectorize/single-early-exit-deref-assumptions.ll
    M llvm/test/Transforms/SimplifyCFG/speculate-derefable-load.ll

  Log Message:
  -----------
  [ValueTracking] Conservative NoSync check prevents vectorization (#199002)

Conservative nosync check in ValueTracking.cpp returns false causing
potentially faulting load preventing vectorization. Instead check if any
instructions betweenAssume Instruction and Ctx Instruction are synchronizing.

Fixes #180180.


  Commit: 924388cd4bffe04cd6f191da0cd7015a19c673ef
      https://github.com/llvm/llvm-project/commit/924388cd4bffe04cd6f191da0cd7015a19c673ef
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt

  Log Message:
  -----------
  [libc] Add sys/sendfile.h to the public header list (#201062)


  Commit: 4b212e5418097e31b13ab51dd9574c8cc6a3fdab
      https://github.com/llvm/llvm-project/commit/4b212e5418097e31b13ab51dd9574c8cc6a3fdab
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-metadata.ll

  Log Message:
  -----------
  [VPlan] Propagate interleave-group metadata to narrowed wide load/store. (#199356)

VPInterleaveRecipe now carries the common metadata valid for all members
and as such hold for any member. Propagate it to narrowed load and
stores.

PR: https://github.com/llvm/llvm-project/pull/199356


  Commit: c3ea53cd814abd924fd004357f357823b180ace8
      https://github.com/llvm/llvm-project/commit/c3ea53cd814abd924fd004357f357823b180ace8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/interleaved_cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs-02.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/mem-interleaving-costs.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/handle-iptr-with-data-layout-to-not-assert.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f64-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-half.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-2-indices-0u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3-indices-01u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3-indices-0uu.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-012u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-01uu.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-0uuu.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i64-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-interleaved-load-i16.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/masked-interleaved-store-i16.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/strided-load-i16.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/strided-load-i32.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/strided-load-i64.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/strided-load-i8.ll
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/x86-loopvectorize-costmodel.ll
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/Inputs/x86-loopvectorize-costmodel.ll.expected
    M llvm/test/tools/UpdateTestChecks/update_analyze_test_checks/loopvectorize-costmodel.test

  Log Message:
  -----------
  [VPlan] Don't print interleave group insert position. (#200023)

This patch updates interleave group printing to drop the insert
position. It does not add any information (the position of the
interleave group is determined by the position in VPlan), and for stores
we currently were printing <badref> anyways (trying to print a value
with void type).

PR: https://github.com/llvm/llvm-project/pull/200023


  Commit: bae4566a422cba33fb41a072320b36fb51cb67ee
      https://github.com/llvm/llvm-project/commit/bae4566a422cba33fb41a072320b36fb51cb67ee
  Author: Amit Kumar Pandey <pandey.kumaramit2023 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][sanitizer_common] Generalize CheckNoDeepBind as OnDlOpen (#200748)

Rename the dlopen pre-check hook to OnDlOpen so platform-specific dlopen
handling can be extended beyond the RTLD_DEEPBIND guard on Linux.
Windows and macOS keep no-op implementations. All dlopen interceptors
call the shared hook.


  Commit: bbc8fcb0e850984efa54eb815717f7ab905c4c05
      https://github.com/llvm/llvm-project/commit/bbc8fcb0e850984efa54eb815717f7ab905c4c05
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/reduction-with-invariant-store.ll

  Log Message:
  -----------
  [VPlan] Fix assertion when VPReductionPHIRecipe is simplified (#201023)

When replacing an invariant store of a reduction, we assert that the
stored value is the backedge value. However in some cases the
VPReductionPHIRecipe may be simplified away completely, so account for
this.

Fixes #201020
Fixes #200742


  Commit: 969f6415b69cce63e98c19a03e8940b89cd8b285
      https://github.com/llvm/llvm-project/commit/969f6415b69cce63e98c19a03e8940b89cd8b285
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.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/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/vplan-incomplete-cases.ll

  Log Message:
  -----------
  [VPlan] Replace VPTypeAnalysis with VPValue::getScalarType. (NFC) (#200256)

Now that all VPValues have their scalar type set at construction,
replace calls to VPTypeAnalysis::inferScalarType with direct calls to
VPValue::getScalarType, and remove the no-longer-needed VPTypeAnalysis
members from VPCostContext and VPTransformState. Also remove the
getScalarTypeOrInfer fallback helper.

Depends on https://github.com/llvm/llvm-project/pull/200255 

PR: https://github.com/llvm/llvm-project/pull/200256


  Commit: 238bd57ccc283a3dec84afcd0b092b4e7a378491
      https://github.com/llvm/llvm-project/commit/238bd57ccc283a3dec84afcd0b092b4e7a378491
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td

  Log Message:
  -----------
  [AArch64][TG] Migrate AArch64 backend from !cond to !switch(NFC) (#200949)

Making exact matches more compact. The \!switch operator has been
introduced by: https://github.com/llvm/llvm-project/pull/199659


  Commit: f341dab9edfa97d7a4a01f9bc0fe981055dc5cc9
      https://github.com/llvm/llvm-project/commit/f341dab9edfa97d7a4a01f9bc0fe981055dc5cc9
  Author: Ming-Yi Lai <ming-yi.lai at mediatek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/test/CodeGen/RISCV/riscv-cf-protection.c

  Log Message:
  -----------
  [clang][RISCV][Zicfilp] Force user to use `-mcf-branch-label-scheme=unlabeled` (#152122)

Expected Behavior:

When `-fcf-protection=branch|full` is specified, it's an error to omit
`-mcf-branch-label-scheme=unlabeled`.

Context:

When using forward-edge control flow integrity feature based on the
RISC-V Zicfilp extension, the `-mcf-branch-label-scheme` option selects
the encoding scheme used in the landing pad labels. The spec defines 2
schemes: `func-sig` and `unlabeled`, with the former specified as the
default. However the `func-sig` backend is still under active
development and won't land anytime soon; in the meanwhile, the
`unlabeled` scheme almost has complete support in the toolchain now.

Given that Clang currently accepts and defaults to
`-mcf-branch-label-scheme=func-sig` but doesn't work correctly, we want
to formally forbid the user from using
`-mcf-branch-label-scheme=func-sig` for now until the `func-sig` scheme
is properly supported. We choose to do so by forcing the user to specify
`-mcf-branch-label-scheme=unlabeled` (instead of changing the default to
`unlabeled`) so the default of `func-sig` can be retained according to
the spec and build scripts targeting the current Clang can be
forward-compatible with the Clang that supports the complete `func-sig`
scheme.


  Commit: 016f53e2df9dae2177623d369eb5a1373fa6dc3c
      https://github.com/llvm/llvm-project/commit/016f53e2df9dae2177623d369eb5a1373fa6dc3c
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-access-wide-stride.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses-narrow-iv.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-cost.ll

  Log Message:
  -----------
  [VPlan] Use pointer index type for stride in convertToStridedAccesses (#199647)

The type of StrideInBytes should be index type, not the canonical IV
type. When the type of canonical IV is narrower than index type (e.g.,
i32 canonical IV on a RV64), using CanonicalIVType for stride may cause
crash.

The assertion failure in SelectionDAG was a secondary symptom, and the
root cause is a semantic mismatch in the stride type.

Fixes #199509


  Commit: 67aaa03dac582b5ccf65776e449eb6c7517eb11c
      https://github.com/llvm/llvm-project/commit/67aaa03dac582b5ccf65776e449eb6c7517eb11c
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M mlir/docs/Dialects/LLVM.md
    M mlir/docs/LangRef.md
    A mlir/docs/Tokens.md
    M mlir/docs/Traits/_index.md
    M mlir/include/mlir/Dialect/Async/IR/Async.h
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/include/mlir/IR/BuiltinTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/include/mlir/IR/OpBase.td
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/lib/AsmParser/TokenKinds.def
    M mlir/lib/AsmParser/TypeParser.cpp
    M mlir/lib/Conversion/AsyncToLLVM/AsyncToLLVM.cpp
    M mlir/lib/Dialect/Async/IR/Async.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncRuntimeRefCounting.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncToAsyncRuntime.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/IR/Verifier.cpp
    M mlir/lib/Target/LLVMIR/TypeFromLLVM.cpp
    M mlir/lib/Target/LLVMIR/TypeToLLVM.cpp
    M mlir/test/Conversion/AsyncToLLVM/convert-coro-to-llvm.mlir
    M mlir/test/Dialect/ArmSME/invalid.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
    M mlir/test/Dialect/Builtin/Bytecode/types.mlir
    M mlir/test/Dialect/LLVMIR/types.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/MemRef/invalid.mlir
    M mlir/test/Dialect/SparseTensor/invalid.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/traits.mlir
    M mlir/test/IR/operand.mlir
    M mlir/test/IR/result.mlir
    A mlir/test/IR/token-type.mlir
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/mlir-tblgen/predicate.td
    M mlir/test/mlir-tblgen/types.mlir
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp

  Log Message:
  -----------
  [mlir][IR] Add builtin `TokenType` (#195640)

Introduces a new parameterless, opaque, builtin SSA value type,
`!token`. A token cannot appear in a value-forwarding position such as
`cf.br`, `arith.select`, `scf.for` iter-args or function call/return.
Walking back from any token use reaches the producing operation without
crossing such a boundary. Tokens carry no runtime data and cannot
constant-fold.

This contract is enforced by changing the default ODS `AnyType`
predicate to exclude tokens. In addition, token-producing and
token-consuming ops must opt in by implementing the `ProducesToken` and
`ConsumesToken` traits. The IR verifier checks for the presence of these
traits.

Note: CSE, DCE, hoisting, and `OperationEquivalence` remain unchanged. A
stronger contract (e.g., uniqueness, arity, paired lifetime), if
desirable based on the semantics of token-producing and token-consuming
ops, can be expressed at the op level via existing mechanisms (side
effects, block arguments, traits, attributes), keeping the type
orthogonal to operation-level transformations. This mirrors LLVM's
`token` type.

Other changes:
* Builtin bytecode: new entry for `TokenType`.
* AsmParser / AsmPrinter: `token` keyword for the textual format.
* Remove `LLVMTokenType` from the LLVM dialect and use the builtin
`TokenType` instead.
* Async dialect: references to `async::TokenType` are qualified to
disambiguate from the new builtin `TokenType`.
* Documentation: new `mlir/docs/Tokens.md` covering the structural
contract, design rationale, and ODS integration.

No changes to `Operation`, the generic op syntax, the bytecode op
encoding, or core C++ APIs around `Operation`.

This commit is in preparation of adding support for breaking exit from
regions. (E.g., early exit from loops.)

RFC:
https://discourse.llvm.org/t/rfc-add-a-builtin-token-type-to-mlir/90706

Assisted-by: claude-opus-4.7-thinking-high

---------

Co-authored-by: Mehdi Amini <joker.eph at gmail.com>


  Commit: 9def57af57cc61ebaa83106f056ef3bbc59e0244
      https://github.com/llvm/llvm-project/commit/9def57af57cc61ebaa83106f056ef3bbc59e0244
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Remove stale references to VPTypeInfo. (#201088)

VPTypeInfo has been removed, and (#199647) a016f53e2 add dead reference,
causing the build to fail on main.


  Commit: c51296345de89f80fbaeac85e92d72d0df06c0cb
      https://github.com/llvm/llvm-project/commit/c51296345de89f80fbaeac85e92d72d0df06c0cb
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Host/windows/PipeWindows.cpp

  Log Message:
  -----------
  [lldb][windows] Close pipe HANDLE if _open_osfhandle fails (#200882)


  Commit: 3c0daa26db4ba76359ca3285af6b709d8199c1cc
      https://github.com/llvm/llvm-project/commit/3c0daa26db4ba76359ca3285af6b709d8199c1cc
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Host/windows/PseudoConsole.cpp

  Log Message:
  -----------
  [lldb][Windows] Default-initialize PseudoConsole Kernel32 members (#200880)


  Commit: 6e1f2f513c84759e0d0727925dbb8c3a3e8b5199
      https://github.com/llvm/llvm-project/commit/6e1f2f513c84759e0d0727925dbb8c3a3e8b5199
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/bindings/python/CMakeLists.txt

  Log Message:
  -----------
  [lldb][windows] copy vcpkg runtime dlls (#200416)


  Commit: 6b6cb5fb35183b156f8acf648184b61b985bee8f
      https://github.com/llvm/llvm-project/commit/6b6cb5fb35183b156f8acf648184b61b985bee8f
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
    M llvm/test/tools/llvm-objcopy/DXContainer/copy-headers.yaml
    M llvm/test/tools/llvm-objcopy/DXContainer/dump-section.yaml

  Log Message:
  -----------
  Reapply "[llvm-objcopy] Strip header from DXContainer's ILDB part during `--dump-section`" (#200906)

The patch is reapplied with adjustments for the test failing on some
buildbots.
It strips the header from ILDB part of DXContainer during `llvm-objcopy
--dump-section`, so that the output contains bitcode only.


  Commit: 78cf6cde9fbb6f08dacb3de5bc529243f9f85d9b
      https://github.com/llvm/llvm-project/commit/78cf6cde9fbb6f08dacb3de5bc529243f9f85d9b
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp

  Log Message:
  -----------
  [NFC][analyzer] Simplify ExprEngine::Visit, eliminate NodeBuilders (#200837)

Remove NodeBuilder use from `ExprEngine::Visit` to reduce its size from
700 lines to 600 lines of source code.

This commit also moves the "for instance method operators, make sure the
'this' argument has a valid region" logic (~10 lines) from the huge
`ExprEngine::Visit` to the more specific `VisitCallExpr`; and applies a
few other very minor code quality improvements.


  Commit: 3191c78697c8b499a108e917a9590811db723969
      https://github.com/llvm/llvm-project/commit/3191c78697c8b499a108e917a9590811db723969
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/module_asm_unsupported.ll

  Log Message:
  -----------
  [SPIR-V] Reject module-level inline assembly with a diagnostic (#199992)

Module level inline asm is unsupported, even with extension


  Commit: 7139d0b46f6d71334b74049bbd540ac4b18a1bc5
      https://github.com/llvm/llvm-project/commit/7139d0b46f6d71334b74049bbd540ac4b18a1bc5
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/arm_neon.td
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    A clang/test/CodeGen/AArch64/f16f32dot-intrinsics.c
    M clang/test/Sema/aarch64-neon-immediate-ranges/dotprod.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    A llvm/test/CodeGen/AArch64/aarch64-f16f32dot-intrinsics.ll

  Log Message:
  -----------
  [AArch64] Add intrinsic support for Fdot instr. (#189987)

This patch adds intrinsics for new NEON Fdot instruction variants. The
implementation is based on the
[proposal](https://github.com/ARM-software/acle/pull/428) and adds these
ACLE builtins:

```
float32x2_t vdot_f32_f16(float32x2_t r, float16x4_t a, float16x4_t b);
float32x4_t vdotq_f32_f16(float32x4_t r, float16x8_t a, float16x8_t b);

float32x2_t vdot_lane_f32_f16(float32x2_t r, float16x4_t a, float16x4_t b, const int lane);
float32x4_t vdotq_laneq_f32_f16(float32x4_t r, float16x8_t a, float16x8_t b, const int lane);
float32x2_t vdot_laneq_f32_f16(float32x2_t r, float16x4_t a, float16x8_t b, const int lane);
float32x4_t vdotq_lane_f32_f16(float32x4_t r, float16x8_t a, float16x4_t b, const int lane);
```


  Commit: 67b3b87e6d64d7d706e14be8c5bba6acdc200623
      https://github.com/llvm/llvm-project/commit/67b3b87e6d64d7d706e14be8c5bba6acdc200623
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/select-splat-vector.ll

  Log Message:
  -----------
  [LLVM][GlobalISel] Make CSEMIRBuilder::buildFConstant scalable vector aware. (#200386)


  Commit: ad9e5bfcaf38580b2596967d3e1b7c3746d31bb1
      https://github.com/llvm/llvm-project/commit/ad9e5bfcaf38580b2596967d3e1b7c3746d31bb1
  Author: Weronika Lewandowska <weronika.lewandowska at intel.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [Offload] Forward LIBOMPTARGET_ cmake options to offload (#199906)

Add LIBOMPTARGET for offload so LIBOMPTARGET_* options are forwarded.
Note that the LIBOMPTARGET_* prefix was inherited from OpenMP's CMake
setup.


  Commit: 3c86ffb3bd282cfad0bf1e3aa2cedf1e4895b057
      https://github.com/llvm/llvm-project/commit/3c86ffb3bd282cfad0bf1e3aa2cedf1e4895b057
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Verifier/immarg-param-attribute-invalid.ll

  Log Message:
  -----------
  [LLVM][Verifier] Reject "splat (...)" as an invalid value for an immarg operand. (#200445)

This makes the behaviour consistent with ConstantDataVector based
values.


  Commit: b29352f7ea1d46fa7d90900d7a279851b6de9f74
      https://github.com/llvm/llvm-project/commit/b29352f7ea1d46fa7d90900d7a279851b6de9f74
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp
    M clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/friend-template.cpp
    M clang/test/SemaTemplate/instantiate-scope.cpp
    M clang/test/Templight/templight-default-func-arg.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  Revert "[clang] fix getTemplateInstantiationArgs" (#201093)

This caused bootstrap builds on macOS to fail with

  error: definition with same mangled name ... as another definition

in JSONGenerator.cpp. See comments on the original PR.

Reverts llvm/llvm-project#199528


  Commit: 1872f06d60f35133bbc06e047c763b490c2d31be
      https://github.com/llvm/llvm-project/commit/1872f06d60f35133bbc06e047c763b490c2d31be
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang/include/flang/Optimizer/HLFIR/Passes.td
    M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    A flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Fir/basic-program.fir
    A flang/test/HLFIR/opt-bufferization-dealloc-conflict.fir
    A flang/test/HLFIR/separate-allocatable-assign.fir
    M flang/test/Integration/OpenMP/workshare-axpy.f90

  Log Message:
  -----------
  [flang][HLFIR] Add SeparateAllocatableAssign pass (#197814)

Example:
```fortran
!$acc kernels
B = A          ! A, B allocatable
!$acc end kernels
```

In this code, `B = A` lowers to `hlfir.assign ... realloc`, which
becomes a `_FortranAAssign` runtime call inside the compute region — the
allocation can't be separated from the copy, and it crashes when `B` is
unallocated.

Fix: add `SeparateAllocatableAssign`, which splits the realloc assign
into an explicit conditional [re-]allocation followed by a plain
`hlfir.assign`, exposing the allocation as plain FIR. For variable RHS
it skips aliasing cases (`a = a(:n)`) by loading the LHS `fir.box` and
querying `fir::AliasAnalysis` on the data. For `hlfir.expr` RHS it
leaves ordering to bufferization, and fixes
`ElementalAssignBufferization` to stop fusing an elemental across a
deallocation.


  Commit: f85f70fe78bd9d787d5414a79224c2e6b60fa472
      https://github.com/llvm/llvm-project/commit/f85f70fe78bd9d787d5414a79224c2e6b60fa472
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.h
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVTypeInst.h
    M llvm/lib/Target/X86/X86OptimizeLEAs.cpp

  Log Message:
  -----------
  [Target] Remove unused DenseMapInfo::getTombstoneKey (#200955)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 414b8b986705d24e415e8ef17bc8ddbbd6839712
      https://github.com/llvm/llvm-project/commit/414b8b986705d24e415e8ef17bc8ddbbd6839712
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/AccelTable.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineOperand.h
    M llvm/include/llvm/CodeGen/PBQP/CostAllocator.h
    M llvm/include/llvm/CodeGen/Register.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/DebugInfo/GSYM/FileEntry.h
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/include/llvm/Transforms/IPO/FunctionSpecialization.h
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/StackMaps.cpp
    M llvm/lib/DebugInfo/CodeView/TypeHashing.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
    M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/CanonicalizeFreezeInLoops.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [CodeGen][Transforms] Remove unused DenseMapInfo::getTombstoneKey (#200956)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: e0f5ce18c04a5c55e5eb4e35e5ab1f1980e15c31
      https://github.com/llvm/llvm-project/commit/e0f5ce18c04a5c55e5eb4e35e5ab1f1980e15c31
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/AliasAnalysis.h
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
    M llvm/include/llvm/Analysis/MemoryLocation.h
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/Dominators.h
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ValueHandle.h
    M llvm/include/llvm/IR/ValueMap.h
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/LLVMContextImpl.h

  Log Message:
  -----------
  [IR][Analysis] Remove unused DenseMapInfo::getTombstoneKey (#200958)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 17f85f467249d08508fe29f5c01f6a046d9a68e3
      https://github.com/llvm/llvm-project/commit/17f85f467249d08508fe29f5c01f6a046d9a68e3
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/Minidump.h
    M llvm/include/llvm/BinaryFormat/Wasm.h
    M llvm/include/llvm/BinaryFormat/WasmTraits.h
    M llvm/include/llvm/CAS/CASID.h
    M llvm/include/llvm/CAS/CASReference.h
    M llvm/include/llvm/CodeGenTypes/LowLevelType.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MemoryFlags.h
    M llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
    M llvm/include/llvm/Frontend/OpenMP/OMPContext.h
    M llvm/include/llvm/Linker/IRMover.h
    M llvm/include/llvm/MC/MCRegister.h
    M llvm/include/llvm/Object/ObjectFile.h
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/include/llvm/ProfileData/FunctionId.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/TextAPI/SymbolSet.h
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/Minidump.cpp
    M llvm/tools/dsymutil/BinaryHolder.h
    M llvm/tools/llvm-c-test/echo.cpp
    M llvm/tools/llvm-reduce/deltas/Delta.h
    M llvm/tools/llvm-split/llvm-split.cpp
    M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
    M llvm/utils/gdb-scripts/prettyprinters.py

  Log Message:
  -----------
  [llvm] Remove unused DenseMapInfo::getTombstoneKey (#200957)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: 10d3c6779d9faffed0a1d686ea76ee2cec48bd06
      https://github.com/llvm/llvm-project/commit/10d3c6779d9faffed0a1d686ea76ee2cec48bd06
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/include/limits.yaml
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/test/src/__support/CPP/limits_test.cpp

  Log Message:
  -----------
  [libc] Define SSIZE_MAX in limits-macros.h (#201087)

Defined SSIZE_MAX in limits-macros.h to support POSIX compliance.
Applications compiling against LLVM libc require SSIZE_MAX to be defined
in limits.h.

SSIZE_MAX is defined strictly in terms of __PTRDIFF_MAX__, matching
ssize_t defined as __PTRDIFF_TYPE__, ensuring they are always
structurally aligned and compile-time safe.

Added Doxygen comments for SSIZE_MAX.
Added SSIZE_MAX to limits.yaml and added a unit test in limits_test.cpp
to verify the definition.

Assisted-by: Automated tooling, human reviewed.


  Commit: 9a9b9d92db959447c32c63a931f269189c3c0893
      https://github.com/llvm/llvm-project/commit/9a9b9d92db959447c32c63a931f269189c3c0893
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFile.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBFileBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/PDBStringTableBuilder.h
    M llvm/include/llvm/DebugInfo/PDB/Native/RawConstants.h
    M llvm/lib/DebugInfo/PDB/Native/PDBFile.cpp
    M llvm/lib/DebugInfo/PDB/Native/PDBFileBuilder.cpp
    A llvm/test/tools/llvm-pdbutil/dxcontainer.test
    M llvm/tools/llvm-pdbutil/PdbYaml.cpp
    M llvm/tools/llvm-pdbutil/PdbYaml.h
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.h
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  Reapply "[PDB][llvm-pdbutil] Add DXContainer support for `pdb2yaml` and `yaml2pdb`" (#201092)

This reapplies #198351 with 2 issues fixed:
- `-Wchanges-meaning` causing an error in `PdbYaml.h`
- UB when parsing DXContainer header from a null buffer, fixed in
#200865

Original patch description:

This patch enables the following:
1. Attempting to parse a `DXContainer` from stream 5 (generated by
DirectX tools) of a PDB file, to be used later in `llvm-pdbutil`.
2. Outputting a PDB file with a built in DXContainer as YAML. Existing
DirectX tools form a PDB container with empty DBI, TPI and IPI streams,
so this patch also allows them to be empty when dumping a PDB file as
YAML.
3. Creating a PDB file from YAML with an built in DXContainer. When
creating a PDB with a DXContainer, streams DBI, TPI and IPI can be
completely empty, so this patch also includes adjustments to allow
forming such a PDB file. This is done to maintain compatibility with
other DirectX tools.


  Commit: 0012320e60cddc1f98a9835f7d4ce8552fe12fe7
      https://github.com/llvm/llvm-project/commit/0012320e60cddc1f98a9835f7d4ce8552fe12fe7
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-add.ll

  Log Message:
  -----------
  [LLVM][ComplexDeinterleaving] Update identifyDeinterleave to support all forms of zero. (#200400)

The original code misses ConstantFP based zeros.


  Commit: 574243d7fad23da3532699caf0eadf36dfc321d8
      https://github.com/llvm/llvm-project/commit/574243d7fad23da3532699caf0eadf36dfc321d8
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    A llvm/test/CodeGen/SPIRV/transcoding/func_param_attr.ll

  Log Message:
  -----------
  [SPIR-V] Emit missing Sext function parameter decoration for signext args and test other param decorations (#200801)


  Commit: 94fcaf5110e21451fed27c61e1f1e0b5fb3bdb33
      https://github.com/llvm/llvm-project/commit/94fcaf5110e21451fed27c61e1f1e0b5fb3bdb33
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
    M llvm/test/Transforms/SandboxVectorizer/load_store_vec.ll

  Log Message:
  -----------
  [LLVM][SandboxVec][LoadStoreVec] Add support for vector ConstantInt/FP. (#200437)

The current implementation treats all ConstantInt/FP values as scalar,
leading to the wrong number of elements being used when combining them.


  Commit: 9942a38e64b2333dc3816eebe6ac9230b1993220
      https://github.com/llvm/llvm-project/commit/9942a38e64b2333dc3816eebe6ac9230b1993220
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/include/shared_mutex
    M libcxx/test/libcxx/thread/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++] Apply `[[nodiscard]]` to `unique_lock` and `<shared_mutex>` (#200986)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/thread.sharedmutex.class
- https://wg21.link/thread.sharedtimedmutex.class
- https://wg21.link/thread.lock.unique
- https://wg21.link/thread.lock.shared

Remarks:
- All constructors of `shared_lock` are marked `[[nodiscard]]`, which is
consistent with handling for constructors of `unique_lock`.


  Commit: 2a7524b4e33c8dfd667fa28341ec7c6c529d9c50
      https://github.com/llvm/llvm-project/commit/2a7524b4e33c8dfd667fa28341ec7c6c529d9c50
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
    M lldb/source/Plugins/Process/Windows/Common/IDebugDelegate.h
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.h
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    A lldb/test/Shell/Process/Windows/output_debug_string.cpp
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb][Windows] Support OutputDebugString (#196395)

This picks https://reviews.llvm.org/D128541 back up. It implements
support for `OutputDebugStringA/W` on Windows. It's used by some logging
systems.

The main changes since the original patch:
- Use `WaitForDebugEventEx` for getting debug events over
`WaitForDebugEvent`. According to the
[docs](https://learn.microsoft.com/en-us/windows/win32/api/debugapi/nf-debugapi-waitfordebugeventex),
the only difference is that the -Ex version correctly outputs Unicode
strings.
- Support strings longer than 64 KiB. I set an arbitrary limit of 1 MiB
for the strings we read. The debugger interface only tells us the length
modulo 64 KiB which is a bit awkward. Libraries like Qt already chunk
calls to `OutputDebugString`, so strings shouldn't be too big in
practice.
- Output to stdout instead of a log channel, so the output is always
enabled. I don't know if this should go to stdout or stderr.

Tested that it works with lldb-dap and shows up in the debug console in
all modes.

Closes #185891.

---------

Co-authored-by: Alvin Wong <alvin at alvinhc.com>


  Commit: 6180a4899ff913e0a0e2338e4d019b683f8f06da
      https://github.com/llvm/llvm-project/commit/6180a4899ff913e0a0e2338e4d019b683f8f06da
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/Windows-DYLD/CMakeLists.txt
    M lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
    A lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.cpp
    A lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.h
    M lldb/source/Plugins/Process/Windows/Common/CMakeLists.txt
    R lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.cpp
    R lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp

  Log Message:
  -----------
  [lldb][Windows] Register MSVCRTCFrameRecognizer from DynamicLoaderWindowsDYLD (#201097)


  Commit: 2790e61b41949e4ce61faebdb1faed614ca14416
      https://github.com/llvm/llvm-project/commit/2790e61b41949e4ce61faebdb1faed614ca14416
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp

  Log Message:
  -----------
  [clang-tidy] Fix crash in readability-non-const-parameter with redecls (#200178)

The check matches `VarDecls` with `hasInitializer()`, which uses
`getAnyInitializer()` and may therefore match a redeclaration whose
initializer is attached to another declaration. So calling
`IgnoreParenCasts()` on `VD->getInit()` directly would crash when that
redeclaration had no initializer of its own.

This commit fixes the problem by using a new matcher that only matches
VarDecls with an initializer on the current declaration.

Closes https://github.com/llvm/llvm-project/issues/199197


  Commit: 52fd3ec25a3d9a20efae59c453a2450bf633a970
      https://github.com/llvm/llvm-project/commit/52fd3ec25a3d9a20efae59c453a2450bf633a970
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/linux/unistd-macros.h
    M libc/include/unistd.yaml
    M libc/src/unistd/linux/sysconf.cpp
    M libc/test/include/CMakeLists.txt
    A libc/test/include/unistd_macros_test.cpp
    M libc/test/src/unistd/sysconf_test.cpp

  Log Message:
  -----------
  [libc] Define _POSIX_THREADS and support _SC_THREADS in sysconf (#201091)

Defined the _POSIX_THREADS macro to 202405L in unistd-macros.h for Linux
to signal POSIX thread support.

Also implemented runtime support for _SC_THREADS in sysconf, returning
_POSIX_THREADS, and added _SC_THREADS and _POSIX_THREADS to the public
unistd.yaml specification.

Added compile-time and runtime tests to verify _POSIX_THREADS definition
and sysconf(_SC_THREADS) behavior. Standardized header comments in
unistd-macros.h to conform to LLVM style.

Assisted-by: Automated tooling, human reviewed.

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>


  Commit: 0bbb91b73430cf6e436cb9c0fe61a2f280d9453b
      https://github.com/llvm/llvm-project/commit/0bbb91b73430cf6e436cb9c0fe61a2f280d9453b
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:

  Log Message:
  -----------
  [lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::ivar_t API (#200777)


  Commit: bd85a10b0cbfde6e944da773c435b8006130848f
      https://github.com/llvm/llvm-project/commit/bd85a10b0cbfde6e944da773c435b8006130848f
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.h
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-direct-chain.ll
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-indirect.ll
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation.ll
    M llvm/test/CodeGen/AMDGPU/dvgpr_sym_fail_too_many_block_size_16.ll
    M llvm/test/CodeGen/AMDGPU/dvgpr_sym_fail_too_many_block_size_16_anon.ll

  Log Message:
  -----------
  [AMDGPU] Do not propagate vgpr count in dVGPR mode (#187078)

When dVGPR mode is enabled chain functions should not propagate VGPR
counts from other chain callees. VGPRs are allocated before chaining to
a chain functions. We only propagate counts from non-chain callees.


  Commit: 3db25f80895d281d2d3921bb15677e0c8de03c7a
      https://github.com/llvm/llvm-project/commit/3db25f80895d281d2d3921bb15677e0c8de03c7a
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/File/linux/file.cpp
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/fcntl/linux/CMakeLists.txt
    M libc/src/fcntl/linux/creat.cpp
    M libc/src/spawn/linux/CMakeLists.txt
    M libc/src/spawn/linux/posix_spawn.cpp

  Log Message:
  -----------
  [libc] Use linux_syscalls::open instead of manual SYS_open ifdefs (#201089)

I needed to clean up a few types in file.cpp in order to match the
wrapper prototype.

Assisted by Gemini.


  Commit: fda34a97729f254d1a184d341683132c4ec65489
      https://github.com/llvm/llvm-project/commit/fda34a97729f254d1a184d341683132c4ec65489
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/test/CodeGen/RISCV/riscv-cf-protection.c

  Log Message:
  -----------
  [clang] Fix lit test after f341dab for envs that cannot write to file (#201121)


  Commit: 023248a62673ce82045fa284022673882f209677
      https://github.com/llvm/llvm-project/commit/023248a62673ce82045fa284022673882f209677
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp

  Log Message:
  -----------
  [lldb][Windows] Use LazyImport for WaitForDebugEventEx (#201118)

From
https://github.com/llvm/llvm-project/pull/196395#pullrequestreview-4409209050.

This uses `LazyImport` for `WaitForDebugEventEx` to simplify the import.


  Commit: 492202ec237f97299c6c2070a79be4c10826992f
      https://github.com/llvm/llvm-project/commit/492202ec237f97299c6c2070a79be4c10826992f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-2.ll

  Log Message:
  -----------
  [X86] lowerShuffleWithPSHUFB - use getConstVector to create shuffle mask (#201122)

Avoids wasteful SDValue creation if the shuffle matching fails - and
makes it easier to match+merge compatible constant pool entries


  Commit: 47347d24f0a9f68ae60a54ce2ab46a023b739b8d
      https://github.com/llvm/llvm-project/commit/47347d24f0a9f68ae60a54ce2ab46a023b739b8d
  Author: vsimion26 <vlad.simion at intel.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Quant/IR/QuantTypes.h
    M mlir/lib/Dialect/Quant/IR/QuantOps.cpp
    M mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
    M mlir/lib/Dialect/Quant/IR/TypeDetail.h
    M mlir/lib/Dialect/Quant/IR/TypeParser.cpp
    A mlir/test/Dialect/Quant/invalid-quantile-types.mlir
    M mlir/test/Dialect/Quant/parse-uniform-invalid.mlir
    M mlir/test/Dialect/Quant/parse-uniform.mlir
    A mlir/test/Dialect/Quant/quantile-types.mlir

  Log Message:
  -----------
  Quantile Type and Low FP Support (#190321)

# **QuantileType: Composing with Interface-Based Storage Types in MLIR
Quantization**
 
## **Context**
 
Recent [community
work](https://discourse.llvm.org/t/rfc-extending-uniformquantizedtype-with-interface-based-support-for-new-storage-types-in-quant-dialect/87803)
(RFC by Roman-Pevnyi, Aug 2025)
successfully extended UniformQuantizedType with a StorageTypeInterface.
This
made the quantization framework extensible, allowing new storage types 
(Integer, Float8E5M2, Float8E4M3FN, NF4) to be plugged in without
modifying
core quantization logic.
 
## **Building on that work**
 
QuantileType follows the same interface-driven philosophy but addresses
a
different level of abstraction: the storage type itself.
 
The observation: Many low-precision storage types (ui4, si8, f8, NF4) 
can be enhanced with a quantile lookup table. Rather than creating a new
complete quantized type for each variant (QuantileQuantizedType, 
QuantileQuantizedPerAxisType, etc.), we insert an abstraction layer.
 
QuantileType is a builtin that wraps any storage type with quantile
metadata:
 
    quantile<ui4:f16, {-1.0, -0.696, ..., 1.0}>
    quantile<si8:f32, {-2.0, -1.0, 0.0, 1.0, 2.0}>
    quantile<f8E4M3FN:f16, {...}>
 
This storage abstraction then composes naturally with existing
quantization:
 
    !quant.uniform<quantile<ui4:f16, {...}>:f32, scale:zeropoint>
 
## **Architecture**
 
Roman's StorageTypeInterface allows UniformQuantizedType to work with
any
compliant storage type. QuantileType extends this by making it possible
to
augment any storage type WITH quantile information, creating composable
layers:
 
    Builtin QuantileType (unified storage + quantiles)
         ↓ (implements StorageTypeInterface)
    UniformQuantizedType (uniform quantization logic)
         ↓
    Hardware-specific lowering
 
## **Key benefits**
 
1. SINGLE INTERFACE FOR ALL QUANTILE SCHEMES
 
   With QuantileType: One parameterized abstraction
   
       quantile<ui4:f16, {nf4_table}>
       quantile<ui4:f16, {custom_table}>
       All compose with !quant.uniform naturally
[NF4
Type](https://github.com/openvinotoolkit/npu_compiler/blob/90b6098b9ee96055d633dc520354434bae22e336/src/vpux_compiler/include/vpux/compiler/core/types/quantile_float/types.hpp#L62)
& [NF4
Table](https://github.com/openvinotoolkit/npu_compiler/blob/90b6098b9ee96055d633dc520354434bae22e336/src/vpux_compiler/src/core/types/quantile_float/types.cpp#L116-L132)

2. EXTENSIBILITY FOR NEW STORAGE TYPES
 
   When a new low-fp storage type is added (FP3, FPx, etc.), 
   it automatically works with quantiles:
 
       quantile<fpx:f16, {...}>
   
No new dialect types needed. The type just implements
StorageTypeInterface
   and QuantileType wraps it.
 
3. CLEAN SEPARATION OF CONCERNS
 
   StorageTypeInterface:
- Defines what storage types must provide (width, signedness, min/max
values)
   
   QuantileType (builtin abstraction):
   - Wraps any StorageTypeInterface-compliant type with a lookup table
   - Acts as a "storage + quantile mapping" layer
   
   UniformQuantizedType (quantization logic):
   - Works with any StorageTypeInterface, including QuantileType
 
## **Example IR**
 
In uniform quantization context:
 
!elem_type = !quant.uniform<quantile<ui4:f16, {-1.0, ..., 1.0}>:f32,
0.01:128>
  
QuantileType is a natural extension of the StorageTypeInterface
architecture. It:
 
- Provides a unified abstraction for quantile-enhanced storage
- Avoids type explosion by parameterizing rather than creating variants
- Maintains clean separation between storage concerns and quantization
logic
- Enables portability and reusability across MLIR consumers


  Commit: 16853f627616581293a8561b5c00dad33056c75f
      https://github.com/llvm/llvm-project/commit/16853f627616581293a8561b5c00dad33056c75f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/records.cpp

  Log Message:
  -----------
  [clang][bytecode] Variadic ctors also start lifetime (#201113)

This is the same thing we do in the non-variadic `Call()`.


  Commit: d25f10e8b4a37c2759925883fb59a9da4ea0eb94
      https://github.com/llvm/llvm-project/commit/d25f10e8b4a37c2759925883fb59a9da4ea0eb94
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/ValueObject/DILAST.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/TestFrameVarDILBitwise.py
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/main.cpp

  Log Message:
  -----------
  [lldb] Add bitwise shift operators and fix literals' sign in DIL (#192506)

This patch add bitwise shift operators and fixes the Scalar's sign
inside of the literals with signed types. The only way to test this fix,
for now, is to use these literals in an arithmetic right shift that does
sign extension, so this is included in this patch.


  Commit: 720e796af81205c8cc215bf957db8f51d757fc8c
      https://github.com/llvm/llvm-project/commit/720e796af81205c8cc215bf957db8f51d757fc8c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang-rt/lib/runtime/io-api-server.cpp

  Log Message:
  -----------
  [flang-rt] Fix weak RPC stub on Mac-OS (#200998)

Summary:
This does not work like the ELF extern weak. Attempt to just provide a
weak function that will get overridden if it is linked in.


  Commit: c24ae339133c6c893914a823613096f2334bba30
      https://github.com/llvm/llvm-project/commit/c24ae339133c6c893914a823613096f2334bba30
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 6180a48 (#201128)


  Commit: 384c17f8259d1bad41afb40ada89a763aaa3615f
      https://github.com/llvm/llvm-project/commit/384c17f8259d1bad41afb40ada89a763aaa3615f
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/test/TableGen/aarch64-apple-tuning-features.td

  Log Message:
  -----------
  [AArch64] Use awk on aarch64-apple-tuning-features for AIX(NFC) (#200656)

See https://github.com/llvm/llvm-project/pull/197777


  Commit: 47abd870986690ed50eab4de59c9dffa56ac24b7
      https://github.com/llvm/llvm-project/commit/47abd870986690ed50eab4de59c9dffa56ac24b7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll

  Log Message:
  -----------
  [CaptureTracking] Don't require offset to stay the same (#201106)

For isIntrinsicReturningPointerAliasingArgumentWithoutCapturing() we
don't need the offset to stay the same. Even if the intrinsic applies an
offset to the pointer (like ptrmask), we can still continue by analyzing
the return value of the intrinsic, rather than considering the intrinsic
itself capturing.

Also clarify that this needs to stay in sync with isEscapeSource()
specifically, not getUnderlyingObject() or DecomposeGEP (which isn't
even possible, as they use different values for the argument). This used
to be different historically.

This was set to true in fd72bf21c958ae2fdfaa8654df55367c72575d3a, which
set all users to true, so I don't believe there was a specific reason
for this choice.

I ran into this when trying to replace some home-grown code in
FunctionAttrs with CaptureTracking.


  Commit: 4d5a79542cef700f8201f113f370f35054a4e7d9
      https://github.com/llvm/llvm-project/commit/4d5a79542cef700f8201f113f370f35054a4e7d9
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 3db25f8 (#201131)


  Commit: 68883a8b839f3f7f2adbae7a0e2dda3a0dd6b301
      https://github.com/llvm/llvm-project/commit/68883a8b839f3f7f2adbae7a0e2dda3a0dd6b301
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 3db25f8 (#201132)


  Commit: 06978156c7ba8a8c8aca60033ea65c8335cca24c
      https://github.com/llvm/llvm-project/commit/06978156c7ba8a8c8aca60033ea65c8335cca24c
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/Atomic.cpp

  Log Message:
  -----------
  [flang] Fix possibly unused variable (NFC) (#200905)


  Commit: 5d9e965c3f9983278308a00c282810e0f04754cc
      https://github.com/llvm/llvm-project/commit/5d9e965c3f9983278308a00c282810e0f04754cc
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Sema/constexpr.c

  Log Message:
  -----------
  [clang][ExprConst] Support DesignatedInitUpdateExpr of array type (#201000)

I think this should work.


  Commit: ade0e1a49c2118a98b0b34b3136661747bc5aaa0
      https://github.com/llvm/llvm-project/commit/ade0e1a49c2118a98b0b34b3136661747bc5aaa0
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/Lowering/cast.cir

  Log Message:
  -----------
  [cir] Refine cir::CastOp semantics for int <-> float casts (#200005)

Int-to-float and float-to-int casts in cir::CastOp are lowered directly
to their LLVM equivalents. Update the verifier to reflect this semantics
and ensure that, for vector casts, the source and destination vectors have
the same length.

This lets the CIR verifier reject invalid casts earlier, instead of relying
on errors reported later at the LLVM IR level.


  Commit: 8f58a4cab3a7eccad53797a49e16f8a933d149b1
      https://github.com/llvm/llvm-project/commit/8f58a4cab3a7eccad53797a49e16f8a933d149b1
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-copy.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-dealloc.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-load-store.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-copy.mlir
    M mlir/test/Dialect/EmitC/attrs.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    A mlir/test/Dialect/EmitC/member_call_opaque.mlir
    M mlir/test/Dialect/EmitC/ops.mlir
    M mlir/test/Target/Cpp/call.mlir
    M mlir/test/Target/Cpp/expressions.mlir

  Log Message:
  -----------
  [mlir][emitc]: Add MemberCallOpaque op (#200057)

Cf. https://discourse.llvm.org/t/method-calls-in-emitc/90898


  Commit: 87b97d67d401938086edc0602f55fe284bffc24d
      https://github.com/llvm/llvm-project/commit/87b97d67d401938086edc0602f55fe284bffc24d
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/docs/conf.py

  Log Message:
  -----------
  [clang-tools-extra][docs] Do not require myst_parser when building man pages (#201138)


  Commit: afd040cb4624c7c7f843367751e22d50b39250f5
      https://github.com/llvm/llvm-project/commit/afd040cb4624c7c7f843367751e22d50b39250f5
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M openmp/tools/archer/ompt-tsan.cpp

  Log Message:
  -----------
  [OpenMP][OMPT] Remove unused var in archer (#201140)

Working on enabling the build of OpenMP and Offload in pre-merge checks
surfaced this unused var and pre-merge checks run with -Werror.

As I did not see where it should be used, remove the variable to address
the warning.

The pre-merge running into the warning as error is
https://github.com/llvm/llvm-project/actions/runs/26826349862/job/79094823845?pr=174955


  Commit: 8dd51399f8a9f13cbe35fb2060f05bd30acfb6f8
      https://github.com/llvm/llvm-project/commit/8dd51399f8a9f13cbe35fb2060f05bd30acfb6f8
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Target/Memory.h
    M lldb/source/Target/Memory.cpp

  Log Message:
  -----------
  [lldb][NFC] Factor out helper code from MemoryCache (#201120)

This will be reused in a subsequent commit.


  Commit: f813817e3495c5ab8e0dd7d3c471e531d83a630a
      https://github.com/llvm/llvm-project/commit/f813817e3495c5ab8e0dd7d3c471e531d83a630a
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    A llvm/test/CodeGen/SPIRV/transcoding/OpenCL/convert_signedness.ll

  Log Message:
  -----------
  [SPIR-V] Select int-to-int convert opcode from source signedness (#201116)

OpSConvert/OpUConvert sext/zext is determined by the source operand, not
the destination type. Discovered in
https://github.com/llvm/llvm-project/pull/200791/changes#r3341230426

Fix a regression caused by #200791


  Commit: 6bcdd843e302063c4f0d36204686155149a6bb0a
      https://github.com/llvm/llvm-project/commit/6bcdd843e302063c4f0d36204686155149a6bb0a
  Author: Paweł Bylica <pawel at hepcolgum.band>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/test/CodeGen/X86/bittest-big-integer.ll
    A llvm/test/CodeGen/X86/bt-merge-fuse.ll

  Log Message:
  -----------
  [X86] Merge BT with a matching BTR/BTS/BTC (#193612)

Fixes #165291.

BTR/BTS/BTC set CF from the pre-operation bit value, so a subsequent BT
on the same source and bit index produces the same CF and is redundant.
We were emitting both.

```ll
define i1 @btr_eq_i32(ptr %word, i32 %position) nounwind {
  %ofs = and i32 %position, 31
  %bit = shl nuw i32 1, %ofs
  %mask = xor i32 %bit, -1
  %ld = load i32, ptr %word
  %test = and i32 %ld, %bit
  %res = and i32 %ld, %mask
  %cmp = icmp eq i32 %test, 0
  store i32 %res, ptr %word
  ret i1 %cmp
}
```

Before:
```asm
movl (%rdi), %eax
movl %eax, %ecx
btrl %esi, %ecx
btl  %esi, %eax
setae %al
movl %ecx, (%rdi)
retq
```

After:
```asm
movl (%rdi), %ecx
btrl %esi, %ecx
setae %al
movl %ecx, (%rdi)
retq
```

## Approach

- Add three flag-producing DAG nodes `X86ISD::{BTR,BTS,BTC}` that model
the register-register BTR/BTS/BTC as `(res, EFLAGS) = op src, bitno`.
- Pattern-match them to the existing BTR/BTS/BTC *rr encodings.
- Add a DAG combine in `combineBT` that fuses an `X86ISD::BT` with a
sibling `AND(Src, rotl -2, X)` / `OR(Src, shl 1, X)` / `XOR(Src, shl 1,
X)` on the same source into a single flag-producing node. The
bit-position operand can differ from BT's by trunc/zext or by an `and x,
C` that preserves the low `log2(BW)` bits (BT already masks those
implicitly), so peek through those wrappers when matching.

`llvm/test/CodeGen/X86/bittest-big-integer.ll` was regenerated and
shrinks by 78 CHECK lines; dozens of `btl` instructions collapsed into
the preceding bit-modify. All 5442 X86 CodeGen tests pass.


  Commit: d81e8afe7a51005f5fa58cf4b25ccfdb41f685b1
      https://github.com/llvm/llvm-project/commit/d81e8afe7a51005f5fa58cf4b25ccfdb41f685b1
  Author: xgxanq <anqfu at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    A llvm/test/CodeGen/AMDGPU/rewrite-mfma-form-spill-cost-reset.ll

  Log Message:
  -----------
  [AMDGPU] RewriteMFMAFormStage: fix SpillCost early-return missing reset (#199708)

Extract resetRewriteCandsToVGPR() to consolidate the logic that restores
MFMA candidates from AGPR form back to VGPR form after cost analysis.

getRewriteCost() returned early when SpillCost > 0 without resetting the
AGPR-form register classes set by initHeuristics(), leaving MRI in a
corrupted state. Call resetRewriteCandsToVGPR() on both the early-return
path and the normal exit path to fix this.

Also change getRewriteCost() and rewrite() to take ArrayRef instead of
const std::vector& for cleaner API.

---------

Co-authored-by: Claude Sonnet 4 (1M context) <noreply at anthropic.com>


  Commit: e8f518d6613b950958618db9466a5936d844ff26
      https://github.com/llvm/llvm-project/commit/e8f518d6613b950958618db9466a5936d844ff26
  Author: Sean Clarke <seanedwardsclarke at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/masked_intrinsics-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/masked_intrinsics.ll
    M llvm/test/Transforms/InstCombine/pr83947.ll
    M llvm/test/Transforms/InstSimplify/call.ll

  Log Message:
  -----------
  [VectorUtils] Replace maskIsAll{Zero,One}OrUndef with PatternMatch (#200040)

As part of the ongoing effort to deprecate UndefValue, and also to take
better advantage of pattern matching, eliminate the VectorUtils
functions `maskIsAllZeroOrUndef`/`maskIsAllOneOrUndef` and replace them
with new matchers `m_ZeroOrPoison` and `m_AllOnesOrPoison`.

The new matchers are simply `m_CombineOr` on `m_Zero`/`m_AllOnes` and
`m_Poison`. `m_Zero` and `m_AllOnes` already match vectors where some
(but not all) elements are poison, so these matchers were created to
also match the case where all elements are poison.

This affects InstCombine/InstSimplify with a mask containing `undef` for
the intrinsics `llvm.masked.load`, `llvm.masked.store`,
`llvm.masked.gather`, and `llvm.masked.scatter`.

Some relevant tests were altered to use poison instead of undef, and
test coverage for masked loads/stores with poison was increased.


  Commit: f834b7f55feb37191405bf28cca52f53f4c1873f
      https://github.com/llvm/llvm-project/commit/f834b7f55feb37191405bf28cca52f53f4c1873f
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0CmdListManager.h
    M offload/plugins-nextgen/level_zero/include/L0Queue.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/plugins-nextgen/level_zero/src/L0Queue.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Move dataFence logic to L0Queue (#201046)

The dataFence device operation logic was still on L0Device. With this all the operations working on command lists have their logic consolidated in L0Queue.


  Commit: 3dfd4f784d7d0837252482f28ed2c0ca99a109b0
      https://github.com/llvm/llvm-project/commit/3dfd4f784d7d0837252482f28ed2c0ca99a109b0
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Refactor buildOriginFlowChain to use PImpl pattern (#201071)

Move `buildOriginFlowChain` into `AnalysisImpl`, removing `FactManager`
parameter


  Commit: b54d214b77aac2bab9b949bb4bdd3cc511fbe944
      https://github.com/llvm/llvm-project/commit/b54d214b77aac2bab9b949bb4bdd3cc511fbe944
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/test/MC/RISCV/rvi-pseudos.s

  Log Message:
  -----------
  [llvm][RISCV][MC] Fix arithmetic error in pseudo parsing (#200217)

When arithmetic was used in RISCV pseudo instructions, like lla, the
custom parsing breaks the associativity of the operators by parsing the
entire remainder of an expression. This would lead to scenarios where we
would parse `top - 0x100 -0x10` as `top - (0x100 -0x10)` and yield the
wrong offset (`0xF0`(wrong) vs. `0x110`(correct)).

Instead, don't advance the parser and just examine the token to
determine if it's an identifier and if we should handle this case or
bail out. In cases we do handle, just use `parseExpression()`, which
will handle this correctly.


  Commit: 0212229ac05d60314db7dfb8ae89c11a015bb7bc
      https://github.com/llvm/llvm-project/commit/0212229ac05d60314db7dfb8ae89c11a015bb7bc
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M .ci/green-dragon/lldb-windows.groovy

  Log Message:
  -----------
  [CI] install packaging before running lldb tests on Windows (#201112)

https://ci-external.swift.org/job/lldb-windows/job/main/ is failing
because lldb API tests require the `packaging` module.

This patch installs it before running the `check-lldb` target.


  Commit: 63a1b9d6386cb574e3007f7b6174eb6777916815
      https://github.com/llvm/llvm-project/commit/63a1b9d6386cb574e3007f7b6174eb6777916815
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/test/CodeGen/AArch64/sve-ldst-multi-vec.mir

  Log Message:
  -----------
  [AArch64][SME] Add multi-vector store/load opcodes to getMemOpInfo (#201073)

Follow-up to #200238


  Commit: 9083fb24c709238b1f18f0486bcf014e490e1997
      https://github.com/llvm/llvm-project/commit/9083fb24c709238b1f18f0486bcf014e490e1997
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/test/API/commands/register/aarch64_dynamic_regset/main.c
    M lldb/test/API/commands/register/aarch64_sve_registers/rw_access_static_config/main.c
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
    M llvm/test/CodeGen/AArch64/aarch64-sme-za-call-lowering.ll
    M llvm/test/CodeGen/AArch64/aarch64-sysreg128.ll
    R llvm/test/CodeGen/AArch64/arm64-invalid-sys-reg.ll
    A llvm/test/CodeGen/AArch64/arm64-named-reg-notareg.ll
    M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-find-insert-pt.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-skip-debug-inst.mir
    M llvm/test/CodeGen/AArch64/sme-abi-eh-liveins.mir
    M llvm/test/CodeGen/AArch64/sme-lazy-sve-nzcv-live.mir
    M llvm/test/CodeGen/AArch64/special-reg.ll
    M llvm/test/MC/AArch64/arm64-system-encoding.s
    M llvm/test/MC/AArch64/armv9-mrrs-diagnostics.s
    M llvm/test/MC/AArch64/armv9-mrrs.s
    M llvm/test/MC/AArch64/armv9-msrr-diagnostics.s
    M llvm/test/MC/AArch64/armv9-msrr.s
    M llvm/test/MC/AArch64/basic-a64-instructions.s
    M llvm/test/MC/Disassembler/AArch64/armv8.2a-uao.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.4a-dit.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-dataproc.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-mte.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-sb.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.5a-ssbs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-wfxt.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.7a-xs.txt
    M llvm/test/MC/Disassembler/AArch64/armv8.8a-nmi.txt
    M llvm/test/MC/Disassembler/AArch64/basic-a64-instructions.txt

  Log Message:
  -----------
  Revert "[AArch64] Fix definition of system register move instructions" (#201137)

Reverts llvm/llvm-project#185709


  Commit: 516867bc96ae3e3a40b296f038d24ee53cf0f5c0
      https://github.com/llvm/llvm-project/commit/516867bc96ae3e3a40b296f038d24ee53cf0f5c0
  Author: Henry Jiang <henry_jiang2 at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    A llvm/test/CodeGen/AArch64/aarch64-pseudo-probe-tail-call.ll
    A llvm/test/CodeGen/X86/pseudo-probe-tail-call.ll

  Log Message:
  -----------
  [PseudoProbe] Preserve pseudoprobe for tailcall pseudo instrs (#197246)

Preserve probes for tail call pseudo instructions. 

On AArch64, X86, and other platforms, the lowering of tail calls
requires a pseudo instruction like `TCRETURNdi`. It is often the case
that `TCRETURNdi` is within its own MBB, and the direct call probe
associated with that tail call is considered dangling and removed. This
patch tries to preserve that.


  Commit: cf25fb1e0809aaf4dbb13f2b837d47e329f595b8
      https://github.com/llvm/llvm-project/commit/cf25fb1e0809aaf4dbb13f2b837d47e329f595b8
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-metadirective.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/test/Semantics/OpenMP/declare-variant-match.f90
    M flang/test/Semantics/OpenMP/declare-variant.f90

  Log Message:
  -----------
  [flang][OpenMP] Add structure checks for DECLARE VARIANT (#198799)

This PR adds declare-variant structure checking. Following checks are
added:

- Validate [base:]variant arguments (including implicit base for
single-name form).
- Require exactly one MATCH clause; reject a second MATCH on the same
directive.
- Reject duplicate (base, variant) across multiple declare variant
directives.
- Reject clauses not allowed on declare variant.
- Apply shared context-selector checks to MATCH (reuse metadirective
logic).
- Require constant user conditions in MATCH for declare variant (dynamic
selectors deferred).

Refactor metadirective support:

- Extract CheckContextSelectorSpecification for reuse.
- Reject SCORE on trait sets that do not allow it (also affects
metadirective).

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 9f790fcc1f09ce4237801a7bb357d31a4c6050fb
      https://github.com/llvm/llvm-project/commit/9f790fcc1f09ce4237801a7bb357d31a4c6050fb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/test/CodeGen/SPIRV/transcoding/enqueue_kernel.ll

  Log Message:
  -----------
  [SPIR-V] Fix i8 pointer type for NULL events in OpEnqueueKernel (#201125)


  Commit: 7b199bdb2fe3d852684fab77bfdd3141dbc987f9
      https://github.com/llvm/llvm-project/commit/7b199bdb2fe3d852684fab77bfdd3141dbc987f9
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/Symbol.h

  Log Message:
  -----------
  [lldb] Fix Symbol static_assert for 32 bit Windows (#201130)

Follow up to
https://github.com/llvm/llvm-project/pull/200919#issuecomment-4600914496


  Commit: 22ef7baaf6dc409a353af42ff52599b2746107ca
      https://github.com/llvm/llvm-project/commit/22ef7baaf6dc409a353af42ff52599b2746107ca
  Author: Jake Daly <48452250+jakemdaly at users.noreply.github.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticIDs.h

  Log Message:
  -----------
  [clang][NFC] Bump the maximum number of Sema diagnostics (#200948)

The number of Sema diagnostics in DiagnosticSemaKinds.td has reached the
5000 limit. This PR increases the max limit to 6000.


  Commit: af5506c5c12d73439a9fc6f1951caf1cbde183cc
      https://github.com/llvm/llvm-project/commit/af5506c5c12d73439a9fc6f1951caf1cbde183cc
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64.ll
    M llvm/test/CodeGen/RISCV/emit-x8-as-fp.ll
    M llvm/test/CodeGen/RISCV/frame.ll
    M llvm/test/CodeGen/RISCV/frameaddr-returnaddr.ll
    M llvm/test/CodeGen/RISCV/ipra.ll
    M llvm/test/CodeGen/RISCV/large-stack.ll
    M llvm/test/CodeGen/RISCV/local-stack-slot-allocation.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll
    M llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x2.ll
    M llvm/test/CodeGen/RISCV/rvv/callee-saved-regs.ll
    M llvm/test/CodeGen/RISCV/rvv/stack-probing-dynamic.ll
    M llvm/test/CodeGen/RISCV/vararg-ilp32e.ll
    M llvm/test/CodeGen/RISCV/vararg.ll
    M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
    M llvm/test/DebugInfo/RISCV/relax_dwo_ranges.ll

  Log Message:
  -----------
  Revert "[RISCV] Prefer SP over FP for frame index access when offset fits within compressed immediate range. (#193962)" (#201041)

This reverts commits:

* 46e07d38e078799fa83386ef2b3b5ee423a467c5
* b5d577d3faef34276991fe80b5f869e3f8ef7442

This change is causing a miscompile in zstd, see the discussion under
https://github.com/llvm/llvm-project/pull/193962 for more details.


  Commit: a6615588ac141ca87c4197f3484e80cb88899cee
      https://github.com/llvm/llvm-project/commit/a6615588ac141ca87c4197f3484e80cb88899cee
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx12.ll

  Log Message:
  -----------
  [AMDGPU] Add IGLP mutations to CoexecSched (#200981)

Adds IGLP mutations support to CoexecSched -- regular handling of this
mutation in GCNSchedStage is implemented in GCNSchedStrategy.cpp


  Commit: b65054f66b0a0d62c1a5fe0b3d7749696058d1c8
      https://github.com/llvm/llvm-project/commit/b65054f66b0a0d62c1a5fe0b3d7749696058d1c8
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    A llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/Utils/CMakeLists.txt
    A llvm/lib/Transforms/Utils/TriggerCrashPass.cpp
    A llvm/test/Other/trigger-crash-flags.ll
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn

  Log Message:
  -----------
  Reland [LLVM] Add flags to crash the opt/codegen pipeline (#201146)

Will be used for testing crash reduction.

Reland of #200967. Test needs `REQUIRES: backtrace`.


  Commit: 836bf567e622a2e083a0c850b861b450fc97b915
      https://github.com/llvm/llvm-project/commit/836bf567e622a2e083a0c850b861b450fc97b915
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ADT/APFixedPoint.h
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/ADT/APSInt.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/BitVector.h
    M llvm/include/llvm/ADT/CachedHashString.h
    M llvm/include/llvm/ADT/DenseMapInfo.h
    M llvm/include/llvm/ADT/DenseMapInfoVariant.h
    M llvm/include/llvm/ADT/Hashing.h
    M llvm/include/llvm/ADT/ImmutableList.h
    M llvm/include/llvm/ADT/PointerEmbeddedInt.h
    M llvm/include/llvm/ADT/PointerIntPair.h
    M llvm/include/llvm/ADT/PointerSumType.h
    M llvm/include/llvm/ADT/PointerUnion.h
    M llvm/include/llvm/ADT/SmallBitVector.h
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/include/llvm/ADT/StringRef.h
    M llvm/include/llvm/Support/FileSystem/UniqueID.h
    M llvm/include/llvm/Support/TypeSize.h
    M llvm/include/llvm/Support/UniqueBBID.h
    M llvm/include/llvm/Support/VersionTuple.h
    M llvm/lib/Support/StringRef.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ADT/DenseSetTest.cpp
    M llvm/unittests/ADT/MapVectorTest.cpp
    M llvm/unittests/Support/ReverseIterationTest.cpp

  Log Message:
  -----------
  [ADT] Remove unused DenseMapInfo::getTombstoneKey (#200959)

#200595 changed DenseMap to no longer create tombstone buckets, so
DenseMapInfo<T>::getTombstoneKey() is never called. Remove dead
definitions and dead tombstone branches.


  Commit: e3bc0828d8562468161d64e86a2fb06d39ca8d6f
      https://github.com/llvm/llvm-project/commit/e3bc0828d8562468161d64e86a2fb06d39ca8d6f
  Author: David Tenty <daltenty at ibm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    A llvm/test/CodeGen/PowerPC/aix-codemodel.ll
    M llvm/test/CodeGen/PowerPC/ppc-i128-cmp.ll

  Log Message:
  -----------
  [AIX][LLVM] Update the default code model for 64-bit (#199301)

This changes the default code model on 64-bit AIX to large.

For many applications, the existing small code model is simply
inadequate to build. Users often then end up relying on expensive linker
fixups (i.e. -Wl,-bigtoc) to work around the issue when they would have
been better served by moving to the larger code model. Our analysis and
benchmarking leads us to believe this's generally a net benefit to
users.

(Assisted by AI)


  Commit: 824fc060d46abbeda94c9a787ef94a81fbf12230
      https://github.com/llvm/llvm-project/commit/824fc060d46abbeda94c9a787ef94a81fbf12230
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-device-2.mlir

  Log Message:
  -----------
  [Flang][OpenMP] Declare Target fixes for USM and declare target to (#200248)

Currently declare target enter would fall through the if statement even
though it's a synonym of declare target to, so fix this via adding a
simpler and more readable check for link clause instead.

USM declare target to works a little differently to regular link cases,
where the type is actually converted into a pointer, rather than a
global of the original typing. So, add a caveat where we convert the
type to a pointer if requires usm has been triggered. This gets the
correct behaviour in USM mode on USM devices.


  Commit: 3658dafe2c26c3e1242ff0505b9e8f95f0f5abf1
      https://github.com/llvm/llvm-project/commit/3658dafe2c26c3e1242ff0505b9e8f95f0f5abf1
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/Basic/Targets/OSTargets.h

  Log Message:
  -----------
  [Driver] Switch clang++ to default Solaris 11.4 compilation environment (#201063)

`clang++` has long followed `g++`'s lead predefining `_XOPEN_SOURCE=600`
on Solaris. As detailed in [Switch g++ to default Solaris 11.4
compilation
environment](https://gcc.gnu.org/pipermail/gcc-patches/2026-May/716990.html),
this is no longer necessary in Solaris 11.4.

Tested on `amd64-pc-solaris2.11` and `sparcv9-sun-solaris2.11`.


  Commit: 55af104f1c9eeb93ca127104b810bc2520100f9c
      https://github.com/llvm/llvm-project/commit/55af104f1c9eeb93ca127104b810bc2520100f9c
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/arm/RegisterContextWindows_arm.cpp
    M lldb/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp
    M lldb/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp

  Log Message:
  -----------
  [lldb][windows] return false in default branch of RegisterContextWindows_*::WriteRegister (#200885)


  Commit: bc056ea2c2948d51455f6cf75975e4980b8b908f
      https://github.com/llvm/llvm-project/commit/bc056ea2c2948d51455f6cf75975e4980b8b908f
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clangd/index/StdLib.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang/include/clang/Basic/FileManager.h
    R clang/include/clang/Basic/FileSystemStatCache.h
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/FileManager.cpp
    R clang/lib/Basic/FileSystemStatCache.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/unittests/Basic/FileManagerTest.cpp

  Log Message:
  -----------
  [clang] Remove `FileSystemStatCache` (#198411)

This mechanism is not used anywhere, and can be easily reimplemented in
terms of a VFS if needed.


  Commit: 13e532562f13ce94c7b7ffc8621252de92a29a42
      https://github.com/llvm/llvm-project/commit/13e532562f13ce94c7b7ffc8621252de92a29a42
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py

  Log Message:
  -----------
  [lldb] Skip simulator platform tests on arm64e (#200505)

Simulators do not support arm64e.


  Commit: d9cf2e1bc5aaf2eaacc36c765b63429d42ac0c60
      https://github.com/llvm/llvm-project/commit/d9cf2e1bc5aaf2eaacc36c765b63429d42ac0c60
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    A clang/test/CodeGen/SystemZ/zos-abi.c
    A clang/test/CodeGen/SystemZ/zos-abi.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Add XPLink ABI on z/OS (#188501)

This patch introduces full support for the XPLINK calling convention on
z/OS within LLVM. XPLINK is documented in the Language Environment
Vendor Interface ([Chapter
22](https://www.ibm.com/docs/en/zos/3.2.0?topic=applications-call-linkage-convention-amode-64))
and in the IBM Redbook [XPLink: OS/390 Extra Performance
Linkage](http://www.redbooks.ibm.com/abstracts/sg245991.html?Open
). It defines a high‑performance linkage model used by the z/OS Language
Environment (LE) and by the XL C/C++ compiler.
This work succeeds and replaces the earlier effort in [PR
101024](https://github.com/llvm/llvm-project/pull/101024). The present
implementation restructures the original approach, significantly expands
test coverage, and aligns more closely with both the architectural
requirements of XPLINK and the de‑facto ABI behaviour of XL C/C++.


  Commit: 6dfef47047def67fc141248eb8e7e2a67e4307e7
      https://github.com/llvm/llvm-project/commit/6dfef47047def67fc141248eb8e7e2a67e4307e7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M libcxx/test/libcxx/atomics/builtin_clear_padding.pass.cpp

  Log Message:
  -----------
  [clang] Treat unnamed bitfields as padding in `__builtin_clear_padding` (#201102)

Currently Clang's implementation of `__builtin_clear_padding` diverges
from GCC in its treatment of unnamed bitfields.

GCC treats them as padding (which seems correct since they can't be
named and wouldn't be part of the value representation of an object,
though I'm not sure what the standard has to say about this).

[Gobdolt](https://godbolt.org/z/e9Mo91dhh)

GCC trunk:
```
pre-clear bytes:   ff ff ff ff
post-clear bytes:  01 00 00 80
```

Clang trunk:
```
pre-clear bytes:   ff ff ff ff
post-clear bytes:  ff ff ff ff
```

Note how we cleared the padding with GCC.

This patch skips marking unnamed bitfields as "occupied". The rest of
the machinery works out-of-the-box.


  Commit: 2511bdd645ee7b2ce01064b5fc31524c5e532480
      https://github.com/llvm/llvm-project/commit/2511bdd645ee7b2ce01064b5fc31524c5e532480
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/test/API/qemu/TestQemuLaunch.py

  Log Message:
  -----------
  [lldb] Skip TestQemuLaunch.py on arm64e (#200969)

This test is set up to use a python-based qemu-like stub instead of the
actual qemu (which makes it far more portable). When trying to run the
test as arm64e, LLDB will attempt to launch an arm64e-based qemu.
Because the fake qemu is a python script, LLDB will try to launch python
as arm64e. Neither the python that ships with Xcode nor the python from
python.org have an arm64e slice, so this test will not work for arm64e.


  Commit: 05d152bd59372aa3e10bbf06deae5795a81052d9
      https://github.com/llvm/llvm-project/commit/05d152bd59372aa3e10bbf06deae5795a81052d9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_in6_addr.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_in6_addr.h
    M libc/include/netinet/in.yaml
    M libc/test/src/netinet/CMakeLists.txt
    A libc/test/src/netinet/in_test.cpp

  Log Message:
  -----------
  [libc] Add definition of struct in6_addr to netinet/in.h (#201057)

This patch implements the struct in6_addr definition for netinet/in.h,
mapping it from netinet/in.yaml to the generated public header.

I've defined struct in6_addr under include/llvm-libc-types/ using an
anonymous union containing s6_addr, s6_addr16, and s6_addr32 (only the
first one is mandated by POSIX). Other implementations achieve this by
using a named union and defining the members as macros. This approach is
cleaner, but could potentially run into compatibility problems with code
which expects s6_addr is a macro. If we do, we may have to re-evaluate
this approach, but I'd like to avoid uglyfying this preemptively.

I added a simple test to check the memory layout of the address.

Assisted by Gemini.


  Commit: fe2f7e40994574dd5d7efa4da8be5d9237905416
      https://github.com/llvm/llvm-project/commit/fe2f7e40994574dd5d7efa4da8be5d9237905416
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/Driver/CommonArgs.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    A flang/test/Driver/function-sections.f90
    A flang/test/Integration/function-sections.f90

  Log Message:
  -----------
  [flang] Support -ffunction-sections and -fdata-sections. (#199731)

Wire the flags through the driver, frontend, and TargetMachine, and add
driver and codegen lit tests.

Fixes https://github.com/llvm/llvm-project/issues/163550

---------

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: f3dcf16115f862f6fa5ea8e520b371f7e57a9c3d
      https://github.com/llvm/llvm-project/commit/f3dcf16115f862f6fa5ea8e520b371f7e57a9c3d
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    R flang/test/Lower/OpenMP/Todo/begin-metadirective.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-declarative.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-dynamic.f90
    R flang/test/Lower/OpenMP/Todo/metadirective-exec.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-loop.f90
    R flang/test/Lower/OpenMP/Todo/metadirective-spec.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-structured-trait-property.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-target-device.f90
    A flang/test/Lower/OpenMP/metadirective-construct.f90
    A flang/test/Lower/OpenMP/metadirective-device-arch.f90
    A flang/test/Lower/OpenMP/metadirective-device-isa.f90
    A flang/test/Lower/OpenMP/metadirective-device-kind.f90
    A flang/test/Lower/OpenMP/metadirective-implementation.f90
    A flang/test/Lower/OpenMP/metadirective-nothing.f90
    A flang/test/Lower/OpenMP/metadirective-user.f90
    M flang/test/Semantics/OpenMP/metadirective-common.f90

  Log Message:
  -----------
  [flang][OpenMP] Support lowering of metadirective (part 1) (#193664)

Add lowering support for OpenMP metadirective variants that can be
selected statically. Selection is performed during lowering with
`llvm::omp::OMPContext`, and only the selected directive variant is
lowered.

For example:
  ```fortran
  subroutine static_vendor()
    !$omp metadirective &
    !$omp & when(implementation={vendor(llvm)}: barrier) &
    !$omp & otherwise(nothing)
  end subroutine
```

is lowered to a function containing `omp.barrier`, because `vendor(llvm)` is statically applicable when compiling with Flang.

Applicable variants are represented with `llvm::omp::VariantMatchInfo` and ranked using OpenMP context matching and selector scores from the LLVM frontend.

This patch supports both standalone metadirectives and begin/end
metadirectives. For begin/end metadirectives, the variant is selected
before lowering the enclosed region so that the selected directive
correctly wraps the region.

This initial static-resolution PR supports:

  * implementation={vendor(...)}
  * device={kind(...), isa(...), arch(...)}
  * user={condition(<constant-expr>)}
  * construct={parallel, target, teams, for}
  * default, nothing, and otherwise clauses
 
This patch also preserves `score(...)` on constant user conditions so scored conditions participate correctly in variant ranking. When matching nested construct selectors, it includes constructs introduced by an enclosing selected begin/end metadirective.

Dynamic user conditions (#194424), `target_device` selectors, loop-associated directive variants, and complete construct support are deferred to follow-up patches.

This patch is part of the feature work for #188820.

Assisted by GitHub Copilot and GPT-5.4.


  Commit: 0d51fec35520f39f9b2f55989f50d694244c7582
      https://github.com/llvm/llvm-project/commit/0d51fec35520f39f9b2f55989f50d694244c7582
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/shift-opt.ll

  Log Message:
  -----------
  [NVPTX] PerformSELECTShiftCombine drops high bits of a wide guarded shift amount (#201165)

LLVM shifts produce poison if you shift greater than the width of the
operand.  But PTX shifts clamp the shift amount:

> shl/shr: Shift amounts greater than the register width N are clamped
> to N.

NVPTXISelLowering looks for shl/shr which guard against an out-of-range
shift and lower these to an unguarded PTX shift:

    define i64 @f(i64 %x, i64 %shift) {
      %cmp = icmp ult i64 %shift, 64
      %shl = shl i64 %x, %shift
      %sel = select i1 %cmp, i64 %shl, i64 0
      ret i64 %sel
    }

In PTX shifts the shift amount is always i32, whereas in LLVM the shift
amount is the same type as the "shiftee".  Therefore in the i64 case,
this lowering is only sound if we know that the upper 32 bits of the
shift amount are all zero.


  Commit: e21e5489588c2944d5071b52bdbca684a72c756f
      https://github.com/llvm/llvm-project/commit/e21e5489588c2944d5071b52bdbca684a72c756f
  Author: Vicky Nguyen <vicky.trucviennguyen at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c

  Log Message:
  -----------
  [CIR][AArch64] Upstream vector-shift-right-and-accumulate NEON builtins (#200630)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for vector-shift-right-and-accumulate
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#vector-shift-right-and-accumulate)

Port tests from `clang/test/CodeGen/AArch64/neon_intrinsics.c` to
`clang/test/CodeGen/AArch64/neon/intrinsics.c`


  Commit: ff1c751223a0e99a4563743abaaa5faa50d2ed6e
      https://github.com/llvm/llvm-project/commit/ff1c751223a0e99a4563743abaaa5faa50d2ed6e
  Author: Jun Wang <jwang_2024 at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/AMDGPU/AMDGPUAsmGFX12.rst
    R llvm/docs/AMDGPU/gfx12_addr.rst
    R llvm/docs/AMDGPU/gfx12_attr.rst
    R llvm/docs/AMDGPU/gfx12_clause.rst
    R llvm/docs/AMDGPU/gfx12_data0_56f215.rst
    R llvm/docs/AMDGPU/gfx12_data0_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_data0_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_data0_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_data1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_data1_731030.rst
    R llvm/docs/AMDGPU/gfx12_data1_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_data1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_delay.rst
    R llvm/docs/AMDGPU/gfx12_hwreg.rst
    R llvm/docs/AMDGPU/gfx12_imm16.rst
    R llvm/docs/AMDGPU/gfx12_ioffset.rst
    R llvm/docs/AMDGPU/gfx12_label.rst
    R llvm/docs/AMDGPU/gfx12_literal_1f74c7.rst
    R llvm/docs/AMDGPU/gfx12_literal_81e671.rst
    R llvm/docs/AMDGPU/gfx12_m.rst
    A llvm/docs/AMDGPU/gfx12_operands.rst
    R llvm/docs/AMDGPU/gfx12_rsrc_5fe6d8.rst
    R llvm/docs/AMDGPU/gfx12_rsrc_c9f929.rst
    R llvm/docs/AMDGPU/gfx12_saddr_cdc95c.rst
    R llvm/docs/AMDGPU/gfx12_saddr_d42b64.rst
    R llvm/docs/AMDGPU/gfx12_samp.rst
    R llvm/docs/AMDGPU/gfx12_sbase_453b95.rst
    R llvm/docs/AMDGPU/gfx12_sbase_47adb7.rst
    R llvm/docs/AMDGPU/gfx12_sdata_0974a4.rst
    R llvm/docs/AMDGPU/gfx12_sdata_354189.rst
    R llvm/docs/AMDGPU/gfx12_sdata_4585b8.rst
    R llvm/docs/AMDGPU/gfx12_sdata_5c7b50.rst
    R llvm/docs/AMDGPU/gfx12_sdata_6c003b.rst
    R llvm/docs/AMDGPU/gfx12_sdata_836716.rst
    R llvm/docs/AMDGPU/gfx12_sdata_d725ab.rst
    R llvm/docs/AMDGPU/gfx12_sdata_dd9dd8.rst
    R llvm/docs/AMDGPU/gfx12_sdst_006c40.rst
    R llvm/docs/AMDGPU/gfx12_sdst_20064d.rst
    R llvm/docs/AMDGPU/gfx12_sdst_354189.rst
    R llvm/docs/AMDGPU/gfx12_sdst_836716.rst
    R llvm/docs/AMDGPU/gfx12_sdst_ced58d.rst
    R llvm/docs/AMDGPU/gfx12_sdst_e701cc.rst
    R llvm/docs/AMDGPU/gfx12_sendmsg.rst
    R llvm/docs/AMDGPU/gfx12_sendmsg_rtn.rst
    R llvm/docs/AMDGPU/gfx12_simm16_15ccdd.rst
    R llvm/docs/AMDGPU/gfx12_simm16_218bea.rst
    R llvm/docs/AMDGPU/gfx12_simm16_39b593.rst
    R llvm/docs/AMDGPU/gfx12_simm16_3d2a4f.rst
    R llvm/docs/AMDGPU/gfx12_simm16_730a13.rst
    R llvm/docs/AMDGPU/gfx12_simm16_7ed651.rst
    R llvm/docs/AMDGPU/gfx12_simm16_81e671.rst
    R llvm/docs/AMDGPU/gfx12_simm16_c98889.rst
    R llvm/docs/AMDGPU/gfx12_simm16_cc1716.rst
    R llvm/docs/AMDGPU/gfx12_simm16_ee8b30.rst
    R llvm/docs/AMDGPU/gfx12_soffset_8ec073.rst
    R llvm/docs/AMDGPU/gfx12_soffset_c5b88c.rst
    R llvm/docs/AMDGPU/gfx12_soffset_ec005a.rst
    R llvm/docs/AMDGPU/gfx12_src0_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src0_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src0_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src0_85aab6.rst
    R llvm/docs/AMDGPU/gfx12_src0_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src0_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_src0_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_src1_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src1_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src1_731030.rst
    R llvm/docs/AMDGPU/gfx12_src1_977794.rst
    R llvm/docs/AMDGPU/gfx12_src1_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src1_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_src1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_src2_2797bc.rst
    R llvm/docs/AMDGPU/gfx12_src2_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src2_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src2_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src2_7b936a.rst
    R llvm/docs/AMDGPU/gfx12_src2_96fbd3.rst
    R llvm/docs/AMDGPU/gfx12_src2_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src2_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_srcx0.rst
    R llvm/docs/AMDGPU/gfx12_srcy0.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_007f9c.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_1a9ca5.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_245536.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_2797bc.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_bbb4c6.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_ssrc1_bbb4c6.rst
    R llvm/docs/AMDGPU/gfx12_ssrc1_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_tgt.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_a972b9.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_c12f43.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_c8b8d4.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_d82160.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_f2b449.rst
    R llvm/docs/AMDGPU/gfx12_vcc.rst
    R llvm/docs/AMDGPU/gfx12_vdata_2eda77.rst
    R llvm/docs/AMDGPU/gfx12_vdata_48e42f.rst
    R llvm/docs/AMDGPU/gfx12_vdata_69a144.rst
    R llvm/docs/AMDGPU/gfx12_vdata_89680f.rst
    R llvm/docs/AMDGPU/gfx12_vdata_aac3e8.rst
    R llvm/docs/AMDGPU/gfx12_vdata_bdb32f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_006c40.rst
    R llvm/docs/AMDGPU/gfx12_vdst_227281.rst
    R llvm/docs/AMDGPU/gfx12_vdst_2eda77.rst
    R llvm/docs/AMDGPU/gfx12_vdst_47d3bc.rst
    R llvm/docs/AMDGPU/gfx12_vdst_48e42f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_69a144.rst
    R llvm/docs/AMDGPU/gfx12_vdst_7de8e7.rst
    R llvm/docs/AMDGPU/gfx12_vdst_836716.rst
    R llvm/docs/AMDGPU/gfx12_vdst_89680f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_bdb32f.rst
    R llvm/docs/AMDGPU/gfx12_vdstx.rst
    R llvm/docs/AMDGPU/gfx12_vdsty.rst
    R llvm/docs/AMDGPU/gfx12_version.rst
    R llvm/docs/AMDGPU/gfx12_vsrc0.rst
    R llvm/docs/AMDGPU/gfx12_vsrc1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_vsrc1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_vsrc2.rst
    R llvm/docs/AMDGPU/gfx12_vsrc3.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_56f215.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_89fd7b.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_vsrcx1.rst
    R llvm/docs/AMDGPU/gfx12_vsrcy1.rst
    R llvm/docs/AMDGPU/gfx12_waitcnt.rst

  Log Message:
  -----------
  [AMDGPU][docs][NFC] Update gfx12 documentation (#200976)

Following what we did with the GFX950 documentation, this patch replaces
the multitude of rst files for GFX12 operands with a single file. Some
problems are fixed as well, e.g., different opcodes in the same encoding
(e.g., VDS) may have different modifiers.


  Commit: 9c61a544c60b9e100d855aa95fa66b07d56a2bdf
      https://github.com/llvm/llvm-project/commit/9c61a544c60b9e100d855aa95fa66b07d56a2bdf
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/copyable-operand-non-scheduled-parent-node.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-bin-op-user.ll

  Log Message:
  -----------
  [SLP] Schedule copyable operands modeled on non-scheduled parent nodes

A node that does not need scheduling (all values used outside the block)
has no schedule bundle, yet it can still model one of its operands as a
copyable element, registering the ScheduleCopyableData on that parent
edge. If the instruction carrying that dependency is scheduled through a
different (duplicate) bundle, the copyable dependency on the non-scheduled
edge was never decremented.
When scheduling a bundle member, also process the instruction's tree
entries that have no registered bundle via pseudo-bundles, so their
copyable operand dependencies are decremented. Real operand dependencies
are guarded against double counting by the per-operand use counter.

Fixes #200831.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/201182


  Commit: c6c633740c305684645ec2b093bf36587fdbc54f
      https://github.com/llvm/llvm-project/commit/c6c633740c305684645ec2b093bf36587fdbc54f
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/include/CMakeLists.txt
    M libc/include/arpa/inet.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/inet-address-macros.h
    M libc/include/llvm-libc-macros/netinet-in-macros.h
    M libc/include/netinet/in.yaml
    M libc/utils/docgen/arpa/inet.yaml

  Log Message:
  -----------
  [libc] Move INET_ADDRSTRLEN and INET6_ADDRSTRLEN to a common header (#201083)

INET_ADDRSTRLEN and INET6_ADDRSTRLEN are needed by both <netinet/in.h>
and <arpa/inet.h>. Previously we had them defined directly inside
netinet-in-macros.h, which meant arpa/inet.h did not have access to
them.

I've moved them to a new inet-address-macros.h header and configured
both YAML header targets to depend on it so they get included in both
generated headers.

I'm also updating the docgen YAML file for arpa/inet.h to document these
macros.

Note that other libc implementations simply have arpa/inet.h include
netinet/in.h (which is permitted by POSIX). This implementation takes a
stricter stance and only exposes the symbols which are specified by
POSIX.

Assisted by Gemini.


  Commit: 1d77b84e5133bfd39489ed6f119beff91f9db194
      https://github.com/llvm/llvm-project/commit/1d77b84e5133bfd39489ed6f119beff91f9db194
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] incDecVectorConstant - use getConstVector (#201169)

Avoids wasteful SDValue creation if the fold fails


  Commit: 6656fa57d610475a55ed1dd909e40b00190a4615
      https://github.com/llvm/llvm-project/commit/6656fa57d610475a55ed1dd909e40b00190a4615
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp

  Log Message:
  -----------
  [SandboxVec][VecUtils][NFC] Improve VecUtils::areConsecutive() template (#201168)

This helps drop the second template argument.


  Commit: 7d2dce084307356948a3ef78c902fd68558afe2e
      https://github.com/llvm/llvm-project/commit/7d2dce084307356948a3ef78c902fd68558afe2e
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectSettings.cpp

  Log Message:
  -----------
  [LLDB] Add always-on logging for "settings set"  (#201185)

When triaging bugreports it can be very useful to understand what LLDB
defaults have been changed. Adding settings to the always-on logging
channel helps with that.

rdar://176482205

Assisted-by: claude


  Commit: 51f698d450133946c84b1702f7f460eedf701a84
      https://github.com/llvm/llvm-project/commit/51f698d450133946c84b1702f7f460eedf701a84
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/utils/gn/build/sync_source_lists_from_cmake.py
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Basic/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/AST/ByteCode/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/DynamicLoader/Windows-DYLD/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Windows/Common/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#201189)

And fix an issue with sync_source_lists_from_cmake.py breaking
Transforms/IPO/BUILD.gn.

5148d2de75ec
6180a4899ff9
bc056ea2c294
ff2fec30ac7c


  Commit: f77f5088145b008f17799487e07a92c66e749567
      https://github.com/llvm/llvm-project/commit/f77f5088145b008f17799487e07a92c66e749567
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
    A llvm/test/tools/dsymutil/Inputs/drop-module-fwd-decl/debug-map.map
    A llvm/test/tools/dsymutil/Inputs/drop-module-fwd-decl/input.ll
    A llvm/test/tools/dsymutil/Inputs/keep-module-fwd-decl-template/debug-map.map
    A llvm/test/tools/dsymutil/Inputs/keep-module-fwd-decl-template/input.ll
    A llvm/test/tools/dsymutil/X86/drop-module-fwd-decl.test
    A llvm/test/tools/dsymutil/X86/keep-module-fwd-decl-template.test
    M llvm/test/tools/dsymutil/X86/submodules.m

  Log Message:
  -----------
  [DWARFLinker] Preserve module forward decls in parallel linker (#198828)

The parallel linker was dropping forward-declared types nested under
DW_TAG_module skeleton CUs (clang -gmodules input). The classic linker
keeps them when no definition exists and replaces them with the
canonical definition when one does. collectRootsToKeep's default branch
silently fell through, so the forward decl never made it to the
worklist.

Route these through the type pool with MarkTypeEntryRec. Recursive
marking keeps children of templated forward decls (e.g.
DW_TAG_template_type_parameter under Foo<T> [decl]) intact, matching the
classic linker. The existing decl-vs-def race resolution in
allocateTypeDie and getFinalDie handles both ends without new
synchronization.

- No definition anywhere. DeclarationDie is allocated and emitted.
- Definition in some other CU. allocateTypeDie sets Die via the body's
spinlock. At emission, getFinalDie returns Die over DeclarationDie. Both
clone orderings yield the same output.

For non-ODR languages getFinalPlacementForEntry forces PlainDwarf, so
the forward decl stays in place under its module instead of moving to
the artificial type unit.


  Commit: 6a55cb00521b57df7c170d9c888b72c4fe48bc17
      https://github.com/llvm/llvm-project/commit/6a55cb00521b57df7c170d9c888b72c4fe48bc17
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/CodeGen/NVPTX/globals_init.ll

  Log Message:
  -----------
  [NVPTX] Print the full value of e.g. an i65 global. (#201184)

If you have an integer global whose width is 64 and not a multiple of 8,
the NVPTX asm printer used to drop the top bits!


  Commit: eaff67c9838f98d221aa563c9e5d4e714d636674
      https://github.com/llvm/llvm-project/commit/eaff67c9838f98d221aa563c9e5d4e714d636674
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [HIP][AMDGPU] Use non-LTO pipeline for non-RDC in the linker wrapper (#201135)

Non-RDC HIP does not need LTO, but the new offload driver compiles all
AMDGPU device code through the LTO pipeline. That makes non-RDC builds
pay
full LTO codegen cost for no benefit.

Fix this in clang-linker-wrapper instead of the driver, so device
codegen
still runs in the wrapper's parallel device-link step (kept fast by
--offload-jobs) rather than being serialized back in the driver.

The driver passes a new --no-lto flag for the non-RDC fat-binary job
(unless the user asked for -foffload-lto). With it, the wrapper drops
-flto
and, because the device images are bitcode stored in object-extension
files, also passes -x ir so clang actually compiles them (cc1 -emit-obj)
instead of handing the bitcode to lld for an LTO link.


  Commit: 973b9a7d40ca42571d25f670b74177b1cdcbef61
      https://github.com/llvm/llvm-project/commit/973b9a7d40ca42571d25f670b74177b1cdcbef61
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp

  Log Message:
  -----------
  Revert "[SandboxVec][VecUtils][NFC] Improve VecUtils::areConsecutive() template" (#201191)

Reverts llvm/llvm-project#201168


  Commit: b89bb06afd069aa1b5e9f05ab692b3e6b41318c0
      https://github.com/llvm/llvm-project/commit/b89bb06afd069aa1b5e9f05ab692b3e6b41318c0
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 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:
  -----------
  [clang][driver][darwin] Hold onto full triples in Darwin SDKPlatformInfo (#200896)

The architecture can be relevant when determining if an SDK supports a
particular triple. Record the full triples in SDKPlatformInfo instead of
all of the non-architecture triple components.

Assisted-by: Claude Code

rdar://172876443


  Commit: e15e51089e6a5faef7643d8dc123788f7e91f9fc
      https://github.com/llvm/llvm-project/commit/e15e51089e6a5faef7643d8dc123788f7e91f9fc
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/ARM/extract-cost-scale-nullptr-user.ll

  Log Message:
  -----------
  [SLP][NFC] Add a test with the optimistic extractelements emission, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/201192


  Commit: f394094f195b3d593336aab6b76ccd2b7b483e43
      https://github.com/llvm/llvm-project/commit/f394094f195b3d593336aab6b76ccd2b7b483e43
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/ARM/extract-cost-scale-nullptr-user.ll

  Log Message:
  -----------
  [SLP] Scale extract cost of external uses with nullptr user

The NCD pre-pass from #199962 only records extract blocks for external
uses that have a real user, so uses with a nullptr user were left
unscaled, making the loop in the report look profitable and get wrongly
vectorized. For a nullptr user vectorizeTree() places the extract right
after the vectorized instruction (entry block) and RAUWs the scalar, so
scale those extracts by the entry block frequency, restoring the
pre-#199962 behavior for that case.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/201193


  Commit: 1fe6d564523982d2efbd28334ef50fe449765eb5
      https://github.com/llvm/llvm-project/commit/1fe6d564523982d2efbd28334ef50fe449765eb5
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M third-party/benchmark/src/sysinfo.cc

  Log Message:
  -----------
  Fix a warning and an uninitialized variable in benchmark (#200927)

After #198964 I see a -Wcovered-switch-default warning in sysinfo.cc,
but it looks like it's uncovering something a bit worse.

Back in #147357 and #149159 it looks like we tried to fix an MSVC
warning for an uncovered `CacheUnknown` case in this switch, and removed
the initialization of the variable before the switch. The update to
Google Benchmark v1.9.5 has a different fix for this - it's handling
that specific case guarded by some MSVC version macros, but this depends
on the initialization we removed!

Add the initialization back and remove the default case, effectively
reverting #149159 and #147357.


  Commit: 798d0f5ee8644d9745922970515071d3fe338cb6
      https://github.com/llvm/llvm-project/commit/798d0f5ee8644d9745922970515071d3fe338cb6
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/MarkdownQuickstartTemplate.md
    M llvm/docs/README.txt
    A llvm/docs/SphinxQuickstartTemplate.md
    R llvm/docs/SphinxQuickstartTemplate.rst
    M openmp/docs/README.txt

  Log Message:
  -----------
  [docs] Rename SphinxQuickstartTemplate.{rst|md} for blame (#198899)

Renames SphinxQuickstartTemplate.rst to SphinxQuickstartTemplate.md as
an isolated commit to preserve blame history. The file content is not
yet valid Markdown; the rewrite follows in a stacked PR.
Cross-references in MarkdownQuickstartTemplate.md, README.txt, and
openmp/docs/README.txt are updated accordingly.

See RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840


  Commit: f31bc0a478a86e45b2e2745ed097509aca669f81
      https://github.com/llvm/llvm-project/commit/f31bc0a478a86e45b2e2745ed097509aca669f81
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/docs/GitHub.rst
    M llvm/docs/SphinxQuickstartTemplate.md

  Log Message:
  -----------
  [docs] Rewrite SphinxQuickstartTemplate.md in MyST Markdown (#198896)

Converts SphinxQuickstartTemplate.md from reStructuredText syntax to
MyST Markdown. Updates the overview to mention that MyST is now
preferred for new LLVM documentation, modernizes the authoring
guidelines, and replaces all RST markup constructs with their Markdown
equivalents.

The renamd landed as PR #198899.

See RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840

An LLM was used to assist with the rewrite.

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 3ca3bbcaf1dc8a8b4270cbd896d97e522b72f475
      https://github.com/llvm/llvm-project/commit/3ca3bbcaf1dc8a8b4270cbd896d97e522b72f475
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    A llvm/test/CodeGen/Xtensa/landingpad.ll

  Log Message:
  -----------
  [Xtensa] Implement lowering Exception Selector and Pointer Registers. (#198043)

This PR fixes issue https://github.com/llvm/llvm-project/issues/190308


  Commit: 9b92e0fe9b0066d58073ee81afa0e5823a474e1e
      https://github.com/llvm/llvm-project/commit/9b92e0fe9b0066d58073ee81afa0e5823a474e1e
  Author: jofrn <jo7frn1 at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/X86/atomic-load-store.ll

  Log Message:
  -----------
  [SelectionDAG] Split vector types for atomic store (#197860)

Vector types that aren't widened are split so that a single ATOMIC_STORE
is issued for the entire vector at once. This enables SelectionDAG to
translate vectors with type bfloat,half.

Store-side counterpart to #165818. Stacked on top of #197619; and below
of #197861.


  Commit: 162076fe779ea8e1d9008b42e3c5f5ea3ae473dc
      https://github.com/llvm/llvm-project/commit/162076fe779ea8e1d9008b42e3c5f5ea3ae473dc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86PartialReduction.cpp
    M llvm/test/CodeGen/X86/sad.ll

  Log Message:
  -----------
  [X86] Check useBWIRegs() instead of hasBWI() before creating x86_avx512_psad_bw_512 intrinsic. (#201167)

Need to check that 512-bit vectors are enabled before using a 512-bit
intrinsic.


  Commit: 40ad00beb3e275e1c50d6a718800d197a6b02c4e
      https://github.com/llvm/llvm-project/commit/40ad00beb3e275e1c50d6a718800d197a6b02c4e
  Author: mleair <leairmark at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    A flang/test/Lower/intrinsic-module-array-constant.f90

  Log Message:
  -----------
  [flang] Define array named constants from the iso_fortran_env intrins… (#201190)

…ic module

createIntrinsicModuleDefinitions() only emitted definitions for array
named constants belonging to the __fortran_ieee_exceptions intrinsic
module. Array constants declared directly in the iso_fortran_env
intrinsic module -- in practice character_kinds -- were therefore only
lowered as bodyless `fir.global` external declarations at their use site
and never defined anywhere, producing an undefined reference at link
time.

This is usually hidden because scalar iso_fortran_env parameters fold to
immediates and constant-shape array accesses are folded away, so the
dangling external symbol is DCE'd before linking. It surfaces when the
address of the array genuinely escapes to runtime, e.g.:
```
    use iso_fortran_env
    integer :: i, x(1)
    do i = 1, size(character_kinds)
      x = findloc(character_kinds, character_kinds(i))
    end do
```
which fails with:

    undefined reference to `_QMiso_fortran_envECcharacter_kinds'

Fix by also processing the iso_fortran_env scope in
createIntrinsicModuleDefinitions(), so its array constants are emitted
as linkonce_odr definitions with initializers.

Note that integer_kinds/real_kinds/logical_kinds are unaffected: they
are renamed from iso_fortran_env_impl, a non-intrinsic module that is
compiled into the runtime, so their definitions already exist there.

Assisted-by: AI


  Commit: f2a780bbe2d8f66bcffb76e9d5f008d581be7917
      https://github.com/llvm/llvm-project/commit/f2a780bbe2d8f66bcffb76e9d5f008d581be7917
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/test/Shell/SymbolFile/DWARF/delayed-definition-die-searching.test

  Log Message:
  -----------
  [lldb][test] Make delayed-definition-die-searching CU-layout agnostic (#201206)

The second `ParseTypeFromDWARF` for t1 (after `p v2`) only fires when
t1's definition lives in a separate CU from its forward declaration:
LLDB parses the forward-decl DIE during `p v1` and a distinct definition
DIE during `p v2`. dsymutil's parallel linker collapses both into a
single DIE in the artificial type unit, so t1 is parsed once during `p
v1` and only re-resolved during `p v2`.

Drop the second-parse CHECK so the test no longer presumes a per-CU type
layout. The remaining `'t1' resolving forward declaration...` CHECK
after `p v2` still verifies what the test was designed to catch: t1's
complete-type resolution is deferred until v2 is evaluated. If LLDB
regressed to eager resolution during `p v1`, that log line would move
and the test would fail. Add a `(t1) (x = 0)` CHECK at the end to cover
the end-to-end value.


  Commit: 87d6941017aa6022ce00baa9f1dfae5a49b113f4
      https://github.com/llvm/llvm-project/commit/87d6941017aa6022ce00baa9f1dfae5a49b113f4
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 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/GlobalObject.h
    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
    R 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/CodeGen/GlobalMerge.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/ConstantMerge.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
    R 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
    R llvm/test/Transforms/AssignGUID/assign_guid.ll
    M llvm/test/Transforms/ConstantMerge/merge-dbg.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
    R llvm/test/Transforms/GlobalMerge/guid.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:
  -----------
  Reverting PR #184065 and #200323 to address some interplay with CFI (#201194)

There is a relation between CFI and ThinLTO GUIDs that still needs to be
disentangled first. Note that we leave the `MD_unique_id` in
`FixedMetadataKinds.def` to avoid needing to re-number it later. Plus
the metadata string ("guid") itself is used by ctxprof.


  Commit: 70edfe91f4fc6bd0b2137d20f3508a6fcd85bcde
      https://github.com/llvm/llvm-project/commit/70edfe91f4fc6bd0b2137d20f3508a6fcd85bcde
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [cmake] Fix host tool path with driver build on Windows (#199152)

On Windows, the llvm-shlib dylib build uses the llvm-nm host tool to
make all symbols visible by default. The LLVM_TOOL_LLVM_DRIVER_BUILD=ON
build would fail because $<TARGET_FILE:llvm-nm> was invalid. This change
passes the name of the symlink / executable copy as a custom property so
things work out and the llvm-nm.exe host tool can be found.


  Commit: b29bf9fa25bdb906a61ec361fba68796020cc6b9
      https://github.com/llvm/llvm-project/commit/b29bf9fa25bdb906a61ec361fba68796020cc6b9
  Author: Peter Hawkins <phawkins at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Bytecode/BytecodeWriter.h
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp
    M mlir/lib/Bytecode/Writer/IRNumbering.cpp
    M mlir/lib/Bytecode/Writer/IRNumbering.h
    M mlir/unittests/Bytecode/BytecodeTest.cpp

  Log Message:
  -----------
  [mlir][bytecode] Add option to elide locations during serialization (#201183)

Adds a setElideLocations option to BytecodeWriterConfig to elide
locations during bytecode serialization. When enabled, all LocationAttrs
are mapped to UnknownLoc during numbering and writing to produce
location-invariant bytecode (e.g., for stable fingerprinting).

Another way to achieve the same thing would be to apply the
strip-debuginfo pass,
but that requires mutating the module, which in turn requires cloning
the module if one still requires the unstripped original.

Assisted-by: Antigravity / Gemini


  Commit: f2dd83075571265427547b94e06aabda61aff974
      https://github.com/llvm/llvm-project/commit/f2dd83075571265427547b94e06aabda61aff974
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBanks.td

  Log Message:
  -----------
  [RISCV][GISel] Add GPRPair to GPRB register bank and use getXLen() for GPRSize

Map GPRPair register classes to the GPRB register bank during GlobalISel
instruction selection. This is required because the introduction of HwMode-dependent
base pointer register classes (e.g. via PtrRegClassByHwMode) causes TableGen to
emit register bank checks for GPRPair variants in RISCVGenGlobalISel.inc.
Without this mapping, instruction selection crashes on unsupported classes.

To avoid assertion failures when GPRB's maximum size increases to 128-bit on RV64
due to the register pairs, update RISCVRegisterBankInfo::getInstrMapping to query
Subtarget.getXLen() for the scalar register width instead of relying on the bank's
getMaximumSize(). This matches AArch64's design pattern of mapping register pairs
(XSeqPairsClass) to GPR and resolving scalar register sizes dynamically.

This was fine previously but was exposed by the HwMode changes in
https://github.com/llvm/llvm-project/pull/177073.

Pull Request: https://github.com/llvm/llvm-project/pull/200510


  Commit: 155c6e4f887a9b4fb8900ec655124303e7308b4b
      https://github.com/llvm/llvm-project/commit/155c6e4f887a9b4fb8900ec655124303e7308b4b
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/cmake/caches/Apple-lldb-macOS.cmake

  Log Message:
  -----------
  [lldb] Add lldb-mcp to LLVM_DISTRIBUTION_COMPONENTS (#201225)

Add lldb-mcp to LLVM_DISTRIBUTION_COMPONENTS


  Commit: 08e8df51ce23b79e50774453e7ae120c1b5de2ef
      https://github.com/llvm/llvm-project/commit/08e8df51ce23b79e50774453e7ae120c1b5de2ef
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.h
    M llvm/lib/ExecutionEngine/Orc/EPCGenericDylibManager.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.cpp

  Log Message:
  -----------
  [ORC] Make SimpleExecutorDylibManager::resolve an instance method. (#201211)

Promote the lambda inside resolveWrapper to a public method on
SimpleExecutorDylibManager. This brings SimpleExecutorDylibManager into
better alignment with the NativeDylibManager implementation in the new
ORC runtime, and is a step towards allowing NativeDylibManager to be
used as a drop-in replacement for SimpleExecutorDylibManager.


  Commit: 72a05d59bc8cba3728ad1e3f60bdcc8504f7a708
      https://github.com/llvm/llvm-project/commit/72a05d59bc8cba3728ad1e3f60bdcc8504f7a708
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/test/API/python_api/run_locker/TestRunLocker.py

  Log Message:
  -----------
  [lldb] Have TestRunLocker run both styles of launch (#200978)

While debugging flakey behavior with TestRunLocker, I noticed that is
intended to run its test once with a stop at the entry function (and
then Continues) and once where we launch to the main() loop. But we were
never exercising the stop-at-entry codepath.

This doesn't fix the flakey behavior, although that only happens with
the launch-directly-into-main() codepath; I don't get failures when I
stop at the entry point and then continue.


  Commit: 04d9e8687b3836af1eede7df15ecc43ac5c1f67d
      https://github.com/llvm/llvm-project/commit/04d9e8687b3836af1eede7df15ecc43ac5c1f67d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Don't expand SCEVs without uses to VPInstructions (NFC). (#201221)

If a VPExpandSCEVRecipe does not have users, there's no benefit to
expand it to VPInstructions, which then have to get cleaned up.

This also prevents DCE from removing VPInstructions pointed to by
TripCount after expansion.


  Commit: 2a936ce9316042cd7e45e72b528ad1d55aa2fe3c
      https://github.com/llvm/llvm-project/commit/2a936ce9316042cd7e45e72b528ad1d55aa2fe3c
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/tools/debugserver/source/DNB.cpp

  Log Message:
  -----------
  [lldb][debugserver] Arguments to kill(2) are reversed (#201226)

This codepath is only executed as an attempt to clean up during a failed
launch, so the reversed arguments were rarely actually used.

rdar://175507620


  Commit: ce465594e2394ebe6894c6f0dfc9d0817b63c9da
      https://github.com/llvm/llvm-project/commit/ce465594e2394ebe6894c6f0dfc9d0817b63c9da
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp
    M llvm/test/CodeGen/NVPTX/lower-aggr-copies.ll

  Log Message:
  -----------
  [NVPTX] Fix aggregate load/store lowering for (potentially) overlapping copies (#201177)

NVPTXLowerAggrCopies lowers load/store pairs of large values into a loop
of smaller copies.

However, it was incorrectly assuming that the load/store pairs it found
never alias.

This patch adds an alias check.  If the pointers may alias, we emit a
memmov, which handles overlap correctly.

CUDA reproducer:

    typedef char vec __attribute__((vector_size(256)));

    __global__ void boom(char *p) {
      *(vec *)(p + 8) = *(vec *)p;
    }


  Commit: 26e44e62fdaf0467e153d2f83251e2d48eb1f10e
      https://github.com/llvm/llvm-project/commit/26e44e62fdaf0467e153d2f83251e2d48eb1f10e
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/func-linkage-weak-import.c
    A clang/test/CIR/CodeGen/inline-forward-decl.c

  Log Message:
  -----------
  [CIR] Set ExternalWeakLinkage on weak/weak_import function declarations (#198422)

Classic CodeGen's `SetFunctionAttributes` calls `setLinkageForGV` to force `ExternalWeakLinkage` on `__attribute__((weak))` and Darwin `weak_import` declarations.  CIR had no equivalent: weak function declarations were emitted with `ExternalLinkage` instead of `ExternalWeakLinkage`.

This adds `setLinkageForFunction` — the same weak/external-weak logic as `setLinkageForGV` — and calls it from `setFunctionAttributes`.  The underlying crash on inline forward declarations (the original motivation) is already fixed by #195257; what remains is this linkage gap.

`inline-forward-decl.c` covers `__attribute__((weak))` on an inline forward declaration; `func-linkage-weak-import.c` covers Darwin `weak_import` (→ `extern_weak` in CIR and LLVM).


  Commit: d59899763f0df2bf16fca98ab11421646957602a
      https://github.com/llvm/llvm-project/commit/d59899763f0df2bf16fca98ab11421646957602a
  Author: Yury Plyakhin <yury.plyakhin at intel.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [clang-linker-wrapper] Drop SYCL dry-run stub-image special case (#201222)

Remove the `DryRun` branch in `bundleSYCL` that emitted a stub
`OffloadBinary`. SYCL goes through the same empty-buffer path as other
offload kinds, so the special case is no longer needed.

Update `linker-wrapper-image.c` to expect the resulting `[0 x i8]
zeroinitializer` constant and a size of `0` in the register/unregister
calls.

Assisted by Claude.


  Commit: 142ad481b6254104a51da7d636ad9e3f30518a32
      https://github.com/llvm/llvm-project/commit/142ad481b6254104a51da7d636ad9e3f30518a32
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/CMakeLists.txt
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/include/lldb/Host/Config.h.cmake
    A lldb/include/lldb/Host/ScriptInterpreterRuntimeLoader.h
    M lldb/include/module.modulemap
    M lldb/source/Host/CMakeLists.txt
    A lldb/source/Host/common/PythonRuntimeLoader.cpp
    A lldb/source/Host/common/PythonRuntimeLoaderInternal.h
    A lldb/source/Host/common/ScriptInterpreterRuntimeLoader.cpp
    A lldb/source/Host/linux/PythonRuntimeLoaderLinux.cpp
    A lldb/source/Host/macosx/PythonRuntimeLoaderDarwin.cpp
    A lldb/source/Host/windows/PythonRuntimeLoaderWindows.cpp
    M lldb/unittests/Host/CMakeLists.txt
    A lldb/unittests/Host/PythonRuntimeLoaderTest.cpp

  Log Message:
  -----------
  [lldb] Add PythonRuntimeLoader for runtime libpython lookup (NFC) (#200524)

Generalizes the Windows-only Python lookup in PythonPathSetup into a
cross-platform abstraction. Adds an abstract ScriptInterpreterRuntimeLoader
with a per-language factory. The Python implementation dynamically loads Python
library into the current process.

The loader no-ops when Python is already in the process, then walks
LLDB_PYTHON_LIBRARY env override, the build-time Python
(LLDB_PYTHON_RUNTIME_LIBRARY_BUILD_PATH) and finally a platform candidate list:

- Darwin: DEVELOPER_DIR, the bundled Xcode.app, and Command Line Tools joined
  against Python3.framework. Then python.org, /opt/homebrew, and /usr/local
  joined against Python.framework. Then xcrun -f python3 and if that fails,
  libpython3.dylib as a last resort.
- Linux: libpython3.so plus descending stable-ABI SONAMEs.
- Windows: the LLDB_PYTHON_RUNTIME_LIBRARY_FILENAME bare name (resolved via the
  loader's default search list) and the exe-relative
  LLDB_PYTHON_DLL_RELATIVE_PATH fallback (built off GetModuleFileNameW).
  Pre-mapping python3xx.dll lets the script interpreter plugin's delay-load
  thunks resolve against the already-loaded module by base name on first use.

This commit only introduces the abstraction. No existing call site is changed,
and the script interpreter plugin still hard-links Python, which are part of
two follow-up PRs.


  Commit: 3eb13f8db39ed42827122489c830c414cb6660e3
      https://github.com/llvm/llvm-project/commit/3eb13f8db39ed42827122489c830c414cb6660e3
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/test/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Stop hard-linking libpython into the dynamic Python plugin (#200530)

Drops ${Python3_LIBRARIES} from the SHARED build of
lldbPluginScriptInterpreterPython and lets undefined Python symbols
through at link time (`-undefined dynamic_lookup` on Darwin,
`--allow-shlib-undefined` on Linux; Windows keeps its existing
delay-load + import lib).

SystemInitializerFull::Initialize resolves the Python runtime loader
via ScriptInterpreterRuntimeLoader::Get(eScriptLanguagePython) and
calls Load() before initializing any plugin, so libpython is mapped
into the process before either entry point that references it: the
static script interpreter's Initialize() (which invokes Python via
the LLDB_PLUGIN_INITIALIZE loop) and the dynamic plugin's dlopen
(whose undefined references resolve against the in-process
libpython). This covers both LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS
=ON and =OFF, and keeps Windows working in static builds where the
delay-load thunks live in liblldb itself. The loader is
once_flag-cached, and errors propagate out via the existing Expected
return.

`import lldb` from a running Python works because libpython is
already mapped into the process. The Python runtime loader probes
for stable-ABI symbols (Py_IsInitialized, Py_InitializeFromConfig)
via dlsym(RTLD_DEFAULT) / GetProcAddress and, finding them, returns
success without dlopen'ing a second libpython on top.

The dynamic plugins are added as test-suite dependencies so
check-lldb-shell and check-lldb-api wait for them; they can't be
build-order deps of liblldb itself because the plugins link against
liblldb (CMake SHARED cycle).

The unit-test static variant lldbStaticScriptInterpreterPython keeps
hard-linking libpython so link-time symbol checking is preserved.


  Commit: 678891b586ab0f3b97c83987eb2df0d2d5743ffb
      https://github.com/llvm/llvm-project/commit/678891b586ab0f3b97c83987eb2df0d2d5743ffb
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/test/CIR/CodeGen/compound_literal.c

  Log Message:
  -----------
  [CIR] Implement lowering for const-emitted global compound literals (#201152)

This came up in a test suite as a NYI, it is just emitting a
constant-backing literal for an initializer. These are specific to C, as
global compound literals have static storage duration in C. This patch,
just like classic codgen, just creates a '.compoundliteral' object as
backing for these variables, and lets us create references to them.

---------

Co-authored-by: Andy Kaylor <akaylor at nvidia.com>


  Commit: 243ddf607bbe4841cfe734507120c8d8ddc41eca
      https://github.com/llvm/llvm-project/commit/243ddf607bbe4841cfe734507120c8d8ddc41eca
  Author: Schrodinger ZHU Yifan <yfzhu at google.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M libc/src/__support/block.h
    M libc/src/__support/freelist_heap.h
    M libc/src/__support/freestore.h
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/block_test.cpp
    M libc/test/src/__support/freelist_heap_test.cpp

  Log Message:
  -----------
  [libc] add shrink in-place support for reallocations (#200272)

This PR adds shrinking in-place for the freelist heap. This allows the
heap to reuse the place if the reallocation shrinks the size larger than
a minimal block unit.

Synthesized random action tests show that that increase heap utilization
rate from 87% to 97% percent, basically aligns with the expectation of
dlmalloc.

Assisted-by: AI tools, manually checked.


  Commit: a6745c933a3828f4e2cac4d94754688fe3b03f9f
      https://github.com/llvm/llvm-project/commit/a6745c933a3828f4e2cac4d94754688fe3b03f9f
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineSpiller.cpp
    A llvm/test/CodeGen/X86/apx/memfold-origVNI-crash.ll

  Log Message:
  -----------
  [X86][APX] Extend original LI to the same range as DstReg (#199182)

The #189222 folds NDD+Load to non-NDD when NDD memory variant not
preferred. However, this will changes DstReg from regular def to
early-clobber def, which causes "corrupted sub-interval" in
reMaterializeFor, because the OrigLI is not updated at the same time.

Fixes: https://godbolt.org/z/7n8ozz1EG

Assisted-by: Claude Sonnet 4.6


  Commit: 0e40e9e341cf78662ab468fb8cdd6cac7e58ad1f
      https://github.com/llvm/llvm-project/commit/0e40e9e341cf78662ab468fb8cdd6cac7e58ad1f
  Author: Yury Plyakhin <yury.plyakhin at intel.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/test/OffloadTools/clang-sycl-linker/basic.ll
    M clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    M clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp

  Log Message:
  -----------
  [clang-sycl-linker][test] Improve dry-run mode and tighten test coverage (#200513)

- Rework `--dry-run` in `clang-sycl-linker` so it skips all real output
    (writing bitcode, executing tools, etc.).
  - The `link:`, `sycl-module-split:`, and a new `sycl-bundle:` summary
    line are now gated on `-v` alone.
  - Tighten `sycl-bundle:` checks in `basic.ll`, `split-mode.ll`, and
    `triple.ll` to pin kind, triple, and arch (instead of just kind),
    and add `-NOT: {{.+}}` after fully-covered dry-run check groups.
  - replace the `clang-sycl-linker` + `llvm-objdump --offloading`
    round-trip with a single `--dry-run -v` invocation.
- add dedicated `non-dry-run` mode test to verify code paths not exposed
in `dry-run`.

    Assisted by Claude.


  Commit: f132e926290fe1cc69946addfb90d61b56c9402a
      https://github.com/llvm/llvm-project/commit/f132e926290fe1cc69946addfb90d61b56c9402a
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.h
    A clang/test/CIR/Transforms/abi-lowering/coerce-int-to-record.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-return-larger.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-to-int.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-vector-to-complex.cir

  Log Message:
  -----------
  [CIR] Coerce Direct args and returns in CallConvLowering (#195879)

Fourth PR in the split of #192119/#192124. Implements the
Direct-with-coercion path in CallConvLowering.

Every Direct argument or return whose ABI type differs from its source
type is now coerced through a store/reload roundtrip via an entry-block
alloca, mirroring classic codegen's CreateCoercedLoad/CreateCoercedStore.
The temporary alloca uses max(srcAlign, dstAlign) from the DataLayout and
is hoisted into the entry block so it composes with HoistAllocas
regardless of pipeline order. When the coerced type is larger than the
source -- e.g. a 12-byte aggregate returned as { i64, i64 } -- the slot is
sized to the larger type and accessed through a source-typed view for the
store and a destination-typed view for the load, so neither side
over-reads.

CallConvLowering is split into three phases (function-definition
coercion, call-site rewriting, and Ignore cleanup) because in-place
block-argument type changes from Direct-with-coerce otherwise confused the
earlier ordering, synthesizing alloca/load chains for call-site uses of
Ignore'd arguments that were about to be dropped.

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 45bddca21c65106b41fa47a485a30c863e75da53
      https://github.com/llvm/llvm-project/commit/45bddca21c65106b41fa47a485a30c863e75da53
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    A clang/test/CIR/CodeGen/switch-cleanup.cpp

  Log Message:
  -----------
  [CIR] Fix insertion point tracking for switch with cleanups (#201210)

We had some problems where we would incorrectly maintain the insertion
point for switch statements that contained cleanup scopes. This resulted
in cir.scope statements without a terminator, tripping a verification
error.

This change adds a RunCleanupsScope RAII object for the switch statement
and adds a check inside popCleanup() to avoid moving the insertion point
to the point after the now-closed cleanup scope if the insertion point
had previously been somewhere other than inside the cleanup scope.

Assisted-by: Cursor / claude-opus-4.8


  Commit: 19c7fdb3c3c68a9d6861627c85cd0251b7854f6f
      https://github.com/llvm/llvm-project/commit/19c7fdb3c3c68a9d6861627c85cd0251b7854f6f
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    A clang/test/CIR/CodeGen/global-temp-dtor.cpp
    M clang/test/CIR/CodeGen/self-ref-temporaries.cpp
    M clang/test/CIR/CodeGenCXX/global-refs.cpp

  Log Message:
  -----------
  [CIR] Implement destruction of TLS and static global references (#200227)

This implements destruction of lifetime-extended reference temporaries
used to initialize TLS or static duration reference variables.

Assisted-by: Cursor / claude-opus-4.7


  Commit: f48e6b81c3acb7007aa94ac768c95122796df08c
      https://github.com/llvm/llvm-project/commit/f48e6b81c3acb7007aa94ac768c95122796df08c
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
    M llvm/test/CodeGen/NVPTX/intr-range.ll

  Log Message:
  -----------
  [NVPTX] NVVMIntrRange: Handle maxntid > UINT32_MAX. (#201245)

Previously we computed the overall maxntid and downcast it to unsigned
int.  This is not correct; it can be larger than UINT32_MAX.

This would cause reads of tid.xyz and ntid.xyz to have incorrect range
information.  Also if maxntid was an exact multiple of 2^32, we'd get an
ICE (because we'd incorrectly think that maxntid is 0).


  Commit: 8763a68723b0dbd1ef2e7cc0ac61b2635ceef000
      https://github.com/llvm/llvm-project/commit/8763a68723b0dbd1ef2e7cc0ac61b2635ceef000
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/M68k/AsmParser/CMakeLists.txt

  Log Message:
  -----------
  [M68k] Add to LINK_COMPONENTS to fix BUILD_SHARED_LIBS build (#201248)

Fixes: 6897c5e24ce5 ("[M68k][MC] Add MC support for PCI w/ base
displacement addressing mode (#200696)")


  Commit: 53938ba7f3631583f79f1b7c1cf8a5d2347ba4d1
      https://github.com/llvm/llvm-project/commit/53938ba7f3631583f79f1b7c1cf8a5d2347ba4d1
  Author: Boyao Wang <wangboyao at bytedance.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    R llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/pr148084.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-zipeven-zipodd.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir
    M llvm/test/DebugInfo/RISCV/relax_dwo_ranges.ll
    R llvm/test/MC/RISCV/xrivosvizip-invalid.s
    R llvm/test/MC/RISCV/xrivosvizip-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Remove experimental XRivosVizip support (#200761)

Remove experimental XRivosVizip support which will not be maintained by
RVIOS any more.


  Commit: 83318d027abdbd4694d6a070194c82f1e2a34739
      https://github.com/llvm/llvm-project/commit/83318d027abdbd4694d6a070194c82f1e2a34739
  Author: Fan Mo <w007878 at hotmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst

  Log Message:
  -----------
  [docs][Kaleidoscope] fix function name InitializeModuleAndManagers in Kaleidoscope (#199601)

### Description
resloves #199477 

The Kaleidoscope tutorial was not fully updated with the new Pass
Manager. This pr aligns the tutorial doc with the example code.

### Changes
- Use `InitializeModuleAndManagers` instead of
`InitializeModuleAndPassManager`.
- Remove `TheModule->setDataLayout(TheJIT->getDataLayout());` in line
141, as the `setDataLayout` was introduced later.
- Use `KaleidoscopeJIT` instead of `my cool jit` as the ModuleName, to
align with the final code.


  Commit: 45c4ebb92ae393a541105c120e0dba2992237c03
      https://github.com/llvm/llvm-project/commit/45c4ebb92ae393a541105c120e0dba2992237c03
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/docs/conf.py

  Log Message:
  -----------
  [lldb] Enable MyST colon_fence and deflist extensions (NFC) (#201250)

Enable the colon_fence and deflist MyST parser extensions in the LLDB
docs configuration. This is a preparatory step for converting the
remaining reStructuredText documentation pages to Markdown, where these
two extensions are needed to translate RST admonition directives
(:::{note}) and definition lists.

Context:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/


  Commit: ee20b106ec70d3494890a707a32ac677c64c409d
      https://github.com/llvm/llvm-project/commit/ee20b106ec70d3494890a707a32ac677c64c409d
  Author: Thrrreeee <shijinrui at bytedance.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/test/X86/dwarf5-df-types-dup-dwp-input.test
    A bolt/test/X86/dwarf5-dwp-tsan-data-race.test

  Log Message:
  -----------
  [BOLT] Fix data race in multi-threaded DWP type unit processing and DWP type unit duplication (#197359)

## Summary
This PR fixes a race condition in LLVM BOLT's
DIEBuilder::buildTypeUnits() that is triggered when DWARF5 split-DWARF
(.dwo/.dwp) inputs are processed with multi-threaded CU processing.
Concurrent invocations from different worker threads share the same DWP
type-unit state, which results in duplicated DIE extraction, assertion
failures, and intermittent crashes. The fix serializes buildTypeUnits()
for DWP inputs via a function-local static std::mutex, leaving the
non-DWO fast path unchanged.
## Problem Description
When BOLT processes DWARF debug info with --debug-thread-count=4
--cu-processing-batch-size=4 on testcase
dwarf5-df-types-dup-dwp-input.test, multiple threads concurrently call
DIEBuilder::buildTypeUnits() on shared DWP type units. Since type units
within a DWP file are shared across compilation units, multiple threads
may attempt to extract DIEs from the same type unit simultaneously,
violating the assertion.

**Note:** This is an intermittent failure — due to its dependence on
thread scheduling and interleaving, it does not reproduce on every run,
and may require multiple executions under the multi-threaded
configuration to surface, which is why it escaped earlier
single-threaded testing.


  Commit: 6d7962db9397eefe3a287115d413fd4c562e4178
      https://github.com/llvm/llvm-project/commit/6d7962db9397eefe3a287115d413fd4c562e4178
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCUDA/addr-of-overloaded-fn.cu
    A clang/test/SemaCUDA/addr-of-overloaded-template-fn.cu

  Log Message:
  -----------
  [clang][CUDA] Avoid ambiguity in host/device template specializations (#201049)

This commit changes SemaOverload to resolve an otherwise diagnosed
ambiguity between addresses of template specializations of functions
that are overloaded for both device and host. Similar to how it works
for non-templated function overloads, these changes prioritizes the
specializations that corresponds to the target of the owning function,
i.e. if compiling for host, the address of the host specialization takes
precedence over the device specialization and vice versa.

Fixes https://github.com/llvm/llvm-project/issues/199299

---------

Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>


  Commit: a47bddccec30255619bb8c37fa59700e661d4e66
      https://github.com/llvm/llvm-project/commit/a47bddccec30255619bb8c37fa59700e661d4e66
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp

  Log Message:
  -----------
  [clangd] Handle dependent call to function with explicit object parameter in InlayHintVisitor (#201264)

Dependent calls do not yet have the implicit object argument preprended
to the CallExpr's argument list, so the first argument should not be
expected to be present and dropped in this case.

Fixes https://github.com/llvm/llvm-project/issues/198588


  Commit: 70bca0f9af520569daa85959c56d95b2d1cd0389
      https://github.com/llvm/llvm-project/commit/70bca0f9af520569daa85959c56d95b2d1cd0389
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    A llvm/test/CodeGen/RISCV/rvv/xsfmm-insert-vsetvl-TMTK.mir

  Log Message:
  -----------
  [RISCV] Make VSETTM/VSETTK not affect the VSETVL emit (#197890)

VSETTM/TK will modify VTYPE, but it only affects the TM/TK bits. This
modification is safe for other RVV operations. The TM/TK value will be
maintained in insertVSETMTK.


  Commit: 866c39b61f475ca4dffd9eae280d146f59cdede6
      https://github.com/llvm/llvm-project/commit/866c39b61f475ca4dffd9eae280d146f59cdede6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner] Remove no longer tested VP_MUL handling. (#201238)

We no longer use VP_MUL in SelectionDAG on RISC-V so this code isn't
tested.

This effectively reverts db6de1a20f75cbfe1024f41e64ad39def91fa70f


  Commit: e0b580a724dc58afa119eb2ce25620ebd8d5f275
      https://github.com/llvm/llvm-project/commit/e0b580a724dc58afa119eb2ce25620ebd8d5f275
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner] Remove untested visitVP_FADD and visitVP_FSUB. (#201247)

RISC-V no longer uses VP_FADD/FSUB in SelectionDAG.


  Commit: f91f589aaa82514952f7a13b3e3bd2910d32559a
      https://github.com/llvm/llvm-project/commit/f91f589aaa82514952f7a13b3e3bd2910d32559a
  Author: JoshuaGrindstaff <99843934+JoshuaGrindstaff at users.noreply.github.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/test/MC/AMDGPU/mcexpr_amd.s
    M llvm/test/MC/AMDGPU/mcexpr_amd_err.s
    A llvm/unittests/Target/AMDGPU/AMDGPUMCExprTest.cpp
    M llvm/unittests/Target/AMDGPU/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Added min operation for MCExprs (#199746)

The min operation is needed in MC Expressions for a future change that
caps the max number of registers used for indirect calls.

---------

Co-authored-by: JoshuaGrindstaff <jgrindst at amd.com>


  Commit: c7b4b4a33350e3805deae64f17d6185b184d7887
      https://github.com/llvm/llvm-project/commit/c7b4b4a33350e3805deae64f17d6185b184d7887
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/lower-aggr-copies.ll

  Log Message:
  -----------
  [NVPTX] Fix the build after ce465594e239. (#201268)

ce465594e239 (#201177) added sm_90 / PTX ISA 7.8 instructions to
lower-aggr-copies.ll, so we need to guard the RUN line appropriately.


  Commit: baa8da34e6745536288edb042e89871d89376469
      https://github.com/llvm/llvm-project/commit/baa8da34e6745536288edb042e89871d89376469
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    A mlir/test/Dialect/SPIRV/IR/tosa-ops-dynamic.mlir

  Log Message:
  -----------
  [mlir][spirv] Allow dynamic rescale parameter lengths (#200155)

The SPIR-V TOSA rescale verifier checked multiplier and shift lengths
with a direct equality against the input channel dimension. That rejects
otherwise valid operations when either side of the shape comparison is
dynamic.

Express the check with reusable dimension predicates so unranked or
dynamic dimensions pass, while static dimensions still enforce the
per-channel and scalar length requirements. Add dedicated dynamic-shape
op coverage for dynamic input channel dimensions and dynamic
multiplier/shift lengths.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: 4a74b4472833d57e0ecfaaa5d06a2c607bcceeae
      https://github.com/llvm/llvm-project/commit/4a74b4472833d57e0ecfaaa5d06a2c607bcceeae
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp

  Log Message:
  -----------
  [orc-rt] Add required/weak-ref attribute to NativeDylibManager lookup. (#201272)

Replace the std::vector<std::string> argument to lookup() with a
SymbolLookupSet (a vector of (name, LookupFlags) pairs, where
LookupFlags is RequiredSymbol or WeaklyReferencedSymbol).

This brings NativeDylibManager more closely into alignment with the
SimpleExecutorDylibManager implementation in the LLVM OrcTargetProcess
library.


  Commit: c264e07c2f3d9f25a2526e69926daea3a68be74b
      https://github.com/llvm/llvm-project/commit/c264e07c2f3d9f25a2526e69926daea3a68be74b
  Author: Konstantin Belochapka <konstantin.belochapka at sony.com>
  Date:   2026-06-02 (Tue, 02 Jun 2026)

  Changed paths:
    M cross-project-tests/dtlto/dtlto-cache.test
    M cross-project-tests/dtlto/savetemps-lock.test
    M lld/COFF/LTO.cpp
    M lld/ELF/LTO.cpp
    M lld/test/ELF/dtlto/timetrace.test
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/LTO/Config.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/DTLTO/CMakeLists.txt
    M llvm/lib/DTLTO/DTLTO.cpp
    A llvm/lib/DTLTO/DTLTODistributionDriver.cpp
    A llvm/lib/DTLTO/DTLTOInputFiles.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/test/ThinLTO/X86/dtlto/timetrace.ll
    M llvm/tools/llvm-lto2/CMakeLists.txt
    M llvm/tools/llvm-lto2/llvm-lto2.cpp

  Log Message:
  -----------
  [DTLTO] Refactor the DTLTO code. (#192629)

DTLTO implementation code has been moved from `llvm/lib/LTO/` to
`llvm/lib/DTLTO/`. This refactor does not change any externally visible
behavior, so existing DTLTO tests and documentation remain valid. The
move was done to reduce code duplication, improve maintainability, and
make it easier to adopt future performance improvements.


  Commit: 9bb17a0092a16a3c72a4b701bda9271af02fcfb2
      https://github.com/llvm/llvm-project/commit/9bb17a0092a16a3c72a4b701bda9271af02fcfb2
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang-tools-extra/clangd/unittests/CMakeLists.txt

  Log Message:
  -----------
  [clangd] Disable PCH reuse for ClangdTests (#201232)

Fixes https://github.com/llvm/llvm-project/issues/200999


  Commit: 57b09398b60d6bc95993435e51989bfcc032ad49
      https://github.com/llvm/llvm-project/commit/57b09398b60d6bc95993435e51989bfcc032ad49
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/src/unistd/linux/alarm.cpp

  Log Message:
  -----------
  [libc] Fix alarm layout mismatch on 32-bit time64 (#201276)

Fixed alarm implementation on 32-bit architectures with 64-bit time_t
(like RISC-V 32-bit). The SYS_setitimer syscall on these platforms
expects the legacy 32-bit struct itimerval (with 32-bit tv_sec and
tv_usec). Convert the arguments to this layout before invoking the
syscall to avoid the kernel misinterpreting the timeout.

Assisted-by: Automated tooling, human reviewed.


  Commit: d0af9c8e3f32c28e259ea90bbb179e713e62c384
      https://github.com/llvm/llvm-project/commit/d0af9c8e3f32c28e259ea90bbb179e713e62c384
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port 142ad48 (#201283)


  Commit: c2ed0b1d825d7c75ca15b57812767ec3858c60db
      https://github.com/llvm/llvm-project/commit/c2ed0b1d825d7c75ca15b57812767ec3858c60db
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/CaptureTracking.cpp

  Log Message:
  -----------
  [CaptureTracking] Remove allocator comparison special case (#201143)

CaptureTracking had a special case that (incorrectly) reported
`captures(none)` for comparisons of allocation functions with null.
Remove this special case and return the correct
`captures(address_is_null)` result instead.

It seems like this doesn't have any practical benefit anymore, as things
like AA will ignore address-only captures nowadays.


  Commit: 6e6c51be667e95ee456efdc6d28b2184ceb6ed32
      https://github.com/llvm/llvm-project/commit/6e6c51be667e95ee456efdc6d28b2184ceb6ed32
  Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/include/__iterator/erase_if_container.h
    M libcxx/include/__node_handle
    M libcxx/include/__tree
    M libcxx/include/__type_traits/make_transparent.h
    M libcxx/include/__utility/default_three_way_comparator.h
    M libcxx/include/__utility/lazy_synth_three_way_comparator.h
    M libcxx/include/__utility/try_key_extraction.h
    M libcxx/include/map
    M libcxx/include/version
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.associative.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/associative/map/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/map/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/at.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/empty.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_rv_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_tuple.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/max_size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct_const.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/map/map.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/key_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/value_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.value_compare/invoke.pass.cpp
    M libcxx/test/std/containers/associative/map/types.pass.cpp
    M libcxx/test/std/containers/container.node/node_handle.pass.cpp
    M libcxx/test/std/containers/insert_range_maps_sets.h
    M libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    A libcxx/test/support/CopyConstructible.h
    M libcxx/test/support/is_transparent.h
    M libcxx/test/support/private_constructor.h
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Make `<map>` `std::map` constexpr as part of P3372R3 (#134330)

Fixes https://github.com/llvm/llvm-project/issues/128660

Adds `constexpr` support for `std::map` as per P3372R3

---------

Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: 6a7b8876153815cf3847d952614440e79e82fc86
      https://github.com/llvm/llvm-project/commit/6a7b8876153815cf3847d952614440e79e82fc86
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libclc/CMakeLists.txt
    M libclc/README.md

  Log Message:
  -----------
  [libclc] Use generic spirv*-unknown-unknown clang triple for SPIR-V targets (#199618)

spirv-diff shows only numbering change to
spirv64-unknown-unknown/libclc.spv. No change in `llvm-spirv -to-text`
outputs. llvm-diff shows no change on reverse-translated bitcode files.

Also fixes a bug that spirv32-unknown-unknown was incorrectly using
64-bit triple.

Update README.md to use the generic target triple for SPIR-V targets.


  Commit: 6b5bb08d3aa3f498b7bd9f6bb43376719bddfa60
      https://github.com/llvm/llvm-project/commit/6b5bb08d3aa3f498b7bd9f6bb43376719bddfa60
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/test/CodeGen/target-data.c
    M clang/test/Frontend/spirv-target-validation.c

  Log Message:
  -----------
  Revert "[OpenCL] Allow mesa3d OS in spirv32 and spirv64 targets" (#200727)

Reverts llvm/llvm-project#197148

libclc will use generic target triple spirv32[64]-unknown-unknown for use in mesa.


  Commit: edcafdb6af16350da3444ac6bde10897a4c4ceee
      https://github.com/llvm/llvm-project/commit/edcafdb6af16350da3444ac6bde10897a4c4ceee
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbpexpect.py
    M lldb/test/API/commands/apropos/formatting/TestAproposFormatting.py
    M lldb/test/API/commands/expression/multiline-completion/TestMultilineCompletion.py
    M lldb/test/API/commands/expression/multiline-navigation/TestMultilineNavigation.py
    M lldb/test/API/commands/gui/basic/TestGuiBasic.py
    M lldb/test/API/commands/gui/basicdebug/TestGuiBasicDebug.py
    M lldb/test/API/commands/gui/breakpoints/TestGuiBreakpoints.py
    M lldb/test/API/commands/gui/expand-threads-tree/TestGuiExpandThreadsTree.py
    M lldb/test/API/commands/gui/spawn-threads/TestGuiSpawnThreads.py
    M lldb/test/API/commands/gui/viewlarge/TestGuiViewLarge.py
    M lldb/test/API/iohandler/autosuggestion/TestAutosuggestion.py
    M lldb/test/API/iohandler/completion/TestIOHandlerCompletion.py
    M lldb/test/API/iohandler/resize/TestIOHandlerResize.py
    M lldb/test/API/iohandler/sigint/TestIOHandlerPythonREPLSigint.py
    M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
    M lldb/test/API/iohandler/stdio/TestIOHandlerProcessSTDIO.py
    M lldb/test/API/iohandler/unicode/TestUnicode.py
    M lldb/test/API/repl/clang/TestClangREPL.py
    M lldb/test/API/terminal/TestDisabledBreakpoints.py
    M lldb/test/API/terminal/TestEditline.py

  Log Message:
  -----------
  [lldb][test] Always call quit when tearing down pexpect tests (#201100)

Right now we manually have to call quit at the end of each pexpect test.
This patches makes this call automatic.

This also makes tests that missed the call and where previously waiting
for a timeout faster. For example, TestClangREPL.py now only takes about
10 seconds to run instead of 1 minute.


  Commit: 97bb7ec082b675cabae8c9e5001a8a8c14d03731
      https://github.com/llvm/llvm-project/commit/97bb7ec082b675cabae8c9e5001a8a8c14d03731
  Author: Xavier Roche <xavier.roche at algolia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libcxx/include/__type_traits/integer_traits.h
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
    M libcxx/test/std/containers/views/mdspan/extents/index_type.verify.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturating_cast.compile.pass.cpp
    M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.verify.cpp

  Log Message:
  -----------
  [libc++] Reject cv-qualified types in __is_signed/unsigned_integer_v (#200377)

`__is_signed_integer_v` and `__is_unsigned_integer_v` previously
admitted cv-qualified types, contradicting `[basic.fundamental]/p1-2`.
The fix adds `__is_unqualified_v<_Tp>` to both predicates.

Reported by @jwakely on
[#185027](https://github.com/llvm/llvm-project/pull/185027#issuecomment-4574289895).
Trait-level tests cover all consumers via the shared concept; cast-like
templates (`in_range`, `saturating_cast`, `extents`) get explicit
cv-rejection tests.

Assisted-by: Claude (Anthropic)

---------

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>


  Commit: 8d42953f1518d3123ad01e4e9ccbed67042e08af
      https://github.com/llvm/llvm-project/commit/8d42953f1518d3123ad01e4e9ccbed67042e08af
  Author: Christian Sigg <csigg at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bazel] Port c264e07 (#201292)


  Commit: 7b0d00f374097fc364ff7a40c846bb98f4950945
      https://github.com/llvm/llvm-project/commit/7b0d00f374097fc364ff7a40c846bb98f4950945
  Author: Aayush Shrivastava <iamaayushrivastava at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/CommandGuide/llvm-strip.rst
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/include/llvm/ObjCopy/ObjCopy.h
    M llvm/lib/ObjCopy/Archive.cpp
    M llvm/lib/ObjCopy/ObjCopy.cpp
    A llvm/test/tools/llvm-objcopy/verbose.test
    M llvm/tools/llvm-objcopy/CommonOpts.td
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/tools/llvm-objcopy/llvm-objcopy.cpp

  Log Message:
  -----------
  [llvm-objcopy] Add --verbose option to llvm-strip/llvm-objcopy (#196611)

Added `--verbose / -v` option to `llvm-strip` and `llvm-objcopy` as part
of #123041, matching GNU strip's output format. When the flag is passed,
the tool prints one line per file processed.

copy from `'input.o' [elf64-x86-64] to 'output.o' [elf64-x86-64]`


  Commit: e579340c15c1c2fa814351cde0352e9be5c4878c
      https://github.com/llvm/llvm-project/commit/e579340c15c1c2fa814351cde0352e9be5c4878c
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Use generated hasMinMaxI64Insts subtarget feature query (#201052)

Replace the custom GCNSubtarget::hasIntMinMax64 helper with the
generated hasMinMaxI64Insts from AMDGPUSubtargetFeature.


  Commit: 1bd2a0ecbafce9fbea329f1b06bb3987126c4581
      https://github.com/llvm/llvm-project/commit/1bd2a0ecbafce9fbea329f1b06bb3987126c4581
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    A llvm/test/CodeGen/SystemZ/vec-move-25.ll

  Log Message:
  -----------
  [SystemZ] Don't zero extend after a VLGV[BHF] instruction. (#201109)

The VLGV already zero extends up to 64 bits, so a following zero extend
is not needed.

New TableGen patterns for these cases as well as a handling to avoid
tryRISBGZero() selecting i64 cases.


  Commit: f1620435a384c56e718a80ca0b2695285b6ce978
      https://github.com/llvm/llvm-project/commit/f1620435a384c56e718a80ca0b2695285b6ce978
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libcxx/test/support/nasty_string.h

  Log Message:
  -----------
  [libc++][test] Make narrowing in `nasty_char_traits::to_char_type` more explicit (#138375)

Previously, the cast was allowed due to
[P0960R3](https://wg21.link/p0960r3), which made narrowing implicitly
done in the parenthesized aggregate initialization. MSVC doesn't seem
happy with such an implicit manner, despite not being
copy-initialization or list-initialization, and emits warning C4242.

This patch makes the narrowing more explicit to MSVC with `static_cast`.
Follows up 3e7be494f84e51d5f4245d6f39e380a500f226a6.


  Commit: 74bf9b5666a6450ef87b130070b5df3da365183d
      https://github.com/llvm/llvm-project/commit/74bf9b5666a6450ef87b130070b5df3da365183d
  Author: Martin Wehking <martin.wehking at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    A clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2_fp_int_cvtn_x2.c
    A clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2_int_fp_cvt.c
    M clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p3_OR_sme2p3_RP___sme_AND_LP_sve2p3_OR_sme2p3_RP.c
    M clang/utils/TableGen/SveEmitter.cpp
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve2p3-intrinsics-fp-converts.ll
    A llvm/test/CodeGen/AArch64/sve2p3-intrinsics-fp-converts_x2.ll

  Log Message:
  -----------
  [AArch64] Add 9.7 CVT data processing intrinsics (#186807)

Add Clang intrinsics
svcvtt_f16_s8, _f32_s16, _f64_s32, _f16_u8, _f32_u16, _f64_u32
svcvtb_f16_s8, _f32_s16, _f64_s32, _f16_u8, _f32_u16, _f64_u32

+ lowering to AARCH64 Instrs. SCVTF, SCVTFLT, UCVTF, UCVTFLT

and Clang instrinsics:
svcvtn_s8[_f16_x2], _s32[_f64_x2], _u8[_f16_x2], _u16[_f32_x2],
_u32[_f64_x2]


+ lowering to AARCH64 Instrs. FCVTZSN, FCVTZUN

The Clang intrinsics are guarded by the sve2.3 and sme2.3 feature flags.

ACLE Patch:
https://github.com/ARM-software/acle/pull/428

The patch reuses `IsReductionQV` for resolving the overload of
intrinsics.
This naming is misleading and needs changed


  Commit: e202047408e85b061a936a985ee9fe1e5b651633
      https://github.com/llvm/llvm-project/commit/e202047408e85b061a936a985ee9fe1e5b651633
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/span
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_bytes.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.pass.cpp
    R libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.verify.cpp

  Log Message:
  -----------
  [libc++][span] LWG4243: `as_bytes`/`as_writable_bytes` is broken with `span<volatile T>` (#200993)

Closes #171317


  Commit: 6bfca10b7a9da1b35717f16a820c8e837f87ea17
      https://github.com/llvm/llvm-project/commit/6bfca10b7a9da1b35717f16a820c8e837f87ea17
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp

  Log Message:
  -----------
  [AArch64] Tidy up getMemOpInfo cases where Width == Scale (NFC) (#201153)


  Commit: 39658a8fa9d1900f90f218a5eeeb205c227e1262
      https://github.com/llvm/llvm-project/commit/39658a8fa9d1900f90f218a5eeeb205c227e1262
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang-rt/test/CMakeLists.txt

  Log Message:
  -----------
  [Flang-RT][test] Add flang-rt-mod dependency (#201297)

Flang-RT's tests require the modules since #198793. #171515 did not
account for this additional dependency.

Fixes #201254


  Commit: 74f1c9417e916aed314fd429ce2faee49668ffa6
      https://github.com/llvm/llvm-project/commit/74f1c9417e916aed314fd429ce2faee49668ffa6
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    A clang/test/Modules/pr195905.cppm

  Log Message:
  -----------
  [C++20] [Modules] Ask for definition before calling isInlineDefinitionExternallyVisible (#201291)

Close https://github.com/llvm/llvm-project/issues/195905

The root cause of the problem is, after decl merging, one of the
destructor for `base` (see test case) is chosen, and its body is not
deserialized for performance as we alreday see its body in current TU.
And then, the code call
FunctionDecl::isInlineDefinitionExternallyVisible from the destructor
without a serialized body, but
FunctionDecl::isInlineDefinitionExternallyVisible's implementation
requires to see a body. Then assertion failed.

Decl merging and function decl merging is common. We can't always make
sure we find the definition without checking. It is much more
fundamental. So the PR doesn't try to touch the decl merging mechanism
or how we handle the result of lookups.

We tried to fix the issue at the calling point to make sure we have a
definition for isInlineDefinitionExternallyVisible. Other use of
isInlineDefinitionExternallyVisible does the similar thing.


  Commit: 1023990a57d5824a6fc2f7a899b8f36977bbcf66
      https://github.com/llvm/llvm-project/commit/1023990a57d5824a6fc2f7a899b8f36977bbcf66
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/CMakeLists.txt
    R flang/lib/Semantics/check-omp-metadirective.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/lib/Semantics/check-omp-variant.cpp

  Log Message:
  -----------
  [flang][OpenMP] Rename check-omp-metadirective.cpp (NFC). (#201159)

Both METADIRECTIVE and DECLARE VARIANT fall into the "variant
directives" category, so check-omp-variant.cpp is a more accurate name
for the file that hosts their semantic checks.

Suggested in
https://github.com/llvm/llvm-project/pull/198799#issuecomment-4576970335


  Commit: ceca0519375094ca3c950bbdc2b8bf3f79cdaf4b
      https://github.com/llvm/llvm-project/commit/ceca0519375094ca3c950bbdc2b8bf3f79cdaf4b
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-zeroing-fpr.ll

  Log Message:
  -----------
  [AArch64] Fix arm64-zero-cycle-zeroing-fpr.ll check lines(NFC) (#200192)

Fix `mov`->`fmov` + add `--match-full-lines` to avoid such a pitfall
again.


  Commit: 1a03c29cab6bc8c67023181cfdafbd5e0dbac815
      https://github.com/llvm/llvm-project/commit/1a03c29cab6bc8c67023181cfdafbd5e0dbac815
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
    M llvm/test/CodeGen/AMDGPU/branch-relax-no-terminators.mir
    M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
    M llvm/test/CodeGen/AMDGPU/phys-partial-liveness.mir
    M llvm/test/CodeGen/AMDGPU/resource-usage-crash-unhandled-reg.mir
    M llvm/test/CodeGen/AMDGPU/sched-image-sample-post-RA.mir
    M llvm/test/CodeGen/AMDGPU/set-gpr-idx-peephole.mir
    M llvm/test/MC/AMDGPU/gfx11_asm_t16_err.s
    M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp

  Log Message:
  -----------
  [AMDGPU] Remove definition of hi16 for scalar registers (#197467)

The sub-register is not supported by the back-end pipelines and will
eventually cause an assert. With this change machine verifier can
enforce that hi16 is not being used. Asm parser is also updated to error
on invalid sub-registers, instead of asserting.

This is a follow up change on #188781.

Assisted-by: Claude Code


  Commit: d27b4b6c1c15d3e99d35749cefcf296500b0944e
      https://github.com/llvm/llvm-project/commit/d27b4b6c1c15d3e99d35749cefcf296500b0944e
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/cast-costs.ll

  Log Message:
  -----------
  [LV][NFC] Add another case to cast-costs.ll test (#201117)


  Commit: 75dece729ccdbae01e1d09d4adf9604ea1103905
      https://github.com/llvm/llvm-project/commit/75dece729ccdbae01e1d09d4adf9604ea1103905
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/fuchsia/statically-constructed-objects.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid evaluating value-dependent static initializers in fuchsia-statically-constructed-objects (#201287)

Static data member initializers in class templates could crash the check
when they used non-type template parameters. This commit skips them
during analysis.

Closes https://github.com/llvm/llvm-project/issues/201110


  Commit: 62eaec6c723129d0db2c2e7112fcf1579a94f0a6
      https://github.com/llvm/llvm-project/commit/62eaec6c723129d0db2c2e7112fcf1579a94f0a6
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    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-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll

  Log Message:
  -----------
  [LV] Support partial reduce subs/fsubs without a mul operand (#199664)

This allows the `UpdateR(PrevValue, ext(...))` form for fsub/sub updates
(i.e, AddWithSub or Sub reductions). For sub reductions the
codegen/handling is identical to add reductions (with the sub handled
out of loop). For AddWithSub, reductions the sub is handled in-loop with
a NegatedExtendedReduction VP expression, which the encapsulates
`reduce.[f]add(neg(ext(op)))`.


  Commit: 5d0074316a86de1019c5850584f5b5cdde9edefa
      https://github.com/llvm/llvm-project/commit/5d0074316a86de1019c5850584f5b5cdde9edefa
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/udivrem24.ll

  Log Message:
  -----------
  [AMDGPU] Fix LowerDIVREM24 for the unsigned case (#196418)

This PR fixes the miscompilation bug found in
https://github.com/llvm/llvm-project/issues/194829.

The test revealed that there were missing checks for the unsigned case
in LowerDIVREM24. Without those checks, the optimization is wrongly
applied assuming that the division operands do fit in 24-bit integers,
triggering the miscompilation. One of the operands was 0xFFFFFFFF.

The bug is a regression introduced in
https://github.com/llvm/llvm-project/commit/81a709503d378c188462465918df161d664c4205.
The commit refactored the conditions that validated whether the
optimization could be applied. It moved them from each call site (signed
and unsigned cases) into the function, but missed the ones for the
unsigned case.

---------

Co-authored-by: Carlo Bertolli <carlo.bertolli at amd.com>


  Commit: fb6153a65039b06319cb4b9ce2fafa84d75daa6b
      https://github.com/llvm/llvm-project/commit/fb6153a65039b06319cb4b9ce2fafa84d75daa6b
  Author: 陈子昂 <2802328816 at qq.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/ShrinkWrap.cpp
    A llvm/test/CodeGen/RISCV/shrinkwrap-save-restore-fixed-reg.ll

  Log Message:
  -----------
  [CodeGen] Fix ShrinkWrap crash when FindIDom receives empty predecessor/successor list (#198995)

When using `-msave-restore` with `-ffixed-x5` on RISC-V,
`canUseAsPrologue` returns false for all blocks because the save-restore
prologue requires t0 (x5) which is reserved. This causes the shrink-wrap
loop to keep searching for a valid save point, eventually reaching the
entry block. On the next iteration, it calls FindIDom with the entry
block's empty predecessor list, triggering an assertion in
findNearestCommonDominator.

Fix by returning nullptr from FindIDom when the block list is empty,
which signals the caller to stop searching and give up the optimization.

Fixes #166759


  Commit: 1bde29e83bc4d077d9f553d89846c4eba402f3e6
      https://github.com/llvm/llvm-project/commit/1bde29e83bc4d077d9f553d89846c4eba402f3e6
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-of-and.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-of-and.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-narrow-binop-feeding-add.mir

  Log Message:
  -----------
  [GlobalISel] Add `combine_or_of_and` from SelectionDAG (#198754)

This PR adds the pattern `// fold or (and x, y), x --> x` from
SelectionDAG.


  Commit: 4cfaaa679114c690edec268cb53d19d198c71bc2
      https://github.com/llvm/llvm-project/commit/4cfaaa679114c690edec268cb53d19d198c71bc2
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationDialect.cpp

  Log Message:
  -----------
  [NFC][mlir][bufferization] Remove getMemRefType() helper (#199034)

Replace getMemRefType() helper with a direct usage of
options.unknownTypeConverterFn() hook. This does not change any
behaviour since all the existing call-sites would already implicitly
call the hook. The major difference could have been in the handling of
the memref layout but this does not seem to be properly handled anyhow.

As the `getMemRefType()` helper is removed, there are two cases to keep
in mind for downstream users that need to adjust the code accordingly:
1. For creating memrefs without layouts, call
`options.unknownTypeConverterFn` hook directly (the same way this patch
is doing for upstream)
2. For creating memrefs with layouts (assuming, custom ones), please
(re)implement the same helper. As only ranked memrefs can have a layout,
a call to `mlir::MemRefType::get(shape, elementType, /*your custom
layout=*/myLayout, memorySpace)` should be sufficient.


  Commit: 3419e724ad5d1cf027da971581ae31c36a9dec51
      https://github.com/llvm/llvm-project/commit/3419e724ad5d1cf027da971581ae31c36a9dec51
  Author: Amina Chabane <amina.chabane at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A bolt/docs/BOLTAArch64OptimizationStatus.rst

  Log Message:
  -----------
  [AArch64][BOLT] Document AArch64 optimization flag support (#198282)

BOLTAArch64OptimizationStatus.rst aims to document default-off,
user-enabled passes and their status (supported/unsupported) on AArch64.

``--simplify-rodata-loads`` has a patch in review, so I have documented
its current status.

Discussion on RST/MD:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840


  Commit: 7496ee9be8d2d4467706615a975a4d61ccb3264d
      https://github.com/llvm/llvm-project/commit/7496ee9be8d2d4467706615a975a4d61ccb3264d
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/sincos.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with non-vectorized sincos, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/201312


  Commit: c958962c157b728e153b6232b800cbf556812545
      https://github.com/llvm/llvm-project/commit/c958962c157b728e153b6232b800cbf556812545
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    A llvm/test/Transforms/LoopInterchange/lcssa-incoming-value-is-not-instr.ll

  Log Message:
  -----------
  [LoopInterchange] Assume LCSSA PHI incoming value may not be instruction (#201069)

This patch fixes one of the assertion failures reported in #200819. The
root cause in this case is that `moveLCSSAPhis` assumes the incoming
values of LCSSA PHIs are always instructions and unconditionally casts
them to `Instruction`.
This assumption does not always hold, especially when the incoming value
is a constant. For such LCSSA PHI nodes, it's enough to merely replace
all the uses with its incoming value.


  Commit: 94c0e6fb2536cb2c0dbd205fadd4a8e929388b1a
      https://github.com/llvm/llvm-project/commit/94c0e6fb2536cb2c0dbd205fadd4a8e929388b1a
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/messages.h
    M libcxx/include/__locale_dir/money.h
    M libcxx/test/libcxx/localization/locales/use_facet.abort.pass.cpp
    A libcxx/test/libcxx/localization/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][locale] Applied `[[nodiscard]]` (#200726)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/localization

Remarks:
- Virtual functions are not marked `[[nodiscard]]` because they are not
expected to be directly called by users.
- `messages::open` is marked `[[nodiscard]]` because it is logically
similar to `operator new` and its friends.


  Commit: e2efa2e958270e0f21d9db2aa9a393006c9d6d0b
      https://github.com/llvm/llvm-project/commit/e2efa2e958270e0f21d9db2aa9a393006c9d6d0b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/phi-vectorization-budget.ll

  Log Message:
  -----------
  [SLP] Gather wide PHI bundles to avoid compile-time blow-up

Vectorizing a PHI bundle recurses into one operand bundle per incoming
value, so the analysis cost grows with bundle_size * num_incoming_values.
With revectorization, very wide PHIs from jump threading make
opt -O3 hang for minutes/hours. Such PHIs are not profitable to vectorize,
so gather the bundle once that product exceeds a budget (new hidden option
-slp-phi-vectorization-budget, default 1024).

Fixes #201181

Reviewers: hiraditya, bababuck, RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/201227


  Commit: c7ecad5c289c67829d8d43013c9ac46bc92ae4e6
      https://github.com/llvm/llvm-project/commit/c7ecad5c289c67829d8d43013c9ac46bc92ae4e6
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/DebuggerControllerBase.py
    A cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/DextIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/LocIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/Inputs/header.h
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp

  Log Message:
  -----------
  [Dexter] Add basic debugging support for structured scripts (#197418)

This patch adds a debugger controller for structured scripts. This
controller operates as follows:
- !where nodes at the root of the script (currently the only kind
allowed) have function or line breakpoints set to cover them.
- Whenever the debugger stops, the controller will examine the stack to
determine whether any !where nodes are in scope.
- While any !where is in scope, its associated !values will be evaluated
in the debugger and the results stored, and the debugger will
single-step.
- When no !where is in scope, the debugger will continue.

This is a simplified implementation compared to the final version, as it
is missing support for nested !where nodes, Scope evaluation, and
conditions/hit counts; these will be added in later commits.


  Commit: 869be014cf9a02f26ad938cc40fa83dfb62e90f9
      https://github.com/llvm/llvm-project/commit/869be014cf9a02f26ad938cc40fa83dfb62e90f9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll

  Log Message:
  -----------
  [AMDGPU] Diagnose unsupported permlane16/mov.dpp8/tanh intrinsics (#200585)


  Commit: 2fabed5f49d950b669b9f9a5a624d61aa8bdeda0
      https://github.com/llvm/llvm-project/commit/2fabed5f49d950b669b9f9a5a624d61aa8bdeda0
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    A llvm/test/CodeGen/SPIRV/cloned-funcs-metadata-oob.ll

  Log Message:
  -----------
  [SPIR-V] Diagnose out-of-bounds argument index in function type metadata (#200601)

The argument index in spv.cloned_funcs/spv.mutated_callsites metadata
was used to index the parameter list with only a lower bound assert

Add boundaries check it and report_fatal_error rather than silently
miscompiling


  Commit: 66ceecd18b654a4e94c70d2a8d7239114e2705cf
      https://github.com/llvm/llvm-project/commit/66ceecd18b654a4e94c70d2a8d7239114e2705cf
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.td
    M llvm/test/CodeGen/AMDGPU/asm-printer-check-vcc.mir
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relax-indirect-branch.mir
    M llvm/test/CodeGen/AMDGPU/branch-relax-no-terminators.mir
    M llvm/test/CodeGen/AMDGPU/hazards-gfx950.mir
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
    M llvm/test/CodeGen/AMDGPU/phys-partial-liveness.mir
    M llvm/test/CodeGen/AMDGPU/resource-usage-crash-unhandled-reg.mir
    M llvm/test/CodeGen/AMDGPU/sched-image-sample-post-RA.mir
    M llvm/test/CodeGen/AMDGPU/set-gpr-idx-peephole.mir
    M llvm/test/MC/AMDGPU/gfx11_asm_t16_err.s
    M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp

  Log Message:
  -----------
  Revert "[AMDGPU] Remove definition of hi16 for scalar registers" (#201309)

Reverts llvm/llvm-project#197467 as it causes a buildbot failure.


  Commit: 90d907b54ca222271439467c5f42073625211fed
      https://github.com/llvm/llvm-project/commit/90d907b54ca222271439467c5f42073625211fed
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.inst.ll
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [AMDGPU] Add llvm.amdgcn.s.prefetch.inst intrinsic (#192440)

- New intrinsic
- New SubtargetFeature for all s_prefetch_inst*/data*
- Support blockaddress


  Commit: 8a81ecc4e7cfc3b63041cc28e620d339f1933cb6
      https://github.com/llvm/llvm-project/commit/8a81ecc4e7cfc3b63041cc28e620d339f1933cb6
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-trunc.ll

  Log Message:
  -----------
  [X86] avx512-trunc.ll - add basic masked trunc coverage for #200617 (#201318)


  Commit: d515a6e5381d967f81f5d18d1b2a7a3255b48dc6
      https://github.com/llvm/llvm-project/commit/d515a6e5381d967f81f5d18d1b2a7a3255b48dc6
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/include/llvm-libc-types/CMakeLists.txt

  Log Message:
  -----------
  [libc] Remove redundant file(COPY) for x86_64 types (#201317)

Removed the redundant file(COPY) command from the x86_64 architecture
check in libc/include/llvm-libc-types/CMakeLists.txt.

This command eagerly copies the x86_64 directory to the binary
directory, which is redundant because individual headers are already
copied by their respective add_header targets. It also preserved
read-only depot permissions from the source tree, making the build
directory read-only and causing rm -rf to fail.

Assisted-by: Automated tooling, human reviewed.


  Commit: 7dc66bf2353d09a84dfa6aca70942b3902d94f6e
      https://github.com/llvm/llvm-project/commit/7dc66bf2353d09a84dfa6aca70942b3902d94f6e
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/u_char.h
    A libc/include/llvm-libc-types/u_int32_t.h
    A libc/include/llvm-libc-types/uint.h
    M libc/include/sys/types.yaml

  Log Message:
  -----------
  [libc] Add BSD/SysV compatibility types to sys/types.h (#201314)

Added u_char, u_int32_t, and uint to sys/types.h. These types are
commonly used by legacy and compatibility-reliant libraries like libedit
and libcap.

Assisted-by: Automated tooling, human reviewed.


  Commit: fb2233e688d089b1d7bf9a8032cd92a6de2ae213
      https://github.com/llvm/llvm-project/commit/fb2233e688d089b1d7bf9a8032cd92a6de2ae213
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Move mask intrinsics out of VP section (#201282)

Somehow llvm.get.active.lane.mask and
llvm.loop.dependence.{war,raw}.mask ended up in the VP intrinsics
section of the LangRef. This PR pulls them out into a new "Vector Mask
Intrinsics" section.


  Commit: f86688b3a16be15f7a50132d0497fcef6110afd1
      https://github.com/llvm/llvm-project/commit/f86688b3a16be15f7a50132d0497fcef6110afd1
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopInterchange/function-attr.ll
    R llvm/test/Transforms/LoopInterchange/memory-attr.ll

  Log Message:
  -----------
  [LoopInterchange] Rename test to `function-attr.ll` (NFC) (#201330)

The new name is more appropriate if we want to add further test cases.


  Commit: 2ba8bebb270d64a486096b6258f8ea6f764a630c
      https://github.com/llvm/llvm-project/commit/2ba8bebb270d64a486096b6258f8ea6f764a630c
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/symbol.h
    M flang/lib/Lower/OpenMP/Atomic.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/test/Semantics/OpenMP/requires-modfile.f90

  Log Message:
  -----------
  [flang][OpenMP] Refactor interface of WithOmpDeclarative (#200876)

The two major changes are that:
1. The clause sets are not optional anymore. In the absence of any
declarative directives (REQUIRES in this case), the set will simply be
empty.
2. The optional memory order member will serve as the value of the
argument to the ATOMIC_DEFAULT_MEM_ORDER clause, and will only be
meaningful (and required) when the clause is a member of the clause set.

Additionally,
- Rename the RequiredClauses type alias to OmpClauseSet, since it will
be reused for other purposes in the future.
- Remove the has_* functions since they are not necessary, and when more
members are added these functions will only add to the clutter.
- Add a version_ member for printing directive/clause names.


  Commit: 23172e419c567115a7a00e48debae327c502fe03
      https://github.com/llvm/llvm-project/commit/23172e419c567115a7a00e48debae327c502fe03
  Author: Valery Pykhtin <valery.pykhtin at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp

  Log Message:
  -----------
  [NFC][AMDGPU] Introduce AMDGPU::FlatAddrSpace enum to replace uint64_t FLAT discriminant (#200431)

This is the reapply of https://github.com/llvm/llvm-project/pull/200396 with renamed AMDGPU::FlatVariant to AMDGPU::FlatAddrSpace to avoid name conflict with function arguments (build error on gcc)

Replace the uint64_t parameter used as a FLAT address-space segment discriminant in isLegalFLATOffset, splitFlatOffset, allowNegativeFlatOffset with a typed enum class to prevent usage of raw TSFlags.

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: 8943bfbd08202aae1e85181082a1ec337e6a8b0b
      https://github.com/llvm/llvm-project/commit/8943bfbd08202aae1e85181082a1ec337e6a8b0b
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll

  Log Message:
  -----------
  [AMDGPU] Do not scale private alloca size when using flat-scratch (#201142)

When using flat-scratch, the `scratch_load/scratch_store` instructions
scale the stack offset by the wavefront size on their own.

Scaling the alloca-size by the wave-front size lead to accesses outside
of the private-memory limit.


  Commit: 0385a1b4e839ed35bf44bb5391999c3d48a8e2f7
      https://github.com/llvm/llvm-project/commit/0385a1b4e839ed35bf44bb5391999c3d48a8e2f7
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avg-mask.ll
    M llvm/test/CodeGen/X86/avx512-trunc.ll

  Log Message:
  -----------
  [X86] combineSelect - fold select(c,trunc(x),y) -> X86ISD::MTRUNC(x,y,c) for non-BWI targets (#201339)

Fixes #200617


  Commit: 27fd70f849f417db18ac581457f0419332a7a1fa
      https://github.com/llvm/llvm-project/commit/27fd70f849f417db18ac581457f0419332a7a1fa
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/LangOptions.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp

  Log Message:
  -----------
  [clang][NFC] Introduce `LangOptions::isCompatibleWith(ClangABI)` (#201067)

This slightly improves readability and reduces the probability of
off-by-one errors.


  Commit: 799af5d80d6335cd10de91506b6beb7c043278eb
      https://github.com/llvm/llvm-project/commit/799af5d80d6335cd10de91506b6beb7c043278eb
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-vcnt.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add handling for cls intrinsic (#200440)

Neon intrinsic neon.cls wasn't linked to the generic node G_CTLS.
Add in this link in Legalisation (LegalizeIntrinsic), to allow the intrinsic to properly lower.


  Commit: d67b41a20ca55b47f4d09bdba609fc305a9d2484
      https://github.com/llvm/llvm-project/commit/d67b41a20ca55b47f4d09bdba609fc305a9d2484
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/clmul-vector.ll

  Log Message:
  -----------
  [X86] Add clmul vector allones baseline tests for #200592 (#201321)


  Commit: 906968b379d2d591299b677868e4364e0ea1b5a0
      https://github.com/llvm/llvm-project/commit/906968b379d2d591299b677868e4364e0ea1b5a0
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopInterchange/function-attr.ll

  Log Message:
  -----------
  [LoopInterchange] Add tests for func attributes called in loops (NFC) (#201331)

LoopInterchange has special handling for call instructions. In general,
loops that contain call instructions are not legal to interchange, but
if a call satisfies certain conditions, we allow the interchange to
proceed. Currently, the legality checker only verifies whether the call
reads or writes memory. However, as pointed out in
https://github.com/llvm/llvm-project/pull/200828#issuecomment-4593914293,
we also need to ensure that the call does not diverge. Otherwise, an
illegal interchange may occur.
This patch adds test cases that demonstrate the issue, which will be
fixed in a follow-up patch.


  Commit: b1d5d7e3237ac5be660f82c71ec7323d6db7b724
      https://github.com/llvm/llvm-project/commit/b1d5d7e3237ac5be660f82c71ec7323d6db7b724
  Author: John Brawn <john.brawn at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/cmp_cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-vectorization-cost-tuning.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-icmpcost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/vpinstruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/reduction-small-size.ll

  Log Message:
  -----------
  [VPlan] Don't use the legacy cost model for loop conditions (#156864)

The current behaviour of using the legacy cost model for instructions
that compute the loop exit condition gets the wrong result when the loop
has been transformed to use a different exit condition, e.g. when have
tail-folded predicated vectorization the exit condition is based on the
predicate vector.

Fix this by adding cost computation for BranchOnCount and removing the
restriction on computing the cost for scalar ICmp/FCmp, and removing the
use of the legacy cost model for loop exit conditions.

This causes quite a lot of changes to expected output in tests. Some of
these are just changes to the -debug output, others are choosing a
different VF due to previously over or under-estimating the cost, and in
others the minimum trip count has changed as we now compute the cost for
compares in the middle block.


  Commit: 0fd2402e94447ae9ae77e319cc8e312b97e5a30e
      https://github.com/llvm/llvm-project/commit/0fd2402e94447ae9ae77e319cc8e312b97e5a30e
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M offload/ci/hip-tpl.py

  Log Message:
  -----------
  [HIP] Remove explicit compiler-rt from bot recipe (#201329)

The same change was done to the AnnotatedBuilder script recently. Let's
keep them in sync.
https://github.com/llvm/llvm-zorg/pull/861


  Commit: 52cf94a82eabfe70d417c17a3ab38736ded4938b
      https://github.com/llvm/llvm-project/commit/52cf94a82eabfe70d417c17a3ab38736ded4938b
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/test/CodeGen/AMDGPU/amdgpu-late-codegenprepare.ll
    M llvm/test/CodeGen/AMDGPU/widen_extending_scalar_loads.ll

  Log Message:
  -----------
  [AMDGPU] Drop !noundef when widening sub-DWORD constant loads (#201085)

The widened i32 load reads bytes outside the original sub-DWORD load, so
new op cannot claim !noundef


  Commit: 70d62e1e10907e1bd6dd0e92968acbf6fe58af37
      https://github.com/llvm/llvm-project/commit/70d62e1e10907e1bd6dd0e92968acbf6fe58af37
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/AVR.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/Serenity.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp

  Log Message:
  -----------
  [Clang] Rework LTO mode selection to be a Toolchain property (#201155)

Summary:
Currently, the LTO mode is a property of the Driver, which makes sense
because it is used to set up phases. However, we currently have `-flto`
and `-foffload-lto`, which is a split that doesn't fully work with the
full context of a heterogenous compilation as it is 'all-or-nothing'.

This PR seeks to be mostly NFC for now, just moving the queries to a
per-toolchain interface rather than the static driver mode setting we
have right now. The *single* use of this before ToolChains are created
is for the Webassembly toolchain to set an include path. This is now
just a direct check on the flag, which is consistent. In the future they
could shift to fat LTO objects as well.

The main goal for the PR is to allow the GPU / Offloading toolchains to
specify their "real" LTO behavior. Right now SPIR-V and AMDGCN both
default to LTO, but rather than re-use the LTO handling we hack through
the driver phases to override it. Allowing this split would let us
heavily simplify this logic.

Co-authored-by: Cursor <cursoragent at cursor.com>

---------

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 911eddeed7ba2359c953396afce934fee269f50e
      https://github.com/llvm/llvm-project/commit/911eddeed7ba2359c953396afce934fee269f50e
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/test/Driver/include-omp-header.f90
    M flang/test/lit.cfg.py
    M openmp/module/CMakeLists.txt

  Log Message:
  -----------
  [Flang] Fix omp_lib.h location and search path (#201104)

Before this PR, omp_lib.h is emitted to `${PREFIX}/include` or
`${PREFIX}/lib/clang/<version>/include` (install prefix) and
`${PREFIX}/runtime/src/omp_lib.h` (builddir prefix). It is never found
there because the driver only adds `${PREFIX}/include/flang/OpenMP` to
the include path.

Fix the `omp_lib.h` include by using the same mechanism as the
omp_lib.mod; that is, move it to
`${PREFIX}/lib/clang/<version>/finclude/flang/<target-triple>`. The
search path is already added by the driver via
`-fintrinsics-modules-path` by the driver. Although omp_lib.h currently
does not contain anything target-specific, it could do so in the future
and I don't think it is worth the effort to add a mechanism without the
target triple. It should also me consistent with omp_lib.mod.

The changes in detail consist of:
1. Move the omp_lib.h output in the builddir to
`${RUNTIMES_OUTPUT_RESOURCE_MOD_DIR}`. This already takes care of
whether it is a bootstrapping build or not.
3. Move the omp_lib.h install dir to
`${RUNTIMES_INSTALL_RESOURCE_MOD_PATH}`.
4. Remove the implicit search path `include/flang/OpenMP` from the
frontend. There is nothing in there anyway.
5. Hardcoding the include search path for testing to the
`LLVM_RUNTIME_TARGETS=default` build becomes unnecessary. This was way
the `include-omp-header.f90` test was still passing, although it would
not work outside the regression tests. Essentially, it tested
lit.site.cfg, not the driver.
6. Replace the old `include-omp-header.f90` test. It created a temporary
`omp_lib.h` that interferes with any other test that use `include
omp_lib.h` (there currently isn't but I originally intended to add the
replacement as an additional omp_lib.h test which resulted in a flaky
test while the original test was there). Due to how the %flang(_fc1)
substitution works, lookup order may also vary.


  Commit: e5332f3ea1766a0cfaa1a50a4db9f78c9d39cd3b
      https://github.com/llvm/llvm-project/commit/e5332f3ea1766a0cfaa1a50a4db9f78c9d39cd3b
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCGOFFObjectWriter.h
    M llvm/lib/MC/GOFFObjectWriter.cpp

  Log Message:
  -----------
  [SystemZ][GOFF] Implement reset() for GOFFObjectWriter (#201197)

The reset() methods is used to free memory before the object is
destructed or reused. This change adds this functionality to the GOFF
writer.


  Commit: c689c165ba2723285258975a14cd562d41d059ab
      https://github.com/llvm/llvm-project/commit/c689c165ba2723285258975a14cd562d41d059ab
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/src/__support/FPUtil/bfloat16.h
    M libc/test/src/__support/FPUtil/bfloat16_test.cpp

  Log Message:
  -----------
  [libc] Add compound assignment operator overloads for BFloat16 (#201301)

The current Bfloat16 has normal operator overloads `+` , `-` , `=`,
`!=`, `*`, & `/`.
Later during a function failure `*=` was added in
https://github.com/llvm/llvm-project/pull/182882
For completeness the rest of the operators: `/=`, `+=`, `-=` are added 
These are added along with some smoke test .


  Commit: a2369b9743391351b1dd4a5c38fb61e295ff7088
      https://github.com/llvm/llvm-project/commit/a2369b9743391351b1dd4a5c38fb61e295ff7088
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp

  Log Message:
  -----------
  [Clang] Fix leftover use of old LTO path (#201360)

Summary:
This was accidentally missed when I merged the refactor because it
showed up after I made the PR and didn't have any merge conflicts I
noticed.


  Commit: ef4fb183a8d5c0d1910f7b5b6776ba669d6795ef
      https://github.com/llvm/llvm-project/commit/ef4fb183a8d5c0d1910f7b5b6776ba669d6795ef
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/test/HLFIR/opt-bufferization-eval_in_mem.fir

  Log Message:
  -----------
  [flang][hlfir] Resolve shape_of users when bufferizing eval_in_mem (#201214)

A follow-up to #197814.

Example:

```fortran
bmat = matmul(mat, mat)   ! bmat is allocatable
```

In this code, `SeparateAllocatableAssign` sizes the reallocation with an
`hlfir.shape_of` of the RHS. Once the `matmul` is lowered to
`hlfir.eval_in_mem`, that `shape_of` is an extra user, so
`EvaluateIntoMemoryAssignBufferization` erases the `eval_in_mem` while
it's still used, hitting a `use-after-erase` assertion at `-O2`.

Fix: in `OptimizedBufferization`, redirect a `shape_of` user to the
`eval_in_mem`'s shape operand before erasing it.


  Commit: a7bfea843c73c9b48feb1b94c996924d2881f362
      https://github.com/llvm/llvm-project/commit/a7bfea843c73c9b48feb1b94c996924d2881f362
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    R llvm/test/Transforms/InferAddressSpaces/AMDGPU/old-pass-regressions-inseltpoison.ll
    R llvm/test/Transforms/InterleavedAccess/AArch64/interleaved-accesses-inseltpoison.ll

  Log Message:
  -----------
  [Transforms] Delete identical poison tests (NFC) (#201349)

These are now bit-identical to the original tests:
- llvm/test/Transforms/InferAddressSpaces/AMDGPU/old-pass-regressions.ll
- llvm/test/Transforms/InterleavedAccess/AArch64/interleaved-accesses.ll


  Commit: 9e01e0970c4cf810e99bdfde3a2329610df6d90c
      https://github.com/llvm/llvm-project/commit/9e01e0970c4cf810e99bdfde3a2329610df6d90c
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang-rt/CMakeLists.txt

  Log Message:
  -----------
  [Flang-RT] Disable tests by default without modules (#201311)

With #201297 flang-rt-mod is required for running tests. Disable tests
by default if module files are not built.


  Commit: 7eff475c4998039878563b987121c7fcc002b7b3
      https://github.com/llvm/llvm-project/commit/7eff475c4998039878563b987121c7fcc002b7b3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/test/Driver/hip-toolchain-no-rdc.hip

  Log Message:
  -----------
  [HIP] Fix test for --no-lto (#201367)


  Commit: 3a9c6cdb5d99cbcbb98c8d3562c409ddc5822deb
      https://github.com/llvm/llvm-project/commit/3a9c6cdb5d99cbcbb98c8d3562c409ddc5822deb
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A clang/include/clang/AST/MatrixUtils.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/AST/HLSL/matrix_layout_attr.hlsl
    A clang/test/CodeGenHLSL/matrix-layout-attr-overrides-default.hlsl
    M clang/test/SemaHLSL/BuiltIns/logical-mat-operator-errors.hlsl
    M clang/test/SemaHLSL/MatrixElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixImplicitTruncCastWarnings.hlsl

  Log Message:
  -----------
  [Matrix][HLSL] Add codegen support for Matrix Layout keywords (#198887)

fixes #192262
    
- Wrap Matrix Type in a row or column major layout attribute
- Add Helper to know which Matrix Layout to apply in codegen or check
for in Sema
- Remove the Decl Atribute and only store on the type.

Assisted by Claud Opus 4.7


  Commit: 270a6a8f6742b6a0e86d1a6b3ca6b90b39a64e87
      https://github.com/llvm/llvm-project/commit/270a6a8f6742b6a0e86d1a6b3ca6b90b39a64e87
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/test/Parser/OpenMP/declare_target-device_type.f90
    M flang/test/Parser/OpenMP/groupprivate.f90
    A flang/test/Semantics/OpenMP/declare-target-flags.f90
    A flang/test/Semantics/OpenMP/declare-target-modfile.f90
    M flang/test/Semantics/OpenMP/dump-requires-details.f90

  Log Message:
  -----------
  [flang][OpenMP] Store DECLARE_TARGET information in WithOmpDeclarative (#201103)

This will be used to emit DECLARE_TARGET directives into module files.

When a symbol apperars in DECLARE_TARGET, the OmpDeclareTarget flag will
be set on it (this includes procedures containing a DECLARE_TARGET
without arguments or clauses). The set of accompanying clauses will be
stored in the associated details, in the WithOmpDeclarative mixin. The
mixin was added to ObjectEntityDetails, ProcEntityDetails, and
CommonBlockDetails.

The design goal was to be able to reconstruct the appropriate DECLARE_
TARGET directive for individual symbols for the purpose of emitting it
in a module file. Simply storing and then unparsing the AST node may
include symbols that should not be emitted.

Additionally, refactor the WithOmpDeclarative printing code for reuse in
symbol dumping for debugging, and for printing clause sets.


  Commit: 9606c9ff18f0d90a639b132a7f69ebc8a8f61c99
      https://github.com/llvm/llvm-project/commit/9606c9ff18f0d90a639b132a7f69ebc8a8f61c99
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp

  Log Message:
  -----------
  Reapply "[clang] remove lots of "innocuous" addrspacecasts"  (#200427)

Reapply #197745, with an additional commit to undo a small part of the
first commit, pending further analysis of alternatives to that part of it.

In particular, make the `agg.tmp` (CreateAggTemp) values keep using the
declared expression type of the RValue. This is indeed probably
sensible, since it lets Sema influence this via the expression type,
though it runs into some issues where some expression types (notably for
any load) haven't had one of the equivalent functions
getNonLValueExprType/DeduceAutoType/getUnqualifiedType called on them,
so they are bringing along additional annotation baggage which doesn't
apply the the rvalue when turned into a temporary (see comments in
getNonLValueExprType for relevant part of C++ standard). This in turn is
also rarely relevant, since inventing temporaries aren't often allowed
in this part of the pipeline (it'd require a move constructor) so the
LValue Dest already provides the type and the RValue type is ignored.
However, it does affect a single test (which loads a global but ignores
the result) and so this adds an extra `getUnqualifiedType` call to
`CodeGenFunction::EmitAnyExpr` so that load doesn't propagate the
qualifiers from source to temporary. This might be a common issue with
load-like expressions (for example, there's a `getUnqualifiedType` in
AtomicExpr code when computing the appropriate codegen for the result,
so it also didn't trust Sema to have created this correctly--and indeed
it seems that Sema expects CG to wait until after
DefaultLvalueConversion before it is does anything with the result type)


  Commit: 90a172b53e77e4171b67e9fe4215707aed45cda4
      https://github.com/llvm/llvm-project/commit/90a172b53e77e4171b67e9fe4215707aed45cda4
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inline-asm-mismatched-size.ll
    M llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size-error.ll

  Log Message:
  -----------
  [AMDGPU] Reject named single register inline asm constraints for wider types (#200771)

A named single register constraint like `={v0}` was silently accepted
for i64 result, binding it to one 32-bit register

Reject scalars larger than 32 bits as well


  Commit: 4a8c5d231227d7c6c61160e5be25f4626cdabbb8
      https://github.com/llvm/llvm-project/commit/4a8c5d231227d7c6c61160e5be25f4626cdabbb8
  Author: Yair Ben Avraham <yairba at protonmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-2velem.c
    M clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
    M clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
    M clang/test/CodeGen/AArch64/neon/fused-multiply.c
    M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c

  Log Message:
  -----------
  [CIR][AArch64] Lower vfmaq_lane_v and vfma_laneq_v (#197084)

Lower BI__builtin_neon_vfmaq_lane_v and BI__builtin_neon_vfma_laneq_v in
CIR.

This handles the covered vfmaq_lane_* and vfma_laneq_* ACLE wrappers by
bitcasting operands to the expected types, selecting the requested lane
from the lane source operand, and emitting fma through
emitCallMaybeConstrainedBuiltin.

For vfmaq_lane_v, the selected lane is splatted with emitNeonSplat.
For vfma_laneq_v, the lane is selected from the wider lane source; the
f64 case extracts the scalar lane before emitting scalar fma.

Neighboring scalar lane/laneq wrappers and other out-of-scope forms
remain explicit NYI cases.

Tests are moved into the existing CIR-enabled fused multiply files under
clang/test/CodeGen/AArch64/neon/, reusing upstream LLVM checks where
possible and adding CIR coverage for lane selection and fma lowering.

Part of #185382
Follow-up to #195602


  Commit: f1b42dcc2326b80116430c9a60f41b0f86abbff7
      https://github.com/llvm/llvm-project/commit/f1b42dcc2326b80116430c9a60f41b0f86abbff7
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_with_stores.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/early_exit_with_stores.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/early_exit_with_stores_vplan.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_with_stores.ll
    A llvm/test/Transforms/LoopVectorize/interleave_uncountable_exits.ll
    A llvm/test/Transforms/LoopVectorize/scalarized_conditional_ops_uncountable_exits.ll
    A llvm/test/Transforms/LoopVectorize/tail_fold_uncountable_exits.ll
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp

  Log Message:
  -----------
  [LV] Vectorize early exit loops with stores using masking (#178454)

This is an alternative approach to vectorizing early exit loops with
stores that avoids needing to add an extra check block. This is a
fairly straightforward approach that should work on vector ISAs
supporting masked memory ops.

The basic approach is to create a mask covering all lanes _before_ any
exiting lane, using cttz.elts and active.lane.mask (which sets all lanes
to true if the uncountable exit wasn't taken). If the uncountable exit
was taken, then there will still be one scalar iteration left to perform
after the vector loop, which will also handle which exit block we should
branch to.

We no longer need to advance exit conditions in the vector body to the
next iteration (compared to the other PR), though we still need to move
the recipes needed to generate the exit condition (depending on which
memory operations are first in the loop).

The advantage this has over a full in-loop mask approach is that we
don't need to form intermediate masks for each uncountable exit; while I
haven't tried to mix this with the ongoing multiple-exit work yet, we
should be able to handle them without increasing the amount of generated
per-exit code. We also won't need to unpick which exit condition was met
first.

For a pseudo-C example of the transformation (with S1 and S2
representing statements with a side effect, like stores, or possibly a
load that may fault if continued past the early exit), given the
following scalar loop:

```c
for (i = 0; i < N; ++i) {
  S1;
  if (a[i] == threshold)
    break;
  S2;
}
```

we would have a vector loop and scalar tail like the following:

```c
int i = 0;
for (; i < vecN; i += VF) {
  // Move load for uncountable exit condition before other
  // operations in the loop.
  vecA = a[i]...a[i+VF-1];

  // Create mask for all lanes _before_ any uncountable exit.
  vecCmp = vecA == splat(threshold);
  mask = get.active.lane.mask(0, cttz.elts(vecCmp));

  // Execute statements with side effects using the mask
  vecS1(mask);
  vecS2(mask);

  // If there was an uncountable exit, increase IV by the number
  // of elements in the mask, and bail out to the scalar tail.
  if (any_of(vecCmp)) {
    i += cttz.elts(vecCmp);
    break;
  }
}
// Scalar tail handles remaining iterations, plus any differences
// in exit block for different exits.
for (; i < N; ++i) {
  S1;
  if (a[i] == threshold)
    break;
  S2;
}
```

For the mask, given a comparison result of `<0, 0, 1, 0>`, we would
expect a mask of `<1, 1, 0, 0>`.


  Commit: fdf8fb6c13deb88c2e179a4eed0c66900dcd92d8
      https://github.com/llvm/llvm-project/commit/fdf8fb6c13deb88c2e179a4eed0c66900dcd92d8
  Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang/Options/FlangOptions.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/OpenACC-extensions.md
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Support/Fortran-features.cpp
    A flang/test/Lower/OpenACC/acc-module-definition-multi-name.f90
    A flang/test/Lower/OpenACC/acc-routine-multi-name.f90
    A flang/test/Parser/acc-routine-empty-parens.f90
    M flang/test/Parser/acc-unparse.f90
    A flang/test/Semantics/OpenACC/acc-routine-multi-name-disabled.f90
    A flang/test/Semantics/OpenACC/acc-routine-multi-name.f90

  Log Message:
  -----------
  [flang][openacc] add extension which accepts multiple names in a OpenACC routine directive (#200296)

This PR adds an extension which allows one or more function names in a
single named routine directive. This is treated as multiple named
routine directives with the same clauses. The bind clause is forbidden.
The empty list of names isn't excepted. Routine clauses are stable under
unparsing.

This PR tests Parsing, Unparsing, Semantics, and Lowering.


  Commit: d307ba096e49c4503b50191d6e0ab2879942ffdd
      https://github.com/llvm/llvm-project/commit/d307ba096e49c4503b50191d6e0ab2879942ffdd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp

  Log Message:
  -----------
  [DAGCombiner] Remove untested vp_fma combines. (#201239)

RISC-V no longer uses vp_fma in SelectionDAG leaving these combines
untested.

This effectively reverts 2fe2a6d4b8a4647e49d69a5ff7161946aeb7cee1.


  Commit: 05e8d9f86a1d29e32d92a04ff9f0371f25057f33
      https://github.com/llvm/llvm-project/commit/05e8d9f86a1d29e32d92a04ff9f0371f25057f33
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/AssemblyAnnotationWriter.h
    M llvm/lib/IR/AsmWriter.cpp

  Log Message:
  -----------
  [AsmWriter] Add emitMDNodeAnnot (#198317)

Similarly to the other AAW::emit*Annot functions, this may be used to
emit a comment before a metadata node.


  Commit: 5816ef1560d13b7fd27e623e7f88f2e44cd11e21
      https://github.com/llvm/llvm-project/commit/5816ef1560d13b7fd27e623e7f88f2e44cd11e21
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/__init__.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/__init__.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp

  Log Message:
  -----------
  [Dexter] Add basic result evaluation for structured scripts (#198803)

This patch adds evaluation for structured scripts, completing the
features required to run simple Dexter tests using structured scripts.
The basic output from these evaluations is a list of named metrics
aggregating the results of evaluating !value nodes. The verbose output
gives a per-step summary of the results for each expect node active at
that step.

Most of the new functionality is in the evaluation/ dir, which has also
absorbed some functionality previously stored in the
ScriptDebuggerController for matching !where nodes to a debugger StepIR,
as this is logic which is common to both managing a debugger session and
evaluating the end result.


  Commit: aa8e38f4f87189a5952c8471fb6cb7464f2b9d94
      https://github.com/llvm/llvm-project/commit/aa8e38f4f87189a5952c8471fb6cb7464f2b9d94
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M openmp/module/CMakeLists.txt

  Log Message:
  -----------
  [OpenMP] FIx omp_lib.mod compilation for the GPU (#201377)


  Commit: 582d2fd3901f2f3b5ea9373471d87c5995a26a80
      https://github.com/llvm/llvm-project/commit/582d2fd3901f2f3b5ea9373471d87c5995a26a80
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/call-instructions.ll
    M llvm/test/Transforms/LoopInterchange/function-attr.ll

  Log Message:
  -----------
  [LoopInterchange] Bail out if function that may diverge is called (#201348)

This patch fixes the issue pointed out in
https://github.com/llvm/llvm-project/pull/200828#issuecomment-4593914293.
As demonstrated by the test cases added in #201331, it is not legal to
interchange loops that contain call instructions which may diverge. This
patch adds an additional check and bails out early when we cannot prove
that a call instruction in the loops doesn't diverge.


  Commit: 8ae895af32cc2f7c506e39f5736e1115a8afb4ce
      https://github.com/llvm/llvm-project/commit/8ae895af32cc2f7c506e39f5736e1115a8afb4ce
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/atomicrmw-allow-ftz-atomics.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw.py
    M llvm/test/CodeGen/NVPTX/atomics.ll

  Log Message:
  -----------
  [NVPTX] Respect FTZ flag when lowering atomicrmw fadd. (#200732)

Previously we unconditionally lowered LLVM atomicrmw fadd to PTX
atom.add.  This is incorrect, because it ignores the FTZ behavior of the
LLVM and PTX instructions.


  Commit: e97e67681d0d7de9c6ab8b293852068ea5591066
      https://github.com/llvm/llvm-project/commit/e97e67681d0d7de9c6ab8b293852068ea5591066
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/test/API/macosx/expedited-thread-pcs/TestExpeditedThreadPCs.py

  Log Message:
  -----------
  [lldb/test] Fix TestExpeditedThreadPCs on remote-darwin targets (#201275)


  Commit: 12f60d0684a96e3858296c49db4c4cd275ae672f
      https://github.com/llvm/llvm-project/commit/12f60d0684a96e3858296c49db4c4cd275ae672f
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp

  Log Message:
  -----------
  [AMDGPU] Remove unneeded early outs in getDivNumBits. NFC. (#201366)


  Commit: 2d249cd753ca8f6d291d4fccdcfba3af3bd9c778
      https://github.com/llvm/llvm-project/commit/2d249cd753ca8f6d291d4fccdcfba3af3bd9c778
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  Remove incorrect gcal link from C/C++ language wg (#201374)

The C and C++ language working group meets on the first and third Wed of
the month, but Google Calendar does not support doing this via a single
event. Instead, we have one event for recurring on the 1st Wed and a
second event for recurring on the 3rd Wed. That means we cannot use a
single gcal link for the event. Instead of listing two links, this
removes the gcal link entirely because the meeting is also listed on the
community calendar itself. This reduces confusion for folks, but it
would be nice to get a replacement link at some point.


  Commit: 0cea23a93700e1a454369f617525f628df84a064
      https://github.com/llvm/llvm-project/commit/0cea23a93700e1a454369f617525f628df84a064
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/test/Driver/hipspv-toolchain.hip

  Log Message:
  -----------
  [HIP] Fix another test for --no-lto (#201382)


  Commit: 0f4b1e11e64fdaaf6258043e1a30014b00bd04d3
      https://github.com/llvm/llvm-project/commit/0f4b1e11e64fdaaf6258043e1a30014b00bd04d3
  Author: Sushant Gokhale <sgokhale at nvidia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-trunc-stores.ll

  Log Message:
  -----------
  [AArch64] Address issue reported in PR#196029 (#199122)

For certain types of truncating stores, the lowering action is set to
custom although no custom lowering exists for them.

This patch addresses issue reported in PR #196029 by removing the custom lowering entry.


  Commit: c6c2ad52586c28e74a724570985a48dc0022d250
      https://github.com/llvm/llvm-project/commit/c6c2ad52586c28e74a724570985a48dc0022d250
  Author: Aayush Shrivastava <iamaayushrivastava at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/bitfield-insert.ll
    M llvm/test/CodeGen/AArch64/bswap-known-bits.ll
    M llvm/test/CodeGen/AArch64/sshl_sat.ll
    M llvm/test/CodeGen/AArch64/ushl_sat.ll
    A llvm/test/CodeGen/X86/aext-and-trunc-avx512.ll
    A llvm/test/CodeGen/X86/aext-and-trunc.ll
    M llvm/test/CodeGen/X86/and-with-overflow.ll
    M llvm/test/CodeGen/X86/combine-srem.ll
    M llvm/test/CodeGen/X86/llvm.frexp.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-innerouter.ll
    M llvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-interleavedbits.ll
    M llvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-interleavedbytehalves.ll
    M llvm/test/CodeGen/X86/unfold-masked-merge-scalar-constmask-lowhigh.ll

  Log Message:
  -----------
  [DAG] Fold any-extend(and(trunc(x), C)) -> and(x, C) (#200052)

Fixes #195575

Fix a missed optimization in `DAGCombiner::visitANY_EXTEND` where the
pattern `any-extend(and(trunc(x), C))` was not being folded into `and(x,
C)` on X86, causing a redundant `movzbl` instruction to be emitted after
a small-mask AND.


  Commit: 91edd87a801fc5c9d12c7f5c6863edd50327cef8
      https://github.com/llvm/llvm-project/commit/91edd87a801fc5c9d12c7f5c6863edd50327cef8
  Author: mike-goutokuji <gfunni234 at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/test/CodeGen/PowerPC/ucmp.ll

  Log Message:
  -----------
  [Legalizer] Add support for promoting integers for s/ucmp (#198554)

Instead of manually doing promotion in LowerUCMP of platforms like
PowerPC, we should have this logic in the legalizer.


  Commit: 678a6c7dbbb90b5cf856d487820c63aafa6de25b
      https://github.com/llvm/llvm-project/commit/678a6c7dbbb90b5cf856d487820c63aafa6de25b
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/SampleGrad.ll

  Log Message:
  -----------
  [DirectX] Implement lowering of SampleGrad. Refactor sample lowering functions (#200871)

Fixes #192549

This PR builds atop #199745 by adding a helper `lowerSampleOp` function
to refactor `lowerSampleBias` and implement `lowerSampleGrad`.

The `lowerSampleGrad` implementation is very similar to
`lowerSampleBias`, just with ddx and ddy arguments instead of a bias.
Unlike SampleBias, SampleGrad is usable in all shader stages because it
has explicit gradient/derivative arguments.

Assisted-by: GitHub Copilot


  Commit: 06ac45db1597049c0e4f04c334bf78cd362b75ee
      https://github.com/llvm/llvm-project/commit/06ac45db1597049c0e4f04c334bf78cd362b75ee
  Author: Ilpo Ruotsalainen <lonewolf at iki.fi>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    A llvm/test/CodeGen/X86/GlobalISel/calllowering-inalloca.ll

  Log Message:
  -----------
  [GISel][CallLowering] Set byval flag for inalloca/preallocated args (#200600)

GlobalISel asserts when lowering a function with an `inalloca` or
`preallocated` argument:

> TargetCallingConv.h:183: void
llvm::ISD::ArgFlagsTy::setByValSize(unsigned): Assertion `isByVal() &&
!isByRef()' failed.

https://godbolt.org/z/jWr4enjaj

`addFlagsFromAttrSet()` sets the `InAlloca`/`Preallocated` flags but
never `ByVal`.
`setArgFlags()` then calls `Flags.setByValSize()` for any non-`ByRef`
indirect argument which asserts `isByVal()`.

`SelectionDAGISel::LowerArguments()` avoids this by deliberately also
setting the `ByVal` flag for `inalloca`/`preallocated`, this change
makes the GlobalISel side match that behavior.


  Commit: 15375d84799ec260d101aa35670f61fa456b6a4e
      https://github.com/llvm/llvm-project/commit/15375d84799ec260d101aa35670f61fa456b6a4e
  Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang/Options/FlangOptions.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/OpenACC-extensions.md
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Support/Fortran-features.cpp
    A flang/test/Semantics/OpenACC/acc-default-none-scalars-strict.f90
    M flang/test/Semantics/OpenACC/acc-default-none-scalars.f90

  Log Message:
  -----------
  [flang][openacc] change option feature flag names to address comments. (#200037)

- Fixes FeatureFlags and CLI flags to use OpenACC instead of ACC.
- Offline comments further refined the name to be
OpenACCDefaultNoneScalarsStrict
- Which changes the semantics requiring the user to opt out of the
default behavior, instead of opt-in to an extension.
- Also makes the CLI flag OptOut instead of OptIn to match the cli
behavior.
- Gets rid of the unneeded warning flag since FeatureFlags have both a
disabled bit and a warning bit.
- Updates old test for these changes and adds a new test to document all
the different cli configurations.


  Commit: cd75a7db92289d9784b471b27cd72cb50a2352fd
      https://github.com/llvm/llvm-project/commit/cd75a7db92289d9784b471b27cd72cb50a2352fd
  Author: Jan Schultke <me at eisenwave.net>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [SelectionDAG] Fix missed optimization for CLMUL where one operand is all ones (#200592)

Fixes #200556

This special case is equivalent to a "parallel prefix XOR" or "bitwise
parity" operation, which can be expanded to a logarithmic amount of
bitwise operations instead of a linear amount (relative to the bit
width). When other bitwise operations such as BDEP and BEXT are
expanded, they rely on that operation being lowered to a CLMUL directly
or expanded to this efficient form.

See also
- #200570 (this PR needs this fix to have good codegen)


  Commit: cf9bf34e29e67fae3562705cfaffb71c7846e8c8
      https://github.com/llvm/llvm-project/commit/cf9bf34e29e67fae3562705cfaffb71c7846e8c8
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.cpp
    M llvm/test/CodeGen/AMDGPU/lds-dma-workgroup-release.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll

  Log Message:
  -----------
  [AMDGPU] Fix backward compatibility kernarg preload prolog base offset (#201355)

Backward compatibility preload prolog loaded args from kernarg-segment
byte 0, but on non-AMDHSA triples the explicit args start at
`getExplicitKernelArgOffset()` (value: 36), so preloaded SGPRs held the
runtime header instead of the arguments


  Commit: ee10231219016efcc51a23bb74dc541dcba3aaf6
      https://github.com/llvm/llvm-project/commit/ee10231219016efcc51a23bb74dc541dcba3aaf6
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
    M libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
    M libc/include/stdio.yaml

  Log Message:
  -----------
  [libc] Add explicit format attributes for modular printf (#201212)

We had been relying on compiler-generated format attributes when using
the modular_format attribute for printf-family functions, but this is
not applied in -ffreestanding mode. When modular format is enabled, libc
is explicitly asserting the semantics of these functions, so it should
be explicit about the format attributes as well to keep them from
breaking in -ffreestanding.

Generated by Gemini, reviewed and edited by hand.


  Commit: 3a1420effe06748cb9bd1b2ef746bd5be25fad52
      https://github.com/llvm/llvm-project/commit/3a1420effe06748cb9bd1b2ef746bd5be25fad52
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A clang/cmake/caches/generic-allow-shared-imports.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-defaults-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dylib-dist.cmake

  Log Message:
  -----------
  [Hexagon] Add cmake caches for cross-toolchain distribution build (#201207)

Adds and extends the
clang/cmake/caches/hexagon-unknown-linux-musl-clang* files to drive a
full install-distribution build: host tools, per-target builtins (Linux
and baremetal), and runtimes for hexagon-unknown-linux-musl.


  Commit: f080619e96dfc661fd0f4c0f51a7cc2457d298b9
      https://github.com/llvm/llvm-project/commit/f080619e96dfc661fd0f4c0f51a7cc2457d298b9
  Author: Martin Erhart <martin.erhart at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/test/python/ir/location.py

  Log Message:
  -----------
  [mlir][Python] Downcast location returned from diagnostic (#201337)

Essentially a follow up to
https://github.com/llvm/llvm-project/pull/192630


  Commit: 0b109532693fec0dce3a8d275b716f5a5fb6e45c
      https://github.com/llvm/llvm-project/commit/0b109532693fec0dce3a8d275b716f5a5fb6e45c
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/CMakeLists.txt
    M lldb/source/Host/common/PythonRuntimeLoader.cpp

  Log Message:
  -----------
  [lldb][windows] explicitly load python3.dll in PythonRuntimeLoader (#201399)

When building with the Python stable API, `liblldb.dll`'s delay-load
crashes because it needs `python3.dll` and it can't find it
Loading `python310.dll` via `LoadLibrary` with a full path doesn't add
Python's directory to the DLL search path for subsequent loads.
This patch also explicitly loads `python3.dll` from the same directory
in `PythonRuntimeLoader` to fix the issue.

This is needed for https://github.com/llvm/llvm-project/pull/200533.


  Commit: 7954dcc70ef251581f95582beb7929e286ec9fe9
      https://github.com/llvm/llvm-project/commit/7954dcc70ef251581f95582beb7929e286ec9fe9
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/test/Transforms/CodeExtractor/input-value-debug.ll
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/generated_funcs.ll.generated.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/generated_funcs.ll.nogenerated.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/generated_funcs_prefix_reuse.ll.generated.globals.expected
    M llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/generated_funcs_prefix_reuse.ll.nogenerated.globals.expected
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [HotColdSplit] Unconditionally mark new functions as cold (#200947)

Previously, HotColdSplit would only mark functions as cold if there was
a profile summary available in the module metadata. This was causing
profcheck failures and is inconsistent with how we handle profile
metadata in other parts of the compiler.

This behavior has been around since
c36c10ddfb3dc07129b9f3973029d17940f6a45f when the profile annotation was
first introduced.


  Commit: 7e45473cc229baff6c2a8d2130b58035f4f70e41
      https://github.com/llvm/llvm-project/commit/7e45473cc229baff6c2a8d2130b58035f4f70e41
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/include/lldb/Host/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Host/BUILD.gn
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/DTLTO/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Utils/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Target/AMDGPU/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#201400)

142ad481b625
87d6941017aa
c264e07c2f3d
f91f589aaa82


  Commit: 28b12c6317568c8d31a701a35d1c59366030e054
      https://github.com/llvm/llvm-project/commit/28b12c6317568c8d31a701a35d1c59366030e054
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/tools/llvm-lto2/BUILD.gn

  Log Message:
  -----------
  [gn build] Add missing dep (#201414)


  Commit: 102d8583355c316618648de7d8537299f4357f95
      https://github.com/llvm/llvm-project/commit/102d8583355c316618648de7d8537299f4357f95
  Author: Jan Schultke <me at eisenwave.net>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  Regenerate X86/clmul.ll expectations (#201405)

Fixes a build failure on trunk after merging:
- #200592

See
https://github.com/llvm/llvm-project/pull/200592#issuecomment-4614719422


  Commit: 3f67f166d6580970a9f4d50bdf7827c510d884d3
      https://github.com/llvm/llvm-project/commit/3f67f166d6580970a9f4d50bdf7827c510d884d3
  Author: Philipp Rados <philipp.rados at openchip.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    A llvm/test/CodeGen/RISCV/stack-offset-large.ll

  Log Message:
  -----------
  [RISCV] Allow 64-bit fixed frame-offsets on RV64 (#201338)

Some HPC code requires a _very_ large stack. GCC also allows 64-bit
frame-offsets on 64-bit systems.

Since RISCVInstrInfo::movImm() supports materializing 64-bit immediates
the existing framework already handles the lowering correctly.

This patch only enables support for 64-bit _fixed_ frame offsets.
Scalable offsets call RISCVInstrInfo::mulImm() which doesn't seem to
support 64-bit calculations yet. This should be fine since there'd have
to be more than 2^31 RVV spills for this case to happen.


  Commit: 1c88bd716167a0650513319176c30dd715101a70
      https://github.com/llvm/llvm-project/commit/1c88bd716167a0650513319176c30dd715101a70
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Host/MainLoopBase.h
    M lldb/source/Host/common/MainLoopBase.cpp

  Log Message:
  -----------
  [lldb] Preserve FIFO order for equal time MainLoop callbacks (#199056)

Co-authored-by: Adrian Prantl <adrian.prantl at gmail.com>


  Commit: 6cfa1a01a0f737ed1d54963810057fb1bd67a274
      https://github.com/llvm/llvm-project/commit/6cfa1a01a0f737ed1d54963810057fb1bd67a274
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    R clang/test/CodeGenHIP/offload-pgo-sections.hip
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    R compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    R llvm/test/Instrumentation/InstrProfiling/amdgpu-instrumentation.ll
    R llvm/test/Instrumentation/InstrProfiling/amdgpu-profc-arrays.ll
    R llvm/test/Instrumentation/InstrProfiling/gpu-weak.ll
    R llvm/test/Transforms/PGOProfile/amdgpu-disable-value-profiling.ll

  Log Message:
  -----------
  Revert "[PGO][AMDGPU] Add basic HIP offload PGO support (#177665)" (#201416)

This broke profiling builds on Windows by switching the profile library
to link against the dynamic CRT; see discussion on the PR.

There were already a number of issues reported and fixed after this PR.
Rather than piling on the fixes (and this one may need some work),
revert back to green for now to let the project recover.

This reverts commit 5db13643f4b7038db0ca304d9f8900122502935c.

Additionally, this reverts the followup PRs in
635e120fb87304924508a7a204574727e3c37363,
2766733764f4bdf8399d48c0225e9c64bdfa95f7,
4c33844b4b560f24b2a3a0cc689d73510cb01ad5, and
5eca8b67ff3c5f371141d54b6e4544a0ebe77fdb:

"[PGO][HIP] Stop pulling ROCm.o into every PGO host link (#200101)"
"[compiler-rt][profile] Add COMPILER_RT_BUILD_PROFILE_ROCM option
(#200127)"
"[PGO][HIP] Skip ROCm interceptor in profile-only compiler-rt builds
(#200111)"
"[PGO][HIP] Fix profile-only Windows link by gating ROCm interceptor
macro (#200859)"


  Commit: 09020f9d68e4a0a8f93d2e7f4875ef58f451f948
      https://github.com/llvm/llvm-project/commit/09020f9d68e4a0a8f93d2e7f4875ef58f451f948
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/fdiv_flags.f32.ll
    M llvm/test/CodeGen/AMDGPU/fsqrt.f32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: RegBankLegalize rules for llvm.amdgcn.frexp.exp (#201178)


  Commit: e43adaea1fb557e860fbb34568ac024fd649cf5c
      https://github.com/llvm/llvm-project/commit/e43adaea1fb557e860fbb34568ac024fd649cf5c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A lldb/docs/python_api.md
    R lldb/docs/python_api.rst
    A lldb/docs/python_extensions.md
    R lldb/docs/python_extensions.rst
    A lldb/docs/resources/caveats.md
    R lldb/docs/resources/caveats.rst
    A lldb/docs/resources/contributing.md
    R lldb/docs/resources/contributing.rst
    A lldb/docs/resources/fuzzing.md
    R lldb/docs/resources/fuzzing.rst
    A lldb/docs/use/links.md
    R lldb/docs/use/links.rst
    A lldb/docs/use/ondemand.md
    R lldb/docs/use/ondemand.rst
    A lldb/docs/use/python-reference.md
    R lldb/docs/use/python-reference.rst
    A lldb/docs/use/repeat-commands.md
    R lldb/docs/use/repeat-commands.rst

  Log Message:
  -----------
  [lldb][docs] Convert simple RST pages to Markdown (NFC) (#201256)

Convert nine short, low-risk RST docs to MyST Markdown as the first
batch of an incremental RST -> Markdown migration. Subsequent batches
will cover the rest.

Verified by building the docs on origin/main and on this branch with
identical sphinx flags and diffing the rendered HTML. Seven of nine
pages are byte-identical.

contributing.html differs in 42 lines, all attributable to `{doc}` xrefs
replacing RST hyperlinks to sibling pages (`reference external` ->
`reference internal`) and CommonMark collapsing two-spaces-after- period
to one.

ondemand.html differs in 26 lines because two bulleted lists that
followed a paragraph with no blank-line separator originally rendered as
literal `- ...` text in both RST and Markdown. The conversion tool
preserved that by emitting `\-`; this patch instead inserts a blank line
so they render as proper `<ul>` lists, fixing a latent doc bug.

Context:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/

Assisted-by: Claude


  Commit: 47209321457b4302ac0d2cb668cdd3f3caff9134
      https://github.com/llvm/llvm-project/commit/47209321457b4302ac0d2cb668cdd3f3caff9134
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
    A mlir/test/Dialect/OpenACC/acc-compute-lowering-compute-device-type.mlir
    A mlir/test/Dialect/OpenACC/acc-compute-lowering-loop-device-type.mlir

  Log Message:
  -----------
  [mlir][acc] ACCComputeLowering needs to account for device_type par (#201267)

When assigning parallelism for compute constructs or loops, device_type
parallelism must be first considered as a group for all available (gang,
worker, vector) - if any of these have device_type setting, then those
are the only ones that should be considered. Only if the loop has no
device_type specific parallelism then default parallelism should be
assigned.


  Commit: 91b00526a599fa21e43da82438f1e9c8a8e1b7b3
      https://github.com/llvm/llvm-project/commit/91b00526a599fa21e43da82438f1e9c8a8e1b7b3
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll.bc
    M llvm/test/Instrumentation/AddressSanitizer/musttail.ll
    M llvm/test/Instrumentation/ThreadSanitizer/tsan_musttail.ll
    M llvm/test/Transforms/CallSiteSplitting/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Verifier/musttail-invalid.ll

  Log Message:
  -----------
  Remove the optional bitcast between a musttail call and its ret (#201280)

Under opaque pointers the only bitcast the verifier could accept in this
position is a no-op ptr->ptr cast

Drop it and reduce isTypeCongruent to a plain type equality check


  Commit: 420b8b3cede41894dc5dac29f8e64bcff13e3620
      https://github.com/llvm/llvm-project/commit/420b8b3cede41894dc5dac29f8e64bcff13e3620
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/LlvmState.cpp
    M llvm/tools/llvm-exegesis/lib/MCInstrDescView.cpp
    M llvm/tools/llvm-exegesis/lib/MCInstrDescView.h
    M llvm/unittests/tools/llvm-exegesis/Mips/SnippetGeneratorTest.cpp

  Log Message:
  -----------
  [llvm-exegesis] Support LookupRegClassByHwMode in exegesis Instruction::create

This resolves the TODO for LookupRegClassByHwMode support in llvm-exegesis by
passing the MCSubtargetInfo to Instruction::create and calling
getOpRegClassID with the active HwMode.

This also updates MemoryUse test expectations for Mips, as the target now
correctly resolve HwMode-dependent memory register operands (MSA128F16 in
Mips and post-#177073 BasePtrRegClass for RISC-V).

Pull Request: https://github.com/llvm/llvm-project/pull/200525


  Commit: 4169b17acfe53c79e0e170ebb8249ef749e061a2
      https://github.com/llvm/llvm-project/commit/4169b17acfe53c79e0e170ebb8249ef749e061a2
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp

  Log Message:
  -----------
  [CIR][NFC] Remove unused DataLayout in array lowering (#201408)

The per-element loop in CIRAttrToValue::visitCirAttr(ConstArrayAttr) constructed an mlir::DataLayout for every element of an ArrayAttr-backed constant array and never used it.  Constructing a DataLayout walks the parent ops to gather the layout spec, so for an N-element array this was N redundant constructions on the lowering path.  Removing the dead local is NFC -- the generated IR is unchanged.

Split out of #198427, where it was flagged as an unrelated drive-by.


  Commit: 0b9dc1bdd3a0186582ae7a56c3c27b6e449715fa
      https://github.com/llvm/llvm-project/commit/0b9dc1bdd3a0186582ae7a56c3c27b6e449715fa
  Author: cmtice <cmtice at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/source/ValueObject/DILAST.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/TestFrameVarDILAssign.py
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/TestFrameVarDILCompositeAssign.py
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/main.cpp

  Log Message:
  -----------
  [LLDB] Add assignment to DIL. (#190223)

Add the ability for DIL to recognize and process assignment, updating
program variables. Recognizes '=', '+=' and '-=' operators. Increment
and decrement ('++' and '--') will be added in a separate (future) PR.
"*=" and "/=" need to wait until DIL handles multiply and divide
operators.


  Commit: 5708e7fd9eca368b1b519c13a58360a15a263e4f
      https://github.com/llvm/llvm-project/commit/5708e7fd9eca368b1b519c13a58360a15a263e4f
  Author: George Burgess IV <george.burgess.iv at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp

  Log Message:
  -----------
  [compiler-rt] fix out-of-bounds access in scudo test (#201390)

When `I = 0`, we can't do `Array[I-1]`.

Caught by libcxx hardening.


  Commit: 517308ad15ee9480edfb9aa6dcc2c628c43da20d
      https://github.com/llvm/llvm-project/commit/517308ad15ee9480edfb9aa6dcc2c628c43da20d
  Author: Aayush Shrivastava <iamaayushrivastava at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp

  Log Message:
  -----------
  [clang-tidy] Extend readability-container-size-empty to std::size() (#201231)

Fixes #198494

Extend the check to warn when the non-member `std::size()` free function
is used in a boolean context or compared to 0/1, and suggest using
.empty instead.


  Commit: 7e439d571e3dcf420448391eb76e58879e73ee1e
      https://github.com/llvm/llvm-project/commit/7e439d571e3dcf420448391eb76e58879e73ee1e
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-intrinsics.ll

  Log Message:
  -----------
  [VectorCombine] Skip foldShuffleOfIntrinsics when operand types differ (#201241)

Example:
```llvm
define <4 x i32> @t(<2 x float> %a, <2 x double> %b) {
  %fa = call <2 x i32> @llvm.fptosi.sat.v2i32.v2f32(<2 x float> %a)
  %fb = call <2 x i32> @llvm.fptosi.sat.v2i32.v2f64(<2 x double> %b)
  %s = shufflevector <2 x i32> %fa, <2 x i32> %fb, <4 x i32> <i32 0, i32 1, i32 2, i32 3>
  ret <4 x i32> %s
}
```

In this code, `foldShuffleOfIntrinsics` folds `shuffle(intrinsic(x),
intrinsic(y))` into `intrinsic(shuffle(x, y))`, but only checks the
result type, not the operand types. Since `fptosi.sat` is overloaded on
its operand type, the two calls share an `<2 x i32>` result but have
different operands (`<2 x float>` vs `<2 x double>`), so the new
`shufflevector` gets mismatched operands and trips `isValidOperands`.

Fix: bail out when the intrinsics' shuffled operands have different
types.


  Commit: bad4005b863bf8f8d0f108d82c27c10d59d01e6d
      https://github.com/llvm/llvm-project/commit/bad4005b863bf8f8d0f108d82c27c10d59d01e6d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/utils/LLVMVisualizers/llvm.natvis

  Log Message:
  -----------
  [NATVIS] Fix bitrotted SmallPtrSet handling (#201404)

Use IsSmall to report Small/Big Mode
Use NumEntries instead of NumNonEmpty to track array size


  Commit: 85b72c16948f940058e04cd804ffb1d9b4249407
      https://github.com/llvm/llvm-project/commit/85b72c16948f940058e04cd804ffb1d9b4249407
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/AsmParser/LLParser.cpp
    A llvm/test/Assembler/invalid-phi-fast-math-flags.ll
    A llvm/test/Assembler/invalid-select-fast-math-flags.ll

  Log Message:
  -----------
  [AsmParser] Delete orphaned select/phi when rejecting fast-math-flags (#201409)

parseSelect/parsePHI create the instruction before the caller checks the
fast-math-flags. When FMF are rejected on a non-FP select/phi, the error
path leaked the instruction, which crashed on teardown with "Uses remain
when a value is destroyed!".

Fix by deleting the instruction before returning the error, as is
already done for `call`.

Fixes #185111.


  Commit: 974be2bc84be577e395479171f1db70d733d7efc
      https://github.com/llvm/llvm-project/commit/974be2bc84be577e395479171f1db70d733d7efc
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    A llvm/test/Transforms/LoopInterchange/non-phi-uses-lcssa-phi.ll

  Log Message:
  -----------
  [LoopInterchange] Fix assertion failure when LCSSA PHI is used by non-PHI (#201059)

This patch fixes one of the assertion failures reported in #200819. The
root cause is that the assertion assumes all uses of LCSSA PHIs are PHI
nodes, which is not always true, so `cast<PHINode>(U)` can fail. In
fact, the user does not have to be a PHI, and the assertion should apply
the special check only when the user is a PHI node.


  Commit: 8eb252007ce042204d9ebf904a353864989ffe8b
      https://github.com/llvm/llvm-project/commit/8eb252007ce042204d9ebf904a353864989ffe8b
  Author: satyanarayana reddy janga <satyajanga at fb.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/include/lldb/Utility/AcceleratorGDBRemotePackets.h
    M lldb/include/lldb/Utility/StringExtractorGDBRemote.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
    M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.h
    M lldb/source/Utility/AcceleratorGDBRemotePackets.cpp
    M lldb/source/Utility/StringExtractorGDBRemote.cpp
    M lldb/test/API/accelerator/mock/TestMockAcceleratorPlugin.py
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.cpp
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.h
    A lldb/unittests/Utility/AcceleratorGDBRemotePacketsTest.cpp
    M lldb/unittests/Utility/CMakeLists.txt

  Log Message:
  -----------
  [lldb-server] Add breakpoint support to accelerator plugin protocol (#200584)

This is the 2nd PR of many related to
https://discourse.llvm.org/t/upstreaming-basic-support-for-accelerators/89827/6
Continuation to https://github.com/llvm/llvm-project/pull/198907

Extend the accelerator plugin infrastructure with breakpoint request and
hit handling, allowing plugins to set breakpoints in the native process
and respond when those breakpoints are hit.

This patch adds:

- Support for jAcceleratorPluginBreakpointHit packet handler in
GDBRemoteCommunicationServerLLGS that routes hits to the correct plugin
by name and returns the plugin's response
- Many related struct for defining request packet and response packet.
New structs: AcceleratorBreakpointByName,
AcceleratorBreakpointByAddress, AcceleratorBreakpointInfo, SymbolValue
,AcceleratorBreakpointHitArgs and AcceleratorBreakpointHitResponse
structs with JSON encode/decode for the hit round-trip.
- breakpoints field in AcceleratorActions for plugins to request
breakpoints during initialization
- Tests verifying breakpoints in initialize response and breakpoint hit
round-trip with JSON validation
- Packet documentation in lldbgdbremote.md


  Commit: d8fb3dc721c4481eabc95f1a1ab6e2d270d763b4
      https://github.com/llvm/llvm-project/commit/d8fb3dc721c4481eabc95f1a1ab6e2d270d763b4
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M offload/test/api/omp_indirect_func_basic.c
    M offload/test/offloading/cuda_no_devices.c
    M offload/test/offloading/shared_lib_fp_mapping.c

  Log Message:
  -----------
  [offload][lit] Disable three more tests on Intel GPU (#201381)

Buildbot is still unstable, these tests are causing kernel driver errors
so let's disable them.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: b76fb96a862f3acf374117895a44a36c0a23d615
      https://github.com/llvm/llvm-project/commit/b76fb96a862f3acf374117895a44a36c0a23d615
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Program.h
    M offload/plugins-nextgen/level_zero/src/L0Program.cpp
    M offload/unittests/OffloadAPI/symbol/olGetSymbolInfo.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Return symbol size in getGlobalMetadataFromDevice (#201352)

Return not just the address but also the size of the symbols in getGlobalMetadataFromDevice.
Fixes olGetSymbolInfoSizeGlobalTest.SuccessSize unitt test failure with L0 plugin.


  Commit: 1b5a86f165d642cac56cb4a4becbded2c1872c1d
      https://github.com/llvm/llvm-project/commit/1b5a86f165d642cac56cb4a4becbded2c1872c1d
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/memory/olMemFill.cpp

  Log Message:
  -----------
  [OFFLOAD] Update L0 olMemFill unit tests known failures (#201323)

With the latest L0 changes most MemFill tests are passing. Only those
that rely on olLaunchHostFunction should be skipped.


  Commit: 0fcf63e179486c0a7e72d656c65d2c0a45754a11
      https://github.com/llvm/llvm-project/commit/0fcf63e179486c0a7e72d656c65d2c0a45754a11
  Author: Ron Green [NVIDIA] <rogreen at nvidia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/docs/OpenACC-extensions.md
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Semantics/OpenACC/acc-reduction-validity.f90
    M flang/test/Semantics/reduce.cuf
    M flang/test/Semantics/resolve124.f90

  Log Message:
  -----------
  [flang][OpenACC] Add minus operator to reduction clause (#200909)

Adds '-' as a recognized reduction operator alongside '+'. The new
ReductionOperator::Operator::Minus is parsed from the '-' token,
accepted on integer/real/complex reduction variables, and lowered the
same as Plus (mlir::acc::ReductionOperator::AccAdd in OpenACC, and
fir::ReduceOperationEnum::Add in DO CONCURRENT). The unparser emits it
as '-'.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: 884168c32563d20b0f2d6df5210a07c9de18a332
      https://github.com/llvm/llvm-project/commit/884168c32563d20b0f2d6df5210a07c9de18a332
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/math-macros.h

  Log Message:
  -----------
  [libc] add HUGE_VALL (#201235)

Straightforward macro in math-macros.h


  Commit: d703919410c5055132c037df810dfe70074ef58b
      https://github.com/llvm/llvm-project/commit/d703919410c5055132c037df810dfe70074ef58b
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopInterchange/atomic-memory-ordering.ll
    A llvm/test/Transforms/LoopInterchange/invoke.ll

  Log Message:
  -----------
  [LoopInterchange] Add tests for instructions that aren't checked (NFC) (#201401)

This patch adds test cases that contain instructions which are currently
not handled properly in the legality check, leading to miscompilations.
Some of the test cases are taken from #200913, and others are cases that
trigger unsafe interchange for the same reason. I am not trying to cover
all possible instruction types here, since a follow-up patch will update
the legality check so that it can handle other instructions as well.


  Commit: 37432c85b43654d0c3e15edd503e95c74f39afb1
      https://github.com/llvm/llvm-project/commit/37432c85b43654d0c3e15edd503e95c74f39afb1
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/unittests/Host/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Add PARTIAL_SOURCES_INTENDED to HostTests to fix build  (#201361)

with LLDB_ENABLE_PYTHON=OFF

PythonRuntimeLoaderTest.cpp is only added to the target when Python is
enabled, which orphaned the source and broke configuration otherwise

culprit PR: https://github.com/llvm/llvm-project/pull/200524


  Commit: 5e890995b2ebcf4bbbf8fb3161647c4788245e4c
      https://github.com/llvm/llvm-project/commit/5e890995b2ebcf4bbbf8fb3161647c4788245e4c
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp

  Log Message:
  -----------
  [AMDGPU] Simplify getDivNumBits with APInt::countMaxActiveBits. NFC. (#201387)


  Commit: 3d830a9c517725bd73e9497cbe4c159c6d04f9ba
      https://github.com/llvm/llvm-project/commit/3d830a9c517725bd73e9497cbe4c159c6d04f9ba
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-cache.f90

  Log Message:
  -----------
  [flang][OpenACC] Re-declare cached array sections with lower bounds only (#201223)

When acc.cache yields a box, rebind the symbol with a fir.shift (lower
bounds, no extents) instead of a fir.shape_shift, so the rebox preserves
the materialized descriptor's extents and strides. Add lowering tests.

Assisted by Claude


  Commit: cca173885706f6c728b46f9035f034de4f39a4ba
      https://github.com/llvm/llvm-project/commit/cca173885706f6c728b46f9035f034de4f39a4ba
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/atomic-memory-ordering.ll
    M llvm/test/Transforms/LoopInterchange/call-instructions-remarks.ll
    M llvm/test/Transforms/LoopInterchange/invoke.ll

  Log Message:
  -----------
  [LoopInterchange] Identify unsafe instructions for interchange (#201402)

In LoopInterchange, all instructions in the loops are traversed and
checked during the legality phase, and the pass bails out if it finds an
instruction that is unsafe to interchange. However, previously it only
handled call instructions and ignored all others, leaving several kinds
of instruction that should have been detected but were not.
This patch fixes the issue by restructuring the legality check, in
particular replacing instruction‑specific handling with calling general
Instruction APIs.

Fixes #200913.


  Commit: fb649b41b0db8cd33a5be613345be845a41d0d98
      https://github.com/llvm/llvm-project/commit/fb649b41b0db8cd33a5be613345be845a41d0d98
  Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M compiler-rt/cmake/Modules/AddCompilerRT.cmake

  Log Message:
  -----------
  [compiler-rt][cmake][msvc] Install PDBs for shared libraries (#201224)

Following up on similar PRs in the past to address PDBs not being copied
for install targets:
* https://github.com/llvm/llvm-project/pull/126961
* https://github.com/llvm/llvm-project/pull/126680
* https://github.com/llvm/llvm-project/pull/120683


  Commit: 3c9afa9fe7c091dffd353e65a9a16653f139787b
      https://github.com/llvm/llvm-project/commit/3c9afa9fe7c091dffd353e65a9a16653f139787b
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A llvm/docs/ProjectGovernance.rst
    M llvm/docs/index.rst

  Log Message:
  -----------
  [Docs] Project governance documentation (#197108)

This page largely covers the same information as proposal LP-0004 and
also includes information on current area team and project council
composition.


  Commit: 0a4f19e4769eae755cdad1a4af1d73988762dd2c
      https://github.com/llvm/llvm-project/commit/0a4f19e4769eae755cdad1a4af1d73988762dd2c
  Author: mygitljf <101249452+mygitljf at users.noreply.github.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/unittests/Format/FormatTestObjC.cpp

  Log Message:
  -----------
  [clang-format][Objective-C] Fix assertion crash on stray '-'/'+' in @interfa… (#199104)

Before calling `parseObjCMethod()`, it now checks whether the next token
is a `(` or an identifier; if not, it simply skips ahead, thereby
preventing the assertion failure and subsequent crash.
Fixes #199075


  Commit: b207fd6fd43514b2852ff64b89769a2cf4b781c2
      https://github.com/llvm/llvm-project/commit/b207fd6fd43514b2852ff64b89769a2cf4b781c2
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/CMakeLists.txt
    M lldb/source/Host/common/PythonRuntimeLoader.cpp

  Log Message:
  -----------
  [lldb] Use the right MinGW name for the Python DLLs (#201325)

In MinGW mode, the Python DLLs have different names than they have in
MSVC mode; they are named `libpython<major>.<minor>.dll` (a "lib" prefix
and a dot between major and minor) and `libpython3.dll`.

This avoids a warning on startup after
142ad481b6254104a51da7d636ad9e3f30518a32 and total failures to start up
after 3eb13f8db39ed42827122489c830c414cb6660e3.


  Commit: 98160521cb72966e984a241f28b1dc5aae19e4ec
      https://github.com/llvm/llvm-project/commit/98160521cb72966e984a241f28b1dc5aae19e4ec
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/CodeGen/NVPTX/global-ordering.ll

  Log Message:
  -----------
  [NVPTX] Handle symbol-relative integer initializers in aggregates (#201220)

A symbol-relative integer applies an offset outside the ptrtoint, e.g.

    @g = addrspace(1) global i8 0
    @s = addrspace(1) global { i64, i64 }
           { i64 add (i64 ptrtoint (ptr addrspace(1) @g to i64), i64 4),
             i64 7 }

I'm not sure this is an important feature, but it's explicitly
implemented and works for scalars; the bug is that it hits
llvm_unreachable if you use it inside an aggregate.

While we're here, we also add support for Sub in addition to Add.


  Commit: 309ace568351f1d3001a736c58c496277fc000dd
      https://github.com/llvm/llvm-project/commit/309ace568351f1d3001a736c58c496277fc000dd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp

  Log Message:
  -----------
  [RISCV] Remove unnecessary explicit template parameter on has_single_bit (#201421)

I think this code was extracted into a function and the Amount was not a
uint32_t when it was in the original location.


  Commit: 67a641cf8adb083e6694fbf306b375b99c45de91
      https://github.com/llvm/llvm-project/commit/67a641cf8adb083e6694fbf306b375b99c45de91
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACCCG.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
    A mlir/test/Dialect/OpenACC/acc-compute-lowering-compute-async-wait.mlir
    M mlir/test/Dialect/OpenACC/canonicalize.mlir

  Log Message:
  -----------
  [mlir][acc] Specialize compute region target during ACCComputeLowering (#201386)

During ACCComputeLowering, when an acc compute region (such as
acc.parallel) is split into in acc.kernel_environment and
acc.compute_region, all wait and async operands are transferred over.
This includes the multiple lists that are used to manage device_type
specific aspects eg:
`acc parallel async device_type(nvidia) async(2)`
This ends up as
`acc.parallel async([#acc.device_type<none>], %c2_i32 : i32
[#acc.device_type<nvidia>])`

And similarly, acc.kernel_environment inherited both async aspects.
However, during ACCComputeLowering, the pass knows its device_type
target. Thus it can directly create a single async (because only
async(2) applies when device_type is nvidia): `acc.kernel_environment
async(%c2_i32 : i32)`

This MR simplifies the operation to not hold all of the multiple lists
and updates to ACCComputeLowering pass to ensure to transfer only
relevant information. The intent/goal is that the none of the CG
operations will hold device_type specific lists.


  Commit: deb6854eec93529b2bd30178d400ad2ee7665cd4
      https://github.com/llvm/llvm-project/commit/deb6854eec93529b2bd30178d400ad2ee7665cd4
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/test/CodeGen/NVPTX/globals_init.ll

  Log Message:
  -----------
  [NVPTX] Pad non-power-of-2 vectors in structs properly. (#201246)

A non-power-of-2 vector inside of a struct is padded up to its alloc
size.

But when the NVPTX asm printer emits bytes for such a struct, it
currently skips this tail padding, thus emitting an incorrect struct.


  Commit: 971076f616e6c6f07580c506375b700b207224f9
      https://github.com/llvm/llvm-project/commit/971076f616e6c6f07580c506375b700b207224f9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/test/Conversion/ConvertToSPIRV/arith.mlir

  Log Message:
  -----------
  [NFC][mlir][SPIR-V] Test ceildivui/ceildivsi/floordivsi via test-convert-to-spirv (#198766)

SPIR-V has no direct opcode for these ops. Verify that using
`--test-convert-to-spirv` pass is sufficient to convert these ops to
SPIR-V


  Commit: 55587f7b757583b1e30c3027803ed092790471a3
      https://github.com/llvm/llvm-project/commit/55587f7b757583b1e30c3027803ed092790471a3
  Author: Adhemerval Zanella <zatrazz at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/read-fp-reg.ll
    A llvm/test/CodeGen/AArch64/read-reg-non-entry.ll
    M llvm/test/CodeGen/AArch64/write-volatile-register.ll

  Log Message:
  -----------
  [CodeGen] Mark read_register of allocatable physreg as live-in (#200825)

llvm.read_register / llvm.read_volatile_register of an allocatable
register (e.g. the MSVC __getReg/__getRegFp intrinsics reading xN/dN)
was lowered to a plain COPY from the physical register. That COPY uses a
physical register that is never defined, which the machine verifier
rejects as "Using an undefined physical register" (seen on
read-fp-reg.ll under LLVM_ENABLE_EXPENSIVE_CHECKS).
    
Reading such a register only makes sense as "whatever value it currently
holds", i.e. like an inline-asm read; it cannot be modelled as a normal
SSA use of a physical register, and a live-in only works in the entry
block.
    
Lower these reads in AArch64 like the existing MRS/MSR sysreg path:
select to a small pseudo (READ_REGISTER_GPR64 / READ_REGISTER_FPR64)
that carries the source register as an immediate operand rather than a
tracked physical-register use, and have the AsmPrinter materialize the
real "mov Xt, Xn" / "fmov Dt, Dn". The verifier never sees an undefined
physreg use, so the read is valid in any block and needs no live-in or
undef. Reads of reserved registers (e.g. sp) and system registers keep
their existing lowering.


  Commit: 4d23acde98acb72e103d8c999edf752a9317aced
      https://github.com/llvm/llvm-project/commit/4d23acde98acb72e103d8c999edf752a9317aced
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M .github/workflows/release-binaries.yml
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  [release] Add zstd archives to github releases (#186526)

This leaves the previous xz files but also creates zstd archives of the
binaries. This provides significantly reduced download sizes. We could
integrate this with cpack but we don't have control over the compression
level in that until version 4.3 which isn't even released yet.

Fixes https://github.com/llvm/llvm-project/issues/164537


  Commit: f70a28f4d1b5d17d94fca03fb74387ad800560de
      https://github.com/llvm/llvm-project/commit/f70a28f4d1b5d17d94fca03fb74387ad800560de
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    A lldb/docs/resources/build.md
    R lldb/docs/resources/build.rst
    A lldb/docs/resources/dataformatters.md
    R lldb/docs/resources/dataformatters.rst
    A lldb/docs/resources/debugging.md
    R lldb/docs/resources/debugging.rst
    A lldb/docs/resources/extensions.md
    R lldb/docs/resources/extensions.rst
    A lldb/docs/resources/formatterbytecode.md
    R lldb/docs/resources/formatterbytecode.rst
    A lldb/docs/resources/overview.md
    R lldb/docs/resources/overview.rst
    A lldb/docs/resources/projects.md
    R lldb/docs/resources/projects.rst
    A lldb/docs/resources/qemu-testing.md
    R lldb/docs/resources/qemu-testing.rst
    A lldb/docs/resources/sbapi.md
    R lldb/docs/resources/sbapi.rst
    A lldb/docs/resources/test.md
    R lldb/docs/resources/test.rst

  Log Message:
  -----------
  [lldb][docs] Convert resources/ RST docs to Markdown (NFC) (#201442)

Convert the ten contributor-facing RST docs under lldb/docs/resources/
to MyST Markdown. This is the second batch of an incremental RST ->
Markdown migration. The previous PR (#201256) covered nine small leaf
pages.

Files: build, dataformatters, debugging, extensions, formatterbytecode,
overview, projects, qemu-testing, sbapi, test.

Verified by building the docs on origin/main and on this branch with
identical sphinx flags and diffing both the warnings and the rendered
HTML. After file extension and line numbers are normalized, the warning
sets match exactly. Six of the ten pages are byte-identical. The four
that differ (dataformatters, projects, sbapi, test) differ only in:

  - CommonMark collapsing two-spaces-after-period to one.
- MyST adding a `myst` CSS class to `<dl>` elements and an `<hr>`
separator before footnote sections.
  - Footnote IDs renamed from auto `id3` to named `footnote-1`.

The diff also surfaced two semantic regressions in the conversion, fixed
here:

- build.md `{ref}` to `Optional Dependencies` did not match the new
`(optional-dependencies)=` anchor; updated to use the new label.
- test.md and build.md lost cross-reference behavior on single- backtick
refs to SB-class names and `lldb`. RST's default role is `any`, so
single backticks attempted xrefs; in MyST single backticks are plain
code spans. Converted these 14 occurrences to explicit `{any}`...``
syntax.

Several `eval-rst` blocks remain in formatterbytecode.md and test.md to
preserve grid tables that MyST does not render natively.

Context: https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/

Assisted-by: Claude


  Commit: ad422cd10bfd0be0c069221546de7c7299ca305d
      https://github.com/llvm/llvm-project/commit/ad422cd10bfd0be0c069221546de7c7299ca305d
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/cuf-constant-generic-unified.cuf

  Log Message:
  -----------
  [flang][cuda] Handle Constant and Shared attributes in CUDA generic matching distance (#201451)

The CUDA generic resolution matching distance function did not handle
actual arguments with the `Constant` or `Shared` data attribute. These
attributes represent device memory but were unhandled, causing the
distance to fall through to infinity. Under `-gpu=mem:unified`, this led
to spurious ambiguity errors when multiple specifics (e.g.
host-to-device and device-to-device overloads) both became candidates
with tied infinite distances.

Treat Constant and Shared actuals the same as Device in the matching
distance table, since all three reside in device memory.


  Commit: 9ae0d890a9236a94f23d5c3ff84ea08d7a670f03
      https://github.com/llvm/llvm-project/commit/9ae0d890a9236a94f23d5c3ff84ea08d7a670f03
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    A clang/test/Analysis/Checkers/WebKit/nodelete-lazy-initialize.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Treat a r-value smart pointer return value as no-delete. (#200912)

Skip the checkin g of the destructor of T in ExprWithCleanups /
CXXBindTemporaryExpr when returning a value using r-value reference
since such a construct never invokes delete.

---------

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 901cfb4aa4d52fd4f751b78bf932f54210fdcf5b
      https://github.com/llvm/llvm-project/commit/901cfb4aa4d52fd4f751b78bf932f54210fdcf5b
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
    A llvm/test/CodeGen/Hexagon/hvc-remarks.ll
    A llvm/test/CodeGen/Hexagon/hwloop-remarks.ll
    A llvm/test/CodeGen/Hexagon/loop-idiom-remarks.ll
    A llvm/test/CodeGen/Hexagon/vlcr-remarks.ll

  Log Message:
  -----------
  [Hexagon] Add optimization remarks to Hexagon IR and MIR passes (#189176)

Add OptimizationRemark/OptimizationRemarkMissed emissions to four
Hexagon-specific passes, making them observable via the standard
-Rpass/-Rpass-missed flags:

- HexagonLoopIdiomRecognition (hexagon-lir): remarks for loop-to-memcpy/
memmove conversions and polynomial multiply recognition, with missed
remarks for non-countable loops, aliasing, non-affine pointers, etc.

- HexagonVectorLoopCarriedReuse (hexagon-vlcr): remarks for reused
loop-carried vector values, with missed remarks for multi-block loops,
non-innermost loops, and missing candidates.

- HexagonVectorCombine (hexagon-vc): remarks for aligned vector memory
operations, with missed remarks for group size limits, unsafe
relocations, and insufficient HVX version.

- HexagonHardwareLoops (hwloops): remarks for hardware loop conversion,
with missed remarks for invalid instructions (calls), multiple exits,
induction variable issues, and non-computable trip counts.


  Commit: 5f975bb6afec710e4ef47c3b90a299b2212c6ec0
      https://github.com/llvm/llvm-project/commit/5f975bb6afec710e4ef47c3b90a299b2212c6ec0
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/include/clang-c/BuildSystem.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/tools/libclang/BuildSystem.cpp
    M clang/tools/libclang/libclang.map
    M clang/unittests/libclang/LibclangTest.cpp

  Log Message:
  -----------
  [libclang] Add clang_ModuleCache_pruneWithCallback (#199789)

clang_ModuleCache_pruneWithCallback takes a callback that is invoked for
each PCM that gets pruned. This is to support build systems that would
like to clean up additional data when PCMs are removed from disk.


  Commit: 2e9cdc4f3be729686c8c238f9da2ffa961690e47
      https://github.com/llvm/llvm-project/commit/2e9cdc4f3be729686c8c238f9da2ffa961690e47
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/CodeGen/NVPTX/global-ordering.ll

  Log Message:
  -----------
  [NVPTX] Remove support for `sub` in global initializers. (#201473)

I added this in https://github.com/llvm/llvm-project/pull/201220 and
assumed it worked because the pre-commit builders passed.  But (a) this
is not attested in the PTX ISA, and (b) it seems that the builders don't
actually run ptxas.

Oops.  Removed support for `sub`.


  Commit: 49ac4f475e4cf643a3fd68f9bf97f6b7d1adef83
      https://github.com/llvm/llvm-project/commit/49ac4f475e4cf643a3fd68f9bf97f6b7d1adef83
  Author: Andrei Safronov <andrei.safronov at espressif.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/Xtensa/inline-asm-invalid.ll
    M llvm/test/CodeGen/Xtensa/setcc.ll

  Log Message:
  -----------
  [Xtensa] Fix setcc test. (#201196)

Fix setcc test after changes in llvm passes.
Also add minor fix in inline-asm-invalid.ll test.


  Commit: 2b081a26d96450283814209d2b9001db89000f0a
      https://github.com/llvm/llvm-project/commit/2b081a26d96450283814209d2b9001db89000f0a
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    A llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/sched-ldsdma-mask.mir

  Log Message:
  -----------
  [AMDGPU] Do not add latency for tensorcnt / asynccnt dependencies (#201201)

Currently, when constructing the ScheduleDAG we see dependencies between
LDSDMA->LDSDMA or s_wait->s_wait due to implicit $asynccnt / $tensorcnt
operands. These implicit operands are necessary to force ordering of the
instructions, but there should be no latency for this dependency. In the
LDSDMA->LDSDMA case, the scheduler thinks it will be hundreds of cycles
until the next LDSDMA is ready.

This handles the cases:
1. LDSDMA -> LDSDMA
2. WAIT -> LDSDMA
3. WAIT -> WAIT

In the LDSDMA -> WAIT case, usually the relevant WAIT is in a different
iteration, so we don't need latency between these instructions in the
same iteration, though that isn't guaranteed. I plan to handle remove
the latency for obvious cases in a followup PR.


  Commit: 7917772d7d61384696c61102c08c2ea158e610fa
      https://github.com/llvm/llvm-project/commit/7917772d7d61384696c61102c08c2ea158e610fa
  Author: Akash Dutta <137309513+akadutta at users.noreply.github.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Hoist independent condition out of loop in dependsOnLocalPhi in AMDGPUTTI (#198789)


  Commit: 58de983ea7c28e1fa83add7d89d5e7b2cc6e9386
      https://github.com/llvm/llvm-project/commit/58de983ea7c28e1fa83add7d89d5e7b2cc6e9386
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td

  Log Message:
  -----------
  [NFC] Remove trailing whitespaces in Intrinsics.td (#201472)


  Commit: aa9099a47468425b6d16613e08ae84c8c77671b7
      https://github.com/llvm/llvm-project/commit/aa9099a47468425b6d16613e08ae84c8c77671b7
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/test/Transforms/JumpThreading/noalias-scope-decl.ll

  Log Message:
  -----------
  [JumpThreading] Clone noalias scopes in duplicateCondBranchOnPHIIntoPred (#200550)

duplicateCondBranchOnPHIIntoPred clones a block into a predecessor with
its own loop. Unlike cloneInstructions (used by threadEdge), it never
cloned the duplicated noalias scope declarations. The duplicated code
therefore shared the original's !alias.scope/!noalias MDNodes, letting
AA incorrectly treat two accesses on different paths as non-aliasing.

Fix by cloning the scopes.


  Commit: 7132f8f40649ebe15f701c8103e22dead7ea8f71
      https://github.com/llvm/llvm-project/commit/7132f8f40649ebe15f701c8103e22dead7ea8f71
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [NFC] Remove trailing whitespaces from llvm/docs/ReleaseNotes.md (#201478)


  Commit: 96a50e0ee0959dd3095b0d3c561fab0c5f5fe94c
      https://github.com/llvm/llvm-project/commit/96a50e0ee0959dd3095b0d3c561fab0c5f5fe94c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/lto.c

  Log Message:
  -----------
  [Clang] Accept `-flto=none` similar to `-fno-lto` (#201460)

Summary:
Personal preference, but I would like to be able to set all the LTO
kinds from the string, and it feels a little odd to need to use
`-fno-lto` to override the mode.


  Commit: 086f9c1e6ea3ed30345f685d9055f57f044834a7
      https://github.com/llvm/llvm-project/commit/086f9c1e6ea3ed30345f685d9055f57f044834a7
  Author: ovatonne <ovatonne at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libcxx/test/std/containers/exception_safety_helpers.h
    M libcxx/test/std/containers/sequences/forwardlist/exception_safety.pass.cpp

  Log Message:
  -----------
  [libc++][tests] Add missing strong exception guarantee test coverage in forward_list (#200666)

Adds missing test coverage for exception guarantees in forward_list.

- Strong exception guarantee for forward_list::push_front and
forward_list::emplace_front.
- Exception guarantee for constructor, operator= and assign overloads
taking an initializer_list.
- Add move and inplace construction as throwing functions in test
helpers.
- Add tests throwing upon moving or constructing elements inplace for
relevant overloads.


  Commit: 8a21afca17117a380f2716ae81fb402d673f48fe
      https://github.com/llvm/llvm-project/commit/8a21afca17117a380f2716ae81fb402d673f48fe
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/arith-costs.ll
    R llvm/test/Transforms/LoopVectorize/AArch64/binop-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/call-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/cmp_cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/vpinstruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll

  Log Message:
  -----------
  [LV] Add cost for VPInstruction::Not. (#198445)

This patch add the cost for VPInstruction::Not which will lower to Xor.


  Commit: ff812a578f236d3554750391041146a6781a9f55
      https://github.com/llvm/llvm-project/commit/ff812a578f236d3554750391041146a6781a9f55
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb/test] Add _excluded_variant_combinations hook in lldbtest (#201459)

Add a module-scope hook that LLDBTestCaseFactory consults during variant
expansion so the suite can declare combinations of variant axis values
that should never be generated. Each entry in
`_excluded_variant_combinations` is a dict mapping variant_name ->
value; the helper `_is_excluded_variant_combination(method,
variant_name, value_name)` returns True when assigning the given
variant=value to the method would produce a combination matching every
entry. `_expand_test_variants` checks the predicate before generating
each copy and drops the variant entirely so excluded crosses don't
appear in the test matrix at all.

This is a suite-wide per-axis-combination analogue of
NO_DEBUG_INFO_TESTCASE: instead of collapsing the entire debug-info axis
for one test class, it lets the suite declare narrowly that any variant
carrying e.g. {"swift_module_importer": "noclang", "swift_embedded":
"swiftembed"} should be dropped, regardless of which source method or
test class generated it. Useful when a subset of the variant matrix is
known broken (or simply redundant) without resorting to broad @skipIf /
@expectedFailureAll decorators on each affected method.

The list starts empty; the first downstream consumer
(swiftlang/llvm-project) adds the noclang × swiftembed cross at the same
time it registers the swift_module_importer / swift_embedded variants.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: c10e5060490e1377a4d59cab5f8e345134d35d97
      https://github.com/llvm/llvm-project/commit/c10e5060490e1377a4d59cab5f8e345134d35d97
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/CMakeLists.txt
    M libc/include/inttypes.yaml
    M libc/src/inttypes/CMakeLists.txt
    A libc/src/inttypes/wcstoimax.cpp
    A libc/src/inttypes/wcstoimax.h
    A libc/src/inttypes/wcstoumax.cpp
    A libc/src/inttypes/wcstoumax.h
    M libc/test/src/inttypes/CMakeLists.txt
    A libc/test/src/inttypes/wcstoimax_test.cpp
    A libc/test/src/inttypes/wcstoumax_test.cpp

  Log Message:
  -----------
  [libc] implement wcstoimax/wcstoumax (#200284)

Adds the implementation and tests for wide character to intmax_t and
uintmax_t.

Assisted-by: Automated tooling, human reviewed.


  Commit: 2e27610b8f79c34238ffc405d3f4558945c32752
      https://github.com/llvm/llvm-project/commit/2e27610b8f79c34238ffc405d3f4558945c32752
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    R llvm/test/Bitcode/musttail-bitcast-upgrade.ll
    R llvm/test/Bitcode/musttail-bitcast-upgrade.ll.bc
    M llvm/test/Instrumentation/AddressSanitizer/musttail.ll
    M llvm/test/Instrumentation/ThreadSanitizer/tsan_musttail.ll
    M llvm/test/Transforms/CallSiteSplitting/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Verifier/musttail-invalid.ll

  Log Message:
  -----------
  Revert "Remove the optional bitcast between a musttail call and its ret" (#201479)

This reverts https://github.com/llvm/llvm-project/pull/201280

This broke MSan on the buildbots:
https://lab.llvm.org/buildbot/#/builders/169/builds/23291/steps/10/logs/stdio

This is the only change in the batch that touched BitcodeReader


  Commit: 0f3d6b9cac25c750f5fa477d92ba15b68b03e210
      https://github.com/llvm/llvm-project/commit/0f3d6b9cac25c750f5fa477d92ba15b68b03e210
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h
    A llvm/include/llvm/ExecutionEngine/Orc/SymbolLookupSet.h

  Log Message:
  -----------
  [ORC] Lift SymbolLookupSet into its own header. NFCI. (#201295)

Lifts the SymbolLookupSet class and SymbolLookupFlags enum out of Core.h
and into a new SymbolLookupSet.h header.


  Commit: f0d98c3693a47679115ce05a5a5629e9b869472f
      https://github.com/llvm/llvm-project/commit/f0d98c3693a47679115ce05a5a5629e9b869472f
  Author: savchart <metaartem at protonmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/function-size.rst
    A clang-tools-extra/test/clang-tidy/checkers/readability/function-size-ignore-macros.cpp

  Log Message:
  -----------
  [clang-tidy][readability] Ignore macros in function-size check (#199549)

This patch adds an IgnoreMacros option to the readability-function-size
check.

Fixes https://github.com/llvm/llvm-project/issues/112835


  Commit: 9263a42920ea470ff7377fa3ca3b3759aeb86fa1
      https://github.com/llvm/llvm-project/commit/9263a42920ea470ff7377fa3ca3b3759aeb86fa1
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/OpenMP/amdgcn_weak_alias.c
    M clang/test/OpenMP/declare_target_codegen.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    M clang/test/OpenMP/target_indirect_codegen.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir

  Log Message:
  -----------
  [OpenMP] Use ext linkage for kernels handles and globals handles keep… (#200964)

… linkage

Host handles are now emmitted with external linkage to clash if two
kernels with the same name are registered. This could have happen right
now and silently corrupt the program, but it can happen more easily once
we allow users to name their kernels.

In the same patch we make global variable handles retain the linkage of
the global variable, forcing clashes for external ones and continue to
support weak use cases.

---------

Co-authored-by: Shilei Tian <i at tianshilei.me>


  Commit: 97d72648474f2bd8832810993a31a69d28196ffe
      https://github.com/llvm/llvm-project/commit/97d72648474f2bd8832810993a31a69d28196ffe
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/test/ThinLTO/X86/memprof-icp-recursive.ll

  Log Message:
  -----------
  [MemProf] Change default of memprof-icp-noinline-threshold to 0 (#201474)

This is no longer needed after PR172502 added support to identify
indirect callees from inlined frames.


  Commit: 84085aac175bd949c521957af88ff5cda4aeeb20
      https://github.com/llvm/llvm-project/commit/84085aac175bd949c521957af88ff5cda4aeeb20
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-category-ops.mlir
    M mlir/test/Dialect/Linalg/roundtrip-morphism-linalg-named-ops.mlir

  Log Message:
  -----------
  [mlir][linalg] Improve contraction specialization (#201300)

Extend the matcher to recognize additional supported boolean contraction
form(and+or). Fixes #198235.


  Commit: 70256dff97f1393c0bceb6c90c0341215d2ba598
      https://github.com/llvm/llvm-project/commit/70256dff97f1393c0bceb6c90c0341215d2ba598
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    R flang/test/Lower/OpenMP/Todo/metadirective-dynamic.f90
    M flang/test/Lower/OpenMP/metadirective-user.f90
    M flang/test/Semantics/OpenMP/metadirective-user.f90

  Log Message:
  -----------
  [flang][OpenMP] Support lowering of metadirective (part 2) (#194424)

Lower non-constant `user={condition(expr)}` selectors in OpenMP
metadirectives to a runtime `fir.if` / `else` selection cascade.

Dynamic user conditions are handled in two separate phases:

- Static applicability uses only selector traits that are known at
compile time.
- Guarded ranking preserves selector specificity and dynamic-condition
scores for the path where the runtime condition evaluates to true.

Lowering first filters candidates using compile-time selector traits,
then orders the remaining candidates with the normal OpenMP variant
ranking rules. If the selected candidate has a non-constant user
condition, that condition is emitted as a `fir.if` guard. When the
condition evaluates to false, the `else` branch continues selection
among the remaining candidates.

For example:

```fortran
!$omp metadirective &
!$omp & when(user={condition(score(100): high)}: barrier) &
!$omp & when(user={condition(low)}: taskwait) &
!$omp & otherwise(nothing)
```

is selected as:

```text
if (high) barrier
else if (low) taskwait
else nothing
```

Scores attached to dynamic `condition(score(...): expr)` selectors are
preserved for the guarded candidate. As a result, those scores affect
ranking only on the runtime path where the condition is true, instead of
allowing a false runtime condition to influence unconditional selection.

This also fixes the interactions with `extension(match_any)` and
`extension(match_none)`:

- `match_any` can be satisfied by a runtime condition when no static
trait matches.
- If static traits already satisfy `match_any`, the dynamic condition
score is used only when the condition is true.
- `match_none` keeps the dynamic condition inactive for static
applicability while still preserving its score for ranking.

For example, this `match_any` selector is statically applicable through
`vendor(llvm)`, but the score on `flag` is used only when `flag`
evaluates to true:

```fortran
!$omp metadirective &
!$omp & when(implementation={extension(match_any), vendor(llvm)}, &
!$omp &      user={condition(score(100): flag)}: barrier) &
!$omp & when(user={condition(score(10): .true.)}: taskwait) &
!$omp & otherwise(nothing)
```

is selected as:

```text
if (flag) barrier
else taskwait
```

The final fallback is the highest-ranked unguarded candidate, an
explicit `otherwise` / `default` clause, or implicit `nothing`.

This patch is part of the feature work for #188820 and is stacked on top
of [#193664](https://github.com/llvm/llvm-project/pull/193664).

Assisted with Copilot and GPT-5.4.


  Commit: a53507fb5c108f0fd71270bf6498fa0f283b27c1
      https://github.com/llvm/llvm-project/commit/a53507fb5c108f0fd71270bf6498fa0f283b27c1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a crash with covariant return types (#201354)

`Context::collectBaseOffset()` will assert if the passed-in classes are
the same.


  Commit: 36e714b78712ef7f697d172b3ede0131568b892c
      https://github.com/llvm/llvm-project/commit/36e714b78712ef7f697d172b3ede0131568b892c
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/TargetProcessControlTypes.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.h
    M llvm/lib/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.cpp
    M llvm/lib/ExecutionEngine/Orc/EPCGenericDylibManager.cpp
    M llvm/lib/ExecutionEngine/Orc/ExecutorResolutionGenerator.cpp
    M llvm/lib/ExecutionEngine/Orc/SelfExecutorProcessControl.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.cpp
    M llvm/tools/lli/ForwardingMemoryManager.h
    M llvm/unittests/ExecutionEngine/Orc/ObjectLinkingLayerTest.cpp

  Log Message:
  -----------
  [ORC] Replace ExecutorSymbolDef with ExecutorAddr in remote lookup. (#201492)

Update DylibManager and associated interfaces to return ExecutorAddrs
for remote symbols, rather than ExecutorSymbolDefs. No clients were
using the flags component of ExecutorSymbolDef, and this brings the
SimpleExecutorDylibManager implementation in OrcTargetProcess into
closer alignment with the NativeDylibManager implementation in the new
ORC runtime.


  Commit: 4a77ce7c6f510283083dba0daccefc4d32326e44
      https://github.com/llvm/llvm-project/commit/4a77ce7c6f510283083dba0daccefc4d32326e44
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SplitKit.cpp
    A llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask-phi-extend.ll

  Log Message:
  -----------
  [CodeGen][AMDGPU] Remove premature empty subrange elimination (#201263)

This commit removes a call to `removeEmptySubRanges` inside
`SplitEditor::rewriteAssigned` which removes empty subranges that may be
expected at a later stage. The empty subranges are eliminated by a later
call to `removeEmptySubRanges`.

Fixes https://github.com/llvm/llvm-project/issues/199337.

---------

Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>


  Commit: c17f6208157d04b730576d84c8998f7bd8112cef
      https://github.com/llvm/llvm-project/commit/c17f6208157d04b730576d84c8998f7bd8112cef
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    A llvm/test/Transforms/LoopInterchange/reduction2mem-extra-lcssa.ll

  Log Message:
  -----------
  [LoopInterchange] Check all inner-exit LCSSA PHIs (#200860)

areInnerLoopExitPHIsSupported() returned true as soon as it saw the
reduction LCSSA PHI, skipping the user-check for any later LCSSA PHIs.
If one had a non-PHI user, legality wrongly succeeded and the transform
hit a cast<PHINode> assertion. Use continue so the remaining PHIs are
still validated.

Fixes #200811.


  Commit: cdf26f6721363d542865d826dd6455d448e1e860
      https://github.com/llvm/llvm-project/commit/cdf26f6721363d542865d826dd6455d448e1e860
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/div-by-constant.ll
    M llvm/test/CodeGen/RISCV/srem-lkk.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll

  Log Message:
  -----------
  [RISCV] Fold (add X, (mulhs X, C)) -> (mulhsu X, C) if C is negative. (#199287)

Improves some division by constant cases.

Based on this blog post
https://needlesscomplexity.substack.com/p/implementing-division-by-multiplying

Correctness proof is sketched out in the comments.


  Commit: e75e96af6987cb017f8d11efc1eed430b0d6080d
      https://github.com/llvm/llvm-project/commit/e75e96af6987cb017f8d11efc1eed430b0d6080d
  Author: mike-goutokuji <gfunni234 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-adjust-icmp-imm.mir
    M llvm/test/CodeGen/AArch64/arm64-csel.ll
    M llvm/test/CodeGen/AArch64/cmp-to-cmn.ll
    M llvm/test/CodeGen/AArch64/fcvt-i256.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/select-constant-xor.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Port shouldBeAdjustedToZero to GlobalISel (#195941)


  Commit: 4695c84c7954f0133679b76302bff13e2b059def
      https://github.com/llvm/llvm-project/commit/4695c84c7954f0133679b76302bff13e2b059def
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Extend op definitions to support 3D+: load_nd, store_nd, prefetch_nd (#199811)

**Summary**
Extend xegpu.load_nd, xegpu.store_nd, and xegpu.prefetch_nd operations
to support 3D and higher-dimensional tensor descriptors with batch
dimensions, enabling batched memory operations for workloads like [4, 8,
16] tensor loads/stores.

  **Changes**
- Verifiers: Removed rank > 2 checks in LoadNdOp::verify() and
StoreNdOp::verify() to allow 3D+ tensor descriptors
- Documentation: Added comprehensive documentation explaining: Tensor
descriptors can be 1D, 2D, 3D, or higher dimensional; Batch dimensions
(leading dimensions) are unrolled to unit dimensions during lowering;
Operations execute at 2D granularity at subgroup level to match 2D block
IO hardware; Examples of 3D operations
- Tests: Added unit tests for 3D operations (load_nd_3d, store_nd_3d,
prefetch_nd_3d)

---------

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 5f517ddd3e7c29ac51ea88a33e500455deee03a1
      https://github.com/llvm/llvm-project/commit/5f517ddd3e7c29ac51ea88a33e500455deee03a1
  Author: Jianhui Li <jian.hui.li at intel.com>
  Date:   2026-06-03 (Wed, 03 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUOps.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/invalid.mlir
    M mlir/test/Dialect/XeGPU/ops.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Extend op definitions to support    3D+: dpas, dpas_mx (#199809)

**Summary**

Extend xegpu.dpas and xegpu.dpas_mx operations to support 3D and 4D
operands with batch dimensions, enabling batched matrix multiplication
workloads like [4, 128, 512] x [4, 512, 128] -> [4, 128, 128].

  **Changes**

- Type definitions: Extended XeGPU_DpasOprType and XeGPU_DpasResType to
support rank 3-4 (previously 1-3 and 1-2)
- Op definitions: Extended dpas_mx scale operands to support rank 3-4
vectors
- Verifiers: Updated verifyDpasDimensions() to validate batch dimensions
across A, B, and result operands; updated DpasMxOp::verify() for
batch-aware scale dimension checks
- Documentation: Added comprehensive documentation explaining batch
dimensions, microarchitecture-specific matrix sizes, and 3D/4D usage
examples
  - Tests: Added unit tests for 3D batched dpas and dpas_mx operations
  
  Assisted-by-Claude

---------

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 3192648845b87e1907377a395d626b85a7bad6ee
      https://github.com/llvm/llvm-project/commit/3192648845b87e1907377a395d626b85a7bad6ee
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M orc-rt/include/orc-rt/NativeDylibManager.h
    M orc-rt/lib/executor/NativeDylibManager.cpp
    M orc-rt/lib/executor/Unix/NativeDylibAPIs.inc
    M orc-rt/lib/executor/sps-ci/NativeDylibManagerSPSCI.cpp
    M orc-rt/unittests/NativeDylibManagerSPSCITest.cpp
    M orc-rt/unittests/NativeDylibManagerTest.cpp

  Log Message:
  -----------
  [orc-rt] Make NativeDylibManager::lookup return optional addresses. (#201519)

NativeDylibManager::lookup used to return (asynchronously) a vector of
void *s where null represented not-present. This commit updates it to
return a vector of std::optional<void *>s where std::nullopt represents
not-present and an address of zero indicates that the symbol is present
with an address of zero.

This matches the resolve semantics of SimpleExecutorDylibManager,
completing the alignment of the two implementations after the earlier
additions of the Mode argument to load() and the
required/weakly-referenced flag on lookup symbols.


  Commit: 192c013865fbdc038996550e34ecc943f9b5c90e
      https://github.com/llvm/llvm-project/commit/192c013865fbdc038996550e34ecc943f9b5c90e
  Author: Guy David <guyda96 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/dup.ll

  Log Message:
  -----------
  [AArch64] Fix DUP-of-extload combine to ignore chain uses (#201351)

The original combine bailed when the load had more than one use, but
counted chain uses too.


  Commit: b8cc5942b3c1b3dd56d3e37093b0c22e134fd0b0
      https://github.com/llvm/llvm-project/commit/b8cc5942b3c1b3dd56d3e37093b0c22e134fd0b0
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosa.h
    M mlir/lib/Conversion/TosaToSPIRVTosa/CMakeLists.txt
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosa.cpp
    A mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaConstants.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaOps.cpp
    M mlir/lib/Conversion/TosaToSPIRVTosa/TosaToSPIRVTosaPass.cpp
    A mlir/test/Conversion/TosaToSPIRVTosa/graph-constant-invalid.mlir
    A mlir/test/Conversion/TosaToSPIRVTosa/graph-constant-mark-invalid.mlir
    A mlir/test/Conversion/TosaToSPIRVTosa/graph-constant-mark.mlir
    M mlir/test/Conversion/TosaToSPIRVTosa/tosa-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Add TOSA graph constant marking (#201095)

Add a TOSA to SPIR-V TOSA preprocessing pass that marks large tosa.const
and tosa.const_shape operations for lowering to spirv.ARM.GraphConstant.

Keep small constants inline as spirv.Constant, assign graph constant IDs
with a grapharm-prefixed marker attribute, and teach the existing
constant conversion to use the marker when present.

Expose the grapharm source-side attribute names used for interface ABI
annotations and graph constant IDs.

Add tests for marking large constants, leaving small constants unmarked,
increasing graph constant IDs across mixed constants, and lowering
pre-marked constants to spirv.ARM.GraphConstant.

Signed-off-by: Davide Grohmann <davide.grohmann at arm.com>


  Commit: 364a8837a9d67135d050fe594ba51e319fbab938
      https://github.com/llvm/llvm-project/commit/364a8837a9d67135d050fe594ba51e319fbab938
  Author: ShashwathiNavada <shashwathinavada at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    A flang/test/Driver/frelaxed-c-loc-checks.f90

  Log Message:
  -----------
  [Flang] Fix -frelaxed-c-loc-checks being ignored when using the driver (#200733)

`-frelaxed-c-loc-checks` worked correctly when passed directly to -fc1,
but was silently ignored when using the driver (e.g., flang -c
-frelaxed-c-loc-checks), causing the flag to go unused. This patch fixes
it by adding `OPT_relaxed_c_loc` to the `addAllArgs` call in Flang.cpp
Also extend the existing test with a driver-mode RUN line to cover this
path.


  Commit: ee1fe9431baedb216674a1452eb39aca9d3a78d9
      https://github.com/llvm/llvm-project/commit/ee1fe9431baedb216674a1452eb39aca9d3a78d9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/Transforms/EmulateWideInt.cpp
    M mlir/test/Dialect/Arith/emulate-wide-int.mlir

  Log Message:
  -----------
  [mlir][arith] Use subui_extended in wide integer emulation of subi (#197762)


  Commit: b8c18e9aa7f273a786a0dd09a4fcab822438e975
      https://github.com/llvm/llvm-project/commit/b8c18e9aa7f273a786a0dd09a4fcab822438e975
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir

  Log Message:
  -----------
  [mlir][ArithToLLVM] Lower arith.subui_extended (#197737)


  Commit: bdd7b4cc2a0c9a8c58e4025edae079ce6af73aa0
      https://github.com/llvm/llvm-project/commit/bdd7b4cc2a0c9a8c58e4025edae079ce6af73aa0
  Author: ShashwathiNavada <shashwathinavada at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/entry01.f90

  Log Message:
  -----------
  [Flang][Semantics] Throw diagnostics for identical entry and result names. (#198500)

Fixes https://github.com/llvm/llvm-project/issues/198499

In flang entry name and result names cannot be same as per
[C1583](https://j3-fortran.org/doc/year/25/25-007r1.pdf).
Previously, Flang did not diagnose cases where the ENTRY name and RESULT
name were identical, e.g.
```
 function m1f1()
  integer :: m1f1
  real :: m1f1e1
  m1f1 = 0
  entry m1f1e1() result(m1f1e1)
  m1f1e1 = 0.1
end function
```


  Commit: 96c0f5ad27abba13bc941df99686fdb8c7b59fff
      https://github.com/llvm/llvm-project/commit/96c0f5ad27abba13bc941df99686fdb8c7b59fff
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Target/Memory.h
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/Memory.cpp
    M lldb/source/Target/Process.cpp
    M lldb/unittests/Target/MemoryTest.cpp

  Log Message:
  -----------
  [lldb] Use MemoryCache in Process::ReadRangesFromMemory (#201166)

There are scenarios (especially in the ObjectiveC metadata reading) in
which multiple strings are read over and over again, but through
different code paths. In order to make that part of the code use
MultiMemRead effectively, the memory cache must be integrated into
ReadRangesFromMemory before we can migrate the string reading to
vectorized version.


  Commit: 375fa6fb02035afc8719e8484f0c914a96987fd8
      https://github.com/llvm/llvm-project/commit/375fa6fb02035afc8719e8484f0c914a96987fd8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Analysis/ValueTracking/memory-dereferenceable.ll

  Log Message:
  -----------
  [Loads] Use willNotFreeBetween() for dereferenceable-at-point (#201353)

If dereferenceable-at-point semantics are enabled, use
willNotFreeBetween() to check whether frees are known to not occur
between the definition point of the value and the context instruction.

We already use this logic for dereferenceable assumptions, this enables
it for other dereferenceability fact (under deref-at-point).


  Commit: f02dd4afbac15705016a9a7962d87161524b66cc
      https://github.com/llvm/llvm-project/commit/f02dd4afbac15705016a9a7962d87161524b66cc
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/CodeGen/ms-intrinsics-other.c
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/Attributor/nonnull.ll
    M llvm/test/Transforms/Attributor/nosync.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/initializes.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nofpclass.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
    M llvm/test/Transforms/PhaseOrdering/branch-dom-cond.ll

  Log Message:
  -----------
  [CaptureTracking] Volatile operations only capture address (#201316)

The fact that a volatile access was performed on a certain address is an
observable effect in the abstract machine, so volatile operations
capture the address of the accessed pointer. However, they do not
capture the provenance. This matches what we document in LangRef.

While I'm pretty sure that this models the semantics correctly, I'm
slightly concerned that we might be using the provenance capture here to
paper over some other issue, though nothing specific comes to mind (and
the test changes don't show anything problematic).


  Commit: 73802c2e9d102a4fb646bc039754779fca3ea476
      https://github.com/llvm/llvm-project/commit/73802c2e9d102a4fb646bc039754779fca3ea476
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A offload/test/offloading/array_reductions.cpp
    M offload/test/offloading/multiple_reductions.cpp

  Log Message:
  -----------
  [OpenMP][offload] Add enhanced array-reduction tests (#201040)


  Commit: 601958395ae7f24c74d85fcda2829e102e4176f0
      https://github.com/llvm/llvm-project/commit/601958395ae7f24c74d85fcda2829e102e4176f0
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.cpp
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.h
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [NFC][GlobalISel] Refactor ownership of InstructionMatchers (#200798)

- Clarify that the array of InstructionMatchers in the RuleMatcher are
for the roots only.
- Let RuleMatcher own all of the InstructionMatcher used for/by
predicates.
They are all kept in an array in which the index of the
InstructionMatcher is equal to its
InsnID, which eliminates some redundant tracking.
- Remove duplicate tracking of InsnID from RuleMatcher;
InstructionMatcher does it on its own already.

Co-authored-by: Pierre-vh <29600849+Pierre-vh at users.noreply.github.com>


  Commit: b6599484337145cd03cdc42b30de08939e3f6947
      https://github.com/llvm/llvm-project/commit/b6599484337145cd03cdc42b30de08939e3f6947
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/test/CIR/CodeGen/complex-atomic-cast.c

  Log Message:
  -----------
  [CIR] Fix Complex Casting with Atomic qualifier (#201424)

Apply Complex Casting with Atomic qualifier fixes from PRs #172210 and
#172163

Issue https://github.com/llvm/llvm-project/issues/192331


  Commit: b12cd6aa2faac1af50ee332c30a3e863dc462d7d
      https://github.com/llvm/llvm-project/commit/b12cd6aa2faac1af50ee332c30a3e863dc462d7d
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h

  Log Message:
  -----------
  [lldb] Use batched memory reads in ClassDescriptorV2::relative_list_entry_t (#201284)

This reduces the number of memory reads performed when reading Objective
C classes metadata.
Note: these addresses are indeed sequential (with a small offset between
them), but there are so many of them that they would not fit into a
single Process::ReadMemory cache line, so this is still a win, and it
also puts the code into the right shape for vectorizing the next read in
the same loop, which will see the biggest savings.


  Commit: ca085afb41ab167597e76daf732b4f5a6eb36298
      https://github.com/llvm/llvm-project/commit/ca085afb41ab167597e76daf732b4f5a6eb36298
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/freeze-fp.ll
    M llvm/test/CodeGen/X86/freeze-vector.ll
    M llvm/test/CodeGen/X86/madd.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll

  Log Message:
  -----------
  [SelectionDAG] Pre-commit tests for dagcombine improvements (#201270)

I've got a stack of dagcombine improvements that together make an
infinite cycle relating to freeze insertion in vector-manipulation IR.
Here we have

- Handling freeze(undef) in demanded-elts for shufflevector
- Improvements to noundef checks for bitcast, concat, and select
- Improvements to extract(concat), extract(extract), and extract(insert)
handling

Even though the regression I'm fixing is an AMDGPU one, these tests are
mainly X86 because the AMDGPU calling convention makes it hard to
demonstrate the folds I'm adding.

AI note: I got an LLM to find most of these tests, especially some of
the fiddly ones that needed control flow.


  Commit: b0cb331995d494dda75d5fd967e160ec0c32caf1
      https://github.com/llvm/llvm-project/commit/b0cb331995d494dda75d5fd967e160ec0c32caf1
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
    M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements-same-line.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid brace fix-it crash in macro body expansion (#198788)

`readability-braces-around-statements `could assert when diagnosing an
unbraced statement that ends in the middle of a macro body expansion. It
would be hard/unsafe to give fix-its for such cases, so treat them as
diagnostic-only.

Closes https://github.com/llvm/llvm-project/issues/198711


  Commit: 6fd4b82f8985b4d86ba190781f132832637e8642
      https://github.com/llvm/llvm-project/commit/6fd4b82f8985b4d86ba190781f132832637e8642
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-usabs.ll

  Log Message:
  -----------
  [LV] Optimize partial reduction extends before handling inloop subs (#199665)

The crash avoided in #194660 was caused by the extend optimizations
failing to match as due to the extra sub/negation added to the
"ExtendedOp".

A similar crash exists for [us]abs partial reductions (see
https://godbolt.org/z/MerMon5rE), which is fixed with this patch.

This patch solves the underlying issue by running the extend
optimizations before any inloop sub/fsub handling.

Fixes #194000


  Commit: 808b9e58c651486eee2e297b8814de90254082a2
      https://github.com/llvm/llvm-project/commit/808b9e58c651486eee2e297b8814de90254082a2
  Author: KRM7 <rugasikrisztian at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-and-mask.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-sextload-from-sextinreg.mir
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
    M llvm/test/CodeGen/AMDGPU/cttz.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll

  Log Message:
  -----------
  [GlobalISel] Combine sext(load), zext(load) patterns when the load has multiple uses (#182831)

Extend the existing combiners for sext(load), zext(load) patterns to also work when the load has multiple uses.


  Commit: d226dcc019d6a83cba79951ec2a8a08c53a57858
      https://github.com/llvm/llvm-project/commit/d226dcc019d6a83cba79951ec2a8a08c53a57858
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    A llvm/test/CodeGen/NVPTX/insert-vector-elt-bitcast-legalize.ll

  Log Message:
  -----------
  [NVPTX] Fix illegal combineInsertEltToShuffle pattern (#198259)

Adds a condition to the `isShuffleMaskLegal` method to prevent
`combineInsertEltToShuffle` from creating an illegal `vector_shuffle`
after type legalization which leads to a crash.

Context:
This is triggered when bitcasting a `v2f16` into a vector that type
legalizes to a `v2i32`. This happens on architectures supporting packed
`f32` operations (>= `sm_100`). In certain cases, this leads to
`combineInsertEltToShuffle` creating a vector shuffle with `v4f16` for
simplification. Since this happens after type legalization and `v4f16`
is an illegal type, it leads to a crash.


  Commit: 3112581e2945ed5027360387f0ddcb72115f3886
      https://github.com/llvm/llvm-project/commit/3112581e2945ed5027360387f0ddcb72115f3886
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant_folding.mlir

  Log Message:
  -----------
  [mlir][tosa] Improve folder conformance to TOSA specification (#200223)

This commit fixes some bugs in TOSA folders that cause non-conformant
results. The fixes include:
- tosa.intdiv - Folding when the lhs and rhs are zero. In the TOSA
specification this is undefined behaviour.
- tosa.div_ceil_shape/tosa.div_floor_shape - Folding when the lhs is
negative or the rhs is non-positive. In the TOSA specification this is
undefined behaviour.

In addition, some test cases have been added for non-exercised code
paths, including:
- tosa.intdiv - Rejects overflow cases
- tosa.greater/tosa.greater_equal/tosa.equal - Correctly evaluates NaN
cases to False.
- tosa.cast - Saturating rounding when input is out of range of the
output type.
- tosa.mod_shape - Rejects cases where lhs is negative or rhs is
non-positive.


  Commit: c88cefb9f13ee2a448e06f75e98fe01d8a0bcb60
      https://github.com/llvm/llvm-project/commit/c88cefb9f13ee2a448e06f75e98fe01d8a0bcb60
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libcxx/include/__memory/unique_ptr.h

  Log Message:
  -----------
  [libc++] Simplify unique_ptr constructor SFINAE (#201305)

This patch does a couple of things:
- inline aliases to `__enable_if_t`s, making it easier to understand
what's actually going on
- make the `enable_if`s dependent via a `class _Deleter = deleter_type`
instead of a `bool` and `__dependent_type`, reducing the number of
instantiated classes
- remove `__unique_ptr_deleter_sfinae`


  Commit: b09fceba26bf6d34465821460deb40b3834cf50f
      https://github.com/llvm/llvm-project/commit/b09fceba26bf6d34465821460deb40b3834cf50f
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    A llvm/test/Transforms/LoopFusion/peel-preserve-lcssa.ll

  Log Message:
  -----------
  [LoopFusion] Reform LCSSA after peelFusionCandidate's peelLoop (#200442)

peelLoop's internal simplifyLoop call requires LCSSA to be preserved
across it, but the cloned exit edges and cloned defs that peelLoop
introduces are not reflected in the existing LCSSA phis, so the contract
cannot be honoured. Pass PreserveLCSSA=false to peelLoop here and reform
LCSSA on the affected nest immediately afterward. LCSSA is expected
before and after peel+fuse, just not during it.

Caught by yarpgen fuzzing of clang -O3 -fexperimental-loop-fusion -mllvm
-loop-fusion-peel-max-count=8 on AArch64.

Fixes #199418


  Commit: b66b10e852ea3bcb4a35ff83c781bf875ed50870
      https://github.com/llvm/llvm-project/commit/b66b10e852ea3bcb4a35ff83c781bf875ed50870
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
    M clang/test/CodeGenCUDA/managed-var.cu
    M clang/test/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    M clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/Operators/logical-not.hlsl
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads_mat.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/dot2add.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/pow-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    M clang/test/CodeGenHLSL/resources/Texture2D-GetDimensions.hlsl
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/openmp_device_math_isnan.cpp
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Assembler/fast-math-flags.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-fold-binop-select.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
    M llvm/test/CodeGen/AMDGPU/divrem24-assume.ll
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
    M llvm/test/Transforms/InstCombine/log-pow.ll

  Log Message:
  -----------
  [IR] Add fast-math support to {u,s}itofp (#198470)

- `{u,s}itofp` are floating point typed values.
- CodeGen part (foldFPToIntToFP in DAGCombiner) needs `nsz` to fold
pattern (uitofp (fptoui x)) -> (trunc x).
- LLVM has intrinsic variants of `{u,s}itofp`, which already support
fast-math flags.

Now optimization flags require 9 bits in bitcode, fast-math flags of
`uitofp` are stored in high 8 bits.
VPlan part may need some extra work, it assumes optimization flags from
different categories are disjoint.


  Commit: 7da29bc529d74d327804ad25e49e0cdeccfed263
      https://github.com/llvm/llvm-project/commit/7da29bc529d74d327804ad25e49e0cdeccfed263
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Preprocessor/riscv-target-features.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvdota.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/MC/RISCV/rvv/zvfqwdota8f.s
    A llvm/test/MC/RISCV/rvv/zvfwdota16bf.s
    A llvm/test/MC/RISCV/rvv/zvqwdotai8i16.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV][MC] Support experimental Zvdota Family instructions (#195069)

Spec:
https://github.com/aswaterman/riscv-misc/blob/main/isa/ldot-bdot/ldot-bdot.adoc

---------

Co-authored-by: Brandon Wu <songwu0813 at gmail.com>
Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 1960c7a9fdf2fc613a148fbc078173adddd6ca13
      https://github.com/llvm/llvm-project/commit/1960c7a9fdf2fc613a148fbc078173adddd6ca13
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/cxx23.cpp

  Log Message:
  -----------
  [clang][bytecode] Reject erroneous vector conversions (#201368)


  Commit: 8557b5714bca181906118a86d8152598f525fcc7
      https://github.com/llvm/llvm-project/commit/8557b5714bca181906118a86d8152598f525fcc7
  Author: Jacob Crawley <jacob.crawley at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AArch64/sve-fixed-length-frintz.ll
    A llvm/test/CodeGen/AArch64/sve-frintz.ll
    M llvm/test/CodeGen/AMDGPU/fptoui_uitofp.ll

  Log Message:
  -----------
  [DAG] Fold INT_TO_FP( FP_TO_INT (x) ) to FTRUNC(X)  (#198477)

Extends the `foldFPToIntToFP` DAG Combine so that it can now be applied
when `FTRUNC` has a custom lowering, and given that `INT_TO_FP
(FP_TO_INT (X))` is not already legal.

On AArch64 targets with SVE, this change simplifies the codegen of
`INT_TO_FP (FP_TO_INT (X))` conversions by making use of the `frintz`
instruction.


  Commit: 6b13656fd8386f979e061cc97e32b607ee3fcdf4
      https://github.com/llvm/llvm-project/commit/6b13656fd8386f979e061cc97e32b607ee3fcdf4
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Passes/LongJmp.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/AArch64/CMakeLists.txt
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/test/AArch64/compare-and-branch-inversion.S
    M bolt/unittests/Core/CMakeLists.txt
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT][AArch64] Transform cmpbr ~> cmp + br when inversion not possible (#185731)

When reordering blocks we may have to invert branches. Sometimes this
isn't possible for compare-and-branch instructions because the immediate
value would overflow/underflow after the adjustment. In such cases I am
splitting the instruction into a compare followed by a branch. For this
to be legal we should be sure that the condition flags are not being
clobbered. Liveness analysis may help here.


  Commit: bd209f39b43f958a1ac338c338a9a9538751b2fe
      https://github.com/llvm/llvm-project/commit/bd209f39b43f958a1ac338c338a9a9538751b2fe
  Author: wanglei <wanglei at loongson.cn>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    A llvm/test/CodeGen/LoongArch/pr198339.ll

  Log Message:
  -----------
  [LoongArch] Fix FP_EXTEND legalization for v2f32 (#201260)

FP_EXTEND may reach ReplaceNodeResults due to a Custom action for
v2f32 results, but no target-specific lowering is required.

Fixes #198339


  Commit: d83abac82bd290e16a38ab79f6207f0bc3a07b3c
      https://github.com/llvm/llvm-project/commit/d83abac82bd290e16a38ab79f6207f0bc3a07b3c
  Author: Barbara Mitic <bmitic at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/test/Transforms/InstCombine/AMDGPU/wave-shuffle-patterns.ll

  Log Message:
  -----------
  [AMDGPU][InstCombine] Match ds_swizzle rotate mode for cyclic lane shuffles (#199004)

Follow-up to 17cc4f77109d [AMDGPU][InstCombine] Optimize constant
shuffle patterns (#192246).

Adds matchDsSwizzleRotatePattern to recognise shuffles of the form
dst_lane = (src_lane + N) % 32 (N in [1, 31]) and lower them to a single
ds_swizzle with rotate-mode encoding (ROTATE_MODE_ENC | N << 5),
available on GFX9+. The bitmask mode cannot express such rotations since
the carry between bit positions makes the per-bit mapping
non-independent. On wave64 the pattern is accepted only when
hasPeriodicLayout<32> confirms both 32-lane groups rotate by the same
amount. Wave32-only ID forms (mbcnt.lo alone) are correctly rejected on
wave64 targets.

Co-authored-by: Barbara Mitic <Barbara.Mitic at amd.com>


  Commit: faf4728454f57e93530a1ce4fa6f6ca2192e8afb
      https://github.com/llvm/llvm-project/commit/faf4728454f57e93530a1ce4fa6f6ca2192e8afb
  Author: ioana ghiban <ioana.ghiban at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Conversion/MemRefToEmitC/MemRefToEmitC.h
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitC.cpp
    M mlir/lib/Conversion/MemRefToEmitC/MemRefToEmitCPass.cpp
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-dealloc.mlir
    M mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-failed.mlir

  Log Message:
  -----------
  [mlir][EmitC] Convert MemRef::DeallocOp (#194591)

Add `memref.dealloc` lowering to EmitC by mapping pointer-backed
deallocations to `void*` cast + `free()` call. This complements the
existing `memref.alloc` lowering to `malloc()` / `aligned_alloc()` and
ensures the pass emits the required standard library include when
`free()` is used.

Assisted-by: Codex (refine implementation + tests). I reviewed all code
and tests before submission.


  Commit: 5c2565b67d086a3f56ce837424402084c37c7895
      https://github.com/llvm/llvm-project/commit/5c2565b67d086a3f56ce837424402084c37c7895
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    A llvm/test/Transforms/InstCombine/gep-canonicalize-index-constfold.ll

  Log Message:
  -----------
  [InstCombine] Fix assertion in GEP exact div/shr index canonicalization (#201431)

When canonicalizing the index of `(gep ptr, (div/shr exact X, C))`,
visitGetElementPtrInst builds the new index with Builder.CreateBinOp and
then sets the exact flag via
`cast<BinaryOperator>(NewOp)->setIsExact()`. If X is a constant (as can
be proved during InstCombine), the folding builder constant-folds NewOp
to a non-BinaryOperator, so the cast asserts.

Fix this by adding a CreateExactBinOp API, so the exact flag is set on creation.

Fixes #190324.


  Commit: ed4ed6f41e94e24035e07406af737502a8e149a6
      https://github.com/llvm/llvm-project/commit/ed4ed6f41e94e24035e07406af737502a8e149a6
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.cpp
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.h
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp
    M llvm/utils/TableGen/GlobalISelEmitter.cpp

  Log Message:
  -----------
  [GlobalISel] Do not depend on the RuleMatcher at MatchTable emission (#200799)

Some PredicateMatchers/MatchAction/OperandRenderers relied on accessing
RuleMatcher at emission as a crutch.
Instead, make these classes collect all necessary information in the
constructor so the `emit` methods don't depend on RuleMatcher anymore.

The primary motivation for this is that I've been looking at ways to
optimize the MatchTable better,
and the fact that Predicates/Actions/Renderers are not "pure" objects,
in the sense that they keep
accessing a bunch of data all over the place even as late as emission,
was a consistent pain.

This is NFCI. There are no changes to any of the match table for
AMDGPU/AArch64 in this patch.

This patch has a bunch of noise due to function signature changes so
I'll highlight the following interesting changes:
- `SameOperandMatcher` needed a bit of an update in its
`canHoistOutsideOf` function. I had to rewrite it
  but I think the end result is the same.
- `EraseInstAction` has been updated as well, and its users in both
Combiner/ISel backends have been updated to.
Instead of ignoring this action if the Inst was already erased, it's now
the responsibility of the
builder to never insert it in the first place. `BuildMIAction` had a
small update because of that too.

Assisted-By: Claude Sonnet 4.6
Context-of-Use: I used Claude to mass-remove the `RuleMatcher&`
arguments from the `emitPredicateOpcode`
methods. It did not write any logic.

Co-authored-by: Pierre-vh <29600849+Pierre-vh at users.noreply.github.com>


  Commit: 7a008c0ad92a434e3bd419f4bb1c94ce85c56844
      https://github.com/llvm/llvm-project/commit/7a008c0ad92a434e3bd419f4bb1c94ce85c56844
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Protect the const member getter's this argument (#201147)

This PR fixes a bug that when a const member variable getter is
detected, we don't check if its object argument is kept alive for the
duration of the function call.


  Commit: 4590ef3017290cd2bb7eeadf14c23fe0c6d5128f
      https://github.com/llvm/llvm-project/commit/4590ef3017290cd2bb7eeadf14c23fe0c6d5128f
  Author: Abhinav Garg <abhinav.garg at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/always-uniform.mir

  Log Message:
  -----------
  [AMDGPU][Uniformity Analysis] Marking G_DYN_STACKALLOC AlwaysUniform in uniformity analysis (#200390)

Mark G_DYN_STACKALLOC as AlwaysUniform.
The result of G_DYN_STACKALLOC is always derived from the wave-uniform
stack pointer and wave-wide max reduce alloca size hence its always uniform.


  Commit: ab478d9c57547e96e9b5db2621ac2d913bec6ab8
      https://github.com/llvm/llvm-project/commit/ab478d9c57547e96e9b5db2621ac2d913bec6ab8
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/call-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/f128-fmuladd-reduction.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/force-scalable-vectorization-always.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-reg-pressure-spills.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/vpinstruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-ptradd-with-replicated-operand.ll
    M llvm/test/Transforms/LoopVectorize/X86/iv-live-outs.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/predicate-switch.ll
    M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/interleave_vec.ll

  Log Message:
  -----------
  [LV] Implement integer part of VPDerivedIV cost model (#198252)

Adds support for InductionDescriptor::IK_IntInduction variants of
inductions in VPDerivedIVRecipe::computeCost. Designing a cost model for
this recipe is tricky because it gets expanded in expandVPDerivedIV into
smaller individual recipes that will then be folded by simplifyRecipe.
Effectively the cost model has to guess how these will be folded
otherwise the costs will be too pessimistic. For example, 'add i32 %x,
0' and 'mul i32 %x, 1' should both be treated as zero cost since all
uses will be replaced with '%x'. Similarly,
'mul i32 %x, 4' will be converted to 'shl i32 %x, 2', and 'mul i32 %x,
-1' will be simplified to 'sub i32 0, %x'.

As can be seen by this PR, it's important to have non-zero costs for
cases where VPDerivedIVRecipe recipes will end up with non-foldable
instructions. Some of the tests now favour wider VFs to cover the
non-zero cost, or in other cases we prefer not to vectorise at all. I've
added loop attributes in some places to maintain the previous
vectorisation behaviour so that we're still matching the intent of the
test.

I built the LLVM test suite and I couldn't find any cases where we use
more than the first lane of the result so for now I maintained the
original behaviour and returned 0. The other induction types (pointers,
floating point values) are also left as returning 0 for now. These will
be handled in future PRs.


  Commit: 6a68bd8892d9bbfaba3847fb48da78a8923fe144
      https://github.com/llvm/llvm-project/commit/6a68bd8892d9bbfaba3847fb48da78a8923fe144
  Author: adeshcom14 <aadikane at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp

  Log Message:
  -----------
  [AMDGPU][GIsel] Replace old C type castings with safer C++ (#201505)

AMDGPURegisterBankInfo.cpp still contains the old C style castings to int type which can be switched to much safer C++ variants.


  Commit: 76b035c3b00e072334f6f516b0ccb31140f5975f
      https://github.com/llvm/llvm-project/commit/76b035c3b00e072334f6f516b0ccb31140f5975f
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-hoisting-cxx.td
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.cpp
    M llvm/utils/TableGen/Common/GlobalISel/MatchTable/Matchers.h
    M llvm/utils/TableGen/GlobalISelCombinerEmitter.cpp

  Log Message:
  -----------
  [GlobalISel] Do not use recordsOperand() to check if a Combiner C++ predicate can be hoisted (#200815)

The combiner does not use RecordNamedOperand, so assume that any operand
is "recorded" in the sense that can be used by a C++ predicate.


  Commit: 31f0e25074627bd081130f81ba6ffcb0ede1aaab
      https://github.com/llvm/llvm-project/commit/31f0e25074627bd081130f81ba6ffcb0ede1aaab
  Author: dong jianqiang <dongjianqiang2 at huawei.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.h
    M llvm/test/CodeGen/ARM/elf-preemption.ll
    A llvm/test/CodeGen/ARM/weak-hidden-pic.ll

  Log Message:
  -----------
  [ARM] Use GOT indirection for weak symbols in PIC mode  (#198577)

On ARM ELF PIC, weak dso_local symbols were incorrectly accessed via
PC-relative constant pool entries (e.g. .long xxx-(.LPC+8)). The
assembler eagerly resolves this expression when both the symbol and
label are in the same section, preventing the linker from overriding a
weak definition with a strong one from another object file.

Fix #183916 by treating weak symbols as indirect (requiring GOT) on ELF
PIC, matching GCC's behavior. This affects:
- isGVIndirectSymbol (ARMTargetMachine) — Darwin, GlobalISel, stack
prot.
- isGVInGOT (ARMSubtarget)
- LowerGlobalAddressELF (SelectionDAG path)
- ARMLowerPICELF (FastISel path)

Assisted-by: Claude Opus 4.7 <noreply at anthropic.com>


  Commit: 36a1b5156e94f2c07ee8eeabe710ab99fc1a5489
      https://github.com/llvm/llvm-project/commit/36a1b5156e94f2c07ee8eeabe710ab99fc1a5489
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp

  Log Message:
  -----------
  clang: Remove hacky OpenMP handling for appending bound arch (#201555)

Use the same path as CUDA/HIP and stop doing a hacky search through
the arguments looking for -march.


  Commit: 5fe1bf6c1987c3e5e38e4ba31fe26d2415d18002
      https://github.com/llvm/llvm-project/commit/5fe1bf6c1987c3e5e38e4ba31fe26d2415d18002
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll

  Log Message:
  -----------
  [FunctionAttrs] Switch readonly etc inference to use CaptureTracking (#201136)

Inference of memory attributes on arguments also needs to reason about
indirect accesses via captures and implemented a home-grown variant of
CaptureTracking for that purpose. Switch it to the shared
implementation, which slightly improves precision.


  Commit: 03127a03860b9d8cb440fe8f51c00647f45eb8be
      https://github.com/llvm/llvm-project/commit/03127a03860b9d8cb440fe8f51c00647f45eb8be
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/extern.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a diagnostic difference with extern variables (#201369)

If the extern variable is constexpr of of non-array type, we should
diagnose it as missing an initializer. Otherwise, we diagose a read of
non-constexpr variable.


  Commit: 37f8a85dbcb70cd87471a4bf388d0d85fa105105
      https://github.com/llvm/llvm-project/commit/37f8a85dbcb70cd87471a4bf388d0d85fa105105
  Author: John Brawn <john.brawn at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    A llvm/test/Transforms/LoopStrengthReduce/AArch64/use-outside-loop.ll

  Log Message:
  -----------
  [LSR] Narrow search space by merging users outside and inside loop (#185929)

Loop Strength Reduce can give different (and worse) results for a loop
when it is followed by uses of variables used inside the loop. This is
because the uses outside the loop increase the size of the search space,
which can lead to using NarrowSearchSpaceByPickingWinnerRegs which often
discards the best solution.

Solve this by narrowing the search space by merging uses outside the
loop with uses inside the loop. This ignores the Kind and AccessTy of
the use which can mean that the cost may be inaccurate, but it will give
the same cost as if we had just ignored the uses outside of the loop.


  Commit: 4d2a670ba868a75103424ff3203f443391d55b1b
      https://github.com/llvm/llvm-project/commit/4d2a670ba868a75103424ff3203f443391d55b1b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll
    M llvm/test/Transforms/FunctionAttrs/nofree.ll
    M llvm/test/Transforms/FunctionAttrs/optnone.ll
    M llvm/test/Transforms/FunctionAttrs/out-of-bounds-iterator-bug.ll

  Log Message:
  -----------
  [FunctionAttrs] Regenerate test checks (NFC) (#201576)


  Commit: 5e0b3c94aed2d5127843e7e5eb7f1b23eb5ca876
      https://github.com/llvm/llvm-project/commit/5e0b3c94aed2d5127843e7e5eb7f1b23eb5ca876
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll

  Log Message:
  -----------
  [X86] Add test coverage for #199445 (#201564)


  Commit: 9de6f9e7c8d1faabf7e7e49ba49e6d6f3af21373
      https://github.com/llvm/llvm-project/commit/9de6f9e7c8d1faabf7e7e49ba49e6d6f3af21373
  Author: Jan André Reuter <j.reuter at fz-juelich.de>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M offload/libomptarget/OpenMP/API.cpp

  Log Message:
  -----------
  [Offload][libomptarget] Replace slow `omp_target_memset` implementation by `dataFill` (#200202)

`omp_target_memset` was initially implemented before the existance of
`offload`. Because of this, a slow path was chosen to implement
`omp_target_memset`, first allocating memory on the host, calling
`memset` on that memory, and then transferring this to the device.

Aside from the inefficient way of setting device memory, this also
causes a data transfer event for the OpenMP Tools Interface, interfering
with the added memset event in OpenMP v6.0.

Since offload implements setting data via `dataFill` by now, replace the
slow path by just calling `dataFill` instead. This resolves both the
inefficiency, and removes the superfluous event dispatched to a tool.

Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>


  Commit: 3a1d8a8db2645a2a62b4f13916e2ba6e639a7fad
      https://github.com/llvm/llvm-project/commit/3a1d8a8db2645a2a62b4f13916e2ba6e639a7fad
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/Interpreter/Value.h
    M clang/lib/Interpreter/InterpreterValuePrinter.cpp
    M clang/lib/Interpreter/Value.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp

  Log Message:
  -----------
  [clang-repl] Fix Value::setRawBits unit confusion and right-size raw storage. (#200886)

Value::setRawBits had inconsistent units: the default value and the size
assert treated the parameter as bytes (sizeof(Storage)), while the
memcpy treated it as bits (NBits / 8). A caller passing the natural byte
count (e.g. sizeof(long long)) ended up copying only sizeof(T)/8 bytes
-- one byte for an 8-byte payload, leaving the rest stale. The one
in-tree caller compensated by multiplying by 8, hiding the bug.

Rename the parameter to NBytes and drop the / 8 so the API name,
default, assert, and memcpy all agree on bytes. Update the caller in
InterpreterValuePrinter.cpp to pass ElemSize directly.

Right-size the Storage::m_RawBits array while we are here: it was
sizeof(long double) * 8 bytes, which reads like a bit/byte confusion
since the widest typed member of the union is long double itself. The
oversized array made sizeof(Value) ~144 bytes on x86_64 instead of ~40,
bloating every copy/move of a Value.

Add a regression test exercising setRawBits with both an explicit byte
count and the default argument. Pre-fix the test fails for both: the
explicit-count branch copies 1 byte instead of 8, and the default branch
copies sizeof(Storage)/8 bytes instead of the full union width.


  Commit: 48f20c86d0fe594bdb3a5633cb11e19829211ec4
      https://github.com/llvm/llvm-project/commit/48f20c86d0fe594bdb3a5633cb11e19829211ec4
  Author: sujianIBM <Jian.Su at ibm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/utils/lit/tests/lit.cfg
    M llvm/utils/lit/tests/shtest-cat.py
    M llvm/utils/lit/tests/shtest-format.py
    M llvm/utils/lit/tests/shtest-output-printing.py

  Log Message:
  -----------
  [z/OS] Modify regex in error message to match on z/OS. (#194020)

This PR modifies regex in error message to match on z/OS:
```
[Errno 129] EDC5129I No such file or directory.: 'temp1.txt'
wc: file "missing-file": EDC5129I No such file or directory.
cat: does-not-exist: EDC5129I No such file or directory.
```


  Commit: 3e447333fe327854484fa5b4c75210fdf04cb369
      https://github.com/llvm/llvm-project/commit/3e447333fe327854484fa5b4c75210fdf04cb369
  Author: Ádám Kallai <kadam at inf.u-szeged.hu>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/unittests/Core/MemoryMaps.cpp
    M bolt/unittests/Profile/CMakeLists.txt
    A bolt/unittests/Profile/PerfScripts.cpp
    M bolt/unittests/Profile/PerfSpeEvents.cpp

  Log Message:
  -----------
  [BOLT] Add pre-parsed perf script support (#163785)

Implement the functionality to read and parse a pre-parsed perf-script
profile generated by perf2bolt's '--profile-format=perfscript' option.

The '-ps' option defines the perfscript input profile format. It requires
specifying the aggregation type ('--spe', '--ba') if it differs from
the default one ('brstack'). Note that the profile has to also be generated
using the exact same aggregation type.

Examples:
For ARM SPE:
1) $ perf2bolt BINARY -p perf.data -o test.text --spe --profile-format=perfscript
2) $ perf2bolt BINARY -o test.fdata -p test.text --spe -ps

For Brstack aggregation:
1) $ perf2bolt BINARY -p perf.data -o test.text --profile-format=perfscript
2) $ perf2bolt BINARY -o test.fdata -p test.text -ps


  Commit: 07e081dcd784f3286ed9aa1ac549beb61066ce97
      https://github.com/llvm/llvm-project/commit/07e081dcd784f3286ed9aa1ac549beb61066ce97
  Author: Ariel-Burton <arielburton at yahoo.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/DebugInfo/CXX/line.cpp

  Log Message:
  -----------
  Fix clang/test/DebugInfo/CXX/line.cpp (#198401)

This PR twaeks the clang/test/DebugInfo/line.cpp test to pass on z/OS.

The reason the test was failing is that the RUN lines which specify
-triple %itanium_abi_triple expands to s390x-ibm-zos when run on z/OS.
The IR that is emitted for this triple does not match the patterns
expected by the test.

This PR tweaks the patterns in the CHECK lines so that the test also
passes on z/OS.


  Commit: ba57a015bae759554357f1a88abe7b03a6e4c9e0
      https://github.com/llvm/llvm-project/commit/ba57a015bae759554357f1a88abe7b03a6e4c9e0
  Author: John Brawn <john.brawn at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    R llvm/test/Transforms/LoopStrengthReduce/AArch64/use-outside-loop.ll

  Log Message:
  -----------
  Revert "[LSR] Narrow search space by merging users outside and inside loop" (#201581)

This is causing buildbot failures.

Reverts llvm/llvm-project#185929


  Commit: 011fab8c30c6ec7a937c33e21f5a586391a51de2
      https://github.com/llvm/llvm-project/commit/011fab8c30c6ec7a937c33e21f5a586391a51de2
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    A llvm/test/CodeGen/DirectX/DebugInfo/di-compile-unit-versioned-language.ll
    A llvm/test/CodeGen/DirectX/DebugInfo/di-subprogram.ll
    M llvm/test/CodeGen/DirectX/debug-info.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [DirectX] Move IR printing to DXILPrettyPrinter (#198318)

By doing the IR printing inside DXILPrettyPrinter, we have the option to
customise what we print and include the info that we collect and
generate in DXILDebugInfo.


  Commit: 39dc8415bf0e3c444e5f67dfdd400bd4fb2062f3
      https://github.com/llvm/llvm-project/commit/39dc8415bf0e3c444e5f67dfdd400bd4fb2062f3
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/force-scalable-vectorization-always.ll

  Log Message:
  -----------
  [LV][NFC] Fix force-scalable-vectorization-always.ll (#201580)

Fixes a buildbot failure related to FP rounding error in LV debug
output.


  Commit: 76ddd457c4244ea1a2cd5d3f69b5698d341a0f5b
      https://github.com/llvm/llvm-project/commit/76ddd457c4244ea1a2cd5d3f69b5698d341a0f5b
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_console.py

  Log Message:
  -----------
  [lldb-dap][Windows] skip TestDAP_restart_console (#201587)

`TestDAP_restart_console` is already failing on Windows. It reliably
crashes (UNRESOLVED) on some Windows version, including inside Docker
containers.

This is preventing us from enabling pre-merge CI testing for lldb on
Windows in https://github.com/llvm/llvm-project/pull/198906.

This patch skips the test entirely. See
https://github.com/llvm/llvm-project/issues/200840 for more details.


  Commit: 78d4eac701720c252ed1c835d1f635a223bf70ce
      https://github.com/llvm/llvm-project/commit/78d4eac701720c252ed1c835d1f635a223bf70ce
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp

  Log Message:
  -----------
  [lldb][Windows] Suspend new threads when stopped (#201558)

`OnCreateThread` runs from the `DebuggerThread` loop after a
`CREATE_THREAD_DEBUG_EVENT`. Each iteration of that loop ends with a
`ContinueDebugEvent`, which on Windows resumes every thread in the
debuggee that *isn't* individually suspended with `SuspendThread`.

If a thread is created while the debuggee is stopped, all the existing
threads are suspended expect the new one. After the next
ContinueDebugEvent it just runs, while lldb's StateType still reads
eStateStopped.

This patch suspends the new thread when the debuggee is stopped.

This fixes `TestTwoHitsOneActual.py` and `TestBreakOnLambdaCapture.py`
when running the test suite with `LLDB_USE_LLDB_SERVER=1`.

rdar://178718627


  Commit: 9fbb941b9defce93fb98099b91653db063b0ecba
      https://github.com/llvm/llvm-project/commit/9fbb941b9defce93fb98099b91653db063b0ecba
  Author: ioana ghiban <ioana.ghiban at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/FuncToEmitC/FuncToEmitC.cpp
    M mlir/test/Conversion/FuncToEmitC/func-to-emitc-failed.mlir

  Log Message:
  -----------
  [mlir][Func][EmitC] Bail-out to avoid errors from MemRef array conversions (#198583)

Update FuncToEmitC to bail-out before creating invalid EmitC ops for
unsupported cases.

FuncToEmitC now rejects functions, calls, and returns whose converted
result type is `emitc.array`, instead of relying on later `emitc.func`,
`emitc.call`, or `emitc.return` verifier failures.

This does not add support for returning memrefs from functions. It only
makes the existing limitation explicit at the conversion boundary.

## Tests

Added negative tests for the standalone conversion pass. This pass marks
their source ops illegal, so when a pattern bails-out the pass reports a
legalization failure. This is the expected behavior and documents the
unsupported cases directly.

`convert-to-emitc` is more permissive because it allows partial
conversion and does not mark the same source ops illegal, so it can
leave unsupported ops unconverted without reporting the same failures.

Assisted-by: Codex (refine description). I reviewed all text before
submission.


  Commit: 50347f52b68155f49d100839fb17bbda7a40a490
      https://github.com/llvm/llvm-project/commit/50347f52b68155f49d100839fb17bbda7a40a490
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/lit.local.cfg

  Log Message:
  -----------
  [Dexter][NFC] Mark script tests unsupported for non-lldb debuggers (#201596)

The recently-added structured script feature currently relies on
DAP-based debuggers, of which the only one currently supported by Dexter
is LLDB. In order to prevent the tests that depend on this feature from
running for other debuggers, we require LLDB for the script test
directory.


  Commit: 6e58021642834b4646ffea0fb9a2254f46d30173
      https://github.com/llvm/llvm-project/commit/6e58021642834b4646ffea0fb9a2254f46d30173
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h
    M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
    A llvm/test/CodeGen/AArch64/dag-maps-huge-region.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-8.ll

  Log Message:
  -----------
  [MachineScheduler] Rework dag-maps-huge-region (#200945)

For compile time/memory reasons, dag-maps-huge-region is the number of
memory instructions at which we create a barrier and reset maps.
Previously we'd get to dag-maps-huge-region number of instructions, then
add a barrier in the middle of the current set of instructions, and
continue processing the second half of remaining instructions.

With this change, now we simply add a barrier every time we reach
dag-maps-huge-region number of memory instructions, and blow away all
previous instructions.

So now instead of waiting until we get to 1000 memory operations before
creating a barrier for 500 of them, we do it at 500 and do it for all
500.

With this change, -dag-maps-huge-region=500 still has
addChainDependencies() taking up over half of the codegen pipeline in
some cases I looked at, but it's much better than the previous 90%.


  Commit: 2e9f45a7020ba1bb99409e61d17c20cfe60e2e23
      https://github.com/llvm/llvm-project/commit/2e9f45a7020ba1bb99409e61d17c20cfe60e2e23
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ModulesDriver.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Tooling/CompilationDatabase.cpp
    M clang/unittests/Driver/ToolChainTest.cpp

  Log Message:
  -----------
  [clang][driver] Rename ClangExecutable and getClangProgramPath (NFC) (#200814)

This patch is to rename ClangExecutable to DriverExecutable and 
getClangProgramPath to getDriverProgramPath. This makes the 
name more neutral and less confusing when used in flang.


  Commit: 9d3f50a94aae33ee6077353f846e940f8aaff2f4
      https://github.com/llvm/llvm-project/commit/9d3f50a94aae33ee6077353f846e940f8aaff2f4
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/machine-block-hash.mir

  Log Message:
  -----------
  [X86] Fix MachineBlockInfo hash for machine-block-hash.mir (#201039)

I looked at llvm/include/llvm/CodeGen/MachineBlockHashInfo.h,
BlendedBlockHash function and rewrote failing test.

---------

Co-authored-by: mattarde <mattarde at intel.com>


  Commit: 1fe66fcfff699bd4aeb6efa0a64ed32fc603af76
      https://github.com/llvm/llvm-project/commit/1fe66fcfff699bd4aeb6efa0a64ed32fc603af76
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-redundant-bitcast.mir

  Log Message:
  -----------
  [GlobalISel] Add bitcast chain combine (#200694)


  Commit: ef86984f539ff8091ef4e1114a5322fae0fea836
      https://github.com/llvm/llvm-project/commit/ef86984f539ff8091ef4e1114a5322fae0fea836
  Author: UebelAndre <github at uebelandre.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock
    M utils/bazel/extensions.bzl
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/utils/MPCWrapper/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/utils/MPFRWrapper/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    R utils/bazel/third_party_build/BUILD.bazel
    R utils/bazel/third_party_build/gmp.BUILD
    R utils/bazel/third_party_build/mpc.BUILD
    R utils/bazel/third_party_build/mpfr.BUILD
    R utils/bazel/third_party_build/nanobind.BUILD
    R utils/bazel/third_party_build/pfm.BUILD
    R utils/bazel/third_party_build/pyyaml.BUILD
    R utils/bazel/third_party_build/robin_map.BUILD
    R utils/bazel/third_party_build/vulkan_headers.BUILD
    R utils/bazel/third_party_build/zlib-ng.BUILD
    R utils/bazel/third_party_build/zstd.BUILD

  Log Message:
  -----------
  [Bazel]: Pull from Bazel-Central-Registry for third party deps. (#197316)

The majority of these dependencies are available in the
[Bazel-Central-Registry](https://github.com/bazelbuild/bazel-central-registry)
(BCR) and to improve build performance for bzlmod users, llvm-project
should pull from the BCR to consolidate targets.


  Commit: 6530683b31d8b9a3cb7e04eae7c59abeb223faae
      https://github.com/llvm/llvm-project/commit/6530683b31d8b9a3cb7e04eae7c59abeb223faae
  Author: Kartik Ohlan <kartik7ohlan at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    R clang/test/CodeGen/AArch64/neon-across.c
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c

  Log Message:
  -----------
  [CIR] Maximum across vector (IEEE754) (#199779)

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)

Removed [neon-across.c](clang/test/CodeGen/AArch64/neon-across.c)

---------

Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>


  Commit: 8858ddd8a4735ae120855beb23b3e97dae1887ac
      https://github.com/llvm/llvm-project/commit/8858ddd8a4735ae120855beb23b3e97dae1887ac
  Author: Tony Guillot <tony.guillot at protonmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [Clang][Docs] Documented sentinel attribute (#196088)

The documentation of the sentinel attribute was missing, this PR
documents the behavior of the sentinel attribute.


  Commit: 9f531751bbba6b1493ef4c73c6c97f0adb029976
      https://github.com/llvm/llvm-project/commit/9f531751bbba6b1493ef4c73c6c97f0adb029976
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-04 (Thu, 04 Jun 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 bswap/bitreverse. (#200448)

We can implement these using combinations of rev, rev8, and ppairoe.*.

Rename REV16->REV16_RV64. A hypothetical REV16 on RV32 would have a
different encoding like REV and REV8.

Long term we should probably custom lower these instead of having
complex isel patterns. That would allow additional optimizations. But I
think the isel patterns are fine as a starting point.


  Commit: 017380d800cc03dfc84f8e9c598b4ced6c052a8b
      https://github.com/llvm/llvm-project/commit/017380d800cc03dfc84f8e9c598b4ced6c052a8b
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-arith-saturating.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add pattern to prevent scalar uqxtn fallback (#201546)

Previously, attempting to select the intrinsic
@llvm.aarch64.neon.scalar.uqxtn would cause GlobalISel to fall back to
SDAG.
This was both due to:
1. RegBankSelect placing the operands on gpr banks.
2. No instruction selection patterns for the intrinsic.
Add pattern, and fix RegBankSelect to place operands on the correct
banks.


  Commit: 816e2924786a0d7d300aa9a2ff80e5a2a082e6fa
      https://github.com/llvm/llvm-project/commit/816e2924786a0d7d300aa9a2ff80e5a2a082e6fa
  Author: Tom Honermann <tom.honermann at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaStmt.cpp
    M clang/test/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.cpp
    M clang/test/SemaCXX/co_await-range-for.cpp
    M clang/test/SemaCXX/for-range-dereference.cpp

  Log Message:
  -----------
  [Clang] Correct diagnostic notes for C++11 range-based for statements with invalid iterator types (#201461)

Previously, diagnostic notes issued for errors encountered due to invalid
iterator types in C++11 range-based for statements reported the range type
as the iterator type instead of the invalid iterator type.  Now fixed.


  Commit: 27d0d76799cf05975ee3aa5b6a1d13d6831aae28
      https://github.com/llvm/llvm-project/commit/27d0d76799cf05975ee3aa5b6a1d13d6831aae28
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrSystem.td
    A llvm/test/MC/Disassembler/X86/ibhf-64.txt
    A llvm/test/MC/X86/ibhf-64.s

  Log Message:
  -----------
  [X86] Add encoding support for indirect branch history fence (#200918)

This patch introduces ISA under BHI_CTRL CPUID.
The following tech paper is published in May, 2025:


[intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/branch-history-injection.html#ibhf](https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/technical-documentation/branch-history-injection.html#ibhf)

As shown in the paper, The encoding is F3 48 0F 1E F8.
It does not need c-intrinsic.

---------

Co-authored-by: mattarde <mattarde at intel.com>


  Commit: a314c1073cb2eb3a995013cbea6a7870b82f1f1c
      https://github.com/llvm/llvm-project/commit/a314c1073cb2eb3a995013cbea6a7870b82f1f1c
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel][NFC] Run buildifier on libc/BUILD.bazel (#201616)

Out of order deps


  Commit: 1e87cdf03fb9d6659f7d039ebbb9a4c011947a49
      https://github.com/llvm/llvm-project/commit/1e87cdf03fb9d6659f7d039ebbb9a4c011947a49
  Author: Sam Fuller <sgfuller31 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel

  Log Message:
  -----------
  Include AArch64 SME builtins to compiler-rt for Bazel. (#196607)

Include the AArch64 SME (Scalable Matrix Extension) source files in the
compiler-rt builtins library when targeting aarch64. Added a selection
based on OS platform to use either Apple or Non-Apple sources.


  Commit: 48f50e89b726578ee87cd1305330fa32932bb685
      https://github.com/llvm/llvm-project/commit/48f50e89b726578ee87cd1305330fa32932bb685
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp

  Log Message:
  -----------
  [MCP] Early exit if no copies (NFC) (#201602)

These two functions do expensive per-regunit work, but are no-ops if
there are no Copies, so short-circuit this case.


  Commit: fbe7392bdf453cff70615c242d74f11789dd76f1
      https://github.com/llvm/llvm-project/commit/fbe7392bdf453cff70615c242d74f11789dd76f1
  Author: Arun Thangamani <arun.thangamani at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
    M mlir/test/Dialect/X86/vector-contract-to-packed-type-dotproduct.mlir

  Log Message:
  -----------
  [mlir][x86] Fix - replace `vector.load` with `vector.transfer_read` (#201503)

This patch replaces `vector.load` with `vector.transfer_read` to load
elements as `vector<2x32xi8>` instead of `vector<64xi8>`. This fixes the
online shuffling for `int8` and `f8` types.


  Commit: e44d060dfd617e8a5e37b61adcb38ed4ac5d782d
      https://github.com/llvm/llvm-project/commit/e44d060dfd617e8a5e37b61adcb38ed4ac5d782d
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/Inputs/empty.h
    A clang/test/Driver/Inputs/module.modulemap
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    A clang/test/Driver/crash-diagnostics-modules.c
    A clang/test/Driver/crash-diagnostics-tar.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-crashfile.m
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-modules.m
    M clang/test/Driver/crash-report-multi-arch.c
    M clang/test/Driver/crash-report-null.test
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/lld-repro.c
    M clang/test/Modules/crash-vfs-headermaps.m
    M clang/test/Modules/crash-vfs-include-pch.m
    M clang/test/Modules/crash-vfs-ivfsoverlay.m
    M clang/test/Modules/crash-vfs-path-emptydir-entries.m
    M clang/test/Modules/crash-vfs-path-symlink-component.m
    M clang/test/Modules/crash-vfs-path-symlink-topheader.m
    M clang/test/Modules/crash-vfs-path-traversal.m
    M clang/test/Modules/crash-vfs-relative-incdir.m
    M clang/test/Modules/crash-vfs-relative-overlay.m
    M clang/test/Modules/crash-vfs-run-reproducer.m
    M clang/test/Modules/crash-vfs-umbrella-frameworks.m
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [clang] Add -fcrash-diagnostics-tar for tarball of crash reproducer files (#198838)

Makes it easier to move around crash diagnostics.


  Commit: 01dbfa0b6e04c09e389bafd7668b2f99bba3ea79
      https://github.com/llvm/llvm-project/commit/01dbfa0b6e04c09e389bafd7668b2f99bba3ea79
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang-rt/lib/runtime/edit-input.cpp
    M flang-rt/lib/runtime/io-stmt.cpp
    M flang-rt/unittests/Runtime/ListInputTest.cpp
    M flang-rt/unittests/Runtime/Namelist.cpp
    M flang/docs/Extensions.md

  Log Message:
  -----------
  [flang-rt] Extension: accept '!' as value separator in NAMELIST input (#200441)

Treat '!' as a self-delimiting value separator when reading NAMELIST
input, so that "name=value!comment" is accepted without an intervening
blank, comma, slash, or end of record. This matches gfortran, ifx, and
classic nvfortran behavior on real-world namelist input files.

F2023 13.11.3.6 p.1 requires a value separator before a '!' comment
introducer in namelist input, so this is a documented extension. The
change does not affect '!' characters inside character literal
constants, which continue to be taken literally.

The extension was documented in flang/docs/Extensions.md.

Assisted-by: AI


  Commit: 6d1eed609e08df72209e746bb39abbc494de8750
      https://github.com/llvm/llvm-project/commit/6d1eed609e08df72209e746bb39abbc494de8750
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp

  Log Message:
  -----------
  [RDA] Slightly optimize enterBasicBlock() (NFC) (#201608)

Instead of initializing LiveRegs and doing an elementwise std::max with
the first incoming predecessor, directly copy the data for the first
predecessor.


  Commit: 8b140d425a48f90a858394c4186d4bb7826c1376
      https://github.com/llvm/llvm-project/commit/8b140d425a48f90a858394c4186d4bb7826c1376
  Author: David Green <david.green at arm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/Target/AArch64/AArch64Combine.td
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-select-zero.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add select to and combines (#200131)

This adds combines for
// select c, x, 0 -> and c, x
// select c, 0, x -> and (not c), x
// select (not c), x, y -> select c, y, x

We need to freeze the value in the first two. The second is only
profitable if hasAndNot, so it excluded from all_combines.
https://alive2.llvm.org/ce/z/eG-aHT

This helps alleviate regressions when G_SELECT is made legal for vector
operations under AArch64. The AMD tests I am not sure about - let me
know if they look worse. The third combine is mostly useful
post-legalize.


  Commit: 9a423a22f4047a8e4daf678cc00393a8f3b7700a
      https://github.com/llvm/llvm-project/commit/9a423a22f4047a8e4daf678cc00393a8f3b7700a
  Author: Muhammed Shiyas N <114045581+Shiyas-N at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/select_meta.ll

  Log Message:
  -----------
  [InstCombine] Avoid propagating invalid metadata in FoldOpIntoSelect (#199155)

Fixes #186471

FoldOpIntoSelect may create a select with a different result type from
the original instruction. The existing implementation blindly copied all
metadata from the original select, which could propagate invalid
type-specific metadata to the transformed instruction.

In particular, folding an fcmp over a floating-point select could copy
!fpmath metadata onto a non-FP select, producing invalid IR and causing
verifier failures.

This change preserves only metadata that remains valid for the
transformed select and propagates !fpmath only for FP-typed selects.
Debug locations are also preserved explicitly.


  Commit: 2a577a44a35975f1ac25096861ab87e4c5ad9ddd
      https://github.com/llvm/llvm-project/commit/2a577a44a35975f1ac25096861ab87e4c5ad9ddd
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/test/Dialect/OpenACC/ops-cg-privatization.mlir
    M mlir/unittests/Dialect/OpenACC/OpenACCTypeInterfacesTest.cpp

  Log Message:
  -----------
  [mlir][acc] Add operation for private handle to memref (#201603)

This MR introduces a new operation `acc.unwrap_private` for creating a
pointer-like view of the `acc.private_type` handle. This operation will
be used when materializing `acc.private_local` into the memory view
needed to access the allocated private memory. This new operation is
just a simple cast and thus it gets ViewLikeOpInterface attached to it.

Additionally, `acc.private_type` is now treated as a pointer-like type
to ease conversions to other pointer-like types via
PointerLikeType::genCast.


  Commit: a7a53bfbcff401dbc9df5544b7662a7f96ce7336
      https://github.com/llvm/llvm-project/commit/a7a53bfbcff401dbc9df5544b7662a7f96ce7336
  Author: Ayush Sahay <asahay at qti.qualcomm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIXDynamic_riscv32.cpp
    A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIXDynamic_riscv32.h
    M lldb/source/Plugins/Process/Utility/RegisterInfos_riscv32.h
    M lldb/source/Plugins/Process/Utility/lldb-riscv-register-enums.h
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.cpp
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.h
    M lldb/source/Plugins/Process/elf-core/RegisterUtilities.h
    M lldb/source/Utility/RISCV_DWARF_Registers.h
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
    A lldb/test/API/functionalities/postmortem/elf-core/riscv32-imcxqcixqccmp.gpr_csr.core
    A lldb/test/API/functionalities/postmortem/elf-core/riscv32-imcxqcixqccmp.gpr_csr.out

  Log Message:
  -----------
  [lldb][RISCV] Handle subsets of CSRs in RV32 core dump images (#142932)

The standard RISC-V ISA sets aside a 12-bit encoding space for up to
4,096 CSRs. However, many of these may remain unutilized and needn't be
saved in core dump images. To address this, we've come up with a new
note, _NT_CSREGMAP_, that saves subsets of CSRs as key-value pairs. This
change provisions support for handling the subsets of CSRs saved in
32-bit RISC-V core dump images by building the register information for
GPRs, FPRs, and CSRs dynamically.

Kindly refer to the corresponding topic ([Add RISC-V CSRs to core
dumps](https://discourse.llvm.org/t/add-risc-v-csrs-to-core-dumps/84348))
for additional details.


  Commit: b7e08b6467d554c73997b6eb6b7a2bdec51c444e
      https://github.com/llvm/llvm-project/commit/b7e08b6467d554c73997b6eb6b7a2bdec51c444e
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    A llvm/test/Transforms/IndVarSimplify/issue195176.ll

  Log Message:
  -----------
  [SCEV] Fix ScalarEvolution::getBackedgeTakenInfo when L not found (#201502)

By the end of ScalarEvolution::getBackEdgeTakenInfo():
```
  ...
  BackedgeTakenInfo Result = computeBackedgeTakenCount(L);

  if (Result.hasAnyInfo()) {
    // Invalidate any expression using an addrec in this loop.
    ...
  }

  return BackedgeTakenCounts.find(L)->second = std::move(Result);
```
BackedgeTakenCounts may no longer contain an entry for L, resulting in a
crash (https://github.com/llvm/llvm-project/issues/195176). This patch
fixes the issue by inserting the entry if it does not exist (and
otherwise keeping the same behavior).

This adds a regression test (crash on opt 19.1.0 onwards e.g.,
https://godbolt.org/z/Wq3n3rEqT), metarenamed from
https://github.com/dtcxzyw/llvm-autoreduce/issues/106, which in turn was
derived from https://github.com/llvm/llvm-project/issues/195176.


  Commit: b6d82d2ff0c3271ff32077576bbe618d5448a6d8
      https://github.com/llvm/llvm-project/commit/b6d82d2ff0c3271ff32077576bbe618d5448a6d8
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/test/CodeGen/NVPTX/vaargs.ll

  Log Message:
  -----------
  [ExpandVariadics] Expand vaarg instructions (#201156)

Expand vaarg instructions within ExpandVariadics (Clang generally does
not emit these instructions but other front-ends may). This pass already
has all the necessary information to expand these instructions and doing
this in IR as part of this pass is simpler than lowering these
instructions during ISel after type legalization. This fixed a
type-mismatch bug in NVPTX.


  Commit: 5a4516ca104fbc9607704714e3f2dbe0f8baa822
      https://github.com/llvm/llvm-project/commit/5a4516ca104fbc9607704714e3f2dbe0f8baa822
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 2a577a4 (#201625)

This fixes 2a577a44a35975f1ac25096861ab87e4c5ad9ddd.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 69f7aeb52e71ebb7d264bc9e613bc4bc90cb0c47
      https://github.com/llvm/llvm-project/commit/69f7aeb52e71ebb7d264bc9e613bc4bc90cb0c47
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/Driver.cpp
    R clang/test/Driver/Inputs/empty.h
    R clang/test/Driver/Inputs/module.modulemap
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    R clang/test/Driver/crash-diagnostics-modules.c
    R clang/test/Driver/crash-diagnostics-tar.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-crashfile.m
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-modules.m
    M clang/test/Driver/crash-report-multi-arch.c
    M clang/test/Driver/crash-report-null.test
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/lld-repro.c
    M clang/test/Modules/crash-vfs-headermaps.m
    M clang/test/Modules/crash-vfs-include-pch.m
    M clang/test/Modules/crash-vfs-ivfsoverlay.m
    M clang/test/Modules/crash-vfs-path-emptydir-entries.m
    M clang/test/Modules/crash-vfs-path-symlink-component.m
    M clang/test/Modules/crash-vfs-path-symlink-topheader.m
    M clang/test/Modules/crash-vfs-path-traversal.m
    M clang/test/Modules/crash-vfs-relative-incdir.m
    M clang/test/Modules/crash-vfs-relative-overlay.m
    M clang/test/Modules/crash-vfs-run-reproducer.m
    M clang/test/Modules/crash-vfs-umbrella-frameworks.m
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  Revert "[clang] Add -fcrash-diagnostics-tar for tarball of crash reproducer files" (#201622)

Reverts llvm/llvm-project#198838

Test failing at
https://lab.llvm.org/buildbot/#/builders/190/builds/43494


  Commit: 119e57630281e246d858717f8e331772b01f2908
      https://github.com/llvm/llvm-project/commit/119e57630281e246d858717f8e331772b01f2908
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake
    A lldb/cmake/modules/LLDBConcatFiles.cmake
    A lldb/scripts/extract-dynamic-script-interpreter-exports.py
    M lldb/source/API/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [lldb] Build liblldb exports from script-interpreter imports (#201392)

With LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS, the script interpreter
plugins are built as standalone shared libraries that resolve their
lldb_private/llvm references through liblldb's re-exports. liblldb was
falling back to liblldb-private.exports, which allowlists the
lldb_private/llvm namespaces wholesale.

Generate the export list per build instead. For each plugin, run llvm-nm
on its compiled objects, keep undefined references in namespaces liblldb
owns, subtract the plugin's own definitions, and concatenate the
per-plugin lists with liblldb.exports.

The plugin's SHARED target LINK_LIBS liblldb, which makes the plugin's
compile order depend on liblldb. Wiring the exports file in via
add_llvm_symbol_exports' built-in target dependency would form a cycle
through that order-only edge. Add NO_TARGET_DEPENDENCY to
add_llvm_symbol_exports so we can apply the file via LINK_DEPENDS alone;
that still triggers a relink when the symbol set changes, without
participating in compile-order tracking.

Windows is unchanged: msvc_extract_private_symbols.py was already doing
per-symbol extraction at namespace granularity.

Assisted-by: Claude


  Commit: 5b12f6e1aa8440888cb6a48099b5f999f8692b2e
      https://github.com/llvm/llvm-project/commit/5b12f6e1aa8440888cb6a48099b5f999f8692b2e
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/.bazelrc
    M utils/bazel/.bazelversion
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock

  Log Message:
  -----------
  [bazel] Bump versions of BCR deps + bazel 8.6->8.7 (#201613)

After merging #197316, I noticed a warning about a `rules_cc` version
mismatch (`--check_direct_dependencies=off`). Might as well bump all the
versions since we haven't done that in a while.

This doesn't bump the bazel version to 9 yet, but we could try that
next. Just bumping 8.6 -> 8.7 to keep things fresh but at the same
compatibility level.


  Commit: e492f11226d81445bffe263b0421362850d37811
      https://github.com/llvm/llvm-project/commit/e492f11226d81445bffe263b0421362850d37811
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py

  Log Message:
  -----------
  [lldb][windows] enable CI tests (#198906)


  Commit: a8267ccddd8324733eb5ac2663b6a0ca1d904c10
      https://github.com/llvm/llvm-project/commit/a8267ccddd8324733eb5ac2663b6a0ca1d904c10
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/binop.cpp
    M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
    M clang/test/CIR/CodeGen/complex-mul-div.cpp
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
    M clang/test/CIR/Lowering/binop-fp.cir
    M clang/test/CodeGen/AArch64/neon/fullfp16.c

  Log Message:
  -----------
  [CIR] Separate floating-point bin ops from integer bin ops (#201462)

This change creates new FP-specific binary operations and updates the
existing binary operations that previously accepted any arithmetic type
to only allow integer and vector-of-integer types.

This change is being done to prepare for extended floating-point
handling such as strict FP semantics and fast-math handling. It also
simplifies the handling of integer overflow flags.

Assisted-by: Cursor / claude-opus-4.8


  Commit: ff25d3158175c089b39cc98c411679ec8f7be4b6
      https://github.com/llvm/llvm-project/commit/ff25d3158175c089b39cc98c411679ec8f7be4b6
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lldb/test/API/commands/expression/call-throws/TestCallThatThrows.py
    M lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
    M lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
    M lldb/test/API/lang/objc/exceptions/TestObjCExceptions.py
    M lldb/test/API/python_api/unnamed_symbol_lookup/TestUnnamedSymbolLookup.py

  Log Message:
  -----------
  [lldb] xfail tests for arm64e caused by compiler bugs (#201454)

These tests are caused by bugs in clang where arm64e support is not yet
complete.


  Commit: 131ca5c65eca521626041639742479a0f300496c
      https://github.com/llvm/llvm-project/commit/131ca5c65eca521626041639742479a0f300496c
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#201639)

3e447333fe32
a7a53bfbcff4


  Commit: c193b2df39c711eab8fdd9ad9a5cffb045835c28
      https://github.com/llvm/llvm-project/commit/c193b2df39c711eab8fdd9ad9a5cffb045835c28
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang/docs/Extensions.md

  Log Message:
  -----------
  [flang][docs] Documented `c_float128` and `c_float128_complex` extension (#201614)

flang has supported this for a long time, but it wasn't documented as an
extension


  Commit: 7d27cf7c2bddffded12f5526be2d1215671db8d1
      https://github.com/llvm/llvm-project/commit/7d27cf7c2bddffded12f5526be2d1215671db8d1
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    R llvm/test/Transforms/IndVarSimplify/issue195176.ll

  Log Message:
  -----------
  Revert "[SCEV] Fix ScalarEvolution::getBackedgeTakenInfo when L not found" (#201640)

Reverts llvm/llvm-project#201502 due to buildbot breakage:
https://lab.llvm.org/buildbot/#/builders/187/builds/20579


  Commit: 77a4516f18785307d3a3add49de0aa151a69fdcf
      https://github.com/llvm/llvm-project/commit/77a4516f18785307d3a3add49de0aa151a69fdcf
  Author: Kunal Pathak <kunalspathak.github at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AArch64/ldst-opt-umov-fpr-store.mir
    A llvm/test/CodeGen/AArch64/umov-fpr-store-from-phi.ll

  Log Message:
  -----------
  [AArch64] Fold UMOV(lane 0) + GPR store in FPR store (#199139)

Problem: LLVM generates `umov w8, v0.h[0]` + `strh w8, [x0]` instead of
`str h0, [x0]` when storing vector lane 0 to memory, specifically when
SimplifyCFG merges stores across branches -- splitting the
extractelement and store into different basic blocks and preventing the
existing DAG combine from firing.

https://godbolt.org/z/v5G9ohMPa

Root cause: SimplifyCFG creates a PHI + merged store in a successor
block. SelectionDAG ISel processes each block independently, so it
lowers the extract to `UMOV` (GPR) in the predecessor and the store sees
only a GPR value via the PHI. Late tail duplication puts the store back
in the same block, but the `UMOV` is already baked in.

Fix: Added a post-RA peephole in `AArch64LoadStoreOptimizer` (step 6 in
`optimizeBlock`) that recognizes `UMOVvi*_idx0` + GPR store patterns and
replaces them with direct FPR sub-register stores. The peephole:
- Handles all element sizes: i8 (`bsub`), i16 (`hsub`), i32 (`ssub`),
i64 (`dsub`)
- Correctly updates liveness by clearing intervening kill flags on the
vector register
- Bails out if the GPR value has other uses, the vector register is
clobbered, or the store doesn't kill the GPR

Assisted-by: Claude

Fixes: https://github.com/llvm/llvm-project/issues/137086

---------

Co-authored-by: Kunal Pathak <kupathak at fb.com>


  Commit: 52a43992cd92b98f5059851fe43a33ba94527bd4
      https://github.com/llvm/llvm-project/commit/52a43992cd92b98f5059851fe43a33ba94527bd4
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A lldb/docs/use/formatting.md
    R lldb/docs/use/formatting.rst
    A lldb/docs/use/intel_pt.md
    R lldb/docs/use/intel_pt.rst
    A lldb/docs/use/map.md
    R lldb/docs/use/map.rst
    A lldb/docs/use/remote.md
    R lldb/docs/use/remote.rst
    A lldb/docs/use/symbolfilejson.md
    R lldb/docs/use/symbolfilejson.rst
    A lldb/docs/use/symbolication.md
    R lldb/docs/use/symbolication.rst
    A lldb/docs/use/symbols.md
    R lldb/docs/use/symbols.rst
    A lldb/docs/use/troubleshooting.md
    R lldb/docs/use/troubleshooting.rst
    A lldb/docs/use/tutorial.md
    R lldb/docs/use/tutorial.rst
    A lldb/docs/use/variable.md
    R lldb/docs/use/variable.rst

  Log Message:
  -----------
  [lldb][docs] Convert use/ RST docs to Markdown (NFC) (#201467)

Convert the ten user-facing RST docs under lldb/docs/use/ to MyST
Markdown. This is the third batch of an incremental RST -> Markdown
migration; PR1 covered the small leaf pages and PR2 covered the
contributor-facing docs under resources/.

Files: formatting, intel_pt, map, remote, symbolfilejson, symbolication,
symbols, troubleshooting, tutorial, variable.

Verified by building the docs on origin/main and on this branch with
identical sphinx flags and diffing both the warnings and the rendered
HTML. After file extension and line numbers are normalized, the warning
sets match exactly. Seven of the ten pages are byte-identical. The three
that differ (symbolication, tutorial, variable) differ only in
CommonMark collapsing two-spaces-after-period to one and MyST renaming
auto-numbered footnote IDs (`id6` -> `footnote-1`) plus adding an `<hr>`
separator before footnote sections.

The diff also surfaced three semantic regressions in the conversion,
fixed here:

- variable.md lost cross-reference behavior on single-backtick refs to
`SBValue` and `SBData`. RST's default role is `any`, so single backticks
attempted xrefs; in MyST single backticks are plain code spans.
Converted these occurrences to explicit `{any}`...``.
- map.md emitted bare `[Section Name]` for the page TOC, which
CommonMark treats as an undefined reference shortcut and falls through
to literal text. Converted to `[Section Name](#slug)`.
- variable.md emitted `[format name][format name]` as a similar
undefined reference shortcut. Converted to `[format name](#format-
name)` to match the new `(format-name)=` anchor.

Context:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/

Assisted-by: Claude


  Commit: 2851820759fd912c17ac07a492687499aa83906a
      https://github.com/llvm/llvm-project/commit/2851820759fd912c17ac07a492687499aa83906a
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp

  Log Message:
  -----------
  [flang][acc] Attach FortranObjectViewOpInterface to acc.unwrap_private (#201646)

Since this operation is simply a zero-offset view, attach the
FortranObjectViewOpInterface to allow FIR AA to walk this if needed.


  Commit: f357a470de89660b6a887abc95f6a15aae205e64
      https://github.com/llvm/llvm-project/commit/f357a470de89660b6a887abc95f6a15aae205e64
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  [clang][lex] Store `HeaderFileInfo` in a `DenseMap` (#200968)

Calling `FileManager::GetUniqueIDMapping()` during modular builds gets
very expensive if the `FileManager` has seen lots of files. This
function is used in two places in the `ASTWriter` to look up
`HeaderFileInfo` in `HeaderSearch`.

This PR changes the storage of `HeaderFileInfo` from
`FileEntry::getUID()`-indexed `std::vector<T>` to
`llvm::DenseMap<FileEntryRef, T>`, improving scanning performance by
~2.5%.


  Commit: c005f737e764fab61a02ca5587cf43a16716b5fc
      https://github.com/llvm/llvm-project/commit/c005f737e764fab61a02ca5587cf43a16716b5fc
  Author: Abinaya Saravanan <asaravan at qti.qualcomm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    A llvm/test/CodeGen/Hexagon/bitcast-f64-vector.ll

  Log Message:
  -----------
  Fix "Cannot select" crash on bitcast between f64 and int vector types (#201509)

All of i64, f64, v2i32, v4i16, v8i8 are assigned to the DoubleRegs
register class (64-bit register pairs). A bitcast between any two of
these types is a machine-level no-op (ie. the same physical register is
reinterpreted with a different type).

HexagonPatterns.td had NopCast_pat entries for all int-to-int bitcasts
within DoubleRegs, and explicit patterns for f64 <-> i64, but was
missing patterns for f64 <-> v2i32, f64 <-> v4i16, and f64 <-> v8i8. The
same gap existed in IntRegs for f32 <-> v2i16 and f32 <-> v4i8.

Without a tableGen pattern for "f64 = bitcast v2i32" node, the
instruction selector crashed with:

  LLVM ERROR: Cannot select: t26: f64 = bitcast t6
    t6: v2i32,ch = CopyFromReg t0, Register:v2i32 %2

Fix by adding the five missing NopCast_pat entries.

Fixes: https://github.com/llvm/llvm-project/issues/195495


  Commit: 990811766057d912deab1a4aca9d61c73f136b2e
      https://github.com/llvm/llvm-project/commit/990811766057d912deab1a4aca9d61c73f136b2e
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/Driver.cpp
    A clang/test/Driver/Inputs/empty.h
    A clang/test/Driver/Inputs/module.modulemap
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    A clang/test/Driver/crash-diagnostics-modules.c
    A clang/test/Driver/crash-diagnostics-tar.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-crashfile.m
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-modules.m
    M clang/test/Driver/crash-report-multi-arch.c
    M clang/test/Driver/crash-report-null.test
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/lld-repro.c
    M clang/test/Modules/crash-vfs-headermaps.m
    M clang/test/Modules/crash-vfs-include-pch.m
    M clang/test/Modules/crash-vfs-ivfsoverlay.m
    M clang/test/Modules/crash-vfs-path-emptydir-entries.m
    M clang/test/Modules/crash-vfs-path-symlink-component.m
    M clang/test/Modules/crash-vfs-path-symlink-topheader.m
    M clang/test/Modules/crash-vfs-path-traversal.m
    M clang/test/Modules/crash-vfs-relative-incdir.m
    M clang/test/Modules/crash-vfs-relative-overlay.m
    M clang/test/Modules/crash-vfs-run-reproducer.m
    M clang/test/Modules/crash-vfs-umbrella-frameworks.m
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [clang] Add -fcrash-diagnostics-tar for tarball of crash reproducer files (#201643)

Makes it easier to move around crash diagnostics.

Reland of #198838 with crash-diagnostics-tar.c and
crash-report-crashfile.m fixed.


  Commit: 1b85dfdd324eb2a7eef5f17c0595d84791ded2c9
      https://github.com/llvm/llvm-project/commit/1b85dfdd324eb2a7eef5f17c0595d84791ded2c9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitreverse.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - add handling for X86ISD::VSHLDQ\VSRLDQ byte shift instructions (#201641)


  Commit: bb3d14fb4a2f57daf5e859a6797dcfc81dfa3c51
      https://github.com/llvm/llvm-project/commit/bb3d14fb4a2f57daf5e859a6797dcfc81dfa3c51
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/tools/CMakeLists.txt

  Log Message:
  -----------
  [cmake] Add llvm-nm before lldb (#201648)

After #199152, CMake failed for me with:

```
CMake Error at cmake/modules/AddLLVM.cmake:2805 (get_target_property):
  get_target_property() called with non-existent target "llvm-nm".
Call Stack (most recent call first):
  F:/Dev/llvm-project/lldb/source/API/CMakeLists.txt:205 (get_host_tool_path)
```

I'm not sure why it didn't fail in CI or on the buildbots. The fix here
is to add llvm-nm before lldb like we do with other projects.


  Commit: bcdb732df219fc5de7c16b9712d52aa56b22fed0
      https://github.com/llvm/llvm-project/commit/bcdb732df219fc5de7c16b9712d52aa56b22fed0
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp
    M clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/CodeGenCXX/default-arguments.cpp
    M clang/test/CodeGenCXX/explicit-instantiation.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/friend-template.cpp
    M clang/test/SemaTemplate/instantiate-scope.cpp
    M clang/test/Templight/templight-default-func-arg.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [clang] Reland: fix getTemplateInstantiationArgs (#201373)

Relands #199528 

This implements a new strategy for collecting the template arguments, by
relying on the qualifiers and template parameter lists to navigate the
template
context of out-of-line definitions.

This greatly simplifies the signature of that function, by removing a
bunch
of workarounds, and simpliffying a couple that weren't removed yet.

Since this now relies on qualifiers and template parameter lists,
this patch expends most of its effort making sure these are placed,
transformed and propagated to template instantiations.

Also makes the explicit specialization AST nodes stop abusing the
template
parameter lists by storing it's own template parameter list, creating a
dedicated field for them, similar to partial specializations.


  Commit: 9f6b3b34e278ebd11b330c6135d28189f27eb3d8
      https://github.com/llvm/llvm-project/commit/9f6b3b34e278ebd11b330c6135d28189f27eb3d8
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel][lldb] Port a7a53bfbcff401dbc9df5544b7662a7f96ce7336 (#201660)

Adds a new dep


  Commit: 07c318fa917428f8f2b9c7cf49f1c91a6e8a089a
      https://github.com/llvm/llvm-project/commit/07c318fa917428f8f2b9c7cf49f1c91a6e8a089a
  Author: KRM7 <rugasikrisztian at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-sextload-from-sextinreg.mir

  Log Message:
  -----------
  Add missing REQUIRES: asserts to test case which needs it (#201626)


  Commit: 19703323e0c75c63214fcc29272c118326b95ecc
      https://github.com/llvm/llvm-project/commit/19703323e0c75c63214fcc29272c118326b95ecc
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/combined.h

  Log Message:
  -----------
  [scudo] Log if randomness degrades. (#201482)


  Commit: 7b4d5d09813707fc448fd95ce366889913428614
      https://github.com/llvm/llvm-project/commit/7b4d5d09813707fc448fd95ce366889913428614
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/CMakeLists.txt
    M offload/plugins-nextgen/level_zero/dynamic_l0/L0DynWrapper.cpp
    M offload/plugins-nextgen/level_zero/dynamic_l0/level_zero/ze_api.h
    M offload/plugins-nextgen/level_zero/include/L0CmdListManager.h
    M offload/plugins-nextgen/level_zero/include/L0Context.h
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    A offload/plugins-nextgen/level_zero/include/L0Event.h
    M offload/plugins-nextgen/level_zero/include/L0Memory.h
    M offload/plugins-nextgen/level_zero/include/L0Queue.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    A offload/plugins-nextgen/level_zero/src/L0Event.cpp
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Implement Event APIs (#201306)

Introduce a new L0EventTy type used to implement most of the Event APIs
of PluginInterface (all but getEventElapsedTimeImpl).

---------

Co-authored-by: Kevin Sala Penades <kevinsala.ks at gmail.com>


  Commit: cac3e7973a5f84473c9a6543cdae5a614114eaa9
      https://github.com/llvm/llvm-project/commit/cac3e7973a5f84473c9a6543cdae5a614114eaa9
  Author: Alexis Perry-Holby <aperry at lanl.gov>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A flang/docs/MeetingNotes/2026/2026-06-03.md

  Log Message:
  -----------
  [flang] Adding notes from the Flang Community Call June 3rd (#201458)


  Commit: e4828aa1eabba8905cb878d07e5e956b5cc0e165
      https://github.com/llvm/llvm-project/commit/e4828aa1eabba8905cb878d07e5e956b5cc0e165
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/unittests/clang-doc/MergeTest.cpp

  Log Message:
  -----------
  [clang-doc] Wrap per thread arenas in an accessor for BUILD_SHARED (#201388)

It seems like for BUILD_SHARED builds of the toolchain on Windows,
specifically aarch64-windows-gnu hosts, the use of the `thread_local`
variables in Representation.cpp causes an issue at link time due to
non-explicit export. Instead, just wrap them in an accessor function,
which should solve the issue in a cross platform way.

Fixes #200915


  Commit: a89a59367fce12bc2d2d75510cda653b2482d962
      https://github.com/llvm/llvm-project/commit/a89a59367fce12bc2d2d75510cda653b2482d962
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/test/Transforms/LowerTypeTests/Inputs/blockaddr-import.yaml
    M llvm/test/Transforms/LowerTypeTests/Inputs/cfi-direct-call.yaml
    M llvm/test/Transforms/LowerTypeTests/Inputs/cfi-direct-call1.yaml
    M llvm/test/Transforms/LowerTypeTests/Inputs/import-alias.yaml
    M llvm/test/Transforms/LowerTypeTests/Inputs/import-icall.yaml
    M llvm/test/Transforms/LowerTypeTests/Inputs/import-thinlto-funcs.yaml
    M llvm/test/Transforms/LowerTypeTests/export-icall.ll

  Log Message:
  -----------
  [CFI] Refactor `CfiFunctionIndex` to externalize GUID calculation (#201635)

In preparation for PR #201370 - the goal is to decouple CFI from _how_
ThinLTO computes its GUIDs, and enable PR #184065 (for this
[RFC](https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801)).

This PR just changes APIs and the internal implementation of
CfiFunctionIndex, the subsequent one (201370) actually propagates GUIDs
through metadata. It's _almost_ NFC - the YAML format does change
though.


  Commit: 6f5702095457319e5e530baeafb191e4bcd556f3
      https://github.com/llvm/llvm-project/commit/6f5702095457319e5e530baeafb191e4bcd556f3
  Author: Dan Bonachea <dobonachea at lbl.gov>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang/docs/ParallelMultiImageFortranRuntime.md

  Log Message:
  -----------
  docs/ParallelMultiImageFortranRuntime: Update link to latest PRIF Specification (#201403)

The PRIF Committee is pleased to announce the publication of the
Parallel Runtime Interface for Fortran (PRIF) Specification, Revision
0.8. The latest iteration of this specification represents the efforts
of a collaborative design process involving multiple individuals across
several institutions.

The document is available here: https://doi.org/10.25344/S4Z88F

The PRIF specification is governed by a formal PRIF Committee. For more
details, see: https://go.lbl.gov/prif-governance

The Committee vote to approve the technical content in this revision
began on 2026-04-30 and concluded successfully on 2026-05-18.

The 7-day committee comment period for cosmetic feedback began on
2026-05-21 and concluded on 2026-05-28 with no comments, and only minor
editorial changes by the Editor.

See the Change Log in Section 1 of the document for the list of changes
relative to the prior revision.


  Commit: 889496c13bd4d3114e375bd0aeb1f161eff67c33
      https://github.com/llvm/llvm-project/commit/889496c13bd4d3114e375bd0aeb1f161eff67c33
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    M clang/test/SemaTemplate/ctad.cpp

  Log Message:
  -----------
  [clang] fix assertion for DeducedAsPack DeducedTemplateSpecializationType (#201664)

This fixes a regression introduced in #186727, which was never released,
so there are no release notes.

Fixes #200418


  Commit: 6e310bf37a199297a86f6338d94af14220bed969
      https://github.com/llvm/llvm-project/commit/6e310bf37a199297a86f6338d94af14220bed969
  Author: Srividya Sundaram <srividya.sundaram at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang][doc][SYCL] Expand SYCL driver release notes (#200449)

## Summary

The SYCL Support section in the release notes previously had a single
entry for the default SPIR-V target change. This PR adds driver-level
entries covering all notable SYCL changes landed upstream:

- `-fsycl`, `-fsycl-device-only`, `-fsycl-host-only` flag introduction
(#GH117268)
- C++17 default enforcement and sub-C++17 rejection (#GH194014)
- Runtime library rename from `libsycl.so` to `libLLVMSYCL.so` and
automatic runtime path / header include injection (#GH188770, #GH174877)
- Windows SYCL runtime library linking support with CRT management
(#GH194744)
- Fix for `-nolibsycl` being silently ignored and spurious spirv-link
  flags forwarded to `clang-sycl-linker` (#GH200252)

Addresses the review comment on #200200 requesting that notable SYCL
driver and offload tool changes be documented alongside the front-end
changes. This PR covers only the Clang Driver changes.

---------

Co-authored-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 6ecdfcfb1ebdc545020080f10ec2d6587122c73f
      https://github.com/llvm/llvm-project/commit/6ecdfcfb1ebdc545020080f10ec2d6587122c73f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll

  Log Message:
  -----------
  [LV] Add test showing incorrect flag merging in narrowIG (NFC). (#201673)

Add test showing narrowInterleaveGroups incorrectly using the flags from
the first member, even if other members do not have the same flags.


  Commit: 6b3aeb8a2788f65bb16bc9542630438a44195a90
      https://github.com/llvm/llvm-project/commit/6b3aeb8a2788f65bb16bc9542630438a44195a90
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Dialect/LLVMIR/call-intrin.mlir
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    M mlir/test/Target/LLVMIR/Import/intrinsic-unregistered.ll

  Log Message:
  -----------
  [MLIR][LLVMIR] Add support for intrinsics with metadata arguments (#200308)

This updates the LLVM dialect to properly handle intrinsics with
metadata arguments.

The primary goal of this change is to support the constrained FP
intrinsics, but support for other intrinsics with metadata arguments
came along with the change.

I have not yet added the RoundingModeOpInterface and
FPExceptionBehaviorOpInterface to CallIntrinsicOp. I intend to do that
as a follow up change if this direction is accepted. I have also not yet
removed existing specialized operations that explicitly handle a subset
of the constrained intrinsics.

Assisted-by: Cursor / claude-opus-4.7


  Commit: 0027d8904d5a94e6b39e2c3198e901be6d929097
      https://github.com/llvm/llvm-project/commit/0027d8904d5a94e6b39e2c3198e901be6d929097
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-install-name-tool.rst
    A llvm/test/tools/llvm-objcopy/MachO/install-name-tool-output.test
    M llvm/tools/llvm-objcopy/InstallNameToolOpts.td
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp

  Log Message:
  -----------
  [llvm-objcopy] Add -o to install_name_tool (#189495)

This allows copying the binary vs updating it in place


  Commit: cc377f71c3b5b9b3d38b7f661d88908b3f235a2f
      https://github.com/llvm/llvm-project/commit/cc377f71c3b5b9b3d38b7f661d88908b3f235a2f
  Author: Kevin McAfee <kmcafee at nvidia.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  [SCEV] Batch common-factor folding in getAddExpr (#184258)

The existing pairwise common-factor fold in getAddExpr handles two
patterns:
  `W + X + (X * Y * Z)  -->  W + (X * ((Y*Z)+1))`
  `X + (A*B*C) + (A*D*E) --> X + (A*(B*C+D*E))`

Both fold exactly two terms sharing a common factor, then re-enter
getAddExpr() with the partially-simplified Ops. When n terms share a
common factor X, this requires n-1 re-entries through the full
getAddExpr normalization pipeline.

Replace this with a single-pass scan that collects all terms sharing the
common factor and folds them in one shot:
  `A1*X + A2*X + ... + An*X  -->  X * (A1 + A2 + ... + An)`

This reduces the number of top-level re-entries into getAddExpr() for
this fold from n-1 to 1, improving compile time for expressions with
many terms sharing a common factor.

Note that in some cases this change causes benign operand order
changes.


  Commit: 2dce1190b0aae797996023783731efbfb8e33a8f
      https://github.com/llvm/llvm-project/commit/2dce1190b0aae797996023783731efbfb8e33a8f
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libcxx/include/__expected/expected.h
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp

  Log Message:
  -----------
  [libc++] Fix constraint recursion in std::expected's operator== (#201455)

The C++26 constraint added to operator==(const expected& x, const T2& v)
by P3379R0 evaluates *x == v as part of constraint satisfaction. When
ADL on a comparison reaches this hidden friend through a type whose
associated namespaces include std::expected -- for example std::pair<T,
std::expected<U, V>> -- the constraint check ends up considering the
same overload again with the original type as T2, producing a
"satisfaction of constraint depends on itself" error.

Parameterize the expected operand with an extra template parameter
constrained to be the same type as the enclosing expected's value type.
This is observationally equivalent but makes template argument deduction
fail for non-expected operands before the constraint is evaluated, so
the recursion never starts.

Fixes #160431
rdar://178226313

Assisted-by: Claude


  Commit: 717e3c7bcf37a252ba90d612406aba037b50c0ff
      https://github.com/llvm/llvm-project/commit/717e3c7bcf37a252ba90d612406aba037b50c0ff
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libcxx/include/__locale_dir/wstring_convert.h
    A libcxx/test/libcxx/localization/locales/locale.convenience/conversions/conversions.string/pragma_suppress.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Suppress deprecation warning around wstring_convert::to_bytes (#201633)

The deprecation warning for wstring_convert::to_bytes fires from inside
the libc++ header, so users can't suppress it with their own diagnostic
pragmas around the call site. Wrap the definition with
_LIBCPP_SUPPRESS_DEPRECATED_PUSH/POP, mirroring what's already done for
the destructor and from_bytes just above.

Add a regression test under test/libcxx.

rdar://173319468

Assisted-by: Claude


  Commit: 7e2c7050a7b59d324f26a10da73edff5aeedd3ba
      https://github.com/llvm/llvm-project/commit/7e2c7050a7b59d324f26a10da73edff5aeedd3ba
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A lldb/docs/index.md
    R lldb/docs/index.rst
    A lldb/docs/python_api_enums.md
    R lldb/docs/python_api_enums.rst

  Log Message:
  -----------
  [lldb][docs] Convert top-level RST docs to Markdown (NFC) (#201674)

Convert the two remaining top-level RST docs, index and
python_api_enums, to MyST Markdown. This is the final batch of an
incremental RST -> Markdown migration.

After this change, the only RST sources left under lldb/docs/ are
man/lldb.rst and man/lldb-server.rst, which conf.py intentionally keeps
as RST so the man-page builder can run without myst_parser installed
(this reduces dependencies for some llvm distributions).

Verified by building the docs on origin/main and on this branch with
identical sphinx flags and diffing both the warnings and the rendered
HTML. After file extension and line numbers are normalized, the warning
sets match exactly. index.html is byte-identical; python_api_enums.html
differs in a single line where CommonMark collapses two spaces after a
period to one.

The diff also surfaced two semantic regressions in the conversion, fixed
here:

- index.md and python_api_enums.md lost cross-reference behavior on
single-backtick refs to `lldb` and `SBHostOS.GetLLDBPath`. RST's default
role is `any`, so single backticks attempted xrefs; in MyST single
backticks are plain code spans. Converted to explicit `{any}`...``
syntax.

Context: https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/

Assisted-by: Claude


  Commit: f76f26d9560356680da47bc9252df6283a14adad
      https://github.com/llvm/llvm-project/commit/f76f26d9560356680da47bc9252df6283a14adad
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/ThinLTO/X86/memprof-icp-metadata.ll

  Log Message:
  -----------
  [MemProf] Fix incorrect VP metadata update during ICP promotion (#201658)

Track unpromoted candidates explicitly when performing ICP during
MemProf
context disambiguation. Previously, the code assumed that the first N
candidates were always the ones promoted, which led to incorrect
metadata
on the fallback indirect call if a candidate was skipped (e.g. due to
missing definition or being illegal to promote).


  Commit: b0b433c725aa6fc80ba3de35abb345c7b2cd191e
      https://github.com/llvm/llvm-project/commit/b0b433c725aa6fc80ba3de35abb345c7b2cd191e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll

  Log Message:
  -----------
  [VPlan] Intersect IR flags across interleave members when narrowing. (#201682)

Update narrowInterleaveGroupOp to properly intersect flags for all wide
members, to make sure we only use the flags common across all combined
members.


  Commit: 01c00d115c3e46c4cb78ec78c2a8c729aa0e07ca
      https://github.com/llvm/llvm-project/commit/01c00d115c3e46c4cb78ec78c2a8c729aa0e07ca
  Author: Nishant Patel <nishant.b.patel at intel.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Promote memref.alloca to SLM in convert-vector-to-xegpu (#197978)

Run a small pre-pass at the start of convert-vector-to-xegpu that
rewrites every memref.alloca to address space 3, so allocations coming
out of bufferization carry the SLM attribute by the time the conversion
patterns run.


  Commit: bea8fa29233c8daa2dc8818df2763f6bf8765f69
      https://github.com/llvm/llvm-project/commit/bea8fa29233c8daa2dc8818df2763f6bf8765f69
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/DirectX/DebugInfo/di-compile-unit-versioned-language.ll
    M llvm/test/CodeGen/DirectX/DebugInfo/di-subprogram.ll
    M llvm/test/CodeGen/DirectX/Metadata/cbuffer-metadata.ll
    M llvm/test/CodeGen/DirectX/Metadata/dx_precise.ll
    M llvm/test/CodeGen/DirectX/Metadata/srv_metadata.ll
    M llvm/test/CodeGen/DirectX/Metadata/uav_metadata.ll
    M llvm/test/CodeGen/DirectX/ResourceGlobalElimination.ll
    M llvm/test/CodeGen/DirectX/conflicting-bitcast-insert.ll
    M llvm/test/CodeGen/DirectX/debug-info.ll
    M llvm/test/CodeGen/DirectX/finalize-linkage-remove-dead-lib.ll
    M llvm/test/CodeGen/DirectX/finalize-linkage-remove-dead.ll
    M llvm/test/CodeGen/DirectX/finalize_linkage.ll
    M llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
    M llvm/test/CodeGen/DirectX/omit-bitcast-insert.ll
    M llvm/test/CodeGen/DirectX/remove-dead-intriniscs.ll
    M llvm/test/CodeGen/DirectX/scalar-store.ll
    M llvm/test/CodeGen/DirectX/scalarize-two-calls.ll
    M llvm/test/CodeGen/DirectX/strip-fn-attrs.ll

  Log Message:
  -----------
  [DirectX] Remove --filetype=asm from tests (#201600)

--filetype=asm is the default. Suggested by arsenm.


  Commit: aa513cbc24a4dcfd3f98bff0e96fa85748080e75
      https://github.com/llvm/llvm-project/commit/aa513cbc24a4dcfd3f98bff0e96fa85748080e75
  Author: dpalermo <dan.palermo at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/test/OpenMP/amdgcn_weak_alias.c
    M clang/test/OpenMP/declare_target_codegen.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    M clang/test/OpenMP/target_indirect_codegen.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir

  Log Message:
  -----------
  Revert "[OpenMP] Use ext linkage for kernels handles and globals handles keep…" (#201698)

Reverts llvm/llvm-project#200964

This patch breaks flang declare target on a common block


  Commit: 3a4aab52cd0e6a4d253c16bab6ae4cb4cc5c8fb7
      https://github.com/llvm/llvm-project/commit/3a4aab52cd0e6a4d253c16bab6ae4cb4cc5c8fb7
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 01c00d1 (#201696)

This fixes 01c00d115c3e46c4cb78ec78c2a8c729aa0e07ca.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: a81c5a6df4ddba64a4e085aebf435d276eb46e22
      https://github.com/llvm/llvm-project/commit/a81c5a6df4ddba64a4e085aebf435d276eb46e22
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/test/MC/RISCV/rvi-pseudos-invalid.s
    A llvm/test/MC/RISCV/xqci-access-pseudos.s

  Log Message:
  -----------
  [RISCV] Support Qualcomm Access Relocations (#188671)

These QUALCOMM vendor relocations mark 16-bit compressed and 32-bit
load/store instructions as candidates for relaxation from a QC_E_LI +
Load/Store sequence.

This change adds support for assembling instructions with these
relocations. These relocations are documented in
https://github.com/quic/riscv-elf-psabi-quic-extensions


  Commit: adaa9e08b73829701b0b7ebc86d35be2602d3f2a
      https://github.com/llvm/llvm-project/commit/adaa9e08b73829701b0b7ebc86d35be2602d3f2a
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  Revert "[clang][lex] Store `HeaderFileInfo` in a `DenseMap`" (#201702)

Reverts llvm/llvm-project#200968

This is causing some non-determinism in PCM files in the
`clang/test/Modules/rebuild.m` test.


  Commit: 1d13b74cf086629d5cdae5f44ef4a62cebcaf3ff
      https://github.com/llvm/llvm-project/commit/1d13b74cf086629d5cdae5f44ef4a62cebcaf3ff
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.cpp
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.h
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/debug-names-static-member-decl.test

  Log Message:
  -----------
  [DWARFLinker] Emit .debug_names entries for type-unit DIEs in parallel linker (#201215)

The default tag arm of AcceleratorRecordsSaver::save returned early when
a DIE was cloned into the artificial type unit, so class-static const
data members (DW_AT_const_value, no out-of-class definition) never got
an accelerator entry. As a result `target var A::int_val` in LLDB then
found nothing.

The HasLiveAddress / HasRanges guard already decides whether a DIE
carries enough information of its own to warrant a name record; the
output unit is just doing the routing. Drop the early return and thread
the TypeEntry through saveNameRecord / saveObjCNameRecord / saveObjC so
they emit into the type-unit accel storage when appropriate, the same
way saveTypeRecord and saveNamespaceRecord already do.


  Commit: 3c20bc59dd8b1a7defb021722ce38b6311f8e893
      https://github.com/llvm/llvm-project/commit/3c20bc59dd8b1a7defb021722ce38b6311f8e893
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    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 mulhs/u for i8 vectors. (#201665)

We already marked them as legal, but would crash.


  Commit: 9959cbfeffa4f972df12130df4f921cc9ec215a3
      https://github.com/llvm/llvm-project/commit/9959cbfeffa4f972df12130df4f921cc9ec215a3
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/tools/dsymutil/LinkUtils.h
    M llvm/tools/dsymutil/dsymutil.cpp

  Log Message:
  -----------
  [dsymutil] Make the Parallel DWARF linker the default (#200971)

This commit toggles the default linker in dsymutil from the classic
linker to the parallel linker. This means that we have parity between
the two implementations, at least for everything we have test coverage
for in LLVM and LLDB.

I expected we'll continue to uncover more differences in the future.
However I don't think that necessitates holding off on toggling the
default. By making the parallel linker the default, we get maximum
living on upstream, even if that audience is comparatively small.

Fixes #195390


  Commit: 72c2f7e0552ed468bbfb06f651b221f5c7b4b0bf
      https://github.com/llvm/llvm-project/commit/72c2f7e0552ed468bbfb06f651b221f5c7b4b0bf
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/cbuffer-matrix-layout-keyword.hlsl

  Log Message:
  -----------
  [HLSL][CBuffer][Matrix] Honor row_major/column_major keyword in cbuffer layout (#201671)

fixes #201668

A per-declaration `row_major`/`column_major` keyword on a cbuffer matrix
was being dropped when building the cbuffer layout, so the layout struct
and the buffer-layout copy fell back to the translation-unit
`-fmatrix-memory-layout=`

Needed to fix the desugar in two places:
* HLSLBufferLayoutBuilder::layOutMatrix took a `const ConstantMatrixType
*` and called ConvertTypeForMem(QualType(MT, 0)), discarding the sugar.
It now takes the sugared QualType.
* SemaHLSL's host-layout struct construction called
getUnqualifiedDesugaredType() on each field, erasing the orientation
attribute. A getHostLayoutFieldType() helper now keeps the sugared type
for constant matrices while desugaring everything else.


  Commit: 6369f3382514b36a7a50f92b945d7dace1b5b9b7
      https://github.com/llvm/llvm-project/commit/6369f3382514b36a7a50f92b945d7dace1b5b9b7
  Author: Kewen Meng <Kewen.Meng at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    A offload/ci/openmp-offload-amdgpu-libc-runtime.py

  Log Message:
  -----------
  [CI][AMDGPU] Create scriptedbuilder for libc build (#201687)

Introduced a new scriptedbuilder for libc build. It will enable
developers to conveniently reproduce the same build by our bot:
https://lab.llvm.org/buildbot/#/builders/10

Tested locally, tests passed.


  Commit: becc74f032080821ddceb04106ef7f30223b4913
      https://github.com/llvm/llvm-project/commit/becc74f032080821ddceb04106ef7f30223b4913
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
    A clang/test/Driver/riscv-zilsd-word-align.c
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/zdinx-spill.ll
    M llvm/test/CodeGen/RISCV/zilsd-ldst-opt-prera.mir
    M llvm/test/CodeGen/RISCV/zilsd-regalloc-hints.mir
    M llvm/test/CodeGen/RISCV/zilsd-spill.ll
    M llvm/test/CodeGen/RISCV/zilsd.ll

  Log Message:
  -----------
  [RISCV] Clang flags for controlling zilsd alignment (#181439)

Called `-mzilsd-word-align` and `-mzilsd-strict-align`. These interact
with scalar/strict alignment, in hopefully a reasonable way.

They cause errors on rv64, where zilsd is not available.


  Commit: 762b77ac29b8aba6783ddb895ec7c5df5e7b677a
      https://github.com/llvm/llvm-project/commit/762b77ac29b8aba6783ddb895ec7c5df5e7b677a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libcxx/include/ios
    M libcxx/lib/abi/CHANGELOG.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/ios.cpp
    M libcxx/test/libcxx/transitive_includes/cxx26.csv

  Log Message:
  -----------
  [libc++] Remove ios_base::__xindex_ from the ABI (#198994)

`__xindex_` is only ever used from the dylib from a single function. We
can simplify the code a bit by making the variable function-local and
avoiding exposing it to the ABI at all. This also fixes a TODO about
whether it's safe to use `atomic` with the GCC ABI: yes, since it's not
actually part of our ABI.


  Commit: 48d0cbd339310d965b4602b514c420e5ab54a3d4
      https://github.com/llvm/llvm-project/commit/48d0cbd339310d965b4602b514c420e5ab54a3d4
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h

  Log Message:
  -----------
  [flang][OpenMP] Separate checks for type-parameter inquiry and subobject (#201324)

This will make it possible to diagnose these situations independently.
This isn't perfect, but will be improved gradually in the future.


  Commit: b19d4591663758787f9929eccfd9136c58275127
      https://github.com/llvm/llvm-project/commit/b19d4591663758787f9929eccfd9136c58275127
  Author: Daniil Dudkin <unterumarmung at yandex.ru>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp

  Log Message:
  -----------
  [clang-tidy] avoid 64-bit truncation in redundant bitwise checks (#201363)

Fixes #201115


  Commit: 70f7167ce2622a610a6d6dca4d5934ea8a07a056
      https://github.com/llvm/llvm-project/commit/70f7167ce2622a610a6d6dca4d5934ea8a07a056
  Author: Schrodinger ZHU Yifan <yfzhu at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libc/src/__support/threads/raw_rwlock.h

  Log Message:
  -----------
  [libc][rwlock] fix the race condition in waiter queue (#201629)

Fix #201615.

Fix the issue that non atomic operations race in waiting queue, which
causes missed futex wakeup signals.

Confirmed by TSAN:

```
==================
WARNING: ThreadSanitizer: data race (pid=388518)
  Write of size 4 at 0x7ffd21cf98e4 by thread T23:
    #0 __llvm_libc_23_0_0_git::RawRwLock::notify_pending_threads() ./libc/src/__support/threads/raw_rwlock.h:443:44
    #1 __llvm_libc_23_0_0_git::RawRwLock::unlock() ./libc/src/__support/threads/raw_rwlock.h:520:5
    #2 randomized_thread_operation(SharedData*) ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:104:18
    #3 thread_runner(void*) ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:148:5

  Previous atomic read of size 4 at 0x7ffd21cf98e4 by thread T4:
    #0 __llvm_libc_23_0_0_git::cpp::Atomic<unsigned int>::load(...) ./libc/src/__support/CPP/atomic.h:115:5
    #1 __llvm_libc_23_0_0_git::Futex::wait(...) ./libc/src/__support/threads/linux/futex_utils.h:43:17
    #2 __llvm_libc_23_0_0_git::cpp::expected<int, int> __llvm_libc_23_0_0_git::rwlock::WaitingQueue::wait<Role::Reader>(...) ./libc/src/__support/threads/raw_rwlock.h:101:35
    #3 __llvm_libc_23_0_0_git::rwlock::LockResult __llvm_libc_23_0_0_git::RawRwLock::lock_slow<Role::Reader>(...) ./libc/src/__support/threads/raw_rwlock.h:402:34
    #4 __llvm_libc_23_0_0_git::RawRwLock::read_lock(...) ./libc/src/__support/threads/raw_rwlock.h:485:12
    #5 randomized_thread_operation(SharedData*) ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:79:16
    #6 thread_runner(void*) ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:148:5

  Thread T23 (tid=388553, running) created by main thread at:
    #0 pthread_create ...
    #1 main ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:166:5

  Thread T4 (tid=388533, running) created by main thread at:
    #0 pthread_create ...
    #1 main ./libc/test/integration/src/__support/threads/tsan_full_rwlock.cpp:166:5

SUMMARY: ThreadSanitizer: data race ./libc/src/__support/threads/raw_rwlock.h:443:44 in __llvm_libc_23_0_0_git::RawRwLock::notify_pending_threads()
==================
```

AI wrote the detection script. Manually fixed.


  Commit: bb180dd616c61932a0000ff45cd5d69fc1195b87
      https://github.com/llvm/llvm-project/commit/bb180dd616c61932a0000ff45cd5d69fc1195b87
  Author: Alex Crichton <alex at alexcrichton.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/test/CodeGen/WebAssembly/wasm-arguments.c

  Log Message:
  -----------
  [WebAssembly] Fix crash combining complex numbers and multivalue (#200514)

This fixes a crash in Clang when the `experimental-mv` ABI is used on
WebAssembly targets in conjunction with complex numbers as arguments.
There's no strict definition for what the multivalue ABI is at this
time, so the main goal is to just not crash for now.

Closes #70402
Closes #153567


  Commit: 60bd8f8088eba2ede01b9d112fc6b927e9e99795
      https://github.com/llvm/llvm-project/commit/60bd8f8088eba2ede01b9d112fc6b927e9e99795
  Author: Rashmi Mudduluru <r_mudduluru at apple.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/MemoryUnsafeCastChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.mm

  Log Message:
  -----------
  [Webkit Checkers][SaferCpp] Detect base-to-derived downcasts laundered through void* in MemoryUnsafeCastChecker (#200294)

Adds a matcher for static_cast<Derived*>(static_cast<void*>(base)),
which previously evaded detection because the outer cast's immediate
source expression is void*, not Base*.

rdar://173770143

---------

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>


  Commit: ef574da13acec7d30de1e949d8a2c7c6f7ff531f
      https://github.com/llvm/llvm-project/commit/ef574da13acec7d30de1e949d8a2c7c6f7ff531f
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M compiler-rt/CMakeLists.txt
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp

  Log Message:
  -----------
  Reland HIP offload PGO runtime support as a separate opt-in library (#201606)

This mostly relands the compiler-rt part of #177665 (approved and
merged, then reverted in #201416). The first commit restores it as
merged.

It was reverted because of a Windows problem: the ROCm runtime needs the
sanitizer interception library, which is built /MD on Windows, so
putting it in clang_rt.profile forced that library to /MD and broke
users linking it with the static CRT (/MT).

The second commit fixes this by building the ROCm support as a separate,
opt-in library clang_rt.profile_rocm, a /MD superset of
clang_rt.profile. The base library is left unchanged (/MT, no ROCm). The
driver links clang_rt.profile_rocm first, so it resolves all profile
symbols and the base library stays inert.

clang_rt.profile_rocm is off by default. The compiler-side change and
driver wiring are in a separate PR.


  Commit: fbbf5f0398ea7509c2da194ac67882096e232f80
      https://github.com/llvm/llvm-project/commit/fbbf5f0398ea7509c2da194ac67882096e232f80
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M lld/test/wasm/many-functions.ll

  Log Message:
  -----------
  [lld][WebAssembly] Simplify many-functions.ll test (#201711)

Remove superfluous checks (function bodies, data section, symbol table,
and segment info) from the test.

The primary purpose of this test is to verify that relocations within
the CODE section are handled correctly when linking objects with many
functions (requiring multi-byte LEB128 for function count).

Checking the entire symbol table, segment info, data section, and all
129 function bodies is superfluous and adds unnecessary noise (over 1000
lines of expectations) to the test. These features are covered by other,
more targeted tests. Reducing these checks makes the test much easier to
read and maintain.


  Commit: d7a23b7ab0afad10d26f0f1a5edfce88de452f81
      https://github.com/llvm/llvm-project/commit/d7a23b7ab0afad10d26f0f1a5edfce88de452f81
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    R lld/test/wasm/export-all.ll
    M lld/test/wasm/export-all.s

  Log Message:
  -----------
  [lld][Webassembly] Merge lld/test/wasm/export-all.ll into export-all.s. NFC (#201724)

Part of the effort to convert all our tests to assembly.


  Commit: 1e3dc606df3aefc924fb58238dd705b8bfde1581
      https://github.com/llvm/llvm-project/commit/1e3dc606df3aefc924fb58238dd705b8bfde1581
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/docs/ProgrammersManual.rst
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/unittests/ADT/BitVectorTest.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp

  Log Message:
  -----------
  [DenseMap] Store occupancy in a packed used-bit array (#201281)

Track bucket occupancy in a packed 1-bit-per-bucket "used" array (uint32
words)
instead of an `Empty` sentinel key. The buckets and the used array share
one
allocation. The probing scheme is unchanged.
(uint64_t words lead to slightly larger clang binary.)

Because occupancy is a packed bit instead of an in-band sentinel,
probing and
iteration test a dense bit rather than loading each bucket key. This
helps
find-miss and iteration (the empty terminus and the empty buckets become
a bit
test, not a bucket load; for large keys it also skips the structural
compare
against the empty key) and large-bucket insert. It costs find-hit (the
matched
bucket is loaded either way, so the bit is pure overhead) and, for small
buckets,
fill/insert (the per-insert used-bit write). instructions:u rises
slightly
(stage2 sqlite around +0.4% -O0-g), but wall time is neutral-to-faster:
the
find-miss and iteration gains are cache effects an instruction count
does not
see.

The instruction-count increase concentrates in hot (pointer key,
sizeof(bucket) <= 16) maps.

getMemorySize now also counts the used array; the InitSize tests are
updated and
the BitVectorTest DenseSet test no longer expects inserting a default
key to
abort.

Aided by Clause Opus 4.8


  Commit: 3b095d9763756c3ba245a9eedbce4509302a4f23
      https://github.com/llvm/llvm-project/commit/3b095d9763756c3ba245a9eedbce4509302a4f23
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rv32p.ll

  Log Message:
  -----------
  [RISCV][P-ext] Select scalar asub/asubu and mulhr/mulhru/mulhrsu on RV32 (#201540)

The truncate combine only formed these nodes for packed vectors; extend
it to scalar i32 on RV32 and add the matching isel patterns.


  Commit: 4417a7501aae8a9b8d3ffee1d491540a0858cc29
      https://github.com/llvm/llvm-project/commit/4417a7501aae8a9b8d3ffee1d491540a0858cc29
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Sema/static-init.c

  Log Message:
  -----------
  [ExprConstant] Treat `&*p` as not a dereference in C constant initializers (#201483)

In C, [C11 6.5.3.2p3] specifies that when the operand of unary `&` is
the result of a unary `*` operator, neither operator is evaluated and
the result is as if both were omitted. So `&*p` yields the pointer value
`p` without performing a dereference, and forming it is well-defined
even when `p` is null (e.g. `&*(int *)0`).

The constant evaluator did not honor this: it evaluated the `*` as a
real lvalue access and diagnosed a null dereference as undefined
behavior. This went unnoticed for ordinary scalar initializers, which
use the relaxed `Expr::isConstantInitializer()` check, but a bit-field
initializer is evaluated via `EvaluateAsInt()` with `SE_NoSideEffects`,
so the same expression was rejected there with "initializer element is
not a compile-time constant":

```
  struct S { long v : 8; };
  const struct S s = { .v = (long)&*(int *)0 };   // error
  const long x     = (long)&*(int *)0;            // accepted
```

Handle `&*p` in `PointerExprEvaluator::VisitUnaryAddrOf` (and the
corresponding `UO_AddrOf` case in the bytecode interpreter) by
evaluating the pointer operand directly in C.

Fixes #197846.

rdar://158774335


  Commit: de2d0f48ea2c237f12a046c2b56589b1b0ea22e0
      https://github.com/llvm/llvm-project/commit/de2d0f48ea2c237f12a046c2b56589b1b0ea22e0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-04 (Thu, 04 Jun 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] Add zero/sign extend support between 32-bit and 64-bit vectors. (#201694)

Still need to improve sext on RV64.

Assisted-by: Claude Sonnet 4.6


  Commit: 2cc6b14b11010b8e537a5dfe627159ce96f5a690
      https://github.com/llvm/llvm-project/commit/2cc6b14b11010b8e537a5dfe627159ce96f5a690
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp

  Log Message:
  -----------
  [clang][bytecode] Get the right definition before compiling functions (#201105)

This broke libc++'s
std/ranges/range.adaptors/range.concat/iterator/arithmetic.pass.cpp.

The (reduced via cvise but not enough) function looks like this:

```c++
  friend constexpr unsigned
  operator-(const __iterator &__x, const __iterator &__y)
    {
      (void)-(__y - __x);
      return 0;
    }
```

When evaluating the binary operator for overflow, we will compile the
operator- (_this_ function) to bytecode. At that point,
::isThisDeclarationADefiniton() will return true and ::getDefiniton()
returns the function itself. However, all this is happening while the
function is being instantiated, which means the function doesn't have a
body yet and the bytecode ends up being just a NoRet op. This will of
course later fail.

Fix this by querying the body before trying to compile a function.

Unfortunately I wasn't able to create a reproducer of reasonable size.


  Commit: 6f233ceb01347d37bd943dde84e81710ac24bfdf
      https://github.com/llvm/llvm-project/commit/6f233ceb01347d37bd943dde84e81710ac24bfdf
  Author: adeshcom14 <aadikane at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
    M llvm/docs/AMDGPUAsyncOperations.rst
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll

  Log Message:
  -----------
  [AMDGPU] Track tensor load/store DMAs with asyncmark (#200775)

Wire existing variants of the tensor load-to/store-from LDS intrinsics
into the existing asyncmark/wait.asyncmark mechanism via TENSOR_CNT
waitcnt counter.

Fixes: LCOMPILER-1619


  Commit: 131fd59a0296383bc9fec9bb0459201814bc3d0c
      https://github.com/llvm/llvm-project/commit/131fd59a0296383bc9fec9bb0459201814bc3d0c
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    A llvm/test/Bitcode/Inputs/cfi-functions-upgrade.bc
    A llvm/test/Bitcode/Inputs/cfi-summary-upgrade.bc
    A llvm/test/Bitcode/cfi-functions-upgrade.ll
    M llvm/test/Bitcode/summary_version.ll
    M llvm/test/ThinLTO/X86/cfi-icall-only-defuse.ll
    A llvm/test/ThinLTO/X86/cfi-icall-thinlto.ll
    M llvm/test/ThinLTO/X86/cfi-icall.ll
    M llvm/test/Transforms/CrossDSOCFI/cfi_functions.ll
    M llvm/test/Transforms/LowerTypeTests/export-alias.ll
    M llvm/test/Transforms/LowerTypeTests/export-cross-dso-cfi.ll
    M llvm/test/Transforms/LowerTypeTests/export-icall.ll
    M llvm/test/Transforms/LowerTypeTests/export-rename-local.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/LowerTypeTests/pr37625.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/function-alias.ll

  Log Message:
  -----------
  [CFI][ThinLTO] Remove the need for CFI calculating ThinLTO GUIDs (#201370)

CFI does name-based matching. ThinLTO uses a hash over the function name
(the "GUID"). As a result of this
[RFC](https://discourse.llvm.org/t/rfc-keep-globalvalue-guids-stable/84801)
- see also PR #184065 - GUID calculation should be treated as an
implementation detail, i.e. passes shouldn't need to re-do / reverse
engineer GUIDs.

The main reasons CFI is aware of GUIDs is because (1) the CFI functions
need to be communicated to ThinLink, as they need to be treated as
exports, in `LTO::runThinLTO`; and (2) because CFI needs to check the
liveliness of functions referenced in `cfi.functions` metadata, and this
check happens via the thinlto export summary
(`LowerTypeTestsModule::lower`).

To a lesser extent, the optimization in PR #130382 benefits from CFI
knowing about GUIDs; however, if this were the only reason, we could
make `ValueInfo`s available at that point, which carry names, and
perform name-based matching for CFI's needs.

This PR lets GUIDs be passed to CFI. The bulk of the change is moving
them around as metadata fields. The GUID calculation is hoisted out, but
kept the same as before this patch, following that once PR #184065 is
relanded it will be switched to the stable mechanism it (PR #184065)
introduces. The compile time effects are
[here](https://llvm-compile-time-tracker.com/compare.php?from=b29bf9fa25bdb906a61ec361fba68796020cc6b9&to=7bb1c07144e8ccb8a3332e91fc193303acd9439e&stat=instructions:u).


  Commit: d146ef738a7bdde3b44bbbf23487f7de69dcfecb
      https://github.com/llvm/llvm-project/commit/d146ef738a7bdde3b44bbbf23487f7de69dcfecb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
    M llvm/test/CodeGen/RISCV/rvv/vdiv-sdnode.ll

  Log Message:
  -----------
  [RISCV] Enable combineAddMulh for vectors to improve div by constant. (#201657)

I modified the constant in some RVV division tests for coverage. I can
add new tests cases if that's preferred.


  Commit: dbe91f4a4b55a17197c52335db4b7a0aa9c69f6b
      https://github.com/llvm/llvm-project/commit/dbe91f4a4b55a17197c52335db4b7a0aa9c69f6b
  Author: Jiahao Guo <eoonguo at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c

  Log Message:
  -----------
  [CIR][AArch64] Lower NEON vslid intrinsics (#199415)

### summary

part of: https://github.com/llvm/llvm-project/issues/185382

this is a follow up of :
https://github.com/llvm/llvm-project/pull/198309

This adds CIR lowering for the scalar AArch64 NEON shift-left-and-insert
intrinsics `vslid_n_s64` and `vslid_n_u64`.

These ACLE builtins expose scalar `i64` interfaces, but the
corresponding LLVM intrinsic is vector-shaped:

  ```llvm
  llvm.aarch64.neon.vsli.v1i64(<1 x i64>, <1 x i64>, i32) -> <1 x i64>
  ```
  
The new lowering wraps the scalar 64-bit operands in one-lane CIR vector
types, emits the aarch64.neon.vsli LLVM
intrinsic call, and bitcasts the result back to the scalar return type.


  Commit: 0b0a345d18626801395b6ca957af0a1be5aecc1e
      https://github.com/llvm/llvm-project/commit/0b0a345d18626801395b6ca957af0a1be5aecc1e
  Author: Brad Smith <brad at comstyle.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    A compiler-rt/lib/builtins/cpu_model/riscv.h
    A compiler-rt/lib/builtins/cpu_model/riscv/hwprobe.inc
    A compiler-rt/lib/builtins/cpu_model/riscv/unimplemented.inc

  Log Message:
  -----------
  [LLVM][compiler-rt][RISCV] Refactor RISC-V CPU features (#199438)


  Commit: f21e893db6e1ab89ebad69004ef7935c3bdc80a7
      https://github.com/llvm/llvm-project/commit/f21e893db6e1ab89ebad69004ef7935c3bdc80a7
  Author: Schrodinger ZHU Yifan <yfzhu at google.com>
  Date:   2026-06-04 (Thu, 04 Jun 2026)

  Changed paths:
    M libc/test/integration/src/threads/cnd_test.cpp

  Log Message:
  -----------
  [libc] fix lost signal issue in cnd_test (#201721)


  Commit: 5589d540cce8fe95e12062d5c118da9e7769bd83
      https://github.com/llvm/llvm-project/commit/5589d540cce8fe95e12062d5c118da9e7769bd83
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ADT/DenseMap.h

  Log Message:
  -----------
  [DenseMap] Fix ubsan error after #201281 (#201742)

```
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:492:17: runtime error: null pointer passed as argument 1, which is declared to never be null
```


  Commit: 36b3ffbae3bdfa0b4ec5adb0ad6fe6eaa6d6afec
      https://github.com/llvm/llvm-project/commit/36b3ffbae3bdfa0b4ec5adb0ad6fe6eaa6d6afec
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/lib/ExecutionEngine/Orc/EPCGenericDylibManager.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/EPCGenericDylibManagerTest.cpp

  Log Message:
  -----------
  [ORC] Enable EPCGenericDylibManager to use orc_rt::NativeDylibManager. (#201744)

Adds two EPCGenericDylibManager::Create overloads (taking JITDylib& or
ExecutionSession&) that look up implementation addresses by name,
defaulting to orc_rt::NativeDylibManager's SPS controller interface (CI)
symbols. SimpleExecutorDylibManager::addBootstrapSymbols now also vends
its instance, open, and resolve symbols under those names, so the new
Create overloads work against either backend.


  Commit: 48686f88f06f358145e4f177dd7c6b3ba1f93ae5
      https://github.com/llvm/llvm-project/commit/48686f88f06f358145e4f177dd7c6b3ba1f93ae5
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/currentLimitation.ll
    A llvm/test/Transforms/LoopInterchange/guarded-inner-loop.ll
    M llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
    M llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll

  Log Message:
  -----------
  [LoopInterchange] Do not interchange guarded imperfect loop nests (#201504)

When the outer-loop header conditionally branches to the outer latch,
that branch guards the inner loop, so the inner loop runs only on a
subset of the outer iterations. Interchanging such a nest moves the
inner loop outside the guard and runs it on every outer iteration,
including the guarded-off ones. That is incorrect when the inner loop
relies on the guard to terminate (e.g. an eq/ne exit whose trip count is
degenerate once the guard is false): the extra runs do not terminate, so
the program hangs at run time. Reject these guarded, imperfect nests in
tightlyNested().

This patch takes conservative approach to fix the crash and keep
upstream sane. In the long term, we need to see permissible cases under
which we can still interchange. I believe this is first good step.

Most importantly, three existing tests
(`currentLimitation.ll`, `loop-interchange-optimization-remarks.ll`,
`lcssa-preheader.ll`) were going through this unsafe transform; **these
tests would no longer interchange with this patch.**

I verified that they were hanging after illegal loop interchange with
`lli`: the un-interchanged function returns but the interchanged one
spins for a degenerate input (interchange_01(0, 2), test02(0, 2),
lcssa_08(1, 0)).

Fixes #201273

Assisted by Cursor.


  Commit: 6ae71f321933ff629755ca61978a276a6e816827
      https://github.com/llvm/llvm-project/commit/6ae71f321933ff629755ca61978a276a6e816827
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/sys-ptrace-macros.h
    A libc/include/sys/ptrace.yaml
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/syscall_wrappers/ptrace.h
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/ptrace/CMakeLists.txt
    A libc/src/sys/ptrace/linux/CMakeLists.txt
    A libc/src/sys/ptrace/linux/ptrace.cpp
    A libc/src/sys/ptrace/ptrace.h
    M libc/test/integration/src/sys/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/linux/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/linux/ptrace_test.cpp

  Log Message:
  -----------
  [libc] (Begin to) implement ptrace for linux (#201601)

This function is more complicated than your average syscall wrapper,
which is why this PR is mainly about setting up the infrastructure. I've
made this an experimental entry point, as the only request it handles is
PTRACE_TRACEME.

I also added a test to verify the PTRACE_TRACEME behavior. It's an
integration test as anything ptrace-y requires two processes.

Assisted by Gemini.


  Commit: e33f287237feb9563c4866326d95fd3a5b151a22
      https://github.com/llvm/llvm-project/commit/e33f287237feb9563c4866326d95fd3a5b151a22
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] packed shift-add codegen (#201294)

Add isel patterns for `psh1add`, `pssh1sadd` and the scalar `ssh1sadd`,
matching `(a << 1) + b` and `sadd.sat(sshl.sat(a, 1), b)`/`sadd.sat(sadd.sat(a, a), b)`.


  Commit: 44c1640a3b74fc32d23979a9a5c4a491fa66398f
      https://github.com/llvm/llvm-project/commit/44c1640a3b74fc32d23979a9a5c4a491fa66398f
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    R llvm/test/CodeGen/MIR/Generic/scalable-vector-type-err3.mir

  Log Message:
  -----------
  [CodeGen][MIR] Delete llvm/test/CodeGen/MIR/Generic/scalable-vector-type-err3.mir (NFC) (#201340)

It's bit-identical to
llvm/test/CodeGen/MIR/Generic/scalable-vector-type-err2.mir. Not sure
what the original intention was.


  Commit: aab1251f8420273f630df7a3fe075688f4063c48
      https://github.com/llvm/llvm-project/commit/aab1251f8420273f630df7a3fe075688f4063c48
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp

  Log Message:
  -----------
  [GlobalISel] Move G_MEMCPY_INLINE into lowerMemCpyFamily (NFC) (#201570)

Makes refactoring this code so it can be moved into TableGen simpler.

Assisted-by: codex


  Commit: 78c586615f1b31c6c5f3d37a6638c76cdb821388
      https://github.com/llvm/llvm-project/commit/78c586615f1b31c6c5f3d37a6638c76cdb821388
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    A llvm/test/Transforms/LoopFusion/cannot_fuse_atomic.ll

  Log Message:
  -----------
  [LoopFusion] Reject loops containing atomic accesses (#201525)

The fusion legality check relies on DependenceInfo, which models memory
dependences purely by address and does not capture the ordering or
synchronization (synchronizes-with / fence) semantics of atomic
operations. Fusing two loops interleaves their bodies, which can reorder
atomics in ways that violate the memory model even when they touch
different locations.

Mirror the existing volatile handling and invalidate any fusion
candidate whose body contains an atomic access, adding a
ContainsAtomicAccess statistic.

This is conservative: Instruction::isAtomic() is true for unordered and
higher, so even unordered atomics (which carry no cross-thread ordering)
are rejected. This matches the all-or-nothing volatile precedent and
keeps the check simple; it can be narrowed to allow unordered later if
needed.

Fixes #193770.


  Commit: 511d2e40ddeacf25f403b40ed73a41d1dea1b636
      https://github.com/llvm/llvm-project/commit/511d2e40ddeacf25f403b40ed73a41d1dea1b636
  Author: Tony Varghese <tonypalampalliyil at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Parse/ParsePragma.cpp

  Log Message:
  -----------
  [NFC][clang] Format pragma comment kind StringSwitch (#201754)

This is a formatting-only change to the pragma comment kind
`StringSwitch`.

A follow-up change needs to add another pragma comment kind to this
block. Applying the formatter as part of that functional change would
also reformat the existing cases, making the functional diff harder to
review.

No functional change intended.

Co-authored-by: Tony Varghese <tony.varghese at ibm.com>


  Commit: e3260943a9bf6f14b9f92cb30de40ac6cc4ae406
      https://github.com/llvm/llvm-project/commit/e3260943a9bf6f14b9f92cb30de40ac6cc4ae406
  Author: Aleksandr Platonov <platonov.aleksandr at huawei.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    A clang-tools-extra/clangd/test/modules_config_remove_flags.test

  Log Message:
  -----------
  [clangd][modules] Provide correct context to ModulesBuilder::hasRequiredModules() call (#201419)

To make command mangler to use compile command edits from the
configuration, we need to provide the correct context to it.
Without this patch compile command edits declared in .clangd file are
not used during required modules check, which can lead to compile errors
appearing and false negative `ModulesBuilder::hadRequiredModules()`
return result.

This PR addresses problem described here
https://github.com/llvm/llvm-project/pull/200001#issuecomment-4590514342


  Commit: e80f1329ce2ba3fb775e6ca0f9b69f4ab3f3866a
      https://github.com/llvm/llvm-project/commit/e80f1329ce2ba3fb775e6ca0f9b69f4ab3f3866a
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/xor-decompose.ll
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/xor-decompose.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Decompose xor constant operand when possible (#195830)

It may be desirable to fold constants directly into the addressing mode
when computing an address. While lowering GEPs and looking for a
constant to extract among the indexes, take into account constants which
are xor expressions as well. When some bits of the constant operand of
the xor are known-zero in the base operand, then, for those specific
bits (disjoint bits), xor and additions behave alike. Such bits may be
extracted from the xor, and are those that can contribute to the final
GEP offset.

Proofs: https://alive2.llvm.org/ce/z/JtmXsu.

Co-authored-by: Sumanth Gundapaneni <sumanth.gundapaneni at amd.com>


  Commit: df170b20e9e0bbec29f69a51c0ba6e68ecabb160
      https://github.com/llvm/llvm-project/commit/df170b20e9e0bbec29f69a51c0ba6e68ecabb160
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    M llvm/test/CodeGen/X86/slow-pmulld.ll
    M llvm/test/CodeGen/X86/vector-interleave.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-2.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] X86FixupInstTuning - fold VPERM2x128 -> VINSERTx128 when shuffling lower xmm half ymm sources (#201618)

VINSERTx128 is never slower than VPERM2x128 and notably quicker on some
targets (btver2, znver1, e-cores, etc.).

Shuffle lowering avoids some VINSERT patterns for AVX targets as it can
affect folding/commutation - but by the time we get to the fixup passes,
these are all done and we can safely convert to VINSERTF128/I128.

There's more variants of the VPERM2 immediate mask that could be folded,
but its incredibly difficult to hit them as its easily commutable.

I hit this while working on #199445.


  Commit: 45a9a697a6a31efae2f05a5f8db1028fc090b67f
      https://github.com/llvm/llvm-project/commit/45a9a697a6a31efae2f05a5f8db1028fc090b67f
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir] Fix crash in test type converter for 1->N result conversion (#201738)

Use `results.append` instead of `results.assign`, preserving previous
results.

Fixes https://github.com/llvm/llvm-project/issues/201521


  Commit: fd6afc5c26b1213de58ed1770aeee1dc45d17641
      https://github.com/llvm/llvm-project/commit/fd6afc5c26b1213de58ed1770aeee1dc45d17641
  Author: Hervé Poussineau <hpoussin at reactos.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Object/RelocationResolver.cpp

  Log Message:
  -----------
  [Object] Support COFF MIPS in RelocationResolver (#200477)

Similar to other 32-bit COFF logic.


  Commit: ce5b2e876494cb95f02d9f915081e2b8781e74d1
      https://github.com/llvm/llvm-project/commit/ce5b2e876494cb95f02d9f915081e2b8781e74d1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/test/tsan/many_held_mutex.cpp
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__functional/function.h
    M libcxx/include/algorithm
    M libcxx/include/any
    M libcxx/include/array
    M libcxx/include/atomic
    M libcxx/include/barrier
    M libcxx/include/bit
    M libcxx/include/bitset
    M libcxx/include/charconv
    M libcxx/include/chrono
    M libcxx/include/cmath
    M libcxx/include/codecvt
    M libcxx/include/compare
    M libcxx/include/complex
    M libcxx/include/concepts
    M libcxx/include/condition_variable
    M libcxx/include/coroutine
    M libcxx/include/cwchar
    M libcxx/include/deque
    M libcxx/include/exception
    M libcxx/include/execution
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/experimental/utility
    M libcxx/include/ext/hash_map
    M libcxx/include/ext/hash_set
    M libcxx/include/filesystem
    M libcxx/include/format
    M libcxx/include/forward_list
    M libcxx/include/fstream
    M libcxx/include/functional
    M libcxx/include/future
    M libcxx/include/initializer_list
    M libcxx/include/iomanip
    M libcxx/include/ios
    M libcxx/include/istream
    M libcxx/include/iterator
    M libcxx/include/latch
    M libcxx/include/limits
    M libcxx/include/list
    M libcxx/include/locale
    M libcxx/include/map
    M libcxx/include/memory
    M libcxx/include/memory_resource
    M libcxx/include/module.modulemap.in
    M libcxx/include/mutex
    M libcxx/include/new
    M libcxx/include/numbers
    M libcxx/include/numeric
    M libcxx/include/optional
    M libcxx/include/ostream
    M libcxx/include/queue
    M libcxx/include/random
    M libcxx/include/ranges
    M libcxx/include/ratio
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/semaphore
    M libcxx/include/set
    M libcxx/include/shared_mutex
    M libcxx/include/span
    M libcxx/include/sstream
    M libcxx/include/stack
    M libcxx/include/stdexcept
    M libcxx/include/stop_token
    M libcxx/include/streambuf
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/system_error
    M libcxx/include/thread
    M libcxx/include/tuple
    M libcxx/include/typeindex
    M libcxx/include/typeinfo
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/utility
    M libcxx/include/valarray
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/derive_from.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.const/pr40459.pass.cpp
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py

  Log Message:
  -----------
  [libc++] Drop transitive includes by default (#195509)

This patch removes the unused transitive includes by default.
`_LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23` can be defined to keep the
transitive includes around for an easier transition. The macro will be
removed in LLVM 24.

This patch implements
https://discourse.llvm.org/t/rfc-remove-unused-transitive-includes-from-the-libc-headers/90157


  Commit: 53e3e24490a044bd24706d6628b73a56f0b6e9e6
      https://github.com/llvm/llvm-project/commit/53e3e24490a044bd24706d6628b73a56f0b6e9e6
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll

  Log Message:
  -----------
  [AMDGPU] In `LowerDYNAMIC_STACKALLOC`, hoist the `readfirstlane` up one instruction (#201528)

Instead of:

```
$max_size_vgpr = wave_reduction_umax($vgpr_alloca_size)
$sgpr_newsp = readfirstlane($max_size_vgpr + $sgpr_sp)
```

Hoist the readfirstlane up to perform the addition using scalar
registers:

```
$max_size_sgpr = readfirstlane(wave_reduction_umax($vgpr_alloca_size))
$sgpr_newsp = $max_size_sgpr + $sgpr_sp
```


  Commit: 59bdd5b63b1a649d5bfc7d422c2b4173c582d114
      https://github.com/llvm/llvm-project/commit/59bdd5b63b1a649d5bfc7d422c2b4173c582d114
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py

  Log Message:
  -----------
  [lldb][test] Make TestInterruptThreadNames not depend on debug info (#201553)

This test only reads the pthread names, which don't depend on any debug
info.

This halves the runtime of this very long test from 22s to 11s.


  Commit: 7b9435b0ed1db10c81167a5f415ae14b4b3e0565
      https://github.com/llvm/llvm-project/commit/7b9435b0ed1db10c81167a5f415ae14b4b3e0565
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/commands/process/attach/main.cpp

  Log Message:
  -----------
  [lldb][test] Increase polling frequency in ProcessAttach (#201532)

The test_attach_to_process_by_id_correct_executable_offset subtest
requires us to hit a breakpoint in an attached process. For this we
implement a loop that hits the breakpoint location every 2 seconds.

This patch increases the rate at which we hit this breakpoint to 50ms.
The reason is that a 2s interval means that this test is waiting on any
fast system for nearly 2 seconds on the first breakpoint hit. With a
50ms interval this subtest passed immediately.


  Commit: baccad7b70143154bf978b00d3a8bed9a03db84a
      https://github.com/llvm/llvm-project/commit/baccad7b70143154bf978b00d3a8bed9a03db84a
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/support/gmodules.py

  Log Message:
  -----------
  [lldb][test] Assume clang supports -gmodules (#201333)

We currently spend 50ms in most dotest invocations to check if clang
supports `-gmodules`. The expensive part of this check is creating the
clang process to run `clang --help`.

`-gmodules` was added 11 years ago and is present in any compiler that
has even a remote chance in supporting the rest of our test suite. This
patch just assumes that our compiler supports -gmodules if it is clang.


  Commit: fdfd1c1344187d64b63504ea8e3662ae4936503a
      https://github.com/llvm/llvm-project/commit/fdfd1c1344187d64b63504ea8e3662ae4936503a
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py

  Log Message:
  -----------
  [lldb][test] Increase polling in TestInterruptThreadNames.py (#201554)

This test runs for a very long time on my machine (11s per variation),
and nearly all of this time is spent on the 10s sleep in this function.

There are two issues here:

1. It uses the (now outdated) logic that arm64 means we have a remote
Darwin device. This is no longer true these days as Macs also run on
arm64.

2. The polling duration of 1s is still very long, and the test will
still spend all its time just waiting for this 1s sleep. A 100ms sleep
that we poll in a loop should be slow enough.


  Commit: ec8c8183af2087e9b6e543b3331af57db0f5a9e4
      https://github.com/llvm/llvm-project/commit/ec8c8183af2087e9b6e543b3331af57db0f5a9e4
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/unittests/SymbolFile/DWARF/XcodeSDKModuleTests.cpp

  Log Message:
  -----------
  [lldb][NFC] Don't use C++20 designated initializer (#201075)

This source triggers the `-Wc++20-designator` warning as we're still
using C++ 17.


  Commit: b73568035408a139e26a8d51635afe0bfc0c9044
      https://github.com/llvm/llvm-project/commit/b73568035408a139e26a8d51635afe0bfc0c9044
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc

  Log Message:
  -----------
  [mlirbc] Add AffineMap serialization support  (#191970)

Add binary bytecode encoding for AffineMapAttr, replacing the textual fallback.
AffineMap is encoded as numDims, numSymbols, numResults, followed by the result
expressions. Where each expression, AffineExpr, is encoded in the general case
as a recursive/prefix tree with a VarInt kind tag followed by kind-specific
data. To guard a bit more against malformed bytecode it uses an iterative
parser for these.

Special case encoding for common case AffineMap's (required less space & easy
to create without much higher maintenance needs). The ordering of the enum
serialized differs from AffineExprKind as the latter has an expansion point in
the middle (new kinds can be added there) while the serialized encoding needs
to remain stable.

Updated the checked in mlirbc file as memref has a default affinemap, so
updating it pre snap.

Assisted-by: Antigravity : Gemini


  Commit: 0f18088dca8aa03124cac4d174e97174a9aa35be
      https://github.com/llvm/llvm-project/commit/0f18088dca8aa03124cac4d174e97174a9aa35be
  Author: Kiva <zengtao at iscas.ac.cn>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvvm.td
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/MC/RISCV/rvv/zvvmtls-invalid.s
    A llvm/test/MC/RISCV/rvv/zvvmtls.s
    A llvm/test/MC/RISCV/rvv/zvvmttls-invalid.s
    A llvm/test/MC/RISCV/rvv/zvvmttls.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV][MC] Add experimental `Zvvmtls` and `Zvvmttls` support (#198229)

This patch adds experimental MC-layer support for the [RISC-V Integrated
Matrix
Extension](https://github.com/riscv/integrated-matrix-extension/releases/tag/riscv-isa-release-71c48b9-2026-05-17),
specifically the tile load/store extensions: `Zvvmtls` and `Zvvmttls`

This PR:

- Adds the optional tile lambda operand syntax (`L1` through `L64`), and
related asm operand.
- Adds the `vmtl.v`, `vmts.v`, `vmttl.v` and `vmtts.v` instructions to
the MC
- Modifies `parseMaskReg` to return `NoMatch` to allow overloaded
mnemonics to continue matching alternative optional operands, such as
parsing `vmtl.v v8, (a0), a1, L4` as the tile-lambda form instead of
failing by treating `L4` as a malformed mask operand. Real mask
registers missing .t, such as v0, still produce the existing diagnostic.


  Commit: 29f6956144ec2ec9b638108cf05058a219a548ba
      https://github.com/llvm/llvm-project/commit/29f6956144ec2ec9b638108cf05058a219a548ba
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/docs/LoopFusion.rst

  Log Message:
  -----------
  [LoopFusion][docs][NFC] Document atomic accesses as a fusion blocker (#201775)

Loops containing atomic accesses are now rejected outright, mirroring
the volatile blocker. Update the eligibility sections to match.


  Commit: 6ab6b803f552d909341e3c561e84ef9bc6beefe0
      https://github.com/llvm/llvm-project/commit/6ab6b803f552d909341e3c561e84ef9bc6beefe0
  Author: jay0x <90309873+blazie2004 at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Semantics/OpenMP/private03.f90

  Log Message:
  -----------
  [Flang][OpenMP]add semantic check for linear clause with statement function variables (#199743)

### **Description**

1. This patch adds a missing semantic check for the LINEAR clause.
2. OpenMP treats LINEAR variables similarly to PRIVATE variables.
Variables used inside statement function expressions are not allowed to
be privatized, but Flang was not checking this for LINEAR.
3. The existing privatization check already handled PRIVATE,
FIRSTPRIVATE, and LASTPRIVATE. This patch extends the same check to
LINEAR.

Fixes : [199660](https://github.com/llvm/llvm-project/issues/199660)

### **Reproducer**
```
subroutine test()
  integer :: pi, r, f, x
  f(r) = pi * r + x
  !$omp parallel do linear(x)
  do r = 1, 10
    pi = f(r)
  end do
  !$omp end parallel do
end subroutine
```
when compiled with : `-fopenmp -fopenmp-version=45 -c`

**Observed Behavior**

` No diagnostic emitted
`

**Expected Behavior**

```
error: Variable 'x' in statement function expression cannot be in a LINEAR clause
    !$omp parallel do linear(x)
```

Co-authored-by: Jay Satish Kumar Patel <kumarpat at pe31.hpc.amslabs.hpecorp.net>


  Commit: d37537c53d3edda0f8c6d96c110371104b2f11ef
      https://github.com/llvm/llvm-project/commit/d37537c53d3edda0f8c6d96c110371104b2f11ef
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Allow numeric values to be specified for mxint8 constants (#200762)

This commit uses the DenseElementTypeInterface to allow signless numeric
values to be specified for mxint8 constants by supplying `i8` values.
This is more user-friendly than the previous hex representation.


  Commit: e379ef3ebeec1fb2592abb9b459c89c82acb3eb6
      https://github.com/llvm/llvm-project/commit/e379ef3ebeec1fb2592abb9b459c89c82acb3eb6
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp

  Log Message:
  -----------
  [SLSR] Avoid repeatedly calling canReuseInstruction for the same Basis (#196545)

`canReuseInstruction` only depends on `Basis`, but runs for each
`(Basis, C)` pair. This patch moves the check earlier in the pass to
remove the repeated call.

Assisted-by: Claude Code


  Commit: 9c5dcfcf8572c347b1d4acb165bdac6f43f93838
      https://github.com/llvm/llvm-project/commit/9c5dcfcf8572c347b1d4acb165bdac6f43f93838
  Author: Tony Varghese <tonypalampalliyil at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M .git-blame-ignore-revs

  Log Message:
  -----------
  [NFC][clang] Add pragma comment formatting commit to blame ignore list (#201765)

Add the previously landed formatting-only commit for the pragma comment
kind StringSwitch to `.git-blame-ignore-revs`.

This keeps git blame useful across the NFC formatting change.

Formatting commit:
511d2e40ddeacf25f403b40ed73a41d1dea1b636

Co-authored-by: Tony Varghese <tony.varghese at ibm.com>


  Commit: 7d987f8a35a71a97754ccab804cb9966ece52e08
      https://github.com/llvm/llvm-project/commit/7d987f8a35a71a97754ccab804cb9966ece52e08
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Allow no-delete default constructors (#201544)

This PR fixes the bug in TrivialFunctionAnalysis that it treats a
default constructor without an explicit body / definition as not
"trivial". Fixed the bug by allowing the function body to be missing
when isThisDeclarationADefinition is true.

---------

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


  Commit: 0d566c6fc6af5c9e9428c03891c9fc4da6920ddc
      https://github.com/llvm/llvm-project/commit/0d566c6fc6af5c9e9428c03891c9fc4da6920ddc
  Author: Igor Kirillov <igor.kirillov at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/phi-undef-loadstore.ll

  Log Message:
  -----------
  [SimplifyCFG] Look at all uses when checking phi incoming for UB (#200164)

passingValueIsAlwaysUndefined only looks at the first use of the phi
that has a UB-candidate opcode. If that use is in a different block, the
function gives up, even when another use in the same block would prove
UB. Use-list order is not guaranteed, so this happens in practice.

Move the same-block check into the find_if lambda so the scan keeps
going past cross-block uses.


  Commit: 982dc4f20cce5c6b92b1d9e3235ecf84cc84e149
      https://github.com/llvm/llvm-project/commit/982dc4f20cce5c6b92b1d9e3235ecf84cc84e149
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i8-stride-4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] combineINSERT_SUBVECTOR - peek through BITCAST and EXTRACT_SUBVECTOR when trying to find shuffle combine candidates (#201781)

Helps with some expanded CONCAT_VECTORS cases where both halves came
from wider shuffles.

More yak shaving for #199445


  Commit: 643eec316566aaf5e9bc3b29ef3a0365fdab89df
      https://github.com/llvm/llvm-project/commit/643eec316566aaf5e9bc3b29ef3a0365fdab89df
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/utils/gdb-scripts/prettyprinters.py

  Log Message:
  -----------
  [prettyprinters] Fix syntax error introduced by 17f85f467249. (#201359)


  Commit: d7d2a558253250a087fe9b9b21abfc111e91425b
      https://github.com/llvm/llvm-project/commit/d7d2a558253250a087fe9b9b21abfc111e91425b
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp

  Log Message:
  -----------
  [AArch64] Add an early return and de-indent a long indented block (NFC) (#201345)

As per LLVM coding standards recommendation in [1].

[1]:
https://llvm.org/docs/CodingStandards.html#use-early-exits-and-continue-to-simplify-code


  Commit: 25e94da798b1ddc24c8680e8fe0b6f4099e7e876
      https://github.com/llvm/llvm-project/commit/25e94da798b1ddc24c8680e8fe0b6f4099e7e876
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    A flang/test/Transforms/debug-char-type-2.fir

  Log Message:
  -----------
  [flang][debug] Fix DIStringType size for arrays of assumed-length chars. (#201649)

When generating DWARF for an assumed-shape array whose element type is
an assumed-length character, `convertBoxedSequenceType` called
`convertType` for the element, which in turn called
`convertCharacterType` with `hasDescriptor`=false. With no descriptor
and a non-constant length, none of the branches that set `sizeInBits` or
produce a length expression were taken, so the resulting
`DIStringTypeAttr` had `sizeInBits` equal to =0 and no
`stringLengthExp`, leaving GDB unable to determine the string length or
display the array elements.

Fix this by detecting a non-constant-length character element in
`convertBoxedSequenceType` and calling `convertCharacterType` directly
with `hasDescriptor=true`. This generates the correct `stringLengthExp`
that reads the element byte-size from the descriptor. A
`genStringLocation` parameter (default true) is also added to suppress
the string location expression for the element type, since the data
location of array elements is already provided by the enclosing array.

Fixes https://github.com/llvm/llvm-project/issues/113895


  Commit: 6d4cd34d861baec5a761d15b81395fbe88f4391b
      https://github.com/llvm/llvm-project/commit/6d4cd34d861baec5a761d15b81395fbe88f4391b
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/docs/Frontend/PerformanceTips.rst
    M llvm/docs/GlobalISel/GMIR.rst
    M llvm/docs/GlobalISel/IRTranslator.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll
    A llvm/test/CodeGen/Generic/GlobalISel/irtranslator-byte-type.ll
    M llvm/test/CodeGen/PowerPC/fast-isel-cmp-imm.ll

  Log Message:
  -----------
  [GlobalISel] Support the byte type in the IRTranslator (#196125)

> [!NOTE]
> Stacked: this PR is the base of a 2-PR stack.
> - **#196125 (this PR)** — GlobalISel byte-type support (lands first)
> - **#177908** — LoadStoreVectorizer mixed-type support (depends on
this; rebased on top)

Mirror SelectionDAG's behaviour by treating byte as integer at the
IR-to-MIR boundary:
- `getLLTForType` maps ByteType to `LLT::integer(N)`, matching the
byte->integer EVT mapping in ValueTypes.cpp.
- `translate(Constant)` handles ConstantByte by routing through
buildConstant with the underlying APInt.
- `translateBitCast` redirects only **scalar** byte<->ptr crossings to
G_INTTOPTR / G_PTRTOINT (the well-typed MIR shape for that boundary).
Vector byte<->ptr (e.g. `<N x b32>` -> ptr produced by mixed-type load
coalescing in #177908) and other legacy ptr/non-ptr IR bitcasts (AMDGPU
iN<->p3 kernarg packing, etc.) keep their historical G_BITCAST lowering
— G_INTTOPTR has no vector-src -> scalar-ptr form.

Co-authored-by: Claude Opus 4.7 <noreply at anthropic.com>


  Commit: 013b33583b632f4c680db82f42223e3684da8cb2
      https://github.com/llvm/llvm-project/commit/013b33583b632f4c680db82f42223e3684da8cb2
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libcxx/include/__chrono/duration.h

  Log Message:
  -----------
  [libc++][NFC] Simplify duration comparisons a bit (#201788)

The comparisons have been delegated to a class which has been
specialized for the equality case. This has likely been done to avoid
`common_type` if possible. However, `common_type` got a lot cheaper, to
the point where the classes likely do more harm than good.


  Commit: 09a709aa70e76e00a5f3b1336d42a444b4f88c8b
      https://github.com/llvm/llvm-project/commit/09a709aa70e76e00a5f3b1336d42a444b4f88c8b
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr8.mir
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-gpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-zeroing-fpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-zeroing-gpr.ll

  Log Message:
  -----------
  [AArch64] Align ZCM/ZCZ test strictness(NFC) (#200645)


  Commit: 89905ff21441d8ed04b2bfafc57a8bb7c9402800
      https://github.com/llvm/llvm-project/commit/89905ff21441d8ed04b2bfafc57a8bb7c9402800
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/test/CodeGen/AArch64/ls64-inline-asm.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/CodeGen/PowerPC/builtins-dmf-vsx-vector-float.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-8Al.c
    M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/arm-cmse-attr.c
    M clang/test/CodeGen/arm-vfp16-arguments.c
    M clang/test/CodeGen/arm-vfp16-arguments2.cpp
    M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
    M clang/test/CodeGen/attr-counted-by-for-pointers.c
    M clang/test/CodeGen/attr-counted-by-pr110385.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/cfi-check-fail2-nomerge.c
    M clang/test/CodeGen/glibc_ptr_align.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/math-libcalls-tbaa.c
    M clang/test/CodeGen/nofpclass.c
    M clang/test/CodeGen/pointer-arithmetic-align.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
    M clang/test/CodeGen/transparent-union-type.c
    M clang/test/CodeGen/union-tbaa1.c
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenCXX/bitfield-ir.cpp
    M clang/test/CodeGenCXX/inline-then-fold-variadics.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenHIP/amdgcnspirv-uses-amdgpu-abi.cpp
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-call-kernel.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-async-load-store-lds.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-cooperative-atomics.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950-read-tr.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-atomic-add.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-atomic-max.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
    M clang/test/CodeGenOpenCL/kernel-param-alignment.cl
    M clang/test/CodeGenOpenCL/kernels-have-spir-cc-by-default.cl
    M clang/test/CodeGenOpenCL/preserve_vec3.cl
    M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
    M clang/test/CodeGenSPIRV/Builtins/generic_cast_to_ptr_explicit.c
    M clang/test/DebugInfo/Generic/cfi-icall-generalize-debuginfo.c
    M clang/test/DebugInfo/Generic/ubsan-function-debuginfo.c
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/wasm.c
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Analysis/TypeBasedAliasAnalysis/functionattrs.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-libcall-sincos-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-uniform-waterfall.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    M llvm/test/CodeGen/BPF/loop-exit-cond.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-unroll-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-unroll.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-align.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-atomic.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-oob.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-u8-oob.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-u8.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-simple.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-unroll-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-volatile.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-zero.ll
    M llvm/test/Feature/OperandBundles/function-attrs.ll
    M llvm/test/LTO/X86/mix-opaque-typed.ll
    M llvm/test/Other/cgscc-devirt-iteration.ll
    M llvm/test/Other/optimize-inrange-gep.ll
    M llvm/test/Transforms/Coroutines/coro-async.ll
    M llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll
    M llvm/test/Transforms/FunctionAttrs/arg_returned.ll
    M llvm/test/Transforms/FunctionAttrs/argmemonly.ll
    M llvm/test/Transforms/FunctionAttrs/atomic.ll
    M llvm/test/Transforms/FunctionAttrs/convergent.ll
    M llvm/test/Transforms/FunctionAttrs/initializes.ll
    M llvm/test/Transforms/FunctionAttrs/make-buffer-rsrc.ll
    M llvm/test/Transforms/FunctionAttrs/noalias.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nofpclass.ll
    M llvm/test/Transforms/FunctionAttrs/nofree.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/norecurse.ll
    M llvm/test/Transforms/FunctionAttrs/noundef.ll
    M llvm/test/Transforms/FunctionAttrs/nounwind.ll
    M llvm/test/Transforms/FunctionAttrs/optnone.ll
    M llvm/test/Transforms/FunctionAttrs/out-of-bounds-iterator-bug.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/readnone.ll
    M llvm/test/Transforms/FunctionAttrs/stats.ll
    M llvm/test/Transforms/FunctionAttrs/writeonly.ll
    M llvm/test/Transforms/InstCombine/unused-nonnull.ll
    M llvm/test/Transforms/LoopUnroll/unroll-cleanup.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/Oz-and-forced-vectorize.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/extra-unroll-simplifications.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-load-from-vector-loop.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoist-runtime-checks.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/infer-align-from-assumption.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/interleave_vec.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/loop-rotate-to-enable-unrolling-and-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/memcpy-constant-size.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/predicated-reduction.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/quant_4x4.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/reduce_muladd.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/reduce_submuladd.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/scalarize-load-ext-extract.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/sinking-vs-if-conversion.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/slpordering.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/trunc-intrinsics.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/udotabd.ll
    M llvm/test/Transforms/PhaseOrdering/AMDGPU/infer-address-space.ll
    M llvm/test/Transforms/PhaseOrdering/RISCV/any-of-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/SystemZ/sub-xor.ll
    M llvm/test/Transforms/PhaseOrdering/X86/SROA-after-final-loop-unrolling-2.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hoist-load-of-baseptr.ll
    M llvm/test/Transforms/PhaseOrdering/X86/loop-vectorizer-noalias.ll
    M llvm/test/Transforms/PhaseOrdering/X86/madd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll
    M llvm/test/Transforms/PhaseOrdering/X86/preserve-access-group.ll
    M llvm/test/Transforms/PhaseOrdering/X86/sad.ll
    M llvm/test/Transforms/PhaseOrdering/X86/speculation-vs-tbaa.ll
    M llvm/test/Transforms/PhaseOrdering/X86/spurious-peeling.ll
    M llvm/test/Transforms/PhaseOrdering/X86/unroll-vectorizer.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv-nounroll.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll
    M llvm/test/Transforms/PhaseOrdering/always-inline-alloca-promotion.ll
    M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
    M llvm/test/Transforms/PhaseOrdering/branch-dom-cond.ll
    M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
    M llvm/test/Transforms/PhaseOrdering/early-arg-attrs-inference.ll
    M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
    M llvm/test/Transforms/PhaseOrdering/gvn-replacement-vs-hoist.ll
    M llvm/test/Transforms/PhaseOrdering/loop-access-checks.ll
    M llvm/test/Transforms/PhaseOrdering/lto-argpromotion-ipsccp.ll
    M llvm/test/Transforms/PhaseOrdering/memcpy-offset.ll
    M llvm/test/Transforms/PhaseOrdering/phi-protected-field-ptr.ll
    M llvm/test/Transforms/PhaseOrdering/pr95152.ll
    M llvm/test/Transforms/PhaseOrdering/pr98799-inline-simplifycfg-ub.ll
    M llvm/test/Transforms/PhaseOrdering/struct-to-vector-before-memcpyopt.ll
    M llvm/test/Transforms/PhaseOrdering/switch_with_geps.ll
    M llvm/test/Transforms/SimpleLoopUnswitch/AMDGPU/uniform-unswitch.ll

  Log Message:
  -----------
  [FunctionAttrs] Add support for nofree argument inference (#201591)

Unlike Attributor, FunctionAttrs currently only supports inferring
nofree on functions. This PR adds support for inferring it on arguments
as well.

I've chosen to integrate this with the inference for
readnone/readonly/writeonly attributes, as the core logic for these is
the same.

There is a lot of test fallout. The only significant changes are in
llvm/lib/Transforms/IPO/FunctionAttrs.cpp and
llvm/test/Transforms/FunctionAttrs/nofree.ll.


  Commit: e26ef0c943415ec3c3bd88c9c3e9bdca3791d4fd
      https://github.com/llvm/llvm-project/commit/e26ef0c943415ec3c3bd88c9c3e9bdca3791d4fd
  Author: Ming Yan <ming.yan at terapines.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/test/Fir/boxproc.fir
    M flang/test/Lower/HLFIR/elemental-result-length.f90
    M flang/test/Lower/Intrinsics/show_descriptor.f90
    M flang/test/Lower/volatile1.f90
    M mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/test/Dialect/Arith/canonicalize.mlir
    M mlir/test/Dialect/SparseTensor/sparse_fill_zero.mlir
    M mlir/test/Dialect/SparseTensor/sparse_kernels_to_iterator.mlir

  Log Message:
  -----------
  [mlir][arith] Canonicalize cmpi select to min/max (#201737)

This PR adds canonicalization patterns that fold `arith.select` +
`arith.cmpi` into
`arith.minsi`/`arith.maxsi`/`arith.minui`/`arith.maxui` operations.

---------

Co-authored-by: Claude Opus 4.8 <noreply at anthropic.com>


  Commit: 8e217eda17df80d2035d6ff27e74bfa8df77339a
      https://github.com/llvm/llvm-project/commit/8e217eda17df80d2035d6ff27e74bfa8df77339a
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py

  Log Message:
  -----------
  [lldb][Windows] skip TestDAP_attachCommands.py and TestDAP_launch_extra_launch_commands.py (#201796)


  Commit: aa57c6af07b9086fd7a9b9b72df22f99dd30ee64
      https://github.com/llvm/llvm-project/commit/aa57c6af07b9086fd7a9b9b72df22f99dd30ee64
  Author: gretay-amd <Greta.Yorsh at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-demanded-vector-elts.ll

  Log Message:
  -----------
  [AMDGPU] Preserve call-site attributes rebuilding an intrinsic (#201549)

This PR copies the original call-site attributes onto the new call. 

`AMDGPUInstCombineIntrinsic` uses `IC.Builder.CreateIntrinsic` to
rebuild intrinsic calls. `CreateIntrinsic` only inherits attributes from
the intrinsic declaration, and any call-site only attributes are
silently dropped.

The change is needed in both `modifyIntrinsicCall` simplifications and
`simplifyAMDGCNMemoryIntrinsicDemanded`. The new test exercises both
transformations firing in sequence on the same `image.sample` call. Two
commits: the first adds the test that drops the attribute and then the
second commit fixes the bug and the test.

This fix was originally introduced in the context of
waterfall intrinsics #192409, but the issue and the fix are independent.


  Commit: 3086dc0582b23df394d069c3d14b5edbe0afeb77
      https://github.com/llvm/llvm-project/commit/3086dc0582b23df394d069c3d14b5edbe0afeb77
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel

  Log Message:
  -----------
  [bazel] Exclude `profile_rocm` related file for now. (#201800)

This has been intrdocued in #201606.


  Commit: 3cb8eefcc3cc7c613eb729914532b7a05546953b
      https://github.com/llvm/llvm-project/commit/3cb8eefcc3cc7c613eb729914532b7a05546953b
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [bazel] Add `LLVM_BUILD_STATIC` to `llvm-lto2` (#201799)

This is added by add_llvm_tool in CMake side and affects `DTLTO` inline
ctor. (Introduced in #192629)


  Commit: 094bbde3e86c5b7890e162afe6d32957153565b6
      https://github.com/llvm/llvm-project/commit/094bbde3e86c5b7890e162afe6d32957153565b6
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP] NFC: Move trait-matching helpers to Semantics (#201584)

Move the five trait-matching functions (`mapTraitSet`,
`mapTraitSelector`, `evaluateUserCondition`, `getTraitScore`,
`processTraitProperties`) that back metadirective lowering out of
Lower/OpenMP/Utils.cpp and into Semantics/openmp-utils.

These functions only operate on parsed OpenMP trait selectors and the
Fortran evaluate/folding machinery and carry no MLIR or lowering
dependency. Placing them in Semantics makes them reusable from the
semantic-recording phase of `declare variant` (and any other feature
that needs to build a `VariantMatchInfo`).

In Utils.cpp, the four pure mapping/folding functions are removed
entirely; their callers now call the Semantics versions directly. The
`processTraitProperties` is kept as a local wrapper to generate a TODO
error on Clause and extension properties.

---------

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 04cedfd597561be75d46797978f8a744a2715105
      https://github.com/llvm/llvm-project/commit/04cedfd597561be75d46797978f8a744a2715105
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/iohandler/sigint/cat.cpp
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_breakpointLocations.py
    M lldb/test/API/tools/lldb-dap/breakpoint/main.cpp

  Log Message:
  -----------
  [lldb] Add missing includes to some tests (#201804)

#195509 removed a bunch of transitive includes from libc++, causing the
test to fail.


  Commit: b9e7f1f0ccbc8e829d4d68d1bf6d57665e1da62f
      https://github.com/llvm/llvm-project/commit/b9e7f1f0ccbc8e829d4d68d1bf6d57665e1da62f
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/AArch64/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/ftrunc.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-frintz.ll
    M llvm/test/CodeGen/AArch64/sve-frintz.ll
    M llvm/test/CodeGen/AMDGPU/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/PowerPC/fp-int128-fp-combine.ll
    M llvm/test/CodeGen/PowerPC/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/PowerPC/ftrunc-vec.ll
    M llvm/test/CodeGen/PowerPC/no-extra-fp-conv-ldst.ll
    M llvm/test/CodeGen/X86/ftrunc.ll

  Log Message:
  -----------
  [SelectionDAG] Remove the remaining `NoSignedZerosFPMath` use (#201535)

This should be the last use in CodeGen part.


  Commit: fd68fe73c8bebd034dab52d82f0ed4414d348c32
      https://github.com/llvm/llvm-project/commit/fd68fe73c8bebd034dab52d82f0ed4414d348c32
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/test/Transforms/DFAJumpThreading/dfa-jump-threading-transform.ll

  Log Message:
  -----------
  [DFAJumpThreading] Clone noalias scopes when duplicating a block (#200620)

cloneBlockAndUpdatePredecessor cloned the block but not its noalias scope
declarations, so duplicated paths shared the same scope MDNodes and AA could
treat aliasing accesses on different paths as noalias.

Give each clone fresh scopes, like JumpThreading/LoopUnroll/LoopPeel.


  Commit: e18112c7073d0a97a158323258dcfe00c2505b42
      https://github.com/llvm/llvm-project/commit/e18112c7073d0a97a158323258dcfe00c2505b42
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes d37537c (#201787)

This fixes d37537c53d3edda0f8c6d96c110371104b2f11ef.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: ea66732d303ae00e446691e105d039f527382091
      https://github.com/llvm/llvm-project/commit/ea66732d303ae00e446691e105d039f527382091
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Transforms/InstCombine/loadstore-metadata.ll

  Log Message:
  -----------
  [Loads] Handle missing context instruction for willNotFreeBetween() (#201828)

This crashed previously.


  Commit: 978468398d2e991772e86efe249c64c4fd2ab762
      https://github.com/llvm/llvm-project/commit/978468398d2e991772e86efe249c64c4fd2ab762
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask.ll

  Log Message:
  -----------
  [LV] Allow reductions with partial alias masking (#200813)

This patch enables reductions with partial alias masking by forcing the
use of a predicated reduction select with alias masking. This prevents
poison values from being propagated to the header phi for lanes outside
the alias mask.

Note: An alternate approach would be to select the identity value before
the final horizontal reduction (outside the vector loop). That however,
does not generalize to all reduction kinds (e.g., AnyOf), and at least
for AArch64 SVE, we already prefer the in-loop selects.


  Commit: 2a80e6670190bf6a0ba0e9ba97a79c1e81eede35
      https://github.com/llvm/llvm-project/commit/2a80e6670190bf6a0ba0e9ba97a79c1e81eede35
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp

  Log Message:
  -----------
  [JumpThreading] NFC: Add comment referencing #199408. (#199718)

Leave a breadcrumb indicating that not `freeze`'ing a select's condition
when turning it into a conditional branch is unsound (unless we can
prove that the cond is never poison).  Nonetheless this doesn't seem to
cause real-world problems afaict.


  Commit: ddfa5eb8ae2e0cdd1c0542fff9c6671b8b3ff85c
      https://github.com/llvm/llvm-project/commit/ddfa5eb8ae2e0cdd1c0542fff9c6671b8b3ff85c
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaAttr.cpp
    M clang/test/SemaCXX/attr-section.cpp

  Log Message:
  -----------
  [Sema] Fix assertion crash on section conflict with a non-identifier decl (#200873)

NamedDecl::getName() asserts the name is a simple identifier, so
UnifySection crashed when the conflicting section decl had a special
name such as a lambda's call operator.

Drop the argument: `note_declared_at` has no format placeholder, so it
was dead code. The error already prints the section decl.

Fixes https://github.com/llvm/llvm-project/issues/192264


  Commit: fd259a565c444ebcdbafcc43da48479f935a755d
      https://github.com/llvm/llvm-project/commit/fd259a565c444ebcdbafcc43da48479f935a755d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/test/Transforms/InstCombine/invariant.group.ll

  Log Message:
  -----------
  [IR] Preserve !invariant.group in copyMetadataForLoad (#200535)

copyMetadataForLoad is supposed to be used when only changing a load's
type.  If we're only changing the type (and not the SSA value of the
loaded pointer) then we can preserve invariant.group.

All callers of this function indeed either (a) leave the pointer SSA
value unchanged, or (b) change *all* pointers in the group from one
value to another (which is also safe).

This bug was found by a large run of Opus 4.7 looking for bugs in LLVM.


  Commit: 07bd30557f2b00225d4eb7c125e74188b54f1faa
      https://github.com/llvm/llvm-project/commit/07bd30557f2b00225d4eb7c125e74188b54f1faa
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix conditional operator scoping (#201777)

The code and the comment are correct, but they also applied to the
conditional operator condition, which they shouldn't.


  Commit: 12cfc4dc56fcf7568602d0973d8b1090959d0900
      https://github.com/llvm/llvm-project/commit/12cfc4dc56fcf7568602d0973d8b1090959d0900
  Author: Timur Golubovich <timurgol007 at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/X86/X86CallingConv.td
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.td
    M llvm/lib/Target/X86/X86Subtarget.cpp
    M llvm/test/CodeGen/X86/apx/memfold-no-physreg.ll
    M llvm/test/CodeGen/X86/apx/mul-i1024.ll
    A llvm/test/CodeGen/X86/apx/setjmp-win64-abi.ll
    A llvm/test/CodeGen/X86/apx/win64-abi.ll

  Log Message:
  -----------
  [X86][APX] Implement Windows APX ABI callee-saved registers per Microsoft spec (#200391)

Per the Microsoft x64 calling convention, R30 and R31 are non-volatile
when APX is available. Define CSR_Win64_APX and CSR_Win64_APX_NoSSE
extending the standard Win64 CSR sets. Update getCalleeSavedRegs and
getCallPreservedMask accordingly.

Reserve R30/R31 in functions that call setjmp, as the unwinder cannot
restore APX extended registers. Emit a warning for large functions where
this may impact performance.

Ref:
https://learn.microsoft.com/en-us/cpp/build/x64-calling-convention?view=msvc-170#callercallee-saved-registers

---------

Co-authored-by: Daniel Paoliello <danpao at microsoft.com>


  Commit: 9e2db573528ea46d659c74f0a059fb73eeb2fb42
      https://github.com/llvm/llvm-project/commit/9e2db573528ea46d659c74f0a059fb73eeb2fb42
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - concat 4x128-bit shuffles as 2x256-bit shuffles (#201831)

Fixes #199445


  Commit: 85da6a915345ce0a8614f8ff4531ba4efb592564
      https://github.com/llvm/llvm-project/commit/85da6a915345ce0a8614f8ff4531ba4efb592564
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    A clang/test/OpenMP/amdgpu-arch-compat.c
    M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def

  Log Message:
  -----------
  OpenMP: Accept amdgpu name in arch directive (#201789)

Accept amdgpu as an alias for amdgcn as part of the general
trend of preferring the amdgpu name. This is so the name is
consistent in the future when the triple arch name changes.


  Commit: 72668850f6f204451350a1e42fe8a5d9954542a9
      https://github.com/llvm/llvm-project/commit/72668850f6f204451350a1e42fe8a5d9954542a9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    A libc/hdr/sys_ptrace_macros.h
    M libc/include/llvm-libc-macros/sys-ptrace-macros.h
    M libc/include/sys/ptrace.yaml
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/syscall_wrappers/ptrace.h
    M libc/src/sys/ptrace/linux/CMakeLists.txt
    M libc/src/sys/ptrace/linux/ptrace.cpp
    M libc/test/integration/src/sys/ptrace/linux/ptrace_test.cpp

  Log Message:
  -----------
  [libc] Support for argument-taking ptrace requests (#201830)

Some of these requests are architecture specific, and linux/ptrace.h is
pretty clean, so I'm including it for all the constants definitions
(this matches bionic, but not musl or glibc).

There's one unfortunate rename that we need to fix up (kernel uses
PTRACE_PEEKUSR, without the *E*), and (matching all libc
implementations) I also add the BSD-compatibility names for the basic
requests (although the usefulness if this is questionable as nearly
everything about ptrace is OS-specific).

Some of the options structs also have a different name in the kernel
headers (ptrace_peeksiginfo_args) and glibc (__ptrace_peeksiginfo_args),
but:
- these are very scarcely used, and
- the manpage actually documents the kernel names

which is why I'm hoping we can get away with this.

The ptrace entry point implements the standard PTRACE_PEEK translation
from by-ptr arguments to return values.

---------

Co-authored-by: Jeff Bailey <jbailey at raspberryginger.com>


  Commit: b2a6da6197daabfc5bda2f4b2a5880aae10fc1a9
      https://github.com/llvm/llvm-project/commit/b2a6da6197daabfc5bda2f4b2a5880aae10fc1a9
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCFlagRules.cmake
    M libc/config/config.json
    M libc/include/llvm-libc-types/CMakeLists.txt
    M libc/include/llvm-libc-types/struct_timespec.h
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/include/llvm-libc-types/time_t.h
    R libc/include/llvm-libc-types/time_t_32.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/utimensat.h
    M libc/src/__support/threads/linux/futex_utils.h
    M libc/src/__support/threads/linux/futex_word.h
    M libc/src/__support/time/linux/clock_gettime.cpp
    M libc/src/__support/time/linux/clock_settime.cpp
    M libc/src/poll/linux/poll.cpp
    M libc/src/sched/linux/sched_rr_get_interval.cpp
    M libc/src/sys/select/linux/select.cpp
    M libc/src/sys/time/linux/getitimer.cpp
    M libc/src/sys/time/linux/setitimer.cpp
    M libc/src/sys/time/linux/utimes.cpp
    M libc/src/time/linux/nanosleep.cpp
    M libc/src/time/time_constants.h
    M libc/src/time/time_utils.cpp
    M libc/test/src/__support/time/linux/timeout_test.cpp
    M libc/test/src/sys/time/utimes_test.cpp
    M libc/test/src/time/asctime_test.cpp
    M libc/test/src/time/gmtime_r_test.cpp
    M libc/test/src/time/gmtime_test.cpp
    M libc/test/src/time/mktime_test.cpp

  Log Message:
  -----------
  [libc] Remove 32-bit time_t support (#200426)

Removed time_t_32.h and forced time_t to 64-bit (__INT64_TYPE__) on all
platforms.

Forced tv_nsec in struct timespec and tv_usec in struct timeval to
64-bit. This ensures struct timespec matches the kernel layout of struct
__kernel_timespec, allowing direct casting in syscall wrappers. Note
that under C23, tv_nsec is allowed to be any signed integer type capable
of representing [0, 999999999], making this 64-bit definition fully
compliant.

Updated syscall wrappers to prefer 64-bit time syscalls:
* clock_gettime64
* clock_settime64
* clock_nanosleep_time64
* pselect6_time64
* utimensat_time64
* futex_time64

Added static_asserts to legacy fallback paths to prevent compiling on
32-bit platforms that lack 64-bit time support.

Removed obsolete Y2038 overflow tests from mktime and other time tests.

Assisted-by: Automated tooling, human reviewed.


  Commit: 1c0b58eeab671d0173b3431bebd96f2d974b3628
      https://github.com/llvm/llvm-project/commit/1c0b58eeab671d0173b3431bebd96f2d974b3628
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/fneg-combines.legal.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.si.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fold-legalize-dag-increase-insts.ll
    M llvm/test/CodeGen/PowerPC/scalar-min-max-p10.ll

  Log Message:
  -----------
  [CodeGen] Remove `--enable-no-signed-zeros-fp-math` flag support (#201819)

Now CodeGen part no longer depends on this flag, remove it, so we can
remove `Target::resetTargetOptions` later.


  Commit: 4fdb108b8e203e7fc7ff3ea73b7fc5d009a36954
      https://github.com/llvm/llvm-project/commit/4fdb108b8e203e7fc7ff3ea73b7fc5d009a36954
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/udivrem24.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll

  Log Message:
  -----------
  [AMDGPU] Be more careful about using expandDivRem24 (#201186)

expandDivRem24 uses v_rcp_f32 which can have an error of one ulp. This
can cause an incorrect calculation of Y/X when abs(Y) > 0x800000. Thus,
do not use expandDivRem24 for unsigned 24-bit values.

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 48aec0a9c45209139339c252f67898219e596a94
      https://github.com/llvm/llvm-project/commit/48aec0a9c45209139339c252f67898219e596a94
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn

  Log Message:
  -----------
  [gn] make bolt ProfileTests depend on TargetsToBuild (#201842)

Added to CMake in f75973949b0e5, actually needed after
3e447333fe32785.


  Commit: ff643b208cf697291510043ae47c404834bf464a
      https://github.com/llvm/llvm-project/commit/ff643b208cf697291510043ae47c404834bf464a
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn

  Log Message:
  -----------
  [gn] make bolt ProfileTests depend on TestingSupport (#201843)

Part of porting 3e447333fe.


  Commit: b082ea1f961b22e02a870c0cb6f3f8bcd031b2a8
      https://github.com/llvm/llvm-project/commit/b082ea1f961b22e02a870c0cb6f3f8bcd031b2a8
  Author: Vadim Curcă <80581374+VadimCurca at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][LLVMIR] Fix llvm.extractvalue folder (#201838)

Fix the llvm.extractvalue folder when trying to extract a value from a
multidimensional constant. Add lit tests that would crash without the
fix.


  Commit: 441a7255e97c8198988b66ad7e15ab69051ed358
      https://github.com/llvm/llvm-project/commit/441a7255e97c8198988b66ad7e15ab69051ed358
  Author: Aditya Trivedi <120598696+adit4443ya at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    M flang/test/Semantics/OpenMP/simd-aligned.f90

  Log Message:
  -----------
  [Flang][OpenMP] Fix false positive common block error in LINEAR clause (#189170)

Fixes #184923


  Commit: 678c1a2a02927677e1013c5cb60cc3dc09e461e8
      https://github.com/llvm/llvm-project/commit/678c1a2a02927677e1013c5cb60cc3dc09e461e8
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp

  Log Message:
  -----------
  [LoopFusion][NFC] Fix NumSunkInsts statistic description (NFC) (#201841)

The NumSunkInsts counter was described as "Number of hoisted preheader
instructions.", a copy of NumHoistedInsts. It counts sunk instructions.


  Commit: 3734a928541890a8f2b5d91587ff0bd6ebc90b46
      https://github.com/llvm/llvm-project/commit/3734a928541890a8f2b5d91587ff0bd6ebc90b46
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Host/common/NativeProcessProtocol.h
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h

  Log Message:
  -----------
  [lldb][Windows] Forward debuggee STDOUT through lldb-server via ConPTY (#201124)

`lldb-server.exe` currently does not forward the debuggee's STDIO to the
client.

This patch wires STDOUT using a ConPTY, mirroring the existing
`ProcessWindows` path. The two implementations share the same
infrastructure (PseudoConsole, ConnectionConPTY, ThreadedCommunication):

- The ConPTY is setup in
`GDBRemoteCommunicationServerLLGS::LaunchProcess`.
- `NativeProcessWindows` owns the ConPTY STDOUT read thread. The
read-thread callback forwards each chunk into a new
`NativeProcessProtocol::NewProcessOutput` delegate hook.
- `GDBRemoteCommunicationServerLLGS::NewProcessOutput` copies the data
and posts `SendONotification` to the main loop.
- The ConPTY is closed in `OnExitProcess`.

This patch uses a default terminal size to create the ConPTY, which
causes issues. This will be fixed in
https://github.com/llvm/llvm-project/pull/201141.

The STDIN path will be done in a follow up PR.

rdar://178725650


  Commit: 9fb174c2955ae7e0d3e1b73e2fc9d4b39105f1e8
      https://github.com/llvm/llvm-project/commit/9fb174c2955ae7e0d3e1b73e2fc9d4b39105f1e8
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/ctls.ll

  Log Message:
  -----------
  [AMDGPU] Fix umin(sffbh(x), bitwidth) fold when x may be all-ones (#201795)

We can drop the umin clamp only if x is neither 0 nor -1. There is a
problem with -1 check:
- old: The old guard `!isAllOnes()` is too weak because if the bit is
not definitely unknown (could be either 0 or 1) this check will not work
properly
- new: `Known.Zero.getBoolValue()` guarantees that there is at least one
`0` bit which means that the value is definitely not -1 which is needed
for this specific case


  Commit: acbd01a55d0ff71ec37654878a94111624c298dc
      https://github.com/llvm/llvm-project/commit/acbd01a55d0ff71ec37654878a94111624c298dc
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp

  Log Message:
  -----------
  [lldb][Windows] Clear stale thread stop info on resume (#201595)


  Commit: 36ba42d09737872243f1968067fa835fbaecbe73
      https://github.com/llvm/llvm-project/commit/36ba42d09737872243f1968067fa835fbaecbe73
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c
    M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
    A clang/test/CodeGen/builtin-masked-addrspace.c
    M clang/test/CodeGen/builtin-masked.c
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/test/Analysis/CostModel/AArch64/masked_expand_load.ll
    M llvm/test/Analysis/CostModel/PowerPC/ld-st-with-length.ll
    M llvm/test/Analysis/CostModel/RISCV/gep.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-expandload-compressstore.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
    M llvm/test/Assembler/masked-load-store-intrinsics-attributes.ll
    M llvm/test/Bitcode/upgrade-masked-keep-metadata.ll
    M llvm/test/Instrumentation/AddressSanitizer/asan-masked-load-store.ll
    M llvm/test/Instrumentation/MemorySanitizer/X86/avx512-intrinsics-upgrade.ll
    M llvm/test/Instrumentation/MemorySanitizer/masked-store-load.ll
    M llvm/test/Other/force-opaque-ptrs.ll
    M llvm/test/Transforms/InstCombine/load-store-masked-constant-array.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/SPIRV/expand-masked-compressstore.ll
    A llvm/test/Transforms/ScalarizeMaskedMemIntrin/SPIRV/expand-masked-expandload.ll
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  [IR][CodeGen][mlir] Overload pointer argument for compressstore/expandload intrinsics (#200492)

Update the `llvm.masked.expandload` and `llvm.masked.compressstore`
intrinsics to have overloaded pointer arguments so other address spaces
can be used. This puts these intrinsics in line with other similar
intrinsics, which already have overloaded pointer arguments.

The change may look large, but almost all of the changes are adding
`.p0` to tests.

This is needed for targets that have non-zero default address space, the
problem was found when trying to compile the libc LIT tests for SPIRV,
specifically
[this](https://github.com/llvm/llvm-project/blob/4ac26f45fa8f5c58a90effb903808cb0e908cf1c/libc/test/src/__support/CPP/simd_test.cpp)
one.

Co-Authored-By: Claude Sonnet 4.5 <noreply at anthropic.com>

---------

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 3dad31f753a9950ac1841dea1a9b03f32e8b6997
      https://github.com/llvm/llvm-project/commit/3dad31f753a9950ac1841dea1a9b03f32e8b6997
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp

  Log Message:
  -----------
  [clang] Fix VFS creation crash with missing `DiagnosticConsumer` (#201397)

For convenience, the `CompilerInstance::createVirtualFileSystem()` API
allows omitting the diagnostic consumer for clients that don't care
about missing overlay files and other VFS creation errors. However, even
in that case, the temporary `DiagnosticsEngine` created internally
within the function does need a consumer. This PR sets it up.

rdar://176754115


  Commit: 383e5d2a6907410dc3486604bdaae0c18cbf111c
      https://github.com/llvm/llvm-project/commit/383e5d2a6907410dc3486604bdaae0c18cbf111c
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/test/Driver/objc-constant-literals.m

  Log Message:
  -----------
  [Driver] Don't warn on ObjC constant-literal flags for non-ObjC inputs (#200303)

-fobjc-constant-literals and the per-kind
-f[no-]constant-ns{number,array, dictionary}-literals flags are only
acted on for Objective-C inputs. When a build system passes them
uniformly to every source via a shared response file, they go unclaimed
on assembly and C/C++ inputs and trigger:

  error: argument unused during compilation: '-fobjc-constant-literals'
         [-Werror,-Wunused-command-line-argument]

Mark the options NoArgumentUnused so the unused argument is ignored
regardless of input type or whether the cc1 or cc1as path runs. The
behavior of the flags is unchanged: only the positive forms are
forwarded to cc1, and only for ObjC inputs.

rdar://175647747


  Commit: de1ff3e2db8a207f366f33b8918079a5ed273d77
      https://github.com/llvm/llvm-project/commit/de1ff3e2db8a207f366f33b8918079a5ed273d77
  Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vimage.txt

  Log Message:
  -----------
  [AMDGPU] Allow null operands in VImage tensor instructions (#200911)

NULL is equivalent to passing a block of SGPRs that are set to zero, and
is allowed for 3+ opnds.


  Commit: c8faaf9a9ef24873fe97d46554ad5fb909d0fd5d
      https://github.com/llvm/llvm-project/commit/c8faaf9a9ef24873fe97d46554ad5fb909d0fd5d
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    A llvm/test/tools/llubi/call_unknown.ll
    M llvm/tools/llubi/lib/Interpreter.cpp

  Log Message:
  -----------
  [llubi] Don't check type after the program exited (#201862)

Closes https://github.com/llvm/llvm-project/issues/201791.


  Commit: 86d0c2b10427110892de794f73c0b0db476a9211
      https://github.com/llvm/llvm-project/commit/86d0c2b10427110892de794f73c0b0db476a9211
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-server/TestGdbRemote_qThreadStopInfo.py

  Log Message:
  -----------
  [lldb][Windows] enable TestGdbRemote_qThreadStopInfo (#201868)


  Commit: fdd3e7cae11fff30a33af79a8814db9c72d5179b
      https://github.com/llvm/llvm-project/commit/fdd3e7cae11fff30a33af79a8814db9c72d5179b
  Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [llvm][cmake] Pass /Brepro to linker (#201708)

* The /Brepro flag should also be passed to the linker. The `BUILD.gn`
correctly does
[this](https://github.com/llvm/llvm-project/blob/70f7167ce2622a610a6d6dca4d5934ea8a07a056/llvm/utils/gn/build/BUILD.gn#L332).
* The /Brepro flag in `clang-cl` omits the timestamp for .obj files
while the linker flag omits the timestamp for .exe and .dll files.


  Commit: ae3ef5367dd37e7b6b80339fcaa267dead9ad223
      https://github.com/llvm/llvm-project/commit/ae3ef5367dd37e7b6b80339fcaa267dead9ad223
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-arith-saturating.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add patterns for signed scalar extend intrinsics (#201617)

Follow on from https://github.com/llvm/llvm-project/pull/201546
Add patterns for signed versions of scalar extend intrinsics as well.


  Commit: c941964c58cf8ba2b65c1358f42576ab1eff67b0
      https://github.com/llvm/llvm-project/commit/c941964c58cf8ba2b65c1358f42576ab1eff67b0
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-int-string-dedup.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-multi-scalar-params.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-omit.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-pointer-debug-none-base.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-pointer-param.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-scalar-returns.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-subroutine-type-flags.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-function-void-prototypes.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-type-pointer-composite-pointee.ll

  Log Message:
  -----------
  [SPIRV] Extend NSDI debug handling for DebugTypeFunction. (#197003)

Extend NSDI handling for
[DebugTypeFunction](https://github.khronos.org/SPIRV-Registry/nonsemantic/NonSemantic.Shader.DebugInfo.html#DebugTypeFunction).

Changes:

- Collect required types with DebugInfoFinder instead of walking
DbgVariableRecords only. This allows processing types that might not be
available in these records, and avoids code duplication for the
traversals.
- Emit DebugTypeFunction for DISubroutineType when every signature slot
maps to an emitted debug type.
- Reset per-module state in beginModule().
- Replace parallel FileStringRegs/BasicTypeNameRegs with a StringMap
OpString cache, deduplicating identical strings.
- Add LLVM DINode flag lowering for NSDI.
- Cache DebugInfoNone, OpTypeVoid and OpTypeInt32 registers to avoid
duplicate instructions.


  Commit: c4f2f2535438cbdf23d9f84689ea0f518ffa4a95
      https://github.com/llvm/llvm-project/commit/c4f2f2535438cbdf23d9f84689ea0f518ffa4a95
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/CMakeLists.txt
    A lldb/source/Plugins/Process/Windows/Common/IOHandlerProcessSTDIOWindows.cpp
    A lldb/source/Plugins/Process/Windows/Common/IOHandlerProcessSTDIOWindows.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h

  Log Message:
  -----------
  [NFC][lldb][Windows] extract IOHandlerProcessSTDIOWindows (#201651)

Co-authored-by: Nerixyz <nero.9 at hotmail.de>


  Commit: 89f4b84d8b2cd0a5c54dc9a819090f131bf87d0d
      https://github.com/llvm/llvm-project/commit/89f4b84d8b2cd0a5c54dc9a819090f131bf87d0d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/test/Transforms/InstCombine/ptr-replace-alloca.ll

  Log Message:
  -----------
  [InstCombine] Use copyMetadata in PointerReplacer::replace (#201827)

PointerReplacer::replace creates a new load that differs from the
original only in its pointer operand; the loaded type is unchanged.  It
was using copyMetadataForLoad(), which is meant for the case where the
load's *type* changes.  Since the type is the same here, plain
copyMetadata() is correct and preserves all metadata directly.


  Commit: 3691cf9d025a1d37f69da8abf8577926e8fe9b84
      https://github.com/llvm/llvm-project/commit/3691cf9d025a1d37f69da8abf8577926e8fe9b84
  Author: Timur Golubovich <timur.golubovich at intel.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/pr164181.ll
    M llvm/test/CodeGen/AArch64/sitofp-to-tbl.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    M llvm/test/CodeGen/X86/mbp-false-cfg-break.ll
    M llvm/test/Transforms/LoopStrengthReduce/X86/pr62660-normalization-failure.ll

  Log Message:
  -----------
  [Test] Fix loop exit conditions to prevent trivial optimizations (#201867)

Several tests had 'br i1 %ec, label %loop, label %exit' which exits on
the first iteration instead of looping so I swapped them. Also changed
predicates to keep the loops, otherwise they are going to be eliminated
by https://github.com/llvm/llvm-project/pull/201839.


  Commit: b16873b218bd3f387adb33d796e0775a57a2490e
      https://github.com/llvm/llvm-project/commit/b16873b218bd3f387adb33d796e0775a57a2490e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Headers/__clang_hip_libdevice_declares.h
    M clang/test/Headers/__clang_hip_libdevice_declares.cpp
    M clang/test/Headers/openmp-device-functions-bool.c

  Log Message:
  -----------
  clang/HIP: Remove __ockl_fdot2 declaration (#201878)

The builtin headers should not be in the business of exporting
ockl functions, and only declaring the minimum which are actively
used by the builtin headers.


  Commit: 581ee88f638e53b91245e0b8f938263cf974a938
      https://github.com/llvm/llvm-project/commit/581ee88f638e53b91245e0b8f938263cf974a938
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/test/Assembler/invalid-interleave.ll
    M llvm/test/Assembler/invalid-vecreduce.ll
    M llvm/test/Verifier/intrinsic-bad-arg-type.ll
    M llvm/test/Verifier/intrinsic-bad-arg-type1.ll
    M llvm/test/Verifier/reduction-intrinsics.ll
    M llvm/test/Verifier/scatter_gather.ll

  Log Message:
  -----------
  [LLVM] Precise error message for intrinsic signature verification (3/n) (#200493)

Print precise error message for dependent types when an intrinsic's type
signature verification fails.


  Commit: 92a57848c2ac96021bc8abc1d422c60fe7a01565
      https://github.com/llvm/llvm-project/commit/92a57848c2ac96021bc8abc1d422c60fe7a01565
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/Atomic.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/test/Integration/OpenMP/atomic-compare.f90
    M flang/test/Lower/OpenMP/atomic-compare.f90
    M flang/test/Parser/OpenMP/atomic-unparse.f90
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [flang][OpenMP] Adding support for weak extended-atomic clause (#201823)

Adding support for "!$omp atomic compare weak".

!$omp atomic compare weak
if (var1 == num1) var1 = num2
!$omp end atomic

This also Fixes
[#201812](https://github.com/llvm/llvm-project/issues/201812)

---------

Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>


  Commit: 559ea918dfe81b1bbe222af15a0085eb73a7c3d1
      https://github.com/llvm/llvm-project/commit/559ea918dfe81b1bbe222af15a0085eb73a7c3d1
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/test/Driver/objc-constant-literals.m

  Log Message:
  -----------
  [Driver][test] Use -### for non-ObjC constant-literal RUN lines (#201877)

The RUN lines added in 3b100666a70f did a real compile for
arm64-apple-macosx11, which fails on builders that don't register the
AArch64 backend (e.g. llvm-clang-x86_64-sie-ubuntu-fast). The
NoArgumentUnused behavior under test is driver-side, so switch to -###
and avoid the backend dependency.


  Commit: 96f3f0a7f7ebbc3e6078fe3d691822c6d9e7df0a
      https://github.com/llvm/llvm-project/commit/96f3f0a7f7ebbc3e6078fe3d691822c6d9e7df0a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  clang: Remove use of auto which may have been a triple copy (#201880)


  Commit: 7839f1fad5402dcf081432c2cd4c2b19ee987f62
      https://github.com/llvm/llvm-project/commit/7839f1fad5402dcf081432c2cd4c2b19ee987f62
  Author: Hex Wu <hex4 at foxmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lld/wasm/InputFiles.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Add missing space in unmodeled diagnostic (#201764)

This is just a nit change, I hit this fatal while trying to use a GC
object, and noticed that the diagnostic showed `foo.ofile has unmodeled
reference or GC types`


  Commit: e668f641467892c75ea724ec21c30439a463a772
      https://github.com/llvm/llvm-project/commit/e668f641467892c75ea724ec21c30439a463a772
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/test/AST/ast-dump-templates-pattern.cpp
    M clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-2a.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.decl/p4.cpp
    M clang/test/CXX/temp/temp.decls/temp.spec.partial/temp.spec.partial.member/p2.cpp
    M clang/test/CXX/temp/temp.spec/temp.expl.spec/p7.cpp
    M clang/test/CodeGenCXX/default-arguments.cpp
    M clang/test/CodeGenCXX/explicit-instantiation.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/friend-template.cpp
    M clang/test/SemaTemplate/instantiate-scope.cpp
    M clang/test/Templight/templight-default-func-arg.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  Revert "[clang] Reland: fix getTemplateInstantiationArgs" (#201864)

Reverts llvm/llvm-project#201373

This caused compilation errors. See comment on the original PR.


  Commit: 681fc74ac47eaa597d22506231a347748dda635b
      https://github.com/llvm/llvm-project/commit/681fc74ac47eaa597d22506231a347748dda635b
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUAttrs.td
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUBase.td
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUDialect.h
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUEnums.td
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
    M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
    A mlir/include/mlir/Dialect/LLVMIR/ROCDLAttrs.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLDialect.h
    A mlir/include/mlir/Dialect/LLVMIR/ROCDLDialect.td
    A mlir/include/mlir/Dialect/LLVMIR/ROCDLEnums.td
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/include/mlir/Target/LLVM/ROCDL/Utils.h
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUOps.cpp
    M mlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/gfx1250.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/global-prefetch.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/mfma-gfx950.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/mfma.mlir
    M mlir/test/Conversion/AMDGPUToROCDL/wmma-gfx1250.mlir
    M mlir/test/Dialect/AMDGPU/ops.mlir
    A mlir/test/Dialect/LLVMIR/rocdl-cache-policy-invalid.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Integration/GPU/ROCM/gpu-lower-to-rocdl-pipeline.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL] Move ROCDL intrinsic enum immargs to enums (#198875)

In many cases, a "i32" `immarg` arguhment to an intrinsic in the AMDGPU
backend actually corresponds directly to some enumerated set of values
in the backend, which we have to smuggle through an I32. This makes the
MLIR forms of intrinsics less readable and means that people either have
to use the `amdgpu` dialect to get these enums or have to roll their own
enums if they want to know what's going on.

This PR rips the band-aid off and breaks the world by swapping out those
integer attributes for enum attributes.

Of special note is the handling of the aux/cachepolicy field on various
intrinsics; in the backend, all the architectures share an enum and
you've just got to use the right names in the right spots. Here, we've
separated out the cases for pre-gfx942, gfx942+, and gfx12 enums as
separate attributes (including separate casing for gfx12 atomics) and
allowed any of them to be used. We also allow an I32Attr in those
arguments for easy importing and to make the common case of "0" portably
printable.

In all other cases, we've just moved to the new enums.

The WMMA ops, which have multiple immadiate arguments that could be
confusing, have been given assembly formats than name the filed names.

This commit also moves the AMDGPU dialct to use the new enums.

In order to be able to use the current `EnumAttr` system, a method has
been added to LLVM translation to allow such enum attributes to be
converted to their underlying integer constants.

AI usage: this is a quasi-mechanical refactor that was pretty much
farmed out to Codex

---------

Co-authored-by: OpenAI Codex <codex at openai.com>


  Commit: b764858749de56611794a7e92b32ee3008936337
      https://github.com/llvm/llvm-project/commit/b764858749de56611794a7e92b32ee3008936337
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/include/flang/Lower/Support/PrivateReductionUtils.h
    M flang/include/flang/Lower/Support/Utils.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/Support/PrivateReductionUtils.cpp
    M flang/lib/Lower/Support/Utils.cpp
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-distribute-parallel-do-simd-private-adjustable-array.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-distribute-private-adjustable-array.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-nested-distribute-private-adjustable-array.f90

  Log Message:
  -----------
  [Flang][OpenMP] Heap-allocate GPU dynamic private arrays in distribute parallel do (#200841)

Fixes GPU offload crashes for Fortran automatic arrays privatised in
target teams distribute parallel do.

For delayed privatisation on GPU, dynamically sized boxed array privates
are now routed through the existing heap-allocation path, with matching
cleanup emitted in the privatiser dealloc region. This avoids lowering
such arrays to runtime-sized scratch allocas whose descriptors can be
captured across the distribute callback boundary.

Fixes [#2419](https://github.com/ROCm/llvm-project/issues/2419).
Co-authored-by: Codex <codex at openai.com>


  Commit: 44ef831f9da0283e16c11c903d81d4186ed8ea6d
      https://github.com/llvm/llvm-project/commit/44ef831f9da0283e16c11c903d81d4186ed8ea6d
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/Basic/Attr.td
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/AttrImpl.cpp
    M clang/lib/AST/Type.cpp
    A clang/test/AST/attributed-type-dedup-address-space.c
    A clang/test/AST/attributed-type-dedup-annotate-type-args.c
    A clang/test/AST/attributed-type-dedup-annotate-type.m
    A clang/test/AST/attributed-type-dedup-nullability.m
    A clang/test/AST/attributed-type-dedup-objc-ownership.m
    A clang/test/AST/attributed-type-dedup-pcs.c
    A clang/test/AST/attributed-type-dedup-swift-attr.m
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  [clang][AST] Hash `AttributedType`'s `Attr` by Arguments (#200961)

https://github.com/llvm/llvm-project/pull/108631 added
`ID.AddPointer(attr)` to `AttributedType::Profile`, which turned the
`ID` into a pointer-identity key. This inhibits deduplication of
attributed types (such as types with `_Nonnull/_Nullable` attributes).
Such duplications can lead to significant increases in pcm/pch sizes.

This PR adds the arguments of the attributes to the folding set ID, so
that the content of the argument is taken into account when computing
the ID in addition to the existing inputs. The implementation teaches
tablegen to generate the `profile` method for each attribute, similar to
how we generate methods to check equivalence. This way, the argument
contents are handled automatically. Additionally, an attribute can have
an escape hatch to add its own customized profile method, through the
`profileFn` tablegen field, in case something special is needed.

Assisted-by: claude-opus-4.7

Fixes rdar://170586474.


  Commit: 05d4fd021e9e5b8d2815163a8e4463bcf1f515e6
      https://github.com/llvm/llvm-project/commit/05d4fd021e9e5b8d2815163a8e4463bcf1f515e6
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td

  Log Message:
  -----------
  [NFC][Doc] Fix non-existing reference in BuiltinsAMDGPUDocs.td (#201889)


  Commit: d4ec02e1afa71847a72ced8929448ea1e7b84018
      https://github.com/llvm/llvm-project/commit/d4ec02e1afa71847a72ced8929448ea1e7b84018
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-narrowing-shift-trunc.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Support v4i16/v2i32->v4i8/v2i16 truncate. (#201757)


  Commit: 2433b06e6dbe3ef015a226620d207a45f7b98c7c
      https://github.com/llvm/llvm-project/commit/2433b06e6dbe3ef015a226620d207a45f7b98c7c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    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][TargetLowering][P-ext] Support sext_inreg or v2i32/v4i16 vectors on RV32. (#201752)

Update sext_vector_inreg expansion to use sext_inreg. Previously it
emitted 2 shifts that wouldn't be combined.


  Commit: a4e48b5d1a5dc7af00c4adb4076145afd9846739
      https://github.com/llvm/llvm-project/commit/a4e48b5d1a5dc7af00c4adb4076145afd9846739
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/test/Transforms/LoopFusion/cannot_fuse.ll

  Log Message:
  -----------
  [LoopFusion] Simplify the logic of checking trip count equality (NFCI). (#201446)

Currently `haveIdenticalTripCounts` has a clunky return value, which
makes it very easy to make a mistake. The returned pair doesn't provide
much value and can be replaced with an optional integer. Also the
function `haveIdenticalTripCounts` does more than what its name
suggests. It checks whether peeling is supported for the pair of loops
or not. Interestingly this is not the only place where we check whether
peeling for this pair is supported!

This patch changes the function and renames it to
`calculateTripCountDiff`. It does exactly what the names says. It tries
to calculate the difference of the trip counts of the two loops and if
it fails it returns an empty optional. It is up to the caller to decide
whether it wants to do fusion/peeling based on this result. The patch
changes some debug output but no functional change is intended.

Datatypes has been modified with explicit specification of size and
signedness to avoid any bug due to overflow in subtraction or comparison
of different integer types.


  Commit: 427d632c4c307dfac7f21a3f0cd3f82b5e11dea4
      https://github.com/llvm/llvm-project/commit/427d632c4c307dfac7f21a3f0cd3f82b5e11dea4
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 681fc74 (#201894)

This fixes 681fc74ac47eaa597d22506231a347748dda635b.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: f04b27125ad150f3ca7488272cddc3a6341cbf15
      https://github.com/llvm/llvm-project/commit/f04b27125ad150f3ca7488272cddc3a6341cbf15
  Author: Kazu Hirata <kazu at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProfReader.h
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp

  Log Message:
  -----------
  [SampleProfile] Switch getNameTable() to return iterator_range (NFC) (#200995)

This patch teaches SampleProfileReader::getNameTable() to return an
iterator_range instead of a pointer to std::vector<FunctionId>.

This patch is meant to be a preparation patch for the following
speed-up opportunity.  I'm planning to lazy-load SecNameTable in a
subsequent patch for performance reasons.  We have SecNameTable that
takes up about 90MB on disk.  We eager-load this section into
std::vector<FunctionId> on the heap.  This ends up taking about 180MB
on the heap because the element type of the section is 8-byte MD5 hash
value while FunctionId takes up 16 bytes.  This eager loading shows up
on the execution profile -- about 1%.  Since we do have a few places
where we scan the entire NameTable, we should accommodate those places
with iterators that lazy-load SecNameTable.

See the RFC at:

https://discourse.llvm.org/t/rfc-faster-sample-profile-loading/90957


  Commit: c19fa5be5f47d8747f523509382b12997f2bd25f
      https://github.com/llvm/llvm-project/commit/c19fa5be5f47d8747f523509382b12997f2bd25f
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/fpclamptosat_vec.ll
    M llvm/test/CodeGen/WebAssembly/saturating-truncation.ll

  Log Message:
  -----------
  [WebAssembly] narrow instructions use signed saturation (#201798)

Fixes https://github.com/llvm/llvm-project/issues/201780

Per
https://www.w3.org/TR/wasm-core-2/#-hrefop-narrowmathrmnarrowmathsfu_m-n-i
the saturation is signed, the truncation is unsigned.


  Commit: a9f6afded01c7a8a9f949937e89d0d961f7a8423
      https://github.com/llvm/llvm-project/commit/a9f6afded01c7a8a9f949937e89d0d961f7a8423
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/test/Driver/function-sections.f90

  Log Message:
  -----------
  [flang] Update a test case for AIX (NFC) (#201865)

-fdata-sections is specified by default on AIX. This patch is to adjust
the testing for the case that the option is off and on by default.


  Commit: 3b983204e4c2cc3c383dba022fe85463e520b3b5
      https://github.com/llvm/llvm-project/commit/3b983204e4c2cc3c383dba022fe85463e520b3b5
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    R lld/test/wasm/Inputs/custom.ll
    A lld/test/wasm/Inputs/custom.s
    R lld/test/wasm/Inputs/explicit-section.ll
    A lld/test/wasm/Inputs/explicit-section.s
    R lld/test/wasm/Inputs/locals-duplicate1.ll
    A lld/test/wasm/Inputs/locals-duplicate1.s
    R lld/test/wasm/Inputs/locals-duplicate2.ll
    A lld/test/wasm/Inputs/locals-duplicate2.s
    R lld/test/wasm/Inputs/many-funcs.ll
    A lld/test/wasm/Inputs/many-funcs.s
    R lld/test/wasm/Inputs/tag-section1.ll
    A lld/test/wasm/Inputs/tag-section1.s
    R lld/test/wasm/Inputs/tag-section2.ll
    A lld/test/wasm/Inputs/tag-section2.s
    R lld/test/wasm/custom-section-name.ll
    A lld/test/wasm/custom-section-name.s
    R lld/test/wasm/custom-sections.ll
    A lld/test/wasm/custom-sections.s
    R lld/test/wasm/function-imports-first.ll
    A lld/test/wasm/function-imports-first.s
    R lld/test/wasm/gc-sections.ll
    A lld/test/wasm/gc-sections.s
    R lld/test/wasm/init-fini-no-gc.ll
    A lld/test/wasm/init-fini-no-gc.s
    R lld/test/wasm/local-symbols.ll
    A lld/test/wasm/local-symbols.s
    M lld/test/wasm/locals-duplicate.test
    R lld/test/wasm/many-functions.ll
    A lld/test/wasm/many-functions.s
    M lld/test/wasm/section-symbol-relocs.yaml
    R lld/test/wasm/signature-mismatch-export.ll
    A lld/test/wasm/signature-mismatch-export.s
    R lld/test/wasm/signature-mismatch-unknown.ll
    A lld/test/wasm/signature-mismatch-unknown.s
    R lld/test/wasm/signature-mismatch-weak.ll
    A lld/test/wasm/signature-mismatch-weak.s
    R lld/test/wasm/startstop.ll
    A lld/test/wasm/startstop.s
    R lld/test/wasm/tag-section.ll
    A lld/test/wasm/tag-section.s
    R lld/test/wasm/undefined.ll
    A lld/test/wasm/undefined.s
    R lld/test/wasm/visibility-hidden.ll
    A lld/test/wasm/visibility-hidden.s

  Log Message:
  -----------
  [lld][WebAssembly] Convert more tests from .ll to .s (#201713)

This continues the work of converting Wasm tests to use assembly instead
of LLVM IR.

For this change I chose all of the `.ll` tests that could be converted
with minimal changed.

Some changes that were needed:
- data-segments.s: Updated segment order and offsets to match .tdata
behavior.
- visibility-hidden.s: Removed __stack_pointer export expectation as
it's no longer automatically exported in the assembly-based test.
- init-fini.s: Updated body encoding and InitFunctions indices to match
llvm-mc output.
- locals-duplicate.test: Added explicit alignment to inputs to match
original test expectations.
- function-imports-first.s, init-fini.s, signature-mismatch-export.s:
Removed __stack_pointer export expectation as it's no longer
automatically exported in assembly-based tests when unused.
- gc-sections.s: Updated expectations to reflect that __stack_pointer is
garbage collected when GC is enabled.
- tag-section.s: Added and exported an explicit global variable
(`my_global`) to ensure a GLOBAL section is created, preserving the test
for checking that the GLOBAL section comes after the TAG section.

To verify the expectation changes, you can use the following command to
diff the .ll (pre-image) and .s (post-image) expectations ignoring
comment character differences:

```shell
git diff --name-status HEAD~1 HEAD | grep '^D' | grep '\.ll$' | while read -r _ ll; do \
  s="${ll%.ll}.s"; \
  if [ -f "$s" ]; then \
    echo "=== Diff for $s ==="; \
    diff -u \
      <(git show HEAD~1:"$ll" | grep -E 'CHECK|RUN' | sed -E 's/^;[[:space:]]*//') \
      <(cat "$s" | grep -E 'CHECK|RUN' | sed -E 's/^#[[:space:]]*//'); \
  fi; \
done
```


  Commit: 9bcd58f811dd2760fa721affd605abc2a4ddbb6e
      https://github.com/llvm/llvm-project/commit/9bcd58f811dd2760fa721affd605abc2a4ddbb6e
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c

  Log Message:
  -----------
  [CIR] Fix compressstore builtin tests (#201902)

The llvm.masked.compressstore intrinsic was update to allow overloaded
pointer arguments for address space support. This led to failures in the
CIR tests that check for this intrinsic being called. This change
updates the checks.


  Commit: de727e5f511816d74178c8bde35d56cc61ebab6a
      https://github.com/llvm/llvm-project/commit/de727e5f511816d74178c8bde35d56cc61ebab6a
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/freeze-vector.ll

  Log Message:
  -----------
  [DAG] isGuaranteedNotToBeUndefOrPoison - add ISD::CONCAT_VECTORS handling (#200932)

Teach isGuaranteedNotToBeUndefOrPoison to distribute fixed-length
demanded element masks across CONCAT_VECTORS operands. This is part of
the series of fixes needed to resolve a SelectionDAG hang by making it
possible to prove certain values don't need to be frozen.

AI note: an LLM generated the code and the test, I've read them

---------

Co-authored-by: OpenAI Codex <codex at openai.com>


  Commit: aa1c599c7ef96169514b481afaf4275791c4e955
      https://github.com/llvm/llvm-project/commit/aa1c599c7ef96169514b481afaf4275791c4e955
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/freeze-vector.ll

  Log Message:
  -----------
  [SelectionDAG] isGuaranteedNotToBeUndefOrPoison - add ISD::SELECT handling (#200934)

Propagate demanded elements through to the two arms of a select, which might be vectors.

AI note: an LLM generated the code and the test, I've read them

---------

Co-authored-by: OpenAI Codex <codex at openai.com>


  Commit: a79272b56bcbeda369ec29a6f013a4d5ecedf8a4
      https://github.com/llvm/llvm-project/commit/a79272b56bcbeda369ec29a6f013a4d5ecedf8a4
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    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/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp

  Log Message:
  -----------
  [VPlan] Restrict addOperand to sub-classes that need it (NFC). (#200692)

Make addOperand protected and add dedicated helpers in sub-classes that
verify the type of the added operand if possible.

Most recipes already add all their operands on construction. This patch
makes sure that addOperand cannot be used to add operands with invalid
types.

PR: https://github.com/llvm/llvm-project/pull/200692


  Commit: 0dedc9511bca8038ef0386225b97c867037f45bb
      https://github.com/llvm/llvm-project/commit/0dedc9511bca8038ef0386225b97c867037f45bb
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/unittests/Support/SignalsTest.cpp

  Log Message:
  -----------
  [Support] Fix symbolizer markup backtrace; reenable test (#181035)

The symbolizer markup backtrace test depended on the binary having a
build ID; this isn't a given. Instead, we check to see if the binary
name is anywhere in the output string; if not, we skip the test. This
isn't perfect of course, but determining whether the binary under test
overlaps contains a build ID overlaps too much with the implementation
of the feature; this at least keeps the tests independent.

The above fix uncovered an issue: the build ID of another DSO would be
misattributed to the main DSO if the main DSO had no build ID. This
issue has been corrected also.

Fixes #168891


  Commit: 8dd73767aa9081cf67cd6aaa1358970034a7d697
      https://github.com/llvm/llvm-project/commit/8dd73767aa9081cf67cd6aaa1358970034a7d697
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Support 4i16/v8i8 MULHS/MULHU/MULHSU for division by constant (#201747)

Update the mulhs+add->mulhsu combine to create a split mulhsu for 64-bit
types. LegalizeVectorOps will ignore target specific opcodes so we can't
custom lower it later.


  Commit: 97b7e451423b8e971d6feb3369d67f659037ce83
      https://github.com/llvm/llvm-project/commit/97b7e451423b8e971d6feb3369d67f659037ce83
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt

  Log Message:
  -----------
  [ORC] Add missing dependency on intrinsics_gen to Debugging library (#201908)

The Debugging library includes llvm/IR/Attributes.inc so it needs to
depend on intrinsics_gen to make sure the file is generated before it's
used.


  Commit: 237644975a5d2df88f624b5e797522cc81b65aac
      https://github.com/llvm/llvm-project/commit/237644975a5d2df88f624b5e797522cc81b65aac
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libc/src/__support/CPP/tuple.h

  Log Message:
  -----------
  [libc] Fix putting tuple_size into libc++ namespace. (#201905)

633539bfa1516e616b798b2eae98bea689b3c410 added special-case for putting
`tuple_size` into correct namespace when building with libc++. It uses
`_LIBCPP_BEGIN_NAMESPACE_STD` macro, which recently started to contain
more logic, including the Clang pragmas to ensure correct visibility. It
also may also introduce warnings for `-Wpragma-clang-attribute` which
need to be suppressed. After fad51d3f41482e148683e12741ac9abfbe49742d,
this suppression only works for libc++ headers themselves (which define
`#pragma GCC system_header`), but not for the user code.

This change bypasses explicit ABI annotation macros in libc++ by
switching to using `_LIBCPP_ABI_NAMESPACE` (that libc++ uses under the
hood) if it's available.


  Commit: ae48a36859750575a9d9166b5ebd604656741ad1
      https://github.com/llvm/llvm-project/commit/ae48a36859750575a9d9166b5ebd604656741ad1
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/lib/orc/record_section_tracker.h

  Log Message:
  -----------
  [orc] Add missing <iterator> include (#201916)

Fixes build after libc++ PR #195509 which drops transitive includes.


  Commit: 4bf77a4abbeec52d2b229d36f9ae01d09d2794b8
      https://github.com/llvm/llvm-project/commit/4bf77a4abbeec52d2b229d36f9ae01d09d2794b8
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/bindings/python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h

  Log Message:
  -----------
  [lldb][windows] Fix Python library link for LLDB_ENABLE_PYTHON_LIMITED_API (#201407)

When `LLDB_ENABLE_PYTHON_LIMITED_API` is `ON`, `liblldb` should link
against `python3.dll` (stable ABI) rather than the `python310.dll`.

Previously, two issues prevented this on Windows:

1. The `ScriptInterpreter` plugin explicitly linked
`${Python3_LIBRARIES}` regardless of whether the limited API was
enabled.

2. Python's `pyconfig.h` emits a `#pragma` to select the import library
at link time, choosing `python3.lib` or `python310.lib` depending on
whether `Py_LIMITED_API` is defined. However,
`LLDB_ENABLE_PYTHON_LIMITED_API` was only surfaced through Config.h,
which is not included early enough in the compilation chain to affect
pyconfig.h in all translation units.

This patch fixes both issues.

This is needed for https://github.com/llvm/llvm-project/pull/200533.


  Commit: ff65d814129d3220845ff64cbec90c1b83cf79e7
      https://github.com/llvm/llvm-project/commit/ff65d814129d3220845ff64cbec90c1b83cf79e7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    R lldb/include/lldb/Host/windows/PythonPathSetup/PythonPathSetup.h
    M lldb/source/Host/CMakeLists.txt
    R lldb/source/Host/windows/PythonPathSetup/CMakeLists.txt
    R lldb/source/Host/windows/PythonPathSetup/PythonPathSetup.cpp
    M lldb/tools/driver/CMakeLists.txt
    M lldb/tools/driver/Driver.cpp
    M lldb/tools/lldb-dap/tool/CMakeLists.txt
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp

  Log Message:
  -----------
  [lldb] Drop client-side Python pre-load and remove PythonPathSetup (#200533)

PythonPathSetup was a Windows-only helper that pre-mapped python3xx.dll
into lldb.exe / lldb-dap.exe so liblldb.dll's direct imports from
python3xx.dll would resolve when the delay-load thunk for liblldb fired
on the first SB call. ScriptInterpreterRuntimeLoader's Windows backend
has subsumed that responsibility, so this commit deletes the helper and
rewrites the two clients on the new API.

The Windows pre-load itself stays in the clients: the central load in
SystemInitializerFull::Initialize() lives behind the liblldb.dll thunk
that the import binding fires against, so the loader still has to run
from the binary that statically links lldbHost (lldb.exe / lldb-dap.exe)
before the first SB call lands.


  Commit: e3fee08c14eab9ee30c7d6d19c66cbd6bf1ff704
      https://github.com/llvm/llvm-project/commit/e3fee08c14eab9ee30c7d6d19c66cbd6bf1ff704
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/pr47665.ll
    M llvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll

  Log Message:
  -----------
  [VPlan] Remove special cost logic for stores predicated by header mask. (#196632)

Update the predicated memop costs with uniform operands to 
match the code we generate.

Depends on https://github.com/llvm/llvm-project/pull/196630

PR: https://github.com/llvm/llvm-project/pull/196632


  Commit: 989ef9ccdf6eb327f7b358485509774f11eadbce
      https://github.com/llvm/llvm-project/commit/989ef9ccdf6eb327f7b358485509774f11eadbce
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/freeze-vector.ll

  Log Message:
  -----------
  [DAG] isGuaranteedNotToBeUndefOrPoison - add ISD::BITCAST demanded elements handling (#200933)

Bitcasts preserve undef/poison status, but vector bitcasts can change
which source lanes cover a demanded result lane. Map the demanded
element mask through fixed-length vector bitcasts before checking the
source where possible.

AI note: an LLM generated the code and the test, I've read them

Fixes #161512

Co-Authored-By: OpenAI Codex <codex at openai.com>

---------

Co-authored-by: OpenAI Codex <codex at openai.com>


  Commit: 1118fa12a9db10712b38db126807df983f4dda9a
      https://github.com/llvm/llvm-project/commit/1118fa12a9db10712b38db126807df983f4dda9a
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M flang/test/Semantics/OpenMP/linear-clause01.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix failure in linear-clause01.f90 test (#201920)

Apparently the order of some OpenMP checks changed since the pre-commit
CI tested PR #189170.
Now the error `The list item 'i' must be a dummy argument` occurs
instead of
`'cc' is a common block name and must not appear in a LINEAR clause`.


  Commit: ab9644ac1733b30e5947a65f0e11946bb9d56895
      https://github.com/llvm/llvm-project/commit/ab9644ac1733b30e5947a65f0e11946bb9d56895
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/complex-builtins.cpp
    M clang/test/CIR/CodeGen/complex-unary.cpp
    M clang/test/CIR/CodeGen/long-double-inc-dec.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/IR/unary.cir
    M clang/test/CIR/Transforms/canonicalize.cir
    M clang/test/CodeGen/AArch64/neon/fullfp16.c

  Log Message:
  -----------
  [CIR] Update CIR unary operations (#201727)

This creates a floating-point-specific FNegOp and updates the type
constraints on the existing unary operations to match the types that are
actually produced by the Clang AST.

This change also moves complex types out of the unary operations. A
ComplexConjOp is added to handle what was previously being incorrectly
referred to as "not", while inc, dec, and minus are just expanded to
their component representation during codegen. We may want to consider
adding operations like cir.complex.add later, but for now I'm just
removing this type from the unary ops. I'm doing this for two reasons:
(1) the old use was inconsistent with how we handle other arithmetic
operations on complex types, and (2) I will soon need to attach
FP-specific attributes to add and subtract of complex types (and so also
inc and dec).

Assisted-by: Cursor / claude-opus-4.8


  Commit: 6a8608e5a75f9c4b945c3ed210dee6b20705cefe
      https://github.com/llvm/llvm-project/commit/6a8608e5a75f9c4b945c3ed210dee6b20705cefe
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/test/Driver/crash-diagnostics-tar.c

  Log Message:
  -----------
  [clang] Disable crash-diagnostic-tar.c if backtraces are disabled (#201921)

PR #201643 adds a test that fails if backtraces are disabled, e.g. in
tests for a stripped build. This was failing the Fuchsia CI, so this
change disables this test in such cases. It is likely possible to make
this test finer-grained to allow it to succeed with backtraces disabled.


  Commit: fa9e7b77b19a9d59b13a49116924b562b09a6599
      https://github.com/llvm/llvm-project/commit/fa9e7b77b19a9d59b13a49116924b562b09a6599
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    A llvm/test/CodeGen/AMDGPU/debug-independence-exec-masking.mir

  Log Message:
  -----------
  AMDGPU: fix assert when calling LiveRegUnits::stepBackward (#201887)

`stepBackward` assert added in
https://github.com/llvm/llvm-project/pull/193104.
Found while building `aqlprofile` as part of TheRock.


  Commit: 1227b19800524b542df685282096a2fe07a0aa5d
      https://github.com/llvm/llvm-project/commit/1227b19800524b542df685282096a2fe07a0aa5d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

  Log Message:
  -----------
  [SelectionDAG] Fix -Wunused-variable (#201932)

NumDstElts is only used in assertions so mark it [[maybe_unused]] to
prevent any issues with non-asserts builds and -Wunused-variable.


  Commit: 6ffd9f8c5c574f20c930d1104ef7215ff20536d5
      https://github.com/llvm/llvm-project/commit/6ffd9f8c5c574f20c930d1104ef7215ff20536d5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCLOps.td
    M mlir/test/Dialect/SPIRV/IR/ocl-ops.mlir
    M mlir/test/Target/SPIRV/ocl-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add OpenCL erfc op (#201906)


  Commit: 0dcca55e4a9adb7909eacb59e56ddcb0167d0d36
      https://github.com/llvm/llvm-project/commit/0dcca55e4a9adb7909eacb59e56ddcb0167d0d36
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/SPIRVDialect.cpp
    M mlir/test/Dialect/SPIRV/IR/types.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Validate float types in parseAndVerifyType (#201910)


  Commit: 75db4ce2177b37a2ae94fdbb9cee076dde5080df
      https://github.com/llvm/llvm-project/commit/75db4ce2177b37a2ae94fdbb9cee076dde5080df
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/test/CodeGenCUDA/increment-index-for-thunks.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/dllimport.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/Headers/hip-header.hip
    M clang/test/OpenMP/nvptx_target_pure_deleted_codegen.cpp
    M clang/test/OpenMP/target_vtable_codegen_explicit.cpp

  Log Message:
  -----------
  Restore unnamed_addr on vtables in -fno-rtti builds (#201846)

This is a follow-up to #200108 which dropped unnamed_addr from vtables
since it can break dynamic_cast under some circumstances. However, that
caused significant binary size regressions due to preventing ICF of
vtables.

This patch restores unnamed_addr on vtables in -fno-rtti builds, since
those do not support dynamic_cast, recovering the binary size savings at
least for those using that configuration.


  Commit: c3e9d05ce8044612ecae2eb27dd5ca52b612a8ac
      https://github.com/llvm/llvm-project/commit/c3e9d05ce8044612ecae2eb27dd5ca52b612a8ac
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lld/MachO/LTO.cpp
    M lld/test/MachO/icf-safe-thunks.ll

  Log Message:
  -----------
  [lld-macho][LTO] Emit `__llvm_addrsig` for `--icf=safe_thunks` (#188486)

LTO was emitting `__llvm_addrsig` metadata when `--icf=safe` was
specified, but not for `--icf=safe_thunks`. After the recent PR
https://github.com/llvm/llvm-project/pull/188400 that makes safe ICF
conservative without `__llvm_addrsig` (marking all symbols as
address-significant when the section is absent), this omission caused
safe_thunks to silently degrade for all LTO-compiled objects: every
symbol became `keepUnique`, preventing body folding entirely.

Fix this by also enabling `EmitAddrsig` when `icfLevel` is
`safe_thunks`. This allows the LTO backend to emit precise
address-significance metadata, so that only truly address-significant
functions get thunk treatment while non-address-significant identical
functions can still be body-folded.

Add a regression test that verifies LTO + `--icf=safe_thunks` correctly
body-folds non-address-significant identical functions, which would fail
without this fix due to missing addrsig metadata.


  Commit: 276cc2fac75a476824ea25b5349dfbac0d5b5545
      https://github.com/llvm/llvm-project/commit/276cc2fac75a476824ea25b5349dfbac0d5b5545
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    A llvm/test/CodeGen/DirectX/DebugInfo/di-globalvariable.ll
    A llvm/test/tools/dxil-dis/di-globalvariable.ll

  Log Message:
  -----------
  [DirectX] Rewrite DIGlobalVariableExpression to DXDIGlobalVariable (#199791)

DIGlobalVariable used to have an `expr` operand. Starting from
bceaaa964360 `expr` is now an operand of DIGlobalVariableExpression,
which references both the variable and the expression.

Before:
    !0 = !DIGlobalVariable(expr: !1)
    !1 = !DIExpression(DW_OP_plus, 4)

Now:
    !2 = !DIGlobalVariableExpression(var: !3, expr: !4)
!3 = distinct !DIGlobalVariable(name: "a", scope: null, isLocal: false,
isDefinition: true, type: !6)
    !4 = !DIExpression(DW_OP_plus, 4)

DXIL does not support DIGlobalVariableExpression, so we have to fold
`expr` back to DIGlobalVariable.

---------

Co-authored-by: Andrew Savonichev <andrew.savonichev at gmail.com>


  Commit: 35901313800ea6e6cbeb9226e51c7c4b29bfc40e
      https://github.com/llvm/llvm-project/commit/35901313800ea6e6cbeb9226e51c7c4b29bfc40e
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVCLOps.td
    M mlir/test/Dialect/SPIRV/IR/ocl-ops.mlir
    M mlir/test/Target/SPIRV/ocl-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add OpenCL cbrt op (#201914)


  Commit: de59f9ed12db9d47ad41ad44d54ec604ef8841cb
      https://github.com/llvm/llvm-project/commit/de59f9ed12db9d47ad41ad44d54ec604ef8841cb
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
    M llvm/include/llvm/MC/DXContainerInfo.h
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/lib/BinaryFormat/DXContainer.cpp
    M llvm/lib/MC/DXContainerInfo.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-compute.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-multi-source-compute.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-multi-source-zlib-compute.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-multi-source-zlib.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-multi-source.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-zlib-compute.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart-zlib.yaml
    A llvm/test/tools/obj2yaml/DXContainer/SRCIPart.yaml
    M llvm/unittests/Object/DXContainerTest.cpp
    M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp

  Log Message:
  -----------
  [DirectX][ObjectYAML] Add SRCI part support (#199446)

Add support for DXContainer SRCI in the ObjectYAML pipeline so it can be
represented in structured YAML and round-tripped through
yaml2obj/obj2yaml.

SRCI is emitted into shader PDB files. It stores shader source code that
is displayed in PIX, and shader compilation flags.


  Commit: 3b89e77151214ec62546f7437b4d5e07b1c2ce1d
      https://github.com/llvm/llvm-project/commit/3b89e77151214ec62546f7437b4d5e07b1c2ce1d
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp

  Log Message:
  -----------
  [compiler-rt] [sanitizers] Add includes for symbolizer (#201929)

After ce5b2e876494cb95f02d9f915081e2b8781e74d1 this stopped building.


  Commit: e9a4dd0b325c8d171e68662fbea554a86757a79f
      https://github.com/llvm/llvm-project/commit/e9a4dd0b325c8d171e68662fbea554a86757a79f
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/test/fuzzer/OutOfProcessFuzzTarget.cpp

  Log Message:
  -----------
  [compiler-rt] Add stdlib include to OutOfProcessFuzzTarget.cpp (#201944)

Fixes test after libc++ PR #195509 which drops transitive includes.


  Commit: 80ad2966e2902ec378050228321080eff3f4702e
      https://github.com/llvm/llvm-project/commit/80ad2966e2902ec378050228321080eff3f4702e
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll.bc
    M llvm/test/Instrumentation/AddressSanitizer/musttail.ll
    M llvm/test/Instrumentation/ThreadSanitizer/tsan_musttail.ll
    M llvm/test/Transforms/CallSiteSplitting/musttail.ll
    M llvm/test/Transforms/SafeStack/X86/musttail.ll
    M llvm/test/Verifier/musttail-invalid.ll

  Log Message:
  -----------
  Reland "Remove the optional bitcast between a musttail call and its ret" (#201280) (#201642)

This relands #201280, which was reverted in #201479 because it broke the
sanitizer buildbot

The revert was caused by a heap-use-after-free in
`BitcodeReader::materialize`

Fix: The CallBase branch could have erased I before we read it in the
new conditional


  Commit: 4f73c8195b51042d349916c162663252c7f60eb7
      https://github.com/llvm/llvm-project/commit/4f73c8195b51042d349916c162663252c7f60eb7
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M llvm/include/llvm/ADT/MapVector.h

  Log Message:
  -----------
  [clang][lex] Store `HeaderFileInfo` in a `MapVector` (#201936)

This is a re-commit of PR #200968 (f357a47) that was reverted by PR
#201702 (adaa9e0). One call-site of
`HeaderSearch::forEachExistingLocalFileInfo()` in `ASTWriter` relies on
stable order, which the `DenseMap` didn't provide. This PR switches to
`MapVector`, which has the same performance characteristics as the
original solution at the cost of a theoretical memory usage increase.

Original PR description:

Calling `FileManager::GetUniqueIDMapping()` during modular builds gets
very expensive if the `FileManager` has seen lots of files. This
function is used in two places in the `ASTWriter` to look up
`HeaderFileInfo` in `HeaderSearch`.

This PR changes the storage of `HeaderFileInfo` from
`FileEntry::getUID()`-indexed `std::vector<T>` to
`llvm::DenseMap<FileEntryRef, T>`, improving scanning performance by
~2.5%.


  Commit: ba7b74ff70328b3dff4fd3a33ee513342c453ec5
      https://github.com/llvm/llvm-project/commit/ba7b74ff70328b3dff4fd3a33ee513342c453ec5
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/test/CodeGen/X86/GlobalISel/legalize-undef-vec-scaling.mir

  Log Message:
  -----------
  [X86][GlobalISel] Adding missing Query to G_BUILD_VECTOR legalization (#199435)

Once G_BUILD_VECTOR was fixed, legalize-undef-vec-scaling.mir falled
into endless legalization loop as incoming MIR doesn't match correct
lowering of the type.


  Commit: 638f3ae61de291f85b711f6e3597fae6edd29986
      https://github.com/llvm/llvm-project/commit/638f3ae61de291f85b711f6e3597fae6edd29986
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M compiler-rt/include/profile/InstrProfData.inc
    A llvm/docs/AliasAnalysis.md
    R llvm/docs/AliasAnalysis.rst
    A llvm/docs/Atomics.md
    R llvm/docs/Atomics.rst
    A llvm/docs/BitCodeFormat.md
    R llvm/docs/BitCodeFormat.rst
    A llvm/docs/CommandLine.md
    R llvm/docs/CommandLine.rst
    A llvm/docs/CompilerWriterInfo.md
    R llvm/docs/CompilerWriterInfo.rst
    A llvm/docs/Coroutines.md
    R llvm/docs/Coroutines.rst
    A llvm/docs/CoverageMappingFormat.md
    R llvm/docs/CoverageMappingFormat.rst
    A llvm/docs/DebuggingLLVM.md
    R llvm/docs/DebuggingLLVM.rst
    A llvm/docs/ExceptionHandling.md
    R llvm/docs/ExceptionHandling.rst
    A llvm/docs/Extensions.md
    R llvm/docs/Extensions.rst
    A llvm/docs/FAQ.md
    R llvm/docs/FAQ.rst
    A llvm/docs/GarbageCollection.md
    R llvm/docs/GarbageCollection.rst
    A llvm/docs/GettingStartedVS.md
    R llvm/docs/GettingStartedVS.rst
    A llvm/docs/InstrProfileFormat.md
    R llvm/docs/InstrProfileFormat.rst
    A llvm/docs/Lexicon.md
    R llvm/docs/Lexicon.rst
    A llvm/docs/LibFuzzer.md
    R llvm/docs/LibFuzzer.rst
    A llvm/docs/LoopTerminology.md
    R llvm/docs/LoopTerminology.rst
    A llvm/docs/MIRLangRef.md
    R llvm/docs/MIRLangRef.rst
    A llvm/docs/MemorySSA.md
    R llvm/docs/MemorySSA.rst
    A llvm/docs/NewPassManager.md
    R llvm/docs/NewPassManager.rst
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/ProfileData/InstrProfData.inc
    M llvm/include/llvm/Support/AtomicOrdering.h
    M llvm/include/llvm/Support/GenericLoopInfo.h
    M llvm/test/Transforms/Coroutines/coro-retcon-value.ll
    M llvm/test/Transforms/Coroutines/coro-retcon.ll
    M llvm/test/Transforms/Coroutines/ex0.ll
    M llvm/test/Transforms/Coroutines/ex1.ll
    M llvm/test/Transforms/Coroutines/ex2.ll
    M llvm/test/Transforms/Coroutines/ex3.ll
    M llvm/test/Transforms/Coroutines/ex4.ll
    M llvm/test/Transforms/Coroutines/ex5.ll

  Log Message:
  -----------
  [docs] Rename 20 key LLVM docs to Markdown (#201464)

This may break the docs build temporarily, but there will be a follow-up
PR that fixes it immediately after. The rename is being committed first
to aid review and source code archaelogy.

Tracking issue: #201242


  Commit: cab8d8c9e268d1d94c56e3068377fd7c006cdd7d
      https://github.com/llvm/llvm-project/commit/cab8d8c9e268d1d94c56e3068377fd7c006cdd7d
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/docs/AliasAnalysis.md
    M llvm/docs/Atomics.md
    M llvm/docs/BitCodeFormat.md
    M llvm/docs/CommandLine.md
    M llvm/docs/CompilerWriterInfo.md
    M llvm/docs/Coroutines.md
    M llvm/docs/CoverageMappingFormat.md
    M llvm/docs/DebuggingLLVM.md
    M llvm/docs/ExceptionHandling.md
    M llvm/docs/Extensions.md
    M llvm/docs/FAQ.md
    M llvm/docs/GarbageCollection.md
    M llvm/docs/GettingStartedVS.md
    M llvm/docs/InstrProfileFormat.md
    M llvm/docs/Lexicon.md
    M llvm/docs/LibFuzzer.md
    M llvm/docs/LoopTerminology.md
    M llvm/docs/MIRLangRef.md
    M llvm/docs/MemorySSA.md
    M llvm/docs/NewPassManager.md

  Log Message:
  -----------
  [docs] Migrate 20 LLVM docs to markdown (#201465)

An LLM assisted in the rewrite. I didn't use pandoc or any other tools,
and I think there are fewer artifacts. I validated these docs by opening
all 20 HTML files in my browser.

Files:
- DebuggingLLVM.md
- FAQ.md
- CompilerWriterInfo.md
- GettingStartedVS.md
- NewPassManager.md
- MemorySSA.md
- LoopTerminology.md
- Lexicon.md
- MIRLangRef.md
- CoverageMappingFormat.md
- InstrProfileFormat.md
- BitCodeFormat.md
- Atomics.md
- GarbageCollection.md
- AliasAnalysis.md
- LibFuzzer.md
- Extensions.md
- CommandLine.md
- ExceptionHandling.md
- Coroutines.md

Tracking issue: #201242


  Commit: 488875cedfbea669afa93298a0a98594c1a9cb92
      https://github.com/llvm/llvm-project/commit/488875cedfbea669afa93298a0a98594c1a9cb92
  Author: Paweł Bylica <pawel at hepcolgum.band>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bt-merge-fuse.ll

  Log Message:
  -----------
  [X86] Fix crash on BT bit index narrower than log2(BW) (#201793)

peekThroughBitPosExtTrunc asserted that peeling
TRUNCATE/ZERO_EXTEND/ANY_EXTEND never drops below log2(BW) bits, but a
BT bit index can be e.g. a zext of i1. Stop peeking there instead: below
log2(BW) bits a peeled value no longer determines the bit index on its
own, so comparing peeled values would also be unsound.

Fixes #201444.


  Commit: 1dae5dee50e73d18ef42027bc3bd853a9ae740ce
      https://github.com/llvm/llvm-project/commit/1dae5dee50e73d18ef42027bc3bd853a9ae740ce
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_line.cpp

  Log Message:
  -----------
  [compiler-rt] Add missing cstdlib include to signal_line.cpp test (#201955)

Fixes test after libc++ PR #195509 which drops transitive includes.


  Commit: 8aafa50c7a2dfb8ca1d5cdf8980f7f2d259779f5
      https://github.com/llvm/llvm-project/commit/8aafa50c7a2dfb8ca1d5cdf8980f7f2d259779f5
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/docs/ClangSYCLLinker.rst
    M clang/test/OffloadTools/clang-sycl-linker/basic.ll
    M clang/test/OffloadTools/clang-sycl-linker/link.ll
    M clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    M clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/tools/clang-nvlink-wrapper/CMakeLists.txt
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
    M clang/tools/clang-sycl-linker/SYCLLinkOpts.td
    A llvm/include/llvm/Frontend/Offloading/ArchiveLinker.h
    A llvm/lib/Frontend/Offloading/ArchiveLinker.cpp
    M llvm/lib/Frontend/Offloading/CMakeLists.txt

  Log Message:
  -----------
  [clang][sycl][nvlink] Share static library linking in Frontend/Offloading (#201253)

Move clang-nvlink-wrapper's archive member selection engine into a new
shared library in llvm/lib/Frontend/Offloading (ArchiveLinker.h/.cpp)
and use it from both clang-nvlink-wrapper and clang-sycl-linker, adding
static library (.a) and -l support to the SYCL linker.

The shared llvm::offloading::resolveArchiveMembers() API:
- Searches -L paths for -l library names (lib<name>.a or :<name>)
- Expands archives, honouring --whole-archive/--no-whole-archive
- Runs a symbol-driven fixed-point loop to extract only the archive
  members that resolve undefined symbols
- Returns the resolved MemoryBuffers and symbol table; the symbol table
  is consumed by clang-nvlink-wrapper's LTO resolution pass

clang-sycl-linker gains -l, --whole-archive/--no-whole-archive, and -u
options (added to SYCLLinkOpts.td). The previous --bc-library option
has been removed in favor of the standard -l mechanism.

Bug fixes included:

* Fix dangling StringRef UB: Args.getAllArgValues() returns a temporary
  vector; retain it in ForcedUndefStorage so the StringRefs
  remain valid through the resolveArchiveMembers call (both tools).
* Fix assert crash in clang-sycl-linker when all positional inputs are
  non-existent: return a proper error instead of propagating an empty
  buffer vector to linkInputs.
* Fixed forced undefined symbol handling: corrected -u option 
  processing to properly handle symbols.

Co-Authored-By: Claude


  Commit: b7152ff7026a05282b6ae91ccf150ede0217b08a
      https://github.com/llvm/llvm-project/commit/b7152ff7026a05282b6ae91ccf150ede0217b08a
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes 8aafa50 (#201958)

This fixes 8aafa50c7a2dfb8ca1d5cdf8980f7f2d259779f5.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 961d5b8ac7deb754a8b66a86ee53c9e77cb6769f
      https://github.com/llvm/llvm-project/commit/961d5b8ac7deb754a8b66a86ee53c9e77cb6769f
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M libc/src/__support/time/linux/clock_gettime.cpp

  Log Message:
  -----------
  [libc] Fix clock_gettime on arm32 (#201959)

After removing 32 bit time_t the buildbot has been failing due to a
segfault. This PR fixes it. Not the cleanest fix but I don't want the
buildbot failing over the weekend.

Assisted-by: Automated tooling, human reviewed.


  Commit: 517a0755f5d128d950fc8a08b2bd45e629e40a95
      https://github.com/llvm/llvm-project/commit/517a0755f5d128d950fc8a08b2bd45e629e40a95
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Fix LIBCLC_OUTPUT_LIBRARY_DIR when find_package(LLVM) fails (#201816)

If we configure llvm from llvm-project/build folder, find_package(LLVM)
succeeds, `LLVM_LIBRARY_OUTPUT_INTDIR` is `build/./lib` and
`LLVM_BINARY_DIR` is `build`.

However, in #201773, find_package(LLVM) fails due to
LLVM_LIBDIR_SUFFIX=64, LLVM_LIBRARY_OUTPUT_INTDIR is
`redhat-linux-build/runtimes/runtimes-nvptx64-nvidia-cuda-bins/lib64`
and LLVM_BINARY_DIR is `redhat-linux-build`.

Use LLVM_BINARY_DIR, which is stable for both cases, for libclc output dir.

Fixes #201773


  Commit: e8753fdde70b8a2bd0d3219000228704587935bd
      https://github.com/llvm/llvm-project/commit/e8753fdde70b8a2bd0d3219000228704587935bd
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M libclc/test/conversion/convert.cl
    M libclc/test/geometric/cross.cl
    M libclc/test/integer/add_sat.cl
    M libclc/test/integer/sub_sat.cl
    M libclc/test/math/cos.cl
    M libclc/test/math/fabs.cl
    M libclc/test/math/rsqrt.cl
    M libclc/test/misc/as_type.cl
    M libclc/test/work-item/get_group_id.cl

  Log Message:
  -----------
  [libclc][Test] Add -fno-discard-value-names to RUN line (#201808)

Entry block label could be missing. Add -fno-discard-value-names to make
sure it exists.

Resolves #201773


  Commit: 985e49989fa6ac24a1318969f6865bb5407574c6
      https://github.com/llvm/llvm-project/commit/985e49989fa6ac24a1318969f6865bb5407574c6
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M libclc/test/update_libclc_tests.py

  Log Message:
  -----------
  [libclc][Test] Don't hard code `clang` path in update_libclc_tests.py (#201806)

In #201773, build folder is `redhat-linux-build` rather than `build`.
Detect clang from PATH. Also add --clang-binary option to specify clang path.


  Commit: 7bf820c20f08a56eeef027838b992708e5654ff7
      https://github.com/llvm/llvm-project/commit/7bf820c20f08a56eeef027838b992708e5654ff7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/ordered-reduction-root-deleted.ll

  Log Message:
  -----------
  [SLP] Fix crash in ordered reduction with loop-carried chain root

tryToReduceOrdered built the buildTree ignore list only from the current
window's reduced values, omitting the chain root when its leaf is a
trailing scalar outside the window.
buildTree then vectorized the root through the phi cycle,
vectorizeTree unlinked it, and emitReduction inserted at the dangling
insertion point.
Build the ignore list from the full ReductionOps chain, matching the
associative-reduction path, so the root stays scalar to fix a crash.

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/201963


  Commit: d0397a6d7d78888e278823c4d32749f8c896ef9c
      https://github.com/llvm/llvm-project/commit/d0397a6d7d78888e278823c4d32749f8c896ef9c
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    A clang/include/clang/Basic/AtomicLineLogger.h
    A clang/lib/Basic/AtomicLineLogger.cpp
    M clang/lib/Basic/CMakeLists.txt
    A clang/unittests/Basic/AtomicLineLoggerTest.cpp
    M clang/unittests/Basic/CMakeLists.txt

  Log Message:
  -----------
  [clang] Adding an Atomic Line Logger (#195885)

This PR adds an atomic line logger to `clang`. 

Situations have arisen where `clang` performs multi-threaded tasks (such
as dependency scanning), and race conditions may happen. Such race
conditions are difficult to debug using either `lldb` or with
`llvm::errs()`.

This logger provides atomic logging per line to a file on disk with time
stamps at each line to facilitate such investigations. Specifically, the
logger is designed with the following properties:

1. Each line is atomically written to the backing file. This avoids
concurrent writes making the output text interleaving.
2. Each line is prefixed with a timestamp, a process ID and a thread ID.
3. `LogLine` implements a `<<` operator to allow arbitrary printable
types to be piped into it.
4. The `LogLine`'s user does not need to check if it is setup or valid.
A LogLine is always valid and can always accept input from `<<`. It
becomes a no-op if the `LogLine` object is returned from a default
constructed `AtomicLineLogger`.
5. The write happens when a `LogLine` object goes out of scope. 

The logger is inspired by the
[OnDiskCASLogger](https://github.com/llvm/llvm-project/blob/09abee845d2136630fc3f50524148daa55a740a8/llvm/include/llvm/CAS/OnDiskCASLogger.h#L33).
A followup PR https://github.com/llvm/llvm-project/pull/195896 wires up
this logger to clang's dependency scanning stack.

Assisted-by: claude-opus-4.6

rdar://39907408


  Commit: dca9eaa98fd71535e8d283ae390c96266c5b9b8c
      https://github.com/llvm/llvm-project/commit/dca9eaa98fd71535e8d283ae390c96266c5b9b8c
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/tools/clang-sycl-linker/CMakeLists.txt

  Log Message:
  -----------
  [clang-sycl-linker] Add mising dependency on BitReader (#201961)

This fixes the shared library build configuration.


  Commit: 8b46bd51399d3e49c601d9958b2e3ff5c1a706cd
      https://github.com/llvm/llvm-project/commit/8b46bd51399d3e49c601d9958b2e3ff5c1a706cd
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M lldb/source/Core/PluginManager.cpp

  Log Message:
  -----------
  [lldb] Skip plugin teardown when exiting without Terminate (#201739)

`import lldb` auto-calls SBDebugger::Initialize() but never Terminate().
The g_debugger_lifetime is a deliberately-leaked ManagedStatic, so the
PluginInstances containers are still populated when their static
destructors run at process exit. That tripped the "forgot to unregister
plugin?" assert, and once the assert was gated the dynamically-loaded
plugin map's PluginInfo terminate callbacks ran against PluginInstances
mutexes that had already been destroyed.

This only surfaces with LLDB_ENABLE_DYNAMIC_SCRIPTINTERPRETERS, where
`_lldb` is the script-interpreter plugin dylib and liblldb comes in as a
dependency that exit() finalizes. A static build leaks identically but
never reaches those destructors, so the bug stayed latent.

Track an explicit lifecycle (Uninitialized/Initialized/Terminated) in a
single never-destroyed PluginRegistry. ~PluginInstances only checks for
leftover registrations once Terminate() has run, and the map (never torn
down at exit) only runs its terminate callbacks during an explicit
clear, while every container is still alive.


  Commit: 139bcc17805161ddc168ef5363969b2b94242516
      https://github.com/llvm/llvm-project/commit/139bcc17805161ddc168ef5363969b2b94242516
  Author: Vladislav Dzhidzhoev <vdzhidzhoev at accesssoftek.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    A llvm/test/CodeGen/DirectX/ContainerData/CompilerVersion.ll

  Log Message:
  -----------
  [DirectX] Generate compiler version part in llc (#199699)

This change modifies DXContainerGlobals pass to generate compiler
version (VERS) part in DXContainer.
VERS part allows consumers to information about compiler version used to
build shader.

When debug info PDB file creation will be implemented, VERS part should
go to PDB file.


  Commit: 8fa4d4490ddaca238b5c420fbf17020e85ede2fc
      https://github.com/llvm/llvm-project/commit/8fa4d4490ddaca238b5c420fbf17020e85ede2fc
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/multi-vtable.cpp
    M clang/test/CIR/CodeGen/thunks.cpp
    M clang/test/CIR/CodeGen/virtual-function-calls.cpp
    M clang/test/CIR/CodeGen/vtable-emission.cpp
    M clang/test/CIR/CodeGen/vtt.cpp

  Log Message:
  -----------
  [CIR] Fix CIR Test failures after unnamed_addr restored to vtables (#201962)

We had previously removed the `unnamed_addr` keyword check from our
vtable checks for OGCG because it was temporarily not emitted in that
case. The OGCG output has been modified again, so we need to update our
checks again.

The CIR output has not changed.


  Commit: 832f4c41ae172950bbb5797803d6ec1a94edd146
      https://github.com/llvm/llvm-project/commit/832f4c41ae172950bbb5797803d6ec1a94edd146
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Options/Options.td
    A clang/test/CodeGenCXX/cl-pathmap.cpp
    A clang/test/Driver/cl-pathmap.c
    A clang/test/Preprocessor/cl-pathmap.c

  Log Message:
  -----------
  [clang-cl] Add new option `/pathmap:<from>=<to>` to replace the path prefix <from> with <to>. (#198664)

This option matches MSVC options and does the path substitution for the
file references in the preprocessor macros, debug and coverage information.

This option acts as a clang's ``-ffile-prefix-map=value`` and with some
known differences in behaviour with original CL's option that do not affect 
the functionality:
* nomalizes the macro prefix map pathes -- removes `./` and uses the target's
platform-specific path separator character when exanding the preprocessor
macros -- ``-ffile-reproducible`` (but not the debug and coverage prefix maps).
* does not require ``/experimental:deterministic`` as by MSVC. It needed for 
removing a hostname from a mangling hash gen, but clang-cl does not use
a hostname  when generates the hashes.

Known issues:
  * does not remap the pathes within PCH/PCM files.


  Commit: 7ef07bca9b05b4a3435aa857dbd417c2aec40c22
      https://github.com/llvm/llvm-project/commit/7ef07bca9b05b4a3435aa857dbd417c2aec40c22
  Author: Daniel Thornburgh <dthorn at google.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M compiler-rt/test/hwasan/TestCases/try-catch.cpp

  Log Message:
  -----------
  [compiler-rt] Add missing test stdlib.h include (#201972)

Fixes test after libc++ PR #195509 which drops transitive includes.


  Commit: ee5e682f4db85afca52ac6519a4b9bf0bfab4cf9
      https://github.com/llvm/llvm-project/commit/ee5e682f4db85afca52ac6519a4b9bf0bfab4cf9
  Author: David Rivera <davidriverg at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    A clang/include/clang/CIR/InitAllDialects.h
    M clang/lib/CIR/CMakeLists.txt
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    A clang/lib/CIR/RegisterAllDialects.cpp
    A clang/test/CIR/IR/openacc.cir
    M clang/tools/cir-lsp-server/CMakeLists.txt
    M clang/tools/cir-lsp-server/cir-lsp-server.cpp
    M clang/tools/cir-opt/CMakeLists.txt
    M clang/tools/cir-opt/cir-opt.cpp
    M clang/tools/cir-translate/CMakeLists.txt
    M clang/tools/cir-translate/cir-translate.cpp

  Log Message:
  -----------
  [CIR] Centralize dialect registration across CIR tools (#200266)


  Commit: f53c19ebd81d372429475950bf1314b9d01f2adc
      https://github.com/llvm/llvm-project/commit/f53c19ebd81d372429475950bf1314b9d01f2adc
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Options/Options.td
    R clang/test/CodeGenCXX/cl-pathmap.cpp
    R clang/test/Driver/cl-pathmap.c
    R clang/test/Preprocessor/cl-pathmap.c

  Log Message:
  -----------
  Revert "[clang-cl] Add new option `/pathmap:<from>=<to>` to replace the path prefix <from> with <to>." (#201981)

Reverts llvm/llvm-project#198664

Causes test failures on
[llvm-clang-aarch64-darwin](https://lab.llvm.org/buildbot/#/builders/190)
bot.


  Commit: 4113577578485d6b6e8cb398aa69637263fdb64f
      https://github.com/llvm/llvm-project/commit/4113577578485d6b6e8cb398aa69637263fdb64f
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp

  Log Message:
  -----------
  [TableGen] Recompute only the affected UberSet when inheriting reg units (#200962)

CodeGenRegBank::computeRegUnitWeights() runs a fixpoint over all registers;
normalizeWeight() calls the global computeUberWeights() -- which rescans
every UberRegSet, every register, and all of their register units -- each time
a register inherits register units from its subregisters.

Most of the time, we do better by just recomputing one register's
UberSet.

On AMDGPU (21266 registers) with this change, the "Compute reg unit
weights" phase drops from 3.19s to 0.70s (4.5x speedup) and
-gen-register-info improves overall from ~16.4s to ~14.0s.


  Commit: ea6943c45e0880f384c9db374a60968349732947
      https://github.com/llvm/llvm-project/commit/ea6943c45e0880f384c9db374a60968349732947
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp

  Log Message:
  -----------
  [X86] Remove stray :w from a comment. NFC (#201982)


  Commit: 7389aa2ef380ca2b64d8fa34b633e5d2a4efef0a
      https://github.com/llvm/llvm-project/commit/7389aa2ef380ca2b64d8fa34b633e5d2a4efef0a
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Frontend/Offloading/ArchiveLinker.cpp

  Log Message:
  -----------
  [Frontend][Offloading] Fix GCC 7 build error in ArchiveLinker (#201978)

GCC 7 cannot perform implicit move construction when converting
`ResolvedInputs` to `Expected<ResolvedInputs>`.


  Commit: 3e2ccf5a4d45f98bb1f8506f064e55279b244480
      https://github.com/llvm/llvm-project/commit/3e2ccf5a4d45f98bb1f8506f064e55279b244480
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/support.h
    M libcxx/include/__config
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/atomic
    M libcxx/modules/std.cppm.in
    M libcxx/src/memory_resource.cpp
    M libcxx/utils/generate_libcxx_cppm_in.py
    M libcxx/utils/libcxx/header_information.py
    M libcxx/utils/libcxx/test/modules.py

  Log Message:
  -----------
  [libc++] Assume that <atomic> is available (#199674)

We always define either `_LIBCPP_HAS_C_ATOMIC_IMP` or
`_LIBCPP_HAS_GCC_ATOMIC_IMP`, so we can remove any special handling of
not having an `<atomic>` header.


  Commit: d08a2a43abd91865002a42938b60f172527defa3
      https://github.com/llvm/llvm-project/commit/d08a2a43abd91865002a42938b60f172527defa3
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm

  Log Message:
  -----------
  [WebKit checkers] Treat the return value of an instance method as an unsafe pointer origin (#160569)


  Commit: 54ed4695d46a178b80578a3114b6dd70a8c59ec2
      https://github.com/llvm/llvm-project/commit/54ed4695d46a178b80578a3114b6dd70a8c59ec2
  Author: dyung <douglas.yung at sony.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    R clang/include/clang/Basic/AtomicLineLogger.h
    R clang/lib/Basic/AtomicLineLogger.cpp
    M clang/lib/Basic/CMakeLists.txt
    R clang/unittests/Basic/AtomicLineLoggerTest.cpp
    M clang/unittests/Basic/CMakeLists.txt

  Log Message:
  -----------
  Revert "[clang] Adding an Atomic Line Logger" (#201984)

Reverts llvm/llvm-project#195885

This is causing a build failure on a Windows bot running VS2019:
https://lab.llvm.org/buildbot/#/builders/46/builds/36187


  Commit: 978191848cdb929f85c76bbf54b0666971328c59
      https://github.com/llvm/llvm-project/commit/978191848cdb929f85c76bbf54b0666971328c59
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/test/CIR/CodeGen/atomic.c

  Log Message:
  -----------
  [CIR] Initialization of atomic aggregates with padding (#200668)

This patch adds support for the initialization of atomic aggregates with
padding. The changes include:

- During CIRGen, the type `_Atomic(T)` is represented by a CIR struct
`{T, sint8[padding_size]}` if the size of `_Atomic(T)` does not match
the size of `T`. `padding_size` is the difference between the size of
`_Atomic(T)` and `T`.
- CIRGen for the initialization process is updated to handle the
initialization of such CIR struct values.


  Commit: 11d7939060e874cdc8378e2b711c719b0d4ba8e1
      https://github.com/llvm/llvm-project/commit/11d7939060e874cdc8378e2b711c719b0d4ba8e1
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Keep C++20 module/import decls on a single line (#199459)

This patch fixes #193676.

- Added `UnwrappedLineParser::parseModuleDecl()` to parse C++20 module
declarations.
- Adapted `parseCppModuleImport()` from #193834 and renamed it to
`parseImportDecl()`.
- Used the test cases from the same PR.
- Removed the invalid test cases and fixed an incorrect one in
`FormatTest.cpp`.

---------

Co-authored-by: Björn Schäpers <github at hazardy.de>


  Commit: 26ffc71afa7c9a4a9904742016b343de6f2ea4e6
      https://github.com/llvm/llvm-project/commit/26ffc71afa7c9a4a9904742016b343de6f2ea4e6
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Disallow breaking before/after ## (#200721)

Fixes #199775


  Commit: f1267565f55ce3a57bc17a0114a07b6a22709a16
      https://github.com/llvm/llvm-project/commit/f1267565f55ce3a57bc17a0114a07b6a22709a16
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M offload/test/offloading/multiple_reductions.cpp

  Log Message:
  -----------
  [OpenMP][offload] use per-type checks for multiple_reductions.cpp (#201045)


  Commit: 18b3f1f44d19ccef8f78d833b8cebd6ffd19f24d
      https://github.com/llvm/llvm-project/commit/18b3f1f44d19ccef8f78d833b8cebd6ffd19f24d
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-06-05 (Fri, 05 Jun 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 SDKPlatformInfo (#200896)" (#202010)

This doesn't work for 32 bit arm because that usually gets converted to
thumb-apple-os, and that doesn't match arm-apple-os from
SDKSettings.json.

This reverts commit b89bb06afd069aa1b5e9f05ab692b3e6b41318c0.


  Commit: 43df6450eb37a47b89c027828cd35a4ab399640f
      https://github.com/llvm/llvm-project/commit/43df6450eb37a47b89c027828cd35a4ab399640f
  Author: paperchalice <liujunchang97 at outlook.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/lib/Target/CSKY/CSKYTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/M68k/M68kTargetMachine.cpp
    M llvm/lib/Target/Mips/MipsTargetMachine.cpp
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/Xtensa/XtensaTargetMachine.cpp

  Log Message:
  -----------
  [Target] Remove `Target::resetTargetOptions` (#201825)

This function shouldn't exist, now it is an empty function, remove it.


  Commit: cff8815ebb23354ac506e6b299cf74cd60227163
      https://github.com/llvm/llvm-project/commit/cff8815ebb23354ac506e6b299cf74cd60227163
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/FormatString.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/ScanfFormatString.cpp
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/Sema/format-strings-c23.c
    M clang/test/Sema/format-strings.c

  Log Message:
  -----------
  [Clang] support C23 printf width length modifiers (#199991)

This patch adds `-Wformat` support for the C23 `wN` and `wfN` length
modifiers in `printf`/`scanf` format strings. #116962


  Commit: f8ee61b393dc5701d1556f22f28849ddfdae1495
      https://github.com/llvm/llvm-project/commit/f8ee61b393dc5701d1556f22f28849ddfdae1495
  Author: David Green <david.green at arm.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/test/CodeGen/X86/GlobalISel/legalize-ctpop.mir
    M llvm/test/CodeGen/X86/GlobalISel/legalize-freeze.mir

  Log Message:
  -----------
  [X86][GlobalISel] Remove dependency on legal ruleset (#197374)

This fills in always legal rules, to remove the dependency on the legacy
ruleset. I'm not sure about the truncate rule but all tests pass. This
is not guaranteed to be all the rules, just the ones that appear in
tests.


  Commit: 86fc55edc125fd86e2aebab278650bf724a8c1c5
      https://github.com/llvm/llvm-project/commit/86fc55edc125fd86e2aebab278650bf724a8c1c5
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp

  Log Message:
  -----------
  [LoopFusion] Remove unused DataLayout parameter (NFC) (#202009)

The LoopFuser constructor took a DataLayout reference that was never
stored or used, and run() computed it solely to pass it in. Drop both.


  Commit: 570e532d5639c5da8746ffa8551259e742b51572
      https://github.com/llvm/llvm-project/commit/570e532d5639c5da8746ffa8551259e742b51572
  Author: Ralf Jung <post at ralfj.de>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/tools/llubi/lib/Value.h

  Log Message:
  -----------
  [llubi] explain Byte.TagValue encoding trick (#201863)

This took me a while to understand in #185977 so let's make it more
explicit why `TagValue` can be so small.


  Commit: 3fed38f4b8aa6c4a8ab1a9a864e11394eb3716d1
      https://github.com/llvm/llvm-project/commit/3fed38f4b8aa6c4a8ab1a9a864e11394eb3716d1
  Author: Petar Avramovic <Petar.Avramovic at amd.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll

  Log Message:
  -----------
  AMDGPU/GlobalISel: Fix tail call target in vgprs (#201873)

Insert readfirstlane, similar to SDAG version from #110984.


  Commit: 81e51e0aaf7219ebf51b52eae12d5f94e888b9bf
      https://github.com/llvm/llvm-project/commit/81e51e0aaf7219ebf51b52eae12d5f94e888b9bf
  Author: Paul Osmialowski <pawel.osmialowski at arm.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M openmp/tools/omptest/src/OmptAssertEvent.cpp

  Log Message:
  -----------
  [openmp][omptest] Include cstdlib for malloc() (#202021)

This is to address the error appearing when building this code with
somewhat more recent compilers:

```
Use of undeclared identifier 'malloc'
```

Such inclusion has already been added to the OmptTester.cpp file.


  Commit: fbe6b5d8536181ab42b0856cf747e09c4c29a175
      https://github.com/llvm/llvm-project/commit/fbe6b5d8536181ab42b0856cf747e09c4c29a175
  Author: David Green <david.green at arm.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll

  Log Message:
  -----------
  [AArch64] Change postinc index types to uint64_t (#202024)

The uint32_t could overflow, make sure we do not throw away the high
bits by
using a uint64_t.


  Commit: 6729f3b5a2d8650432e8415a5289fff42c660527
      https://github.com/llvm/llvm-project/commit/6729f3b5a2d8650432e8415a5289fff42c660527
  Author: David Green <david.green at arm.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll

  Log Message:
  -----------
  [AArch64] Use 64bit mask size for detecting extending Ands. (#202029)


  Commit: e133cb4f27525e05fbcb04994ed8767140f62db9
      https://github.com/llvm/llvm-project/commit/e133cb4f27525e05fbcb04994ed8767140f62db9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/recalc-copyable-operand-deps-shared-inst.ll

  Log Message:
  -----------
  [SLP] Recompute copyable operand deps for nodes sharing an instruction

When an instruction is vectorized in several nodes and one models an operand as
copyable while another (built later) uses it directly, the operand's dependency
count missed the direct def-use edge and the scheduler decremented it more times
than its count, tripping the unscheduled-deps assertion. Defer such operand dep
recomputation unconditionally via RecalcCopyableOperandDeps instead of the narrow
IsDuplicateCopyableNode gate.

Fixes #201855

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/202032


  Commit: 6ad8f3ae72a8618e60ed56d8f1af745e10c2ee84
      https://github.com/llvm/llvm-project/commit/6ad8f3ae72a8618e60ed56d8f1af745e10c2ee84
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-06 (Sat, 06 Jun 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .ci/green-dragon/lldb-windows.groovy
    M .clang-format-ignore
    M .git-blame-ignore-revs
    M .github/CODEOWNERS
    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/upload-release-artifact/action.yml
    A bolt/docs/BOLTAArch64OptimizationStatus.rst
    M bolt/docs/profiles.md
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Passes/DataflowAnalysis.h
    M bolt/include/bolt/Passes/LongJmp.h
    M bolt/include/bolt/Passes/SplitFunctions.h
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/include/bolt/Profile/DataReader.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/DataReader.cpp
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/AArch64/CMakeLists.txt
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/test/AArch64/compare-and-branch-inversion.S
    A bolt/test/AArch64/veneer-erratum-843419.s
    M bolt/test/X86/dwarf5-df-types-dup-dwp-input.test
    A bolt/test/X86/dwarf5-dwp-tsan-data-race.test
    M bolt/test/X86/nolbr.s
    M bolt/test/X86/pre-aggregated-perf.test
    M bolt/test/perf2bolt/lit.local.cfg
    A bolt/test/perf2bolt/perf_brstack.test
    M bolt/test/perf2bolt/perf_test.test
    M bolt/tools/driver/llvm-bolt.cpp
    M bolt/tools/heatmap/heatmap.cpp
    M bolt/unittests/Core/CMakeLists.txt
    M bolt/unittests/Core/MCPlusBuilder.cpp
    M bolt/unittests/Core/MemoryMaps.cpp
    M bolt/unittests/Profile/CMakeLists.txt
    A bolt/unittests/Profile/PerfScripts.cpp
    M bolt/unittests/Profile/PerfSpeEvents.cpp
    A clang-tools-extra/Maintainers.md
    R clang-tools-extra/Maintainers.rst
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/MissingEndComparisonCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/MissingEndComparisonCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.cpp
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.h
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.h
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/Headers.h
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
    M clang-tools-extra/clangd/index/Ref.h
    M clang-tools-extra/clangd/index/StdLib.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/index/SymbolID.h
    M clang-tools-extra/clangd/index/dex/Token.h
    M clang-tools-extra/clangd/index/dex/Trigram.h
    A clang-tools-extra/clangd/test/modules_config_remove_flags.test
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    A clang-tools-extra/docs/Maintainers.md
    R clang-tools-extra/docs/Maintainers.rst
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/missing-end-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-default-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/function-size.rst
    M clang-tools-extra/docs/conf.py
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/algorithm
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/std/iterator
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-custom.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison-cxx98.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/missing-end-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    A clang-tools-extra/test/clang-tidy/checkers/cert/err33-c.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/missing-std-forward.cpp
    M clang-tools-extra/test/clang-tidy/checkers/fuchsia/statically-constructed-objects.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-default-member-init/non-visible-references.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/Inputs/use-ranges/fake_std.h
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-non-visible-references-notes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-non-visible-references.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements-same-line.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/function-size-ignore-macros.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
    M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
    R clang/.clang-format-ignore
    M clang/CMakeLists.txt
    A clang/cmake/caches/generic-allow-shared-imports.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-defaults-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dist.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dylib-dist.cmake
    M clang/cmake/caches/release_cpack_pre_build_strip_lto.cmake
    M clang/docs/ClangSYCLLinker.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang-c/BuildSystem.h
    M clang/include/clang/AST/APValue.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTTypeTraits.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/BaseSubobject.h
    M clang/include/clang/AST/CharUnits.h
    M clang/include/clang/AST/DeclID.h
    M clang/include/clang/AST/DeclarationName.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/FormatString.h
    M clang/include/clang/AST/GlobalDecl.h
    A clang/include/clang/AST/MatrixUtils.h
    M clang/include/clang/AST/NestedNameSpecifier.h
    M clang/include/clang/AST/Redeclarable.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/AST/TypeOrdering.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Analysis/CallGraph.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowAnalysisContext.h
    M clang/include/clang/Analysis/FlowSensitive/Formula.h
    M clang/include/clang/Analysis/ProgramPoint.h
    M clang/include/clang/Analysis/RetainSummaryManager.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DirectoryEntry.h
    M clang/include/clang/Basic/FileEntry.h
    M clang/include/clang/Basic/FileManager.h
    R clang/include/clang/Basic/FileSystemStatCache.h
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/Module.h
    M clang/include/clang/Basic/SourceLocation.h
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypesDetails.h
    A clang/include/clang/CIR/InitAllDialects.h
    M clang/include/clang/DependencyScanning/DependencyGraph.h
    M clang/include/clang/Driver/CommonArgs.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Interpreter/Value.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Options/FlangOptions.td
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/ScopeInfo.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/Weak.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/include/clang/Tooling/Inclusions/StandardLibrary.h
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/AttrImpl.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/DynamicAllocator.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/ItaniumCXXABI.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/PrintfFormatString.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/ScanfFormatString.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/Basic/CMakeLists.txt
    M clang/lib/Basic/FileManager.cpp
    R clang/lib/Basic/FileSystemStatCache.cpp
    M clang/lib/Basic/TargetInfo.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/CIR/CMakeLists.txt
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenConstantEmitter.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDataLayout.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/lib/CIR/RegisterAllDialects.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGObjCMacConstantLiteralUtil.h
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ModulesDriver.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/AVR.cpp
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/Serenity.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Format/DefinitionBlockSeparator.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/TokenAnnotator.h
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Headers/__clang_hip_libdevice_declares.h
    M clang/lib/Interpreter/InterpreterValuePrinter.cpp
    M clang/lib/Interpreter/Value.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/HeuristicResolver.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/MemoryUnsafeCastChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/Tooling/CompilationDatabase.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/test/AST/ByteCode/c.c
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/extern.cpp
    M clang/test/AST/ByteCode/invalid.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ByteCode/records.cpp
    M clang/test/AST/HLSL/matrix_layout_attr.hlsl
    A clang/test/AST/attributed-type-dedup-address-space.c
    A clang/test/AST/attributed-type-dedup-annotate-type-args.c
    A clang/test/AST/attributed-type-dedup-annotate-type.m
    A clang/test/AST/attributed-type-dedup-nullability.m
    A clang/test/AST/attributed-type-dedup-objc-ownership.m
    A clang/test/AST/attributed-type-dedup-pcs.c
    A clang/test/AST/attributed-type-dedup-swift-attr.m
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Checkers/WebKit/memory-unsafe-cast.mm
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    A clang/test/Analysis/Checkers/WebKit/nodelete-lazy-initialize.cpp
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use-arc.mm
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    M clang/test/Analysis/bstring_UninitRead.c
    M clang/test/Analysis/cxx23-assume-attribute.cpp
    M clang/test/Analysis/initialization.c
    M clang/test/Analysis/initialization.cpp
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/binop.cpp
    M clang/test/CIR/CodeGen/bitfield-union.c
    M clang/test/CIR/CodeGen/bitfields.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    M clang/test/CIR/CodeGen/class.cpp
    M clang/test/CIR/CodeGen/cleanup-conditional.cpp
    A clang/test/CIR/CodeGen/cleanup-derived-to-base-ref.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/complex-atomic-cast.c
    M clang/test/CIR/CodeGen/complex-builtins.cpp
    M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
    M clang/test/CIR/CodeGen/complex-mul-div.cpp
    M clang/test/CIR/CodeGen/complex-unary.cpp
    A clang/test/CIR/CodeGen/compound_literal.c
    M clang/test/CIR/CodeGen/constant-inits.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/ctor.cpp
    M clang/test/CIR/CodeGen/cxx-abi-lowering-string-array.cpp
    M clang/test/CIR/CodeGen/destructors.cpp
    M clang/test/CIR/CodeGen/dumb-record.cpp
    M clang/test/CIR/CodeGen/dynamic-cast.cpp
    M clang/test/CIR/CodeGen/empty-union.c
    M clang/test/CIR/CodeGen/empty-union.cpp
    M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
    M clang/test/CIR/CodeGen/forward-decls.cpp
    A clang/test/CIR/CodeGen/func-linkage-weak-import.c
    M clang/test/CIR/CodeGen/global-dtor-union-narrowed.cpp
    A clang/test/CIR/CodeGen/global-temp-dtor.cpp
    M clang/test/CIR/CodeGen/inline-cxx-func.cpp
    A clang/test/CIR/CodeGen/inline-forward-decl.c
    M clang/test/CIR/CodeGen/long-double-inc-dec.cpp
    M clang/test/CIR/CodeGen/loop-cond-cleanup.cpp
    M clang/test/CIR/CodeGen/member-functions.cpp
    M clang/test/CIR/CodeGen/mms-bitfields.c
    M clang/test/CIR/CodeGen/multi-vtable.cpp
    M clang/test/CIR/CodeGen/no-proto-fn-ptr-global-init.c
    M clang/test/CIR/CodeGen/no-unique-address.cpp
    M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
    M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
    M clang/test/CIR/CodeGen/record-type-metadata.cpp
    M clang/test/CIR/CodeGen/record-with-padded-union.cpp
    M clang/test/CIR/CodeGen/record-zero-init-padding.c
    M clang/test/CIR/CodeGen/self-ref-temporaries.cpp
    M clang/test/CIR/CodeGen/struct.c
    A clang/test/CIR/CodeGen/switch-cleanup.cpp
    M clang/test/CIR/CodeGen/template-specialization.cpp
    M clang/test/CIR/CodeGen/three-way-cmp.cpp
    M clang/test/CIR/CodeGen/thunks.cpp
    M clang/test/CIR/CodeGen/unary.cpp
    M clang/test/CIR/CodeGen/union.c
    M clang/test/CIR/CodeGen/union.cpp
    M clang/test/CIR/CodeGen/var_arg.c
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    M clang/test/CIR/CodeGen/variable-template-specialization.cpp
    M clang/test/CIR/CodeGen/vbase.cpp
    M clang/test/CIR/CodeGen/vector-ext.cpp
    M clang/test/CIR/CodeGen/vector.cpp
    M clang/test/CIR/CodeGen/virtual-function-calls.cpp
    M clang/test/CIR/CodeGen/vtable-emission.cpp
    M clang/test/CIR/CodeGen/vtable-nyi-nonconvertible-functype.cpp
    M clang/test/CIR/CodeGen/vtt.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vlvp2intersect-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vp2intersect-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
    M clang/test/CIR/CodeGenCXX/global-refs.cpp
    M clang/test/CIR/CodeGenCXX/zero_init_bases.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
    M clang/test/CIR/CodeGenOpenACC/atomic-capture.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-update.cpp
    M clang/test/CIR/CodeGenOpenACC/atomic-write.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenCL/as_type.cl
    M clang/test/CIR/IR/array-ctor.cir
    M clang/test/CIR/IR/array-dtor.cir
    M clang/test/CIR/IR/bitfield_info.cir
    M clang/test/CIR/IR/construct-catch-param.cir
    M clang/test/CIR/IR/copy.cir
    M clang/test/CIR/IR/dynamic-cast.cir
    M clang/test/CIR/IR/func-attrs.cir
    M clang/test/CIR/IR/func.cir
    M clang/test/CIR/IR/global-init.cir
    M clang/test/CIR/IR/invalid-array-structor.cir
    M clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/IR/invalid-const-record.cir
    M clang/test/CIR/IR/invalid-construct-catch-param.cir
    M clang/test/CIR/IR/invalid-data-member.cir
    M clang/test/CIR/IR/invalid-delete-array.cir
    M clang/test/CIR/IR/invalid-dyn-cast.cir
    A clang/test/CIR/IR/invalid-lifetime.cir
    M clang/test/CIR/IR/invalid-struct.cir
    M clang/test/CIR/IR/invalid-type-info.cir
    M clang/test/CIR/IR/invalid-vtable.cir
    A clang/test/CIR/IR/lifetime.cir
    M clang/test/CIR/IR/method-attr.cir
    A clang/test/CIR/IR/openacc.cir
    M clang/test/CIR/IR/struct.cir
    M clang/test/CIR/IR/unary.cir
    M clang/test/CIR/IR/vtable-addrpt.cir
    M clang/test/CIR/IR/vtable-attr.cir
    M clang/test/CIR/IR/vtt-addrpoint.cir
    M clang/test/CIR/Lowering/binop-fp.cir
    A clang/test/CIR/Lowering/call-llvm-intrinsic.cir
    M clang/test/CIR/Lowering/cast.cir
    A clang/test/CIR/Lowering/lifetime.cir
    M clang/test/CIR/Lowering/struct.cir
    M clang/test/CIR/Lowering/vtt-addrpoint.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-int-to-record.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-return-larger.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-to-int.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
    A clang/test/CIR/Transforms/abi-lowering/coerce-vector-to-complex.cir
    M clang/test/CIR/Transforms/canonicalize-cleanup-scope.cir
    M clang/test/CIR/Transforms/canonicalize.cir
    M clang/test/CIR/Transforms/cxx-abi-lowering-attrs.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-construct-catch-invalid.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-construct-catch.cir
    M clang/test/CIR/Transforms/eh-abi-lowering-itanium.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-multi-exit.cir
    M clang/test/CIR/Transforms/flatten-cleanup-scope-simple.cir
    M clang/test/CIR/Transforms/flatten-preserve-attrs.cir
    M clang/test/CIR/Transforms/flatten-throwing-in-cleanup.cir
    M clang/test/CIR/Transforms/flatten-try-op.cir
    M clang/test/CIR/Transforms/pure-ptr-arithmetic.cir
    M clang/test/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.cpp
    A clang/test/CodeGen/AArch64/f16f32dot-intrinsics.c
    M clang/test/CodeGen/AArch64/ls64-inline-asm.c
    M clang/test/CodeGen/AArch64/neon-2velem.c
    R clang/test/CodeGen/AArch64/neon-across.c
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
    M clang/test/CodeGen/AArch64/neon/fullfp16.c
    M clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
    M clang/test/CodeGen/AArch64/neon/fused-multiply.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    A clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2_fp_int_cvtn_x2.c
    A clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2_int_fp_cvt.c
    M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/CodeGen/PowerPC/builtins-dmf-vsx-vector-float.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-build-pair-mma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-dmf.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-pair-mma.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast-less-8.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-bitcast.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/RISCV/riscv-cf-protection.c
    M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/gnu-atomic-builtins-i128-8Al.c
    M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    A clang/test/CodeGen/SystemZ/zos-abi.c
    A clang/test/CodeGen/SystemZ/zos-abi.cpp
    M clang/test/CodeGen/WebAssembly/wasm-arguments.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512vbmi2-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c
    M clang/test/CodeGen/X86/avx512vlvbmi2-builtins.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/arm-cmse-attr.c
    M clang/test/CodeGen/arm-vfp16-arguments.c
    M clang/test/CodeGen/arm-vfp16-arguments2.cpp
    M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
    M clang/test/CodeGen/attr-counted-by-for-pointers.c
    M clang/test/CodeGen/attr-counted-by-pr110385.c
    M clang/test/CodeGen/attr-counted-by.c
    A clang/test/CodeGen/builtin-masked-addrspace.c
    M clang/test/CodeGen/builtin-masked.c
    M clang/test/CodeGen/builtins-nvptx-native-half-type.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/cfi-check-fail2-nomerge.c
    M clang/test/CodeGen/cfi-icall-trap-recover-runtime.c
    M clang/test/CodeGen/glibc_ptr_align.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/lto-newpm-pipeline.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/math-libcalls-tbaa.c
    M clang/test/CodeGen/ms-intrinsics-other.c
    M clang/test/CodeGen/nofpclass.c
    M clang/test/CodeGen/pointer-arithmetic-align.c
    M clang/test/CodeGen/promoted-complex-div.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
    M clang/test/CodeGen/transparent-union-type.c
    M clang/test/CodeGen/union-tbaa1.c
    M clang/test/CodeGenCUDA/amdgpu-atomic-ops.cu
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/atomic-options.hip
    M clang/test/CodeGenCUDA/builtins-amdgcn.cu
    M clang/test/CodeGenCUDA/builtins-spirv-amdgcn.cu
    M clang/test/CodeGenCUDA/increment-index-for-thunks.cu
    M clang/test/CodeGenCUDA/managed-var.cu
    M clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/OmitRTTIComponentABI/simple-vtable-definition.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/bitfield-ir.cpp
    M clang/test/CodeGenCXX/cfi-vcall-trap-recover-runtime.cpp
    M clang/test/CodeGenCXX/dllimport.cpp
    M clang/test/CodeGenCXX/inline-then-fold-variadics.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vftables.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-return-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-single-inheritance.cpp
    M clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-call-2.cpp
    M clang/test/CodeGenCXX/ptrauth-apple-kext-indirect-virtual-dtor-call.cpp
    M clang/test/CodeGenCXX/ptrauth-global-constant-initializers.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenHIP/amdgcnspirv-uses-amdgpu-abi.cpp
    M clang/test/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    R clang/test/CodeGenHIP/offload-pgo-sections.hip
    M clang/test/CodeGenHIP/placement-new-addrspace.hip
    M clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSplat.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/OutputArguments.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/Operators/logical-not.hlsl
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads_mat.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/dot2add.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/lerp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/pow-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    A clang/test/CodeGenHLSL/cbuffer-matrix-layout-keyword.hlsl
    A clang/test/CodeGenHLSL/matrix-layout-attr-overrides-default.hlsl
    M clang/test/CodeGenHLSL/resources/Texture2D-GetDimensions.hlsl
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-call-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M clang/test/CodeGenOpenCL/atomic-ops.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-async-load-store-lds.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-cooperative-atomics.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950-read-tr.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-atomic-add.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-atomic-max.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-swmmac-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w32.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-wmma-w64.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
    M clang/test/CodeGenOpenCL/kernel-param-alignment.cl
    M clang/test/CodeGenOpenCL/kernels-have-spir-cc-by-default.cl
    M clang/test/CodeGenOpenCL/preserve_vec3.cl
    M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
    M clang/test/CodeGenSPIRV/Builtins/generic_cast_to_ptr_explicit.c
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/DebugInfo/CXX/line.cpp
    M clang/test/DebugInfo/Generic/cfi-icall-generalize-debuginfo.c
    M clang/test/DebugInfo/Generic/ubsan-function-debuginfo.c
    A clang/test/Driver/Inputs/empty.h
    A clang/test/Driver/Inputs/module.modulemap
    M clang/test/Driver/crash-diagnostics-dir-3.c
    M clang/test/Driver/crash-diagnostics-dir.c
    A clang/test/Driver/crash-diagnostics-modules.c
    A clang/test/Driver/crash-diagnostics-tar.c
    M clang/test/Driver/crash-ir-repro.cpp
    M clang/test/Driver/crash-report-clang-cl.cpp
    M clang/test/Driver/crash-report-crashfile.m
    M clang/test/Driver/crash-report-header.h
    M clang/test/Driver/crash-report-modules.m
    M clang/test/Driver/crash-report-multi-arch.c
    M clang/test/Driver/crash-report-null.test
    M clang/test/Driver/crash-report-spaces.c
    M clang/test/Driver/crash-report-with-asserts.c
    M clang/test/Driver/crash-report.cpp
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/lld-repro.c
    M clang/test/Driver/lto.c
    M clang/test/Driver/objc-constant-literals.m
    M clang/test/Driver/print-supported-extensions-riscv.c
    A clang/test/Driver/riscv-zilsd-word-align.c
    M clang/test/Frontend/spirv-target-validation.c
    M clang/test/Headers/__clang_hip_libdevice_declares.cpp
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/hip-header.hip
    M clang/test/Headers/openmp-device-functions-bool.c
    M clang/test/Headers/openmp_device_math_isnan.cpp
    M clang/test/Headers/wasm.c
    M clang/test/Modules/crash-vfs-headermaps.m
    M clang/test/Modules/crash-vfs-include-pch.m
    M clang/test/Modules/crash-vfs-ivfsoverlay.m
    M clang/test/Modules/crash-vfs-path-emptydir-entries.m
    M clang/test/Modules/crash-vfs-path-symlink-component.m
    M clang/test/Modules/crash-vfs-path-symlink-topheader.m
    M clang/test/Modules/crash-vfs-path-traversal.m
    M clang/test/Modules/crash-vfs-relative-incdir.m
    M clang/test/Modules/crash-vfs-relative-overlay.m
    M clang/test/Modules/crash-vfs-run-reproducer.m
    M clang/test/Modules/crash-vfs-umbrella-frameworks.m
    A clang/test/Modules/pr195905.cppm
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-image.c
    M clang/test/OffloadTools/clang-sycl-linker/basic.ll
    M clang/test/OffloadTools/clang-sycl-linker/link.ll
    M clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    M clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/test/OpenMP/amdgcn_target_device_vla.cpp
    A clang/test/OpenMP/amdgpu-arch-compat.c
    M clang/test/OpenMP/amdgpu_target_with_aligned_attribute.c
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/nvptx_target_pure_deleted_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_distribute.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen_as_parallel_for.cpp
    M clang/test/OpenMP/target_vtable_codegen_explicit.cpp
    M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
    A clang/test/PCH/friend-template-spec-redecl.cpp
    M clang/test/Preprocessor/riscv-target-features.c
    M clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p3_OR_sme2p3_RP___sme_AND_LP_sve2p3_OR_sme2p3_RP.c
    M clang/test/Sema/aarch64-neon-immediate-ranges/dotprod.c
    M clang/test/Sema/alloc-size.c
    M clang/test/Sema/attr-nonnull.c
    M clang/test/Sema/constexpr.c
    A clang/test/Sema/format-strings-c23.c
    M clang/test/Sema/format-strings.c
    M clang/test/Sema/static-init.c
    M clang/test/Sema/warn-lifetime-safety-lifetimebound.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCUDA/addr-of-overloaded-fn.cu
    A clang/test/SemaCUDA/addr-of-overloaded-template-fn.cu
    M clang/test/SemaCXX/attr-section.cpp
    M clang/test/SemaCXX/builtin-bit-cast.cpp
    M clang/test/SemaCXX/co_await-range-for.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/test/SemaCXX/for-range-dereference.cpp
    M clang/test/SemaCXX/typeof.cpp
    M clang/test/SemaHLSL/BuiltIns/logical-mat-operator-errors.hlsl
    M clang/test/SemaHLSL/MatrixElementOverloadResolution.hlsl
    M clang/test/SemaHLSL/Types/BuiltinMatrix/MatrixImplicitTruncCastWarnings.hlsl
    M clang/test/SemaHLSL/VectorOverloadResolution.hlsl
    M clang/test/SemaOpenACC/combined-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-no_create-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-present-ast.cpp
    M clang/test/SemaOpenACC/combined-construct-private-firstprivate-ast.cpp
    M clang/test/SemaOpenACC/compute-construct-varlist-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copy-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyin-ast.cpp
    M clang/test/SemaOpenACC/data-construct-copyout-ast.cpp
    M clang/test/SemaOpenACC/data-construct-create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-no_create-ast.cpp
    M clang/test/SemaOpenACC/data-construct-present-ast.cpp
    M clang/test/SemaOpenACC/sub-array-ast.cpp
    M clang/test/SemaTemplate/alias-templates.cpp
    M clang/test/SemaTemplate/concepts-using-decl.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/ctad.cpp
    M clang/tools/cir-lsp-server/CMakeLists.txt
    M clang/tools/cir-lsp-server/cir-lsp-server.cpp
    M clang/tools/cir-opt/CMakeLists.txt
    M clang/tools/cir-opt/cir-opt.cpp
    M clang/tools/cir-translate/CMakeLists.txt
    M clang/tools/cir-translate/cir-translate.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/tools/clang-nvlink-wrapper/CMakeLists.txt
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp
    M clang/tools/clang-sycl-linker/CMakeLists.txt
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
    M clang/tools/clang-sycl-linker/SYCLLinkOpts.td
    M clang/tools/driver/driver.cpp
    M clang/tools/libclang/BuildSystem.cpp
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/Indexing.cpp
    M clang/tools/libclang/libclang.map
    M clang/unittests/AST/ByteCode/CMakeLists.txt
    A clang/unittests/AST/ByteCode/Pointer.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Basic/FileManagerTest.cpp
    M clang/unittests/CIR/PointerLikeTest.cpp
    M clang/unittests/CIR/RecordTypeMetadataTest.cpp
    M clang/unittests/CIR/UnionTypeSizeTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Format/DefinitionBlockSeparatorTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestObjC.cpp
    M clang/unittests/Format/FormatTestVerilog.cpp
    M clang/unittests/Frontend/CompilerInstanceTest.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp
    M clang/unittests/libclang/LibclangTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/perf-training/lit.site.cfg.in
    M compiler-rt/CMakeLists.txt
    M compiler-rt/cmake/Modules/AddCompilerRT.cmake
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/asan/asan_interceptors.cpp
    M compiler-rt/lib/asan/asan_malloc_linux.cpp
    M compiler-rt/lib/asan/asan_malloc_mac.cpp
    M compiler-rt/lib/asan/asan_new_delete.cpp
    M compiler-rt/lib/asan/tests/asan_noinst_test.cpp
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    A compiler-rt/lib/builtins/cpu_model/riscv.h
    A compiler-rt/lib/builtins/cpu_model/riscv/hwprobe.inc
    A compiler-rt/lib/builtins/cpu_model/riscv/unimplemented.inc
    M compiler-rt/lib/builtins/ppc/init_ifuncs.c
    M compiler-rt/lib/orc/record_section_tracker.h
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_win.cpp
    M compiler-rt/lib/sanitizer_common/symbolizer/sanitizer_wrappers.cpp
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/lib/scudo/standalone/mem_map_linux.cpp
    M compiler-rt/lib/scudo/standalone/report_linux.cpp
    M compiler-rt/lib/scudo/standalone/report_linux.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/primary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp
    M compiler-rt/test/fuzzer/OutOfProcessFuzzTarget.cpp
    M compiler-rt/test/hwasan/TestCases/try-catch.cpp
    M compiler-rt/test/sanitizer_common/TestCases/Linux/signal_line.cpp
    M compiler-rt/test/tsan/many_held_mutex.cpp
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/DebuggerControllerBase.py
    A cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/DextIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/LocIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/__init__.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/__init__.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/Inputs/header.h
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/lit.local.cfg
    M cross-project-tests/dtlto/dtlto-cache.test
    M cross-project-tests/dtlto/savetemps-lock.test
    M flang-rt/CMakeLists.txt
    M flang-rt/lib/runtime/edit-input.cpp
    M flang-rt/lib/runtime/io-api-server.cpp
    M flang-rt/lib/runtime/io-stmt.cpp
    M flang-rt/test/CMakeLists.txt
    M flang-rt/unittests/Runtime/ListInputTest.cpp
    M flang-rt/unittests/Runtime/Namelist.cpp
    M flang/docs/Extensions.md
    M flang/docs/FortranStandardsSupport.md
    A flang/docs/MeetingNotes/2026/2026-06-03.md
    M flang/docs/OpenACC-extensions.md
    M flang/docs/ParallelMultiImageFortranRuntime.md
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/include/flang/Lower/IterationSpace.h
    M flang/include/flang/Lower/Support/PrivateReductionUtils.h
    M flang/include/flang/Lower/Support/Utils.h
    M flang/include/flang/Optimizer/HLFIR/Passes.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/include/flang/Support/Fortran.h
    M flang/include/flang/Support/LangOptions.def
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/Atomic.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Lower/Support/PrivateReductionUtils.cpp
    M flang/lib/Lower/Support/Utils.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    A flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/CMakeLists.txt
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-do-forall.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    R flang/lib/Semantics/check-omp-metadirective.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    A flang/lib/Semantics/check-omp-variant.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/openmp-utils.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Support/Fortran-features.cpp
    A flang/test/Driver/frelaxed-c-loc-checks.f90
    A flang/test/Driver/function-sections.f90
    M flang/test/Driver/include-omp-header.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/boxproc.fir
    A flang/test/HLFIR/opt-bufferization-dealloc-conflict.fir
    M flang/test/HLFIR/opt-bufferization-eval_in_mem.fir
    A flang/test/HLFIR/separate-allocatable-assign.fir
    M flang/test/Integration/OpenMP/atomic-capture-release.f90
    M flang/test/Integration/OpenMP/atomic-compare.f90
    M flang/test/Integration/OpenMP/workshare-axpy.f90
    A flang/test/Integration/function-sections.f90
    M flang/test/Lower/HLFIR/elemental-result-length.f90
    M flang/test/Lower/HLFIR/structure-constructor.f90
    M flang/test/Lower/Intrinsics/show_descriptor.f90
    M flang/test/Lower/OpenACC/acc-cache.f90
    A flang/test/Lower/OpenACC/acc-module-definition-multi-name.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    A flang/test/Lower/OpenACC/acc-routine-multi-name.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-distribute-parallel-do-simd-private-adjustable-array.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-distribute-private-adjustable-array.f90
    A flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-nested-distribute-private-adjustable-array.f90
    R flang/test/Lower/OpenMP/Todo/begin-metadirective.f90
    R flang/test/Lower/OpenMP/Todo/dyn-groupprivate-clause.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-declarative.f90
    R flang/test/Lower/OpenMP/Todo/metadirective-exec.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-loop.f90
    R flang/test/Lower/OpenMP/Todo/metadirective-spec.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-structured-trait-property.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-target-device.f90
    M flang/test/Lower/OpenMP/atomic-compare.f90
    M flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/distribute-simd.f90
    A flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
    M flang/test/Lower/OpenMP/linear_modifier.f90
    M flang/test/Lower/OpenMP/loop-pointer-variable.f90
    A flang/test/Lower/OpenMP/metadirective-construct.f90
    A flang/test/Lower/OpenMP/metadirective-device-arch.f90
    A flang/test/Lower/OpenMP/metadirective-device-isa.f90
    A flang/test/Lower/OpenMP/metadirective-device-kind.f90
    A flang/test/Lower/OpenMP/metadirective-implementation.f90
    A flang/test/Lower/OpenMP/metadirective-nothing.f90
    A flang/test/Lower/OpenMP/metadirective-user.f90
    M flang/test/Lower/OpenMP/ordered-simd.f90
    M flang/test/Lower/OpenMP/private-derived-type.f90
    M flang/test/Lower/OpenMP/wsloop-simd.f90
    M flang/test/Lower/call-copy-in-out.f90
    A flang/test/Lower/component-wise-init.f90
    M flang/test/Lower/default-initialization.f90
    M flang/test/Lower/derived-type-finalization.f90
    M flang/test/Lower/derived-type-temp.f90
    M flang/test/Lower/forall/forall-allocatable-2.f90
    A flang/test/Lower/intrinsic-module-array-constant.f90
    M flang/test/Lower/pointer-default-init.f90
    A flang/test/Lower/typeof-classof.f90
    M flang/test/Lower/volatile1.f90
    M flang/test/Parser/OpenMP/atomic-unparse.f90
    M flang/test/Parser/OpenMP/declare_target-device_type.f90
    M flang/test/Parser/OpenMP/groupprivate.f90
    A flang/test/Parser/acc-routine-empty-parens.f90
    M flang/test/Parser/acc-unparse.f90
    A flang/test/Parser/typeof-classof-attrs.f90
    A flang/test/Semantics/Inputs/device_modfile01_a.mod
    A flang/test/Semantics/OpenACC/acc-default-none-scalars-strict.f90
    M flang/test/Semantics/OpenACC/acc-default-none-scalars.f90
    M flang/test/Semantics/OpenACC/acc-reduction-validity.f90
    A flang/test/Semantics/OpenACC/acc-routine-multi-name-disabled.f90
    A flang/test/Semantics/OpenACC/acc-routine-multi-name.f90
    A flang/test/Semantics/OpenMP/declare-target-flags.f90
    A flang/test/Semantics/OpenMP/declare-target-modfile.f90
    A flang/test/Semantics/OpenMP/declare-variant-match.f90
    M flang/test/Semantics/OpenMP/declare-variant.f90
    M flang/test/Semantics/OpenMP/dump-requires-details.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    M flang/test/Semantics/OpenMP/metadirective-common.f90
    M flang/test/Semantics/OpenMP/metadirective-user.f90
    M flang/test/Semantics/OpenMP/private03.f90
    M flang/test/Semantics/OpenMP/requires-modfile.f90
    M flang/test/Semantics/OpenMP/simd-aligned.f90
    A flang/test/Semantics/cuf-constant-generic-unified.cuf
    A flang/test/Semantics/cuf-missing-intrinsic-modules.cuf
    A flang/test/Semantics/device-modfile01.f90
    A flang/test/Semantics/device-modfile02.f90
    M flang/test/Semantics/entry01.f90
    M flang/test/Semantics/reduce.cuf
    M flang/test/Semantics/resolve124.f90
    A flang/test/Semantics/typeof-classof-errors.f90
    A flang/test/Semantics/typeof-classof.f90
    A flang/test/Transforms/debug-char-type-2.fir
    M flang/test/lit.cfg.py
    M libc/cmake/modules/CheckCompilerFeatures.cmake
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCFlagRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    A libc/cmake/modules/compiler_features/check_stdc_fenv_access.cpp
    M libc/config/config.json
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/CMakeLists.txt
    M libc/docs/headers/index.rst
    M libc/docs/porting.rst
    M libc/hdr/CMakeLists.txt
    A libc/hdr/sys_ptrace_macros.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_in6_addr.h
    A libc/hdr/types/struct_udphdr.h
    M libc/include/CMakeLists.txt
    M libc/include/arpa/inet.yaml
    M libc/include/inttypes.yaml
    M libc/include/limits.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF-disable.h
    M libc/include/llvm-libc-macros/_LIBC_MODULAR_FORMAT_PRINTF.h
    A libc/include/llvm-libc-macros/inet-address-macros.h
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/include/llvm-libc-macros/linux/unistd-macros.h
    M libc/include/llvm-libc-macros/math-macros.h
    M libc/include/llvm-libc-macros/netinet-in-macros.h
    A libc/include/llvm-libc-macros/sys-param-macros.h
    A libc/include/llvm-libc-macros/sys-ptrace-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_in6_addr.h
    M libc/include/llvm-libc-types/struct_timespec.h
    A libc/include/llvm-libc-types/struct_udphdr.h
    M libc/include/llvm-libc-types/suseconds_t.h
    M libc/include/llvm-libc-types/time_t.h
    R libc/include/llvm-libc-types/time_t_32.h
    A libc/include/llvm-libc-types/u_char.h
    A libc/include/llvm-libc-types/u_int32_t.h
    A libc/include/llvm-libc-types/uint.h
    M libc/include/math.yaml
    M libc/include/netinet/in.yaml
    A libc/include/netinet/tcp.yaml
    A libc/include/netinet/udp.yaml
    M libc/include/stdio.yaml
    A libc/include/sys/param.yaml
    A libc/include/sys/ptrace.yaml
    M libc/include/sys/types.yaml
    M libc/include/unistd.yaml
    M libc/include/wchar.yaml
    M libc/src/__support/CPP/cstddef.h
    M libc/src/__support/CPP/tuple.h
    M libc/src/__support/FPUtil/FEnvImpl.h
    M libc/src/__support/FPUtil/bfloat16.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/File/linux/file.cpp
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/syscall_wrappers/ptrace.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/utimensat.h
    M libc/src/__support/block.h
    M libc/src/__support/freelist_heap.h
    M libc/src/__support/freestore.h
    M libc/src/__support/math/acos.h
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/asin_utils.h
    M libc/src/__support/math/asinpi.h
    M libc/src/__support/math/atan2f128.h
    M libc/src/__support/math/atan_utils.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/math/cos.h
    M libc/src/__support/math/exp.h
    M libc/src/__support/math/exp10.h
    M libc/src/__support/math/exp2.h
    M libc/src/__support/math/expm1.h
    M libc/src/__support/math/expxf16_utils.h
    M libc/src/__support/math/hypotf16.h
    M libc/src/__support/math/log.h
    M libc/src/__support/math/log10.h
    M libc/src/__support/math/log1p.h
    M libc/src/__support/math/log2.h
    M libc/src/__support/math/log_range_reduction.h
    M libc/src/__support/math/range_reduction_double_common.h
    M libc/src/__support/math/sin.h
    M libc/src/__support/math/sincos.h
    M libc/src/__support/math/sincos_eval.h
    M libc/src/__support/math/tan.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/futex_utils.h
    M libc/src/__support/threads/linux/futex_word.h
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/__support/threads/raw_rwlock.h
    M libc/src/__support/time/linux/clock_gettime.cpp
    M libc/src/__support/time/linux/clock_settime.cpp
    M libc/src/fcntl/linux/CMakeLists.txt
    M libc/src/fcntl/linux/creat.cpp
    M libc/src/inttypes/CMakeLists.txt
    A libc/src/inttypes/wcstoimax.cpp
    A libc/src/inttypes/wcstoimax.h
    A libc/src/inttypes/wcstoumax.cpp
    A libc/src/inttypes/wcstoumax.h
    M libc/src/poll/linux/poll.cpp
    M libc/src/sched/linux/sched_rr_get_interval.cpp
    M libc/src/spawn/linux/CMakeLists.txt
    M libc/src/spawn/linux/posix_spawn.cpp
    M libc/src/stdlib/qsort_data.h
    M libc/src/sys/CMakeLists.txt
    A libc/src/sys/ptrace/CMakeLists.txt
    A libc/src/sys/ptrace/linux/CMakeLists.txt
    A libc/src/sys/ptrace/linux/ptrace.cpp
    A libc/src/sys/ptrace/ptrace.h
    M libc/src/sys/select/linux/select.cpp
    M libc/src/sys/time/linux/getitimer.cpp
    M libc/src/sys/time/linux/setitimer.cpp
    M libc/src/sys/time/linux/utimes.cpp
    M libc/src/time/linux/nanosleep.cpp
    M libc/src/time/time_constants.h
    M libc/src/time/time_utils.cpp
    M libc/src/unistd/linux/alarm.cpp
    M libc/src/unistd/linux/sysconf.cpp
    M libc/src/wchar/CMakeLists.txt
    A libc/src/wchar/swprintf.cpp
    A libc/src/wchar/swprintf.h
    M libc/src/wctype/CMakeLists.txt
    M libc/src/wctype/wctype.cpp
    R libc/src/wctype/wctype.h
    A libc/src/wctype/wctype_impl.h
    M libc/test/include/CMakeLists.txt
    A libc/test/include/unistd_macros_test.cpp
    M libc/test/integration/src/sys/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/linux/CMakeLists.txt
    A libc/test/integration/src/sys/ptrace/linux/ptrace_test.cpp
    M libc/test/integration/src/threads/cnd_test.cpp
    M libc/test/src/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/CPP/limits_test.cpp
    M libc/test/src/__support/FPUtil/bfloat16_test.cpp
    M libc/test/src/__support/FPUtil/comparison_operations_test.cpp
    M libc/test/src/__support/FPUtil/dyadic_float_test.cpp
    M libc/test/src/__support/FPUtil/fpbits_test.cpp
    M libc/test/src/__support/block_test.cpp
    M libc/test/src/__support/freelist_heap_test.cpp
    M libc/test/src/__support/time/linux/timeout_test.cpp
    M libc/test/src/inttypes/CMakeLists.txt
    A libc/test/src/inttypes/wcstoimax_test.cpp
    A libc/test/src/inttypes/wcstoumax_test.cpp
    M libc/test/src/math/acos_test.cpp
    M libc/test/src/math/asin_test.cpp
    M libc/test/src/math/atan_test.cpp
    M libc/test/src/math/cbrt_test.cpp
    M libc/test/src/math/exp10_test.cpp
    M libc/test/src/math/exp2_test.cpp
    M libc/test/src/math/exp_test.cpp
    M libc/test/src/math/expm1_test.cpp
    M libc/test/src/math/sin_test.cpp
    M libc/test/src/math/sincos_test.cpp
    A libc/test/src/netinet/CMakeLists.txt
    A libc/test/src/netinet/in_test.cpp
    A libc/test/src/netinet/udp_test.cpp
    M libc/test/src/sys/time/utimes_test.cpp
    M libc/test/src/time/asctime_test.cpp
    M libc/test/src/time/gmtime_r_test.cpp
    M libc/test/src/time/gmtime_test.cpp
    M libc/test/src/time/mktime_test.cpp
    M libc/test/src/unistd/sysconf_test.cpp
    M libc/test/src/wchar/CMakeLists.txt
    A libc/test/src/wchar/swprintf_test.cpp
    M libc/test/src/wctype/iswctype_test.cpp
    M libc/test/src/wctype/wctype_test.cpp
    M libc/utils/docgen/arpa/inet.yaml
    A libc/utils/docgen/netinet/tcp.yaml
    M libclc/CMakeLists.txt
    M libclc/README.md
    M libclc/test/conversion/convert.cl
    M libclc/test/geometric/cross.cl
    M libclc/test/integer/add_sat.cl
    M libclc/test/integer/sub_sat.cl
    M libclc/test/math/cos.cl
    M libclc/test/math/fabs.cl
    M libclc/test/math/rsqrt.cl
    M libclc/test/misc/as_type.cl
    M libclc/test/update_libclc_tests.py
    M libclc/test/work-item/get_group_id.cl
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/docs/Status/Cxx2cPapers.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/support.h
    M libcxx/include/__chrono/duration.h
    M libcxx/include/__config
    M libcxx/include/__expected/expected.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__iterator/bounded_iter.h
    M libcxx/include/__iterator/capacity_aware_iterator.h
    M libcxx/include/__iterator/erase_if_container.h
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/messages.h
    M libcxx/include/__locale_dir/money.h
    M libcxx/include/__locale_dir/wstring_convert.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/__mutex/unique_lock.h
    M libcxx/include/__node_handle
    A libcxx/include/__ranges/concat_view.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/integer_traits.h
    M libcxx/include/__type_traits/integral_constant.h
    M libcxx/include/__type_traits/is_constant_evaluated.h
    M libcxx/include/__type_traits/is_within_lifetime.h
    M libcxx/include/__type_traits/make_transparent.h
    M libcxx/include/__utility/default_three_way_comparator.h
    M libcxx/include/__utility/lazy_synth_three_way_comparator.h
    M libcxx/include/__utility/try_key_extraction.h
    M libcxx/include/algorithm
    M libcxx/include/any
    M libcxx/include/array
    M libcxx/include/atomic
    M libcxx/include/barrier
    M libcxx/include/bit
    M libcxx/include/bitset
    M libcxx/include/charconv
    M libcxx/include/chrono
    M libcxx/include/cmath
    M libcxx/include/codecvt
    M libcxx/include/compare
    M libcxx/include/complex
    M libcxx/include/concepts
    M libcxx/include/condition_variable
    M libcxx/include/coroutine
    M libcxx/include/cwchar
    M libcxx/include/deque
    M libcxx/include/exception
    M libcxx/include/execution
    M libcxx/include/experimental/iterator
    M libcxx/include/experimental/memory
    M libcxx/include/experimental/propagate_const
    M libcxx/include/experimental/simd
    M libcxx/include/experimental/type_traits
    M libcxx/include/experimental/utility
    M libcxx/include/ext/hash_map
    M libcxx/include/ext/hash_set
    M libcxx/include/filesystem
    M libcxx/include/format
    M libcxx/include/forward_list
    M libcxx/include/fstream
    M libcxx/include/functional
    M libcxx/include/future
    M libcxx/include/initializer_list
    M libcxx/include/iomanip
    M libcxx/include/ios
    M libcxx/include/istream
    M libcxx/include/iterator
    M libcxx/include/latch
    M libcxx/include/limits
    M libcxx/include/list
    M libcxx/include/locale
    M libcxx/include/map
    M libcxx/include/memory
    M libcxx/include/memory_resource
    M libcxx/include/module.modulemap.in
    M libcxx/include/mutex
    M libcxx/include/new
    M libcxx/include/numbers
    M libcxx/include/numeric
    M libcxx/include/optional
    M libcxx/include/ostream
    M libcxx/include/queue
    M libcxx/include/random
    M libcxx/include/ranges
    M libcxx/include/ratio
    M libcxx/include/regex
    M libcxx/include/scoped_allocator
    M libcxx/include/semaphore
    M libcxx/include/set
    M libcxx/include/shared_mutex
    M libcxx/include/span
    M libcxx/include/sstream
    M libcxx/include/stack
    M libcxx/include/stdexcept
    M libcxx/include/stop_token
    M libcxx/include/streambuf
    M libcxx/include/string
    M libcxx/include/string_view
    M libcxx/include/system_error
    M libcxx/include/thread
    M libcxx/include/tuple
    M libcxx/include/typeindex
    M libcxx/include/typeinfo
    M libcxx/include/unordered_map
    M libcxx/include/unordered_set
    M libcxx/include/utility
    M libcxx/include/valarray
    M libcxx/include/variant
    M libcxx/include/vector
    M libcxx/include/version
    M libcxx/lib/abi/CHANGELOG.TXT
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android23.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/modules/std.cppm.in
    M libcxx/modules/std/ranges.inc
    M libcxx/src/ios.cpp
    M libcxx/src/memory_resource.cpp
    M libcxx/test/libcxx/atomics/builtin_clear_padding.pass.cpp
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
    A libcxx/test/libcxx/localization/locales/locale.convenience/conversions/conversions.string/pragma_suppress.compile.pass.cpp
    M libcxx/test/libcxx/localization/locales/use_facet.abort.pass.cpp
    A libcxx/test/libcxx/localization/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.concat/iterator.valueless_by_exception.pass.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.concat/nodiscard.verify.cpp
    M libcxx/test/libcxx/thread/nodiscard.verify.cpp
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    A libcxx/test/libcxx/type_traits/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/optional/nodiscard.iterator.verify.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.associative.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/associative/map/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/map/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/at.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/empty.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_rv_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_tuple.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/max_size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct_const.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/map/map.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/key_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/value_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.value_compare/invoke.pass.cpp
    M libcxx/test/std/containers/associative/map/types.pass.cpp
    M libcxx/test/std/containers/container.node/node_handle.pass.cpp
    M libcxx/test/std/containers/exception_safety_helpers.h
    M libcxx/test/std/containers/insert_range_maps_sets.h
    M libcxx/test/std/containers/sequences/forwardlist/exception_safety.pass.cpp
    M libcxx/test/std/containers/views/mdspan/extents/index_type.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_bytes.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.pass.cpp
    R libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.verify.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/map.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/ranges.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturating_cast.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/adaptor.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/begin.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/constraints.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctad.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctor.default.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/ctor.views.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/end.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/arithmetic.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/compare.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/ctor.default.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/ctor.other.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/decrement.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/deref.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/increment.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/iter_move.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/iter_swap.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/member_types.compile.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/iterator/subscript.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/size.pass.cpp
    A libcxx/test/std/ranges/range.adaptors/range.concat/types.h
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
    M libcxx/test/std/utilities/function.objects/func.wrap/func.wrap.func/derive_from.pass.cpp
    M libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.weak/util.smartptr.weak.const/pr40459.pass.cpp
    M libcxx/test/std/utilities/meta/meta.const.eval/is_within_lifetime.compile.pass.cpp
    M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.verify.cpp
    A libcxx/test/support/CopyConstructible.h
    M libcxx/test/support/is_transparent.h
    M libcxx/test/support/nasty_string.h
    M libcxx/test/support/private_constructor.h
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/generate_libcxx_cppm_in.py
    M libcxx/utils/libcxx/header_information.py
    M libcxx/utils/libcxx/test/modules.py
    M libsycl/docs/index.rst
    A libsycl/include/sycl/__impl/detail/get_device_kernel_info.hpp
    A libsycl/include/sycl/__impl/detail/kernel_arg_helpers.hpp
    A libsycl/include/sycl/__impl/detail/unified_range_view.hpp
    A libsycl/include/sycl/__impl/index_space_classes.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    A libsycl/include/sycl/__spirv/spirv_vars.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/detail/global_objects.cpp
    M libsycl/src/detail/program_manager.cpp
    M libsycl/src/detail/program_manager.hpp
    M libsycl/src/detail/queue_impl.cpp
    M libsycl/src/detail/queue_impl.hpp
    M libsycl/src/queue.cpp
    A libsycl/test/basic/get_backend.cpp
    A libsycl/test/basic/parallel_for_indexers.cpp
    A libsycl/test/basic/queue_parallel_for_generic.cpp
    A libsycl/test/basic/submit_fn_ptr.cpp
    A libsycl/test/basic/wrapped_usm_pointers.cpp
    M lld/COFF/Chunks.h
    M lld/COFF/LTO.cpp
    M lld/ELF/LTO.cpp
    M lld/MachO/ConcatOutputSection.h
    M lld/MachO/LTO.cpp
    M lld/test/ELF/dtlto/timetrace.test
    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 lld/test/MachO/icf-safe-thunks.ll
    R lld/test/wasm/Inputs/custom.ll
    A lld/test/wasm/Inputs/custom.s
    R lld/test/wasm/Inputs/explicit-section.ll
    A lld/test/wasm/Inputs/explicit-section.s
    R lld/test/wasm/Inputs/locals-duplicate1.ll
    A lld/test/wasm/Inputs/locals-duplicate1.s
    R lld/test/wasm/Inputs/locals-duplicate2.ll
    A lld/test/wasm/Inputs/locals-duplicate2.s
    R lld/test/wasm/Inputs/many-funcs.ll
    A lld/test/wasm/Inputs/many-funcs.s
    R lld/test/wasm/Inputs/tag-section1.ll
    A lld/test/wasm/Inputs/tag-section1.s
    R lld/test/wasm/Inputs/tag-section2.ll
    A lld/test/wasm/Inputs/tag-section2.s
    R lld/test/wasm/custom-section-name.ll
    A lld/test/wasm/custom-section-name.s
    R lld/test/wasm/custom-sections.ll
    A lld/test/wasm/custom-sections.s
    R lld/test/wasm/export-all.ll
    M lld/test/wasm/export-all.s
    R lld/test/wasm/function-imports-first.ll
    A lld/test/wasm/function-imports-first.s
    R lld/test/wasm/gc-sections.ll
    A lld/test/wasm/gc-sections.s
    R lld/test/wasm/init-fini-no-gc.ll
    A lld/test/wasm/init-fini-no-gc.s
    R lld/test/wasm/local-symbols.ll
    A lld/test/wasm/local-symbols.s
    M lld/test/wasm/locals-duplicate.test
    R lld/test/wasm/many-functions.ll
    A lld/test/wasm/many-functions.s
    M lld/test/wasm/section-symbol-relocs.yaml
    R lld/test/wasm/signature-mismatch-export.ll
    A lld/test/wasm/signature-mismatch-export.s
    R lld/test/wasm/signature-mismatch-unknown.ll
    A lld/test/wasm/signature-mismatch-unknown.s
    R lld/test/wasm/signature-mismatch-weak.ll
    A lld/test/wasm/signature-mismatch-weak.s
    R lld/test/wasm/startstop.ll
    A lld/test/wasm/startstop.s
    R lld/test/wasm/tag-section.ll
    A lld/test/wasm/tag-section.s
    R lld/test/wasm/undefined.ll
    A lld/test/wasm/undefined.s
    R lld/test/wasm/visibility-hidden.ll
    A lld/test/wasm/visibility-hidden.s
    M lld/wasm/Config.h
    M lld/wasm/InputFiles.cpp
    M lld/wasm/SyntheticSections.h
    M lld/wasm/Writer.cpp
    M lldb/CMakeLists.txt
    M lldb/bindings/python/CMakeLists.txt
    M lldb/cmake/caches/Apple-lldb-macOS.cmake
    M lldb/cmake/modules/AddLLDB.cmake
    A lldb/cmake/modules/LLDBConcatFiles.cmake
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/docs/conf.py
    M lldb/docs/dil-expr-lang.ebnf
    A lldb/docs/index.md
    R lldb/docs/index.rst
    A lldb/docs/python_api.md
    R lldb/docs/python_api.rst
    A lldb/docs/python_api_enums.md
    R lldb/docs/python_api_enums.rst
    A lldb/docs/python_extensions.md
    R lldb/docs/python_extensions.rst
    A lldb/docs/resources/build.md
    R lldb/docs/resources/build.rst
    A lldb/docs/resources/caveats.md
    R lldb/docs/resources/caveats.rst
    A lldb/docs/resources/contributing.md
    R lldb/docs/resources/contributing.rst
    A lldb/docs/resources/dataformatters.md
    R lldb/docs/resources/dataformatters.rst
    A lldb/docs/resources/debugging.md
    R lldb/docs/resources/debugging.rst
    A lldb/docs/resources/extensions.md
    R lldb/docs/resources/extensions.rst
    A lldb/docs/resources/formatterbytecode.md
    R lldb/docs/resources/formatterbytecode.rst
    A lldb/docs/resources/fuzzing.md
    R lldb/docs/resources/fuzzing.rst
    M lldb/docs/resources/lldbgdbremote.md
    A lldb/docs/resources/overview.md
    R lldb/docs/resources/overview.rst
    A lldb/docs/resources/projects.md
    R lldb/docs/resources/projects.rst
    A lldb/docs/resources/qemu-testing.md
    R lldb/docs/resources/qemu-testing.rst
    A lldb/docs/resources/sbapi.md
    R lldb/docs/resources/sbapi.rst
    A lldb/docs/resources/test.md
    R lldb/docs/resources/test.rst
    A lldb/docs/use/formatting.md
    R lldb/docs/use/formatting.rst
    A lldb/docs/use/intel_pt.md
    R lldb/docs/use/intel_pt.rst
    A lldb/docs/use/links.md
    R lldb/docs/use/links.rst
    A lldb/docs/use/map.md
    R lldb/docs/use/map.rst
    A lldb/docs/use/ondemand.md
    R lldb/docs/use/ondemand.rst
    A lldb/docs/use/python-reference.md
    R lldb/docs/use/python-reference.rst
    A lldb/docs/use/remote.md
    R lldb/docs/use/remote.rst
    A lldb/docs/use/repeat-commands.md
    R lldb/docs/use/repeat-commands.rst
    A lldb/docs/use/symbolfilejson.md
    R lldb/docs/use/symbolfilejson.rst
    A lldb/docs/use/symbolication.md
    R lldb/docs/use/symbolication.rst
    A lldb/docs/use/symbols.md
    R lldb/docs/use/symbols.rst
    A lldb/docs/use/troubleshooting.md
    R lldb/docs/use/troubleshooting.rst
    A lldb/docs/use/tutorial.md
    R lldb/docs/use/tutorial.rst
    A lldb/docs/use/variable.md
    R lldb/docs/use/variable.rst
    M lldb/include/lldb/Core/Highlighter.h
    M lldb/include/lldb/Core/Mangled.h
    M lldb/include/lldb/Host/Config.h.cmake
    M lldb/include/lldb/Host/HostThread.h
    M lldb/include/lldb/Host/MainLoopBase.h
    A lldb/include/lldb/Host/ScriptInterpreterRuntimeLoader.h
    M lldb/include/lldb/Host/common/NativeProcessProtocol.h
    R lldb/include/lldb/Host/windows/PythonPathSetup/PythonPathSetup.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/include/lldb/Symbol/Type.h
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/include/lldb/Target/Memory.h
    M lldb/include/lldb/Target/Process.h
    M lldb/include/lldb/Utility/AcceleratorGDBRemotePackets.h
    M lldb/include/lldb/Utility/ConstString.h
    M lldb/include/lldb/Utility/FileSpec.h
    M lldb/include/lldb/Utility/StringExtractorGDBRemote.h
    M lldb/include/lldb/Utility/UUID.h
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/include/module.modulemap
    M lldb/packages/Python/lldbsuite/support/gmodules.py
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/packages/Python/lldbsuite/test/lldbpexpect.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    A lldb/scripts/extract-dynamic-script-interpreter-exports.py
    M lldb/source/API/CMakeLists.txt
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/source/Commands/CommandObjectSettings.cpp
    M lldb/source/Core/Mangled.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Host/CMakeLists.txt
    M lldb/source/Host/common/MainLoopBase.cpp
    A lldb/source/Host/common/PythonRuntimeLoader.cpp
    A lldb/source/Host/common/PythonRuntimeLoaderInternal.h
    A lldb/source/Host/common/ScriptInterpreterRuntimeLoader.cpp
    A lldb/source/Host/linux/PythonRuntimeLoaderLinux.cpp
    A lldb/source/Host/macosx/PythonRuntimeLoaderDarwin.cpp
    M lldb/source/Host/windows/ConnectionGenericFileWindows.cpp
    M lldb/source/Host/windows/PipeWindows.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    R lldb/source/Host/windows/PythonPathSetup/CMakeLists.txt
    R lldb/source/Host/windows/PythonPathSetup/PythonPathSetup.cpp
    A lldb/source/Host/windows/PythonRuntimeLoaderWindows.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/DynamicLoader/Windows-DYLD/CMakeLists.txt
    M lldb/source/Plugins/DynamicLoader/Windows-DYLD/DynamicLoaderWindowsDYLD.cpp
    A lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.cpp
    A lldb/source/Plugins/DynamicLoader/Windows-DYLD/MSVCRTCFrameRecognizer.h
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
    M lldb/source/Plugins/Process/Utility/CMakeLists.txt
    A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIXDynamic_riscv32.cpp
    A lldb/source/Plugins/Process/Utility/RegisterInfoPOSIXDynamic_riscv32.h
    M lldb/source/Plugins/Process/Utility/RegisterInfos_riscv32.h
    M lldb/source/Plugins/Process/Utility/lldb-riscv-register-enums.h
    M lldb/source/Plugins/Process/Windows/Common/CMakeLists.txt
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
    M lldb/source/Plugins/Process/Windows/Common/IDebugDelegate.h
    A lldb/source/Plugins/Process/Windows/Common/IOHandlerProcessSTDIOWindows.cpp
    A lldb/source/Plugins/Process/Windows/Common/IOHandlerProcessSTDIOWindows.h
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.h
    R lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.cpp
    R lldb/source/Plugins/Process/Windows/Common/MSVCRTCFrameRecognizer.h
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
    M lldb/source/Plugins/Process/Windows/Common/NativeThreadWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/Windows/Common/arm/RegisterContextWindows_arm.cpp
    M lldb/source/Plugins/Process/Windows/Common/x64/RegisterContextWindows_x64.cpp
    M lldb/source/Plugins/Process/Windows/Common/x86/RegisterContextWindows_x86.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.cpp
    M lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_riscv32.h
    M lldb/source/Plugins/Process/elf-core/RegisterUtilities.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
    M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/lldb-python.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Target/Memory.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Utility/AcceleratorGDBRemotePackets.cpp
    M lldb/source/Utility/RISCV_DWARF_Registers.h
    M lldb/source/Utility/StringExtractorGDBRemote.cpp
    M lldb/source/ValueObject/DILAST.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/test/API/accelerator/mock/TestMockAcceleratorPlugin.py
    M lldb/test/API/commands/apropos/formatting/TestAproposFormatting.py
    M lldb/test/API/commands/expression/call-throws/TestCallThatThrows.py
    M lldb/test/API/commands/expression/import-std-module/shared_ptr/TestSharedPtrFromStdModule.py
    M lldb/test/API/commands/expression/import-std-module/weak_ptr/TestWeakPtrFromStdModule.py
    M lldb/test/API/commands/expression/multiline-completion/TestMultilineCompletion.py
    M lldb/test/API/commands/expression/multiline-navigation/TestMultilineNavigation.py
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/TestFrameVarDILAssign.py
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/TestFrameVarDILCompositeAssign.py
    A lldb/test/API/commands/frame/var-dil/expr/Assignment/main.cpp
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/TestFrameVarDILBitwise.py
    A lldb/test/API/commands/frame/var-dil/expr/Bitwise/main.cpp
    M lldb/test/API/commands/gui/basic/TestGuiBasic.py
    M lldb/test/API/commands/gui/basicdebug/TestGuiBasicDebug.py
    M lldb/test/API/commands/gui/breakpoints/TestGuiBreakpoints.py
    M lldb/test/API/commands/gui/expand-threads-tree/TestGuiExpandThreadsTree.py
    M lldb/test/API/commands/gui/spawn-threads/TestGuiSpawnThreads.py
    M lldb/test/API/commands/gui/viewlarge/TestGuiViewLarge.py
    M lldb/test/API/commands/process/attach/main.cpp
    M lldb/test/API/commands/register/aarch64_dynamic_regset/main.c
    M lldb/test/API/commands/register/aarch64_sve_registers/rw_access_static_config/main.c
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
    A lldb/test/API/functionalities/postmortem/elf-core/riscv32-imcxqcixqccmp.gpr_csr.core
    A lldb/test/API/functionalities/postmortem/elf-core/riscv32-imcxqcixqccmp.gpr_csr.out
    M lldb/test/API/functionalities/step-avoids-no-debug/TestStepNoDebug.py
    M lldb/test/API/functionalities/thread/jump/TestThreadJump.py
    M lldb/test/API/iohandler/autosuggestion/TestAutosuggestion.py
    M lldb/test/API/iohandler/completion/TestIOHandlerCompletion.py
    M lldb/test/API/iohandler/resize/TestIOHandlerResize.py
    M lldb/test/API/iohandler/sigint/TestIOHandlerPythonREPLSigint.py
    M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
    M lldb/test/API/iohandler/sigint/cat.cpp
    M lldb/test/API/iohandler/stdio/TestIOHandlerProcessSTDIO.py
    M lldb/test/API/iohandler/unicode/TestUnicode.py
    M lldb/test/API/lang/cpp/dynamic-value/TestDynamicValue.py
    M lldb/test/API/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
    M lldb/test/API/lang/objc/exceptions/TestObjCExceptions.py
    M lldb/test/API/macosx/branch-islands/Makefile
    M lldb/test/API/macosx/expedited-thread-pcs/TestExpeditedThreadPCs.py
    M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
    M lldb/test/API/python_api/interpreter/TestCommandInterpreterAPI.py
    M lldb/test/API/python_api/run_locker/TestRunLocker.py
    M lldb/test/API/python_api/unnamed_symbol_lookup/TestUnnamedSymbolLookup.py
    M lldb/test/API/qemu/TestQemuLaunch.py
    M lldb/test/API/repl/clang/TestClangREPL.py
    M lldb/test/API/terminal/TestDisabledBreakpoints.py
    M lldb/test/API/terminal/TestEditline.py
    M lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_breakpointLocations.py
    M lldb/test/API/tools/lldb-dap/breakpoint/main.cpp
    M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_console.py
    M lldb/test/API/tools/lldb-server/TestGdbRemote_qThreadStopInfo.py
    M lldb/test/CMakeLists.txt
    R lldb/test/Shell/Commands/process-attach-dummy.test
    A lldb/test/Shell/Process/Windows/output_debug_string.cpp
    M lldb/test/Shell/SymbolFile/DWARF/delayed-definition-die-searching.test
    A lldb/test/Shell/lldb-server/TestGdbserverErrorDarwin.test
    M lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test
    M lldb/tools/debugserver/source/DNB.cpp
    M lldb/tools/driver/CMakeLists.txt
    M lldb/tools/driver/Driver.cpp
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/InstructionBreakpoint.cpp
    M lldb/tools/lldb-dap/InstructionBreakpoint.h
    M lldb/tools/lldb-dap/ProtocolUtils.cpp
    M lldb/tools/lldb-dap/tool/CMakeLists.txt
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.cpp
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.h
    M lldb/tools/lldb-server/lldb-server.cpp
    M lldb/unittests/Core/MangledTest.cpp
    M lldb/unittests/Host/CMakeLists.txt
    A lldb/unittests/Host/PythonRuntimeLoaderTest.cpp
    M lldb/unittests/Symbol/TestType.cpp
    M lldb/unittests/SymbolFile/DWARF/XcodeSDKModuleTests.cpp
    M lldb/unittests/Target/MemoryTest.cpp
    A lldb/unittests/Utility/AcceleratorGDBRemotePacketsTest.cpp
    M lldb/unittests/Utility/CMakeLists.txt
    M llvm/Maintainers.md
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake
    M llvm/docs/AMDGPU/AMDGPUAsmGFX12.rst
    R llvm/docs/AMDGPU/gfx12_addr.rst
    R llvm/docs/AMDGPU/gfx12_attr.rst
    R llvm/docs/AMDGPU/gfx12_clause.rst
    R llvm/docs/AMDGPU/gfx12_data0_56f215.rst
    R llvm/docs/AMDGPU/gfx12_data0_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_data0_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_data0_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_data1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_data1_731030.rst
    R llvm/docs/AMDGPU/gfx12_data1_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_data1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_delay.rst
    R llvm/docs/AMDGPU/gfx12_hwreg.rst
    R llvm/docs/AMDGPU/gfx12_imm16.rst
    R llvm/docs/AMDGPU/gfx12_ioffset.rst
    R llvm/docs/AMDGPU/gfx12_label.rst
    R llvm/docs/AMDGPU/gfx12_literal_1f74c7.rst
    R llvm/docs/AMDGPU/gfx12_literal_81e671.rst
    R llvm/docs/AMDGPU/gfx12_m.rst
    A llvm/docs/AMDGPU/gfx12_operands.rst
    R llvm/docs/AMDGPU/gfx12_rsrc_5fe6d8.rst
    R llvm/docs/AMDGPU/gfx12_rsrc_c9f929.rst
    R llvm/docs/AMDGPU/gfx12_saddr_cdc95c.rst
    R llvm/docs/AMDGPU/gfx12_saddr_d42b64.rst
    R llvm/docs/AMDGPU/gfx12_samp.rst
    R llvm/docs/AMDGPU/gfx12_sbase_453b95.rst
    R llvm/docs/AMDGPU/gfx12_sbase_47adb7.rst
    R llvm/docs/AMDGPU/gfx12_sdata_0974a4.rst
    R llvm/docs/AMDGPU/gfx12_sdata_354189.rst
    R llvm/docs/AMDGPU/gfx12_sdata_4585b8.rst
    R llvm/docs/AMDGPU/gfx12_sdata_5c7b50.rst
    R llvm/docs/AMDGPU/gfx12_sdata_6c003b.rst
    R llvm/docs/AMDGPU/gfx12_sdata_836716.rst
    R llvm/docs/AMDGPU/gfx12_sdata_d725ab.rst
    R llvm/docs/AMDGPU/gfx12_sdata_dd9dd8.rst
    R llvm/docs/AMDGPU/gfx12_sdst_006c40.rst
    R llvm/docs/AMDGPU/gfx12_sdst_20064d.rst
    R llvm/docs/AMDGPU/gfx12_sdst_354189.rst
    R llvm/docs/AMDGPU/gfx12_sdst_836716.rst
    R llvm/docs/AMDGPU/gfx12_sdst_ced58d.rst
    R llvm/docs/AMDGPU/gfx12_sdst_e701cc.rst
    R llvm/docs/AMDGPU/gfx12_sendmsg.rst
    R llvm/docs/AMDGPU/gfx12_sendmsg_rtn.rst
    R llvm/docs/AMDGPU/gfx12_simm16_15ccdd.rst
    R llvm/docs/AMDGPU/gfx12_simm16_218bea.rst
    R llvm/docs/AMDGPU/gfx12_simm16_39b593.rst
    R llvm/docs/AMDGPU/gfx12_simm16_3d2a4f.rst
    R llvm/docs/AMDGPU/gfx12_simm16_730a13.rst
    R llvm/docs/AMDGPU/gfx12_simm16_7ed651.rst
    R llvm/docs/AMDGPU/gfx12_simm16_81e671.rst
    R llvm/docs/AMDGPU/gfx12_simm16_c98889.rst
    R llvm/docs/AMDGPU/gfx12_simm16_cc1716.rst
    R llvm/docs/AMDGPU/gfx12_simm16_ee8b30.rst
    R llvm/docs/AMDGPU/gfx12_soffset_8ec073.rst
    R llvm/docs/AMDGPU/gfx12_soffset_c5b88c.rst
    R llvm/docs/AMDGPU/gfx12_soffset_ec005a.rst
    R llvm/docs/AMDGPU/gfx12_src0_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src0_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src0_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src0_85aab6.rst
    R llvm/docs/AMDGPU/gfx12_src0_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src0_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_src0_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_src1_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src1_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src1_731030.rst
    R llvm/docs/AMDGPU/gfx12_src1_977794.rst
    R llvm/docs/AMDGPU/gfx12_src1_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src1_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_src1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_src2_2797bc.rst
    R llvm/docs/AMDGPU/gfx12_src2_5727cf.rst
    R llvm/docs/AMDGPU/gfx12_src2_5cae62.rst
    R llvm/docs/AMDGPU/gfx12_src2_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_src2_7b936a.rst
    R llvm/docs/AMDGPU/gfx12_src2_96fbd3.rst
    R llvm/docs/AMDGPU/gfx12_src2_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_src2_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_srcx0.rst
    R llvm/docs/AMDGPU/gfx12_srcy0.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_007f9c.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_1a9ca5.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_245536.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_2797bc.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_bbb4c6.rst
    R llvm/docs/AMDGPU/gfx12_ssrc0_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_ssrc1_bbb4c6.rst
    R llvm/docs/AMDGPU/gfx12_ssrc1_c4593f.rst
    R llvm/docs/AMDGPU/gfx12_tgt.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_a972b9.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_c12f43.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_c8b8d4.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_d82160.rst
    R llvm/docs/AMDGPU/gfx12_vaddr_f2b449.rst
    R llvm/docs/AMDGPU/gfx12_vcc.rst
    R llvm/docs/AMDGPU/gfx12_vdata_2eda77.rst
    R llvm/docs/AMDGPU/gfx12_vdata_48e42f.rst
    R llvm/docs/AMDGPU/gfx12_vdata_69a144.rst
    R llvm/docs/AMDGPU/gfx12_vdata_89680f.rst
    R llvm/docs/AMDGPU/gfx12_vdata_aac3e8.rst
    R llvm/docs/AMDGPU/gfx12_vdata_bdb32f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_006c40.rst
    R llvm/docs/AMDGPU/gfx12_vdst_227281.rst
    R llvm/docs/AMDGPU/gfx12_vdst_2eda77.rst
    R llvm/docs/AMDGPU/gfx12_vdst_47d3bc.rst
    R llvm/docs/AMDGPU/gfx12_vdst_48e42f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_69a144.rst
    R llvm/docs/AMDGPU/gfx12_vdst_7de8e7.rst
    R llvm/docs/AMDGPU/gfx12_vdst_836716.rst
    R llvm/docs/AMDGPU/gfx12_vdst_89680f.rst
    R llvm/docs/AMDGPU/gfx12_vdst_bdb32f.rst
    R llvm/docs/AMDGPU/gfx12_vdstx.rst
    R llvm/docs/AMDGPU/gfx12_vdsty.rst
    R llvm/docs/AMDGPU/gfx12_version.rst
    R llvm/docs/AMDGPU/gfx12_vsrc0.rst
    R llvm/docs/AMDGPU/gfx12_vsrc1_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_vsrc1_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_vsrc2.rst
    R llvm/docs/AMDGPU/gfx12_vsrc3.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_56f215.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_6802ce.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_89fd7b.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_e016a1.rst
    R llvm/docs/AMDGPU/gfx12_vsrc_fd235e.rst
    R llvm/docs/AMDGPU/gfx12_vsrcx1.rst
    R llvm/docs/AMDGPU/gfx12_vsrcy1.rst
    R llvm/docs/AMDGPU/gfx12_waitcnt.rst
    M llvm/docs/AMDGPUAsyncOperations.rst
    A llvm/docs/AMDGPUMemoryModel.rst
    M llvm/docs/AMDGPUUsage.rst
    A llvm/docs/AliasAnalysis.md
    R llvm/docs/AliasAnalysis.rst
    A llvm/docs/Atomics.md
    R llvm/docs/Atomics.rst
    A llvm/docs/BitCodeFormat.md
    R llvm/docs/BitCodeFormat.rst
    M llvm/docs/CodingStandards.rst
    M llvm/docs/CommandGuide/llvm-install-name-tool.rst
    M llvm/docs/CommandGuide/llvm-objcopy.rst
    M llvm/docs/CommandGuide/llvm-strip.rst
    A llvm/docs/CommandLine.md
    R llvm/docs/CommandLine.rst
    A llvm/docs/CompilerWriterInfo.md
    R llvm/docs/CompilerWriterInfo.rst
    M llvm/docs/Contributing.rst
    A llvm/docs/Coroutines.md
    R llvm/docs/Coroutines.rst
    A llvm/docs/CoverageMappingFormat.md
    R llvm/docs/CoverageMappingFormat.rst
    A llvm/docs/DebuggingLLVM.md
    R llvm/docs/DebuggingLLVM.rst
    M llvm/docs/DeveloperPolicy.rst
    A llvm/docs/ExceptionHandling.md
    R llvm/docs/ExceptionHandling.rst
    A llvm/docs/Extensions.md
    R llvm/docs/Extensions.rst
    A llvm/docs/FAQ.md
    R llvm/docs/FAQ.rst
    M llvm/docs/Frontend/PerformanceTips.rst
    A llvm/docs/GarbageCollection.md
    R llvm/docs/GarbageCollection.rst
    M llvm/docs/GettingInvolved.rst
    A llvm/docs/GettingStartedVS.md
    R llvm/docs/GettingStartedVS.rst
    M llvm/docs/GitHub.rst
    M llvm/docs/GlobalISel/GMIR.rst
    M llvm/docs/GlobalISel/IRTranslator.rst
    A llvm/docs/InstrProfileFormat.md
    R llvm/docs/InstrProfileFormat.rst
    M llvm/docs/LangRef.rst
    A llvm/docs/Lexicon.md
    R llvm/docs/Lexicon.rst
    A llvm/docs/LibFuzzer.md
    R llvm/docs/LibFuzzer.rst
    M llvm/docs/LoopFusion.rst
    A llvm/docs/LoopTerminology.md
    R llvm/docs/LoopTerminology.rst
    A llvm/docs/MIRLangRef.md
    R llvm/docs/MIRLangRef.rst
    M llvm/docs/MarkdownQuickstartTemplate.md
    A llvm/docs/MemorySSA.md
    R llvm/docs/MemorySSA.rst
    A llvm/docs/NewPassManager.md
    R llvm/docs/NewPassManager.rst
    M llvm/docs/ProgrammersManual.rst
    A llvm/docs/ProjectGovernance.rst
    M llvm/docs/README.txt
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    A llvm/docs/SphinxQuickstartTemplate.md
    R llvm/docs/SphinxQuickstartTemplate.rst
    M llvm/docs/TableGen/ProgRef.rst
    M llvm/docs/UserGuides.rst
    M llvm/docs/index.rst
    M llvm/docs/tutorial/MyFirstLanguageFrontend/LangImpl04.rst
    M llvm/include/llvm/ADT/APFixedPoint.h
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/ADT/APSInt.h
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/include/llvm/ADT/BitVector.h
    M llvm/include/llvm/ADT/CachedHashString.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseMapInfo.h
    M llvm/include/llvm/ADT/DenseMapInfoVariant.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/Hashing.h
    M llvm/include/llvm/ADT/ImmutableList.h
    M llvm/include/llvm/ADT/MapVector.h
    M llvm/include/llvm/ADT/PointerEmbeddedInt.h
    M llvm/include/llvm/ADT/PointerIntPair.h
    M llvm/include/llvm/ADT/PointerSumType.h
    M llvm/include/llvm/ADT/PointerUnion.h
    M llvm/include/llvm/ADT/SmallBitVector.h
    M llvm/include/llvm/ADT/SmallVector.h
    M llvm/include/llvm/ADT/StringRef.h
    M llvm/include/llvm/Analysis/AliasAnalysis.h
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/include/llvm/Analysis/ConstantFolding.h
    M llvm/include/llvm/Analysis/CtxProfAnalysis.h
    M llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
    M llvm/include/llvm/Analysis/IVDescriptors.h
    M llvm/include/llvm/Analysis/InstSimplifyFolder.h
    M llvm/include/llvm/Analysis/MemoryLocation.h
    M llvm/include/llvm/Analysis/MemorySSA.h
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/include/llvm/Analysis/TargetFolder.h
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Analysis/VectorUtils.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
    M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
    M llvm/include/llvm/BinaryFormat/Minidump.h
    M llvm/include/llvm/BinaryFormat/Wasm.h
    M llvm/include/llvm/BinaryFormat/WasmTraits.h
    M llvm/include/llvm/Bitcode/BitcodeReader.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CAS/CASID.h
    M llvm/include/llvm/CAS/CASReference.h
    M llvm/include/llvm/CodeGen/AccelTable.h
    A llvm/include/llvm/CodeGen/BreakFalseDeps.h
    M llvm/include/llvm/CodeGen/CommandFlags.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineOperand.h
    M llvm/include/llvm/CodeGen/PBQP/CostAllocator.h
    M llvm/include/llvm/CodeGen/Passes.h
    M llvm/include/llvm/CodeGen/Register.h
    M llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGenTypes/LowLevelType.h
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/DWARFLinker/AddressesMap.h
    M llvm/include/llvm/DWARFLinker/Classic/DWARFLinkerDeclContext.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeHashing.h
    M llvm/include/llvm/DebugInfo/CodeView/TypeIndex.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
    M llvm/include/llvm/DebugInfo/GSYM/FileEntry.h
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h
    M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/ExecutorResolutionGenerator.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/ExecutorAddress.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/MemoryFlags.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/TargetProcessControlTypes.h
    A llvm/include/llvm/ExecutionEngine/Orc/SymbolLookupSet.h
    M llvm/include/llvm/ExecutionEngine/Orc/SymbolStringPool.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.h
    A llvm/include/llvm/Frontend/Offloading/ArchiveLinker.h
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/include/llvm/Frontend/OpenMP/OMPContext.h
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
    M llvm/include/llvm/IR/AssemblyAnnotationWriter.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/include/llvm/IR/CFG.h
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/ConstantFolder.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DebugInfo.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/DebugLoc.h
    M llvm/include/llvm/IR/DebugProgramInstruction.h
    M llvm/include/llvm/IR/DerivedTypes.h
    M llvm/include/llvm/IR/Dominators.h
    M llvm/include/llvm/IR/FMF.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/GlobalValue.h
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/include/llvm/IR/IRBuilderFolder.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/IR/NoFolder.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/IR/TrackingMDRef.h
    M llvm/include/llvm/IR/Type.h
    M llvm/include/llvm/IR/Value.h
    M llvm/include/llvm/IR/ValueHandle.h
    M llvm/include/llvm/IR/ValueMap.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/LTO/Config.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/Linker/IRMover.h
    M llvm/include/llvm/MC/DXContainerInfo.h
    M llvm/include/llvm/MC/MCAsmInfo.h
    M llvm/include/llvm/MC/MCContext.h
    M llvm/include/llvm/MC/MCGOFFObjectWriter.h
    M llvm/include/llvm/MC/MCRegister.h
    M llvm/include/llvm/ObjCopy/CommonConfig.h
    M llvm/include/llvm/ObjCopy/ObjCopy.h
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/Object/ELF.h
    M llvm/include/llvm/Object/ObjectFile.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/include/llvm/ProfileData/FunctionId.h
    M llvm/include/llvm/ProfileData/GCOV.h
    M llvm/include/llvm/ProfileData/InstrProf.h
    M llvm/include/llvm/ProfileData/InstrProfData.inc
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfReader.h
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h
    M llvm/include/llvm/Support/AtomicOrdering.h
    M llvm/include/llvm/Support/ConvertUTF.h
    M llvm/include/llvm/Support/ELFAttrParserCompact.h
    M llvm/include/llvm/Support/ELFAttrParserExtended.h
    M llvm/include/llvm/Support/FileSystem/UniqueID.h
    M llvm/include/llvm/Support/GenericLoopInfo.h
    M llvm/include/llvm/Support/TypeSize.h
    M llvm/include/llvm/Support/UniqueBBID.h
    M llvm/include/llvm/Support/VersionTuple.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/include/llvm/Target/TargetOptions.h
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/Testing/Annotations/Annotations.h
    M llvm/include/llvm/TextAPI/SymbolSet.h
    M llvm/include/llvm/Transforms/IPO/Attributor.h
    M llvm/include/llvm/Transforms/IPO/FunctionSpecialization.h
    M llvm/include/llvm/Transforms/IPO/IROutliner.h
    M llvm/include/llvm/Transforms/Scalar.h
    M llvm/include/llvm/Transforms/Scalar/GVN.h
    M llvm/include/llvm/Transforms/Scalar/GVNExpression.h
    M llvm/include/llvm/Transforms/Scalar/SROA.h
    R llvm/include/llvm/Transforms/Utils/AssignGUID.h
    M llvm/include/llvm/Transforms/Utils/BypassSlowDivision.h
    A llvm/include/llvm/Transforms/Utils/TriggerCrashPass.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/CtxProfAnalysis.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/IRSimilarityIdentifier.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/Loads.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Analysis/VectorUtils.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/BinaryFormat/DXContainer.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/AggressiveAntiDepBreaker.cpp
    M llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.h
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/BreakFalseDeps.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/CommandFlags.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
    M llvm/lib/CodeGen/LowLevelTypeUtils.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/RegisterBankInfo.cpp
    M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
    M llvm/lib/CodeGen/SelectOptimize.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/ShrinkWrap.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/CodeGen/StackMaps.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/DTLTO/CMakeLists.txt
    M llvm/lib/DTLTO/DTLTO.cpp
    A llvm/lib/DTLTO/DTLTODistributionDriver.cpp
    A llvm/lib/DTLTO/DTLTOInputFiles.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.cpp
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.h
    M llvm/lib/DWARFLinker/Parallel/DIEAttributeCloner.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerImpl.cpp
    M llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
    M llvm/lib/DebugInfo/CodeView/TypeHashing.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
    M llvm/lib/DebugInfo/PDB/Native/GSIStreamBuilder.cpp
    M llvm/lib/ExecutionEngine/Orc/Debugging/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/EPCDynamicLibrarySearchGenerator.cpp
    M llvm/lib/ExecutionEngine/Orc/EPCGenericDylibManager.cpp
    M llvm/lib/ExecutionEngine/Orc/ExecutorResolutionGenerator.cpp
    M llvm/lib/ExecutionEngine/Orc/SelfExecutorProcessControl.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorDylibManager.cpp
    A llvm/lib/Frontend/Offloading/ArchiveLinker.cpp
    M llvm/lib/Frontend/Offloading/CMakeLists.txt
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/BasicBlock.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/IR/DebugLoc.cpp
    M llvm/lib/IR/DebugProgramInstruction.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/IR/LLVMContextImpl.h
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/Type.cpp
    M llvm/lib/IR/Use.cpp
    M llvm/lib/IR/Value.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/MC/DXContainerInfo.cpp
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCAsmInfoELF.cpp
    M llvm/lib/MC/MCAsmInfoGOFF.cpp
    M llvm/lib/MC/MCAsmInfoWasm.cpp
    M llvm/lib/MC/MCAsmInfoXCOFF.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/AsmParser.cpp
    M llvm/lib/MC/MCParser/MasmParser.cpp
    M llvm/lib/ObjCopy/Archive.cpp
    M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
    M llvm/lib/ObjCopy/ObjCopy.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/Object/Decompressor.cpp
    M llvm/lib/Object/ELF.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Object/Minidump.cpp
    M llvm/lib/Object/RelocationResolver.cpp
    M llvm/lib/Object/XCOFFObjectFile.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/ProfileData/InstrProfCorrelator.cpp
    M llvm/lib/Support/ConvertUTFWrapper.cpp
    M llvm/lib/Support/ELFAttrParserCompact.cpp
    M llvm/lib/Support/ELFAttrParserExtended.cpp
    M llvm/lib/Support/StringRef.cpp
    M llvm/lib/Support/Unix/Signals.inc
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/TableGen/TGLexer.h
    M llvm/lib/TableGen/TGParser.cpp
    M llvm/lib/TableGen/TGParser.h
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64StackTaggingPreRA.cpp
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMCResourceInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.h
    M llvm/lib/Target/AMDGPU/AMDGPUPreloadKernArgProlog.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUResourceUsageAnalysis.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCExpr.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/R600TargetMachine.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/ARM/ARMFastISel.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMSubtarget.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.cpp
    M llvm/lib/Target/ARM/ARMTargetMachine.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp
    M llvm/lib/Target/BPF/MCTargetDesc/BPFMCAsmInfo.h
    M llvm/lib/Target/CSKY/CSKYTargetMachine.cpp
    M llvm/lib/Target/CSKY/MCTargetDesc/CSKYTargetStreamer.h
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp
    M llvm/lib/Target/DirectX/DirectXIRPasses/DXILDebugInfo.cpp
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    M llvm/lib/Target/Hexagon/CMakeLists.txt
    A llvm/lib/Target/Hexagon/HexagonAggressiveRDFCopy.cpp
    A llvm/lib/Target/Hexagon/HexagonAggressiveRDFCopy.h
    M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
    M llvm/lib/Target/Hexagon/HexagonLoopIdiomRecognition.cpp
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    M llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
    M llvm/lib/Target/Hexagon/RDFCopy.cpp
    M llvm/lib/Target/Hexagon/RDFCopy.h
    A llvm/lib/Target/Hexagon/RDFCopyBase.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchTargetMachine.cpp
    M llvm/lib/Target/M68k/AsmParser/CMakeLists.txt
    M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp
    M llvm/lib/Target/M68k/Disassembler/M68kDisassembler.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.h
    M llvm/lib/Target/M68k/M68kISelDAGToDAG.cpp
    M llvm/lib/Target/M68k/M68kInstrControl.td
    M llvm/lib/Target/M68k/M68kInstrData.td
    M llvm/lib/Target/M68k/M68kInstrFormats.td
    M llvm/lib/Target/M68k/M68kInstrInfo.td
    M llvm/lib/Target/M68k/M68kTargetMachine.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kBaseInfo.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kInstPrinter.h
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMCCodeEmitter.cpp
    M llvm/lib/Target/M68k/MCTargetDesc/M68kMemOperandPrinter.h
    M llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp
    M llvm/lib/Target/Mips/MipsTargetMachine.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.cpp
    M llvm/lib/Target/NVPTX/NVVMIntrRange.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCTargetMachine.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBankInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVRegisterBanks.td
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFObjectWriter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVFixupKinds.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVIndirectBranchTracking.cpp
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    R llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZicfiss.td
    A llvm/lib/Target/RISCV/RISCVInstrInfoZvdota.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvvm.td
    M llvm/lib/Target/RISCV/RISCVOptWInstrs.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
    M llvm/lib/Target/SPIRV/SPIRVTypeInst.h
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/Sparc/SparcTargetMachine.cpp
    M llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    M llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
    M llvm/lib/Target/X86/X86CallingConv.td
    M llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    M llvm/lib/Target/X86/X86FixupLEAs.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrCompiler.td
    M llvm/lib/Target/X86/X86InstrFragments.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86InstrSystem.td
    M llvm/lib/Target/X86/X86OptimizeLEAs.cpp
    M llvm/lib/Target/X86/X86PartialReduction.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.td
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
    M llvm/lib/Target/X86/X86Subtarget.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.h
    M llvm/lib/Target/Xtensa/XtensaTargetMachine.cpp
    M llvm/lib/Testing/Annotations/Annotations.cpp
    M llvm/lib/Transforms/IPO/Attributor.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/ConstantMerge.cpp
    M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/FunctionImport.cpp
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp
    M llvm/lib/Transforms/IPO/HotColdSplitting.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfFlattening.cpp
    M llvm/lib/Transforms/Instrumentation/PGOCtxProfLowering.cpp
    M llvm/lib/Transforms/Instrumentation/PGOInstrumentation.cpp
    M llvm/lib/Transforms/Scalar/DFAJumpThreading.cpp
    M llvm/lib/Transforms/Scalar/EarlyCSE.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/GVNSink.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Scalar/JumpThreading.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Scalar/Reassociate.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    R 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/CanonicalizeFreezeInLoops.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/Local.cpp
    M llvm/lib/Transforms/Utils/LowerInvoke.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp
    A llvm/lib/Transforms/Utils/TriggerCrashPass.cpp
    M llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.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/VPlanHelpers.h
    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/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/runtimes/CMakeLists.txt
    M llvm/test/Analysis/CostModel/AArch64/masked_expand_load.ll
    M llvm/test/Analysis/CostModel/PowerPC/ld-st-with-length.ll
    M llvm/test/Analysis/CostModel/RISCV/gep.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-expandload-compressstore.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/masked-intrinsic-cost.ll
    A llvm/test/Analysis/DependenceAnalysis/exact-siv-mul-overflow.ll
    M llvm/test/Analysis/TypeBasedAliasAnalysis/functionattrs.ll
    M llvm/test/Analysis/TypeBasedAliasAnalysis/gvn-nonlocal-type-mismatch.ll
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/MIR/always-uniform.mir
    M llvm/test/Analysis/ValueTracking/memory-dereferenceable.ll
    M llvm/test/Analysis/ValueTracking/recurrence-knownbits.ll
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll
    A llvm/test/Assembler/dbg-declare-invalid-debug-loc.ll
    A llvm/test/Assembler/dbg-intrinsic-forward-ref-upgrade.ll
    A llvm/test/Assembler/dbg.ll
    A llvm/test/Assembler/dilabel.ll
    M llvm/test/Assembler/fast-math-flags.ll
    M llvm/test/Assembler/index-value-order.ll
    M llvm/test/Assembler/invalid-interleave.ll
    A llvm/test/Assembler/invalid-phi-fast-math-flags.ll
    A llvm/test/Assembler/invalid-select-fast-math-flags.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-float-literal.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-bb.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-body.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-missing-func.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-not-bb.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-not-func.ll
    R llvm/test/Assembler/invalid-uselistorder_bb-numbered.ll
    M llvm/test/Assembler/invalid-vecreduce.ll
    M llvm/test/Assembler/masked-load-store-intrinsics-attributes.ll
    R llvm/test/Assembler/uselistorder_bb.ll
    A llvm/test/Bitcode/Inputs/cfi-functions-upgrade.bc
    A llvm/test/Bitcode/Inputs/cfi-summary-upgrade.bc
    A llvm/test/Bitcode/cfi-functions-upgrade.ll
    M llvm/test/Bitcode/compatibility.ll
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll
    A llvm/test/Bitcode/musttail-bitcast-upgrade.ll.bc
    M llvm/test/Bitcode/summary_version.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/Bitcode/upgrade-masked-keep-metadata.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-of-and.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-or-of-and.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-select-zero.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-exp.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sin.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-sinh.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/postlegalizer-lowering-adjust-icmp-imm.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-load-and-mask.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizer-combiner-narrow-binop-feeding-add.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-sextload-from-sextinreg.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/select-splat-vector.ll
    A llvm/test/CodeGen/AArch64/aarch64-f16f32dot-intrinsics.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    A llvm/test/CodeGen/AArch64/aarch64-pseudo-probe-tail-call.ll
    M llvm/test/CodeGen/AArch64/aarch64-sme-za-call-lowering.ll
    M llvm/test/CodeGen/AArch64/aarch64-sysreg128.ll
    M llvm/test/CodeGen/AArch64/alias_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-arith-saturating.ll
    M llvm/test/CodeGen/AArch64/arm64-csel.ll
    M llvm/test/CodeGen/AArch64/arm64-indexed-vector-ldst.ll
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    R llvm/test/CodeGen/AArch64/arm64-invalid-sys-reg.ll
    A llvm/test/CodeGen/AArch64/arm64-named-reg-notareg.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-copy.ll
    M llvm/test/CodeGen/AArch64/arm64-vcnt.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr8.mir
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-gpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-zeroing-fpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-zeroing-gpr.ll
    M llvm/test/CodeGen/AArch64/bf16-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v4-instructions.ll
    M llvm/test/CodeGen/AArch64/bf16-v8-instructions.ll
    M llvm/test/CodeGen/AArch64/bitfield-insert.ll
    M llvm/test/CodeGen/AArch64/bswap-known-bits.ll
    M llvm/test/CodeGen/AArch64/clmul-scalable.ll
    M llvm/test/CodeGen/AArch64/cmp-to-cmn.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-add.ll
    M llvm/test/CodeGen/AArch64/dag-combine-setcc.ll
    A llvm/test/CodeGen/AArch64/dag-maps-huge-region.ll
    M llvm/test/CodeGen/AArch64/dup.ll
    M llvm/test/CodeGen/AArch64/expand-sme-pseudos.mir
    M llvm/test/CodeGen/AArch64/fcvt-i256.ll
    M llvm/test/CodeGen/AArch64/fixed_masked_deinterleaved_loads.ll
    M llvm/test/CodeGen/AArch64/fixed_masked_interleaved_stores.ll
    M llvm/test/CodeGen/AArch64/fp-conversion-to-tbl.ll
    M llvm/test/CodeGen/AArch64/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/ftrunc.ll
    A llvm/test/CodeGen/AArch64/ld1st1_post_mmo.ll
    A llvm/test/CodeGen/AArch64/ldst-opt-umov-fpr-store.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-find-insert-pt.mir
    M llvm/test/CodeGen/AArch64/machine-sme-abi-skip-debug-inst.mir
    M llvm/test/CodeGen/AArch64/pr164181.ll
    M llvm/test/CodeGen/AArch64/read-fp-reg.ll
    A llvm/test/CodeGen/AArch64/read-reg-non-entry.ll
    M llvm/test/CodeGen/AArch64/select-constant-xor.ll
    M llvm/test/CodeGen/AArch64/selectopt-cast.ll
    M llvm/test/CodeGen/AArch64/sitofp-to-tbl.ll
    M llvm/test/CodeGen/AArch64/sme-abi-eh-liveins.mir
    M llvm/test/CodeGen/AArch64/sme-lazy-sve-nzcv-live.mir
    M llvm/test/CodeGen/AArch64/special-reg.ll
    M llvm/test/CodeGen/AArch64/sshl_sat.ll
    A llvm/test/CodeGen/AArch64/sve-fixed-length-frintz.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-expandloads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-trunc-stores.ll
    A llvm/test/CodeGen/AArch64/sve-frintz.ll
    A llvm/test/CodeGen/AArch64/sve-ldst-multi-vec.mir
    M llvm/test/CodeGen/AArch64/sve-mask-partition.ll
    M llvm/test/CodeGen/AArch64/sve2-sra.ll
    A llvm/test/CodeGen/AArch64/sve2p3-intrinsics-fp-converts.ll
    A llvm/test/CodeGen/AArch64/sve2p3-intrinsics-fp-converts_x2.ll
    M llvm/test/CodeGen/AArch64/trunc-to-tbl.ll
    A llvm/test/CodeGen/AArch64/umov-fpr-store-from-phi.ll
    M llvm/test/CodeGen/AArch64/ushl_sat.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-to-bitmask.ll
    M llvm/test/CodeGen/AArch64/vec-combine-compare-truncate-store.ll
    A llvm/test/CodeGen/AArch64/vector-splice-compress-mmo-align.ll
    M llvm/test/CodeGen/AArch64/write-volatile-register.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/amdgpu-irtranslator.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-post-legalize.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-pre-legalize.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-unmerge-values.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-reg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dynamic-alloca-uniform.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/floor.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inline-asm-mismatched-size.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-i1-copy.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-select.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext-inreg.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-sext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-zext.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-fptrunc.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-intrinsic-amdgcn-fdiv-fast.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-rotl-rotr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul-known-bits.i64.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-divrem.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-unmerge-undef.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizercombiner-load-and-mask.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-divrem.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-redundant-bitcast.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/prelegalizer-combiner-shuffle.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-unmerge-values.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-widen-scalar-loads.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-fold-binop-select.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-codegenprepare-idiv.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-late-codegenprepare.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-libcall-sincos-pass-ordering.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-lower-exec-sync-and-module-lds.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-lower-exec-sync.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pown.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-rootn.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-sincos.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-uniform-waterfall.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    M llvm/test/CodeGen/AMDGPU/atomics_cond_sub.ll
    A llvm/test/CodeGen/AMDGPU/buffer-store-dwordx4-vpk-mul-war-hazard-gfx942.mir
    M llvm/test/CodeGen/AMDGPU/callbr-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/ctls.ll
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
    M llvm/test/CodeGen/AMDGPU/cttz.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll
    A llvm/test/CodeGen/AMDGPU/debug-independence-exec-masking.mir
    A llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
    M llvm/test/CodeGen/AMDGPU/divrem24-assume.ll
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-direct-chain.ll
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation-indirect.ll
    A llvm/test/CodeGen/AMDGPU/dvgpr-vgpr-count-propagation.ll
    M llvm/test/CodeGen/AMDGPU/dvgpr_sym_fail_too_many_block_size_16.ll
    M llvm/test/CodeGen/AMDGPU/dvgpr_sym_fail_too_many_block_size_16_anon.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/fdiv_flags.f32.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.legal.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.si.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-v2f32.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fold-legalize-dag-increase-insts.ll
    M llvm/test/CodeGen/AMDGPU/fp-to-int-to-fp.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/fptoui-sat-scalar.ll
    M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/fptoui_uitofp.ll
    M llvm/test/CodeGen/AMDGPU/fsqrt.f32.ll
    M llvm/test/CodeGen/AMDGPU/fsqrt.f64.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/inline-attr.ll
    M llvm/test/CodeGen/AMDGPU/inlineasm-mismatched-size-error.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w32.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgcn-cs-chain-intrinsic-w64.ll
    M llvm/test/CodeGen/AMDGPU/isel-amdgpu-cs-chain-intrinsic-dyn-vgpr-w32.ll
    M llvm/test/CodeGen/AMDGPU/lds-barrier-memoperand.ll
    M llvm/test/CodeGen/AMDGPU/lds-dma-workgroup-release.ll
    A llvm/test/CodeGen/AMDGPU/ldsdmacnt_sched.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i64.wave32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.frexp.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.prefetch.inst.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx12.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-flat.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-global.ll
    M llvm/test/CodeGen/AMDGPU/load-atomic-local.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/non-entry-alloca.ll
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll
    M llvm/test/CodeGen/AMDGPU/packed-fneg-fsub-fp16.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernarg-header.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir
    M llvm/test/CodeGen/AMDGPU/ps-shader-arg-count.ll
    A llvm/test/CodeGen/AMDGPU/rewrite-mfma-form-spill-cost-reset.ll
    M llvm/test/CodeGen/AMDGPU/rsq.f64.ll
    A llvm/test/CodeGen/AMDGPU/s-barrier-id-allocation.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier-lowering.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll
    M llvm/test/CodeGen/AMDGPU/sched-ldsdma-mask.mir
    M llvm/test/CodeGen/AMDGPU/simplify-libcalls.ll
    A llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask-phi-extend.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-flat.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-global.ll
    M llvm/test/CodeGen/AMDGPU/store-atomic-local.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/udivrem24.ll
    M llvm/test/CodeGen/AMDGPU/unaligned-buffer.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll
    M llvm/test/CodeGen/AMDGPU/vgpr_constant64_to_sgpr.mir
    M llvm/test/CodeGen/AMDGPU/widen_extending_scalar_loads.ll
    M llvm/test/CodeGen/ARM/elf-preemption.ll
    A llvm/test/CodeGen/ARM/weak-hidden-pic.ll
    M llvm/test/CodeGen/BPF/loop-exit-cond.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-unroll-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/load-unroll.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-align.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-atomic.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-oob.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-u8-oob.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain-u8.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-chain.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-simple.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-unroll-inline.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-volatile.ll
    M llvm/test/CodeGen/BPF/preserve-static-offset/store-zero.ll
    A llvm/test/CodeGen/DirectX/ContainerData/CompilerVersion.ll
    R llvm/test/Verifier/dbg-declare-invalid-debug-loc.ll

  Log Message:
  -----------
  Rebase, address comments

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/71bcffad3375...6ad8f3ae72a8

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