[all-commits] [llvm/llvm-project] 9f5317: [RISCV][P-ext] Support packed bswap/bitreverse. (#...

Matt Arsenault via All-commits all-commits at lists.llvm.org
Fri Jun 5 02:41:58 PDT 2026


  Branch: refs/heads/users/arsenm/clang/amdgpu-openmp-accept-arch-amdgpu-name
  Home:   https://github.com/llvm/llvm-project
  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: 70d84ab8aa46f0c4177b7e4dd4ad1988aec9d3d7
      https://github.com/llvm/llvm-project/commit/70d84ab8aa46f0c4177b7e4dd4ad1988aec9d3d7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-05 (Fri, 05 Jun 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .git-blame-ignore-revs
    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/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    A clang-tools-extra/clangd/test/modules_config_remove_flags.test
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
    M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.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/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Specifiers.h
    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/Options/Options.td
    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/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.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/ExprConstant.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/CIRGenBuilder.h
    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/CodeGen/CIRGenVTables.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/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParsePragma.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/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/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/Checkers/WebKit/MemoryUnsafeCastChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.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/Analysis/Checkers/WebKit/memory-unsafe-cast.mm
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.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/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/stmt.stmt/stmt.iter/stmt.ranged/p1.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/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/fullfp16.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    M clang/test/CodeGen/WebAssembly/wasm-arguments.c
    M clang/test/CodeGenCXX/default-arguments.cpp
    M clang/test/CodeGenCXX/explicit-instantiation.cpp
    A clang/test/CodeGenHLSL/cbuffer-matrix-layout-keyword.hlsl
    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/Driver/print-supported-extensions-riscv.c
    A clang/test/Driver/riscv-zilsd-word-align.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/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 clang/test/Sema/static-init.c
    M clang/test/SemaCXX/co_await-range-for.cpp
    M clang/test/SemaCXX/for-range-dereference.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/ctad.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/driver/driver.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M compiler-rt/CMakeLists.txt
    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/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    M compiler-rt/lib/scudo/standalone/combined.h
    M compiler-rt/test/tsan/many_held_mutex.cpp
    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
    A flang/docs/MeetingNotes/2026/2026-06-03.md
    M flang/docs/ParallelMultiImageFortranRuntime.md
    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
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/test/Semantics/OpenMP/private03.f90
    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/__support/threads/raw_rwlock.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
    M libc/test/integration/src/threads/cnd_test.cpp
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__expected/expected.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__locale_dir/wstring_convert.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/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
    A libcxx/test/libcxx/localization/locales/locale.convenience/conversions/conversions.string/pragma_suppress.compile.pass.cpp
    M libcxx/test/libcxx/transitive_includes.gen.py
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    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
    R lld/test/wasm/export-all.ll
    M lld/test/wasm/export-all.s
    M lld/test/wasm/many-functions.ll
    M lldb/cmake/modules/AddLLDB.cmake
    A lldb/cmake/modules/LLDBConcatFiles.cmake
    A lldb/docs/index.md
    R lldb/docs/index.rst
    A lldb/docs/python_api_enums.md
    R lldb/docs/python_api_enums.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/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
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/packages/Python/lldbsuite/support/gmodules.py
    A lldb/scripts/extract-dynamic-script-interpreter-exports.py
    M lldb/source/API/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.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/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/ScriptInterpreter/Lua/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Utility/RISCV_DWARF_Registers.h
    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/process/attach/main.cpp
    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/lang/cpp/exceptions/TestCPPExceptionBreakpoints.py
    M lldb/test/API/lang/objc/exceptions/TestObjCExceptions.py
    M lldb/test/API/macosx/thread-names/TestInterruptThreadNames.py
    M lldb/test/API/python_api/unnamed_symbol_lookup/TestUnnamedSymbolLookup.py
    M lldb/unittests/SymbolFile/DWARF/XcodeSDKModuleTests.cpp
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/docs/AMDGPUAsyncOperations.rst
    M llvm/docs/CommandGuide/llvm-install-name-tool.rst
    M llvm/docs/LoopFusion.rst
    M llvm/docs/ProgrammersManual.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/BinaryFormat/ELFRelocs/RISCV_nonstandard.def
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
    M llvm/include/llvm/ExecutionEngine/Orc/EPCGenericDylibManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/include/llvm/IR/AutoUpgrade.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.cpp
    M llvm/lib/DWARFLinker/Parallel/AcceleratorRecordsSaver.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/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Object/RelocationResolver.cpp
    M llvm/lib/Target/AArch64/AArch64Combine.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    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/RISCVInstPrinter.h
    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/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvvm.td
    M llvm/lib/Target/RISCV/RISCVSubtarget.h
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrSystem.td
    M llvm/lib/Transforms/IPO/CrossDSOCFI.cpp
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.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
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-select-zero.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-sextload-from-sextinreg.mir
    M llvm/test/CodeGen/AArch64/arm64-arith-saturating.ll
    A llvm/test/CodeGen/AArch64/ldst-opt-umov-fpr-store.mir
    A llvm/test/CodeGen/AArch64/umov-fpr-store-from-phi.ll
    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
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-fp-nosave.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sponentry.ll
    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
    A llvm/test/CodeGen/Hexagon/bitcast-f64-vector.ll
    R llvm/test/CodeGen/MIR/Generic/scalable-vector-type-err3.mir
    M llvm/test/CodeGen/NVPTX/vaargs.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    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
    M llvm/test/CodeGen/RISCV/rvv/vdiv-sdnode.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
    M llvm/test/CodeGen/X86/bitreverse.ll
    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-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-256-v32.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    A llvm/test/MC/Disassembler/X86/ibhf-64.txt
    M llvm/test/MC/RISCV/rvi-pseudos-invalid.s
    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
    A llvm/test/MC/RISCV/xqci-access-pseudos.s
    A llvm/test/MC/X86/ibhf-64.s
    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
    A llvm/test/ThinLTO/X86/memprof-icp-metadata.ll
    M llvm/test/Transforms/CrossDSOCFI/cfi_functions.ll
    M llvm/test/Transforms/InstCombine/select_meta.ll
    A llvm/test/Transforms/LoopFusion/cannot_fuse_atomic.ll
    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
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
    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-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
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/AMDGPU/xor-decompose.ll
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/xor-decompose.ll
    M llvm/test/Transforms/SimplifyCFG/phi-undef-loadstore.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/function-alias.ll
    A llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/debug-names-static-member-decl.test
    A llvm/test/tools/llvm-objcopy/MachO/install-name-tool-output.test
    M llvm/tools/CMakeLists.txt
    M llvm/tools/dsymutil/LinkUtils.h
    M llvm/tools/dsymutil/dsymutil.cpp
    M llvm/tools/llvm-objcopy/InstallNameToolOpts.td
    M llvm/tools/llvm-objcopy/ObjcopyOptions.cpp
    M llvm/unittests/ADT/BitVectorTest.cpp
    M llvm/unittests/ADT/DenseMapTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/EPCGenericDylibManagerTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/utils/gdb-scripts/prettyprinters.py
    M llvm/utils/gn/secondary/bolt/unittests/Profile/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Plugins/Process/Utility/BUILD.gn
    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/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/lib/Dialect/X86/Transforms/VectorContractToPackedTypeDotProduct.cpp
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Conversion/VectorToXeGPU/transfer-read-to-xegpu.mlir
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
    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/Dialect/OpenACC/ops-cg-privatization.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir
    M mlir/test/Dialect/X86/vector-contract-to-packed-type-dotproduct.mlir
    M mlir/test/Target/LLVMIR/Import/import-failure.ll
    M mlir/test/Target/LLVMIR/Import/intrinsic-unregistered.ll
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-to-host.mlir
    M mlir/test/Transforms/test-legalizer.mlir
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp
    M mlir/unittests/Dialect/OpenACC/OpenACCTypeInterfacesTest.cpp
    A offload/ci/openmp-offload-amdgpu-libc-runtime.py
    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
    M utils/bazel/.bazelrc
    M utils/bazel/.bazelversion
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock
    M utils/bazel/llvm-project-overlay/compiler-rt/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Merge branch 'main' into users/arsenm/clang/amdgpu-openmp-accept-arch-amdgpu-name


Compare: https://github.com/llvm/llvm-project/compare/6199ca9e9a09...70d84ab8aa46

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