[all-commits] [llvm/llvm-project] 66ba51: [PGO] Fix malformed raw profile test (#206574)

aokblast via All-commits all-commits at lists.llvm.org
Tue Jul 7 11:35:28 PDT 2026


  Branch: refs/heads/users/aokblast/libcxx/ci/bump_to_15.1
  Home:   https://github.com/llvm/llvm-project
  Commit: 66ba51a9e0fbc62edc474f1cbf10f94554c80dd2
      https://github.com/llvm/llvm-project/commit/66ba51a9e0fbc62edc474f1cbf10f94554c80dd2
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test

  Log Message:
  -----------
  [PGO] Fix malformed raw profile test (#206574)

PR #190708 added a uniform counter pointer to the raw profile data
record, but a hand-written raw profile test gained one extra zero word
in the record.

Remove the extra word so the name section starts at the offset expected
by the reader. This fixes the regression while keeping the test focused
on the malformed counter pointer.

Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/24/builds/21581

Test:

```
~/git/scripts_shared/scripts/llvm/llvm-dev.sh llvm test llvm/test/tools/llvm-profdata/malformed-ptr-to-counter-array.test
```


  Commit: d50f1c06494679cf5590c9bf643bec80394be74c
      https://github.com/llvm/llvm-project/commit/d50f1c06494679cf5590c9bf643bec80394be74c
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/include/clang/AST/HLSLResource.h
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    A clang/test/CodeGenHLSL/resources/cbuffer_struct_passing_with_resources.hlsl

  Log Message:
  -----------
  [HLSL] Implement codegen for copying cbuffer structs with resources (#204232)

Global-scope structs are in `hlsl_constant` address space and use
cbuffer layout. When those structs contain resources, the resources are
not stored inline in the constant buffer. Instead, they are represented
as separate globals, or in case of resource arrays initialized on
demand.

This change implements the HLSL codegen for cases where a cbuffer-backed
struct with embedded resources is copied into a local variable or passed
as a function argument. CodeGen materializes a temporary in the default
address space, copies the constant-data fields using the cbuffer struct
layout, and reconstruct the resource members in the local copy.

Fixes #182990


  Commit: d939c77edaab3f513b3ce330382322834eb9970f
      https://github.com/llvm/llvm-project/commit/d939c77edaab3f513b3ce330382322834eb9970f
  Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCComputeLowering.cpp
    M mlir/test/Dialect/OpenACC/acc-compute-lowering-compute.mlir
    M mlir/test/Dialect/OpenACC/acc-compute-lowering-loop.mlir

  Log Message:
  -----------
  [mlir][acc] Lower sequential acc.loop to scf.for in ACCComputeLowering (#206165)

Sequential loops already have fixed parallelism, so represent them with
`scf.for` rather than `scf.parallel`. To prevent further analysis and
parallelization, `parDimAttr` is set to seq.


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

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

  Log Message:
  -----------
  [VPlan] Pass CostCtx to makeMemOpWideningDecisions (NFC). (#206580)

makeMemOpWideningDecisions already uses 2 members (PSE, L) and will need
more in the future. Direcly pass CostCtx.


  Commit: 8cf09c5d5ca1eac658b721973709ef5153b0264b
      https://github.com/llvm/llvm-project/commit/8cf09c5d5ca1eac658b721973709ef5153b0264b
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    A lldb/include/lldb/Core/BugReporter.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/include/lldb/lldb-private-interfaces.h
    M lldb/source/Commands/CommandObjectDiagnostics.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    A lldb/source/Plugins/BugReporter/CMakeLists.txt
    A lldb/source/Plugins/BugReporter/None/BugReporterNone.cpp
    A lldb/source/Plugins/BugReporter/None/BugReporterNone.h
    A lldb/source/Plugins/BugReporter/None/CMakeLists.txt
    M lldb/source/Plugins/CMakeLists.txt
    A lldb/test/Shell/Diagnostics/TestReport.test

  Log Message:
  -----------
  [lldb] Add a BugReporter plugin type and "diagnostics report" (#206578)

Introduce a BugReporter plugin kind that files an assembled
Diagnostics::Report through a pluggable destination, plus a "diagnostics
report" command (aliased "bugreport") that collects the bundle and files
it through the first registered reporter.

CreateBugReporterInstance() returns the first registered reporter, so a
reporter registered earlier wins and a downstream tree can take over by
registering ahead of the built-ins. BugReporterNone is the
always-registered, last-in-order fallback. Its File() returns an error
pointing at LLDB_BUG_REPORT_URL, so the command surfaces "no tracker
configured" through the normal error path instead of special-casing it.

"diagnostics report" writes the bundle, prints a review warning, and
files it unless --no-open is given. The upcoming GitHub reporter, gated
by a CMake option, is the first real destination.


  Commit: d5e975dcf4180579e74697daad4f1beae0ca8549
      https://github.com/llvm/llvm-project/commit/d5e975dcf4180579e74697daad4f1beae0ca8549
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP] Add explicit return type to visitor lambdas (#206588)

This should silence MSVC (14.51.36231) error:
error C2338: static assertion failed: 'visit() requires the result of
all potential invocations to have the same type and value category
(N4950 [variant.visit]/5).'

e.g. https://lab.llvm.org/buildbot/#/builders/166/builds/9664


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h

  Log Message:
  -----------
  [VPlan] Remove unused InductionDescriptor VPDerivedIVRecipe constructor (#206583)

Both callers use the 5-argument (Kind, FPBinOp, ...) constructor; the
delegating InductionDescriptor overload has no users.


  Commit: bce4b9cb5864d3930a879715d4c8ab7841f69275
      https://github.com/llvm/llvm-project/commit/bce4b9cb5864d3930a879715d4c8ab7841f69275
  Author: Hardik Kumar <hardikxk at gmail.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [clang][docs]Refactor compiler standard references from c94 to C95 (#206403)

The patch changes references to a non existent c94 standard from
to C95 (C90 + AMD1)

Closes #206389


  Commit: bcad6a03f27ba68893a5429f03cf5c52f6f744ec
      https://github.com/llvm/llvm-project/commit/bcad6a03f27ba68893a5429f03cf5c52f6f744ec
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/tools/libclang/CLog.h
    M llvm/include/llvm/Support/raw_ostream.h

  Log Message:
  -----------
  [llvm][clang] Remove `format_object_base` forward declarations (#206526)

PR https://github.com/llvm/llvm-project/pull/206319 removed the
`format_object_base` class itself, but not some of its
forward-declarations. NFCI


  Commit: 3349d8e7d3c272092a6af4476959d35a3e759376
      https://github.com/llvm/llvm-project/commit/3349d8e7d3c272092a6af4476959d35a3e759376
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M mlir/docs/Passes.md
    M mlir/include/mlir/Dialect/CMakeLists.txt
    R mlir/include/mlir/Dialect/LLVMIR/Transforms/OptimizeForNVVM.h
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.h
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/Passes.td
    A mlir/include/mlir/Dialect/NVVM/CMakeLists.txt
    A mlir/include/mlir/Dialect/NVVM/Transforms/CMakeLists.txt
    A mlir/include/mlir/Dialect/NVVM/Transforms/OptimizeForNVVM.h
    A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.h
    A mlir/include/mlir/Dialect/NVVM/Transforms/Passes.td
    M mlir/lib/Dialect/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/LLVMIR/Transforms/OptimizeForNVVM.cpp
    A mlir/lib/Dialect/NVVM/CMakeLists.txt
    A mlir/lib/Dialect/NVVM/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/NVVM/Transforms/OptimizeForNVVM.cpp
    M mlir/lib/RegisterAllPasses.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [NFC][mlir][nvvm] move OptimizeForNVVM to its own directory (#206520)

This change moves the NVVM optimizations in the LLVM Dialect directory
to a dedicated `mlir/lib/Dialect/NVVM/Transforms/` directory.

Cf.
https://discourse.llvm.org/t/rfc-separate-gpu-specific-transforms-from-llvmirtransforms/91151


  Commit: cc69878e754617ad556af30e9ea5fa7005379a32
      https://github.com/llvm/llvm-project/commit/cc69878e754617ad556af30e9ea5fa7005379a32
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

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

  Log Message:
  -----------
  [mlir][bazel] fix TestAnalysis deps (#206599)

Separating build fixes from #206520


  Commit: f3b3d7da5ffb824fa47cebefa72af5aef0b2d04d
      https://github.com/llvm/llvm-project/commit/f3b3d7da5ffb824fa47cebefa72af5aef0b2d04d
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AMDGPU/canonicalize.ll
    M llvm/test/Analysis/CostModel/AMDGPU/control-flow.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fround.ll
    M llvm/test/Analysis/CostModel/AMDGPU/fsub.ll

  Log Message:
  -----------
  [AMDGPU] Autogen checks for tests in AMDGPU Cost Model. NFC (#206595)

Even though there are comments in the test files saying checks
are autogenerated, it seems some checks are not actually updated. 
This work autogenerates checks based on the latest llvm source.


  Commit: 148b8ca7305a00d521b21ec0778dd2bf9d63a50e
      https://github.com/llvm/llvm-project/commit/148b8ca7305a00d521b21ec0778dd2bf9d63a50e
  Author: Letu Ren <fantasquex at gmail.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c

  Log Message:
  -----------
  [CIR] Support __builtin_nondeterministic_value (#206149)

Add a new CIR Op, FreezeOp, and use it to handle __builtin_nondeterministic_value


  Commit: 8af496ee46dd5ab1ace6f88033ac06c7355082a8
      https://github.com/llvm/llvm-project/commit/8af496ee46dd5ab1ace6f88033ac06c7355082a8
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

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

  Log Message:
  -----------
  [mlir] Bazel fix for #206520 (#206609)

I broke the bazel build in #206520 and pushed an incorrect fix in
#206599 which this PR also reverts.


  Commit: f38611692e56b0a5ced4ac1cff48c472d8beff35
      https://github.com/llvm/llvm-project/commit/f38611692e56b0a5ced4ac1cff48c472d8beff35
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-copyable-reused-scalars.ll

  Log Message:
  -----------
  [SLP] Apply reused-scalar reduction counters at the vectorized lane

The horizontal reduction reuse-counter scale was placed by deduplicated
candidate order, but the emitted reduction vector lane order is defined by
the root node, which may be reordered or split (SplitVectorize). As a
result a repeat count could be applied to the wrong lane, producing a wrong
reduction result. Place each counter at the lane the matching candidate is
vectorized to.

Fixes #206476

Reviewers: 

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


  Commit: 3516fe0c2fe39bfaec843a0ec0ab98f5023bc31a
      https://github.com/llvm/llvm-project/commit/3516fe0c2fe39bfaec843a0ec0ab98f5023bc31a
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Target/Target.h
    M lldb/source/Target/Target.cpp

  Log Message:
  -----------
  [lldb][NFC] Change how Target stores BreakpointNames (#205419)

This changes 2 things:
1) BreakpointNameList is now called BreakpointNameMap to reflect the
   actual underlying data structure.
2) BreakpointNameMap goes from a `std::map` to a `llvm::StringMap` to
   eliminate the use of ConstString.


  Commit: 8ed0ecfc3fede92c55f4169e2b37987d90679b34
      https://github.com/llvm/llvm-project/commit/8ed0ecfc3fede92c55f4169e2b37987d90679b34
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

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

  Log Message:
  -----------
  [lldb] Adjust SourceFileCompleter to use StringRef (#206603)

Instead of storing `const char *` (which are currently backed by
ConstStrings), it should instead store the FileSpec and extract the
Filename and Directory as needed.


  Commit: df8b27d618d987e2d8961659514efdaa41ffea05
      https://github.com/llvm/llvm-project/commit/df8b27d618d987e2d8961659514efdaa41ffea05
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M lldb/source/Target/TraceDumper.cpp

  Log Message:
  -----------
  [lldb][NFC] Change string types in static TraceDumper functions (#206604)

I plan on using this in a subsequent commit.


  Commit: fc654d498ebdf49a5634a43f45cc82004975acf0
      https://github.com/llvm/llvm-project/commit/fc654d498ebdf49a5634a43f45cc82004975acf0
  Author: Kevin Sala Penades <salapenades1 at llnl.gov>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/include/clang/AST/OpenMPClause.h

  Log Message:
  -----------
  [Clang][OpenMP][NFC] Remove unnecessary LParentLoc in clause classes (#206386)

The LParentLoc is already a data member of the OMPVarListClause class.
The OMPThreadLimitClause and OMPNumTeamsClause classes inherit from
OMPVarListClause and should not need to have their own LParentLoc.


  Commit: f5faf2902744e133336ae728bd654f94860f4868
      https://github.com/llvm/llvm-project/commit/f5faf2902744e133336ae728bd654f94860f4868
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M llvm/lib/Target/Lanai/LanaiCodeGenPassBuilder.cpp

  Log Message:
  -----------
  [Lanai] Force AsmPrinterEndPass (#206623)

So that no pass instrumentation ends up preventing the addition of this
necessary pass.

Also makes this consistent with X86.


  Commit: 925378c69722825f47afc170fe280d8af788c6c1
      https://github.com/llvm/llvm-project/commit/925378c69722825f47afc170fe280d8af788c6c1
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCV.td

  Log Message:
  -----------
  [RISCV][NFC] Use true/false for boolean fields in RISCV.td (#206399)


  Commit: df108f91d5b851e4a7012579d0fbb1c3fed8a995
      https://github.com/llvm/llvm-project/commit/df108f91d5b851e4a7012579d0fbb1c3fed8a995
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    M clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-static-library-empty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/duplicate-member.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-triple-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-invalid-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-name.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-wrong-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-normalized-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    M clang/unittests/ScalableStaticAnalysis/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Add `StaticLibrary` data structure (#205946)

This change introduces the `StaticLibrary` data structure, the SSAF analogue of `ar`, `libtool -static`, or `lib.exe`: a single-architecture bundle of `TUSummary` objects. `StaticLibrary` only stores `TUSummaryEncoding` because it will be used by `clang-ssaf-linker` that does not decode the summary data. We don't plan to create a decoded variant because there will be no consumer. Support for constructing and linking static libraries will be introduced in future PRs.

rdar://180665891


  Commit: efd5fe3074aaf31907781ab84c9f360cf823e6aa
      https://github.com/llvm/llvm-project/commit/efd5fe3074aaf31907781ab84c9f360cf823e6aa
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/test/Driver/linux-ld.c

  Log Message:
  -----------
  [Driver][RISCV] Fix musl dynamic linker path for RISC-V sf/sp ABI (#202513)

Musl adds -sf or -sp suffixes to the path of dynamic linker (e.g.,
ld-musl-riscv64-sf.so.1):


https://git.musl-libc.org/cgit/musl/tree/configure?h=v1.2.6&id=9fa28ece75d8a2191de7c5bb53bed224c5947417#n732

---------

Co-authored-by: Chih-Mao Chen <cmchen at andestech.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: 71113eb33964b4e2bceb0f8af08e3aabe03135a1
      https://github.com/llvm/llvm-project/commit/71113eb33964b4e2bceb0f8af08e3aabe03135a1
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/lib/Sema/SemaExprCXX.cpp

  Log Message:
  -----------
  [Sema][NFC] Extract allocation overload diagnostics (#206219)

This extracts the code that emits diagnostics when no viable function is
found for allocation overload resolution to reduce the diff in #203824.


  Commit: 93da31b66e5a65c3ee55bfa9ef0f7e82d1822a1b
      https://github.com/llvm/llvm-project/commit/93da31b66e5a65c3ee55bfa9ef0f7e82d1822a1b
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/BackendConsumer.h
    M clang/lib/CodeGen/CodeGenAction.cpp
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/IR/DiagnosticInfo.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
    A llvm/test/TableGen/intrinsic-target-features.td
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
    M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [RFC][CodeGen] Add generic target feature checks for intrinsics (#201470)

This PR adds target-independent infrastructure for annotating LLVM
intrinsics with required subtarget feature expressions.

It introduces a TargetFeatures string field to intrinsic TableGen
records. TableGen emits an intrinsic-to-feature mapping table.

Both SelectionDAG and GlobalISel now perform this check before lowering
target intrinsics. This allows targets to opt in by annotating intrinsic
definitions directly, rather than adding custom checks during lowering,
legalization, or instruction selection.

This PR uses one AMDGPU intrinsic as an example.


  Commit: d3b8ff3a4ef0ca0912bd131497511e2024b584d0
      https://github.com/llvm/llvm-project/commit/d3b8ff3a4ef0ca0912bd131497511e2024b584d0
  Author: wanglei <wanglei at loongson.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll

  Log Message:
  -----------
  Revert "[LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instructions" (#206632)

Reverts llvm/llvm-project#200901

buildbot: https://lab.llvm.org/staging/#/builders/20/builds/28603


  Commit: fb20f9f66205f936c096bc45d52afd8bd0ac9d07
      https://github.com/llvm/llvm-project/commit/fb20f9f66205f936c096bc45d52afd8bd0ac9d07
  Author: Alok Kumar Sharma <AlokKumar.Sharma at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
    A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll

  Log Message:
  -----------
  [MergeFunctions] Preserve entry counts on folds (#202218)

**Summary**

`MergeFunctions` can fold equivalent functions into a single retained
implementation. When that happens, the retained body may be reached by
callers of both original functions, but its `function_entry_count`
metadata previously preserved only one side of the profile data.

For example, folding functions with entry counts `2000` and `1000` could
leave the retained body with only `2000`. This patch updates the
retained implementation after a successful merge, so the entry count
becomes `3000`, using saturating add.

For ODR/double-thunk merges, the private backing body gets the combined
count while the thunks keep their own entry counts. For alias-backed
merges, the backing function carries the combined count.

**AI Assistance Disclosure**

AI tools were used to browse the LLVM codebase and explore test-case
variations. All outputs were manually reviewed and validated, and I take
full responsibility for the final changes.


  Commit: 0b664d91fe94ba0e8a51b408dec1e179bbf8c46c
      https://github.com/llvm/llvm-project/commit/0b664d91fe94ba0e8a51b408dec1e179bbf8c46c
  Author: lijinpei-amd <jinpli at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp
    A llvm/test/Transforms/FixIrreducible/pr191979.ll

  Log Message:
  -----------
  [FixIrreducible] Handle conditional branch with both successors as header (#206057)

A conditional branch redirecting edges to the cycle header may have both
successors equal to the header (e.g. `br i1 %c, label %h, label %h`),
which the previous `Succ1 = Succ0 ? nullptr : Header` logic mishandled
by dropping the second edge.

Check each successor independently against the header instead.

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


  Commit: 869c45984893870267deae65cdc2429888a7c1a4
      https://github.com/llvm/llvm-project/commit/869c45984893870267deae65cdc2429888a7c1a4
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll

  Log Message:
  -----------
  [RISCV][P-ext] Avoid redundant accumulator extend for reduction sum (#206430)

For a reduction sum with an i32 accumulator on RV64, the result is
computed at i64 and truncated, so the accumulator's upper bits are
unused. Any-extend it instead of sign-/zero-extending, dropping a
redundant sext.w/zext.w. Follow-up to #206004.


  Commit: 6600ad0949f8450406fd768d5cd9f1ce9819d2c5
      https://github.com/llvm/llvm-project/commit/6600ad0949f8450406fd768d5cd9f1ce9819d2c5
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c

  Log Message:
  -----------
  [Clang][RISCV] packed reduction sum intrinsics (#206441)

Add the __riscv_predsum/predsumu_* header wrappers over new
__builtin_riscv_* builtins, lowering to the llvm.riscv.predsum/predsumu
intrinsics.


  Commit: 442c59c75ca384db53a6d6d81686b17ea4b397c3
      https://github.com/llvm/llvm-project/commit/442c59c75ca384db53a6d6d81686b17ea4b397c3
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    R llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
    R llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll

  Log Message:
  -----------
  Revert "[MergeFunctions] Preserve entry counts on folds" (#206640)

Reverts llvm/llvm-project#202218

Causes build failures and needs to be rebased on top of main before
relanding.


  Commit: 45974112fd727b41fe3c4381b94392c1e7fbdd36
      https://github.com/llvm/llvm-project/commit/45974112fd727b41fe3c4381b94392c1e7fbdd36
  Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M mlir/cmake/modules/AddMLIRPython.cmake

  Log Message:
  -----------
  [mlir][python][NFC] Clean up nanobind compile options (#206559)

Follow-up to #204230.

Refactor nanobind warning suppression flags into `build_nanobind_lib`.
Drop duplicate RTTI and exception flags.


  Commit: 02de6f8ffed5ff3dae0ac01e526ede69dbdc8caa
      https://github.com/llvm/llvm-project/commit/02de6f8ffed5ff3dae0ac01e526ede69dbdc8caa
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/AST/ByteCode/builtin-constant-p.cpp
    A clang/test/AST/ByteCode/enable_if.c
    M clang/test/SemaCXX/enable_if-nested-call-with-valuedependent-param.cpp
    M clang/test/SemaCXX/enable_if.cpp

  Log Message:
  -----------
  [clang][bytecode] Implement support for `Expr::EvaluateWithSubstitution()` (#204781)

This regresses `Sema/enable_if.c`, which now fails when run with the
bytecode interpreter. We also get 14 more diagnostic differences in
`SemaCXX/builtin-object-size-cxx14.cpp`.



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


  Commit: 3b04eaa0e4c2a4e86719156ec4859ef26e577479
      https://github.com/llvm/llvm-project/commit/3b04eaa0e4c2a4e86719156ec4859ef26e577479
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-06-29 (Mon, 29 Jun 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    A flang/test/Fir/CUDA/cuda-device-global-internal-linkage.fir

  Log Message:
  -----------
  [flang][cuda] Strip linkage from cloned gpu globals (#206624)


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

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblySubtarget.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  [WebAssembly][NFC] Remove direct access to FeatureKV (#206232)

This is preparatory work for changing the representation of
FeatureKV/SubTypeKV, in which they will no longer be that easily
accessible as global variables. Therefore, get them from the subtarget
instead.


  Commit: 673ddc9b838de69926b4f81a0acc93291b075104
      https://github.com/llvm/llvm-project/commit/673ddc9b838de69926b4f81a0acc93291b075104
  Author: jpwang <jpwang at smail.nju.edu.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-rewrite-in-destination-passing-style.mlir

  Log Message:
  -----------
  [mlir][linalg] Handle existing destination-passing-style ops in `transform.structured.rewrite_in_destination_passing_style` (#205034)

`transform.structured.rewrite_in_destination_passing_style` may be
applied to an operation that is already in destination-passing style,
e.g. `linalg.add`. In this case, the operation does not need to be
rewritten, but the current `TypeSwitch` does not handle
`DestinationStyleOpInterface` and falls through to the unreachable case.

Such operations can be handled by returning them unchanged. This makes
the transform accept already destination-style operations and avoids the
crash.

An regression test for applying `rewrite_in_destination_passing_style`
is added to `linalg.add`.

Fixes #204099


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

  Changed paths:
    M flang/test/CMakeLists.txt

  Log Message:
  -----------
  [flang][cmake] Order flang profdata generation after clang's (#206023)

The clang and flang PGO pipelines clean and regenerate the same shared
profraw directories, so running them concurrently can truncate a profraw
while the other merge has it mmap'd. Add an ordering edge so flang's
pipeline runs after clang's.

Fixes issues introduced by
https://github.com/llvm/llvm-project/pull/198863


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

  Changed paths:
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/Misc/constexpr-source-ranges.cpp

  Log Message:
  -----------
  [clang][ExprConst] Add a source range to invalid cast diagnostics (#206456)

Also fix this test to not have absolute line numbers


  Commit: aba63c572000e14a6ad24f403c50e90f0001dd05
      https://github.com/llvm/llvm-project/commit/aba63c572000e14a6ad24f403c50e90f0001dd05
  Author: Yihan Wang <yronglin777 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [clang] The `__reference_meows_from_temporary` builtins should SFINAE friendly when the 1st type is not a reference type (#206527)

Suppose that `__reference_constructs_from_temporary` is defined as:

```cpp
__reference_constructs_from_temporary(_Tp, _Up);
```
A non-reference type can never bind to a temporary, so the result is
always `false` for such a `_Tp`. We should short-circuit before reaching
the instantiations by check the type of `_Tp`. But clang's
`__reference_constructs_from_temporary` eagerly instantiates the
construction of `_Up` (including the element's constructor exception
specification) even when `_Tp` is not a reference, which can hard-error
on misbehaved types.

The following code should be accepted, but clang raise a hard error:

```cpp
struct NoConv {};
struct Bad { template<class T> Bad(T v) noexcept(noexcept(member_ = v)) {} int member_; };
static_assert(!__reference_constructs_from_temporary(Bad, NoConv&&));
static_assert(!__reference_converts_from_temporary(Bad, NoConv&&));
static_assert(!__reference_binds_to_temporary(Bad, NoConv&&));
```

The PR refine the implementation of these builtins by short-circuits on
a non-reference first operand.

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

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: f06918d490cefac448c2de4457648661dc224135
      https://github.com/llvm/llvm-project/commit/f06918d490cefac448c2de4457648661dc224135
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    A llvm/test/CodeGen/NVPTX/insert-vector-elt-shuffle-i8.ll

  Log Message:
  -----------
  [DAGCombiner][NVPTX] Avoid forming illegal-typed shuffles after type-legalization (#205056)

Currently, `combineInsertEltToShuffle` could create a shuffle of an
illegal type after type legalization, which when reaches the operation
legalizer, asserts ("Unexpected illegal type!").

https://github.com/llvm/llvm-project/pull/198259 fixed a crash resulting
from this in NVPTX but resulted in regressions with some types due to
the check blocking pre-type-legalization folds in addition to the
illegal post-type-legalization shuffle.

This change removes the TTI override in NVPTX and adds a guard in the
`combineInsertEltToShuffle` pattern to avoid forming illegal-typed
shuffles after type legalization.


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

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnroll.cpp
    M llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions-min-max.ll
    M llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll

  Log Message:
  -----------
  [LoopUnroll] Skip called function in constant-op reduction filter (#200868)

canParallelizeReductionWhenUnrolling iterates the latch instruction's
operands and rejects the reduction if any is a Constant. For calls the
called function is itself a Constant, falsely rejecting every intrinsic
form (fmuladd, smin/smax/umin/umax, etc.). Use CallBase::args() to
restrict the check to data operands.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode] Use ASTRecordLayout offsets when subtracting pointers (#206496)

What we did here didn't work properly for pointers casted to bases. Add
`Pointer::computeLayoutOffset()` and use that to return the proper
values.


  Commit: 20100a277a449f1c013c7a4c00cbf6b8fa8ca0e4
      https://github.com/llvm/llvm-project/commit/20100a277a449f1c013c7a4c00cbf6b8fa8ca0e4
  Author: Ilpo Ruotsalainen <lonewolf at iki.fi>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/Mips/GlobalISel/legalizer/zextLoad_and_sextLoad.mir

  Log Message:
  -----------
  [Mips][GISel][NFC] Regenerate CHECK lines in zextLoad_and_sextLoad.mir (#206631)


  Commit: 77de767af99b151046d1f25df4e37ba61e79531c
      https://github.com/llvm/llvm-project/commit/77de767af99b151046d1f25df4e37ba61e79531c
  Author: Xiaomeng Zhang <zhangxiaomeng at hygon.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/Driver/x86-march.c
    M clang/test/Frontend/x86-target-cpu.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/lib/Target/X86/X86.td
    A llvm/lib/Target/X86/X86ScheduleC864GM8.td
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    M llvm/test/CodeGen/X86/bypass-slow-division-64.ll
    M llvm/test/CodeGen/X86/cmp16.ll
    M llvm/test/CodeGen/X86/cpus-hygon.ll
    M llvm/test/CodeGen/X86/rdpru.ll
    M llvm/test/CodeGen/X86/slow-unaligned-mem.ll
    M llvm/test/CodeGen/X86/sqrt-fastmath-tune.ll
    M llvm/test/CodeGen/X86/vector-shuffle-fast-per-lane.ll
    M llvm/test/CodeGen/X86/x86-64-double-shifts-var.ll
    M llvm/test/MC/X86/x86_long_nop.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/independent-load-stores.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/partially-overlapping-group-resources.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-adx.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-aes.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx1.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx2.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalg.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bitalgvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bw.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512bwvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cd.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512cdvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dq.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512dqvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfni.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512gfnivl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifma.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512ifmavl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaes.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vaesvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmi2vl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vbmivl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnni.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vnnivl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersect.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vp2intersectvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdq.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpclmulqdqvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdq.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avx512vpopcntdqvl.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxgfni.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-avxvnni.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi1.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-bmi2.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clflushopt.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-clwb.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmov.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-cmpxchg.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-f16c.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fma.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-fsgsbase.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-gfni.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lea.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-lzcnt.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mmx.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-movbe.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-mwaitx.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-pclmul.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-popcnt.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-prefetchw.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdrand.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-rdseed.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sha.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-shstk.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse1.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse2.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse3.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse41.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse42.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-sse4a.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-ssse3.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vaes.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-vpclmulqdq.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_32.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x86_64.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-x87.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/resources-xsave.s
    A llvm/test/tools/llvm-mca/X86/C864GM8/zero-idioms.s

  Log Message:
  -----------
  [X86] Hygon C86-4G-M8 Initial enablement (#204587)

This patch adds initial support for Hygon C86-4G-M8 architectures:

- Added C86-4G-M8 CPU targets recognition in Clang and LLVM
- Added C86-4G-M8 to target parser and host CPU detection
- Updated compiler-rt CPU model detection for C86-4G-M8
- Added C86-4G-M8 to various optimizer tests
- Added scheduler models and llvm-mca tests for C86-4G-M8 CPU targets


  Commit: 3a25d9f2ee854904158c6fe773bf8ce1850197b5
      https://github.com/llvm/llvm-project/commit/3a25d9f2ee854904158c6fe773bf8ce1850197b5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AMDGPU/shuffles-of-length-changing-shuffles.ll

  Log Message:
  -----------
  [VectorCombine] Bail out on all-poison leaves in shuffle transform (#206503)

foldShufflesOfLengthChangingShuffles() skips undef sources when
determining Y, so if all the leaves are undef, we can end up with Y
being nullptr after the loop. Bail out in this degenerate case.


  Commit: fc20c57067f1aa35968d0a4c7542e2d732e6e159
      https://github.com/llvm/llvm-project/commit/fc20c57067f1aa35968d0a4c7542e2d732e6e159
  Author: Sven van Haastregt <sven.vanhaastregt at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp

  Log Message:
  -----------
  [CodeGen] Avoid ambiguous Register comparison in C++20; NFC (#205814)

Fix an "ambiguous overload for ‘operator==’" error when compiling with
`-std=c++20`, caused by C++20's rewritten operator== candidate rules.


  Commit: d79df25b12350671f48de63ab43493b671b496c2
      https://github.com/llvm/llvm-project/commit/d79df25b12350671f48de63ab43493b671b496c2
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/test/CodeGen/WebAssembly/funcref-call.ll

  Log Message:
  -----------
  [WebAssembly] Define `__funcref_call_table` in generated asm and objects (#180900)

Currently, calls into funcref (`call addrspace(20)`) are lowered into a
store of the ref into a special single-element `__funcref_call_table`, a
call_indirect into said table, then a store of null into it.

It functions just fine when `-filetype=asm` (default), but when emitting
an object file directly from llc it fails with `LLVM ERROR: undefined
table symbol cannot be weak`

This fixes said error by "defining" it during `WebAssemblyAsmPrinter`,
and ensuring it is definitely emitted as weak (so duplicate tables in
multiple objects are merged into a single one).


  Commit: 666b209298eef9a7b1c78c1391252dd25ceb6eaf
      https://github.com/llvm/llvm-project/commit/666b209298eef9a7b1c78c1391252dd25ceb6eaf
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/bitcast.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptosi.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/fptoui.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/sitofp.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/uitofp.ll

  Log Message:
  -----------
  [WebAssembly][GlobalISel] Implement conversion/cast ops between integer and floating-point (#197255)

Adds legalization and tests for operations converting between int and
float (`G_BITCAST`, `G_FPTOSI`, `G_FPTOUI`, `G_SITOFP` and `G_UITOFP`).

Saturating float => int ops will be finished later once comparison
operators are in place (which for this, `G_SELECT`, `G_FCMP`, `G_UMIN`,
and `G_SMIN` are needed at least).

Split from #157161


  Commit: dce25be9ad415ec18b160db3379490cb2bd260e8
      https://github.com/llvm/llvm-project/commit/dce25be9ad415ec18b160db3379490cb2bd260e8
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyInstructionSelector.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/copy.mir

  Log Message:
  -----------
  [WebAssembly][GlobalISel] Implement `COPY` (#197256)

Adds instruction select handling and tests for `COPY`. While `COPY` gets
dissolved in the end, these changes are required to keep the selector
from crashing when trying to assign a regclass to its operands.

Split from #157161


  Commit: 231132317392e06e62c30fca4ae0860bba8b2cf5
      https://github.com/llvm/llvm-project/commit/231132317392e06e62c30fca4ae0860bba8b2cf5
  Author: Demetrius Kanios <demetrius at kanios.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/icmp.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/scmp.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/select.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smax.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/smin.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/ucmp.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umax.ll
    A llvm/test/CodeGen/WebAssembly/GlobalISel/instructions/umin.ll

  Log Message:
  -----------
  [WebAssembly][GlobalISel] Implement integer comparisons and `G_SELECT` (#197257)

Adds legalization and tests for various integer comparison operations
(namely `G_ICMP` is legal, but also enable `lower` for some other ones),
as well as `G_SELECT`.

Split from #157161


  Commit: b792db95920052ee292e55a03a43d722e8eb3475
      https://github.com/llvm/llvm-project/commit/b792db95920052ee292e55a03a43d722e8eb3475
  Author: Nikhil Kotikalapudi <Nikhil.Kotikalapudi at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h

  Log Message:
  -----------
  [AMDGPU] Relocated getMaxNumWorkGroups function out of AMDGPUSubtarget (NFC) (#205636)


  Commit: 5026b324736ea3ccd65d2a41f746126e5ee8a4f0
      https://github.com/llvm/llvm-project/commit/5026b324736ea3ccd65d2a41f746126e5ee8a4f0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M orc-rt/include/CMakeLists.txt
    A orc-rt/include/orc-rt/StandaloneMachOUnwindInfoRegistrar.h
    A orc-rt/include/orc-rt/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.h
    M orc-rt/lib/executor/CMakeLists.txt
    A orc-rt/lib/executor/StandaloneMachOUnwindInfoRegistrar.cpp
    A orc-rt/lib/executor/sps-ci/StandaloneMachOUnwindInfoRegistrarSPSCI.cpp
    M orc-rt/unittests/CMakeLists.txt
    A orc-rt/unittests/StandaloneMachOUnwindInfoRegistrarTest.cpp

  Log Message:
  -----------
  [orc-rt] Add StandaloneMachOUnwindInfoRegistrar. (#206669)

StandaloneMachOUnwindInfoRegistrar provides methods and SPS-CI
allocation actions for registering and deregistering MachO unwind-info
sections (DWARF EH-frame and compact-unwind) via libunwind's
find-dynamic-unwind-sections APIs.

A Registration handle returned by enable() represents the connection
with libunwind; clients must keep it alive for the lifetime of their
Session, and its destructor releases the registration. Concurrent
registrations are reference-counted so multiple sessions can share a
single underlying libunwind hook.

Registered code ranges are stored in an interval map. Overlapping ranges
are rejected; lookups for an address outside any registered range return
no info, so libunwind falls back to its other lookup mechanisms safely.

A future MachO-Platform will provide integrated unwind-info registration
and should be preferred when available. This class will then remain
appropriate for MachO executors that deliberately omit the full
platform.

Unit tests cover the UnwindInfoMap storage layer
(register/deregister/lookup, overlap rejection, edge cases). The
libunwind-facing layer — enable(), the Registration RAII, and the
find-dynamic-unwind-sections callback — is left to regression tests,
which will become possible in the near future (once initial
ControllerAccess implementations land).


  Commit: c452e7edd9e9fec10bab4c9de09846529454dcab
      https://github.com/llvm/llvm-project/commit/c452e7edd9e9fec10bab4c9de09846529454dcab
  Author: Ilpo Ruotsalainen <lonewolf at iki.fi>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-fallback.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/riscv-unsupported.ll

  Log Message:
  -----------
  [GISel][Inlineasm] Don't assert on multi-register inline asm inputs (#200612)

`lowerInlineAsm()` asserts that the number of registers allocated for an
input operand equals the number of source vregs, then separately bails
for `NumRegs > 1`. The assert is wrong: the counts legitimately differ
when a value is passed in a register pair/tuple (e.g. i128 in a RISC-V
"R" GPR pair, or i512 to an AArch64 ld64b operand), crashing
assertions-enabled builds instead of falling back to SelectionDAG.

Replace the assert and the `NumRegs > 1` check with a single guard
requiring exactly one source vreg in one register; anything else is
rejected so it falls back instead of asserting. The supported path is
unchanged.

https://godbolt.org/z/v6WTaYEsd


  Commit: 816d3f25995595aa34ee3b65811dd5a5eab077e6
      https://github.com/llvm/llvm-project/commit/816d3f25995595aa34ee3b65811dd5a5eab077e6
  Author: Chris Copeland <chris at chrisnc.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/test/MC/ARM/basic-thumb2-instructions.s
    M llvm/test/MC/ARM/thumb2-diagnostics.s

  Log Message:
  -----------
  [ARM] Allow predicated `subs pc, lr, #imm` in Thumb2 (#205751)

ARMAsmParser has a special case for this instruction that used the
instruction name unmodified, but this would include the condition code,
so if the instruction has one, the tblgen entry doesn't match. The
condition code is already added as a separate operand.

Check for `CarrySetting` so that the special case does not falsely match
on `sub pc, lr, #imm`, which is not valid in Thumb2.


  Commit: 46e376c6025f155ab4ec7a09a96e18c744b709f7
      https://github.com/llvm/llvm-project/commit/46e376c6025f155ab4ec7a09a96e18c744b709f7
  Author: StoeckOverflow <95052643+StoeckOverflow at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/APINotes/APINotesReader.h
    M clang/include/clang/APINotes/APINotesWriter.h
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/test/APINotes/Inputs/WhereParametersConvertDiag/APINotes.apinotes
    M clang/test/APINotes/Inputs/WhereParametersConvertDiag/WhereParametersConvertDiag.h
    A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/APINotes.apinotes
    A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/WhereParametersConvertDiag.h
    M clang/test/APINotes/where-parameters-convert-diags.cpp

  Log Message:
  -----------
  [APINotes] Serialize function-like Where.Parameters (#204147)

This PR builds on #203227 by serializing function-like
`Where.Parameters` selectors into binary API notes.

The selector remains declaration-selection data, separate from
annotation payloads. Existing Sema paths still use name-only lookup and
keep legacy broad matching. Exact overload matching is left to the
follow-up Sema PR.

## Format

This bumps the API notes minor version because the global-function and
C++ method table key layout changes.

Function-like entries now use a shared binary key containing:

- parent context ID
- declaration name ID
- selector flags
- parameter count
- zero or more parameter type string IDs

The parameter type strings are stored through the existing identifier
table.

The selector flag records whether `Where.Parameters` was present. This
is needed because an absent selector and an explicitly empty selector
would otherwise both have parameter count `0`:

```yaml
- Name: currentWidget
```

versus:

```yaml
- Name: currentWidget
  Where:
    Parameters: []
```

The first entry is the legacy broad/name-only key. The second entry is
an exact zero-explicit-parameter selector.

## Implementation Details

This introduces a shared `FunctionTableKey` for global functions and C++
methods, so same-name entries can be distinguished by optional exact
parameter selectors.

Existing name-only reader/writer APIs are preserved as compatibility
wrappers. New selector-aware overloads accept optional parameter
strings:

- `std::nullopt` means broad/name-only key
- empty parameter list means exact zero-parameter selector
- non-empty parameter list means exact ordered parameter selector

The selector remains outside
`FunctionInfo`/`GlobalFunctionInfo`/`CXXMethodInfo`, because it
identifies which declaration an entry applies to rather than changing
the imported declaration effect.

Malformed empty `Where: {}` entries are rejected during conversion so
they do not silently fall back to broad name-only storage.

## Testing caveat

This PR keeps testing in the ordinary `clang/test/APINotes` FileCheck
path and does not add an APINotes binary lookup helper. As a result, the
tests cover YAML conversion and malformed selector diagnostics, but they
do not directly prove binary reader round-trip lookup for
same-name/different-parameter entries.

The binary reader/writer support is implemented here. Direct end-to-end
lookup coverage will come with the follow-up Sema matching PR.

Reviewers: @Xazax-hun @egorzhdan @j-hui


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

  Changed paths:
    M clang/lib/Driver/OffloadBundler.cpp
    R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.co
    R clang/test/Driver/Inputs/clang-offload-bundler-magic-collision.py
    R clang/test/Driver/clang-offload-bundler-magic-collision.c
    M llvm/lib/Object/OffloadBundle.cpp
    R llvm/test/tools/llvm-objdump/Offloading/fatbin-magic-collision.test

  Log Message:
  -----------
  Revert "[OffloadBundler] Bound compressed bundles by header size, not magic scan (#205587)" (#206678)

Causes test failures on big-endian.

This reverts commit d2d80787af6e1d671563654171f34e8eec35fd1b.
This reverts commit bac7ca5f170f25517870e0876d710cc4226c3602.


  Commit: 4b802fed943f420377c80fac82257000c1a11a9e
      https://github.com/llvm/llvm-project/commit/4b802fed943f420377c80fac82257000c1a11a9e
  Author: Igor Wodiany <igor.wodiany at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/VOPDInstructions.td

  Log Message:
  -----------
  [AMDGPU] Use sparse direct lookup table for VOPD eligibility (#206534)

This replaces a manually generated table with a new TableGen feature
that enables sparse direct lookup. Additional changes are made to put
both X and Y eligibility into a single table.

Assisted-by: Claude Code


  Commit: 024f7891a43c092b5a1e71411b6552186cb25cf1
      https://github.com/llvm/llvm-project/commit/024f7891a43c092b5a1e71411b6552186cb25cf1
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/CMakeLists.txt

  Log Message:
  -----------
  [lldb][Windows] Use (lib)python3.dll when linking with limited API (#206585)

In release builds, we already link liblldb against `(lib)python3.dll`
(#201407). However, we still defined
`LLDB_PYTHON_RUNTIME_LIBRARY_FILENAME` to `(lib)python3(.)xx.dll`. So
`LoadPythonRuntime` will try to load the version specific library. You
can reproduce this when trying to run a release build with a different
Python version in PATH.

With this PR, `LLDB_PYTHON_RUNTIME_LIBRARY_FILENAME` will use the stable
ABI library name if we use the limited Python API.


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

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/test/C/C11/n1285_1.c
    M clang/test/CodeGen/AArch64/ls64-inline-asm.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/errno-tbaa.c
    M clang/test/CodeGen/sanitize-metadata-ignorelist.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/sanitize-type-globals.cpp
    M clang/test/CodeGen/tbaa-class.cpp
    M clang/test/CodeGen/tbaa-matrix.c
    M clang/test/CodeGen/tbaa-ms-abi.cpp
    M clang/test/CodeGen/tbaa-pointers.c
    M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
    M clang/test/CodeGen/tbaa-struct.cpp
    M clang/test/CodeGen/tbaa.c
    M clang/test/CodeGen/tbaa.cpp
    M clang/test/CodeGen/union-tbaa1.c
    M clang/test/CodeGen/wasm-fp16.c
    M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
    M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
    M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
    M clang/test/CodeGenCXX/load-reference-metadata.cpp
    M clang/test/CodeGenCXX/std-byte.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
    M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
    M clang/test/CodeGenOpenCL/preserve_vec3.cl
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/amdhsa_abi.cl
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/bug56913.c
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
    M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
    M llvm/test/Transforms/InstCombine/may-alias-errno.ll

  Log Message:
  -----------
  [Clang] Emit struct TBAA for llvm.errno.tbaa (#201375)

For `!llvm.errno.tbaa`, emit TBAA for accessing the member of a virtual
`__libc_errno` struct. The purpose is to indicate that errno aliases
with `int` accesses, but not `int` member accesses in other structs.

This is an alternative to
https://github.com/llvm/llvm-project/pull/200367.


  Commit: e7f7fbc8d38d6d60cd29d497e6a14b9ce26722fb
      https://github.com/llvm/llvm-project/commit/e7f7fbc8d38d6d60cd29d497e6a14b9ce26722fb
  Author: Krish Gupta <krishom70 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/Transforms/StaticMemoryPlannerAnalysis.cpp
    A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-analysis.mlir
    A mlir/test/Dialect/Bufferization/Transforms/static-memory-planner-arena-arg.mlir

  Log Message:
  -----------
  [mlir][bufferization] Add static memory planner pass for compile-time buffer allocation (#205125)

This PR introduces a new bufferization-related pass that performs static memory
planning at compile time. The pass is part of my GSoC 2026 project on
improving MLIR's buffer allocation strategies:
https://summerofcode.withgoogle.com/programs/2026/projects/XsjxBQ9o

### What this does

The static memory planner analyzes buffer lifetimes within a function
and consolidates multiple small `memref.alloc`/`memref.dealloc` pairs
into a single arena allocation. Instead of making separate heap
allocations for each memref, we compute offsets ahead of time and carve
out slices from one large buffer using `memref.view`.

This is useful for embedded systems and other memory-constrained
environments where you want predictable memory usage without runtime
allocation overhead.

### Implementation details

The core idea is pretty straightforward - we scan the function for
allocations that have clear deallocation points, compute how much space
each one needs (including alignment padding), and then create one big i8
buffer to hold everything. Each original allocation gets replaced with a
view into the arena at the computed offset.

I split the planning logic into a pure C++ function
(`trivialMemoryPlanner`) so it can be unit tested independently. Right
now it just does sequential packing, but the design makes it easy to
plug in fancier algorithms later (like actually trying to overlap
non-interfering lifetimes).

A few notable choices:
- The arena is always `memref<Nxi8>` - this lets us handle mixed element
types in the same arena
- We use `memref.view` to reinterpret slices back to the original types.
I initially explored `memref.reinterpret_cast` but it can't change
element types, only adjust offsets/strides
- There's an optional `--arena-mode=arg` that assumes the arena is
passed as a function argument instead of allocated inside the function
- The pass conservatively bails on anything tricky: dynamic shapes,
allocations without clear deallocations, or allocations that escape via
return values

### Testing

Tests cover the main scenarios:
- Basic sequential allocations
- Alignment requirements (mixing 128-byte, 64-byte aligned memrefs,
etc.)
- Both arena modes (allocated vs passed as arg)
- All the error cases where we should skip transformation

Let me know if there are any concerns or if the approach needs
adjusting. Happy to iterate on this!

---------

Signed-off-by: KrxGu <krishom70 at gmail.com>


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/test/Transforms/LoopIdiom/memset-multiple-accesses.ll

  Log Message:
  -----------
  [LoopIdiom] Form memset on runtime-trip multi-store loops. (#206354)

For runtime trip counts, mayLoopAccessLocation cannot bound the size of
the access, which prevents forming memsets for loops with multiple
stores of the same value.

If all may-aliasing stores write the same value, we can still form
potentially overlapping memsets, as the order of the memsets or writing
the same location multiple times should not matter.

On a large C/C++ based corpus (32k modules), we form ~2% more memsets.

```
                     base       patch
memsets formed      90,063     91,853   +1.99%
```

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


  Commit: be82f85c0cc80eb2e3b7ce612caf247212618708
      https://github.com/llvm/llvm-project/commit/be82f85c0cc80eb2e3b7ce612caf247212618708
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Slice the new dim in broadcast properly (#206136)


  Commit: 719f52b3d532a52393afe6b1ab4a3df4746acc23
      https://github.com/llvm/llvm-project/commit/719f52b3d532a52393afe6b1ab4a3df4746acc23
  Author: Hendrik Hübner <117831077+HendrikHuebner at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Options/Options.td
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    A clang/lib/CIR/Dialect/Transforms/LibOpt.cpp
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    A clang/test/CIR/Transforms/lib-opt.cpp

  Log Message:
  -----------
  [CIR] Intitial upstreaming of LibOpt pass (#172487)

This PR Upstreams a skeleton for the LibOpt pass, including the Clang frontend wiring.


  Commit: 15d69510a17baa950137be4143f8877dee37cc7c
      https://github.com/llvm/llvm-project/commit/15d69510a17baa950137be4143f8877dee37cc7c
  Author: ConvolutedDog <yangjianchao16 at nudt.edu.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/test/Dialect/SparseTensor/invalid.mlir

  Log Message:
  -----------
  [mlir] Fix StridedMemRefRankOf to check isStrided()  (#201415)

StridedMemRefRankOf was equivalent to MemRefRankOf: it only applied
HasAnyRankOfPred and never HasStridesPred, so non-strided memref layouts
(e.g. multi-result affine maps) incorrectly passed ODS verification on
ops using this constraint (e.g. sparse_tensor.push_back).

The inBuffer of push_back uses StridedMemRefRankOf, which requires a
strided memref layout (HasStridesPred). A non-strided layout must be
rejected.


  Commit: 201b694dc4d3bea93185356b7820221b75842c0d
      https://github.com/llvm/llvm-project/commit/201b694dc4d3bea93185356b7820221b75842c0d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/llvm-libc-macros/linux/sched-macros.h
    M libc/include/sched.yaml
    M libc/src/sched/CMakeLists.txt
    M libc/src/sched/linux/CMakeLists.txt
    A libc/src/sched/linux/sched_andcpuset.cpp
    A libc/src/sched/linux/sched_cpuequal.cpp
    A libc/src/sched/linux/sched_orcpuset.cpp
    A libc/src/sched/linux/sched_xorcpuset.cpp
    A libc/src/sched/sched_andcpuset.h
    A libc/src/sched/sched_cpuequal.h
    A libc/src/sched/sched_orcpuset.h
    A libc/src/sched/sched_xorcpuset.h
    M libc/test/src/sched/CMakeLists.txt
    A libc/test/src/sched/sched_andcpuset_test.cpp
    A libc/test/src/sched/sched_cpuequal_test.cpp
    A libc/test/src/sched/sched_orcpuset_test.cpp
    A libc/test/src/sched/sched_xorcpuset_test.cpp

  Log Message:
  -----------
  [libc] Implement CPU_{AND,OR,XOR,EQUAL}(_S)? macros (#205412)

This patch implements CPU_AND, CPU_OR, CPU_XOR, and CPU_EQUAL macros
(along with their _S variants) from sched.h.

The implementation follows existing patterns by adding internal entry
points (__sched_andcpuset, __sched_orcpuset, __sched_xorcpuset, and
__sched_cpuequal) that perform bitwise operations on cpu_set_t. For
__sched_cpuequal, I use inline_memcmp instead of a manual loop.

Assisted by Gemini.


  Commit: 05bb745dfa9336650ea06eb47f677f18da758b01
      https://github.com/llvm/llvm-project/commit/05bb745dfa9336650ea06eb47f677f18da758b01
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td

  Log Message:
  -----------
  [AMDGPU] Fix regclass for a true16 pattern. NFCI. (#206513)

Add an EXTRACT_SUBREG to make it clear that the result of the pattern is
only the low 16 bits of the result of the V_BFI_B32. This does not seem
to affect codegen, presumably because we are lax about allowing COPY
between VGPR_16 and VGPR_32.


  Commit: 5e2b7dab75cf4831098759ce7b15d8810ecf7c31
      https://github.com/llvm/llvm-project/commit/5e2b7dab75cf4831098759ce7b15d8810ecf7c31
  Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/lit/lit/builtin_commands/diff.py

  Log Message:
  -----------
  [lit] Use provided streams in builtin diff (#204869)

We want to move the diff builtin to run in-process inside the lit
worker, instead of spawning a subprocess. The current implementation
talks to sys.stdin / stdout / stderr directly, so it can't be called
with different streams.

To fix this, pull diff's logic into run(argv, stdin, stdout, stderr,
cwd), which takes streams as arguments instead of reaching for sys.std*.
main() now just calls run() with the real process streams, so the
spawned-script path is unchanged.

This also makes the 'import util' dual-mode: lit.util when diff is
imported as part of the lit package, falling back to flat util for the
spawned script.


  Commit: 67e6697e50d4820987d3f880e92fbb9f29f0d7db
      https://github.com/llvm/llvm-project/commit/67e6697e50d4820987d3f880e92fbb9f29f0d7db
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A llvm/test/CodeGen/MIR/X86/branch-folder-drop-undef.mir
    A llvm/test/CodeGen/X86/branch-folder-drop-undef-end-to-end.ll

  Log Message:
  -----------
  [BranchFolding] Introduce tests for PR205135 (NFC) (#206684)


  Commit: 1d3d2f43dd00a569bb77e436a5e318baf7de7dbd
      https://github.com/llvm/llvm-project/commit/1d3d2f43dd00a569bb77e436a5e318baf7de7dbd
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/sat-shifts.ll

  Log Message:
  -----------
  [SPIR-V] Lower G_SSHLSAT and G_USHLSAT (#206490)


  Commit: a40b88d7f304239bb28845a38e3759052fcf38bf
      https://github.com/llvm/llvm-project/commit/a40b88d7f304239bb28845a38e3759052fcf38bf
  Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/lit/lit/builtin_commands/cat.py

  Log Message:
  -----------
  [lit] Add stream-injectable run() core to builtin cat (#204711)

Pull cat's logic out into run(argv, stdin, stdout, stderr, cwd) so it
takes explicit streams instead of touching sys.std* directly. main()
just calls run() with the real process streams, so nothing changes for
the spawned-script path.

Needed before cat can run in-process inside the lit worker

Also switched file reads to raw bytes throughout, since the old
text-mode read + win32 msvcrt.setmode was only there for sys.stdout's
encoding, which doesn't apply once we pass in a binary stream directly.
Error messages still report the original filename, not the cwd-joined
path.

Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>


  Commit: a4e53b05b8118201597e92e8c12fe6c73efc26a6
      https://github.com/llvm/llvm-project/commit/a4e53b05b8118201597e92e8c12fe6c73efc26a6
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/test/CodeGen/MIR/X86/branch-folder-drop-undef.mir
    M llvm/test/CodeGen/X86/branch-folder-drop-undef-end-to-end.ll

  Log Message:
  -----------
  [BranchFolding] Drop undef flag when hoisting common code from successors (#205135)

Similarly to what already done during tail merging
(4040c0f4ec135c18e723c1807ec0d1dbbb4cf3fa), make sure the intersection
of undef flags is taken while hoisting common code from successors.

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


  Commit: b885cfbb055839ea0aa9b2c0fdd95357cae8dfa6
      https://github.com/llvm/llvm-project/commit/b885cfbb055839ea0aa9b2c0fdd95357cae8dfa6
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/docs/LFI.rst
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.h
    M llvm/test/MC/AArch64/LFI/exclusive.s
    M llvm/test/MC/AArch64/LFI/fp.s
    A llvm/test/MC/AArch64/LFI/guard-elim.s
    M llvm/test/MC/AArch64/LFI/lse.s
    M llvm/test/MC/AArch64/LFI/mem-lr.s
    M llvm/test/MC/AArch64/LFI/mem.s
    M llvm/test/MC/AArch64/LFI/prefetch.s
    M llvm/test/MC/AArch64/LFI/rcpc.s
    M llvm/test/MC/AArch64/LFI/simd.s

  Log Message:
  -----------
  [LFI][AArch64] Add guard elimination optimization (#204693)

This adds support for the guard elimination optimization to the AArch64
LFI rewriter. Redundant guards (`add x28, x27, wN, uxtw` instructions)
will be skipped when possible. See the LFI.rst documentation for an
example of the optimization.


  Commit: fa7a6025df042fab2bb69947b773c23eaa8dd62b
      https://github.com/llvm/llvm-project/commit/fa7a6025df042fab2bb69947b773c23eaa8dd62b
  Author: Chandana Mudda <quic_csinderi at quicinc.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    A llvm/test/CodeGen/Hexagon/cttz-elts-widen.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll

  Log Message:
  -----------
  [CodeGen] Add widening support for ISD::CTTZ_ELTS (#205841)

WidenVectorOperand had no handler forCTTZ_ELTS/
CTTZ_ELTS_ZERO_POISON, causing a fatal error when the input vector type
needed widening.

Add WidenVecOp_CttzElements which widens the input vector and pads the
extra lanes with all-ones, ensuring they do not contribute spurious
trailing zeros to the count. This follows the same pattern as the
existing
WidenVecOp_VP_CttzElements.

Assisted-by: Claude (Anthropic)


  Commit: 7fff69bcb787957a2db55f2b954e9deb2b6bf11e
      https://github.com/llvm/llvm-project/commit/7fff69bcb787957a2db55f2b954e9deb2b6bf11e
  Author: Tomas Matheson <Tomas.Matheson at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/lib/TargetParser/AArch64TargetParser.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64][NFC] remove CPUInfo.getImpliedExtensions() (#206422)


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

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll
    A llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math.ll

  Log Message:
  -----------
  [SPIR-V] Lower G_SMULFIX and G_UMULFIX (#206507)


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

  Changed paths:
    M llvm/test/CodeGen/X86/vector-reduce-add-codesize.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-sext.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-subvector.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
    M llvm/test/CodeGen/X86/vector-reduce-add.ll

  Log Message:
  -----------
  [X86] Add AVX512F-only test coverage to vector-reduce-add tests (#206686)

Many of the lowerings use AVX512BW instructions - make sure we don't try to use them without it


  Commit: 9066c66061c523a096eb9a8a9c0c7cc3c8c1bba7
      https://github.com/llvm/llvm-project/commit/9066c66061c523a096eb9a8a9c0c7cc3c8c1bba7
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Object/COFF.h
    M llvm/lib/Object/COFFObjectFile.cpp
    A llvm/test/tools/llvm-readobj/COFF/arm64x-hybridobj.yaml
    M llvm/tools/llvm-readobj/llvm-readobj.cpp

  Log Message:
  -----------
  [Object][COFF] Introduce the .obj.arm64ec section (#205156)

Introduce a new extension section allowing the embedding of ARM64EC
object files inside native ARM64 object files. Its content consists of
an entire, valid ARM64EC COFF object file.


  Commit: 2427da51ba44bb9404b74fed4b721735f767e1fc
      https://github.com/llvm/llvm-project/commit/2427da51ba44bb9404b74fed4b721735f767e1fc
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedC1Nano.td
    M llvm/lib/Target/AArch64/AArch64SchedC1Premium.td
    M llvm/lib/Target/AArch64/AArch64SchedC1Ultra.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN3.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV1.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV2.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseV3AE.td
    M llvm/lib/Target/AArch64/AArch64SchedOlympus.td
    M llvm/lib/Target/AArch64/AArch64SchedPredicates.td
    M llvm/lib/Target/AArch64/AArch64SchedTSV110.td
    M llvm/lib/Target/AArch64/SMEInstrFormats.td
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-basic-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-bf16-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-complxnum-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-flag-manipulation-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fp16fml-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-fptoint-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-i8mm-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-mte-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-rcpc-immo-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-sme-only-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Inputs/sme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-sme-only-instructions.s
    M llvm/tools/llvm-mca/llvm-mca.cpp

  Log Message:
  -----------
  [AArch64] SME definitions for C1-Ultra scheduling model (#194850)

This patch extends the C1-Ultra scheduling model to add support for SME
instructions. These instructions differ from legacy scheduling model
instruction definitions in that they are sent to the CME co-processor
when in streaming mode. Modelling these instructions requires several
changes to the scheduling model

- implementations of instructions added by SME but don't require the
processor to be in streaming mode
- definitions of CME processor resources. Instructions sent to this
co-processor are modelled as having latency derived from the SME
software optimization guide (SWOG),
- predicating the process resource groups for instructions sent to the
CME coprocessor when in streaming mode,
- tests for all SME instructions in the software optimization guide


C1-Ultra SWOG: https://developer.arm.com/documentation/111079/3-0
SME SWOG: https://developer.arm.com/documentation/111048/0103/

Assisted by: Codex


  Commit: 761eb4e388639ca8d8bbe0855118d98b35736ef2
      https://github.com/llvm/llvm-project/commit/761eb4e388639ca8d8bbe0855118d98b35736ef2
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.h
    M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp
    M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp

  Log Message:
  -----------
  [ORC] Support new ORC runtime in UnwindInfoRegistrationPlugin. (#206680)

Reworks UnwindInfoRegistrationPlugin::Create(ES) to look up the
register/deregister implementation addresses by symbol name, with
default names matching the SPS-CI alloc actions provided by
orc_rt::StandaloneMachOUnwindInfoRegistrar. In OrcTargetProcess,
UnwindInfoManager::addBootstrapSymbols now also vends its register and
deregister actions under those same names, so the new Create overloads
work against either backend.

Also removes a declared but unused (and undefined) Create overload.


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

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_no_extension.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions_remove_cap_if.ll
    M llvm/unittests/Target/SPIRV/CMakeLists.txt
    A llvm/unittests/Target/SPIRV/SPIRVModuleAnalysisTests.cpp

  Log Message:
  -----------
  [SPIR-V] Fix removeCapabilityIf not pruning MinimalCaps (#206478)

removeCapabilityIf erased from AllCaps but not MinimalCaps, which is
what the AsmPrinter iterates to emit OpCapability, so pruned
capabilities were still emitted


  Commit: 5515188560107ef07fe1085d6779915ed47b32c0
      https://github.com/llvm/llvm-project/commit/5515188560107ef07fe1085d6779915ed47b32c0
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/add.ll
    M llvm/test/CodeGen/AMDGPU/add_i1.ll
    M llvm/test/CodeGen/AMDGPU/addsub64_carry.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-miscellaneous-uniform-intrinsic.ll
    M llvm/test/CodeGen/AMDGPU/anyext.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation-gfx1250.ll
    M llvm/test/CodeGen/AMDGPU/branch-relaxation.ll
    M llvm/test/CodeGen/AMDGPU/bug-cselect-b64.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/coalescer_distribute.ll
    M llvm/test/CodeGen/AMDGPU/coexec-scheduler.ll
    M llvm/test/CodeGen/AMDGPU/combine-add-zext-xor.ll
    M llvm/test/CodeGen/AMDGPU/combine_andor_with_cmps.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares-scalar-float.ll
    M llvm/test/CodeGen/AMDGPU/ctpop.ll
    M llvm/test/CodeGen/AMDGPU/ctpop16.ll
    M llvm/test/CodeGen/AMDGPU/ctpop64.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fma-crash.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-lshr-and-cmp.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-select.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/dynamic_stackalloc.ll
    M llvm/test/CodeGen/AMDGPU/exec-mask-opt-cannot-create-empty-or-backward-segment.ll
    M llvm/test/CodeGen/AMDGPU/expand-scalar-carry-out-select-user.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-phi-regression-issue130646-issue130119.ll
    M llvm/test/CodeGen/AMDGPU/flat-saddr-atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
    M llvm/test/CodeGen/AMDGPU/float-sopc-vopc.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fp-classify.ll
    M llvm/test/CodeGen/AMDGPU/fp_to_sint.ll
    M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
    M llvm/test/CodeGen/AMDGPU/fptosi.f16.ll
    M llvm/test/CodeGen/AMDGPU/fptoui.f16.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.f16.ll
    M llvm/test/CodeGen/AMDGPU/fptrunc.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/gep-const-address-space.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    M llvm/test/CodeGen/AMDGPU/infer-addrspace-flat-atomic.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
    M llvm/test/CodeGen/AMDGPU/intrinsic-amdgcn-s-alloc-vgpr.ll
    M llvm/test/CodeGen/AMDGPU/issue176578.ll
    M llvm/test/CodeGen/AMDGPU/large-phi-search.ll
    M llvm/test/CodeGen/AMDGPU/literal64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.class.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.private.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.is.shared.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.kill.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.signal.isfirst.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.set.inactive.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tensor.load.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
    M llvm/test/CodeGen/AMDGPU/llvm.set.rounding.ll
    M llvm/test/CodeGen/AMDGPU/long-branch-reserve-register.ll
    M llvm/test/CodeGen/AMDGPU/mad-combine.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-bf16.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/mixed-vmem-types.ll
    M llvm/test/CodeGen/AMDGPU/mul.ll
    M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
    M llvm/test/CodeGen/AMDGPU/noclobber-barrier.ll
    M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
    M llvm/test/CodeGen/AMDGPU/or.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-phi.ll
    M llvm/test/CodeGen/AMDGPU/s-cluster-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
    M llvm/test/CodeGen/AMDGPU/saddo.ll
    M llvm/test/CodeGen/AMDGPU/sdiv64.ll
    M llvm/test/CodeGen/AMDGPU/select-undef.ll
    M llvm/test/CodeGen/AMDGPU/selectcc-opt.ll
    M llvm/test/CodeGen/AMDGPU/setcc-opt.ll
    M llvm/test/CodeGen/AMDGPU/setcc.ll
    M llvm/test/CodeGen/AMDGPU/setcc64.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-copy.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-to-vreg1-copy.ll
    M llvm/test/CodeGen/AMDGPU/si-unify-exit-multiple-unreachables.ll
    M llvm/test/CodeGen/AMDGPU/si-unify-exit-return-unreachable.ll
    M llvm/test/CodeGen/AMDGPU/sign_extend.ll
    M llvm/test/CodeGen/AMDGPU/simplifydemandedbits-recursion.ll
    M llvm/test/CodeGen/AMDGPU/sink-addr-memory-intrinsics.ll
    M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/srem.ll
    M llvm/test/CodeGen/AMDGPU/srem64.ll
    M llvm/test/CodeGen/AMDGPU/ssubo.ll
    M llvm/test/CodeGen/AMDGPU/structurize-hoist.ll
    M llvm/test/CodeGen/AMDGPU/sub-zext-cc-zext-cc.ll
    M llvm/test/CodeGen/AMDGPU/sub_i1.ll
    M llvm/test/CodeGen/AMDGPU/trunc-cmp-constant.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll
    M llvm/test/CodeGen/AMDGPU/uaddo.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/undefined-subreg-liverange.ll
    M llvm/test/CodeGen/AMDGPU/uniform-cfg.ll
    M llvm/test/CodeGen/AMDGPU/unstructured-cfg-def-use-issue.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll
    M llvm/test/CodeGen/AMDGPU/usubo.ll
    M llvm/test/CodeGen/AMDGPU/v_cmp_gfx11.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
    M llvm/test/CodeGen/AMDGPU/workitem-intrinsic-opts.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll
    M llvm/test/CodeGen/AMDGPU/xor.ll
    M llvm/test/CodeGen/AMDGPU/zero_extend.ll

  Log Message:
  -----------
  [AMDGPU] Select S_CSELECT_B32/64 for uniform extensions from i1 (#204238)

Fixes #59869


  Commit: 7738981927297a194246a651bf81a96267505b54
      https://github.com/llvm/llvm-project/commit/7738981927297a194246a651bf81a96267505b54
  Author: John Brawn <john.brawn at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll
    M llvm/test/Analysis/CostModel/AArch64/mem-op-cost-model.ll
    M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-ldst.ll

  Log Message:
  -----------
  [AArch64] Implement latency costs for loads (#201567)

Adjust AArch64TTIImpl::getMemoryOpCost to query the scheduling model to
get the latency of loads, instead of using BasicTTIImpl which returns an
arbitrary cost of 4. For the generic cpu we still use a latency of 4, as
the scheduling model used for generic is a510 which has load latencies
that are too low for many cpus.


  Commit: 817878427e0898a5b712456cc56b0c7cf89dfbc1
      https://github.com/llvm/llvm-project/commit/817878427e0898a5b712456cc56b0c7cf89dfbc1
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    A flang/lib/Optimizer/OpenMP/HostOpFiltering.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/test/Fir/basic-program.fir
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    M flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir

  Log Message:
  -----------
  [Flang][OpenMP] Split host op and function filtering (#184786)

The function filtering pass, intended to remove host-only functions from
a target device MLIR module on an OpenMP offloading application, also
removes any remaining host operations placed within functions containing
an `omp.target` region.

One problem with this approach is that the function filtering pass runs
relatively early, so followup passes can end up introducing new host
operations that would not be caught in advance. Specifically, there is a
known case where the `LowerWorkdistribute` pass can add
`omp.target_data` operations that then trigger an assertion during MLIR
to LLVM IR translation.

By splitting the host op deletion logic into its own pass, we can delay
it to run after `LowerWorkdistribute`, preventing these transformations
from producing an invalid target device MLIR module. The logic of the
new pass and associated test have been tweaked to properly handle FIR.

Fixes #180503


  Commit: c0557795224eb4d664148d9f9c2c90bfb474dd50
      https://github.com/llvm/llvm-project/commit/c0557795224eb4d664148d9f9c2c90bfb474dd50
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M openmp/runtime/CMakeLists.txt

  Log Message:
  -----------
  [libomp][AIX] Rename libatomic to libcompiler_rt (#203594)

This change updates the reference from `libatomic` to `libcompiler_rt`
to match the recent renaming on AIX.


  Commit: e66e165da9c15365ff486e8159b868cfb7161192
      https://github.com/llvm/llvm-project/commit/e66e165da9c15365ff486e8159b868cfb7161192
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/IR/CommonTypeConstraints.td

  Log Message:
  -----------
  [MLIR] Remove leftover field from Variadic, NFC (#176373)

There appears to be an unused field in the `Variadic` TableGen class,
introduced originally in commit
70b69c54fa8b24519cd549eec10e549471157bb8. It looks like, when removing
the associated `VariadicAtLeast` class
(bf8049dc483131365aea3d3626a2d27b5dfa92de), this field still remained.


  Commit: 85bce2e5fc93f89ad5da229e7c3341355f45255a
      https://github.com/llvm/llvm-project/commit/85bce2e5fc93f89ad5da229e7c3341355f45255a
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/Commands/CommandObjectLog.cpp
    M lldb/source/Utility/Log.cpp
    M lldb/test/API/commands/log/basic/TestLogging.py
    M lldb/test/Shell/lldb-server/TestGdbserverErrorMessages.test
    M lldb/test/Shell/lldb-server/TestPlatformErrorMessages.test
    M lldb/tools/lldb-server/lldb-gdbserver.cpp
    M lldb/tools/lldb-server/lldb-platform.cpp
    M lldb/unittests/Utility/LogTest.cpp

  Log Message:
  -----------
  [lldb] Fix surprising return values from Log::Enable/DisableChannel (#205561)

Fixes #202615, and the fact that the command "log enable" was not being
marked as a failure in some situations where it printed errors.

The root of this is some unexpected behaviour from Log::EnableChannel
and Log::DisableChannel. They only returned false if the channel was
invalid. If any of the categories were invalid, error messages would be
generated, but EnableChannel would return true.

This is what caused lldb-server not to exit or print any error when this
happened. The lldb command "log enable" was printing the error stream
regardless of result, but the command object was never set to failed
(the same applies to DisableChannel).

To fix this I have made them do what you'd expect. Return false if any
part of the log channel or categories was not recognised.

To do that, I had to allow for GetFlags failing. So that has changed
return type.

The existing behaviour of Log::Enable and Log::Disable is also not
obvious at first. I have not changed it in this patch but I have had to
preserve it, so I'll explain it:
* If given an empty optional for flags, use the default flags.
* If given a flags value of 0, use it, which results in disabling all
categories.
* If given a non-zero flags value, use it, enabling whatever categories
had flags set.

There is also an argument for changing all of this into llvm::expected,
but I'll do that in follow ups. This change only addresses the reported
bug.


  Commit: 6dc301f1112dc63033c5e40d1eb6fa91f5409ba4
      https://github.com/llvm/llvm-project/commit/6dc301f1112dc63033c5e40d1eb6fa91f5409ba4
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

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

  Log Message:
  -----------
  [Delinearization] Limit the scope of collecting strides (#206688)

Similar to #204145, this patch limits the scope of stride collection
performed by `SCEVCollectStrides`. Before this change, it traversed all
kinds of SCEV expressions. For example, given the expression `{(sext
{0,+,%x}),+,%y}`, it would collect `%x` and `%y` as strides, even though
their integer types (bit widths) differ.

Collecting strides whose types differ from that of the original
expression is not particularly meaningful, because such strides probably
cannot contribute to a successful delinearization of the entire
expression. Furthermore, #204146 revealed that they can trigger
undesirable calls to `SCEVDivision::divide`. Currently, when such
strides are collected, `SCEVDivision::divide` may be invoked on
expressions with different integer types, resulting in division attempts
between incompatible types.

This patch does not add any tests because I could not find a case where
it changes the result. I also did not mark it as NFCI, since it changes
some debug output. However, I believe it does not affect the outcome of
the delinearization itself.


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

  Changed paths:
    M mlir/lib/Conversion/SCFToSPIRV/SCFToSPIRV.cpp
    A mlir/test/Conversion/SCFToSPIRV/index-switch.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Convert scf.index_switch to spirv.mlir.selection with spirv.Switch (#200573)


  Commit: 42b46452f0c539f9dd3638d25e792eb7368cff72
      https://github.com/llvm/llvm-project/commit/42b46452f0c539f9dd3638d25e792eb7368cff72
  Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithDialect.cpp
    M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  [mlir][arith] Add ValueBoundsOpInterface external models for the arith operations DivUI and DivSI (#206514)

Add ValueBoundsOpInterface external models for the arith operations
DivUI and DivSI.


  Commit: c2da3ace1beac5a7d94e58fd018bbce7298b660d
      https://github.com/llvm/llvm-project/commit/c2da3ace1beac5a7d94e58fd018bbce7298b660d
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M compiler-rt/test/builtins/CMakeLists.txt
    M compiler-rt/test/builtins/Unit/lit.cfg.py
    M compiler-rt/test/builtins/Unit/lit.site.cfg.py.in

  Log Message:
  -----------
  [compiler-rt][test][builtins] Check linker support for --start-group (#205610)

This patch is to add a check for the linker whether the --start-group
option is supported before passing to the linker. This can accommodate
different linker requirements.


  Commit: 34b3299f504eaf4a8dec63b48ca5af54e7a5927d
      https://github.com/llvm/llvm-project/commit/34b3299f504eaf4a8dec63b48ca5af54e7a5927d
  Author: Aaditya <115080342+easyonaadit at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll

  Log Message:
  -----------
  [AMDGPU] Support Wave Reduction intrinsics for half types (#202916)

Supported Ops: `fmin`, `fmax`, `fadd`, `fsub`.


  Commit: 2eb6379387a4f8dc7b89856afd6d99abfc0c1fec
      https://github.com/llvm/llvm-project/commit/2eb6379387a4f8dc7b89856afd6d99abfc0c1fec
  Author: Simi Pallipurath <simi.pallipurath at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M libc/startup/baremetal/aarch64/start.cpp
    M libc/startup/baremetal/arm/start.cpp

  Log Message:
  -----------
  [LIBC][ARM] Enable MMU setup and alignment fault handling during startup. (#204803)

This change adds MMU initialisation for Arm targets and configures
alignment fault behaviour.

This patch:
1. Add MMU setup for AArch64 startup.
  - Create a minimal flat-mapped translation table.
  - Configure TTBR0_EL1, MAIR_EL1, and TCR_EL1.
  - Mark stack/heap memory as execute-never (XN) when possible.
  - Enable the MMU and configure alignment checking through SCTLR_EL1.

2. Add MMU setup for ARMA startup:
  - Create a flat 1 MB section mapping covering the address space.
  - Configure DACR, TTBCR, and TTBR0.
  - Enable MMU, instruction cache, and data cache.
  - Configure alignment fault handling through SCTLR.
  
3. Enable unaligned access trapping on Arm M-profile targets when
`__ARM_FEATURE_UNALIGNED` is not available by setting `CCR.UNALIGN_TRP`.

This allows libc startup code to provide consistent alignment checking
behaviour across Arm architectures while enabling the MMU and basic
memory protection features on A-profile systems.

Assisted-by: codex, reviewed and cross checked, also tested with
ATfE(Arm Toolchain for Embedded), by me.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/test/AST/ByteCode/codegen.cpp

  Log Message:
  -----------
  [clang][bytecode] Check pointer types in ::toRValue() (#206712)

Now that we let more reinterpret_casts through, we need to check we have
the proper type here, too. We already did that for some of the types but
not for records and arrays.


  Commit: d53a1a192b44fb9c9e801645f2c3af3d7a2d8445
      https://github.com/llvm/llvm-project/commit/d53a1a192b44fb9c9e801645f2c3af3d7a2d8445
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A llvm/test/Transforms/LoopInterchange/dependency-all-eq.ll

  Log Message:
  -----------
  [LoopInterchange] Add test with dependency `[* =]` and `[= *]` (NFC) (#193479)

Add test cases that are legal to interchange but currently cannot be
interchanged due to restrictions in the legality check.


  Commit: e5418e84fd8592c4dcaf412c064ac896aaa1f24c
      https://github.com/llvm/llvm-project/commit/e5418e84fd8592c4dcaf412c064ac896aaa1f24c
  Author: Prasoon Kumar <prasoonkumar054 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/lit/lit/builtin_commands/diff.py

  Log Message:
  -----------
  [lit] Fix builtin diff importing system lit.util in subprocess mode (#206723)

'import lit.util' silently picks up a system-installed lit package
instead of the local one, which may lack abs_path_preserve_drive.

Switch to 'from .. import util': in subprocess mode __package__ is None,
so the relative import raises ImportError and the fallback correctly
picks up the local util.py via PYTHONPATH

Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>


  Commit: 00617c92e10fb55be86e6fcf60ef2f5717d8eb92
      https://github.com/llvm/llvm-project/commit/00617c92e10fb55be86e6fcf60ef2f5717d8eb92
  Author: Dan Blackwell <dan_blackwell at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp
    A compiler-rt/test/tsan/Darwin/dispatch_apply.mm

  Log Message:
  -----------
  [Darwin][TSan] Fix false positive race report when using dispatch_apply (#204866)

Currently I have seen some false positive race reports caused by
instrumented block copy code that writes after the release-annotation.
When the block runs on another thread and reads the copied data, it
incorrectly reports this as a race.

This patch casts the block to a `void *` in order to avoid the block
copy - thus avoiding the reported race. This is safe because
`dispatch_apply` runs synchronously, so the block lives beyond all
invocations.

rdar://92286127


  Commit: 221936bf981f51271cc8620268696f375b76eb4a
      https://github.com/llvm/llvm-project/commit/221936bf981f51271cc8620268696f375b76eb4a
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/test/Dialect/Tosa/availability.mlir

  Log Message:
  -----------
  [mlir][tosa] Add missing int16 extension for row_gather (#206687)

Updates "availability" to include int16 extension to avoid assertion.


  Commit: 1196e270a58d6218715d4fb83ac83c34a99b2ca3
      https://github.com/llvm/llvm-project/commit/1196e270a58d6218715d4fb83ac83c34a99b2ca3
  Author: Valery Pykhtin <valery.pykhtin at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIPostRABundler.cpp

  Log Message:
  -----------
  [NFC][AMDGPU] Use SIInstrFlags predicates in CodeGen passes (#204829)

Replace raw TSFlags accesses with SIInstrFlags predicate calls.

Part of a series following the introduction of SIInstrFlags predicates.


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

  Changed paths:
    M llvm/lib/ProfileData/InstrProf.cpp

  Log Message:
  -----------
  [PGO][NFC] Avoid floating-point block uniformity check (#206547)

Use an integer threshold when deciding whether a block is mostly
uniform.

This keeps the 90% rule exact and avoids relying on floating-point
arithmetic in profile merging.


  Commit: b4ba7471a51c847241691238b341572aa64268f5
      https://github.com/llvm/llvm-project/commit/b4ba7471a51c847241691238b341572aa64268f5
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [ProfCheck] Exclude FixIrreducible Test (#206731)

>From #206057. We have not gotten to fixing FixIrreducible yet, so
exclude the test for now.


  Commit: f0ca72c6f4e177f735e6486f839acb296c4d02f0
      https://github.com/llvm/llvm-project/commit/f0ca72c6f4e177f735e6486f839acb296c4d02f0
  Author: Vachan <vachanvy05 at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-fshl-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshl-rot-256.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-128.ll
    M llvm/test/CodeGen/X86/vector-fshr-rot-256.ll
    M llvm/test/CodeGen/X86/vector-rotate-128.ll
    M llvm/test/CodeGen/X86/vector-rotate-256.ll

  Log Message:
  -----------
  [X86] Lower vector 8-bit `rotl(x, 1)` to `(x + x) - (x < 0)` pattern (#206221)

Fixes #198059


  Commit: 6befe13812e6b5706aaf67c7dda0ba814464d1fe
      https://github.com/llvm/llvm-project/commit/6befe13812e6b5706aaf67c7dda0ba814464d1fe
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [Dexter] Require lldb-dap for Dexter and log when Dexter is disabled (#206734)

For some time, Dexter tests have been run using lldb-dap when it is
available rather than just lldb/lldb-server. However, the cross project
test dependencies have not been updated since then, meaning that
lldb-dap is not automatically built by check-cross-project. The
Dexter-specific lit config then skips the Dexter tests if lldb-dap is
unavailable, which leads to some check-cross-project builds never
running the Dexter tests. This patch adds lldb-dap to the build
dependencies, and also adds a small log message to inform when the
Dexter tests are skipped; most cases where we skip the Dexter test were
already logged, and this addition expands that to cover all cases.


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

  Changed paths:
    M llvm/test/tools/llvm-profdata/malformed-not-space-for-another-header.test

  Log Message:
  -----------
  [PGO] Fix malformed raw profile test (#206738)

A hand-written raw profile test still wrote one extra word in the data
record after the raw profile format changed.

Remove the extra word so the name section starts at the offset expected
by the reader. This keeps the test focused on the trailing garbage that
should report that there is not enough space for another header.

Buildbot failure:
https://github.com/llvm/llvm-project/pull/190708#issuecomment-4839831651


  Commit: 84e496da5f0e3e5dde1e405bf6a011347ad4c460
      https://github.com/llvm/llvm-project/commit/84e496da5f0e3e5dde1e405bf6a011347ad4c460
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp

  Log Message:
  -----------
  [NFC][analyzer] Improve code quality in VisitBinaryOperator (#205151)

I started out to remove the `NodeBuilder` in
`ExprEngine::VisitBinaryOperator` (as a part of my commit series that
removes `NodeBuilder`s), but I noticed that this method is full of
technical debt, so I decided to do a through clean-up (which includes
the removal of the trivial `NodeBuilder`).


  Commit: f801f9d0103dd715fde0d3518d47b5fe605f093c
      https://github.com/llvm/llvm-project/commit/f801f9d0103dd715fde0d3518d47b5fe605f093c
  Author: maflcko <6399679+maflcko at users.noreply.github.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    A compiler-rt/test/sanitizer_common/TestCases/Linux/read_pread_chk.c
    M compiler-rt/test/tsan/signal_in_read.c

  Log Message:
  -----------
  compiler-rt: intercept fortified read/pread wrappers (#206228)

Add TSAN/common interceptors for glibc fortified read/pread calls, so
that they follow the same blocking and signal-handling path as the plain
libc symbols.

The regression test from https://github.com/llvm/llvm-project/pull/77789
for `read`, when compiled with `-D_FORTIFY_SOURCE=3` fails without the
new interceptors.

I have a regression test for pread(64) as well, but I am not sure if
there is much value in adding it.

I've added a read smoke test in sanitizer common.

---------

Co-authored-by: MarcoFalke <*~=`'#}+{/-|&$^_ at 721217.xyz>


  Commit: 57414efcaabfada02265ad59aa63796cd38de102
      https://github.com/llvm/llvm-project/commit/57414efcaabfada02265ad59aa63796cd38de102
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py

  Log Message:
  -----------
  [Dexter] Avoid incorrect state matching against frames below main (#206732)

This patch fixes an error that caused some Dexter test failures, driven
by two separate causes. The first issue is that frames below main were
appearing in the program stacktrace; while Dexter tries to filter frames
below main during the stacktrace collection step based on a pre-written
list, this list may not be comprehensive enough, as the symbol
"___lldb_unnamed_symbol_2a150" has also appeared. In order to guard
against this and future cases that might appear, this patch adds a check
to Dexter for "presentationHint: deemphasize" in the DAP response; this
is added by LLDB (and other dap-based debuggers) as a hint that the
frame is not user source, and should be a generally useful way of
avoiding evaluating frames that are not wanted.

The second issue is a mismatch between the breakpoint-setting logic and
the state-matching logic: the former allows root !where nodes to omit
the "file" field, using the script file as a default file. The state
matching logic does not perform any checking for an omitted file.
Together, this means that we may correctly set breakpoints for e.g.
"test.cpp:10", but when we go to match against frames, the !where node
may match against some other line-10 that appears below (e.g. as a
caller of) the frame at test.cpp:10. This patch copies the default_file
logic to state matching, meaning that we will only match against the
intended frame.


  Commit: 1556da0226c25388cae6344f1c44865934a19f52
      https://github.com/llvm/llvm-project/commit/1556da0226c25388cae6344f1c44865934a19f52
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectDiagnostics.cpp
    M lldb/source/Plugins/BugReporter/CMakeLists.txt
    A lldb/source/Plugins/BugReporter/GitHub/CMakeLists.txt
    A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.cpp
    A lldb/source/Plugins/BugReporter/GitHub/GitHubReporter.h
    M lldb/test/Shell/Diagnostics/TestReport.test
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [lldb] Add a GitHub bug reporter (#206607)

Add a BugReporter plugin that files a diagnostics bundle as an
llvm/llvm-project GitHub issue. File() renders a short Markdown body
from the Diagnostics::Report (version, host, invocation, and a pointer
to the bundle directory to attach), truncates it under a GET-safe URL
length on a UTF-8 character boundary, and opens a pre-filled issues/new
page with Host::OpenURL.

It is gated by LLDB_ENABLE_GITHUB_BUG_REPORTER (default on) and
registers ahead of the no-op fallback, so it is the default destination
for "diagnostics report" while a downstream tree can still register its
own reporter ahead of it.


  Commit: 083d2c4b1fa28b4c9f4b684ce260ae2ea648b820
      https://github.com/llvm/llvm-project/commit/083d2c4b1fa28b4c9f4b684ce260ae2ea648b820
  Author: Jan André Reuter <jan at zyten.de>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M offload/libomptarget/OpenMP/API.cpp
    M offload/libomptarget/interface.cpp
    M offload/libomptarget/omptarget.cpp
    M offload/libomptarget/private.h
    M offload/test/api/omp_device_uid.c
    M offload/test/api/omp_host_pinned_memory.c
    M offload/test/api/omp_target_memcpy_async1.c
    M offload/test/api/omp_target_memcpy_async2.c
    M offload/test/api/omp_target_memcpy_rect_async1.c
    M offload/test/api/omp_target_memcpy_rect_async2.c
    M offload/test/api/omp_target_memset.c

  Log Message:
  -----------
  [Offload][OpenMP] Accept `omp_initial_device` for runtime calls (#205290)

In OpenMP v5.2, the constant `omp_initial_device` was introduced, which
was defined as a value of `-1`.
Support for this value was added to Clang and Flang in
09cd2944821fa43d97d8259194b9a0c4fa22de16 and
3c14034c55a296306ad0ea4990f0f1b34e9e5d6e.

However, runtime calls are not aware of this constant. As such,
execution of a runtime function, passing `omp_initial_device` as the
`device_num`, would abort with e.g.,:

```
omptarget fatal error -1: "invalid value" device number '-1' out of range, only 1 devices available
```

To fix this issue, also extend the host device checks in the API
functions to also check for `omp_initial_device`.
For testing, extend API tests using `omp_get_initial_device()` to also
test `omp_initial_device` and extend `omp_device_uid.c` to check if the
UID for `omp_initial_device` and `omp_get_initial_device()` matches.

Partially addresses https://github.com/llvm/llvm-project/issues/192980
(see
https://github.com/llvm/llvm-project/issues/192980#issuecomment-4404241994)

---------

Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>
Signed-off-by: Jan André Reuter <jan at zyten.de>


  Commit: 16ee9ad499a1d8c500f902571249925849f6f653
      https://github.com/llvm/llvm-project/commit/16ee9ad499a1d8c500f902571249925849f6f653
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/sve-intrinsics-pred-operations.ll
    M llvm/test/CodeGen/AArch64/sve-pred-log.ll
    M llvm/test/CodeGen/AArch64/sve-select.ll

  Log Message:
  -----------
  [NFC][LLVM][CodeGen] Refactor testing of SVE predicate logical instructions. (#206737)


  Commit: bbf80c543e32530e1e9253d456b705d09424cfbc
      https://github.com/llvm/llvm-project/commit/bbf80c543e32530e1e9253d456b705d09424cfbc
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/MSP430/MSP430.h
    M llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp

  Log Message:
  -----------
  [MSP430] Port SelctionDAGISel to NewPM

Similar to Lanai (81a2ac204aea4281c8ed9162db5d4ed491cb2cfa) and X86
(7652a59407018c057cdc1163c9f64b5b6f0954eb).

Reviewers: asl

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


  Commit: 12628715ce61c8db841211eb8683e2f53fa74f0b
      https://github.com/llvm/llvm-project/commit/12628715ce61c8db841211eb8683e2f53fa74f0b
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/Hexagon/cttz-elts-widen.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-elts.ll

  Log Message:
  -----------
  [LegalizeTypes] Don't pad cttz_elts_zero_poison with ones when widening op (#206705)

We only need to pad the widened lanes with ones to handle the case for
an all zeroes input. But for cttz_elts_zero_poison, this is already
poison.

The RISC-V scalable vector test can't be precomitted because it crashes
otherwise trying to lower a get_active_lane_mask from
getMaskFromElementCount.

Also while we're here, switch to using TLI.getTypeToTransformTo to be
consistent with other `WidenVecOp_*` implementations.


  Commit: 42e975125c6dcf47ad530e680a98dd115e9559b2
      https://github.com/llvm/llvm-project/commit/42e975125c6dcf47ad530e680a98dd115e9559b2
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/masked-stores.ll

  Log Message:
  -----------
  [SLP] Initial support for masked stores

Lower non-consecutive stores as a single llvm.masked.store on
targets with masked but not strided store support. Add a TreeEntry::ExpandVectorize
state whose values are expanded into a wider vector via the reuse mask and stored
with a constant mask; reordering stays in ReorderIndices. Adds the analysis, cost,
codegen, and -slp-enable-masked-stores option (default on). Skipped for groups with
consecutive pairs.

Required to fix #203756

Reviewers: hiraditya, RKSimon, bababuck

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


  Commit: 9ca7d24df396562d6fddddfacde0b4c0ff29246b
      https://github.com/llvm/llvm-project/commit/9ca7d24df396562d6fddddfacde0b4c0ff29246b
  Author: Victor Perez <victor.pc.upm at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/Dialect/Vector/TransformOps/VectorTransformOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/TransformOps/VectorTransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorStep.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir
    M mlir/test/Dialect/Vector/canonicalize/vector-step.mlir
    M mlir/test/Dialect/Vector/int-range-interface.mlir
    M mlir/test/Dialect/Vector/invalid.mlir
    M mlir/test/Dialect/Vector/ops.mlir
    A mlir/test/Dialect/Vector/vector-step-lowering.mlir

  Log Message:
  -----------
  [mlir][vector] Allow signless integer element types in `vector.step` (#205142)

`vector.step` previously produced only `index` vectors. Allow its result
element type to also be a signless integer of at least 8 bits. If a
lane's value in the sequence is not representable in the element type it
wraps around (the value is truncated to the element bitwidth),
consistent with the
[`llvm.stepvector`](https://llvm.org/docs/LangRef.html#llvm-stepvector-intrinsic)
intrinsic that `vector.step` lowers to.

ConvertVectorToLLVM now lowers `vector.step` to `llvm.intr.stepvector`
for all vector types (fixed-width and scalable) rather than
materializing an `arith.constant` for fixed-width vectors; the constant
form does not make sense at the LLVM boundary, where the intrinsic
already carries the target index bitwidth.
    
The in-dialect `arith.constant` lowering remains for other pipelines and
is exposed through a new `transform.apply_patterns.vector.lower_step`
op. `populateVectorStepLoweringPatterns` takes an `indexBitwidth` used
to materialize `index`-typed steps (default 64, preserving existing
behavior; 0 leaves them untouched). Integer range inference and the
VectorToSPIRV lowering are likewise updated for the new element types
and wrap-around.

The wrap-around path has no SPIR-V test: SPIR-V vector types are limited
to at most a handful of elements, so no legal SPIR-V vector is large
enough to exceed an 8-bit (or wider) element range.

---
 
**Note**: AI used to generate the code in this PR.

Signed-off-by: Víctor Pérez Carrasco <victorperez at fb.com>


  Commit: 2902b031f0fd3e02444db4b536da798d4d358ea4
      https://github.com/llvm/llvm-project/commit/2902b031f0fd3e02444db4b536da798d4d358ea4
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/lldb-private-enumerations.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/IOHandler.cpp
    M lldb/test/API/iohandler/autosuggestion/TestAutosuggestion.py

  Log Message:
  -----------
  [lldb] Add tab-mode to autosuggestion feature (#206728)


  Commit: 6d8e36361da33f1c86e64bddb07f94f0da6c5d7f
      https://github.com/llvm/llvm-project/commit/6d8e36361da33f1c86e64bddb07f94f0da6c5d7f
  Author: Deepak Eachempati <deepak.eachempati at hpe.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/docs/GettingInvolved.md
    M flang/docs/OpenMPSupport.md
    M openmp/docs/SupportAndFAQ.rst

  Log Message:
  -----------
  [flang][OpenMP] add Flang OpenMP Support page (NFC) (#205833)

This adds a dedicated Flang OpenMP Support page for tracking OpenMP
feature support that entails modifications to Flang compiler components.
The expectation is that all other OpenMP feature work will continue to
be tracked under the Clang OpenMP support page.

Tables are added for each released OpenMP version since 4.0, and an
additional for the next future release. A Notes column describes current
status, and a separate column is added for a developer to record that
they are working on a given feature.


  Commit: f49ca7997a4976df71a9defd928fbdc95550a783
      https://github.com/llvm/llvm-project/commit/f49ca7997a4976df71a9defd928fbdc95550a783
  Author: Denys Fedoryshchenko <nuclearcat at nuclearcat.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/BuiltinHeaders.def
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/Sema/Inputs/warn-fortify-source-umask-darwin.h
    A clang/test/Sema/Inputs/warn-fortify-source-umask-glibc.h
    A clang/test/Sema/Inputs/warn-fortify-source-umask.h
    A clang/test/Sema/warn-fortify-source-umask-darwin.c
    A clang/test/Sema/warn-fortify-source-umask-forward-decl.c
    A clang/test/Sema/warn-fortify-source-umask-glibc.c
    A clang/test/Sema/warn-fortify-source-umask-not-builtin.c
    A clang/test/Sema/warn-fortify-source-umask-record-member.c
    A clang/test/Sema/warn-fortify-source-umask-redecl.c
    M clang/test/Sema/warn-fortify-source.c

  Log Message:
  -----------
  [clang] Warn on umask() argument bits outside 0777 (#198130)

Add a -Wfortify-source warning when the constant-evaluated argument to
umask(mode_t) has bits set outside 0777. Those bits are silently
discarded by the kernel, so setting them is almost always a typo
(0xFFFF, 7777-as-decimal, etc.).

Match the corresponding bionic libc diagnose_if check.

The Sema-side dispatch is gated to identify the libc declaration of
umask and reject user-supplied lookalikes: at least one redeclaration of
the resolved function must come from a system header. That is where libc
declares umask.

Matching on the `mode_t` typedef name is not used because libcs disagree
on the spelling: glibc's <sys/types.h> writes the prototype as `__mode_t
umask(__mode_t)` via an internal typedef, bionic and musl use `mode_t`
directly, and so on. The system-header origin is the portable
libc-identity signal; coarser shape checks (name + extern "C" +
non-variadic + 1 integer arg + integer return) fill in the remaining
filtering.

The negative tests cover:
  * `int umask(int)` in user code,
* `typedef unsigned mode_t; extern mode_t umask(mode_t);` in user code
(matches the libc typedef name but not the system-header origin).

A positive test mirrors glibc's `__mode_t umask(__mode_t)` shape from a
`#pragma GCC system_header`-marked Inputs/ header to lock the gate
against regressions on the spelling.

No Static Analyzer summary is added: modeling umask's argument as a
WithinRange precondition would prune feasible caller branches such as
`umask(m); if (m > 0777) ...`, even though umask is defined behavior for
any input (the kernel masks off the high bits). The Sema check covers
the constant-typo case that bionic's diagnose_if targets.


  Commit: 19a0860da1e2fa0b65edb005b214abb2206e1e19
      https://github.com/llvm/llvm-project/commit/19a0860da1e2fa0b65edb005b214abb2206e1e19
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp

  Log Message:
  -----------
  Reapply "[Dexter] Add rewriting for aggregate variables (#202800)" (#206535)

This reverts commit 5bf495456b9898c45c437b8dadae21417d04a9a5.

Reapply the original patch after the underlying issue was fixed in PR
#206732.


  Commit: 668803fa73bdf2f8d095162a1f81c000d18458c9
      https://github.com/llvm/llvm-project/commit/668803fa73bdf2f8d095162a1f81c000d18458c9
  Author: Roman Beliaev <r.beliaev at ispras.ru>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    A compiler-rt/test/profile/Darwin/instrprof-mcdc-correlation.c
    A compiler-rt/test/profile/Inputs/instrprof-mcdc-correlation.cpp
    A compiler-rt/test/profile/Linux/instrprof-mcdc-correlation.c
    M compiler-rt/test/profile/instrprof-binary-correlate-debuginfod.c
    M compiler-rt/test/profile/instrprof-binary-correlate.c
    M llvm/include/llvm/ProfileData/InstrProfCorrelator.h
    M llvm/include/llvm/ProfileData/InstrProfReader.h
    M llvm/lib/ProfileData/InstrProfCorrelator.cpp
    M llvm/lib/ProfileData/InstrProfReader.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    A llvm/test/Instrumentation/InstrProfiling/debug-info-correlate-bitmap.ll

  Log Message:
  -----------
  Reland "[MC/DC][Coverage] Enable profile correlation for MC/DC" (#204675)


  Commit: 2d98d55f7d97aee292fe22040d3e17ef6f7dba23
      https://github.com/llvm/llvm-project/commit/2d98d55f7d97aee292fe22040d3e17ef6f7dba23
  Author: jpwang <jpwang at smail.nju.edu.cn>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    A mlir/test/Dialect/SparseTensor/sparse_tensor_codegen_expand.mlir

  Log Message:
  -----------
  [mlir][sparse_tensor] Handle block argument for sparse_tensor.expand codegen (#205487)

Handle the case where the source tensor of `sparse_tensor.expand` is a
block argument in SparseExpandConverter. Previously it unconditionally
uses `getDefiningOp()`, which is `null` for block arguments and causes a
crash.

A regression test is added to cover `sparse_tensor.expand` on a function
argument.

Fixes #204712


  Commit: d71ef546a89548d5c04f47c272741583193abc8d
      https://github.com/llvm/llvm-project/commit/d71ef546a89548d5c04f47c272741583193abc8d
  Author: Matthias Wippich <mfwippich at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/Sema/Sema.h

  Log Message:
  -----------
  [clang][NFC] Fix attribute spelling in comment (#206645)

This patch fixes a typo/misspelling of the flag_enum attribute in a
comment.


  Commit: c2ffcc0a49d92eddd989bf29eea7182ca98803fe
      https://github.com/llvm/llvm-project/commit/c2ffcc0a49d92eddd989bf29eea7182ca98803fe
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang-rt/test/lit.cfg.py

  Log Message:
  -----------
  [flang-rt][AIX] Set OBJECT_MODE=any in flang-rt test (#206639)

This patch to set OBJECT_MODE=any on AIX to have tools able to handle
both different bit mode objects.

This fixes the compare_iso_fortran_env_symbols.f90 failure on AIX. The
default of llvm-nm is 32-bit but the objects in the test is 64-bit.
Setting OBJECT_MODE=any allows the tool accepts either bit modes.


  Commit: 2b1720f41724c51fb719ee30504719c8fd37fb72
      https://github.com/llvm/llvm-project/commit/2b1720f41724c51fb719ee30504719c8fd37fb72
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
    M clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
    A clang/test/CIR/Transforms/abi-lowering/direct-flatten.cir

  Log Message:
  -----------
  [CIR] Implement Direct+canFlatten in CallConvLowering (#201719)

CallConvLowering previously ignored the `canFlatten` flag on Direct classifications: a Direct arg with a multi-field struct coerced type was passed as a single struct argument rather than N scalar register arguments.  This is the register-passing pattern the x86-64 SysV ABI uses for structs like `struct { long a, b; }`.

A new helper `getFlattenedCoercedType` centralizes the detection (Direct classification, multi-field coerced struct, `canFlatten` set); the three lowering sites in `CIRABIRewriteContext.cpp` follow.


  Commit: 53a09a5c86929eac80f2797f2432cf109e223e34
      https://github.com/llvm/llvm-project/commit/53a09a5c86929eac80f2797f2432cf109e223e34
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/RegisterAllDialects.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][nvvm] extract NVVM inliner interface from LLVM dialect (#206557)

This change extracts the NVVM inliner interface from the LLVM dialect
registration. This is intended to be a build-time optimization: you can
now register the LLVM dialect inliner without incurring a dependency on
the NVVM sub-dialect.

Cf.
https://discourse.llvm.org/t/rfc-separate-gpu-specific-transforms-from-llvmirtransforms/91151


  Commit: 367498977c36bdb723d5298f6637c8a9a5c74d77
      https://github.com/llvm/llvm-project/commit/367498977c36bdb723d5298f6637c8a9a5c74d77
  Author: David Young <davidayoung at meta.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
    M llvm/lib/DWP/DWP.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
    A llvm/test/tools/llvm-dwp/X86/abbrev_code_not_found.s
    A llvm/test/tools/llvm-dwp/X86/implicit_const.s
    A llvm/test/tools/llvm-dwp/X86/implicit_const_dwo_id.s
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugAbbrevTest.cpp

  Log Message:
  -----------
  [llvm-dwp] Fix infinite loop on DWARFv5 DW_FORM_implicit_const (#205567)

llvm-dwp could spin forever (100% CPU, never terminating) when packaging
a
  DWARFv5 .dwo whose abbreviation table uses DW_FORM_implicit_const.

A DWARF abbreviation declaration is a list of (attribute, form) ULEB128
pairs terminated by a (0, 0) pair. DW_FORM_implicit_const is the only
form
  that stores an additional value -- an SLEB128 constant -- in the
abbreviation declaration itself (the value is not present in
.debug_info).

getCUAbbrev() and getCUIdentifiers() in llvm/lib/DWP/DWP.cpp walked
these
pairs but never consumed that extra SLEB128, so every implicit_const
entry
shifted the cursor by one ULEB and desynced the rest of the table walk.
  With enough implicit_const attributes preceding the compile unit's
  abbreviation code, the scan in getCUAbbrev() runs off the end of
  .debug_abbrev without ever matching the code. Past end-of-buffer
DataExtractor::getULEB128 returns 0 without advancing the offset, so the
loop `while (getULEB128(&Offset) != AbbrCode)` spins on `0 != AbbrCode`
  forever. The input is valid DWARFv5; the bug is entirely in llvm-dwp.

Consume the implicit_const SLEB128 in both abbreviation-walk loops so
the
  (attribute, form) walk stays aligned, matching how
  DWARFAbbreviationDeclaration::extract parses the same data.

Adds a regression test that hangs before this change and passes after
it.

AI assisted with: claude


  Commit: 0f51760a342cd8fed1c657e6ca134097c9e8f88c
      https://github.com/llvm/llvm-project/commit/0f51760a342cd8fed1c657e6ca134097c9e8f88c
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
    A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
    A lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h

  Log Message:
  -----------
  [lldb] Move common functionality out of Itanium ABI runtime (#191275)

To be able to support both the Microsoft ABI and Itanium ABI in the same
process, this moves out common functionality of the Itanium ABI. It
introduces the `CommonABIRuntime` which is the base class for both ABIs.
In `CPPLanguageRuntime` we store a vector of these runtimes. For
exception breakpoints, we let both add their functions and filters.

For dynamic values, we resolve the VTable first. This is identical on
both ABIs - the first "member" of a dynamic class will be the VTable.
Getting to the dynamic type afterward is ABI specific. So when we found
the VTable symbol, we ask each ABI if it's a symbol they can handle. If
so, we remember that and let the ABI do the rest.

When adding `GetDynamicTypeAndAddress` for the MS ABI, I needed the
functionality to find a type by name and cache the dynamic type info.
These were moved to `CommonABIRuntime` as well.


  Commit: fa12670d2cc416a1d0cdf8bb8dd456853ef28afb
      https://github.com/llvm/llvm-project/commit/fa12670d2cc416a1d0cdf8bb8dd456853ef28afb
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-variant.cpp
    M flang/test/Semantics/OpenMP/declare-variant-match.f90
    M flang/test/Semantics/OpenMP/declare-variant.f90

  Log Message:
  -----------
  [flang][OpenMP] DECLARE VARIANT: add more semantic checks (#206714)

1. Require the base and variant procedures to have compatible
characteristics as required by OpenMP 6.0 section 9.6.
2. Reject adjust_args/append_args as not yet implemented.


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

  Changed paths:
    M lldb/test/Shell/SymbolFile/NativePDB/local-variables.cpp

  Log Message:
  -----------
  [lldb][Windows] Relax Filecheck requirements in local-variables.cpp (#205574)

When using `lldb-server` on Windows, lldb's output gets mangled with
lldb-server's info prints. This causes the `local-variables.cpp` test to
fail.

Relax that test by switching from `CHECK-NEXT` to `CHECK-DAG` where the
prints are emitted.

This is an alternative to
https://github.com/llvm/llvm-project/pull/205572.

rdar://181035363


  Commit: 04079deb547c91eff6c6e2b820dbe6937c72fcf5
      https://github.com/llvm/llvm-project/commit/04079deb547c91eff6c6e2b820dbe6937c72fcf5
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/zos_wrappers/grp.h
    A clang/lib/Headers/zos_wrappers/locale.h
    A clang/lib/Headers/zos_wrappers/math.h
    A clang/lib/Headers/zos_wrappers/poll.h
    A clang/lib/Headers/zos_wrappers/stdlib.h
    A clang/lib/Headers/zos_wrappers/string.h
    A clang/lib/Headers/zos_wrappers/time.h
    A clang/lib/Headers/zos_wrappers/variant.h
    A clang/test/Headers/Inputs/zos/usr/include/grp.h
    A clang/test/Headers/Inputs/zos/usr/include/locale.h
    A clang/test/Headers/Inputs/zos/usr/include/math.h
    A clang/test/Headers/Inputs/zos/usr/include/poll.h
    A clang/test/Headers/Inputs/zos/usr/include/stdlib.h
    A clang/test/Headers/Inputs/zos/usr/include/string.h
    A clang/test/Headers/Inputs/zos/usr/include/time.h
    A clang/test/Headers/Inputs/zos/usr/include/variant.h
    A clang/test/Headers/zos-guard.c

  Log Message:
  -----------
  [z/OS][Clang] Add wrapper headers to avoid macro name conflicts (#204472)

Some z/OS system headers define macros (e.g. __time, __math) that
conflict with user identifiers and break compilation. These wrappers include
the system headers and neutralize the problematic macros.


  Commit: 246a7a0da2eb988a2ffabd68ac9381b1adb86f8d
      https://github.com/llvm/llvm-project/commit/246a7a0da2eb988a2ffabd68ac9381b1adb86f8d
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [llvm] Add readobj call graph section flag to release notes (#206627)

llvm-readelf supports --call-graph-section which dumps the
experimental call graph section. Adding this to release notes.


  Commit: 276f45fcf2e9d3f59bc7dc3bb924888b0d6cbb56
      https://github.com/llvm/llvm-project/commit/276f45fcf2e9d3f59bc7dc3bb924888b0d6cbb56
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Pre-commit test for constant-offset named barrier signal_var (#205217)


  Commit: 1c4c6f701ddd0645114f97b126654309a0d9dcb0
      https://github.com/llvm/llvm-project/commit/1c4c6f701ddd0645114f97b126654309a0d9dcb0
  Author: michaelselehov <michael.selehov at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/Driver/OffloadBundler.h
    M clang/lib/Driver/OffloadBundler.cpp

  Log Message:
  -----------
  [Offload][NFC] Deduplicate CompressedOffloadBundle into llvm::object (#206741)

The compressed offload bundle (CCOB) format had two byte-for-byte
identical implementations: one in clang/lib/Driver/OffloadBundler.cpp
and the canonical one in llvm/lib/Object/OffloadBundle.cpp (already used
by llvm-objdump, comgr and others).

Remove the Clang-side copy (class declaration, compress/decompress/
tryParse, the RawCompressedBundleHeader union, getHeaderSize, the
formatWithCommas helper and the private timer group) and route the
driver through llvm::object::CompressedOffloadBundle, which is already
linked via the Object component.

The only API difference is the verbose-reporting channel (bool Verbose
vs. raw_ostream *VerboseStream); the driver now passes &llvm::errs()
when verbose output is requested, preserving the previous behavior.

No functional change intended.

Co-authored-by: mselehov <mselehov at amd.com>


  Commit: d4c866a9edd45e53fab35b0d828ee35a47253983
      https://github.com/llvm/llvm-project/commit/d4c866a9edd45e53fab35b0d828ee35a47253983
  Author: sujianIBM <Jian.Su at ibm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/stack-protector-guard.c
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    A llvm/test/CodeGen/SystemZ/zos-stack-protector.ll

  Log Message:
  -----------
  [SystemZ][z/OS] Reapply "Add support of stack guard on z/OS (#206045)" (#206622)

This PR reapplies changes in PR Add support of stack guard on z/OS
(#206045) and then
- Fixes a bug when emitting instruction `llgt`. The dest reg should be
def.
- Adds `--verify-machineinstr` to lit test.


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

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/CFGMST.h

  Log Message:
  -----------
  [PGO][NFC] Make CFGMST debug dump order deterministic (#200835)

The PGO instrumentation pass can print a per-function CFG-MST dump under
-debug-only=pgo-instrumentation. The basic blocks were listed in the
iteration order of a DenseMap keyed by the block pointer, so the same
function could print its blocks in a different order from one run or
machine to the next, even when nothing about the MST actually changed.

That makes the dump hard to diff. For example, two runs of the same
build
could print the same blocks in different orders:
```
  run 1:                 run 2:
  BB: entry   ...         BB: if.else ...
  BB: if.then ...         BB: entry   ...
  BB: if.else ...         BB: if.then ...
```
and a plain `diff` would flag every line, hiding any real difference.

Sort the blocks by their assigned MST Index (with the block name as a
stable tiebreaker) before printing, so the dump is reproducible across
runs and platforms. This only affects -debug/dump output; codegen is
unchanged (NFC).


  Commit: 1fca1ae11e007c58b2dce781ad0d507ec6c1f69f
      https://github.com/llvm/llvm-project/commit/1fca1ae11e007c58b2dce781ad0d507ec6c1f69f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.cpp
    M lldb/source/Plugins/Process/Windows/Common/DebuggerThread.h
    M lldb/source/Plugins/Process/Windows/Common/ForwardDecl.h
    M lldb/source/Plugins/Process/Windows/Common/IDebugDelegate.h
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.cpp
    M lldb/source/Plugins/Process/Windows/Common/LocalDebugDelegate.h
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessDebugger.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp

  Log Message:
  -----------
  [lldb][Windows] Synchronize on LOAD_DLL_DEBUG_EVENT in lldb-server (#203334)

On Windows, deferred breakpoints in dlopen'd DLLs never fire when using
lldb-server.exe. The debuggee runs past the loader and executes code in
the DLL before the client receives the load notification.

This patch surfaces `LOAD_DLL_DEBUG_EVENT` / `UNLOAD_DLL_DEBUG_EVENT` as
a synchronous stop, which mirrors the existing exception-event
mechanism. The debug loop parks on a predicate after sending the
notification.
lldb skips the handshake for `C:\Windows\*` (no user breakpoints can
resolve here) which drastically improves performances, and for clients
that didn't advertise `qXfer:libraries:read+`.

Fixes `TestBreakInLoadedDylib` and `TestLoadUnload` when running the
tests with `LLDB_USE_LLDB_SERVER=1`.

rdar://180500207

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: bdec41e358a9232c036f63e3f5b7b92ee02c292c
      https://github.com/llvm/llvm-project/commit/bdec41e358a9232c036f63e3f5b7b92ee02c292c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    R clang/lib/Headers/zos_wrappers/grp.h
    R clang/lib/Headers/zos_wrappers/locale.h
    R clang/lib/Headers/zos_wrappers/math.h
    R clang/lib/Headers/zos_wrappers/poll.h
    R clang/lib/Headers/zos_wrappers/stdlib.h
    R clang/lib/Headers/zos_wrappers/string.h
    R clang/lib/Headers/zos_wrappers/time.h
    R clang/lib/Headers/zos_wrappers/variant.h
    R clang/test/Headers/Inputs/zos/usr/include/grp.h
    R clang/test/Headers/Inputs/zos/usr/include/locale.h
    R clang/test/Headers/Inputs/zos/usr/include/math.h
    R clang/test/Headers/Inputs/zos/usr/include/poll.h
    R clang/test/Headers/Inputs/zos/usr/include/stdlib.h
    R clang/test/Headers/Inputs/zos/usr/include/string.h
    R clang/test/Headers/Inputs/zos/usr/include/time.h
    R clang/test/Headers/Inputs/zos/usr/include/variant.h
    R clang/test/Headers/zos-guard.c

  Log Message:
  -----------
  Revert "[z/OS][Clang] Add wrapper headers to avoid macro name conflicts" (#206778)

Reverts llvm/llvm-project#204472

Test is failing in multiple configurations in multiple ways.


  Commit: 5c02f7530c796c5b46c239111650588b69cc62f9
      https://github.com/llvm/llvm-project/commit/5c02f7530c796c5b46c239111650588b69cc62f9
  Author: kwyatt-ext <kwyatt.external at hpe.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/Options/FlangOptions.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/rewrite-parse-tree.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Semantics/case01.f90
    A flang/test/Semantics/enumeration-type-declarations.f90
    A flang/test/Semantics/enumeration-type-forward-ref.f90
    A flang/test/Semantics/enumeration-type-relational.f90

  Log Message:
  -----------
  [flang] Enumeration Type: (PR 2/5) Name Resolution + Expression + Relational + SELECT CASE (#193028)

This PR completes the addition of enumeration types to the symbol table.
It adds core semantic analysis for ENUMERATION TYPE, name resolution,
expression analysis for constructors and relational operators, and
SELECT CASE support. Also includes a bug fix for non-constant
enumeration comparisons in Relate() (scope() → GetScope()).

It is the 2nd of 5 stacked PRs.

AI Usage Disclosure: AI tools (Claude Opus 4.6) were used to assist with
implementation of this feature and test code generation. I have
reviewed, modified, and tested all AI-generated code.

---------

Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>


  Commit: ddb0f5fa5148cd73f9892ba17040d6d2b610dedc
      https://github.com/llvm/llvm-project/commit/ddb0f5fa5148cd73f9892ba17040d6d2b610dedc
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    A clang/test/CIR/CodeGen/agg-atomic-cast.c
    R clang/test/CIR/CodeGen/agg-atomic-cast.cpp

  Log Message:
  -----------
  [CIR] Implement Aggregate atomic to non-atomic cast (#206322)

Implement support for the Aggregate atomic to non-atomic cast


  Commit: 3325a1f02e35bf388fbb87cad8281ca7fab96a61
      https://github.com/llvm/llvm-project/commit/3325a1f02e35bf388fbb87cad8281ca7fab96a61
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/RegisterAllDialects.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][nvvm] Revert #206557 (#206770)

https://lab.llvm.org/buildbot/#/builders/230/builds/3247

https://github.com/llvm/llvm-project/pull/206557#issuecomment-4845803419


  Commit: 638d71403a8598bb061b874ab39b8f9c6f0a97f0
      https://github.com/llvm/llvm-project/commit/638d71403a8598bb061b874ab39b8f9c6f0a97f0
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll

  Log Message:
  -----------
  Revert "[VPlan] Replace first-lane uses of BuildVector." (#206774)

Reverts llvm/llvm-project#206566

Causes miscompiles, see discussion on the original PR.


  Commit: 45afced2e7fedf05b0fd5a450e18cd33ce6d944b
      https://github.com/llvm/llvm-project/commit/45afced2e7fedf05b0fd5a450e18cd33ce6d944b
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Core/ModuleSpec.h
    M lldb/include/lldb/Target/DynamicLoader.h
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
    A lldb/test/API/functionalities/postmortem/elf-core/elf-dyld-nt-file-mismatch.yaml

  Log Message:
  -----------
  Fix ProcessElfCore::FindModuleUUID() so it work with symlinks. (#206601)

Resumbitting https://github.com/llvm/llvm-project/pull/205235 with
disabled parallel module loading to fix buildbot deadlock.

ProcessElfCore was reading the NT_FILE list and using that to help
FindModuleUUID to provide UUID information when loading core files. The
NT_FILE list contains resolved paths only, while the
DynamicLoaderPOSIXDYLD plug-in was using paths found in the r_debug
structure which contains a linked list of all of the shared libraries in
a process. The issue was these paths could be symlinks which would cause
ProcessELFCore::FindModuleUUID(...) to fail because the paths wouldn't
match up. This led to the ProcessELFCore often not being able to provide
UUIDs for shared libraries and cause the incorrect binaries to be loaded
from the current machine even when the shared library UUIDs don't match.

The solution was to add the ability for a ModuleSpec to contain a load
address for the shared library. This allows ProcessELFCore to uniquely
identify a library regardless of the name used in NT_FILE. We can now
correctly supply the UUID from the .gnu-build-id to any binaries which
use symlinks when linking, but have differing resolved paths to the
libraries.

The process virtual function for finding a UUID was changed from:

virtual lldb_private::UUID FindModuleUUID(const llvm::StringRef path);
to:

    virtual bool FindModuleUUID(ModuleSpec &spec);
to allow Process::FindModuleUUID to rely on other data in the ModuleSpec
since the path isn't enough.

We will be able to use the ModuleSpec's load address for creating a
module from a ModuleSpec, but that isn't in this PR.


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

  Changed paths:
    M clang/docs/HIPSupport.rst

  Log Message:
  -----------
  [docs][HIP] Document offload PGO workflow (#200208)

Add a section to HIPSupport.rst describing IR-level profile-guided
optimization for HIP device code. -fprofile-generate instruments both
host and device; the runtime writes a host .profraw and one set of
device .profraw files per --offload-arch= value, with the standard
LLVM_PROFILE_FILE substitutions applying to both. Host and each
per-architecture device profile are merged independently with
llvm-profdata, and the use-phase build feeds them back via -Xarch_host
-fprofile-use= and -Xarch_<gpu-arch> -fprofile-use= (with -Xarch_device
as a single-arch shorthand).

Also add a CUDA/HIP Language Changes entry in ReleaseNotes.rst.


  Commit: c0af755c57ee5ed16defa0825ac463e603b06940
      https://github.com/llvm/llvm-project/commit/c0af755c57ee5ed16defa0825ac463e603b06940
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasmProperties.td

  Log Message:
  -----------
  [lldb] Forward the inferior's environment to the Wasm runtime (#206780)

PlatformWasm::DebugProcess launches the Wasm runtime and lets it debug
the actual inferior. Environment variables requested for the inferior
(via target.env-vars / target.inherit-env, or a DAP launch "env") were
dropped. The runtime itself is launched with the host environment. A
Wasm inferior's environment must be set explicitly by the runtime.

Forward each variable from launch_info.GetEnvironment() to the runtime.
How a runtime accepts environment variables is runtime-specific, so the
per-variable argument prefix is a new configurable setting,
platform.plugin.wasm.env-arg, mirroring the port-arg. The new setting
defaults to empty, in which case no environment is forwarded.

For WAMR/iwasm, the option is `--env=`. This fixes various tests that
expect inferior args to be set when targeting Wasm running under the
micro runtime.


  Commit: fa981b17cc609f4c4fd37ffd3652a8ceaef8b589
      https://github.com/llvm/llvm-project/commit/fa981b17cc609f4c4fd37ffd3652a8ceaef8b589
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-taskloop-charbox.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Fix taskloop charbox privatization (#205568)

Load by-value privatizer arguments from task context storage when
lowering taskloop duplication and firstprivate copy regions. This keeps
pointer-based privatizers unchanged while allowing descriptor values
such as lowered Fortran boxchar values to be passed by value.

It is not at all ideal that boxchars get special treatment. MLIR to
LLVM-IR should not depend upon any particular frontend, but this is a
long-standing TODO. The purpose of this patch is to fix the reported
bug.

Fixes: #205479

Assisted-by: Codex


  Commit: ce29fdf9345deee346b0480488473fc490f2af1a
      https://github.com/llvm/llvm-project/commit/ce29fdf9345deee346b0480488473fc490f2af1a
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [infra] Exclude libc config files from RISC-V label (#205407)

Currently, almost every single new function in libc is tagged with
`backend:RISC-V` because the configurations in `libc/config/**/riscv`
are changed when adding a function.

The intention of this PR is to exclude only changes to `libc/config`
which touch `riscv` paths from being tagged. There are other
files/directories in libc which contain risc-v specific code, which
should continue to be tagged with `backend:RISC-V`.

I'm not 100% sure of the syntax here, but I based this PR on this
example in the labeller readme:

https://github.com/actions/labeler/blob/f612d9ad188e81643862c2de70f57fbb1d17abd1/README.md?plain=1#L141-L145


  Commit: 54f05f964bde020355def7c616257bcf69beddcc
      https://github.com/llvm/llvm-project/commit/54f05f964bde020355def7c616257bcf69beddcc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll

  Log Message:
  -----------
  AMDGPU: Remove dead check lines in a test (#206777)


  Commit: b213a5454f178dabb07514454cf83dc38e41fdad
      https://github.com/llvm/llvm-project/commit/b213a5454f178dabb07514454cf83dc38e41fdad
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    A flang/test/Lower/OpenACC/acc-declare-managed-no-global-ctor.f90

  Log Message:
  -----------
  [flang][openacc] Skip implicit global declare constructor in managed mode (#206610)

When `-gpu=mem:managed` is enabled, the allocatable is placed in managed
memory. Skip the global declare constructor for the create case.


  Commit: ede433bf09dd742f31154af1d8927bf5d0b8770d
      https://github.com/llvm/llvm-project/commit/ede433bf09dd742f31154af1d8927bf5d0b8770d
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test

  Log Message:
  -----------
  [Dexter] Allow fetching "scopes" from the debugger (#202802)

To further improve Dexter's script writing ability, this patch starts
implementing the ability for Dexter to fetch all variables with in a
given "scope", as defined by the DAP "scopes" request. This allows the
test to collect all available variables without needing to specify them
explicitly in the script, aiding in fast script
generation/re-generation.

This patch does not add any script-writing functionality, but adds the
!value/all Node, which fetches all variable values from the given scope,
and enables fetching these values from DAP-based debuggers.


  Commit: 166209c3b05c5e3c3eb930ae0e613b18c43797a9
      https://github.com/llvm/llvm-project/commit/166209c3b05c5e3c3eb930ae0e613b18c43797a9
  Author: Kay Hicketts <kay.hicketts at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp

  Log Message:
  -----------
  Fix false match on nullPointerConstant for array indices (#201893)

# Problem Detail
In the code

```
int *p[1];
(void) p[0];
```

The AST tree for ```p[0]```  looks like
```
    |-CStyleCastExpr 0xc0ae6f1d8 <line:3:3, col:13> 'void' <ToVoid>
    | `-ArraySubscriptExpr 0xc0ae6f1a8 <col:10, col:13> 'int *' lvalue
    |   |-ImplicitCastExpr 0xc0ae6f190 <col:10> 'int **' <ArrayToPointerDecay>
    |   | `-DeclRefExpr 0xc0ae6f118 <col:10> 'int *[1]' lvalue Var 0xc0ae6f098 'p' 'int *[1]'
    |   `-IntegerLiteral 0xc0ae6f138 <col:12> 'int' 0
```
    
So the previous matcher was finding the integer literal and then seeing
that the parent was a pointer type and thus we were getting a positive
match for something that should be replaced by a null pointer, even
though the index is just an integer.
  
 # Solution
 
 In a real null pointer scenario in cpp
 
 ```int *sausage = 0;```
 
 The AST is like 
 ```     
    | `-VarDecl 0xc0ae6f218 <col:3, col:18> col:8 sausage 'int *' cinit
    |   `-ImplicitCastExpr 0xc0ae6f2a0 <col:18> 'int *' <NullToPointer>
    |     `-IntegerLiteral 0xc0ae6f280 <col:18> 'int' 0 
```
    
 In C it's the same but with the exception of explicit casts
 
 e.g.
 
 ```char *beans = (char*)0;```
 
 which are represented as
 
 ```     
    | `-DeclStmt 0xacee134e8 <line:11:3, col:25>
    |    `-VarDecl 0xacee13420 <col:3, col:24> col:9 beans 'char *' cinit
    |        `-CStyleCastExpr 0xacee134c0 <col:17, col:24> 'char *' <NullToPointer>
    |         `-IntegerLiteral 0xacee13488 <col:24> 'int' 0 
```
          
So the new matcher looks for an IntegerLiteral with value 0 that has a
parent that does any kind of cast to a null pointer

I used AI tools to help me build and understand the code.


# Original Issue

clang-tidy tools replace 0 with nullptr in index references due to
misinterpreting index numbers as pointers

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


  Commit: 1805f5f7d1fd8ac4f5225f8b87124f59d82759f5
      https://github.com/llvm/llvm-project/commit/1805f5f7d1fd8ac4f5225f8b87124f59d82759f5
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-declarations.cpp
    A flang/test/Semantics/CUDA/cuf-hostdevice-host-call.cuf

  Log Message:
  -----------
  [flang][cuda] Allow host procedure references in host,device subprograms (#206736)

An ATTRIBUTES(HOST,DEVICE) subprogram is compiled for the host as well
as the device, so referencing a host procedure (typically guarded at run
time by a test such as ON_DEVICE()) is legitimate in its host
compilation. Two semantic checks were wrongly rejecting such code:

* CheckSubprogram flagged an interface body declared inside a device
subprogram as "may not be an internal procedure of CUDA device
subprogram". An interface body (like a dummy procedure) is not an
internal procedure, so exclude both from this check. A real internal
procedure is still rejected.

* DeviceExprChecker rejected calls to host procedures with "may not be
called in device code" even from host,device subprograms. Thread the
existing isHostDevice flag of DeviceContextChecker down to
DeviceExprChecker and suppress only that diagnostic when the enclosing
subprogram is host,device. Pure device and global subprograms continue
to reject host calls, and all other device-code diagnostics are
preserved.

Assisted-by: AI


  Commit: 92a84f255ec80c1d8a0ec51409d383e8828f0c1a
      https://github.com/llvm/llvm-project/commit/92a84f255ec80c1d8a0ec51409d383e8828f0c1a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/WASI.rules

  Log Message:
  -----------
  [lldb][test] Don't dead-strip WebAssembly test inferiors (#206799)

Unlike most native linkers, wasm-ld garbage-collects unreferenced
sections by default. Globals and functions that a test inspects but the
program never references therefore get dead-stripped from the inferior,
even though they would survive on other targets.

Default to `-Wl,--no-gc-sections` in WASI.rules so debug-info coverage
matches other targets.


  Commit: 97f1c7c1850831ef54241f94ee2f1b4411fc04a6
      https://github.com/llvm/llvm-project/commit/97f1c7c1850831ef54241f94ee2f1b4411fc04a6
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M mlir/utils/pygments/mlir_lexer.py
    M utils/docs/llvm_sphinx/__init__.py
    A utils/docs/llvm_sphinx/ext/mlir_pygments.py

  Log Message:
  -----------
  [docs] Register MLIR lexer for Sphinx docs (#206194)

Fixes building `docs-clang-html` when `cmake -DCLANG_ENABLE_CIR=ON`.

Fragments of generated documentation contain code blocks tagged with the
`mlir` language, and that generates Pygments warnings, which fails the
build.

I chose to register a sphinx extension, which in turn registers the MLIR
pygments dialect from utils/docs/llvm_sphinx. The idea here is that
`mlir` syntax highlighting should work in any llvm-project documentation
anywhere (openmp, or anything else).

I'm a little less confident about the change to the mlir lexer itself,
which seems to be necessary in order to get pygments to run without
error. Here is an example error message of what happens if you don't
match whitespace tokens as Text:

```
Warning, treated as error:
/path/to/index.md:3:Lexing literal_block '   %0 = cir.foo : !cir.int<s, 32>\n' as "mlir" resulted in an error at token: ' '. Retrying in relaxed mode.
```

Authored with LLM assistance


  Commit: c6c87fd48e39f58621d8edb76a9f2fdf5afef49e
      https://github.com/llvm/llvm-project/commit/c6c87fd48e39f58621d8edb76a9f2fdf5afef49e
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/TargetRegistry.cpp
    M llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86MCInstLower.cpp
    M llvm/lib/Target/X86/X86Subtarget.h
    M llvm/lib/TargetParser/TargetDataLayout.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp

  Log Message:
  -----------
  [llvm] Add Triple::isOSWindowsOrUEFI and use it, NFC (#206608)

I think this predicate has earned it's place in Triple.h.

Unfortunately, there isn't a really clear line between what Windows
behavior has to carry over to UEFI, so I went with the mechanical
`isOSWindowsOrUEFI` name.

I have a follow-up PR for Clang.


  Commit: 31340a9222bbc20f35b892afde79f1beecce98a9
      https://github.com/llvm/llvm-project/commit/31340a9222bbc20f35b892afde79f1beecce98a9
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    A lldb/include/lldb/Target/MemoryRegionInfoCache.h
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/CMakeLists.txt
    A lldb/source/Target/MemoryRegionInfoCache.cpp
    M lldb/source/Target/Process.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestMemoryRegionDirtyPages.py
    A lldb/test/API/tools/lldb-server/cached-memory-region-info/Makefile
    A lldb/test/API/tools/lldb-server/cached-memory-region-info/TestCachedMemoryRegionInfo.py
    A lldb/test/API/tools/lldb-server/cached-memory-region-info/main.cpp

  Log Message:
  -----------
  [lldb] Add memory region info cache to Process (#206208)

Every time a memory region is queried in the inferior with a
ProcessGDBRemote connection, lldb needs to send a packet requesting the
information. When we are querying multiple addresses within the same
region, this can result in many redundant packets - e.g. to test for
whether an address is in stack memory during a backtrace.

This adds a MemoryRegionInfoCache wrapper around RangeDataVector to save
the memory regions that we query, and supply them to future queries. The
cache is flushed on any process resume in the same way that the memory
cache is; the valid pages may change as a program executes.

This PR started as a combination of this cache plus extensions to gdb
remote serial protocol packets so the debug stub can provide memory
region infos when we have a public stop (e.g. the info about each
thread's stack memory region) - including changes to both debugserver
and ProcessGDBRemote to implement that (
https://github.com/llvm/llvm-project/pull/202509 ). I'm separating out
the two pieces into separate patchsets. The test in this PR retains the
full code in the .c file that I will need to test the expedited memory
region infos still, even though it doesn't do antyhing but launch the
inferior process in the current tests.

rdar://179067896

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 24d187791ca014b01781ba6671985b95e9131130
      https://github.com/llvm/llvm-project/commit/24d187791ca014b01781ba6671985b95e9131130
  Author: Ehsan Amiri <ehsan.amiri at huawei.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

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

  Log Message:
  -----------
  [LoopFusion] Reorder dependence checks to reduce compile time (NFC) (#206275)


  Commit: 242d4b60fe91f7343dd607b33606074382d6a957
      https://github.com/llvm/llvm-project/commit/242d4b60fe91f7343dd607b33606074382d6a957
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp

  Log Message:
  -----------
  [Dexter] Write expects for variables in Debugger scopes (#203254)

Following on from the previous patch, this patch adds support for
writing expects from !value/all nodes, generating separate expects for
each variable in the requested debugger scope, for each continuous range
of lines it is live for.

NB: As with the other patch that implements script-writing features,
each test in this patch has a corresponding "expected" file, which is
almost identical (including the `RUN` lines), and exists to be `diff`'d
against the output of Dexter's script generation.


  Commit: aec1df1e5a4ba4a3f89399e9554e2c2ebd114076
      https://github.com/llvm/llvm-project/commit/aec1df1e5a4ba4a3f89399e9554e2c2ebd114076
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/IR/AutoUpgrade.cpp
    A llvm/test/Assembler/autoupgrade-lifetime-intrinsics-invalid.ll

  Log Message:
  -----------
  [LLVM][Autoupgrade] Delete invalid lifetime.start/lifetime.end intrinsic decls and calls (#206769)

AutoUpgrade used to create invalid and unused `lifetime.start.i64` and
`lifetime.end.i64` intrinsics. This was fixed with
https://github.com/llvm/llvm-project/pull/204601. However, existing
bitcode generated prior to this fix might still have these unused and
invalid declarations in them, which now fail IR verification. Adopt
Autoupgrade to clean them up.

Invalid declaration of these intrinsics will be deleted, and if there
exists calls to these invalid intrinsics (not expected to be generated
by AutoUpgrade prior to the bug fix, but handling this case just for
completeness) these calls will be deleted as well.

Also tested with `sap_fct_splitting.bc` reported in
https://github.com/llvm/llvm-project/pull/204478#issuecomment-4845475424
(though not committing that as a unit test).


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

  Changed paths:
    M clang/docs/HIPSupport.rst

  Log Message:
  -----------
  [docs][HIP] Document source-based device code coverage workflow (#200197)

Add a section to HIPSupport.rst describing how to produce source-based
code coverage reports for HIP device code on AMD GPUs: compile with
-fprofile-instr-generate -fcoverage-mapping, extract the device ELF from
the host binary's .hip_fatbin section, unbundle with
clang-offload-bundler using the hip-amdgcn-amd-amdhsa--<arch> target ID,
and run llvm-profdata / llvm-cov against the device object.


  Commit: 0d828854dd2f20b3a01b33e441d8b982e3893aa8
      https://github.com/llvm/llvm-project/commit/0d828854dd2f20b3a01b33e441d8b982e3893aa8
  Author: Vijay Kandiah <vkandiah at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/lib/Lower/Allocatable.cpp
    A flang/test/Lower/CUDA/cuda-allocatable-component.cuf
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf

  Log Message:
  -----------
  [flang][cuda] Propagate CUDA attrs from parent variable to component allocations (#206614)

When allocating a component of a CUDA-attributed derived type (e.g.,
`allocate(managed_var(1)%arr)`), Flang's lowering only checked the
component symbol (`arr`) for CUDA attributes — not the parent variable
(`managed_var`). Since `arr` has no CUDA attribute, the allocation used
`fir.allocmem` (host `malloc`) instead of `cuf.allocate`. Additionally,
the component descriptor's `allocator_idx` remained 0 (host default), so
`Descriptor::Allocate()` also dispatched to `std::malloc`.

## Changes

- **Attribute propagation**: For `StructureComponent` allocations,
propagate CUDA attributes from the base variable to the component in
both `genSimpleAllocation` and `genSourceMoldAllocation`.

- **Allocator index**: In `genAllocateObjectInit`, re-establish the
component descriptor with the correct `allocator_idx` via
`disassociateMutableBox` before allocation.

- Added lit test `cuda-allocatable-component.cuf` covering managed,
device, and `source=` component allocations.


  Commit: 6ae0aab16af4c692ac0834fbdcd3bc2ce74a4147
      https://github.com/llvm/llvm-project/commit/6ae0aab16af4c692ac0834fbdcd3bc2ce74a4147
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Host/common/Host.cpp
    M lldb/tools/lldb-dap/ClientLauncher.cpp
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/lib/Support/StringExtras.cpp
    M llvm/unittests/ADT/StringExtrasTest.cpp

  Log Message:
  -----------
  [ADT] Add printPercentEncoded to StringExtras (#206794)

Hoist URL query-component percent-encoding into llvm/ADT alongside the
other per-character string escapers (printEscapedString,
printHTMLEscaped, printLowerCase). Several near-identical copies of this
encoder exist across the tree, all using the same RFC 3986 charset.


  Commit: 9cdea3b9d5c0a719c37bb0db6f54fb5c1a5e5c40
      https://github.com/llvm/llvm-project/commit/9cdea3b9d5c0a719c37bb0db6f54fb5c1a5e5c40
  Author: Fabian Parzefall <parzefall at meta.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinarySection.h
    M bolt/include/bolt/Core/Relocation.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    A bolt/test/X86/relr-odd-unaligned.c

  Log Message:
  -----------
  [BOLT] Preserve relocation to rela/relr association (#206612)

BOLT emits all dynamic relative relocations in .relr.dyn if it exists in
the input, including relative relocations from .rela.dyn. This can fail
for two reasons: first, relative relocations can target odd addresses.
These can never be emitted as relr relocations. Second, BOLT reuses the
existing .relr.dyn section. Even if a relative relocation from .rela.dyn
can be emitted as relr, there is simply no space in the existing
.relr.dyn section. This causes an overflow. Prevent this by emitting
relative relocations in the same section they originate from.


  Commit: 5726f6ee8140fa49d5cd6bc961e6a404f6bb1873
      https://github.com/llvm/llvm-project/commit/5726f6ee8140fa49d5cd6bc961e6a404f6bb1873
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    R llvm/test/Transforms/DirectX/getpointer-sink-behavior.ll
    A llvm/test/Transforms/GVN/no-sink-dxgetbasepointer.ll
    M llvm/test/Transforms/GVN/no-sink-dxgetpointer.ll
    A llvm/test/Transforms/GVN/no-sink-spvcounterhandle.ll
    A llvm/test/Transforms/GVN/no-sink-spvgetpointer.ll
    A llvm/test/Transforms/SimplifyCFG/DirectX/no-phi-dxgetpointer.ll
    M llvm/test/Transforms/SimplifyCFG/DirectX/no-sink-dxgetpointer.ll
    A llvm/test/Transforms/SimplifyCFG/SPIRV/no-sink-spvgetpointer.ll

  Log Message:
  -----------
  [DirectX][SPIRV] Consolidate the use of resource pointers across backends (#205433)

This pr consolidates how the hlsl backends represent ptr/handles of
resources, and counters for spir-v, to ensure the instructions do not
get optimized into illegal looking phi nodes of resource accesses.

This was initially addressed for directx in
https://github.com/llvm/llvm-project/pull/182099, however, equivalent
behaviour was not added to spir-v. It is the case that the spir-v
backend also crashed due to similar illegal looking instructions, as
reported by https://github.com/llvm/llvm-project/issues/162841.

By marking the spirv instructions as convergent it follows the precedent
to prevent the problematic transforms rather than undo it in the
backends. This prevents it from moving through code-flow in sink/hoist
optimizations.

https://github.com/llvm/llvm-project/pull/193593 attempted to remove
some of the restrictions of convergent but failed to account for the
case when the resource is written to instead of read from and introduced
a regression, as reported by
https://github.com/llvm/llvm-project/issues/201901.

As such, we revert the previous commit and mark each of these intrinsics
as convergent.

Testing for these cases are added.

Resolves: https://github.com/llvm/llvm-project/issues/201901 and
https://github.com/llvm/llvm-project/issues/162841.

Assisted by: Claude Opus 4.8


  Commit: 0bd538ad4ce5380536bad8b27041c0f519111432
      https://github.com/llvm/llvm-project/commit/0bd538ad4ce5380536bad8b27041c0f519111432
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp

  Log Message:
  -----------
  [Dexter] Add for_hit_count for state nodes (#203359)

This patch adds the ability for state nodes to use a `for_hit_count:
<int>` field to limit the number of times that a given state node will
be active.

The hit count for each state node increments each time it is _entered_,
meaning it must be inactive (not matching any frame on the stack) in the
prior step; for example, if a `!where {lines}` node covers the entirety
of a loop, repeated iterations of that loop will not increment the
hit_count - only once the line range is existed and entered again will
the hit_count increment.


  Commit: ab99d704c2ae98d3ff1341341831efd52d9818e0
      https://github.com/llvm/llvm-project/commit/ab99d704c2ae98d3ff1341341831efd52d9818e0
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/Makefile
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/TestDataFormatterStdSourceLocation.py
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/source_location/main.cpp

  Log Message:
  -----------
  [lldb] Add std::source_location summary provider (#203185)

Added simple summary provider for `std::source_location` from C++20.


  Commit: 6b5c27376a275ce34464631be3caed65967ab161
      https://github.com/llvm/llvm-project/commit/6b5c27376a275ce34464631be3caed65967ab161
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.h
    R lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.cpp
    R lldb/source/Plugins/LanguageRuntime/CPlusPlus/CommonABIRuntime.h
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABIRuntime.h

  Log Message:
  -----------
  Revert "[lldb] Move common functionality out of Itanium ABI runtime (#191275)" (#206816)

This reverts commit 0f51760a342cd8fed1c657e6ca134097c9e8f88c.

A test fails with the commit
(https://github.com/llvm/llvm-project/pull/191275#issuecomment-4846936554):

```
Traceback (most recent call last):
  File "/home/tcwg-buildbot/worker/lldb-aarch64-ubuntu/llvm-project/lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py", line 596, in test_python_source_frames
    self.assertNotIn("0xffffffffffffffff", output.lower())
AssertionError: '0xffffffffffffffff' unexpectedly found in "* thread #2, name = 'a.out', stop reason = breakpoint 1.1\n  * frame #0: compute_fibonacci at python_helper.py:7 [synthetic]\n    frame #1: process_data at python_helper.py:16 [synthetic]\n    frame #2: main at python_helper.py:27 [synthetic]\n    frame #3: 0x0000badc2de81358 a.out`thread_func(thread_num=0) at main.cpp:44:13\n    frame #4: 0x0000badc2de81f9c a.out`void std::__invoke_impl<void, void (*)(int), int>((null)=__invoke_other @ 0x0000f1555ebae74f, __f=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:61:14\n    frame #5: 0x0000badc2de81f18 a.out`std::__invoke_result<void (*)(int), int>::type std::__invoke<void (*)(int), int>(__fn=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:96:14\n    frame #6: 0x0000badc2de81ee4 a.out`void std::thread::_invoker<std::tuple<void (*)(int), int>>::_m_invoke<0ul, 1ul>(this=0x0000badc66845eb8, (null)=_index_tuple<0ul, 1ul> @ 0x0000f1555ebae7af) at std_thread.h:259:13\n    frame #7: 0x0000badc2de81e98 a.out`std::thread::_invoker<std::tuple<void (*)(int), int>>::operator()(this=0x0000badc66845eb8) at std_thread.h:266:11\n    frame #8: 0x0000badc2de81d70 a.out`std::thread::_state_impl<std::thread::_invoker<std::tuple<void (*)(int), int>>>::_m_run(this=0xffffffffffffffff) at std_thread.h:211:13\n    frame #9: 0x0000f1555ef029cc libstdc++.so.6`___lldb_unnamed_symbol_d29b0 + 28\n    frame #10: 0x0000f1555ec30398 libc.so.6`___lldb_unnamed_symbol_800c0 + 728\n    frame #11: 0x0000f1555ec99e9c libc.so.6`___lldb_unnamed_symbol_e9e90 + 12\n"
```

I don't know why this test fails with the PR, but I don't have time to
fix it now, so revert it to unblock CI.

The backtrace was
```
    frame #0: compute_fibonacci at python_helper.py:7 [synthetic]
    frame #1: process_data at python_helper.py:16 [synthetic]
    frame #2: main at python_helper.py:27 [synthetic]
    frame #3: 0x0000badc2de81358 a.out`thread_func(thread_num=0) at main.cpp:44:13
    frame #4: 0x0000badc2de81f9c a.out`void std::__invoke_impl<void, void (*)(int), int>((null)=__invoke_other @ 0x0000f1555ebae74f, __f=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:61:14
    frame #5: 0x0000badc2de81f18 a.out`std::__invoke_result<void (*)(int), int>::type std::__invoke<void (*)(int), int>(__fn=0x0000badc66845ec0, __args=0x0000badc66845eb8) at invoke.h:96:14
    frame #6: 0x0000badc2de81ee4 a.out`void std::thread::_invoker<std::tuple<void (*)(int), int>>::_m_invoke<0ul, 1ul>(this=0x0000badc66845eb8, (null)=_index_tuple<0ul, 1ul> @ 0x0000f1555ebae7af) at std_thread.h:259:13
    frame #7: 0x0000badc2de81e98 a.out`std::thread::_invoker<std::tuple<void (*)(int), int>>::operator()(this=0x0000badc66845eb8) at std_thread.h:266:11
    frame #8: 0x0000badc2de81d70 a.out`std::thread::_state_impl<std::thread::_invoker<std::tuple<void (*)(int), int>>>::_m_run(this=0xffffffffffffffff) at std_thread.h:211:13
    frame #9: 0x0000f1555ef029cc libstdc++.so.6`___lldb_unnamed_symbol_d29b0 + 28
    frame #10: 0x0000f1555ec30398 libc.so.6`___lldb_unnamed_symbol_800c0 + 728
    frame #11: 0x0000f1555ec99e9c libc.so.6`___lldb_unnamed_symbol_e9e90 + 12
```

This contains 0xffffffffffffffff in frame 8.


  Commit: 675f3d260422fb195cf6f32dcdbd6cbc76f1a0df
      https://github.com/llvm/llvm-project/commit/675f3d260422fb195cf6f32dcdbd6cbc76f1a0df
  Author: Marcos Maronas <mmaronas at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/hipstdpar.c

  Log Message:
  -----------
  [Clang][HIP] Forward hipstdpar flag to clang-linker-wrapper (#206497)

Fixes #206487.


  Commit: 527c4e7e2baf190d466c7850db5e99c482b8ec06
      https://github.com/llvm/llvm-project/commit/527c4e7e2baf190d466c7850db5e99c482b8ec06
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/NullPass.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PackReuse.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintInstructionCount.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/PrintRegion.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysAccept.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysRevert.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionSave.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
    A llvm/test/Transforms/SandboxVectorizer/region_pass_arg.ll
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/CMakeLists.txt
    A llvm/unittests/Transforms/Vectorize/SandboxVectorizer/PassBuilderTest.cpp

  Log Message:
  -----------
  [SandboxVec][PassBuilder] Add support for RegionPass aux args (#205643)

Pass auxiliary string arguments are used as a way to pass additional
information to a pass upon construction, which can be particularly
helpful with passes that support more than one mode/functionality.

You can specify an aux argument in the pass pipeline using the syntax:
`<pass>(<aux arg>)`.

FunctionPass already supports aux arguments (and are used in the
SeedCollection pass). This patch adds support for RegionPass too.
To help with testing this I modified the NullPass to add the ability to
echo the aux arg.


  Commit: 7497cb1c1f7851ea9559e1a54407c38bd241bf02
      https://github.com/llvm/llvm-project/commit/7497cb1c1f7851ea9559e1a54407c38bd241bf02
  Author: satyanarayana reddy janga <satyajanga at fb.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/include/lldb/Utility/AcceleratorGDBRemotePackets.h
    M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.cpp
    M lldb/source/Plugins/Process/gdb-remote/LLDBServerAcceleratorPlugin.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Utility/AcceleratorGDBRemotePackets.cpp
    A lldb/test/API/accelerator/mock/TestMockAcceleratorActions.py
    R lldb/test/API/accelerator/mock/TestMockAcceleratorBreakpoints.py
    A lldb/test/API/accelerator/mock/TestMockAcceleratorPackets.py
    R lldb/test/API/accelerator/mock/TestMockAcceleratorPlugin.py
    M lldb/test/API/accelerator/mock/main.c
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/CMakeLists.txt
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.cpp
    M lldb/tools/lldb-server/Plugins/Accelerator/Mock/LLDBServerMockAcceleratorPlugin.h
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.cpp
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ProcessMockAccelerator.h
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.cpp
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/RegisterContextMockAccelerator.h
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.cpp
    A lldb/tools/lldb-server/Plugins/Accelerator/Mock/ThreadMockAccelerator.h
    M lldb/unittests/Utility/AcceleratorGDBRemotePacketsTest.cpp

  Log Message:
  -----------
    [lldb] Add accelerator plugin connection support (#201449)

Summary

This builds on the accelerator plugin protocol
(https://github.com/llvm/llvm-project/pull/201489) by letting a plugin
ask the client to create and connect a second
target — the mechanism a real backend (e.g. a GPU debug stub) uses to
surface
  the accelerator alongside the CPU process being debugged.

  ### What this adds

**Protocol** — a new `AcceleratorConnectionInfo` describing how the
client
  should bring up the accelerator target.

  **Client** — when an `AcceleratorActions` carries `connect_info`,
`ProcessGDBRemote` creates a new (empty) target, reverse-connects it to
the GDB
  server the plugin points.

  **Mock server (for testing)** — to exercise this end to end, the mock
accelerator plugin stands up an in-process GDB server backed by a
minimal fake
process: `ProcessMockAccelerator`, `ThreadMockAccelerator` and
`RegisterContextMockAccelerator`.

  ### Scope

Intentionally minimal: the goal is to create and show the second
(accelerator)
target. There is no register/memory modeling beyond what a connection
requires. Next set of PRs will build up on this.

  ### Testing


Demo of how this looks with this PR. (explicitly asking the native
process to stop at every breakpoint for testability)

```
satyajanga at devgpu011:toolchain $ ./bin/lldb
(lldb) file /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out                                     Current executable set to '/home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out' (x86_64).
(lldb) log enable -f /tmp/packets.log gdb-remote packets                                                                                                                                 (lldb) r
Process 1430531 launched: '/home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out' (x86_64)
Process 1430531 stopped
(lldb) target list
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
(lldb) c
Process 1430531 resuming
Process 1 stopped
* thread #1, name = 'Mock Accelerator Thread', stop reason = trace
       frame #0: 0x0000000000001004
error: memory read failed for 0x1000
Target 0: (a.out) stopped.
(lldb) target list
Current targets:
  target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
* target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=stopped )
(lldb) c
Process 1 resuming
(lldb) target select 0
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
  target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=running )
(lldb) c
Process 1430531 resuming
Process 1430531 stopped
(lldb) target list
Current targets:
* target #0: /home/satyajanga/llvm-sand/build/Debug/fbcode-x86_64/toolchain/lldb-test-build.noindex/accelerator/mock/TestMockAcceleratorActions/a.out ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1430531, state=stopped )
  target #1: <none> ( arch=x86_64-unknown-linux-gnu, platform=host, pid=1, state=running )
(lldb)
a.out │ internal accelerator-plugin (mock) breakpoint(-4).
```

Packet log, 
you can notice the actions set with breakpoint info and later responding
with connection info. and you can also see the 5 GPRs

```
lldb             < 104> send packet: $qSupported:xmlRegisters=i386,arm,mips,arc;multiprocess+;fork-events+;vfork-events+;swbreak+;hwbreak+#cd
lldb             < 299> read packet: $PacketSize=131072;QStartNoAckMode+;qEcho+;native-signals+;QThreadSuffixSupported+;QListThreadsInStopReply+;qXfer:features:read+;QNonStop+;jMultiBreakpoint+;QPassSignals+;qXfer:auxv:read+;qXfer:libraries-svr4:read+;qXfer:siginfo:read+;accelerator-plugins+;multiprocess+;fork-events+;vfork-events+#86
..
lldb             <  32> send packet: $jAcceleratorPluginInitialize#50
lldb             < 238> read packet: $[{"breakpoints":[{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_initialize","shlib":null}],"identifier":1,"symbol_names":["mock_gpu_accelerator_compute"]}]],"identifier":1,"plugin_name":"mock","session_name":""}]]#2f
..
intern-state     < 314> send packet: $jAcceleratorPluginBreakpointHit:{"breakpoint":{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_initialize","shlib":null}],"identifier":1,"symbol_names":["mock_gpu_accelerator_compute"]}],"plugin_name":"mock","symbol_values":[{"name":"mock_gpu_accelerator_compute","value":93824992235840}]]}]#e7
intern-state     < 487> read packet: ${"actions":{"breakpoints":[{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_finish","shlib":"a.out"}],"identifier":3,"symbol_names":[]}],{"by_address":{"load_address":93824992235840}],"by_name":null,"identifier":2,"symbol_names":[]}],{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_connect","shlib":null}],"identifier":4,"symbol_names":[]}]],"identifier":2,"plugin_name":"mock","session_name":""}],"auto_resume_native":false,"disable_bp":true}]#7d
..
..
intern-state     < 218> send packet: $jAcceleratorPluginBreakpointHit:{"breakpoint":{"by_address":null,"by_name":{"function_name":"mock_gpu_accelerator_connect","shlib":null}],"identifier":4,"symbol_names":[]}],"plugin_name":"mock","symbol_values":[]}]#d1
intern-state     < 268> read packet: ${"actions":{"breakpoints":[],"connect_info":{"connect_url":"connect://localhost:32893","exe_path":null,"synchronous":true,"triple":null}],"identifier":4,"plugin_name":"mock","session_name":"Mock Accelerator Session"}],"auto_resume_native":false,"disable_bp":true}]#8e
intern-state     <   1> send packet: +
intern-state     history[1] tid=0x15d41f <   1> send packet: +
intern-state     <  19> send packet: $QStartNoAckMode#b0
intern-state     <   1> read packet: +
intern-state     <   6> read packet: $OK#9a
intern-state     <   1> send packet: +
intern-state     < 104> send packet: $qSupported:xmlRegisters=i386,arm,mips,arc;multiprocess+;fork-events+;vfork-events+;swbreak+;hwbreak+#cd
intern-state     < 159> read packet: $PacketSize=131072;QStartNoAckMode+;qEcho+;native-signals+;QThreadSuffixSupported+;QListThreadsInStopReply+;qXfer:features:read+;QNonStop+;jMultiBreakpoint+#f3
intern-state     <  26> send packet: $QThreadSuffixSupported#e4
intern-state     <   6> read packet: $OK#9a
intern-state     <  27> send packet: $QListThreadsInStopReply#21
intern-state     <   6> read packet: $OK#9a
intern-state     <  13> send packet: $qHostInfo#9b
intern-state     < 364> read packet: $triple:7838365f36342d2d6c696e75782d676e75;ptrsize:8;watchpoint_exceptions_received:after;endian:little;os_version:6.13.2;os_build:362e31332e322d305f66626b355f
68617264656e65645f7263325f305f67313733613962316463613431;os_kernel:233120534d5020576564204a756c2032332030393a32343a3330205044542032303235;hostname:6465766770753031312e656167322e66616365626f6f6b2e6
36f6d;#c4
intern-state     <  10> send packet: $vCont?#49
intern-state     <  19> read packet: $vCont;c;C;s;S;t#11
intern-state     <  27> send packet: $qVAttachOrWaitSupported#38
intern-state     <   6> read packet: $OK#9a
intern-state     <  23> send packet: $QEnableErrorStrings#8c
intern-state     <   6> read packet: $OK#9a
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <   6> send packet: $qC#b4
intern-state     <   7> read packet: $QC1#c5
intern-state     <   5> send packet: $?#3f
intern-state     < 291> read packet: $T00thread:1;name:Mock Accelerator Thread;threads:1;thread-pcs:0000000000001004;00:0010000000000000;01:0110000000000000;02:0210000000000000;03:0310000000000000
;04:0410000000000000;05:0510000000000000;reason:trace;description:6d6f636b20616363656c657261746f72207468726561642073746f70706564;#83
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  43> send packet: $qXfer:features:read:target.xml:0,131071#78
intern-state     < 889> read packet: $l<?xml version="1.0"?>
<target version="1.0">
  <architecture>x86_64</architecture>
  <feature>
    <reg name="r0" bitsize="64" regnum="0" offset="0" encoding="uint" format="hex" group="General Purpose Registers" />
    <reg name="r1" bitsize="64" regnum="1" offset="8" encoding="uint" format="hex" group="General Purpose Registers" />
    <reg name="sp" bitsize="64" regnum="2" offset="16" encoding="uint" format="hex" group="General Purpose Registers" generic="sp" />
    <reg name="fp" bitsize="64" regnum="3" offset="24" encoding="uint" format="hex" group="General Purpose Registers" generic="fp" />
    <reg name="pc" bitsize="64" regnum="4" offset="32" encoding="uint" format="hex" group="General Purpose Registers" generic="pc" />
    <reg name="flags" bitsize="64" regnum="5" offset="40" encoding="uint" format="hex" group="General Purpose Registers" />
  </feature>
</target>
#82
intern-state     <  19> send packet: $p0;thread:0001;#89
intern-state     <  20> read packet: $0010000000000000#01
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  19> send packet: $p0;thread:0001;#89
intern-state     <  20> read packet: $0010000000000000#01
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  16> send packet: $qProcessInfo#dc
intern-state     <   7> read packet: $E01#a6
intern-state     <  26> send packet: $qStructuredDataPlugins#02
intern-state     <   6> read packet: $[]#b8
intern-state     <  26> send packet: $qMemoryRegionInfo:1004#d9
intern-state     <  41> read packet: $error:6e6f7420696d706c656d656e746564;#f7
intern-state     <  16> send packet: $jThreadsInfo#c1
intern-state     < 198> read packet: $[{"description":"mock accelerator thread stopped","name":"Mock Accelerator Thread","reason":"trace","registers":{"2":"0210000000000000","3":"0310000000000000"
,"4":"0410000000000000"}],"tid":1}]]#4a

```


  Commit: 3ceb3f2d3e32f02db7444b35f47228b27332c018
      https://github.com/llvm/llvm-project/commit/3ceb3f2d3e32f02db7444b35f47228b27332c018
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/test/Transforms/LoopVectorize/pr33706.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll

  Log Message:
  -----------
  [VPlan] Extract IV exit value from vector loop if predicates are needed. (#200020)

When an IV needs predicates (e.g. to make sure it does not wrap in a
narrower range), the precomputed end value would use the inductions
narrowed step, which can lead to incorrect results for the exiting value
outside the loop. For example consider a loop where IV has a predicate
to not wrap in i16 with the top 16 bits stripped (something like
https://llvm.godbolt.org/z/nzfoWbcEG).

Building on top of tracking the predicates per-IV
(https://github.com/llvm/llvm-project/pull/192876), we can simply
extract the exit values from the vector values in the loop.

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

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


  Commit: a474af75689ea02b2de3738ffa1b949dc7669360
      https://github.com/llvm/llvm-project/commit/a474af75689ea02b2de3738ffa1b949dc7669360
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/Lexer/has_feature_modules.m

  Log Message:
  -----------
  [clang] __has_feature(modules) should only be true for Clang modules (#206199)

Before this patch `__has_feature(modules)` is true for any compilation
with `-std=c++20` as it was trigged by `LangOpts.Modules`. This is
unexpected and breaks some usages of `__has_feature(modules)`, which is
intended to only be true when Clang modules are in use. Public code
contains many examples of the form:

```
#if __has_feature(modules)
@import Foundation;
#else
#import <Foundation/Foundation.h>
#endif
```

which will never work if module maps are not in use, but is still
evaluated as true.

This patch adds a separate `LangOpts.ClangModules` which is set by
`-fmodules`. This indicates that the user intended the Clang modules
machinery to be used.

We should be extremely careful in usage of this LangOpt. Clang modules
and C++20 named modules are intended to work together, so this flag
really only means that module maps are expected to be in use.

Fixes rdar://177715262

Assisted-by Claude Code: opus-4-8


  Commit: a96686a6c4903001bf9ab5359d7aaae64634c02d
      https://github.com/llvm/llvm-project/commit/a96686a6c4903001bf9ab5359d7aaae64634c02d
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/InProcessEPC.h
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/InProcessEPC.cpp
    M llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/unittests/ExecutionEngine/Orc/InProcessEPCTest.cpp

  Log Message:
  -----------
  [ORC] Add InProcessEPC: orc_rt::InProcessControllerAccess partner. (#206725)

Adds an ExecutorProcessControl implementation for in-process JIT setups
that use the new ORC runtime (orc-rt). This is the LLVM-side partner of
orc_rt::InProcessControllerAccess (introduced in d1744cf76fbe) and is
intended to be constructed from orc_rt::InProcessControllerAccess's
OnConnect callback.

The two sides communicate through a shared refcounted C-ABI Connection
struct exchanged at connect time: the fields intended for use by the
controller side are populated by InProcessControllerAccess before
OnConnect fires, and the fields intended for use by the executor side
(IPEPC pointer, CallJITDispatch, ReturnWrapperResult) are populated by
InProcessEPC::Create. A parallel BootstrapInfoAccess struct exposes
page-size, target triple, and bootstrap key/value and symbol iterators
across the same C-only boundary.

Create returns an Expected<std::unique_ptr<InProcessEPC>> and reports
errors for missing page-size, missing triple, duplicate bootstrap keys,
and corrupted iterators, so the caller's OnConnect can surface a clean
failure back to InProcessControllerAccess (which then tears the
half-built connection down via the shared lifecycle hooks).

Disconnect is symmetric and idempotent, and guaranteed to be called in
all cases (including failed construction, and successful construction
with or without subsequent attachment to an ExecutionSession). In all
cases, pending wrapper-result handlers are also drained with an
out-of-band "disconnected" error.

Unit tests cover construction success and failure modes. A MockIPCA
mirrors the lifecycle and message-scope semantics of the real
ConnectionImpl so the tests exercise the contract end-to-end without
pulling in orc-rt.


  Commit: 61cdb3366669f69106b7222f5456012766660df2
      https://github.com/llvm/llvm-project/commit/61cdb3366669f69106b7222f5456012766660df2
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/test/CIR/CodeGen/builtin-multiprecision.c

  Log Message:
  -----------
  [CIR] Lower add/sub-with-carry builtins (#206598)

[CIR] Lower add/sub-with-carry builtins (#206598)

The multiprecision add/sub-with-carry builtins -- `__builtin_addc{b,s,,l,ll}`
and `__builtin_subc{b,s,,l,ll}` -- were stubbed with errorNYI in CIRGen, so
any translation unit that uses them fails to compile. They are used by
128-bit fallback arithmetic in libraries such as libfmt (its
`uint128_fallback` add path calls `__builtin_addcll`).

The lowering mirrors classic CodeGen in `CGBuiltin.cpp`: emit two chained
checked-overflow operations (`sum1 = x +/- y`, then `result = sum1 +/-
carryin`), OR the two overflow flags for the carry-out, widen that to the
operand type, and store it through the carry-out pointer. CIR already has
the checked-overflow ops that `__builtin_add_overflow` uses
(`AddOverflowOp` / `SubOverflowOp`), so this reuses that path rather than
adding anything new.

The new `builtin-multiprecision.c` exercises add and sub across i8/i32/i64
and checks both the CIR ops and the lowered unsigned
`uadd`/`usub.with.overflow` form against classic CodeGen.


  Commit: dd66f9eb9c875bdf517e136bd1c8724d599b9292
      https://github.com/llvm/llvm-project/commit/dd66f9eb9c875bdf517e136bd1c8724d599b9292
  Author: adams381 <adams at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/enum-bool.cpp

  Log Message:
  -----------
  [CIR] Skip int_to_bool when value is already bool (#206582)

A conversion to bool from a type whose representation is already boolean --
most commonly an enum with a `bool` underlying type -- reaches
`emitIntToBoolConversion`, which always emits `cir.cast int_to_bool`.  Since
[#205880](https://github.com/llvm/llvm-project/pull/205880) made such enums
load as `!cir.bool`, that cast now receives a `!cir.bool` source and the
`int_to_bool` verifier (which requires a `!cir.int` source) rejects the
module.  It shows up across the libcxx `std/` hash tests, whose shared
`poisoned_hash_helper.h` hashes an `enum : bool` by `static_cast`-ing it to
its underlying type.

The fix returns the value unchanged when it is already `!cir.bool`: a boolean
is its own truth value, so no conversion is needed.  The guard sits in
`emitIntToBoolConversion`, the choke point shared by the
`CK_IntegralToBoolean` cast path and the integer branch of
`emitConversionToBool`.  This is the cast-side companion to
[#205880](https://github.com/llvm/llvm-project/pull/205880), which handled
the load side.

`enum-bool.cpp` gains a `static_cast<bool>` case checked across CIR, the
CIR-lowered LLVM, and classic codegen.


  Commit: 6207788c367fcbce5e59d84260967c39fd208ee1
      https://github.com/llvm/llvm-project/commit/6207788c367fcbce5e59d84260967c39fd208ee1
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/builtins/BUILD.gn

  Log Message:
  -----------
  [gn] port c2da3ace1beac5a7 (#206837)


  Commit: 31843e9d426b264a7e94cf0dab60c784317bcff0
      https://github.com/llvm/llvm-project/commit/31843e9d426b264a7e94cf0dab60c784317bcff0
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/include/lldb/Breakpoint/BreakpointResolverFileRegex.h

  Log Message:
  -----------
  [lldb][NFC] Remove ConstString from remaining Breakpoint headers (#206823)


  Commit: d9528adce66ed78411fe210b2b9d3d3adfb73f0a
      https://github.com/llvm/llvm-project/commit/d9528adce66ed78411fe210b2b9d3d3adfb73f0a
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 31340a9222bb (#206841)


  Commit: 04d8e842d600fc4ec573593b79d2b7f4e19236b3
      https://github.com/llvm/llvm-project/commit/04d8e842d600fc4ec573593b79d2b7f4e19236b3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/SandboxVectorizer/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 527c4e7e2baf (#206842)


  Commit: e9cf4b892d7d268d6ab1031b673e0ef7f1887710
      https://github.com/llvm/llvm-project/commit/e9cf4b892d7d268d6ab1031b673e0ef7f1887710
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/ExecutionEngine/Orc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port a96686a6c490 (#206843)


  Commit: 021d3a5c1c558eda190366722f1cf140c36e31b4
      https://github.com/llvm/llvm-project/commit/021d3a5c1c558eda190366722f1cf140c36e31b4
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Target/SPIRV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port b74fc87d30d8 (#206844)


  Commit: a2cc0b6e997a4fa0ccbb8738ed01a842d08986a0
      https://github.com/llvm/llvm-project/commit/a2cc0b6e997a4fa0ccbb8738ed01a842d08986a0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port df108f91d5b8 (#206845)


  Commit: f9b5264523b1f0050b9b065da3c5b2bd62570964
      https://github.com/llvm/llvm-project/commit/f9b5264523b1f0050b9b065da3c5b2bd62570964
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Utility/FileSpec.h
    M lldb/include/lldb/Utility/XcodeSDK.h
    M lldb/source/API/SBFileSpec.cpp
    M lldb/source/API/SBProcess.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Breakpoint/BreakpointResolverFileLine.cpp
    M lldb/source/Commands/CommandCompletions.cpp
    M lldb/source/Commands/CommandObjectPlatform.cpp
    M lldb/source/Commands/CommandObjectSource.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Address.cpp
    M lldb/source/Core/AddressRange.cpp
    M lldb/source/Core/AddressResolverFileLine.cpp
    M lldb/source/Core/Declaration.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/FileLineResolver.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/Module.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Core/SearchFilter.cpp
    M lldb/source/Core/Section.cpp
    M lldb/source/Core/SourceManager.cpp
    M lldb/source/Host/common/FileSystem.cpp
    M lldb/source/Host/common/HostInfoBase.cpp
    M lldb/source/Host/macosx/objcxx/Host.mm
    M lldb/source/Host/macosx/objcxx/HostInfoMacOSX.mm
    M lldb/source/Host/posix/HostInfoPosix.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/DynamicLoader/FreeBSD-Kernel/DynamicLoaderFreeBSDKernel.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/CppModuleConfiguration.cpp
    M lldb/source/Plugins/InstrumentationRuntime/Utility/Utility.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
    M lldb/source/Plugins/ObjectFile/COFF/ObjectFileCOFF.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/XCOFF/ObjectFileXCOFF.cpp
    M lldb/source/Plugins/OperatingSystem/Python/OperatingSystemPython.cpp
    M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinDevice.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformRemoteDarwinDevice.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp
    M lldb/source/Plugins/Protocol/MCP/Resource.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
    M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    M lldb/source/Plugins/SymbolLocator/Default/SymbolLocatorDefault.cpp
    M lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
    M lldb/source/Plugins/SymbolVendor/PECOFF/SymbolVendorPECOFF.cpp
    M lldb/source/Symbol/DWARFCallFrameInfo.cpp
    M lldb/source/Symbol/LineEntry.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Target/AssertFrameRecognizer.cpp
    M lldb/source/Target/InstrumentationRuntime.cpp
    M lldb/source/Target/InstrumentationRuntimeStopInfo.cpp
    M lldb/source/Target/ModuleCache.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/SectionLoadList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/TargetList.cpp
    M lldb/source/Target/Trace.cpp
    M lldb/source/Target/TraceDumper.cpp
    M lldb/source/Utility/Args.cpp
    M lldb/source/Utility/FileSpec.cpp
    M lldb/source/Utility/FileSpecList.cpp
    M lldb/source/Utility/ProcessInfo.cpp
    M lldb/source/Utility/XcodeSDK.cpp
    M lldb/tools/lldb-server/lldb-platform.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Symbol/LocateSymbolFileTest.cpp
    M lldb/unittests/Target/LocateModuleCallbackTest.cpp
    M lldb/unittests/Target/ModuleCacheTest.cpp
    M lldb/unittests/Utility/FileSpecTest.cpp

  Log Message:
  -----------
  [lldb] Remove ConstString getters from FileSpec (#206802)

This finishes the removal of ConstString from FileSpec's interface. Note
that FileSpec is still _backed_ by ConstStrings, that will be changed in
a follow-up.

A non-goal for this change is to rewrite business logic, so I kept the
type of some variables as ConstString where a refactor would necessary
to change that. I converted printf-style formatting to formatv-style
formatting where required, and otherwise tried to leave callsites alone
to the extent that was possible.


  Commit: 7dc0a37db17b845a9883e20749282bf89531b32f
      https://github.com/llvm/llvm-project/commit/7dc0a37db17b845a9883e20749282bf89531b32f
  Author: Tom Honermann <tom.honermann at intel.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp

  Log Message:
  -----------
  [Clang][SYCL] Remove unnecessary null pointer check (#206813)

Static analysis identified a null pointer check in a control flow path
that unconditionally dereferences the checked pointer. This patch
removes the unnecessary check.


  Commit: 99e855f10cf3cdba0f8708651c167ed7dcff07cd
      https://github.com/llvm/llvm-project/commit/99e855f10cf3cdba0f8708651c167ed7dcff07cd
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/include/lldb/Breakpoint/Breakpoint.h
    M lldb/include/lldb/Target/Target.h
    M lldb/source/API/SBBreakpoint.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Target/Target.cpp

  Log Message:
  -----------
  [lldb][NFC] Target::RemoveNameFromBreakpoint should take a StringRef (#206834)


  Commit: 7479a79433582bd251ede59c4dd89e7c3959ae0a
      https://github.com/llvm/llvm-project/commit/7479a79433582bd251ede59c4dd89e7c3959ae0a
  Author: Andre Kuhlenschmidt <akuhlenschmi at nvidia.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-directives.cpp
    A flang/test/Semantics/OpenACC/acc-component-ref-dsa.f90
    A flang/test/Semantics/OpenACC/acc-default-none-arrays.f90

  Log Message:
  -----------
  [flang][openacc] Fix DEFAULT(NONE) errors for array sections (#204248)

ResolveAccObject skipped DSA registration when
GetDesignatorNameIfDataRef returned nullptr (i.e. for subscripted
designators like copyin(a(1:n))). The DEFAULT(NONE) post-visitor then
found the base variable unregistered and emitted a false error even
though it was explicitly listed in a data clause.

Unify the path using GetFirstName, which extracts the base symbol from
both bare data references and array sections. Continue not registering component references. This will need to be followed up with more accurate designator checking in the near future.


  Commit: 1f7a93d088f0b8549156aa2d4a241cdf8e36a066
      https://github.com/llvm/llvm-project/commit/1f7a93d088f0b8549156aa2d4a241cdf8e36a066
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/ABI/X86/ABIX86.cpp
    M lldb/source/Plugins/ABI/X86/ABIX86.h
    M lldb/source/Plugins/ABI/X86/ABIX86_64.h
    M lldb/source/Plugins/ABI/X86/ABIX86_i386.h

  Log Message:
  -----------
  [lldb][Windows] Fix "Invalid register name" for eax on x86_64 attach (#203498)

On Windows, when attaching to a process with no pre-existing target,
lldb reports "Invalid register name" for sub-registers like eax.

This is due to a bug in `ABIX86::AugmentRegisterInfo`, which determines
the GPR base size by reading
`Target::GetArchitecture().GetAddressByteSize()`. During attach, the
target's architecture has not yet been set when `AugmentRegisterInfo`
runs, so the lookup returns 0, the process is treated as 32-bit, and the
x86_64 sub-registers are never added.

This patch removes the dependency on the target's architecture: the X86
ABI plugins already know their own bitness, so `ABIX86_64` and
`ABIX86_i386` now report it directly via a new `Is64Bit()` virtual.

This patch fixes
`TestRegisters::test_convenience_registers_with_process_attach` and
`TestRegisters::test_convenience_registers_16bit_with_process_attach` on
Windows using `LLDB_USE_LLDB_SERVER=1`.

rdar://180307995


  Commit: 9a725a7e86b1289893850127c63f5be9acdf9f07
      https://github.com/llvm/llvm-project/commit/9a725a7e86b1289893850127c63f5be9acdf9f07
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp

  Log Message:
  -----------
  [lldb] Create a BSS section for WebAssembly object files (#206840)

Zero-initialized globals (BSS) live in a module's linear memory above
the initialized data segments, but wasm-ld emits no data segment for
them, so ObjectFileWasm created no section covering their addresses.
Reading those global without a running process fails with "unable to
resolve the module for file address", because the address resolved to no
section. Live reads did work because they go through process memory.

Synthesize a zero-fill section spanning from the end of the initialized
data to the linear memory's minimum size, and map it into linear memory
like the data segments. Live reads keep going through process memory
while zero-fill reads return zero.


  Commit: 475bc045b47cc5df201c3b74ef8b40c90aeb2bba
      https://github.com/llvm/llvm-project/commit/475bc045b47cc5df201c3b74ef8b40c90aeb2bba
  Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/include/__node_handle
    M libcxx/include/__tree
    M libcxx/include/set
    M libcxx/include/version
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/associative/set/clear.pass.cpp
    M libcxx/test/std/containers/associative/set/contains.pass.cpp
    M libcxx/test/std/containers/associative/set/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/count.pass.cpp
    M libcxx/test/std/containers/associative/set/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/empty.pass.cpp
    M libcxx/test/std/containers/associative/set/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/set/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/set/find.pass.cpp
    M libcxx/test/std/containers/associative/set/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/set/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/set/max_size.pass.cpp
    M libcxx/test/std/containers/associative/set/merge.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/set/set.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/set/set.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/size.pass.cpp
    M libcxx/test/std/containers/associative/set/types.pass.cpp
    M libcxx/test/std/containers/associative/set/upper_bound.pass.cpp
    M libcxx/test/std/containers/container.node/node_handle.pass.cpp
    M libcxx/test/std/containers/from_range_helpers.h
    M libcxx/test/std/containers/insert_range_maps_sets.h
    M libcxx/test/std/containers/set_allocator_requirement_test_templates.h
    M libcxx/test/std/language.support/support.limits/support.limits.general/set.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Make `<set>` `std::set` constexpr as part of P3372R3 (#167241)


  Commit: fe80adea429cceed029f7763c8eabc604eece988
      https://github.com/llvm/llvm-project/commit/fe80adea429cceed029f7763c8eabc604eece988
  Author: Xavier Roche <xavier.roche at algolia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_signed_integer.compile.pass.cpp
    M libcxx/test/libcxx/concepts/concepts.arithmetic/__libcpp_unsigned_integer.compile.pass.cpp
    M libcxx/test/std/containers/views/mdspan/extents/bitint.pass.cpp
    M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/digits10.pass.cpp
    M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/max.pass.cpp
    M libcxx/test/std/language.support/support.limits/limits/numeric.limits.members/min.pass.cpp
    M libcxx/test/std/numerics/bit/bit.pow.two/bit_floor.pass.cpp
    M libcxx/test/std/numerics/bit/bit.pow.two/bit_width.pass.cpp
    M libcxx/test/std/numerics/bit/bitops.count/countl_zero.pass.cpp
    M libcxx/test/std/numerics/bit/bitops.rot/rotl.pass.cpp
    M libcxx/test/std/numerics/bit/bitops.rot/rotr.pass.cpp
    M libcxx/test/std/numerics/bit/byteswap.pass.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.sat/saturating.bitint.pass.cpp
    M libcxx/test/std/utilities/utility/utility.intcmp/intcmp.bitint.pass.cpp

  Log Message:
  -----------
  [libc++][test][NFC] Remove implementation-detail noise from _BitInt test comments (#206666)

Several `_BitInt` test comments named the builtin the code lowers to,
restated macro equivalences, or pointed at another test file's
internals. They read as machine-generated and do not help a reader. This
rewords them across the `_BitInt` tests touched by #203876, where the
pattern was flagged in review.

Assisted-by: Claude (Anthropic)

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


  Commit: bc59f8f4f31b101cb4e338b4cb71591aa769911c
      https://github.com/llvm/llvm-project/commit/bc59f8f4f31b101cb4e338b4cb71591aa769911c
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/InProcessEPC.cpp

  Log Message:
  -----------
  [ORC] Add missing std::move. (#206859)

This should fix the build failure at
https://lab.llvm.org/buildbot/#/builders/116/builds/29995.


  Commit: 443d933cef6ef8dc5179ff8ffe9feb133a265920
      https://github.com/llvm/llvm-project/commit/443d933cef6ef8dc5179ff8ffe9feb133a265920
  Author: Heejin Ahn <aheejin at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M libunwind/src/Unwind-wasm.c

  Log Message:
  -----------
  [libunwind] Fix comment about phase (NFC) (#206660)

We switched to use `_UA_SEARCH_PHASE` in
https://github.com/emscripten-core/emscripten/pull/17991, but the
comment above was not fixed, and it was upstreamed that way later.


  Commit: f9f4331c2883fc441c5f146ef674e693acf2fc9b
      https://github.com/llvm/llvm-project/commit/f9f4331c2883fc441c5f146ef674e693acf2fc9b
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libc/shared/builtins.h
    A libc/shared/builtins/muldf3.h
    M libc/src/__support/builtins/CMakeLists.txt
    A libc/src/__support/builtins/muldf3.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_builtins_test.cpp

  Log Message:
  -----------
  [libc] add shared muldf3 builtin (#205674)

Re-exposes LLVM-libc's `__muldf3` as `shared::muldf3` for reuse by
compiler-rt's builtins.

Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673

Part of #197824


  Commit: c7e2809a631a2fbe73a13e5f2d2e48bc3f3dcf18
      https://github.com/llvm/llvm-project/commit/c7e2809a631a2fbe73a13e5f2d2e48bc3f3dcf18
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/include/clang/Sema/Initialization.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    R clang/test/AST/HLSL/ConstantBuffers-AST-error.hlsl
    M clang/test/AST/HLSL/ConstantBuffers-AST.hlsl
    R clang/test/CodeGenHLSL/cbuffer_copy_layout.hlsl
    A clang/test/CodeGenHLSL/resources/ConstantBufferT-struct-passing.hlsl
    M clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
    M clang/test/SemaHLSL/Resources/ConstantBuffers.hlsl

  Log Message:
  -----------
  [HLSL] Enable conversion of ConstantBuffer<T> to T (#205996)

HLSL allows assigning a `ConstantBuffer<T>` to an object of type `T`.
This change adds support for this.

Fixes #195093


  Commit: e2fc1e7467e0b4c124aa6aa1422b1fed3afd1907
      https://github.com/llvm/llvm-project/commit/e2fc1e7467e0b4c124aa6aa1422b1fed3afd1907
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    A llvm/test/CodeGen/LoongArch/isel-set-invalid-rounding.ll
    A llvm/test/CodeGen/LoongArch/set-rounding.ll

  Log Message:
  -----------
  [LoongArch] Support ISD::SET_ROUNDING (llvm.set.rounding) (#206395)

Fix https://github.com/llvm/llvm-project/issues/205039.

The LoongArch FCSR RM field supports four rounding modes, whose
encodings differ from LLVM's rounding mode values:
  FCSR: 0=RNE, 1=RZ,  2=RP,  3=RM
  LLVM: 0=RTZ, 1=RNE, 2=RUP, 3=RDN

For LLVM rounding mode 4, round to nearest with ties away from zero,
diagnose an error when it is a constant.

---------

Co-authored-by: tangyuan0821 <tangyuan0821 at email.cn>


  Commit: 80723e01f328a09e7e8374d4f61822288daabf9c
      https://github.com/llvm/llvm-project/commit/80723e01f328a09e7e8374d4f61822288daabf9c
  Author: lrzlin <linrunze at loongson.cn>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/test/CodeGen/LoongArch/ir-instruction/double-convert.ll
    M llvm/test/CodeGen/LoongArch/ir-instruction/float-convert.ll

  Log Message:
  -----------
  Reland: [LoongArch] Custom scalar UINT_TO_FP and FP_TO_UINT with LSX instructions (#206655)

Using `vftintrz.lu.d` for converting scalar double/float values to
unsigned 64-bit integers, and `vffint.d.lu` vice versa.

Remove incorrect uint64 to float conversion, which is suffered
from double-rounding issue.


  Commit: c311656883510568fc1ce027916a9534b825f91d
      https://github.com/llvm/llvm-project/commit/c311656883510568fc1ce027916a9534b825f91d
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/test/CodeGen/call-graph-section-callback.cpp
    M clang/test/CodeGen/call-graph-section-internal.cpp
    M clang/test/CodeGen/call-graph-section-templates.cpp
    M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
    M clang/test/CodeGen/call-graph-section.c
    M clang/test/CodeGen/call-graph-section.cpp
    R llvm/docs/CalleeTypeMetadata.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/Reference.md
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/Metadata.h
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/test/Assembler/callee-type-metadata.ll
    M llvm/test/CodeGen/AArch64/calleetypeid-directcall-mismatched.ll
    M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid-tailcall.ll
    M llvm/test/CodeGen/AArch64/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/ARM/call-graph-section-addrtaken.ll
    M llvm/test/CodeGen/ARM/call-graph-section-assembly.ll
    M llvm/test/CodeGen/ARM/call-graph-section-tailcall.ll
    M llvm/test/CodeGen/ARM/call-graph-section.ll
    M llvm/test/CodeGen/ARM/calleetypeid-directcall-mismatched.ll
    M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid-tailcall.ll
    M llvm/test/CodeGen/ARM/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/MIR/X86/call-site-info-ambiguous-indirect-call-typeid.mir
    M llvm/test/CodeGen/MIR/X86/call-site-info-typeid.mir
    M llvm/test/CodeGen/MIR/X86/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/Mips/calleetypeid-directcall-mismatched.ll
    M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid-tailcall.ll
    M llvm/test/CodeGen/Mips/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/RISCV/calleetypeid-directcall-mismatched.ll
    M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid-tailcall.ll
    M llvm/test/CodeGen/RISCV/callsite-emit-calleetypeid.ll
    M llvm/test/CodeGen/X86/call-graph-section-addrtaken.ll
    M llvm/test/CodeGen/X86/call-graph-section-assembly.ll
    M llvm/test/CodeGen/X86/call-graph-section-tailcall.ll
    M llvm/test/CodeGen/X86/call-graph-section.ll
    M llvm/test/CodeGen/X86/calleetypeid-directcall-mismatched.ll
    M llvm/test/CodeGen/X86/callsite-emit-calleetypeid-tailcall.ll
    M llvm/test/CodeGen/X86/callsite-emit-calleetypeid.ll
    M llvm/test/Transforms/Inline/drop-callee-type-metadata.ll
    M llvm/test/Transforms/InstCombine/drop-callee-type-metadata.ll
    A llvm/test/Transforms/MergeFunc/callgraph-function-merging.ll
    M llvm/test/Transforms/SimplifyCFG/merge-callee-type-metadata.ll
    M llvm/test/Verifier/callee-type-metadata.ll

  Log Message:
  -----------
  [clang][llvm]Uncorrelate CFI and Callgraph related type metadata annotations (#204266)

When -fexperimental-call-graph-section flag is set, it adds type
metadata to all the functions whose addresses are taken and does not
have local linkage. When this flag is set along with CFI, the type
metadata is added to all the vtable functions including destructors.
This changes which functions are to be treated as CFI functions and
includes such vtable entries to become part of the CFI check jumptables.

To disambiguate intentions of CFI and callgraph mechanisms, this patch
renames metadata set by callgraph mechanism to !callgraph
(MD_callgraph). This prevents inflating the list of CFI functions when
callgraph section is enabled along with CFI.


  Commit: 6a2cd1fabaa738884ce70aa5720b8d52f1d12699
      https://github.com/llvm/llvm-project/commit/6a2cd1fabaa738884ce70aa5720b8d52f1d12699
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCArchitectures.cmake

  Log Message:
  -----------
  [libc] Support triples that start with thumb*- (#206847)

thumb*- can be used as an alias for arm*- (implying -mthumb).


  Commit: 76c92ec7aeede1b31f70a0aa1e75295ad9782cf1
      https://github.com/llvm/llvm-project/commit/76c92ec7aeede1b31f70a0aa1e75295ad9782cf1
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M lldb/test/API/commands/platform/basic/TestPlatformPython.py
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/process/launch-with-shellexpand/TestLaunchWithShellExpand.py
    M lldb/test/API/commands/process/reverse-continue/TestReverseContinue.py
    M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py
    M lldb/test/API/driver/batch_mode/TestBatchMode.py
    M lldb/test/API/functionalities/breakpoint/breakpoint_conditions/crashing_condition/TestCrashingCondition.py
    M lldb/test/API/functionalities/breakpoint/delayed_breakpoints/TestDelayedBreakpoint.py
    M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/require_hw_breakpoints/TestRequireHWBreakpoints.py
    M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/simple_hw_breakpoints/TestSimpleHWBreakpoints.py
    M lldb/test/API/functionalities/completion/TestCompletion.py
    M lldb/test/API/functionalities/gdb_remote_client/TestDynamicLoaderDarwin.py
    M lldb/test/API/functionalities/memory/holes/TestMemoryHoles.py
    M lldb/test/API/functionalities/module_cache/simple_exe/TestModuleCacheSimple.py
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueBreakpoints.py
    M lldb/test/API/functionalities/reverse-execution/TestReverseContinueWatchpoints.py
    M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq1/TestAmbiguousTailCallSeq1.py
    M lldb/test/API/functionalities/tail_call_frames/ambiguous_tail_call_seq2/TestAmbiguousTailCallSeq2.py
    M lldb/test/API/functionalities/tail_call_frames/cross_object/TestCrossObjectTailCalls.py
    M lldb/test/API/functionalities/tail_call_frames/disambiguate_call_site/TestDisambiguateCallSite.py
    M lldb/test/API/functionalities/tail_call_frames/disambiguate_paths_to_common_sink/TestDisambiguatePathsToCommonSink.py
    M lldb/test/API/functionalities/tail_call_frames/disambiguate_tail_call_seq/TestDisambiguateTailCallSeq.py
    M lldb/test/API/functionalities/tail_call_frames/inlining_and_tail_calls/TestInliningAndTailCalls.py
    M lldb/test/API/functionalities/tail_call_frames/sbapi_support/TestTailCallFrameSBAPI.py
    M lldb/test/API/functionalities/tail_call_frames/thread_step_out_message/TestArtificialFrameStepOutMessage.py
    M lldb/test/API/functionalities/tail_call_frames/thread_step_out_or_return/TestSteppingOutWithArtificialFrames.py
    M lldb/test/API/functionalities/tail_call_frames/unambiguous_sequence/TestUnambiguousTailCalls.py
    M lldb/test/API/iohandler/sigint/TestProcessIOHandlerInterrupt.py
    M lldb/test/API/lang/cpp/default-template-args/TestDefaultTemplateArgs.py
    M lldb/test/API/macosx/mte/TestDarwinMTE.py
    M lldb/test/API/python_api/global_module_cache/TestGlobalModuleCache.py
    M lldb/test/API/python_api/sbenvironment/TestSBEnvironment.py
    M lldb/test/API/python_api/sbplatform/TestSBPlatform.py
    M lldb/test/API/qemu/TestQemuLaunch.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setBreakpoints.py
    M lldb/test/API/tools/lldb-dap/databreakpoint/TestDAP_setDataBreakpoints.py
    M lldb/test/API/tools/lldb-dap/disconnect/TestDAP_disconnect.py

  Log Message:
  -----------
  [lldb][test] Skip more unsupported tests on WebAssembly (#206857)

These tests exercise functionality that WebAssembly does not provide, so
they cannot pass under the Wasm test configuration. The reasons vary by
test, captured by a short inline comment.

Skip them with @skipIfWasm (and @skipIfNoSignals for the SIGINT test) so
the suite reflects real failures.


  Commit: 483d53409dd5b1540c1b0644b31c392e4a1b0406
      https://github.com/llvm/llvm-project/commit/483d53409dd5b1540c1b0644b31c392e4a1b0406
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/TargetParser/SubtargetFeature.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [TargetParser][NFC] Make FeatureBitset iterable (#206394)

FeatureBitset had no way to iterate its bits, so callers scanned all
MAX_SUBTARGET_FEATURES positions by hand.
This adds begin()/end() that yield the index of each set bit, skipping
unset bits with countr_zero.
Callers can now write `for (unsigned Feature: Features)`. 

Assisted-by: claude-opus


  Commit: 14d9c0c469be442f16bafaff3299b7585e944ea5
      https://github.com/llvm/llvm-project/commit/14d9c0c469be442f16bafaff3299b7585e944ea5
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/test/MC/ARM/basic-arm-instructions-v8.1a.s
    M llvm/test/MC/ARM/bfloat16-a32-errors2.s
    M llvm/test/MC/ARM/cde-integer.s
    M llvm/test/MC/ARM/diagnostics.s
    M llvm/test/MC/ARM/invalid-neon-v8.s
    M llvm/test/MC/ARM/ldrd-strd-gnu-arm-bad-regs.s
    M llvm/test/MC/ARM/ldrd-strd-gnu-bad-inst.s
    M llvm/test/MC/ARM/ldrd-strd-gnu-sp.s
    M llvm/test/MC/ARM/ldrd-strd-gnu-thumb-bad-regs.s
    M llvm/test/MC/ARM/mve-load-store.s
    M llvm/test/MC/ARM/mve-misc.s
    M llvm/test/MC/ARM/mve-scalar-shift.s
    M llvm/test/MC/ARM/thumb-diagnostics.s
    M llvm/test/MC/ARM/thumb2-diagnostics.s
    M llvm/test/MC/ARM/thumb2-dsp-diag.s
    M llvm/test/MC/ARM/thumbv7m.s
    M llvm/test/MC/ARM/thumbv8m.s
    M llvm/test/MC/ARM/vmrs_vmsr.s
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [AsmMatcher] Report a near-miss when all candidates mismatch multiple operands (#206390)

In the ReportMultipleNearMisses path, an opcode that mismatches more
than one operand is dropped, and its first near-miss is dropped with it. If
every opcode is dropped this way, the parser only reports a generic
"invalid instruction".

Now keep the first near-miss of each such opcode, and use it only when
no other opcode gives a near-miss.

Assisted-by: claude-opus


  Commit: 14a19ce1580733ec75dd4cbc5214e7d40d90cbba
      https://github.com/llvm/llvm-project/commit/14a19ce1580733ec75dd4cbc5214e7d40d90cbba
  Author: Junji Watanabe <jwata at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  Fix Windows Path Separator issues in create_symlink and readlink (#206665)

- Force create_symlink target path to use backslashes on Windows, as
NTFS reparse points require backslashes.
- Normalize readlink output to native path separators to match preferred
style.

This fixes the following test failure:

```
PS C:\src\chromium\src\third_party\llvm> .\build_repro\unittests\Support\SupportTests.exe --gtest_filter=FileSystemTest.CreateRelativeDirectorySymlink
[ RUN      ] FileSystemTest.CreateRelativeDirectorySymlink
Test Directory: C:/src/temp/file-system-test-a3fd42
C:\src\chromium\src\third_party\llvm\llvm\unittests\Support\Path.cpp(896): error: Value of: fs::is_directory(Link)                                                                                                                                                                                                                     Actual: false
Expected: true
```


  Commit: b0e490ad4f8c12b38023e15cd08c8211f3262cfb
      https://github.com/llvm/llvm-project/commit/b0e490ad4f8c12b38023e15cd08c8211f3262cfb
  Author: Ivo Popov <popov.ivo at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Serialization/ASTCommon.cpp
    A clang/test/Modules/modules-lambda-dependent-crash.cppm
    A clang/test/Modules/modules-local-class-dependent-crash.cppm

  Log Message:
  -----------
  [Clang][Modules] Skip anonymous declaration numbering for local tags in dependent contexts (#202248)

Local tag declarations (classes, structs, enums, and lambdas) defined
within function template bodies or class templates do not require ODR
merging at the local declaration level across different modules. ODR
consistency is already guaranteed because the instantiator only walks
the canonical template definition body, which instantiates its own copy
of the local class.

Merging them across different modules causes their member definitions
(like methods or call operators) to be canonicalized to one module,
while the instantiator walks the template body from another module.
Since local variables within template bodies are not merged, this
mismatch leads to assertion crashes during template instantiation in
`LocalInstantiationScope::findInstantiationOf`.

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

Co-authored-by: ipopov <ipopov at google.com>


  Commit: e3f2e3505c234175c9f3b76fd9a129b228056562
      https://github.com/llvm/llvm-project/commit/e3f2e3505c234175c9f3b76fd9a129b228056562
  Author: Ivo Popov <popov.ivo at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Serialization/ASTCommon.cpp

  Log Message:
  -----------
  [Serialization] Delete an unreachable BlockDecl check (NFC) (#206298)

`needsAnonymousDeclarationNumber()` takes a `const NamedDecl *`. Both
`BlockDecl` and `NamedDecl` derive from `Decl`, in other words they're
siblings.

* https://clang.llvm.org/doxygen/classclang_1_1BlockDecl.html
* https://clang.llvm.org/doxygen/classclang_1_1NamedDecl.html

Thus `isa<BlockDecl>(D)` is statically false.


  Commit: f5ebc1a2e48605f01f9464eb5e833862790e3499
      https://github.com/llvm/llvm-project/commit/f5ebc1a2e48605f01f9464eb5e833862790e3499
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUMCInstLower.cpp
    A llvm/test/CodeGen/AMDGPU/mcinstlower-external-symbol-reloc.mir

  Log Message:
  -----------
  [AMDGPU] Apply target flag specifier when lowering MO_ExternalSymbol operands (#202389)

The MO_ExternalSymbol case in AMDGPUMCInstLower dropped the operand
target flags emitting the wrong relocation type


  Commit: 905c6d98f2d97a623b16d2e7242f4c9a7f7b4d97
      https://github.com/llvm/llvm-project/commit/905c6d98f2d97a623b16d2e7242f4c9a7f7b4d97
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvv/pr206788.ll

  Log Message:
  -----------
  [RISCV] Disable combineVectorSizedSetCCEquality when fixed length vectors are disabled. (#206829)

With VLEN=32 we don't support fixed vectors even if vector instructions are
enabled.

Fixes #206788


  Commit: b5c555194be70b631847c51ba03855cbf38443cb
      https://github.com/llvm/llvm-project/commit/b5c555194be70b631847c51ba03855cbf38443cb
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/CallableTraitsHelper.h

  Log Message:
  -----------
  [orc-rt] Simplify CallableTraitsHelper specialization inheritance NFC. (#206869)

Make CallableTraitsHelper specializations inherit directly from ImplT.
This is a no-op, but will simplify upcoming patches that will capture
more information about the callable type.


  Commit: 62ee075076deae88fd26b413493246c5bc2d80bd
      https://github.com/llvm/llvm-project/commit/62ee075076deae88fd26b413493246c5bc2d80bd
  Author: Shanzhi Chen <chenshanzhi at huawei.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

  Log Message:
  -----------
  [AArch64][ISel] Fix comment misalignment (NFC) (#206878)

Fix comment misalignment introduced by newly-added code in commit
2668971e14219205ddf6b1f753cf83f7cb22022a


  Commit: e7290b1f1815626c4461d38671d93093590bf405
      https://github.com/llvm/llvm-project/commit/e7290b1f1815626c4461d38671d93093590bf405
  Author: Carlos Alberto Enciso <carlos.alberto.enciso at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVElement.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVLocation.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVReader.h
    M llvm/include/llvm/DebugInfo/LogicalView/Core/LVSupport.h
    M llvm/include/llvm/DebugInfo/LogicalView/LVReaderHandler.h
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVBinaryReader.h
    A llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M llvm/lib/DebugInfo/LogicalView/CMakeLists.txt
    M llvm/lib/DebugInfo/LogicalView/Core/LVElement.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVLocation.cpp
    M llvm/lib/DebugInfo/LogicalView/Core/LVReader.cpp
    M llvm/lib/DebugInfo/LogicalView/LVReaderHandler.cpp
    A llvm/lib/DebugInfo/LogicalView/Readers/LVIRReader.cpp
    M llvm/lib/Transforms/Utils/DebugSSAUpdater.cpp
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-compare-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-print-basic-details.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/01-ir-select-logical-elements.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/02-ir-logical-lines.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/03-ir-incorrect-lexical-scope-typedef.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/04-ir-missing-nested-enumerators.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/05-ir-incorrect-lexical-scope-variable.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/06-ir-full-logical-view.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/07-ir-debug-formats.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/08-ir-multiple-compile-units.test
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-1.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-2.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit-3.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/compile-unit.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/hello-world-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-43860-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-44884-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/pr-46466-clang.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang-intrinsics.ll
    A llvm/test/tools/llvm-debuginfo-analyzer/IR/Inputs/test-clang.ll
    M llvm/tools/llvm-debuginfo-analyzer/CMakeLists.txt
    M llvm/unittests/DebugInfo/LogicalView/CMakeLists.txt
    A llvm/unittests/DebugInfo/LogicalView/IRReaderTest.cpp
    M llvm/unittests/DebugInfo/LogicalView/Inputs/README.md
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.bc
    A llvm/unittests/DebugInfo/LogicalView/Inputs/test-clang.ll

  Log Message:
  -----------
  [llvm-debuginfo-analyzer] Add support for LLVM IR format. (#202120)

llvm-debuginfo-analyzer is a command line tool that processes debug
info contained in a binary file and produces a debug information
format agnostic “Logical View”, which is a high-level semantic
representation of the debug info, independent of the low-level format.

Add support for the LLVM IR format and be able to generate logical
views. Both textual representation (.ll) and bitcode (.bc) formats
are supported.

This relands https://github.com/llvm/llvm-project/pull/135440,
which was:
reverted in: https://github.com/llvm/llvm-project/pull/199890
relanded in: https://github.com/llvm/llvm-project/pull/200603
reverted in: https://github.com/llvm/llvm-project/pull/201019

It includes the fixes for the buildbots problems.


  Commit: 4a11eb33c70af70bbb5942bf644b6af64386970a
      https://github.com/llvm/llvm-project/commit/4a11eb33c70af70bbb5942bf644b6af64386970a
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/CallableTraitsHelper.h

  Log Message:
  -----------
  [orc-rt] Drop redundant 'public' base access specifiers. NFC. (#206883)


  Commit: 2301475676b208c555273e7c1ac5d4470d5ee70e
      https://github.com/llvm/llvm-project/commit/2301475676b208c555273e7c1ac5d4470d5ee70e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    R flang/test/Lower/OpenACC/acc-declare-managed-no-global-ctor.f90

  Log Message:
  -----------
  Revert "[flang][openacc] Skip implicit global declare constructor in managed mode" (#206884)

Reverts llvm/llvm-project#206610 as this might not be the right approach


  Commit: bae9ddca423145baf0c35e31898b723aa273f85c
      https://github.com/llvm/llvm-project/commit/bae9ddca423145baf0c35e31898b723aa273f85c
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/unittests/Format/FormatTestComments.cpp

  Log Message:
  -----------
  [clang-format] Fix a bug in recognizing trailing comments (#206393)

Test cases are borrowed/adapted from #196760.

Fixes #196663


  Commit: 4bab60f2c63a3df35dd892a0f42666bdb7527be7
      https://github.com/llvm/llvm-project/commit/4bab60f2c63a3df35dd892a0f42666bdb7527be7
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/CallableTraitsHelper.h
    M orc-rt/include/orc-rt/Error.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/unittests/CallableTraitsHelperTest.cpp

  Log Message:
  -----------
  [orc-rt] CallableTraitsHelper - record call operator's const-qualifier (#206889)

Adds a leading `bool IsConst` template parameter to
CallableTraitsHelper's impl-class template argument to record the
const-qualifier on the callable's function type.

Existing specializations are updated to report their const qualifiers,
and a new specialization handles `RetT(ArgTs...) const`.

CallableArgInfo is updated to expose the captured bool as `static
constexpr bool is_const`.

Existing impls that do not consume the new parameter are adapted via
pass-through wrappers (ErrorHandlerTraitsImplAdapter,
ErrorWrapImplAdapter, WFHandlerTraitsImplAdapter) that discard the
leading bool.


  Commit: 67f027c83a84fe3e6e1d27267823b991e4256047
      https://github.com/llvm/llvm-project/commit/67f027c83a84fe3e6e1d27267823b991e4256047
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/TargetParser/AArch64TargetParser.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp

  Log Message:
  -----------
  [TargetParser][AArch64][NFC] Use StringTable (#206698)

Store strings in a StringTable instead of referencing them via pointers.
This permits some data structures to be stored in .rodata instead of
.data.rel.ro, as they no longer require relocations. In particular this
affects the 16 kiB AArch64::Extensions.


  Commit: 3d8fafbc863fe8702d589f822b4c121765371595
      https://github.com/llvm/llvm-project/commit/3d8fafbc863fe8702d589f822b4c121765371595
  Author: adalal-2441 <adalal at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InsertX87Wait.cpp
    A llvm/test/CodeGen/X86/x87-insert-wait.mir

  Log Message:
  -----------
  [X86] Insert WAIT before fnstenv/fnsave and skip meta-instructions (#204108)

fnstenv/fnsave (FSTENVm/FSAVEm) are non-waiting, so they don't
synchronize a pending FP exception; the WAIT pass shouldn't skip the
WAIT before them.

Also skip meta-instructions when finding the next op so WAIT placement
doesn't depend on -g.

Added a new X87ControlKind enum class to classify x87 control
instructions in the pass, replacing the existing ad-hoc switches.

Found via @jlebar's X86 LLVM bug-hunt / FuzzX effort:

https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/047-x87-insertwait-too-eager-skip

cc @jlebar


  Commit: 8461c3bd07b77c077812c6483f8a7f41ab25805f
      https://github.com/llvm/llvm-project/commit/8461c3bd07b77c077812c6483f8a7f41ab25805f
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/CallableTraitsHelper.h
    M orc-rt/include/orc-rt/Error.h
    M orc-rt/include/orc-rt/WrapperFunction.h
    M orc-rt/unittests/CallableTraitsHelperTest.cpp

  Log Message:
  -----------
  [orc-rt] CallableTraitsHelper - record operator()'s noexcept-specifier (#206891)

Adds a `bool IsNoexcept` template parameter to CallableTraitsHelper's
impl-class template argument (after the existing IsConst from
4bab60f2c63). It records the noexcept-specification on the callable's
function type.

Specializations are added for noexcept-qualified forms. Existing
specializations propagate `IsNoexcept = false`. CallableArgInfoImpl
exposes the captured bool as `static constexpr bool is_noexcept`.

Existing pass-through adapters (ErrorHandlerTraitsImplAdapter,
ErrorWrapImplAdapter, WFHandlerTraitsImplAdapter) are updated to accept
and discard the additional argument.


  Commit: 0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22
      https://github.com/llvm/llvm-project/commit/0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M bolt/lib/Core/MCPlusBuilder.cpp
    M llvm/include/llvm/MC/MCRegisterInfo.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
    M llvm/lib/Target/AVR/AsmParser/AVRAsmParser.cpp
    M llvm/lib/Target/BPF/BPFMIChecking.cpp
    M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/MSP430/AsmParser/MSP430AsmParser.cpp
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp
    M llvm/lib/Target/X86/AsmParser/X86Operand.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/test/TableGen/AsmPredicateCombiningRISCV.td
    M llvm/test/TableGen/CompressInstEmitter/suboperands.td
    M llvm/test/TableGen/RegClassByHwModeCompressPat.td
    M llvm/test/TableGen/RegisterClassCopyCost.td
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [MC][TableGen] Make MCRegisterClasses relocation-free (#206753)

MCRegisterClasses currently store pointers to the register list and the
bit set. Store these three types together in one data structure and use
relative offsets to avoid these relocations and move the large
MCRegisterClasses array from .data.rel.ro into .data. This reduces the
amount of data that needs to be relocated by 86 KB.

This has two side effects: first, MCRegisterClass is not copyable and
the few uses that did copy were changed. Second, the MCRegisterClasses
array is no longer easily accessible as a global (well, it *technically*
is, but that requires the type of the entire storage struct, which I
don't want to expose). Therefore, these accesses need to go through a
function; which shouldn't be too costly and be inlined in an LTO build.


  Commit: 25d46e474debb04c55127e77fde8c99b61f2c065
      https://github.com/llvm/llvm-project/commit/25d46e474debb04c55127e77fde8c99b61f2c065
  Author: Alok Kumar Sharma <AlokKumar.Sharma at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MergeFunctions.cpp
    A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-alias.ll
    A llvm/test/Transforms/MergeFunc/merge-functions-entry-count-no-alias.ll

  Log Message:
  -----------
  [MergeFunctions] Fix build failure in PR #202218 (#206651)

Address the build issue that caused the original change to be reverted
and reapply the fix.


  Commit: 030e141fa93aa13420f02fbcdc725a3ec604af19
      https://github.com/llvm/llvm-project/commit/030e141fa93aa13420f02fbcdc725a3ec604af19
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/unittests/CallableTraitsHelperTest.cpp

  Log Message:
  -----------
  [orc-rt] Silence an unneeded-internal-decl warning in testcase. (#206892)

Add an ODR-use of freeVoidVoidNoexcept to silence clang's
-Wunneeded-internal-declaration warning.


  Commit: ac493bb6ab3e60bbff8b2786d32a36b18c6c7391
      https://github.com/llvm/llvm-project/commit/ac493bb6ab3e60bbff8b2786d32a36b18c6c7391
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Driver/ToolChain.cpp
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h
    M llvm/lib/TargetParser/AArch64TargetParser.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/Basic/ARMTargetDefEmitter.cpp

  Log Message:
  -----------
  [TargetParser][AArch64][NFC] Reference ArchInfo via index (#206699)

This removes all relocations from CpuInfos so that the 3-4 kiB structure
can be stored in .rodata. Additionally, the ArchInfos pointer array is
replaced by an ArchInfos value array and the architecture names are
replaced by constexpr references.


  Commit: 3ad796ad06132e49d2a9c6d9deddf1604b3b575a
      https://github.com/llvm/llvm-project/commit/3ad796ad06132e49d2a9c6d9deddf1604b3b575a
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/unittests/ErrorExceptionInteropTest.cpp

  Log Message:
  -----------
  [orc-rt] Fix unused function warning in testcase. (#206894)

Fixes -Wunused-function warning on peekAtErrorMessage by only defining
that function when ORC_RT_ENABLE_EXCEPTIONS has been turned on.


  Commit: 4c27981352753962ffeba8ba9a6d2d49b70a240b
      https://github.com/llvm/llvm-project/commit/4c27981352753962ffeba8ba9a6d2d49b70a240b
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-06-30 (Tue, 30 Jun 2026)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake

  Log Message:
  -----------
  [compiler-rt] Support triples that start with thumb*- (#206848)

thumb*- can be used as an alias for arm*- (implying -mthumb).


  Commit: 2b07bbf52cd734b81dd1d8529dc42c76359d5283
      https://github.com/llvm/llvm-project/commit/2b07bbf52cd734b81dd1d8529dc42c76359d5283
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/include/__expected/expected.h
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.T2.pass.cpp
    M libcxx/test/std/utilities/expected/expected.expected/equality/equality.unexpected.pass.cpp
    M libcxx/test/support/test_comparisons.h

  Log Message:
  -----------
  [libc++] Resolve LWG4366: Heterogeneous comparison of `expected` may be ill-formed  (#185342)

Resolves #171362
- Implement proposed resolution
- Refactor `operator==` code to be more in line with the standard as the
current way was making an explicit `bool()` conversion in the `x.meow()
== y.meow()` cases
- Add test cases
- Update issues paper

---------

Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: 58203500b5bd1628401c1a103eb264b7d78ea3bb
      https://github.com/llvm/llvm-project/commit/58203500b5bd1628401c1a103eb264b7d78ea3bb
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    R libc/include/link.h.def
    M libc/include/link.yaml
    R libc/include/string.h.def
    M libc/include/string.yaml
    R libc/include/sys/ucontext.h.def
    M libc/include/sys/ucontext.yaml

  Log Message:
  -----------
  [libc] Migrate header .def files to public_includes (#206727)

Now that public_includes is supported in header yaml files, we don't
need custom .h.def templates just to include another header.

This patch removes link.h.def, string.h.def, and ucontext.h.def and
moves their inclusions directly into
their yaml definitions:
- link.yaml: add elf.h
- string.yaml: add strings.h
- sys/ucontext.yaml: add ucontext.h

Assisted by Gemini.


  Commit: d1bd8d3f21bfd42edbaa78662a2ca47c65fa73b4
      https://github.com/llvm/llvm-project/commit/d1bd8d3f21bfd42edbaa78662a2ca47c65fa73b4
  Author: Daniel Cederman <cederman at gaisler.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/Sparc.td

  Log Message:
  -----------
  [Sparc] Enable CASA for the leon3 CPU target (#205810)

This matches the leon3 CPU target in GCC.


  Commit: 9e0aa61f75299f91b9e063ba46d2e33aa164cf7a
      https://github.com/llvm/llvm-project/commit/9e0aa61f75299f91b9e063ba46d2e33aa164cf7a
  Author: Timur Golubovich <timur.golubovich at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    A llvm/test/Transforms/IndVarSimplify/X86/fold-correlated-iv-comparisons.ll
    R llvm/test/Transforms/LoopStrengthReduce/X86/lsr-icmpzero-no-inttoptr.ll

  Log Message:
  -----------
  [SCEV] Prove implied conditions via matching SCEV differences (#201839)

Add isImpliedCondOperandsViaMatchingDiff to fold equality comparisons
when getMinusSCEV(LHS, RHS) == getMinusSCEV(FoundLHS, FoundRHS).
This handles correlated IV comparisons in loops with multiple pointer
IVs sharing the same stride.


  Commit: 429afacb27aaa0ce66920e9cbab47028d182bd8b
      https://github.com/llvm/llvm-project/commit/429afacb27aaa0ce66920e9cbab47028d182bd8b
  Author: Pan Tao <tao.pan at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-stack-protector-windows.ll
    M llvm/test/CodeGen/AArch64/arm64ec-indirect-call.ll
    M llvm/test/CodeGen/AArch64/mingw-refptr.ll
    M llvm/test/CodeGen/AArch64/stack-protector-target.ll

  Log Message:
  -----------
  [aarch64] Mix the frame pointer with the stack cookie when protecting the stack (#197346)

For MSVC-compatible targets on AArch64, mix the stack cookie with the
frame pointer (FP) to create a position-dependent guard value. This
strengthens protection against attacks where the attacker knows or can
predict the cookie value, as they would also need to know the exact
frame pointer location.

Implementation details:
- Uses SUB (FP - Cookie) instead of XOR like X86 because:
  * SUB maintains the existing AArch64 instruction selection patterns
  * SUB provides equivalent security properties (bijective mixing)
  * The result is still unpredictable without knowing both inputs
- The same SUB operation is performed in both prologue (to store the
  mixed value) and epilogue (to unmix and verify the cookie)
- Forces frame pointer usage for functions with stack guards on MSVCRT
  to ensure consistent addressing with dynamic stack allocation

This matches the MSVC behavior and strengthens stack protection on
AArch64 Windows platforms.

Fixes #156573.


  Commit: f92c1fe56c4238396af9835436be49c6aecd975e
      https://github.com/llvm/llvm-project/commit/f92c1fe56c4238396af9835436be49c6aecd975e
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.cpp
    M llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXInstPrinter.h
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/st_async_mbarrier.ll
    A llvm/test/CodeGen/NVPTX/st_async_mbarrier_b128.ll
    A llvm/test/CodeGen/NVPTX/st_async_release.ll
    A llvm/test/CodeGen/NVPTX/st_async_release_multimem.ll

  Log Message:
  -----------
  [NVPTX] Add asynchronous store intrinsics (#200768)

Adds the following intrinsics for asynchronous store operations:
- `st.async`
- `st.async.sys`
- `st.async.gpu`
- `st.async.mmio.sys`

Tests verified through `ptxas-13.3`.


  Commit: 09d944e919564eaaa2f9cb956c44e1d69549a182
      https://github.com/llvm/llvm-project/commit/09d944e919564eaaa2f9cb956c44e1d69549a182
  Author: Kito Cheng <kito.cheng at sifive.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/test/X86/icf-safe-icp.test
    M bolt/test/X86/icf-safe-test1.test
    M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test

  Log Message:
  -----------
  [BOLT] Make ICF bucket iteration order deterministic for single-threaded mode (#200706)

`CongruentBuckets` is an unordered_map, so iterating it directly
produces non-deterministic folding order across different build
environments. Sort buckets by the binary address of the representative
function before iterating to guarantee a stable debug output order.

That order isn't matter for the output binary, but it cause randomly
different debug output across different build environments, which makes
it hard to write stable tests for ICF.

Also the debug output of multi-threaded ICF is already non-deterministic
even we sort that by address, so we only try to stabilize the
single-threaded ICF output.

Update the icf-safe tests to reflect the new deterministic ordering.

Assisted-by: Sonnet 4.6


  Commit: aa47e59245e24edb6d0c7d5f91b3a1c5a7bb35f1
      https://github.com/llvm/llvm-project/commit/aa47e59245e24edb6d0c7d5f91b3a1c5a7bb35f1
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/win-fp128.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/X86/X86CallingConv.td
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/X86/fp128-libcalls-strict.ll
    M llvm/test/CodeGen/X86/fp128-libcalls.ll
    A llvm/test/CodeGen/X86/fp128-return-calling-conv.ll
    M llvm/test/CodeGen/X86/i128-fp128-abi.ll

  Log Message:
  -----------
  [X86][Windows] Return `fp128` on the stack (#204887)

Subsumes https://github.com/llvm/llvm-project/pull/194214

For x86-64 Windows targets, LLVM currently returns `fp128` in xmm0. This
does match `i128` (both Clang and GCC return `__int128` in xmm0) but
disagrees with GCC's behavior of returning `__float128` on the stack.

https://gcc.godbolt.org/z/xnWeGqcbW

Microsoft does not specify a `__float128` ABI so any decision is purely
an extension. The Windows x64 calling convention [1] does say that user-
defined types that do not fit in a register should be returned
indirectly, so the GCC behavior seems like a reasonable interpretation
of this rule.

Thus, change `fp128` to return on the stack for Windows targets. This is
done for both MinGW and MSVC targets; if official guidelines are ever
published, this can be revisited.

The change is made in LLVM (via sret demotion of f128), but also
explicitly in `clang`. Frontends should emit the `sret` explicitly, if
only for debug info, return value optimization, etc.

Relates to the pass ABI change in 5ee1c0b71485 ("[windows] Always pass
fp128 arguments indirectly").

[1]:
https://learn.microsoft.com/en-us/cpp/build/x64-calling-convention?view=msvc-170#return-values


  Commit: abe984ce251f5a7d673ef6ab1fb00f8f367dcae1
      https://github.com/llvm/llvm-project/commit/abe984ce251f5a7d673ef6ab1fb00f8f367dcae1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/Target/Target.td
    M llvm/lib/Target/ARM/ARMArchitectures.td
    M llvm/lib/Target/ARM/ARMFeatures.td
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/test/Transforms/Inline/ARM/inline-target-attr.ll
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [ARM] Specify inlining behavior in TableGen (#205763)

Move the ARM inlining feature whitelist into the SubtargetFeature
definitions. For this purpose, add a new InlineMustMatch inlining
behavior, for features where no differences between caller/callee are
allowed.

Additionally, mark all the tuning features as InlineIgnore and fix some
cases that were incorrectly omitted from the feature whitelist.

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


  Commit: 7e31f2cffd397ae65a91b0fb2bb7b2097e8e8a4b
      https://github.com/llvm/llvm-project/commit/7e31f2cffd397ae65a91b0fb2bb7b2097e8e8a4b
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    A clang/include/clang/AST/SubobjectVisitor.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaSYCL.cpp
    A clang/test/SemaSYCL/sycl-kernel-param-restrictions.cpp
    M clang/unittests/AST/CMakeLists.txt
    A clang/unittests/AST/SubobjectVisitorTest.cpp

  Log Message:
  -----------
  [clang][SYCL] Diagnose reference kernel parameters (#192957)

Per SYCL 2020 spec: Reference types are not trivially copyable, so they
may not be passed as kernel parameters.
This PR adds infrastructure for kernel object visiting and implements
diagnostics for reference kernel parameters.
The infrastructure will be also used for other kernel parameter
restrictions and functional code transformations that will be done in
separate PRs.

Assisted by: claude in unit test preparation

---------

Co-authored-by: Tom Honermann <tom at honermann.net>


  Commit: 9f7dc772a32ad98d3bfe371021535d5863d87156
      https://github.com/llvm/llvm-project/commit/9f7dc772a32ad98d3bfe371021535d5863d87156
  Author: Daniel Cederman <cederman at gaisler.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcAsmPrinter.cpp
    M llvm/test/CodeGen/SPARC/tn0011.ll

  Log Message:
  -----------
  [Sparc] Apply the GRLIB-TN-0011 errata workaround to ldstub (#205781)

Add ldstub to the list of atomic instruction that needs to be aligned.


  Commit: 7f73dd43b1425034a1902d56820327a12fac6940
      https://github.com/llvm/llvm-project/commit/7f73dd43b1425034a1902d56820327a12fac6940
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/FrameIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp

  Log Message:
  -----------
  [Dexter] Add at_frame_idx to check values in frames above current (#203505)

This patch adds a new attribute for !and nodes, `at_frame_idx`, which
matches against frames above its parent node; for example, in the
script:

```
!where {function: foo}:
  !where {function: bar}:
    !and {at_frame_idx: 1}:
      !value x: 0
```

The `!value x` node checks the value of 'x' in 'foo' while the debugger
is inside 'bar'. Use of this attribute comes with some restrictions: a
!where node can never be nested under a !and{at_frame_idx} node, and
neither can another !and{at_frame_idx} node.


  Commit: 400e4be559e52ee6b24c17d4aa41e8c1edfafddc
      https://github.com/llvm/llvm-project/commit/400e4be559e52ee6b24c17d4aa41e8c1edfafddc
  Author: Yaxing Cai <caiyaxing666 at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
    M llvm/test/ExecutionEngine/JITLink/x86-64/ELF_got_plt_optimizations.s
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_gotpcrelx_no_relax.s

  Log Message:
  -----------
  [JITLink][x86-64] Fix GOTPCRELX call/jmp relaxation to use PC-relative fixup (#190179)

The GOTPCRELX optimization in `optimizeGOTAndStubAccesses()` relaxes
`call *foo at GOTPCREL(%rip)` → `addr32 call foo` and `jmp
*foo at GOTPCREL(%rip)` → `jmp foo; nop`,
but sets the edge kind to `Pointer32` (absolute). Since `e8`/`e9` are
PC-relative instructions,
`applyFixup` writes the absolute address instead of the displacement —
producing a garbage target
and SIGSEGV when JIT code is far from the callee (e.g., non-PIE
executable with an arena allocator).

**Fix:**
- Guard: `TargetInRangeForImmU32` → `DisplacementInRangeForImmS32`
(displacement must fit in signed 32-bit, not absolute address in
unsigned 32-bit)
- Edge kind: `Pointer32` → `BranchPCRel32` (so `applyFixup` writes
`Target - (Fixup + 4) + Addend`)

**Tests:**
- Updated `ELF_got_plt_optimizations.s` to validate PC-relative
displacement via `next_pc()` instead of raw absolute address. Also fixed
the jmp test which was incorrectly checking `test_call_gotpcrelx`
instead of `test_jmp_gotpcrelx`.
- Added `ELF_gotpcrelx_no_relax.s`: regression test with slab at
`0x7fff00000000` and extern at `0x00401000` — verifies relaxation is
correctly skipped when displacement is out of int32 range.

The `mov` → `lea` path (using `Delta32`) is unaffected and was already
correct.

cc: @tqchen

Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>


  Commit: f5009119ced0973a0f0ffcf068c64e9405699d21
      https://github.com/llvm/llvm-project/commit/f5009119ced0973a0f0ffcf068c64e9405699d21
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitCnts] Remove VMemTypes (#206440)

This can be considered a RFC. I'd personally like to get rid of
VMEMTypes but I don't know if anyone feels strongly that they should be kept.

My motivation for removing VMemTypes is simple: They are just a repeat
of VMEM events, just under a different name, and messier (defined as a
basic enum but actually stored as a bitmask later). It's just confusing.

This patch eliminates the need for them by:

- Adding a new entrypoint in AMDGPUHWEvents to get the basic set of
VMEM events issued by a VMEM Instruction.
- Set BVH/SAMPLER events irrespective of whether the HW can track them.
These events exist anyway, it should be up to InsertWaitCnt to deal with
them
properly (which is easy, only `counterOutOfOrder` needed work).
- Tracking an additional set of per-VGPR "PendingEvents" which is
set using the "basic set of VMEM events" and cleared as needed.

I believe this is worth it because it streamlines the implementation
of `SIInsertWaitCnts` and eliminates a bit of code duplication
along the way.


  Commit: b0ab92a214fb488b03b8c3cb394bd41909e495e5
      https://github.com/llvm/llvm-project/commit/b0ab92a214fb488b03b8c3cb394bd41909e495e5
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/docs/resources/test.md

  Log Message:
  -----------
  [lldb][docs] Document how to test specific layers (#205581)

This is motivated by the fact that we have the ability to test almost
any component of the debug session on its own, but it's hard to find
those tests.

If we put AI aside, you can't look for "test that lldb doesn't fault
when qProcessInfo
contains foo". Even though that is a thing we can test.

So in this change I'm adding a section to the testing docs with some
starting points that
people can search for.

It will be incomplete but we can add to it over time.

I will need someone to write the DAP part in a follow up PR, as I'm not
familiar with the layers there.


  Commit: 37387f4f69faf0ecd9855737de0f65e5c9039139
      https://github.com/llvm/llvm-project/commit/37387f4f69faf0ecd9855737de0f65e5c9039139
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/AST/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7e31f2cffd39 (#206922)


  Commit: 07b9a96048d2149f338cff83bf73a9fb56d16eea
      https://github.com/llvm/llvm-project/commit/07b9a96048d2149f338cff83bf73a9fb56d16eea
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/DebugInfo/LogicalView/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/DebugInfo/LogicalView/BUILD.gn

  Log Message:
  -----------
  [gn build] Port e7290b1f1815 (#206923)


  Commit: 713d95e8f30ddca93c0eb737a0f6b2ad0f492a2c
      https://github.com/llvm/llvm-project/commit/713d95e8f30ddca93c0eb737a0f6b2ad0f492a2c
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/ConvertToReplicatedConstantCompositePass.cpp
    M mlir/test/Dialect/SPIRV/Transforms/replicated-const-composites.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Fix crash on empty composite in replicated constants pass (#206647)


  Commit: bb033c19a4fec8335ba48d5e04251f4bafefcdf5
      https://github.com/llvm/llvm-project/commit/bb033c19a4fec8335ba48d5e04251f4bafefcdf5
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M .ci/green-dragon/lldb-windows.groovy

  Log Message:
  -----------
  [lldb][Windows] reconfigure project in the correct directory (#206781)

Currently, the second reconfigure fails with `CMake Error: The source
directory "C:/workspace/llvm-project" does not appear to contain
CMakeLists.txt.`.

This patch copies the full cmake invocation to properly reconfigure the
project with `LLDB_TEST_USE_LLDB_SERVER=1`.

This is a follow up to https://github.com/llvm/llvm-project/pull/206511.


  Commit: 6e4eebc91c109e81ce4f5dc3df45fb04ec3b6ba4
      https://github.com/llvm/llvm-project/commit/6e4eebc91c109e81ce4f5dc3df45fb04ec3b6ba4
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp

  Log Message:
  -----------
  [lldb] Fix compiler warning in LibStdcpp.cpp (#206932)

This triggered -Wformat warnings. Use the non-printf version to avoid
this issue.


  Commit: f9ddebc5c6f0a85aa7c98cc36d6bb96d2068fef6
      https://github.com/llvm/llvm-project/commit/f9ddebc5c6f0a85aa7c98cc36d6bb96d2068fef6
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_penalties.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_perfect.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/step-node-expected-values.test

  Log Message:
  -----------
  [Dexter] Add !step node for testing stepping behaviour (#203844)

This patch adds a node for generating metrics based on lines stepped on.
The new node has 3 versions: !step exactly, !step order, and !step
never, which check an expected list of line numbers against the actual
line numbers seen while the expect is active. "exactly" and "order" both
check that the list of line numbers appear in-order in the debugger
while the expect is in scope; "exactly" treats any seen line numbers
outside of this list as incorrect, while "order" ignores them. "never"
does not have an order, but treats any line numbers from the list that
are seen in the debugger as being incorrect.


  Commit: a605942cc44ce9f06ae162aa90c1c941a5a34569
      https://github.com/llvm/llvm-project/commit/a605942cc44ce9f06ae162aa90c1c941a5a34569
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/DirectX/strip-debug-info.ll

  Log Message:
  -----------
  Reapply "[DirectX] Test stripping debug info for DirectX" (#206795)

Reapply #206261 with changes: use `llvm-dis` instead of `dxil-dis` and
test only DXIL part.


  Commit: f40650e4313ee1994905381fc335b060d58e2bc4
      https://github.com/llvm/llvm-project/commit/f40650e4313ee1994905381fc335b060d58e2bc4
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/move_only_function.h
    M orc-rt/unittests/move_only_function-test.cpp

  Log Message:
  -----------
  [orc-rt] Rewrite move_only_function in terms of CallableTraitsHelper. (#206906)

Uses CallableTraitsHelper to decompose the signature template argument
into (IsConst, IsNoexcept, RetT, ArgTs...), collapsing the previous
per-signature-shape partial specializations of move_only_function into a
two-tier type-erasure hierarchy (Callable / CallableImpl + Storage /
InvocableStorage) driven by CallableTraitsHelper.

User-visible effect: move_only_function now supports the four signature
shapes matching std::move_only_function's C++23 semantics, and
operator()'s const and noexcept qualifiers track the signature:

    R(A...)                - mutable, may throw
    R(A...) const          - const-callable, may throw
    R(A...) noexcept       - mutable, guaranteed nothrow
    R(A...) const noexcept - const-callable, guaranteed nothrow

Two ill-formed combinations are rejected at compile time:

- A throwing callable passed to a noexcept-qualified move_only_function
fails a static_assert on nothrow-invocability in CallableImpl's
constructor.
- A mutable callable passed to a const-qualified move_only_function
fails to compile because the const-qualified virtual call() body cannot
invoke the stored callable through a const path.

Adds tests exercising the new signature shapes at runtime and static
checks for the invocability and noexcept-propagation matrices across all
four combinations.


  Commit: 6a909d68627ff6027777186699ff8fd54ae6e668
      https://github.com/llvm/llvm-project/commit/6a909d68627ff6027777186699ff8fd54ae6e668
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/src/CMakeLists.txt
    M libcxxabi/src/CMakeLists.txt
    M libunwind/src/CMakeLists.txt

  Log Message:
  -----------
  [runtimes][NFC] Re-indent shared library blocks (#205523)

Re-indent the shared library target blocks that were wrapped in
if(<runtime>_SUPPORTS_SHARED_LIBRARY) in the previous commit. This is a
whitespace-only change split out from the functional change to keep that
diff minimal and reviewable.

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


  Commit: 633344de1ba723503ae3489933d1f318c0bb4473
      https://github.com/llvm/llvm-project/commit/633344de1ba723503ae3489933d1f318c0bb4473
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/Bufferization/Transforms/test-one-shot-module-bufferize.mlir
    M mlir/test/lib/Dialect/Bufferization/TestOneShotModuleBufferize.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td

  Log Message:
  -----------
  [mlir][bufferization] Introduce castBufferTypeFn hook and API (#205080)

This PR is the second part of the work that aims to allow customizations
in resolving mismatching buffer types.
(see 0b1fe74f079fd330e4d4d85ce33b7f5702da1be7 for part one)

Add a new bufferization hook that lets downstream bufferization
implementations materialize an operation to resolve a pre-reconciled
buffer type mismatch.

The hook + API is used as a fallback mechanism in several upstream
operations, as well as in the general bufferization infrastructure.
Semantically, this is a "cast" creation akin to `createAlloc()` and
`createMemCpy()` but for the cases where a memref::CastOp-like operation
is acceptable.

A valid value is returned whenever a cast-like operation is created,
failure signifies a failed attempt to materialize a cast (in theory,
there could be a fall back to alloc + copy either externally, but this
right now is not considered in most contexts). By default, a
`memref.cast` operation is created that casts a bufferized value to a
reconciled type.


  Commit: c541bbfa346d3da09154f3268079dca841ee9d72
      https://github.com/llvm/llvm-project/commit/c541bbfa346d3da09154f3268079dca841ee9d72
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lld/COFF/Writer.cpp
    A lld/test/COFF/bss-shared-no-merge.test

  Log Message:
  -----------
  [LLD][COFF] Prevent merging .bss into shared sections (#202817)

This matches the behavior with MSVC linker. Generally the idea is that
.bss section may contain security cookies that shouldn't be shared among
processes.


  Commit: f2fd0d648987f0187a7e57bca17bf10ef2d289d8
      https://github.com/llvm/llvm-project/commit/f2fd0d648987f0187a7e57bca17bf10ef2d289d8
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
    M mlir/test/Target/SPIRV/gl-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add spirv.GL.Step and spirv.GL.SmoothStep ops (#206037)


  Commit: b8e5ea1ab3e206d861b10d124b77e1026c2a2eb4
      https://github.com/llvm/llvm-project/commit/b8e5ea1ab3e206d861b10d124b77e1026c2a2eb4
  Author: Jan Schultke <me at eisenwave.net>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    M clang/test/Lexer/char-escapes-delimited.c
    M clang/test/Lexer/unicode.c
    M clang/test/Preprocessor/ucn-pp-identifier.c
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  [clang] Improve diagnostics for invalid named-universal-characters (#206326)

1. Fix typo in `note_invalid_ucn_name_loose_matching` message.
2. Fix unprintable characters appearing in diagnostic messages.
3. Stop offering low-value fix suggestions when illegal characters
appear in the name.


  Commit: 55adc0a74c6af2763a7d459bbcc97293ba504cea
      https://github.com/llvm/llvm-project/commit/55adc0a74c6af2763a7d459bbcc97293ba504cea
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/docs/OpenACC-extensions.md
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Parser/program-parsers.cpp
    A flang/test/Parser/acc-routine-in-interface.f90
    A flang/test/Semantics/OpenACC/acc-routine-in-interface-name-mismatch.f90
    A flang/test/Semantics/OpenACC/acc-routine-in-interface.f90

  Log Message:
  -----------
  [flang][OpenACC] Accept ROUTINE directive within an interface block (#206863)

An `!$acc routine` directive placed directly within an interface block (as an
interface-specification, e.g. preceding the interface body it names) failed to
parse and produced a misleading cascade of errors.

Accept the OpenACC ROUTINE directive as an additional interface-specification
alternative, mirroring the existing extension that allows a ROUTINE directive in
a module subprogram part / at the top level. The grammar is widened narrowly to
the ROUTINE construct only (not the whole OpenACC declarative construct). A named
directive applies to the interface body it names; name resolution already runs in
a separate pass after the interface-body symbols are created, so the 
directive-before-body ordering resolves correctly and the ROUTINE information is
attached to the named procedure's symbol.

This is documented as a Flang extension in OpenACC-extensions.md.

Assisted-by: AI


  Commit: a94b91b428ea52323152a3bac3a91500d7309d92
      https://github.com/llvm/llvm-project/commit/a94b91b428ea52323152a3bac3a91500d7309d92
  Author: Ruoyu Qiu <cabbaken at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-delta-signed-min.ll
    M llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-large-btc.ll
    M llvm/test/Analysis/DependenceAnalysis/weak-crossing-siv-overflow.ll

  Log Message:
  -----------
  [DA] Update stale weak-crossing SIV FIXMEs (NFC) (#206941)

Remove outdated FIXME comments from weak-crossing SIV tests where the
expected dependence results are now documented by the CHECK lines.

Also clarify the overflow test comment and fix the described second
access from A[3*i - 2] to A[3*i + 1].

Signed-off-by: Ruoyu Qiu <cabbaken at outlook.com>


  Commit: a5c06c0b4c7d713ef7ea63cd43554cc674dd167d
      https://github.com/llvm/llvm-project/commit/a5c06c0b4c7d713ef7ea63cd43554cc674dd167d
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/include/string
    M libcxx/test/libcxx/strings/basic.string/nonnull.verify.cpp
    A libcxx/test/std/strings/basic.string/string.modifiers/string_append/pointer_size_size.pass.cpp
    A libcxx/test/std/strings/basic.string/string.modifiers/string_assign/pointer_size_size.pass.cpp

  Log Message:
  -----------
  [libc++] Implement LWG3662 basic_string::append/assign(NTBS, pos, n) suboptimal (#206320)

Closes https://github.com/llvm/llvm-project/issues/189809

This patch implements LWG 3662 and adds the related functional and
nonnull tests.

---------

Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: ddf06be97fbf9e8b2b6894f1de87de92f67c452d
      https://github.com/llvm/llvm-project/commit/ddf06be97fbf9e8b2b6894f1de87de92f67c452d
  Author: Nikita Kornev <nikita.kornev at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.cpp
    M clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp

  Log Message:
  -----------
  [Clang] Fix clang build with GCC 7.5 (#206768)

GCC 7.5 rejects two newer C++ idioms:

- LifetimeSafety/FactsGenerator: replace ArrayRef CTAD with an explicit
ArrayRef<const Expr *> to avoid GCC 7's broken brace-init deduction.
- ScalableStaticAnalysisFramework: add explicit std::move() on
unique_ptr<Derived> returns (pre-P1825, GCC 7 won't implicitly move).

No behavior change; restores compatibility with GCC 7.5.

Co-authored-by: Garbowski, Mateusz <mateusz.garbowski at intel.com>


  Commit: c643d31a03132914b946bb1306b3a8eb926c25b1
      https://github.com/llvm/llvm-project/commit/c643d31a03132914b946bb1306b3a8eb926c25b1
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp

  Log Message:
  -----------
  [M68k] Use getM68kMCRegisterClass accessor after MCRegisterClasses became relocation-free (#206945)

Regressed by 0b413b7d0f5a, #206753


Issue:

```
  /build/source/llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp: In member function 'bool
  {anonymous}::M68kOperand::isPCIBD32() const':
  /build/source/llvm/lib/Target/M68k/AsmParser/M68kAsmParser.cpp:516:11: error:
  'M68kMCRegisterClasses' was not declared in this scope
    516 |           M68kMCRegisterClasses[M68k::XR32RegClassID].contains(MemOp.InnerReg));
        |           ^~~~~~~~~~~~~~~~~~~~~
```


  Commit: 3b44af950386e7a6df74a4a8c456d275e82c5d6a
      https://github.com/llvm/llvm-project/commit/3b44af950386e7a6df74a4a8c456d275e82c5d6a
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_step_lines.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_step_lines_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_step_lines.test

  Log Message:
  -----------
  [Dexter] Add support for writing !step values (#203845)

Following from the previous patch, this patch adds support to Dexter for
generating expected values for !step nodes. This is relatively limited:
the kind of !step which this is most well-suited to this is !step
exactly, as the !step order of ignoring extra lines is redundant (all
lines are added as expected values), and !step never can't know what
lines could have been stepped on but weren't without some extra work
(e.g. finding viable breakpoint locations in the enclosing state node).


  Commit: a7ee75a8074ab422d30d31196644564e3c271654
      https://github.com/llvm/llvm-project/commit/a7ee75a8074ab422d30d31196644564e3c271654
  Author: Harlen Batagelo <hbatagelo at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaCodeComplete.cpp
    A clang/test/CodeCompletion/GH201632.cpp

  Log Message:
  -----------
  [clang] Fix code completion crash in lambda trailing requires-clause (#206373)

Fixes #201632.

This patch fixes an assertion failure when code completion is triggered
inside an ill-formed lambda's trailing requires-clause, as in
```cpp
void f() {
  []() requires x /*invoke completion here*/
```
https://godbolt.org/z/a66s7Y5cx

When `tok::code_completion` is reached, parsing is cut off before the
end of the declarator. This leaves the lambda's call operator without a
type, thus triggering the `!isNull() && "Cannot retrieve a NULL type
pointer"` assertion when `AddOrdinaryNameResults` calls
`FunctionDecl::getReturnType()` later.

Fix by guarding the `getReturnType()` call with a null check.

Note: The crash stacktrace for the reproducer above differs slightly
from #201632. Here, parsing is cut off during the parsing of the
constraint expression. In #201632, parsing is cut off later during
actual template parsing in `Parser::ParseTemplateIdAfterTemplateName`.
Both leave the lambda without a `FunctionType`. Tests for both are
included.


  Commit: 3a674130a07af35eb36a2d98b3d385f6c0b624cd
      https://github.com/llvm/llvm-project/commit/3a674130a07af35eb36a2d98b3d385f6c0b624cd
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/HTTP/HTTPClient.cpp

  Log Message:
  -----------
  [llvm][HTTP] Assert that WinHTTP perform() is only called once (#195128)


  Commit: f83c24cfa12c758d1b169259a87b4503c1558e0c
      https://github.com/llvm/llvm-project/commit/f83c24cfa12c758d1b169259a87b4503c1558e0c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  DAG: Use poison instead of undef in WidenVector (#206940)


  Commit: 53107fb19af49724ae810bf8fb0c8356759124ed
      https://github.com/llvm/llvm-project/commit/53107fb19af49724ae810bf8fb0c8356759124ed
  Author: Martin P <3456763+pechy at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Transforms/CFGToSCF.h
    M mlir/lib/Transforms/Utils/CFGToSCF.cpp
    A mlir/test/Conversion/ControlFlowToSCF/unreachable-blocks.mlir

  Log Message:
  -----------
  [MLIR] Prevent CF to SCF transform from erasing blocks still in use (#206310)

While merging blocks, `transformToStructuredCFBranches` may try to erase
blocks that still have uses. This may happen when the block has
self-loop or when it has 1 successor, but the successor has multiple
predecessors. This probably happens only with unreachable blocks in the
function.

Note that running a DCE pass before CF to SCF transform would remove the
triggering assert in the lit test.

Fixes #206086.


  Commit: d746bcfec552523ec1fe4852e1437b9cb3c4a400
      https://github.com/llvm/llvm-project/commit/d746bcfec552523ec1fe4852e1437b9cb3c4a400
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/LoopInterchange/dependency-all-neg-eq.ll

  Log Message:
  -----------
  [LoopInterchange] Add test for direction vector of `[* > =]` (NFC) (#206958)

Add a test case with a direction vector of `[* > =]`. Interchanging the
inner two loops is legal in this case, but it is currently not applied
because the definition of the "normal" form of direction vectors is not
good.


  Commit: 3c16a8b183693e8df2e2173764e10c33c33ab06a
      https://github.com/llvm/llvm-project/commit/3c16a8b183693e8df2e2173764e10c33c33ab06a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/test/libcxx/system_reserved_names.gen.py

  Log Message:
  -----------
  [libc++] Don't #define __unused with glibc in system_reserved_names.gen.py (#206971)

Newer glibc versions use the identifier `__unused`. To run the test
successufly again disable the `__unused` check with glibc.


  Commit: 28f08a6f64a7677ee5e1af6729103cf35df366f9
      https://github.com/llvm/llvm-project/commit/28f08a6f64a7677ee5e1af6729103cf35df366f9
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/include/__locale
    M libcxx/include/module.modulemap.in
    M libcxx/include/syncstream
    M libcxx/test/std/depr/depr.cpp.headers/ccomplex.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ciso646.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdalign.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/cstdbool.verify.cpp
    M libcxx/test/std/depr/depr.cpp.headers/ctgmath.verify.cpp
    M libcxx/test/std/library/description/conventions/expos.only.func/synth_three_way.pass.cpp
    M libcxx/test/std/ranges/range.factories/range.iota.view/ctor.value.bound.pass.cpp
    M libcxx/test/std/ranges/range.factories/range.iota.view/end.pass.cpp
    M libcxx/test/std/ranges/range.factories/range.iota.view/iterator/star.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.rel/three_way.pass.cpp

  Log Message:
  -----------
  [libc++] Don't make libc++ headers system headers in the modulemap (#205509)

We currently have `[system]` attributes in the modulemap, which
automatically makes the headers inside the module system headers. This
disables warnings when running the tests, which we generally don't want.
We also already have `#pragma GCC system_header` everywhere and use
`-isystem`, so there isn't much need for the tag in the modulemap as
well.


  Commit: e16a0a30801efea7129751a4757f278a34269799
      https://github.com/llvm/llvm-project/commit/e16a0a30801efea7129751a4757f278a34269799
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Verifier/intrinsic-bad-arg-type1.ll

  Log Message:
  -----------
  [NFC][LLVM][Verifier] Eliminate redundant checks for GC intrinsics (#206890)


  Commit: b5f36b15d16e97dc4cdd04ab60a37ef4a51d1a76
      https://github.com/llvm/llvm-project/commit/b5f36b15d16e97dc4cdd04ab60a37ef4a51d1a76
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Target/RegisterFlags.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestXMLRegisterFlags.py
    M lldb/test/API/linux/aarch64/permission_overlay/TestAArch64LinuxPOE.py
    M lldb/unittests/Target/RegisterFlagsTest.cpp

  Log Message:
  -----------
  [lldb] Print register enum types only once (#204818)

Even if multiple fields reference them. I found this debugging AArch64
POE which has a register that contains 16 permission fields. All of
which use the same enum type.

Before these changes:
```
(lldb) register info por
<...>
Perm15: 0 = No Access, 1 = Read, 2 = Execute, 3 = Read, Execute, 4 = Write, 5 = Write, Read, 6 = Write, Execute, 7 = Read, Write, Execute <... 14 copies of the enum one per field...>
Perm0: 0 = No Access, 1 = Read, 2 = Execute, 3 = Read, Execute, 4 = Write, 5 = Write, Read, 6 = Write, Execute, 7 = Read, Write, Execute
```
After:
```
(lldb) register info por_el0
<...>
Perm15, Perm14, Perm13, Perm12, Perm11, Perm10, Perm9, Perm8, Perm7, Perm6, Perm5, Perm4, Perm3, Perm2, Perm1, Perm0: 0 = No Access, 1 = Read, 2 = Execute,
                                                                                                                      3 = Read, Execute, 4 = Write,
                                                                                                                      5 = Write, Read, 6 = Write, Execute,
                                                                                                                      7 = Read, Write, Execute
```
Which looks weird because we indent the enum according to the list of
fields still, but I may change that later. Anyway, this won't be a
problem for most cases where 2 or 3 fields share a type. This register
is an extreme example.

A unit test has been added and a test for POE using the existing core
file tests. They both test the same thing but the POE test is there to
show a motivating example.

Assisted by: Codex (gpt 5.5)


  Commit: 5a7be9b2a8fcd508facd360010ad940a70bde396
      https://github.com/llvm/llvm-project/commit/5a7be9b2a8fcd508facd360010ad940a70bde396
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/Verifier/vp-intrinsics-bad.ll

  Log Message:
  -----------
  [NFC][LLVM] Adopt vector overload types for vp cast intrinsics (#206548)


  Commit: 2146dab17c298b296e16c22cac64bf9ccd9f4e2f
      https://github.com/llvm/llvm-project/commit/2146dab17c298b296e16c22cac64bf9ccd9f4e2f
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp
    M mlir/test/Dialect/Affine/pipeline-data-transfer.mlir

  Log Message:
  -----------
  [mlir][affine] Add trip count check for affine-pipeline-data-transfer pass (#206755)

Fix `affine-pipeline-data-transfer` to skip loops with a constant trip
count ≤0, avoiding invalid DMA generation that leads to wrong code.


  Commit: 19f4c9913d17c7df8d78d3541943d47f67cf8073
      https://github.com/llvm/llvm-project/commit/19f4c9913d17c7df8d78d3541943d47f67cf8073
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_after_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/where_hit_count.cpp

  Log Message:
  -----------
  [Dexter] Enable after_hit_count for state nodes (#203846)

The after_hit_count attribute for a state node causes it to become
active only after it would have become active N times. This uses the
existing logic for incrementing hit counts, i.e. after the node becomes
"active", we will not add another hit count until it stops being active
for at least one step. Since state nodes with after_hit_count do not
become active before reaching the required hit count, this requires us
to keep track of an "early" set of state nodes, meaning nodes that would
be active if not for their after_hit_count.


  Commit: 5e4eb7f4c8f4ef30254fcbc9dd15c032f1039484
      https://github.com/llvm/llvm-project/commit/5e4eb7f4c8f4ef30254fcbc9dd15c032f1039484
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/RTTI.h
    M orc-rt/lib/executor/RTTI.cpp

  Log Message:
  -----------
  [orc-rt] Add missing noexcept specifiers to RTTI.h. (#206979)

Adds noexcept specifiers that were missing from some methods in RTTI.h.


  Commit: 517e48db3117985e328930ce283285cd935db631
      https://github.com/llvm/llvm-project/commit/517e48db3117985e328930ce283285cd935db631
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Utility/Log.h
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/Commands/CommandObjectLog.cpp
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Utility/Log.cpp
    M lldb/test/API/commands/log/invalid-args/TestInvalidArgsLog.py
    M lldb/tools/lldb-server/LLDBServerUtilities.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/Utility/LogTest.cpp

  Log Message:
  -----------
  [lldb] Return llvm::Error from EnableLogChannel (#206479)

Instead of a boolean plus writing errors to a stream.

llvm::Error is either success or an error message, unlike
before where we could (and did sometimes) succeed but 
also have an error message.

We can do this for DisableLogChannel too but 
I'll do that in a follow up.


  Commit: 6087989da294a85291d7e562e03714dbdd231624
      https://github.com/llvm/llvm-project/commit/6087989da294a85291d7e562e03714dbdd231624
  Author: Valery Pykhtin <valery.pykhtin at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp

  Log Message:
  -----------
  [NFC][AMDGPU] Use SIInstrFlags predicates in Disassembler (#206762)

Replace raw TSFlags accesses with SIInstrFlags predicate calls in
AMDGPUDisassembler.

Part of a series following the introduction of SIInstrFlags predicates.


  Commit: 41f826f54cb7c9e263068bfb0eb03bb90bc272fa
      https://github.com/llvm/llvm-project/commit/41f826f54cb7c9e263068bfb0eb03bb90bc272fa
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp

  Log Message:
  -----------
  [Dexter] Add condition check to state nodes (#203847)

This patch enables the ability for state nodes to check conditions,
meaning they will be active only if the condition is met.

Condition evaluation is somewhat language specific; we directly check
whether the value of the evaluated expression is "true"
(case-insensitive), which works for the languages we actually use Dexter
with, but may require generalizing in future.

We also cache conditions as they are evaluated; each time we step, we
clear all cached conditions for the current frame and any expired
frames, but we keep the cached conditions for any frames rootwards from
the current frame; this prevents us from unexpectedly exiting out of a
callee frame because of debug info not surviving a stack unwind; if the
early exit is desired, an !and{at_frame_idx, condition} under the lower
frame may suffice.


  Commit: c9ae1305b08161a626a9c7267350bd36b01f2393
      https://github.com/llvm/llvm-project/commit/c9ae1305b08161a626a9c7267350bd36b01f2393
  Author: Jan André Reuter <jan at zyten.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A offload/test/ompt/get_num_devices.c
    M openmp/runtime/src/ompt-general.cpp

  Log Message:
  -----------
  [OpenMP][OMPT] Map `ompt_get_num_devices` to runtime function (#200790)

Since 82e94a593433f36734e2d34898d353a2ecb65b8b, `ompt_get_num_devices`
was hard coded to always provide a return value of `1`, regardless of
the actual number of devices. Tools relying on this return value were
henced forced to use other approaches to estimate the number of
available devices.

To improve the situtation, map the returned value to the one provided by
`omp_get_num_devices()`. This does not resolve the issue completely
though. When OMPT is initialized through `libomptarget.so`, the
PluginManager, providing the number of devices, is not initialized until
after OMPT has been fully set up. This means that tools, trying to
retrieve the number of devices during the _initialize_ callback, will
still receive the incorrect number of devices.

Still, this is a significant improvement compared to the prior state
which provided an incorrect result for most of the program runtime.

Closes #196829

---------

Signed-off-by: Jan André Reuter <j.reuter at fz-juelich.de>


  Commit: 525f5a1ded8c66e4a3dff82ed066df8cf6a67dae
      https://github.com/llvm/llvm-project/commit/525f5a1ded8c66e4a3dff82ed066df8cf6a67dae
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    R clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc-amdgcnspirv.c
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  Revert "[HIP][AMDGPU] Use non-LTO pipeline for non-RDC in the linker wrapper (#201135)" (#206961)

I believe I fixed the immediate issues that were causing regressions
with this, and now this is leading to its own regressions in building
Pytorch apparently. This was explicitly marked as a hack, and this
should resolve an ongoing issue so we should revert this for now.

Should fix LCOMPILER-2396

This reverts commit eaff67c9838f98d221aa563c9e5d4e714d636674.


  Commit: bb6868abb8dd6f8ef7130ed2c81cf538793547c6
      https://github.com/llvm/llvm-project/commit/bb6868abb8dd6f8ef7130ed2c81cf538793547c6
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/include/__memory/temporary_buffer.h
    M libcxx/test/std/utilities/memory/temporary.buffer/overaligned.pass.cpp
    M libcxx/test/std/utilities/memory/temporary.buffer/temporary_buffer.pass.cpp

  Log Message:
  -----------
  [libc++] Fix behavior for `get_temporary_buffer` with non-positive size (#206871)

Per C++17 [depr.temporary.buffer]/4, `get_temporary_buffer` is required
to return `{nullptr, 0}` when the size argument is zero or negative.
libc++ used to correctly handle this, but the refactoring in
94e7c0b051c79fd56205f115771980f2e7812306 got this wrong.

GCC generally warns on negative size due to `-Walloc-size-larger-than=`,
which is false positive due to incomplete control flow analysis. The
warning is coupled with optimizations, and this patch make tests
suppress it instead.


  Commit: 4ddf664c6c3d6487c7fca1fd2149c0f2356db321
      https://github.com/llvm/llvm-project/commit/4ddf664c6c3d6487c7fca1fd2149c0f2356db321
  Author: Fedor Nikolaev <fridrixnm at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/lib/ABI/ABITypeMapper.cpp
    M mlir/unittests/ABI/ABITypeMapperTest.cpp

  Log Message:
  -----------
  [mlir][ABI] Fix scalable vector mapping in ABITypeMapper (#206617)

mapVectorType in ABITypeMapper incorrectly used ElementCount::getFixed
for all vector types, including scalable ones (e.g. vector<[4]xf32>).
This results in scalable vectors being mapped as fixed-size vectors,
which produces incorrect ABI lowering for SVE and RISC-V V targets.


  Commit: 8a3b7152a396073bbcaf5f2a49ef0ad2512f8b7e
      https://github.com/llvm/llvm-project/commit/8a3b7152a396073bbcaf5f2a49ef0ad2512f8b7e
  Author: Harishankar.1 <88716735+Harishankar14 at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bitcast-vector-bool.ll
    A llvm/test/CodeGen/X86/combine-fcmp-uno-self.ll

  Log Message:
  -----------
  [X86] Fold FP UNORD/ORD compare against known-non-NaN to self-compare (#206943)

Replace a known-non-NaN operand of an UNORD/ORD FP compare with the
other operand, so we emit `cmpp a, a` instead of materializing the
constant with `vxorpd`. Matches GCC.

Added combine-fcmp-uno-self.ll which covers the folding and a negative
case.

Fixes #202756


  Commit: 3b0c4575ec629192c54b2504a32dc99692e3973f
      https://github.com/llvm/llvm-project/commit/3b0c4575ec629192c54b2504a32dc99692e3973f
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libc/shared/builtins.h
    A libc/shared/builtins/divdf3.h
    M libc/src/__support/builtins/CMakeLists.txt
    A libc/src/__support/builtins/divdf3.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_builtins_test.cpp

  Log Message:
  -----------
  [libc] add shared divdf3 builtin (#205675)

Re-exposes LLVM-libc's `__divdf3` as `shared::divdf3` for reuse by
compiler-rt's builtins.

Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673
- #205674

Part of #197824


  Commit: 5f282ce09f961d33414bb6c42a57b907efcb6aec
      https://github.com/llvm/llvm-project/commit/5f282ce09f961d33414bb6c42a57b907efcb6aec
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/include/wchar.h

  Log Message:
  -----------
  [libc++] Assume that <wchar.h> in llvm-libc has const-overloads. (#206805)

See discussion in https://github.com/llvm/llvm-project/pull/201236 -
we're close to enabling wide characters in libc++ when it's built on top
of llvm-libc.

llvm-libc headers use `const wchar_t*` return type for selected wchar
functions, so we need to configure libc++ to assume that const-overloads
for these functions are available in this case, and the implementations
in libc++ wrapper around `<wchar.h>` are not needed.


  Commit: fc5798ef92ed1eddd80ef84ba739204dd0877d20
      https://github.com/llvm/llvm-project/commit/fc5798ef92ed1eddd80ef84ba739204dd0877d20
  Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/add-like-or.ll
    M llvm/test/Transforms/LoopUnroll/X86/high-cost-expansion.ll
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp

  Log Message:
  -----------
  [SCEV] Cancel common addend/multiplier in SimplifyICmpOperands (#205014)

Simplify:
```
  (K + A) pred (K + B)  ->  A pred B
  (C * A) pred (C * B)  ->  A pred B
```

when no-wrap flags allow it: NSW for signed predicates, NUW for
unsigned. Also requires C > 0 for signed in the multiplication case.

For equality comparisons, `(K + A) eq/ne (K + B)` simplifies to `A eq/ne
B` without requiring any no-wrap flags.

Alive2 proofs: https://alive2.llvm.org/ce/z/KmyqsD


  Commit: 0c69421ce1a6a756c3581f9c0a031762a5bc678f
      https://github.com/llvm/llvm-project/commit/0c69421ce1a6a756c3581f9c0a031762a5bc678f
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/__init__.py
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/dap_types.py
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/lldb_dap_testcase.py
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/session.py
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/session_helpers.py
    A lldb/packages/Python/lldbsuite/test/tools/lldb_dap/utils.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_basic.py
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_Types.py

  Log Message:
  -----------
  [lldb-dap] Add a new lldb-dap test infrastructure (#203978)

Introduce a new test infrastructure under lldbsuite/test/tools/lldb_dap
that replaces the dict-based dap_server. Initially the new and legacy
version will live side by side.
Once all tests are ported, the legacy version will be removed. The new
infrastructure has four files:
- dap_types.py: DAP protocol messages as frozen dataclasses, plus
serializer/deserializer functions to and from JSON.
- utils.py: Helper classes for launching and managing lldb-dap process
and its connection.
- session.py: DAP session layer. Owns the per-session state.
- session_helpers.py: Higher-level helpers for writing tests.

Using dataclasses for protocol types lets us catch unexpected or missing
fields at deserialization time instead of at use-site.

Adds a new environment flag, LLDBDAP_RUN_AS_SERVER, that runs the test
suite against lldb-dap in server mode for test cases with
USE_DEFAULT_DEBUG_ADAPTER=True. In the future this could be extended to
run the entire suite through a single lldb-dap server.

Migrates TestDAP_launch_basic and TestDAP_invalidatedEvent to show the
new style and Add unittests for the new primitives: DAPConnection,
EventHistory, and the DAP type (de)serializer.

Some class and function names may not be ideal. I'm open to suggestions.

More information in [discourse
page](https://discourse.llvm.org/t/rfc-making-the-lldb-dap-test-infrastructure-more-reliable/90694).


  Commit: ac9a2048fd03ad4f59c3afc4acbfb52a36bbe153
      https://github.com/llvm/llvm-project/commit/ac9a2048fd03ad4f59c3afc4acbfb52a36bbe153
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.h
    M lldb/test/API/functionalities/breakpoint/cpp/TestCPPBreakpointLocations.py

  Log Message:
  -----------
  [lldb] Recover mangled symbol names from DWARF on WebAssembly (#206832)

The Wasm "name" section stores only demangled names, so the symbols
ObjectFileWasm builds from it have no mangled name. Without one, the
symbol table indexes neither the mangled name nor the C++ base and
method name variants derived from it, so looking up a symbol by mangled
name fails and breakpoints set by a template or operator name find no
locations.

Override SymbolFileWasm::AddSymbols to copy each function's mangled name
from its DWARF DW_AT_linkage_name onto the matching symbol, matched by
file address. This is confined to the Wasm symbol file, so other targets
are unaffected.


  Commit: 0c2d34d221b74aa5a8d3afbd17aee2d0e8c1c256
      https://github.com/llvm/llvm-project/commit/0c2d34d221b74aa5a8d3afbd17aee2d0e8c1c256
  Author: Jeremy Kun <jkun at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/RegisterAllDialects.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Reland "[mlir][nvvm] extract NVVM inliner interface from LLVM dialect" with flang fixes (#206782)


  Commit: eff826e91dc7321eb38821da600dd411707e67fa
      https://github.com/llvm/llvm-project/commit/eff826e91dc7321eb38821da600dd411707e67fa
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorBroadcast.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/Vector/vector-broadcast-lowering-transforms.mlir

  Log Message:
  -----------
  [MLIR][Vector] Generalize broadcast lowering for single-element vector to nD (#206501)


  Commit: 41f1d13b2e2488f0d0c478add92d77c697e3f915
      https://github.com/llvm/llvm-project/commit/41f1d13b2e2488f0d0c478add92d77c697e3f915
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
    M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
    M clang/test/CIR/Transforms/hoist-allocas.cir

  Log Message:
  -----------
  [CIR][OpenMP] Prevent HoistAllocas pass from hoisting above OpenMP regions (#206168)

This patch modifies the HoistAllocas pass to prevent it from hoisting
allocas outside OpenMP regions, since this may break isolated from above
requirements and affect privatization semantics.

Assisted-by: Cursor / claude-4.8-opus-medium


  Commit: ad021b65fc9d2b69916d89654e8ebb544b82b17f
      https://github.com/llvm/llvm-project/commit/ad021b65fc9d2b69916d89654e8ebb544b82b17f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M .ci/green-dragon/lldb-windows.groovy

  Log Message:
  -----------
  [lldb][Windows][CI] refine timeouts (#206942)

Add/refine timeouts on each step of the lldb on Windows CI script. This
should help avoid runaway builds which timeout after 24h.


  Commit: 8fc5ad0e0308d3305dd132b00250c2f36a4c95e5
      https://github.com/llvm/llvm-project/commit/8fc5ad0e0308d3305dd132b00250c2f36a4c95e5
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-override.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-virtual-and-override.cpp

  Log Message:
  -----------
  [clang-tidy] Add AllowVirtualAndOverride to modernize-use-override (#206111)

Add an `AllowVirtualAndOverride` option to `modernize-use-override` so
codebases can keep virtual on methods that are also marked override.

AI Usage: Test cases assisted by Codex.
Closes https://github.com/llvm/llvm-project/issues/202030


  Commit: 3848a2fceab7d4682771c91d28bad9d0304e2b81
      https://github.com/llvm/llvm-project/commit/3848a2fceab7d4682771c91d28bad9d0304e2b81
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [InstCombine] Don't try to fold alignment assumptions containing adds (#207001)

The fold seems to not actually be that useful in real code.


  Commit: a675a661b86f54d45e90778362a97c1699e63442
      https://github.com/llvm/llvm-project/commit/a675a661b86f54d45e90778362a97c1699e63442
  Author: Jason Van Beusekom <jason.van-beusekom at hpe.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/allocator-registry.h
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/descriptor.cpp
    M flang-rt/lib/runtime/ISO_Fortran_binding.cpp
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/pointer.cpp
    M flang-rt/unittests/Runtime/Allocatable.cpp
    M flang-rt/unittests/Runtime/Pointer.cpp
    M flang/docs/ReleaseNotes.md
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/allocator-registry-consts.h
    M flang/include/flang/Runtime/pointer.h

  Log Message:
  -----------
  [Flang-RT] Change alignment for allocatable and pointer arrays to 64 … (#206525)

…bytes

in https://github.com/llvm/llvm-project/pull/194969 the default array
alignment was changed to 64bytes for Fortran globals. In this PR the
malloc wrapper in the flang runtime is modified to accept an alignment
argument (0 default) and for cases above 16 byte (std::max_align_t) uses
`aligned_alloc` instead of malloc.

The issue of alignment was discussed in this RFC:
https://discourse.llvm.org/t/rfc-alignment-of-global-arrays/90397/13

Assisted-by: Opus 4.6


  Commit: c248ca1a72c103ae249fc92abde5df9a247b55b3
      https://github.com/llvm/llvm-project/commit/c248ca1a72c103ae249fc92abde5df9a247b55b3
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizeImplicitBinding.cpp
    M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVSubtarget.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp

  Log Message:
  -----------
  [SPIR-V] Use llvm STLExtras range algorithms (NFC) (#206969)


  Commit: adc037c1acf0e8a2ebdcb67f56f93e42b030fdf3
      https://github.com/llvm/llvm-project/commit/adc037c1acf0e8a2ebdcb67f56f93e42b030fdf3
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVAuxDataHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp

  Log Message:
  -----------
  [SPIR-V] Use MathExtras helpers for bit arithmetic (NFC) (#206968)


  Commit: 276bcc700a4cdc3348f779a6cd2db11f50c6d076
      https://github.com/llvm/llvm-project/commit/276bcc700a4cdc3348f779a6cd2db11f50c6d076
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/auto_upgrade_intrinsics.ll
    M llvm/test/Transforms/RewriteStatepointsForGC/intrinsics-bare.ll
    M llvm/test/Verifier/intrinsic-bad-arg-type1.ll

  Log Message:
  -----------
  [LLVM] Fix signature for `gc.get.pointer.base` intrinsic (#206991)

`experimental.gc.get.pointer.base` intrinsic requires that the return
and argument type are the same pointer types. Currently this is checked
explicitly in Verifier.cpp. Instead, change the type signature of
`.gc.get.pointer.base` to use `LLVMMatchType` to enforce this
restriction.


  Commit: d8f0e0836a2e668011582c61b03d7fbded67d265
      https://github.com/llvm/llvm-project/commit/d8f0e0836a2e668011582c61b03d7fbded67d265
  Author: Valery Dmitriev <valeryd at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir

  Log Message:
  -----------
  [MCP] Add test case to demonstrate issue with spill copy elimination (NFC) (#206855)

Show the bug not preserving a caller-save register across a call.


  Commit: d15004a32ab1a747b45005cc0e480913b09275bb
      https://github.com/llvm/llvm-project/commit/d15004a32ab1a747b45005cc0e480913b09275bb
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/test/API/commands/register/register_command/TestRegisters.py

  Log Message:
  -----------
  [lldb][Windows] allow test_convenience_registers to PASS (#206956)

`RegisterCommandsTestCase.test_convenience_registers` passes when using
`LLDB_USE_LLDB_SERVER=1` since
https://github.com/llvm/llvm-project/pull/203498 was merged.

rdar://180307995


  Commit: dd8f6111ba36c3f8e9f9bee786ed627c075b5d7a
      https://github.com/llvm/llvm-project/commit/dd8f6111ba36c3f8e9f9bee786ed627c075b5d7a
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/utils/libcxx/test/features/misc.py

  Log Message:
  -----------
  [libcxx] Enable std module test on FreeBSD (#206269)

We updated the CI to 15.1, and it should work now.


  Commit: 154834916515ad8f9286a759a4f629f6efafde9a
      https://github.com/llvm/llvm-project/commit/154834916515ad8f9286a759a4f629f6efafde9a
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Driver/omp-driver-offload.f90
    A flang/test/Lower/OpenMP/target-kernel-types.f90
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOffloadUtils.h
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M offload/test/offloading/fortran/target-no-loop.f90

  Log Message:
  -----------
  [Flang][OpenMP][MLIR] Improve SPMD-No-Loop handling (#206953)

This patch modifies the handling of the
`-fopenmp-assume-teams-oversubscription` and
`-fopenmp-assume-threads-oversubscription` compiler options in Flang and
the corresponding `omp.flags` MLIR attribute to have this information
present on both host and target device MLIR modules. This is necessary
to ensure SPMD to SPMD-No-Loop kernel promotion happens uniformly and no
divergence between host and device representations of the same target
region is introduced.

The identification of the kernel type in Flang lowering is updated to
address some broken edge cases. In particular, no SPMD to SPMD-No-Loop
transformation is performed on `target parallel do [simd]` kernels. A
split `target + parallel loop` is now marked SPMD, which was a case
missed previously, and the trip count on `target teams ompx_bare`
kernels isn't host evaluated even if removing the `ompx_bare` clause
would result in a valid SPMD kernel.


  Commit: 8ba6f7b2b1e55c188999fd8a68dc18dabf7dad9f
      https://github.com/llvm/llvm-project/commit/8ba6f7b2b1e55c188999fd8a68dc18dabf7dad9f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/LogicalView/Readers/LVIRReader.h
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Port e7290b1f1815626c4461d38671d93093590bf405 (#207014)

We also need to add a header or otherwise we end up with incomplete
types for template instanation in modules builds which are used for
header parsing.


  Commit: 6bdb63f619111bcb6479beb1bfa8b48612ba1755
      https://github.com/llvm/llvm-project/commit/6bdb63f619111bcb6479beb1bfa8b48612ba1755
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Warnings.cpp

  Log Message:
  -----------
  [Clang] Try to fix data race on HasColors after #202441 (#206975)

Summary:
The clangd users call these functions in multi-thraeded contexts. The
raw_fd_stream has_colors query is cached, which was giving some data
races. Just use the process-level check for now.


  Commit: ead99b0a6a2d7df32df687d46fab5937c6551179
      https://github.com/llvm/llvm-project/commit/ead99b0a6a2d7df32df687d46fab5937c6551179
  Author: adams381 <adams at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    A clang/test/CIR/CodeGen/switch-range.c
    M clang/test/CIR/Transforms/switch.cir

  Log Message:
  -----------
  [CIR] Fix unsigned/wide switch case-range lowering (#206575)

A `switch` over an unsigned (or wider-than-32-bit) integer with a GNU
`case lo ... hi` range was miscompiled. SingleSource `pr34154.c` is the
witness: it switches on an `unsigned long long` with
`case 1000000000000000000ULL ... 9999999999999999999ULL`, and under `-fclangir`
every value took the default.

The flattening pass decided whether a range was empty with a signed compare,
`lowerBound.sgt(upperBound)` in `CIRSwitchOpFlattening`. The upper bound
`9999999999999999999` is larger than `INT64_MAX`, so as a signed value it is
negative and the range looked empty -- it was dropped and the case body left
unreachable, so control always reached the default. Behind that sat three more
width/signedness slips: the small-range size gate compared a 64-bit difference
against a 32-bit `APInt`, the expansion loop advanced a signed `APInt` cursor
that looped forever for a range ending at the type's maximum (the cursor wraps
past the top of the domain), and `condBrToRangeDestination` built the
lower-bound and range-length constants and the subtraction at a hardcoded
32-bit width, which truncates a 64-bit range.

The fix derives the switch operand's integer type once: the emptiness test uses
the operand's signedness, the range-check constants and the subtraction are
built at the operand width, and small ranges are expanded with a count-based
cursor. The `sub x, lo; ule (x - lo), (hi - lo)` range check is a
cyclic-distance test that works for both signed and unsigned switches, so the
comparison stays unsigned; the existing 32-bit signed-range lowering is
unchanged.


  Commit: 2abfdb597ee9235b754dd8d4c7ac4af3f784616c
      https://github.com/llvm/llvm-project/commit/2abfdb597ee9235b754dd8d4c7ac4af3f784616c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  [Bazel] Port 58203500b5bd1628401c1a103eb264b7d78ea3bb (#207018)


  Commit: fe5242883a815e4411519eb763a89e00b01e88ba
      https://github.com/llvm/llvm-project/commit/fe5242883a815e4411519eb763a89e00b01e88ba
  Author: adams381 <adams at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    A clang/test/CIR/CodeGen/int128-global-const.cpp
    M clang/test/CIR/IR/global.cir
    A clang/test/CIR/IR/invalid-int-attr.cir

  Log Message:
  -----------
  [CIR] Round-trip wide cir.int attributes (#206602)

printIntLiteral printed a cir.int value with APInt::getSExtValue() /
getZExtValue(), both of which assert once the value needs more than 64
bits, and parseIntLiteral parsed into int64_t/uint64_t. So a cir.int
attribute holding a value wider than 64 bits -- for example an __int128
constant like (__int128)1 << 70 -- aborted whenever the module was
printed (-emit-cir, cir-opt, round-trip verification) and could not be
parsed back. The trigger is the value magnitude, not the declared type
width: a 128-bit-typed attribute holding a small value printed fine,
which is why the existing 128-bit cir.int tests never caught it.

The fix prints through APInt::toString and parses through
AsmParser::parseOptionalInteger into an APInt fitted to the type width
(mirroring how the builtin IntegerAttr handles arbitrary widths), so a
cir.int of any width round-trips. The old int64_t/uint64_t parse path is
removed.

global.cir gains signed and unsigned 128-bit globals with values that
need more than 64 bits, plus narrow-width round-trips (255 : !u8i,
100 : !s8i), and new int128-global-const.cpp and invalid-int-attr.cir
tests cover the CIRGen path and the "integer value too large" diagnostic.


  Commit: 4d87e55d8a41872ef40079866d0527d8a1381c57
      https://github.com/llvm/llvm-project/commit/4d87e55d8a41872ef40079866d0527d8a1381c57
  Author: Jon Roelofs <jonathan_roelofs at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libunwind/src/DwarfInstructions.hpp

  Log Message:
  -----------
  [libunwind][aarch64] Fix auth on PAuth_LR'd frames (#206814)

The RA_SIGN_STATE pseudo register is a three-state enum, so it should be
encoded as one in the unwinder's representation. This fixes a bug on the
authentication path, which assumed "is signed with PC" was a subset of
"is signed".


  Commit: 0705e7be49abd0d0f8b545065700a04322e2682c
      https://github.com/llvm/llvm-project/commit/0705e7be49abd0d0f8b545065700a04322e2682c
  Author: KRM7 <Krisztian.Rugasi at hightec-rt.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-unmerge.mir

  Log Message:
  -----------
  [GlobalISel] Exclude scalar to ptr unmerges from unmerge_dead_to_trunc combiner (#206707)

This combiner is supposed to replace a G_UNMERGE_VALUES with a truncate
if only the first element is used. Vector types are excluded because the
combiner will not insert bitcasts before/after the truncate, but the
case where either the src/dst type is a scalar and the other type is a
pointer is not handled even though this case would also need bitcasts.


  Commit: bfca0091b74f0480a17a92358125d1d56fd64558
      https://github.com/llvm/llvm-project/commit/bfca0091b74f0480a17a92358125d1d56fd64558
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py

  Log Message:
  -----------
  [lldb] Tighten TestFrameProviderCircularDependency loop (#206987)

The third test in this file iterated `range(new_frame_count)` while the
other two are bounded by `range(min(new_frame_count, 3))`.

On Windows the deeper iteration hits llvm.org/pr24778 (CRT startup
symbol resolution) and fails on the bottom frame's `assertNotEqual(pc,
0)`.

This patch makes the test match the sibling tests' bound. the test still
exercises the circular-dependency invariant on the top three frames.

This fixes the test on Windows.

rdar://181125272


  Commit: a811d8f7c6e8151a7d644881f964ae822a6e3937
      https://github.com/llvm/llvm-project/commit/a811d8f7c6e8151a7d644881f964ae822a6e3937
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/PDB/Native/DbiStream.h
    M llvm/lib/DebugInfo/PDB/Native/DbiStream.cpp
    A llvm/test/tools/llvm-pdbutil/dbi-section-contribs-v2-yaml.test
    A llvm/test/tools/llvm-pdbutil/dbi-section-contribs-ver60-yaml.test
    M llvm/tools/llvm-pdbutil/PdbYaml.cpp
    M llvm/tools/llvm-pdbutil/PdbYaml.h
    M llvm/tools/llvm-pdbutil/YAMLOutputStyle.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  [llvm-pdbutil] Include DBI section contribs in YAML (#191624)

The DBI section contribs stream is required for line information in
WinDBG and VS - otherwise, you can't set line breakpoints. With this PR,
we generate and parse it in yaml2pdb/pdb2yaml.

LLVM can't generate the `SectionContrib2` (`SC2`) record, so we don't
support this in yaml2pdb. At least in my small test, MSVC didn't
generate that record either.


  Commit: 0ca111acd40fe60c424261ef3004987f66959838
      https://github.com/llvm/llvm-project/commit/0ca111acd40fe60c424261ef3004987f66959838
  Author: Valery Dmitriev <valeryd at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    R llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir

  Log Message:
  -----------
  Revert "[MCP] Add test case to demonstrate issue with spill copy elimination (NFC)" (#207025)

Reverts llvm/llvm-project#206855


  Commit: b1b9198709749eb612bfce7cfb6a3abf71483bdd
      https://github.com/llvm/llvm-project/commit/b1b9198709749eb612bfce7cfb6a3abf71483bdd
  Author: kwyatt-ext <kwyatt.external at hpe.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Semantics/bug121973.f90
    A flang/test/Semantics/stmt-func04.f90

  Log Message:
  -----------
  [flang] Implement check for statement function dummy argument names (#204417)

Implement F2023 19.4.2 conformance check for statement function dummy
argument names

Fixes: #203820 

F2023 19.4.2 permits a statement function dummy argument to share its
name with an **accessible** identifier only when that identifier is a scalar
variable.  Flang previously accepted all such clashes silently.

```fortran
subroutine s
  real :: arr(10)
  real :: ok
  f(arr) = arr + 1   ! error: arr is an array
  h(ok)  = ok + 1    ! ok: scalar variable shadowing is permitted
end subroutine
```

Assisted-by: Claude


  Commit: 6ce05ad8384d6e18f7b22c2b2f6e05678f4911d3
      https://github.com/llvm/llvm-project/commit/6ce05ad8384d6e18f7b22c2b2f6e05678f4911d3
  Author: George Burgess IV <george.burgess.iv at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/cmake/caches/AndroidNDK.cmake
    A libcxx/vendor/android/android_assertion_handler.in

  Log Message:
  -----------
  [libc++] Add Android assertion handler (#198831)

We're in the process of increasing the use of libc++ hardening in
Android. The handlers we're using deviate from the defaults in two ways:

- All handlers are `nomerge` for better postmortem crash attribution
- `_LIBCPP_VERBOSE_ABORT` is wrapped by a `NOINLINE` function to reduce
  binary size overhead slightly (on x86_64, the diff is ~9B per call
  to _LIBCPP_VERBOSE_ABORT).

This patch introduces a custom handler for Android with these properties.


  Commit: fe7e78c72071d4a654b2140be4df33de902dd6eb
      https://github.com/llvm/llvm-project/commit/fe7e78c72071d4a654b2140be4df33de902dd6eb
  Author: Daniel Rodríguez Troitiño <danielrodriguez at meta.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/VersionTuple.h
    M llvm/unittests/Support/VersionTupleTest.cpp

  Log Message:
  -----------
  [Support] Fix VersionTuple DenseMapInfo conformance (#206872)

In C++ standard library (and many other programming languages standard
libraries), if two values are equal, they should return the same hash.
This requirement is pretty common so associative containers can quickly
find values that might be equal by calculating the hash, and if that
requirement is not hold, associative containers might not work as
expected.

The documentation of `DenseMapInfo` does not specify the same
requirement, as far as I can see, but its usage on `DenseMap` relies on
it, or objects that compare equal might end up in different buckets and
will not be correctly found.

`DenseMapInfo<VersionTuple>` implementation of `getHashValue` was
implementing its own logic for hashing, but delegating to `VersionTuple`
for equality. `VersionTuple` equality partially compares its scalar
member variables, skipping some boolean member variables, but the
`getHashValue` implementation was using those boolean member variables
as well, creating different hashes for `VersionTuple` that were
considered equal. This divergence was creating problems when
`VersionTuple` was used as keys for `DenseMap` in some cases.

`VersionTuple` also implements LLVM Hashing `hash_value`, and the
implementation of that matches the equality operator, so switch
`getHashValue` to delegate to `hash_value`, the same that `isEqual`
delegates to the equality operator to keep the logic synchronized.

Includes a small unit test that verifies that when `isEqual` returns
true, the return values of `getHashValue` are the same. This test failed
before these changes.


  Commit: 9b3d68f159e7f2d4ccded135b8bde8b282cd7422
      https://github.com/llvm/llvm-project/commit/9b3d68f159e7f2d4ccded135b8bde8b282cd7422
  Author: mkovacevic99 <mkovacevic at baylibre.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/test/CodeGen/atomic-auto-type.c

  Log Message:
  -----------
  [Clang] Add FileCheck lines to atomic-auto-type codegen test (#206749)

Follow-up to #197874. The codegen test was missing FileCheck lines,
making it a no-op. Add checks that verify both __auto_type _Atomic and
_Atomic __auto_type produce correct allocas and stores.


Follow up to comment from:
https://github.com/llvm/llvm-project/pull/197874#discussion_r3496368126


  Commit: a5864f9604e7d218c09d44d13c0a17a28f8456a5
      https://github.com/llvm/llvm-project/commit/a5864f9604e7d218c09d44d13c0a17a28f8456a5
  Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/Utils.cpp
    A flang/test/Lower/OpenMP/non-rectangular-collapse.f90
    A flang/test/Lower/OpenMP/non-rectangular-collapse2.f90
    A flang/test/Lower/OpenMP/non-rectangular-collapse3.f90

  Log Message:
  -----------
  [Flang][OpenMP] Emit TODO for non-rectangular collapsed loop nests (#205558)

Non-rectangular loop nests (where an inner loop bound depends on an
outer IV) with collapse currently generate incorrect code that segfaults
at runtime, since OpenMPIRBuilder's collapseLoops assumes rectangular
iteration spaces.

Added a check during lowering to detect the non-rectangular case and
emit a clear "not yet implemented" error instead of silently producing
broken code.

minimal reproducer : 
```
program repro
implicit none
integer, parameter :: N = 10
integer :: arr(N,N), i, j

arr = 0

!$omp parallel do collapse(2)
do i = 1, N
do j = 1, i ! non-rectangular: upper bound depends on i
arr(j,i) = 1
end do
end do

if (sum(arr) /= N*(N+1)/2) then
print , "FAIL: sum =", sum(arr), " expected", N(N+1)/2
stop 1
end if
print *, "PASS"
end program
```
```
flang -O1 -fopenmp -fopenmp-version=50 repro.f90 && ./a.out

Segmentation fault (signal 11)
```

---------

Co-authored-by: Chandra Ghale <ghale at pe34genoa.hpc.amslabs.hpecorp.net>


  Commit: f298ab915f28ec8979de184b429b8a8c04491dff
      https://github.com/llvm/llvm-project/commit/f298ab915f28ec8979de184b429b8a8c04491dff
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/test/CodeGen/AMDGPU/si-fold-reg-sequence.mir

  Log Message:
  -----------
  [AMDGPU] Fix SIFoldOperands crash on REG_SEQUENCE with physical register (#206976)

The getRegSeqInit function crashes on REG_SEQUENCE instructions with
physical register inputs.

Since both optimizations that use getRegSeqInit do not need to handle
such REG_SEQUENCE instructions, this patch changes the function to
return nullptr which signals that the optimization should not happen.


  Commit: dd6d1112d940b90cf8542a2a6efdf76366949897
      https://github.com/llvm/llvm-project/commit/dd6d1112d940b90cf8542a2a6efdf76366949897
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/unittests/Basic/CMakeLists.txt

  Log Message:
  -----------
  Fix MSVC build after #206326 (#206993)

MSVC defaults to a non-utf8 encoding, and we added unicode characters in
some test files, which causes CI failures


  Commit: d4147132172a52b47fd1ffcbcc3da67099ea2bef
      https://github.com/llvm/llvm-project/commit/d4147132172a52b47fd1ffcbcc3da67099ea2bef
  Author: Varad Rahul Kamthe <133588066+varadk27 at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/Intrinsics.cpp
    A llvm/test/TableGen/intrinsic-default-args.td
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.cpp
    M llvm/utils/TableGen/Basic/CodeGenIntrinsics.h
    M llvm/utils/TableGen/Basic/IntrinsicEmitter.cpp

  Log Message:
  -----------
  [LLVM][Tablegen] Add Default arguments support for Intrinsics in TableGen (#198557)

This patch adds LLVM infrastructure to support default argument values
for intrinsics, modeled after C++ default arguments.
The motivation is to simplify the evolution of intrinsic signatures by
removing the hand-written AutoUpgrade boilerplate that intrinsic authors
must repeat for every new trailing parameter.

This feature extends the existing TableGen `ImmArg<>` property with an
optional `DefaultValue<V>`, written as `ImmArg<ArgIndex<N>,
DefaultValue<V>>`, so an intrinsic author can declare a default value
alongside an immediate argument. When older .ll or .bc IR is loaded,
AutoUpgrade fills in the missing trailing arguments from the
TableGen-generated default-value table ; no per-intrinsic hand-written
upgrade case is required.

Link to the RFC, where this feature will be discussed:

https://discourse.llvm.org/t/rfc-default-argument-support-for-llvm-intrinsics/90839


  Commit: ce8509f96615bd4bef3f2f3af8d1f6955ee6210f
      https://github.com/llvm/llvm-project/commit/ce8509f96615bd4bef3f2f3af8d1f6955ee6210f
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp

  Log Message:
  -----------
  [OpenACC] append triples when materializing reduction destroy recipes (#207034)

Append the triples if they exist when materializing the destroy region.


  Commit: cf360fbc1f6725b085c18c7cde88e823aecedf01
      https://github.com/llvm/llvm-project/commit/cf360fbc1f6725b085c18c7cde88e823aecedf01
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/IntervalMap.h
    M llvm/lib/Support/UnicodeNameToCodepoint.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/TextAPI/RecordsSlice.cpp
    M llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp

  Log Message:
  -----------
  [LLVM] Avoid nested std::min and std::max. NFC. (#206982)


  Commit: 1d2645fef0f2eabe3f96f70dde8a82b3c41ca6c7
      https://github.com/llvm/llvm-project/commit/1d2645fef0f2eabe3f96f70dde8a82b3c41ca6c7
  Author: adams381 <adams at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    A clang/test/CIR/CodeGen/global-replace-string-array.c

  Log Message:
  -----------
  [CIR] Fix getNewInitValue on string-literal arrays

`getNewInitValue` in `CIRGenModule.cpp` rebuilds a global's initializer when
`replaceGlobal` fixes up references after a global's type changes -- for
example when an `extern` array is referenced while still incomplete and then
completed. Its `ConstArrayAttr` branch cast `getElts()` to an `mlir::ArrayAttr`,
but a `ConstArrayAttr` built from a string literal stores its elements as a
`StringAttr`. A struct global that both points at the replaced global and has a
`char` array member therefore aborted on a failed `cast<ArrayAttr>` during
CIRGen.

`ConstArrayAttr::verify` allows only two element kinds: an `ArrayAttr` or a
`StringAttr`. A `StringAttr` holds raw 8-bit bytes and references no globals, so
there is nothing to rewrite. The fix returns the initializer unchanged for the
`StringAttr` case and `cast`s on the `ArrayAttr` path, so a future third element
kind asserts rather than silently passing through.

This surfaced compiling CPython's deep-frozen module data (SPEC CPU 2026
714.cpython_r), where frozen objects cross-reference each other and carry string
payloads. The benchmark advances past this abort to a const-record type-identity
issue that is tracked separately.


  Commit: 842558edbb506fb1f7575e915d3a7b6f07e49b1e
      https://github.com/llvm/llvm-project/commit/842558edbb506fb1f7575e915d3a7b6f07e49b1e
  Author: Nadharm <ndhiantravan at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/test/TableGen/searchabletables-multi-string-key.td
    M llvm/utils/TableGen/SearchableTableEmitter.cpp

  Log Message:
  -----------
  [TableGen] Fix SearchableTable lookup comparator w/ multiple string keys (#207021)

This change fixes a bug in `SearchableTableEmitter::emitLookupFunction`
where `emitComparator` redeclares `LHSStr`/`RHSStr` in the same scope.
This fix simply attaches the Field.Name to the emitted `LHSStr`/`RHSStr`
variable names.


  Commit: e6c909a48a62ccfe3bf4839109719c5128d66b3c
      https://github.com/llvm/llvm-project/commit/e6c909a48a62ccfe3bf4839109719c5128d66b3c
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M utils/bazel/.bazelrc

  Log Message:
  -----------
  [bazel] Fix remote exec with thin docker images (#205849)

rules_python is working on flipping this default but without this
setting /usr/bin/python3 must exist to run a py_binary. This might not
be the case in remote exec environments where you're trying to use the
smallest possible image.


  Commit: 4a6f7b11e38e5141e80f7664c13eb01a4b1f1c3d
      https://github.com/llvm/llvm-project/commit/4a6f7b11e38e5141e80f7664c13eb01a4b1f1c3d
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lld/ELF/Arch/AArch64.cpp
    M lld/test/ELF/aarch64-prel16.s
    M lld/test/ELF/aarch64-prel32.s

  Log Message:
  -----------
  [lld] Make R_AARCH64_PREL32/16 only signed ints (#205963)

After https://github.com/ARM-software/abi-aa/pull/401, these are defined
to be only signed 32/16 bit ints rather than both signed and unsigned.

Assisted-by: Gemini


  Commit: e0500fa504b28d8f1930781676c90130ea1aae21
      https://github.com/llvm/llvm-project/commit/e0500fa504b28d8f1930781676c90130ea1aae21
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll

  Log Message:
  -----------
  DAG: Preserve poison in all-undef build_vector/concat_vectors folds (#206947)


  Commit: a201ae3addcef5580c1228c9b7c7538cfac690a3
      https://github.com/llvm/llvm-project/commit/a201ae3addcef5580c1228c9b7c7538cfac690a3
  Author: jimingham <jingham at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h

  Log Message:
  -----------
  Handle the case where the ISA we find when looking up a method implementation has masked bits (#206864)

We need to canonicalize these since we look them up, and the PointerISA
is the right thing to use since it actually points at the class.

I can't write a test for this because ObjC mostly uses the masks for
swift/objc interop. I will add a test on the swift fork.


  Commit: fdc29a9e1912bf48d9035adb0953df2c95d3ce06
      https://github.com/llvm/llvm-project/commit/fdc29a9e1912bf48d9035adb0953df2c95d3ce06
  Author: Yury Plyakhin <yury.plyakhin at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SplitModuleByCategory.h
    M llvm/lib/Transforms/Utils/SplitModuleByCategory.cpp
    A llvm/test/tools/llvm-split/SplitByCategory/recursion-and-cycles.ll

  Log Message:
  -----------
  [llvm][SplitModuleByCategory] Fix infinite loop on cyclic global uses (#206862)

The dependency graph construction in `addUserToGraphRecursively` walked
the users of globals without visited set. A cycle in the use graph
caused it to push the same users forever, hanging the splitter.

Track visited users so each is processed once.

Co-Authored-By: Claude


  Commit: 539ad355f1efbb65be135a1e5ffd2dd918c80fb9
      https://github.com/llvm/llvm-project/commit/539ad355f1efbb65be135a1e5ffd2dd918c80fb9
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M mlir/test/Integration/Dialect/Linalg/CPU/ArmSME/multi-tile-matmul.mlir

  Log Message:
  -----------
  [mlir][sme] Update the multi-tile e2e example (#202979)

These changes enable hoisting of the accumulator load/store operations
out of the K loop.

Many thanks to @steplong for identifying the missing steps (see #201562)


  Commit: fa84e624accacc8795414e6df20f7b5f79194619
      https://github.com/llvm/llvm-project/commit/fa84e624accacc8795414e6df20f7b5f79194619
  Author: Valery Pykhtin <valery.pykhtin at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
    M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.h

  Log Message:
  -----------
   [NFC][AMDGPU] Use SIInstrFlags predicates in MCA (#206761)

Replace raw TSFlags accesses with SIInstrFlags predicate calls in
AMDGPUCustomBehaviour.

Part of a series following the introduction of SIInstrFlags predicates.


  Commit: 524b97ad33322dd0caba35c5cc2b8e1b1a831cc3
      https://github.com/llvm/llvm-project/commit/524b97ad33322dd0caba35c5cc2b8e1b1a831cc3
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/tests/shtest-output-printing.py

  Log Message:
  -----------
  [lit] Truncate process output to 10 kiB (#206355)

The output of processes is transformed multiple times:

1. All non-piped/redirected output of processes is collected
   (communicate() for the last process of the pipe, read() for all
   previous.)
   - It's not good that we *collect* the entire output at all (frequent
     realloc+memcpy for large buffers) and I'd rather not have a
     possibly large output stored in Python at all.
2. The output is converted into strings (memcpy/utf-8 decode) and stored
   in the results list of executeScriptInternal.
3. executeScriptInternal builds the debug output combining all these
   stdout/stderr.
   - It performs a lot of `out += ...`, which allocates (malloc+memcpy)
     a new string every time. There are many of these concatenations.
4. The combined debug output is returned (together with other things) to
   _runShTest, which determines whether the test passed, executing the
   test multiple times if necessary. It also string-formats the output.
5. ShTest returns the result, which is pickled, sent to the main process
   (write/read), unpickled, and processed further e.g. for writing the
   test result to stdout.

Due to locking, no other tests can start during this time and as most of
this happens in C code, interrupting also has some delay.

We have some tests that produce a large amount of output (llvm-exegesis
in particular has tests that output >50 MiB). This causes the tests to
stall for several seconds, sometimes more than a minute.

Therefore, truncate the output of processes to 10 kiB when adding it to
the debug output (step 3 above). This avoids most, but not all, of the
cost related to large outputs. The limit can be changed with the command
line option -Doutput_limit=N.

On one of my systems, this reduces the time of check-llvm by 22%:

    Before: 1085.27user 718.78system 1:53.75elapsed 1585%CPU
    After:  1050.81user 702.01system 1:28.42elapsed 1982%CPU

Reproducer of the problem:

    RUN: head -c500000000 /dev/zero


  Commit: 3794329ca236730f730ed54d36fa8aae18b733bb
      https://github.com/llvm/llvm-project/commit/3794329ca236730f730ed54d36fa8aae18b733bb
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll

  Log Message:
  -----------
  [AMDGPU] Fold constant offsets into named barrier addresses (#205216)

Allow isOffsetFoldingLegal to fold a constant offset into an LDS
named-barrier global, and include the node offset when materializing the
LDS address in LowerGlobalAddress. `s_barrier_signal_var` on a GEP'd
named barrier now selects the immediate form, matching a bare global and
GlobalISel.


  Commit: 929284ff2dda1de901286a3e69d15dce82010344
      https://github.com/llvm/llvm-project/commit/929284ff2dda1de901286a3e69d15dce82010344
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  DAG: Preserve poison in more concat_vectors folds (#206948)


  Commit: 282416b6d457b7fdd5d51fed0d7c59d3ee09093f
      https://github.com/llvm/llvm-project/commit/282416b6d457b7fdd5d51fed0d7c59d3ee09093f
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    R lldb/include/lldb/Target/RegisterFlags.h
    A lldb/include/lldb/Utility/RegisterFlags.h
    M lldb/source/Core/DumpRegisterInfo.cpp
    M lldb/source/Core/DumpRegisterValue.cpp
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/RegisterTypeBuilder/RegisterTypeBuilderClang.cpp
    M lldb/source/Target/CMakeLists.txt
    R lldb/source/Target/RegisterFlags.cpp
    M lldb/source/Utility/CMakeLists.txt
    A lldb/source/Utility/RegisterFlags.cpp
    M lldb/unittests/Core/DumpRegisterInfoTest.cpp
    M lldb/unittests/Target/RegisterFlagsTest.cpp

  Log Message:
  -----------
  [lldb] Move RegisterFlags from Target to Utility (#206861)

I'm doing this so that I can move RegisterInfo from
`lldb-private-types.h` to lldbUtility. It currently has a `RegisterFlags
*` field, so having it sit in lldb-private-types.h masks the actual
layering of our data types.

I considered moving RegisterInfo into Target, but RegisterValue (in
lldbUtility) uses RegisterInfo directly. Because RegisterFlags has no
internal dependencies, it seemed better to sink that instead.


  Commit: 81350fb55b020d76281544f46ee705352f865a63
      https://github.com/llvm/llvm-project/commit/81350fb55b020d76281544f46ee705352f865a63
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes 282416b (#207051)

This fixes 282416b6d457b7fdd5d51fed0d7c59d3ee09093f.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: ce8cf3f0a427f7fcf178a9a64ea48a4167211f82
      https://github.com/llvm/llvm-project/commit/ce8cf3f0a427f7fcf178a9a64ea48a4167211f82
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    R llvm/test/Transforms/RelLookupTableConverter/AArch64/no_relative_lookup_table.ll
    M llvm/test/Transforms/RelLookupTableConverter/unnamed_addr.ll

  Log Message:
  -----------
  Revert "Disable RelLookupTableConverter on AArch64" (#207046)

Reverts llvm/llvm-project#204669


https://github.com/ARM-software/abi-aa/blob/main/sysvabi64/sysvabi64.rst#code-models
says that text + rodata should be <2GB on AArch64 for the small code
model, so we should be able to enable RelLookupTableConverter on AArch64
small code model.

With #205963, we now properly diagnose overflows, rather than silently
truncating and miscompiling.


  Commit: c646b9557f90513db1dc8dcb38e0c0c5353cd5e0
      https://github.com/llvm/llvm-project/commit/c646b9557f90513db1dc8dcb38e0c0c5353cd5e0
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/threadlocal-address.ll

  Log Message:
  -----------
  [GlobalISel] Implement threadlocal.address translation (#206908)

Use the same lowering as sdag.


  Commit: 32f14d7cd9991c0431e0c2721313614a4b05fd2d
      https://github.com/llvm/llvm-project/commit/32f14d7cd9991c0431e0c2721313614a4b05fd2d
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__configuration/platform.h

  Log Message:
  -----------
  [libc++] Move threading and random device config into <__configuration/platform.h> (#206262)

These are platform-specific configuration options, so they should live
`<__configuration/platform.h>`.


  Commit: 43424c3e98f6fe07e729b55199bb91ff58579871
      https://github.com/llvm/llvm-project/commit/43424c3e98f6fe07e729b55199bb91ff58579871
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/test/ClangScanDeps/modules-full-by-mod-name.c
    M clang/test/lit.cfg.py
    A clang/utils/scan-deps-filter.py

  Log Message:
  -----------
  [clang-scan-deps] Add scan-deps-filter.py test helper to filter full output (#206758)

Add a helper script, which projects `clang-scan-deps` experimental-full
JSON down to a chosen set of fields, plus a `%scan-deps-filter` lit
substitution. A bare key (e.g. `file-deps`) matches that key at any
depth. A dotted path (e.g. `modules.command-line`) is anchored from the
document root to disambiguate keys when relevant.

This lets tests assert only on the fields they care about instead of
`CHECK`ing the whole object, which otherwise breaks whenever an
unrelated field is added/modified, and avoids gating emission behind
awkward per-field flags.

Migrate modules-full-by-mod-name.c as a first example.

Assisted-by: Claude Opus 4.8


  Commit: 7b8c4f5ad69d8fabf4bb71494f748fa0d7c47774
      https://github.com/llvm/llvm-project/commit/7b8c4f5ad69d8fabf4bb71494f748fa0d7c47774
  Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/include/flang/Lower/ConvertExprToHLFIR.h
    M flang/include/flang/Optimizer/Builder/BoxValue.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/Dialect/MIF/MIFOps.td
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    A flang/test/Fir/MIF/cobound.mlir
    A flang/test/Fir/MIF/coshape.mlir
    A flang/test/Fir/MIF/image_index.mlir
    M flang/test/Fir/MIF/this_image.mlir
    M flang/test/Lower/MIF/coarray_allocation.f90
    M flang/test/Lower/MIF/coarray_allocation2.f90
    A flang/test/Lower/MIF/cobound.f90
    A flang/test/Lower/MIF/coshape.f90
    A flang/test/Lower/MIF/image_index.f90
    M flang/test/Lower/MIF/this_image.f90

  Log Message:
  -----------
  [Flang][MIF] Adding support of intrinsics with coarray argument (#192944)

Added support for intrinsics that query the coarray in argument:
- Adding lowering and operation in MIF Dialect for UCOBOUND, LCOBOUND,
COSHAPE and IMAGE_INDEX
- Adding support of coarray argument for THIS_IMAGE in MIF Dialect (and
the lowering)

---------

Co-authored-by: Dan Bonachea <dobonachea at lbl.gov>
Co-authored-by: jeanPerier <jean.perier.polytechnique at gmail.com>


  Commit: 381de9a7811f222e7ffe18a0d0158dfe005454db
      https://github.com/llvm/llvm-project/commit/381de9a7811f222e7ffe18a0d0158dfe005454db
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/lib/Parser/openmp-parsers.cpp

  Log Message:
  -----------
  [flang][OpenMP] Compute the set of loop directives in parser, NFC (#206748)

Use the constexpr functions for association and source language to
compute the set of loop-associated directives instead of listing them
individually.


  Commit: bd338806e423fcef89ce38ff97065fd166f55161
      https://github.com/llvm/llvm-project/commit/bd338806e423fcef89ce38ff97065fd166f55161
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/docs/ABIGuarantees.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__split_buffer
    A libcxx/include/__vector/layout.h
    M libcxx/include/__vector/vector.h
    M libcxx/include/module.modulemap.in
    M libcxx/test/std/algorithms/alg.modifying.operations/alg.swap/ranges.swap_ranges.pass.cpp
    M libcxx/utils/gdb/libcxx/printers.py

  Log Message:
  -----------
  [libc++] Add a size-based representation for `vector` in the unstable ABI (#155330)

This commit adds an alternative representation for `std::vector` in a similar
manner to `__split_buffer` in #139632. This alternative representation was
measured to provide significant performance gains over the classic representation.

To do so, we introduce a layout type that tracks implementation details that
differ between the pointer-based vector and size-based vector representations.
`vector` does not parameterise its layout type, unlike `__split_buffer`.
`__split_buffer` is used by both `vector` and `deque`, and being able to take
an ABI break on `vector` doesn't automatically mean that users can also tolerate
a break on `deque`.

This new vector representation can be opted into by defining the
_LIBCPP_ABI_VECTOR_LAYOUT_SIZE_BASED macro when configuring the
library's ABI.

This change was the target of this RFC: https://discourse.llvm.org/t/adding-a-size-based-vector-to-libc-s-unstable-abi


  Commit: 24476abfac20976fb812b89cf5b83457b3aeb900
      https://github.com/llvm/llvm-project/commit/24476abfac20976fb812b89cf5b83457b3aeb900
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchStaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    M clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-nonempty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/namespace-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/namespace-wrong-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/top-level.test
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    M clang/unittests/ScalableStaticAnalysis/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Add `MultiArchStaticLibrary` data structure (#206148)

This change introduces `MultiArchStaticLibrary` that wraps
per-architecture `StaticLibrary` instances. It is the SSAF analogue of a
fat static library (the result of lipo -create over per-arch .a files).
Like `StaticLibrary` we don't need the fully decoded variant of this
data structure as it will be produced and read by the linker that does
not require the concrete summary data schema. Support for constructing
and consuming this data structure will be added in separate PRs.

rdar://181066557


  Commit: 4d767b93616e461155efbbf80dca24838b557dec
      https://github.com/llvm/llvm-project/commit/4d767b93616e461155efbbf80dca24838b557dec
  Author: Chinmay Deshpande <chdeshpa at amd.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll

  Log Message:
  -----------
  [AMDGPU] Consolidate CHECK lines for barrier-gep test. NFC (#207040)


  Commit: 066f7cb9de874631589f6a5db2c2841b81dfa034
      https://github.com/llvm/llvm-project/commit/066f7cb9de874631589f6a5db2c2841b81dfa034
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    A clang/test/ClangScanDeps/modules-pch-compatibility.c

  Log Message:
  -----------
  [clang][deps] Only disable app extension without PCHs (#207049)

PR #200041 disabled application extension during scanning to increase
module cache reuse. To keep the build semantics intact, the setting was
preserved for the compile steps. When scanning with an explicitly-built
PCH, this triggers a mismatch error in `ASTReader`:

```
error: Objective-C App Extension was enabled in precompiled file 'X.pch' but is currently disabled
```

This PR fixes this by only performing the optimization for non-PCH
compiles, adds a test, and a FIXME outlining how this optimization could
be applied even for compiles with PCHs.

rdar://180978125


  Commit: 5a05faa54c21dc0ca6516fb9c295d9fa966eaa72
      https://github.com/llvm/llvm-project/commit/5a05faa54c21dc0ca6516fb9c295d9fa966eaa72
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    A llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-non-addrec-after-predicates.ll

  Log Message:
  -----------
  [LAA] Fall back to starting AddRec if replacing strides fails. (#207054)

replaceSymbolicStrideSCEV may not return an AddRec after applying
predicates (871990a01ea72 /
https://github.com/llvm/llvm-project/pull/203787)

Fall back to AddRec without strides replaced, to avoid crashing.


  Commit: 50f30bedaa81919915049474f4350ef19c36b7ca
      https://github.com/llvm/llvm-project/commit/50f30bedaa81919915049474f4350ef19c36b7ca
  Author: Yuxuan Chen <ych at meta.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CodeGenCXX/gh196469-default-member-init-lambda-cleanup.cpp
    A clang/test/SemaCXX/gh196469-default-member-init-lambda-capture.cpp
    M clang/test/SemaCXX/source_location.cpp

  Log Message:
  -----------
  [Clang] Rebuild lambda captures in default member initializers while skipping body (#196597)

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

Since the CWG1815 implementation, `InitListChecker` rebuilds a default
member initializer at its point of use in aggregate initialization. The
rebuild uses the `EnsureImmediateInvocationInDefaultArgs` tree
transform, where `TransformCXXBindTemporaryExpr` strips
`CXXBindTemporaryExpr` nodes, relying on the subexpression's rebuild to
re-create the temporary binding: every `Rebuild*` path funnels through
`Sema::MaybeBindToTemporary`, which also re-registers the cleanup in the
current evaluation context.

However, the transform overrides `TransformLambdaExpr` to return the
closure unchanged (the body is not a subexpression), skipping the
`MaybeBindToTemporary` call that `BuildLambdaExpr` ends with. The
rebuilt initializer then lacks both the `CXXBindTemporaryExpr` around
the closure and the `ExprWithCleanups` marker, so CodeGen never emits
the closure's destructor and init-captured members leak.

Lambda init-captures are different from the body: their initializers are
evaluated in the enclosing context and can also contain immediate
invocations that need to be rebuilt at the default-initializer use site.
Visit init-captures when deciding whether the default initializer needs
rebuilding, and rebuild the lambda shell/captures while using
`SkipLambdaBody` to leave the body itself untouched. Rebuilding the
lambda this way also restores the closure temporary binding and cleanup
through `BuildLambdaExpr`.

Assisted-By: GPT-5.5 <noreply at openai.com>

Co-authored-by: GPT-5.5 <noreply at openai.com>


  Commit: fb81789e6e3b645d983793989ce11d76c99d25c8
      https://github.com/llvm/llvm-project/commit/fb81789e6e3b645d983793989ce11d76c99d25c8
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h
    M clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.h
    M clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.h
    M clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.h
    M clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.h
    M clang/include/clang/Support/Compiler.h
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Lex/Preprocessor.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.cpp
    M clang/lib/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.cpp
    M clang/lib/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.cpp
    M clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
    M clang/lib/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.cpp
    M clang/lib/Tooling/CompilationDatabase.cpp
    M clang/lib/Tooling/Execution.cpp
    M llvm/include/llvm/Support/Registry.h

  Log Message:
  -----------
  [Registry] Support static clang registries (#206750)

The plugin Registry macros hard-code `LLVM_ABI_EXPORT` (unconditional
dllexport) on `getRegistryLinkListInstance`. When clang is built
statically (`CLANG_LINK_CLANG_DYLIB=OFF`) and embedded into
`libclang.dll`, that forces the accessor into the DLL's export table,
where it collides with the same symbol from the static clang libraries
on any tool linking both.

Summary of changes:
* Add `LLVM_{DECLARE,DEFINE,INSTANTIATE}_REGISTRY_EX` variants taking
the export annotation as a parameter.
* Add `CLANG_ABI_EXPORT` macro as an equivalent to `LLVM_ALWAYS_EXPORT`
for libclang.
* Route clang's registries through the `*_EX` macros with
`CLANG_ABI_EXPORT`.

As a result, the static clang build no longer exports the accessor and
the clang dylib build is unaffected.

The effort to build LLVM as a dylib on Windows is tracked in
https://github.com/llvm/llvm-project/issues/109483.


  Commit: 47458aa3de39ef3c99e7cbd3256928795d1b458a
      https://github.com/llvm/llvm-project/commit/47458aa3de39ef3c99e7cbd3256928795d1b458a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/IndVarSimplify/exit-value-gep-inbounds.ll

  Log Message:
  -----------
  [IndVars] Refine tests for evaluating final value pointer AddRecs (NFC). (#207076)

Update tests for evaluating final value of pointer AddRecs. Add missing
cases and add some brief clarifying comments to some test cases.


  Commit: 3f3acdb279ce9d5b26d7fa3cc27f4584f3a39e35
      https://github.com/llvm/llvm-project/commit/3f3acdb279ce9d5b26d7fa3cc27f4584f3a39e35
  Author: Valery Dmitriev <valeryd at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir

  Log Message:
  -----------
  [MCP] Add test case to demonstrate issue with spill copy elimination (NFC)  (#207065)

This is a reapply of #206855 with added expensive_checks restriction. It
turned out that the problem may get caught with expensive checks. The
restriction is to be removed with the follow up patch.


  Commit: 3b5075609dd67f307bbf66c1270d883148f30f8b
      https://github.com/llvm/llvm-project/commit/3b5075609dd67f307bbf66c1270d883148f30f8b
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/test/MC/RISCV/XTHeadBa-invalid.s
    M llvm/test/MC/RISCV/corev/XCVmem-invalid.s
    M llvm/test/MC/RISCV/function-call-invalid.s
    M llvm/test/MC/RISCV/insn-invalid.s
    M llvm/test/MC/RISCV/insn_c-invalid.s
    M llvm/test/MC/RISCV/insn_xqci-invalid.s
    M llvm/test/MC/RISCV/priv-invalid.s
    M llvm/test/MC/RISCV/rv32c-invalid.s
    M llvm/test/MC/RISCV/rv32dc-invalid.s
    M llvm/test/MC/RISCV/rv32fc-invalid.s
    M llvm/test/MC/RISCV/rv32h-invalid.s
    M llvm/test/MC/RISCV/rv32i-aliases-invalid.s
    M llvm/test/MC/RISCV/rv32i-invalid.s
    M llvm/test/MC/RISCV/rv32xtheadbs-invalid.s
    M llvm/test/MC/RISCV/rv32xtheadmempair-invalid.s
    M llvm/test/MC/RISCV/rv32zba-invalid.s
    M llvm/test/MC/RISCV/rv32zbb-invalid.s
    M llvm/test/MC/RISCV/rv32zbc-invalid.s
    M llvm/test/MC/RISCV/rv32zbkc-invalid.s
    M llvm/test/MC/RISCV/rv32zbkx-invalid.s
    M llvm/test/MC/RISCV/rv32zbs-invalid.s
    M llvm/test/MC/RISCV/rv32zclsd-invalid.s
    M llvm/test/MC/RISCV/rv32zcmop-invalid.s
    M llvm/test/MC/RISCV/rv32zdinx-invalid.s
    M llvm/test/MC/RISCV/rv32zfinx-invalid.s
    M llvm/test/MC/RISCV/rv32zhinx-invalid.s
    M llvm/test/MC/RISCV/rv32zhinxmin-invalid.s
    M llvm/test/MC/RISCV/rv32zimop-invalid.s
    M llvm/test/MC/RISCV/rv64c-invalid.s
    M llvm/test/MC/RISCV/rv64h-invalid.s
    M llvm/test/MC/RISCV/rv64i-aliases-invalid.s
    M llvm/test/MC/RISCV/rv64p-invalid.s
    M llvm/test/MC/RISCV/rv64xtheadmemidx-invalid.s
    M llvm/test/MC/RISCV/rv64xtheadmempair-invalid.s
    M llvm/test/MC/RISCV/rv64zba-invalid.s
    M llvm/test/MC/RISCV/rv64zbb-invalid.s
    M llvm/test/MC/RISCV/rv64zbs-invalid.s
    M llvm/test/MC/RISCV/rv64zdinx-invalid.s
    M llvm/test/MC/RISCV/rv64zfinx-invalid.s
    M llvm/test/MC/RISCV/rv64zhinx-invalid.s
    M llvm/test/MC/RISCV/rv64zhinxmin-invalid.s
    M llvm/test/MC/RISCV/rva-aliases-invalid.s
    M llvm/test/MC/RISCV/rvc-hints-invalid.s
    M llvm/test/MC/RISCV/rve-invalid.s
    M llvm/test/MC/RISCV/rvi-pseudos-invalid.s
    M llvm/test/MC/RISCV/rvv/invalid.s
    M llvm/test/MC/RISCV/rvv/xsfmm-invalid.s
    M llvm/test/MC/RISCV/rvv/zvvfmm-invalid.s
    M llvm/test/MC/RISCV/rvy/rvy-basic-invalid.s
    M llvm/test/MC/RISCV/rvzicond-invalid.s
    M llvm/test/MC/RISCV/tlsdesc.s
    M llvm/test/MC/RISCV/xqci-access-pseudos.s
    M llvm/test/MC/RISCV/xqcia-invalid.s
    M llvm/test/MC/RISCV/xqciac-invalid.s
    M llvm/test/MC/RISCV/xqcibi-invalid.s
    M llvm/test/MC/RISCV/xqcibm-invalid.s
    M llvm/test/MC/RISCV/xqcicli-invalid.s
    M llvm/test/MC/RISCV/xqcicm-invalid.s
    M llvm/test/MC/RISCV/xqcics-invalid.s
    M llvm/test/MC/RISCV/xqcicsr-invalid.s
    M llvm/test/MC/RISCV/xqciint-invalid.s
    M llvm/test/MC/RISCV/xqciio-invalid.s
    M llvm/test/MC/RISCV/xqcilb-invalid.s
    M llvm/test/MC/RISCV/xqcili-invalid.s
    M llvm/test/MC/RISCV/xqcilia-invalid.s
    M llvm/test/MC/RISCV/xqcilo-invalid.s
    M llvm/test/MC/RISCV/xqcilo-pseudos-invalid.s
    M llvm/test/MC/RISCV/xqcilsm-invalid.s
    M llvm/test/MC/RISCV/xqcisim-invalid.s
    M llvm/test/MC/RISCV/xqcisls-invalid.s
    M llvm/test/MC/RISCV/xqcisync-invalid.s
    M llvm/test/MC/RISCV/xsifive-invalid.s
    M llvm/test/MC/RISCV/xtheadcondmov-invalid.s
    M llvm/test/MC/RISCV/xtheadmac-invalid.s
    M llvm/test/MC/RISCV/xtheadsync-invalid.s
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [RISCV] Report all near-miss reasons in the AsmParser (#205721)

Set ReportMultipleNearMisses and switch RISCVAsmParser to the shared
near-miss reporting used by ARM, so a failed match lists every reason
instead of just the first one.

Assisted-by: claude-opus


  Commit: ef5d72f387cacebcb2d557042a418c9308f192a6
      https://github.com/llvm/llvm-project/commit/ef5d72f387cacebcb2d557042a418c9308f192a6
  Author: Deepak Eachempati <deepak.eachempati at hpe.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/docs/OpenMPSupport.md

  Log Message:
  -----------
  [flang][OpenMP][docs] add missing features to support page (NFC) (#207078)

Adds more rows for 5.x features not captured in new OpenMP Support page
for Flang.


  Commit: c3d0465e6559b46698ac6793c2a3f4e3c2323258
      https://github.com/llvm/llvm-project/commit/c3d0465e6559b46698ac6793c2a3f4e3c2323258
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/include/__algorithm/lower_bound.h
    M libcxx/include/__algorithm/set_intersection.h

  Log Message:
  -----------
  [libc++] Remove projection from __lower_bound_onesided (#206676)

The projection argument isn't made use of very much, since it's only
ever called with an identity. We can remove it to simplify the code a
bit.


  Commit: 08aee5eee3c2417ad497a35d7f73e1f29ea6a83e
      https://github.com/llvm/llvm-project/commit/08aee5eee3c2417ad497a35d7f73e1f29ea6a83e
  Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libcxx/test/std/containers/associative/set/clear.pass.cpp
    M libcxx/test/std/containers/associative/set/contains.pass.cpp
    M libcxx/test/std/containers/associative/set/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/count.pass.cpp
    M libcxx/test/std/containers/associative/set/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/empty.pass.cpp
    M libcxx/test/std/containers/associative/set/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/set/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/set/find.pass.cpp
    M libcxx/test/std/containers/associative/set/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/set/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/set/max_size.pass.cpp
    M libcxx/test/std/containers/associative/set/merge.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/set/set.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/set/set.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/size.pass.cpp
    M libcxx/test/std/containers/associative/set/types.pass.cpp
    M libcxx/test/std/containers/associative/set/upper_bound.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp

  Log Message:
  -----------
  [NFC][libc++] Fix formatting for `<set>` tests (#207080)


  Commit: 0ec217a0068e7ef25730c89690be50956ea472e1
      https://github.com/llvm/llvm-project/commit/0ec217a0068e7ef25730c89690be50956ea472e1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  [LV] Return widening kind from memoryInstructionCanBeWidened (NFC). (#207056)

Make memoryInstructionCanBeWidened return the InstWidening decision
(CM_Widen or CM_Widen_Reverse) as a std::optional instead of a bool.

This avoids computing and checking for consecutive strides multiple
times.


  Commit: 55e440655337fce272a76f387fbeebd0529a9891
      https://github.com/llvm/llvm-project/commit/55e440655337fce272a76f387fbeebd0529a9891
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/DataFormatters/ValueObjectPrinter.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/shared_ptr/TestDataFormatterStdSharedPtr.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/unique_ptr/TestDataFormatterStdUniquePtr.py

  Log Message:
  -----------
  [lldb] Remove extra newline from ValueObject errors (#207050)

Change `ValueObjectPrinter` to print only a single newlines after errors.


  Commit: 8286c6572d0484ddf1a75e5b2a35dd09eae66ff2
      https://github.com/llvm/llvm-project/commit/8286c6572d0484ddf1a75e5b2a35dd09eae66ff2
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaTemplate/member-specialization.cpp

  Log Message:
  -----------
  [clang] fix error recovery for invalid member specializations (#207068)

Recover from invalid member specializations as if it wasn't declared.

This undoes the change introduced in #201506 for a more robust approach
which keeps the AST valid.

There are no release notes since this fixes a regression which was never
released.

Fixes #201490
Fixes #205971


  Commit: f74953b929fefb8edef80f6e99d596b72b540c66
      https://github.com/llvm/llvm-project/commit/f74953b929fefb8edef80f6e99d596b72b540c66
  Author: Giovanni Ortuño <gd.ortuno at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M compiler-rt/lib/fuzzer/FuzzerIO.cpp

  Log Message:
  -----------
  [libfuzzer] Improve error message for file not found (#207081)

We're seeing many instances of this issue on ClusterFuzz. This PR adds
more information to help debug the cause of the problem.

See https://crbug.com/529865766 for more context.


  Commit: 6407e80cbfda6df8b8da2bd71bc008d798e58553
      https://github.com/llvm/llvm-project/commit/6407e80cbfda6df8b8da2bd71bc008d798e58553
  Author: Gustas Janušonis <janusonis.gustas at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGenTypes/MachineValueType.h
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  Implemented MVT::changeElementType based on EVT::changeElementType (#206783)

Implemented MVT::changeElementType based on EVT::changeElementType

Fixes #206726


  Commit: acbe933539074cc5faba3211ff41eff4996cdadd
      https://github.com/llvm/llvm-project/commit/acbe933539074cc5faba3211ff41eff4996cdadd
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

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

  Log Message:
  -----------
  [lldb] Remember server's primary stop thread on gdb-remote stops (#207020)

This is a reland of https://github.com/llvm/llvm-project/pull/203525,
which was reverted because it introduced a test failure on macOS. The
primary thread was unconditionally selected, which was causing
`TestRealDefinition.py` to fail. The fix is to only call
SetSelectedThreadByID when the server's primary tid differs from the
currently-selected thread.

---

The client kept the previously-selected thread across stops, ignoring
the primary tid from the server in `T<sig>thread:<tid>`.
On Windows, lldb-server halts the inferior by injecting a thread called
`DbgUiRemoteBreakin` whose only job is to execute an int 3. After an
interrupt, the process has `N+1` threads and the new one is what caused
the stop. The server reports that thread as primary, but the client
ignored it and stayed on whichever thread was selected before. In
`TestExpressionInSyscall` that thread is main, paused just past
`NtDelayExecution`'s syscall with a garbage value in the RSI register.
Evaluating an expression there crashes the JIT trampoline.

This patch makes `ProcessGDBRemote::RefreshStateAfterStop` record the
primary tid from the most recent T-packet's `thread:<tid>` and select it
after applying per thread stop infos.

Fixes `TestExpressionInSyscall` with LLDB_USE_LLDB_SERVER=1.

rdar://180307914


  Commit: 18050dd6892ecad633544c8f5a18ba7722ae2206
      https://github.com/llvm/llvm-project/commit/18050dd6892ecad633544c8f5a18ba7722ae2206
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-bitcast-paired.ll

  Log Message:
  -----------
  [RISCV][P-ext] Tighten checks for what scalar<->vector bitcasts are legal (#207038)

We were incorrectly treating i64<->vector casts as legal on RV32. This
only shows up when the D extension is enabled because it marks i64
bitcast as custom for i64<->f64 conversions.

Rewrite the checks in terms of XLenVT.


  Commit: 22ad1d6eeefdaaea50c7e939801005cfe3de846e
      https://github.com/llvm/llvm-project/commit/22ad1d6eeefdaaea50c7e939801005cfe3de846e
  Author: tcottin <timcottin at gmx.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/support/Markup.cpp
    M clang-tools-extra/clangd/support/Markup.h
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
    M clang-tools-extra/clangd/unittests/support/MarkupTests.cpp

  Log Message:
  -----------
  [clangd] Use plaintext newline handling for escaped markdown hover style (#185197)

For clangd 22 there are [3 new
options](https://clangd.llvm.org/config#documentation) to control the
content of the hover information. Using the default Plaintext option,
Markdown syntax is escaped.
But whitespaces (like newlines etc.) are not "escaped" anymore as it was
before the introduction of Markdown and Doxygen rendering.

Some clients do not render Markdown even if they request Markdown
content from the server.
At least the [neovim client](https://github.com/clangd/clangd/issues/95)
does not render Markdown whitespace correctly.
Therefore, with clangd 22, the rendering for these clients looks
different, especially for newlines.
Without the escaping, newlines are rendered as written in the
documentation comment, which is not desired for these clients.

This patch fixes the regression by using the same whitespace escaping as
clangd < 22.


  Commit: 459ed2b0653f4b308ad0fcc3a5821a4dcb852cb2
      https://github.com/llvm/llvm-project/commit/459ed2b0653f4b308ad0fcc3a5821a4dcb852cb2
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libc/shared/builtins.h
    A libc/shared/builtins/addsf3.h
    M libc/src/__support/builtins/CMakeLists.txt
    A libc/src/__support/builtins/addsf3.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_builtins_test.cpp

  Log Message:
  -----------
  [libc] add shared addsf3 builtin (#205676)

Re-exposes LLVM-libc's `__addsf3` as `shared::addsf3` for reuse by
compiler-rt's builtins.

Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673
- #205674
- #205675

Part of #197824


  Commit: 04cf6e09515d678c6f1a11385981fe6f5c5ba196
      https://github.com/llvm/llvm-project/commit/04cf6e09515d678c6f1a11385981fe6f5c5ba196
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Target/RegisterContextUnwind.cpp
    A lldb/test/API/functionalities/unwind/outlined-functions/Makefile
    A lldb/test/API/functionalities/unwind/outlined-functions/TestBacktraceThroughOutlinedFunction.py
    A lldb/test/API/functionalities/unwind/outlined-functions/arm64-outlined-epilogue-core.yaml
    A lldb/test/API/functionalities/unwind/outlined-functions/binary.json
    A lldb/test/API/functionalities/unwind/outlined-functions/main.c
    A lldb/test/API/functionalities/unwind/outlined-functions/outlined-functions.s

  Log Message:
  -----------
  [lldb] Don't trust unwind information for outlined functions (#204500)

clang/llvm has a feature to take identical sequences of instructions
from multiple functions, put them in a separate utility function, and
call that utility function, reducing overall codesize. Primarly useful
in memory constrained environments.

The CFI unwind instructions for these OUTLINED_FUNCTIONs in
eh_frame/debug_frame is entirely incorrect; clang does not emit any
directives for them.

Furthermore, the callers sometimes call the OUTLINED_FUNCTION in a
non-ABI call manner. For instance, if the last few instructions of a
function (including the epilogue) are put in an OUTLINED_FUNCTION, a
function will simply tail-call/jump to the outlined function.

If a function prologue is separated into an OUTLINED_FUNCTION, a non ABI
call to preserve the return-address-register may be used, e.g. on RISCV
a `jal t0, OUTLINED_FUNCTION_nn` may be used, putting the return address
in the t0 temporary register; lldb's instruction analysis while in the
OUTLINED_FUNCTION will not understand that this non-ABI calling method
was used.

This PR overrides any normal unwind information when we find a stack
frame in an OUTLINED_FUNCTION and replaces it with the architectural
default unwind plan, hopefully this is a target where stack frames start
with a saved fp+pc up the stack, and there is an arch default unwind
plan that can get past this point while trusting no sources of unwind
information. We may end up skipping a stack frame in the process (the
caller of the OUTLINED_FUNCTION), but it's the best we can do.

There is a further problem not handled here, where the prologue of a
function is outlined. None of the unwind information for the original
function will be correct - not CFI directives in eh_frame/debug_frame no
lldb's instruction emulation. We need to also treat this case as "use
the arch default unwind plan, it's our only hope" but I need to come up
with a way to detect this scenario still. We don't have a simple
function name check here; we'll need to detect the call to the
OUTLINED_FUNCTION at the start of the function and handle it somehow.

This test case includes a main.c and outlined-function.s which simulates
what the three different OUTLINED_FUNCTION combinations look like in
AArch64 assembly (prologue, mid-function, epilogue), but I've never
succeeded at getting assembly to compile cross-platform, so I also
created a corefile and JSON binary (arm64-outlined-epilogue-core.yaml,
binary.json) and run yaml2macho-core to create a Mach-O corefile to run
the test case against. This corefile is simply me capturing some memory
and register contents while debugging the main.c and outlined-function.s
at the "epilogue OUTLINED" and we hit the OUTLINED_FUNCTION on the stack
walk.

rdar://179530769

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 8dbd1cb22a87f571f0adef91739f563e2914fb6e
      https://github.com/llvm/llvm-project/commit/8dbd1cb22a87f571f0adef91739f563e2914fb6e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/test/API/lang/c/inlines/main.c

  Log Message:
  -----------
  [lldb][test] Use a valid main signature in the inlines test (#207093)

lang/c/inlines/main.c declared "int main(int argc)", a single-int-
parameter main that clang warns about (-Wmain) and that argc is never
used for. Declare it as "int main()".


  Commit: 4ce874e05ab80beaabb1ba6b6f14cc120c74c69d
      https://github.com/llvm/llvm-project/commit/4ce874e05ab80beaabb1ba6b6f14cc120c74c69d
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/AST/HLSL/ConstantBuffers-AST.hlsl
    A clang/test/AST/HLSL/resources-in-structs-method-call.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-method-call.hlsl
    M clang/test/SemaHLSL/BuiltIns/ConstantBuffer-member-funcs.hlsl

  Log Message:
  -----------
  [HLSL] Enable invoking a method on a constant buffer struct (#206596)

Structs in constant buffers are in the `hlsl_constant` address space and
in a specific constant buffer layout. In order to invoke a method on
such struct, it first needs to be copied out into const temporary
variable with a standard layout. This change adds `LValueToRValue` cast
to the method `this` argument which takes care of that.

Fixes #190299


  Commit: 88a3488c8a64d5cc1f4dbcb6cb6981f0398ae4b6
      https://github.com/llvm/llvm-project/commit/88a3488c8a64d5cc1f4dbcb6cb6981f0398ae4b6
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/stdlib.yaml
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/string.h
    M libc/src/__support/OSUtil/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/path.h
    A libc/src/__support/OSUtil/path.h
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/linux/CMakeLists.txt
    A libc/src/stdlib/linux/realpath.cpp
    A libc/src/stdlib/realpath.h
    M libc/test/src/__support/CPP/CMakeLists.txt
    M libc/test/src/__support/CPP/string_test.cpp
    M libc/test/src/stdlib/CMakeLists.txt
    A libc/test/src/stdlib/realpath_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][realpath] Implement symbolic path resolution (#204467)

This PR contains an incremental implementation of `realpath` that just
simplifies path traversals (e.g. `"/a/./../b"` -> `"/b"`). The complete
implementation would perform `getcwd`/`statx`/`readlinkat` to actually
resolve symlinks, validate paths, etc. This PR aims to add as much
functionality/error handling as possible without making any syscalls.

This implementation lives in `libc/src/stdlib/linux/`, since follow-on
PRs will rely on linux-specific syscalls. For testing purposes, I've
added the entrypoint for x86-64 linux when
`LLVM_LIBC_ENABLE_EXPERIMENTAL_ENTRYPOINTS` is enabled.

Follow-on PRs to add: path validation (e.g.
paths must exist), support for cwd-relative paths, and symlink
resolution.


  Commit: 0a2fb2a2269da0e2a3e230beb6cad39ca314db33
      https://github.com/llvm/llvm-project/commit/0a2fb2a2269da0e2a3e230beb6cad39ca314db33
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/source/Core/SourceManager.cpp
    A lldb/test/API/functionalities/breakpoint/default_source_file/Makefile
    A lldb/test/API/functionalities/breakpoint/default_source_file/TestDefaultSourceFile.py
    A lldb/test/API/functionalities/breakpoint/default_source_file/main.cpp
    A lldb/test/API/functionalities/breakpoint/default_source_file/other.cpp

  Log Message:
  -----------
  [lldb] Find the default source file's main by base name (#207043)

SourceManager::GetDefaultFileAndLine locates the executable's main to
pick a default source file, used for input like "break set -l N" with no
file specified. It searched for main by full name, but a function's
linkage name can differ from its source name, in which case a full-name
search for "main" does not find it and no default file is chosen.

For example, wasi-libc renames main to __main_argc_argv, so on
WebAssembly the debug function for main was never matched and "break set
-l N" failed with "no default file available".

When we can't find "main", fall back to searching by base name.


  Commit: a413409b4020787bd7f15dce9b03102eb7af33c9
      https://github.com/llvm/llvm-project/commit/a413409b4020787bd7f15dce9b03102eb7af33c9
  Author: Alexander Johnston <14348472+Alexander-Johnston at users.noreply.github.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/InterlockedOr.hlsl
    A clang/test/SemaHLSL/BuiltIns/InterlockedOr-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/InterlockedOr.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedOr.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/InterlockedOr_spv_i64.ll

  Log Message:
  -----------
  [HLSL][DXIL] InterlockedOr and InterlockedOr64 builtins (#180804)

This includes the first phase of implementation of the InterlockedOr
intrinsic. This covers the usage of the intrinsic/builtin on
RWByteAddressBuffers, Typed Buffers, and Structured Buffers. Not covered
are textures, groupshared memory, and the standalone
InterlockedOr(buf[index], val, ret) intrinsics.

SPIRV implementation is not covered in this commit.

Contributes to, but does not address
https://github.com/llvm/llvm-project/issues/99126


  Commit: 87a09a0ff00c7ebc316bf6fad90a5cdc0b39e4eb
      https://github.com/llvm/llvm-project/commit/87a09a0ff00c7ebc316bf6fad90a5cdc0b39e4eb
  Author: Yury Plyakhin <yury.plyakhin at intel.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/docs/ClangSYCLLinker.rst
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/test/OffloadTools/clang-sycl-linker/basic.ll
    M clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    M clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
    M clang/tools/clang-sycl-linker/SYCLLinkOpts.td

  Log Message:
  -----------
  [clang][SYCL] Add -fsycl-device-image-split option (#206870)

Add the -fsycl-device-image-split= driver option to control how SYCL
device code is split into separate device images. Supported values:
    - kernel: one device image per SYCL kernel
    - translation_unit: one device image per translation unit
    - link_unit:        one device image per linking unit

The bare -fsycl-device-image-split flag is an alias for
-fsycl-device-image-split=translation_unit, which is also the default.

clang-sycl-linker module-split-mode option values were updated
accordingly to simplify options forwarding logic.

Co-Authored-By: Claude


  Commit: 32ae6b5e66e1bd387ce791f0eac042e898a67946
      https://github.com/llvm/llvm-project/commit/32ae6b5e66e1bd387ce791f0eac042e898a67946
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/tools/lldb-mcp/CMakeLists.txt
    M lldb/tools/lldb-mcp/lldb-mcp.cpp

  Log Message:
  -----------
  [lldb-mcp] Link liblldb instead of the full initialization stack (#206852)

lldb-mcp linked liblldb but also pulled in lldbInitialization, which
drags in lldbCore and the entire plugin stack as a second, static copy
of LLDB alongside the dylib. It bootstrapped that copy through the
private SystemInitializerCommon.

lldb-mcp is a thin stdio proxy: it locates and forwards I/O to an lldb
subprocess and never creates a debugger. It only needs the FileSystem,
HostInfo, and Socket subsystems. Drop lldbInitialization, get the heavy
code from liblldb, and initialize just those subsystems directly (as
lldb-dap does) rather than via SystemInitializerCommon.

rdar://181054260


  Commit: 26bf00b8c96ea24c01cf55682085d7446cc24836
      https://github.com/llvm/llvm-project/commit/26bf00b8c96ea24c01cf55682085d7446cc24836
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/test/CIR/IR/invalid-linkage.cir

  Log Message:
  -----------
  [CIR][NFC] Re-enable invalid linkage test (#205459)

The CIR verification test for a cir.global op with a missing linkage
attribute was broken by a change to the MLIR asm parser back in April.
At that time, I marked the test as XFAIL and added a check that would
prevent it from randomly passing. In the meantime, another MLIR parser
changed (https://github.com/llvm/llvm-project/pull/188008) fixed the
original problem.

This change reverts the test to its previous state since it now passes.


  Commit: 6b3e7235edb68a5f09716030c5e8899a0bc26653
      https://github.com/llvm/llvm-project/commit/6b3e7235edb68a5f09716030c5e8899a0bc26653
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Utility/Policy.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Utility/Policy.cpp
    M lldb/unittests/Utility/PolicyTest.cpp

  Log Message:
  -----------
  [lldb] Harden PolicyStack against cross-thread Guard misuse (#195774)

Two related correctness/clarity improvements to the `Policy`
infrastructure introduced by 504a112:

`PolicyStack::Guard` now stores the std::thread::id of the thread that
created it. Destruction and move operations call
`llvm::report_fatal_error` when they happen on a different thread, since
the `PolicyStack` is `thread_local`: popping from the wrong thread would
silently corrupt that thread's stack.

`Push`/`Pop` on `PolicyStack` are now private. Callers go through named
factories (`PushPrivateState`, `PushPublicStateRunningExpression`) that
return RAII Guards. The transition factories on Policy
(`CreatePrivateState`, `CreatePublicStateRunningExpression`) inherit
from `PolicyStack::Get().Current()` and apply their named change on top,
so pushed policies preserve existing stack state rather than resetting
unrelated fields. `CreatePublicState` remains the baseline reference
value (returns a default `Policy{}`); the stack returns to public state
by popping the private guards, not by pushing a "public" policy on top.

----

The following PRs are related to the Policy feature:
- #195762
- #195771
- #198897
- #195774
- #195775

rdar://176223894

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 53069acdb946dd42e4c3126bef86c7adda64cb05
      https://github.com/llvm/llvm-project/commit/53069acdb946dd42e4c3126bef86c7adda64cb05
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/flexible-array-init.c
    A clang/test/CIR/IR/const-record-flexible-array.cir
    M clang/test/CIR/IR/invalid-const-record.cir

  Log Message:
  -----------
  [CIR] Implement Flexible Array Members for const-record lowering (#206564)

The previous patch I did rewrote the ConstRecordBuilder in a way that
resulted in flexible array members being an NYI. This was because it
requires quite a bit of additional work to accomplish this.

This patch does this implementation. It does so by: 1- Changing the CIR
dialect to just support them. If a struct type ends in a zero size
array, it allows constant initialization with a non-zero array size.
This patch adds this, as well as tests to do so.

2- Change our LowerToLLVM to detect this pattern, and substitute in the
struct-literal type. There is some additional work to allow us to do a
padded literal, which results in slightly more matches to classic
codegen. But otherwise, it is a pretty straight forward struct
replacement with a larger array type.


  Commit: 92313eff069c3148153aa8097ea3780ebc8dc057
      https://github.com/llvm/llvm-project/commit/92313eff069c3148153aa8097ea3780ebc8dc057
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/include/mlir-c/Rewrite.h
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    M mlir/test/CAPI/rewrite.c

  Log Message:
  -----------
  Revert "[mlir-c] Add ConversionTarget dynamic legality C API" (#207104)

Reverts llvm/llvm-project#206161 due to SAN failures.


  Commit: 37e83e76096826b5d3e34b606b1742f9db4f5e35
      https://github.com/llvm/llvm-project/commit/37e83e76096826b5d3e34b606b1742f9db4f5e35
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Error.h

  Log Message:
  -----------
  [orc-rt] Add some missing noexcept specifiers to Error.h. (#206984)


  Commit: 70de698a963575f31b549fad3229aba48b027951
      https://github.com/llvm/llvm-project/commit/70de698a963575f31b549fad3229aba48b027951
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Error.h
    M orc-rt/unittests/ErrorTest.cpp

  Log Message:
  -----------
  [orc-rt] Fix unused Expected::isFailureOfType, add testcase. (#207105)

Expected::isFailureOfType method template was calling a non-existant
Error::isFailureOfType method, but didn't trigger any compile errors as
isFailureOfType was unused. This commit fixes isFailureOfType and adds a
testcase to exercise it.


  Commit: 24e7deef7363d5dce2255c5350645b927e5e3313
      https://github.com/llvm/llvm-project/commit/24e7deef7363d5dce2255c5350645b927e5e3313
  Author: Aayush Shrivastava <iamaayushrivastava at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    A clang/test/SemaTemplate/GH198890.cpp

  Log Message:
  -----------
  [clang] Fix crash in VisitVarTemplatePartialSpecializationDecl on failed instantiation (#200161)

Fixes #198890

When a class template is explicitly instantiated and a member variable
template's type involves a substitution failure (e.g. `typename T::type`
with `T=int`), `VisitVarDecl` returned `nullptr`, causing
`VisitVarTemplateDecl` to bail out before registering the
`VarTemplateDecl` in the owner's lookup table. A subsequent call to
`VisitVarTemplatePartialSpecializationDecl` then hit an assert
(`!Found.empty()`) on the empty lookup result.

Fix: When `SubstType` fails and `InstantiatingVarTemplate=true`, recover
by using `int` as the type (via `getTrivialTypeSourceInfo(IntTy)`) and
mark the resulting `VarDecl` invalid. This ensures
`VisitVarTemplateDecl` always receives a valid `VarDecl` and finishes
registering the `VarTemplateDecl`, preserving the invariant the asserts
rely on.

A regression test is added in `clang/test/SemaTemplate/GH198890.cpp`.


  Commit: 815533b0f85beed5133bc078a0582ad50f5bd70a
      https://github.com/llvm/llvm-project/commit/815533b0f85beed5133bc078a0582ad50f5bd70a
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaCXX/typo-correction.cpp

  Log Message:
  -----------
  [clang] fix typo correction crash with template destructor names (#207101)

Disables typo correction for template destructor names, as typo
correction is not aware of destructors and would provide suugestions
which would form an invalid name.

Since this fixes a regression that was never released, there are no
release notes.

Fixes #206992


  Commit: d4fe91df8e575032b706194d06fcdd33ff3708c0
      https://github.com/llvm/llvm-project/commit/d4fe91df8e575032b706194d06fcdd33ff3708c0
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUDA/CUFAllocDelay.cpp
    A flang/test/Transforms/CUF/cuf-alloc-delay.fir

  Log Message:
  -----------
  [flang][cuda] Add CUFAllocDelay pass to defer device descriptor allocation (#206882)

Add a new MLIR pass that delays cuf.alloc operations for allocatable
descriptor (box) types from function entry to just before their first
use. This defers cudaMallocManaged calls so that programs can call
cudaSetDevice or initialize communication libraries before any CUDA
context is created.


  Commit: fb92fdee85de92b03d3f30d7030f915a8471b845
      https://github.com/llvm/llvm-project/commit/fb92fdee85de92b03d3f30d7030f915a8471b845
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll

  Log Message:
  -----------
  [RISCV] Canonicalize the true operand of vselect to fold more vmerge.vvm instructions (#206449)

Convert (vselect CC, true, false) to (vselect InvertCC, false, true)
when false has one use, true has multiple use and CC is SETEQ or ISD::SETNE.

When compile llvm-test-suite with --march=rv64gcv -O3 -ffast-math,
Without this patch, foldVMergeToMask removes `441` PseudoVMERGE_VVM
instructions.
With this patch, foldVMergeToMask removes `794` PseudoVMERGE_VVM
instructions.


  Commit: ee6d9264da81173e13fcd266faa13aff6ee02613
      https://github.com/llvm/llvm-project/commit/ee6d9264da81173e13fcd266faa13aff6ee02613
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Error.h

  Log Message:
  -----------
  [orc-rt] Apply noexcept to newly fixed Expected::isFailureOfType. (#207106)


  Commit: c9721e602a350637449781746a8e58996c4969bc
      https://github.com/llvm/llvm-project/commit/c9721e602a350637449781746a8e58996c4969bc
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/abstract-cond.c
    M clang/test/CIR/CodeGen/agg-atomic-cast.c
    M clang/test/CIR/CodeGen/agg-expr-lvalue.c
    M clang/test/CIR/CodeGen/agg-init-constexpr.cpp
    M clang/test/CIR/CodeGen/aggregate-copy-overlap.cpp
    M clang/test/CIR/CodeGen/array.cpp
    M clang/test/CIR/CodeGen/atomic-libcall.c
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/complex-cast.cpp
    M clang/test/CIR/CodeGen/compound_literal.cpp
    M clang/test/CIR/CodeGen/consteval-aggregate.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/embed-expr.c
    M clang/test/CIR/CodeGen/global-decomp-decls.cpp
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/local-const-aggregate-name-clash.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/no-unique-address.cpp
    M clang/test/CIR/CodeGen/nrvo.cpp
    M clang/test/CIR/CodeGen/paren-init-list.cpp
    M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGen/static-local.cpp
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/temp-param-obj-decl.cpp
    M clang/test/CIR/CodeGen/three-way-cmp.cpp
    M clang/test/CIR/CodeGen/var-arg-aggregate.c
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    M clang/test/CIR/CodeGenCXX/new-array-init.cpp
    M clang/test/CIR/CodeGenCXX/sizeof-pack.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
    M clang/test/CIR/Lowering/array.cpp

  Log Message:
  -----------
  [CIR] Add alignment attributes to cir.copy (#206341)


  Commit: a8166e1c52c774129e23f5cee37c26161c116a84
      https://github.com/llvm/llvm-project/commit/a8166e1c52c774129e23f5cee37c26161c116a84
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/non-power-of-2-buildvector.ll

  Log Message:
  -----------
  [SLP][NFC] Add non-power-of-2 buildvector test (#206332)

For this PR: https://github.com/llvm/llvm-project/pull/206259


  Commit: 56b5db17f9d41edf9dd5e4988115998cdf390ffc
      https://github.com/llvm/llvm-project/commit/56b5db17f9d41edf9dd5e4988115998cdf390ffc
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Error.h

  Log Message:
  -----------
  [orc-rt] Apply noexcept to more Error.h APIs. (#207109)

These APIs are all unconditionally nothrow: their bodies either call
already-noexcept APIs, or move std::string / std::exception_ptr /
std::unique_ptr members whose move constructors are already noexcept.


  Commit: 39f1fb931f81d78c3ea9e9fb2ae0deefbdcb4922
      https://github.com/llvm/llvm-project/commit/39f1fb931f81d78c3ea9e9fb2ae0deefbdcb4922
  Author: 吴腾 <wutengaa at gmail.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/test/Sema/asm.c
    A clang/test/SemaCXX/inline-asm-aggregate-output.cpp

  Log Message:
  -----------
  [InlineAsm] Diagnose oversized non-scalar tied asm outputs (#206230)

The 'r' asm constraint binds an operand to a general-purpose register.
For tied inline asm operands, Clang may promote a smaller integer input
to match a larger non-scalar register output. Only allow that path when
the output size can be represented by an integer type that fits in a
general-purpose register.

Otherwise, diagnose with err_store_value_to_reg before CodeGen attempts
to lower the asm and crashes.

This keeps GPR-sized aggregate/class outputs accepted while rejecting
larger array, struct, union, complex, vector, and class outputs. Add
Sema coverage for the affected C and C++ cases.

Fixes #204775


  Commit: b92286474cafe7e4a51fe0c2f4163762bb1761e8
      https://github.com/llvm/llvm-project/commit/b92286474cafe7e4a51fe0c2f4163762bb1761e8
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/unittests/InProcessControllerAccessTest.cpp
    M orc-rt/unittests/SessionTest.cpp

  Log Message:
  -----------
  [orc-rt] Add Session::tryAttach, construct ControllerAccess in attach. (#207114)

Reworks Session's controller-attachment API so that clients no longer
construct or hold a ControllerAccess directly:

- attach<ControllerAccessT>(BI, Args...) now constructs the
ControllerAccess internally, passing *this as the first constructor
argument. Suitable for ControllerAccess implementations whose
construction cannot fail.

- tryAttach<ControllerAccessT>(BI, Args...) is the new fallible
counterpart to attach. It forwards *this and the given args to
ControllerAccessT::Create, which must return an
Expected<std::shared_ptr<ControllerAccessT>>. On success, proceeds to
call connect on the instance, otherwise returns the Error. This lets
implementations surface setup failures (e.g. failing to bind a socket)
synchronously as an Error, without ever handing back a
usable-but-unconnected object.

- The raw attach(shared_ptr<ControllerAccess>, BI) entry point becomes
the private implementation detail doAttach.

Also adds ControllerAccessTest.TryAttach{Success,Failure} covering the
new factory-based path, and updates existing call sites to the new API.


  Commit: 8ae4b199cfb0005e79abedd8ea5d2846d791208c
      https://github.com/llvm/llvm-project/commit/8ae4b199cfb0005e79abedd8ea5d2846d791208c
  Author: Henry Jiang <henry_jiang2 at apple.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/hoist-common-skip-pseudoprobe.ll
    M llvm/test/Transforms/SimplifyCFG/hoist-common-skip.ll

  Log Message:
  -----------
  [SimplifyCFG] Don't hoist a musttail call separately from the terminator (#207094)

SimplifyCFG can accidentally hoist `musttail` away from the `ret` if
`hoistCommonCodeFromSuccessor` skipped a differing instruction, causing
a misverify. So we need to guard the `musttail` call to make sure that the `ret` is
hoisted along with the call. This can only happen when no instruction
has been skipped so both successors be folded into the the predecessor,
leaving a valid `musttail` call.

Reproducer https://godbolt.org/z/3vsnz4hc7


  Commit: f122acf2d0b8c806bfa7be81aea0344bfd6fc225
      https://github.com/llvm/llvm-project/commit/f122acf2d0b8c806bfa7be81aea0344bfd6fc225
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/MSP430/CMakeLists.txt
    A llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp
    A llvm/lib/Target/MSP430/MSP430PassRegistry.def
    M llvm/lib/Target/MSP430/MSP430TargetMachine.h

  Log Message:
  -----------
  [MSP430] Add CodeGenPassBuilder

Needed to set up the pass pipeline for the NewPM.

Reviewers: asl

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


  Commit: b8a15b4f9559928061da4ba74d526e1c3998944d
      https://github.com/llvm/llvm-project/commit/b8a15b4f9559928061da4ba74d526e1c3998944d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/MSP430/MSP430.h
    M llvm/lib/Target/MSP430/MSP430BranchSelector.cpp
    M llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp
    M llvm/lib/Target/MSP430/MSP430PassRegistry.def
    M llvm/lib/Target/MSP430/MSP430TargetMachine.cpp

  Log Message:
  -----------
  [MSP430] Port MSP430BranchSelect to NewPM

Standard pass porting.

Reviewers: asl

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


  Commit: 981651d01e42081c4939202f072b8c52523b859d
      https://github.com/llvm/llvm-project/commit/981651d01e42081c4939202f072b8c52523b859d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp
    A llvm/lib/Target/MSP430/MSP430AsmPrinter.h
    M llvm/lib/Target/MSP430/MSP430CodeGenPassBuilder.cpp

  Log Message:
  -----------
  [MSP430] Port AsmPrinter to NewPM

Similar to Lanai (f3b58ad68cca340bdd12e3fd289048e5ecf0ad8d) and X86. Use
a separate header to be consistent with the other backends.

Reviewers: asl

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


  Commit: c78dd2fef98f7a5947bdf9be688bd0bf49b04821
      https://github.com/llvm/llvm-project/commit/c78dd2fef98f7a5947bdf9be688bd0bf49b04821
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/test/CodeGen/MSP430/selectcc.ll

  Log Message:
  -----------
  [PHIElimination] Preserve SlotIndexes even without LiveIntervals

There are some pipelines where we request SlotIndexes, but not
LiveIntervals before running PHIElimination. This happens in the MSP430
pipeline where StackColoring requests SlotIndexes, but nothing requests
LiveIntervals. Before PHIElimination would only update SlotIndexes
through LiveIntervals, which would mean we would fail to preserve
SlotIndexes if it was available but LiveIntervals was not. This would
cause crashes when later passes tried to use SlotIndexes under the
NewPM.

Reviewers: RKSimon, aeubanks, arsenm

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


  Commit: 672dfe90adb57d5b173d17b9f6a8b9f4c36cbb93
      https://github.com/llvm/llvm-project/commit/672dfe90adb57d5b173d17b9f6a8b9f4c36cbb93
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/MC/RISCV/priv-invalid.s
    M llvm/test/MC/RISCV/rv32h-invalid.s
    M llvm/test/MC/RISCV/rv64h-invalid.s

  Log Message:
  -----------
  [RISCV] Add HasStdExtH to hfence.gvma and hfence.vvma aliases (#207061)


  Commit: 4425cf1737520c6a6f071eb01ce5791c9e62303f
      https://github.com/llvm/llvm-project/commit/4425cf1737520c6a6f071eb01ce5791c9e62303f
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/test/MC/RISCV/rvv/invalid.s

  Log Message:
  -----------
  [RISCV] Rework vmsge(u).vx pseudos to work better with near-miss assembler support (#207097)

Previously we had 3 pseudos:
 vr destination with no mask
 vrnov0 destination with mask
 vr destination with mask and temporary dest

This was intended to prevent a v0 destination with mask and no
temporary. The vrnov0 case confused the near miss code and caused
multiple errors.

This patch reduces to 2 pseudos:
 vr destination with optional mask
 vr destination with mask and pseudo

The v0 destination with mask error is moved to validateInstruction which
allows us to give a better error.


  Commit: e8950f2a0fb22843dce304f20aff8940f4a6672c
      https://github.com/llvm/llvm-project/commit/e8950f2a0fb22843dce304f20aff8940f4a6672c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/pr206788.ll

  Log Message:
  -----------
  [RISCV] Constant fold bitcast of constant 0 in combineVectorSizedSetCCEquality. (#207112)

There seem to be some combinations of vector type and scalar type where
a bitcast of constant 0 doesn't get folded or type legalized to a
build_vector of 0 with the vector type we want. I think it's when the
integer type is 2*xlen and <2 x iXLen> is a legal type, but I'm not
sure.

I don't have any other tests to know if adding/improving a DAG combine
is worthwhile so I just did this quick fix at the source.


  Commit: f083dad787e4e8b339ce0e2dad418ec0ce28d8d9
      https://github.com/llvm/llvm-project/commit/f083dad787e4e8b339ce0e2dad418ec0ce28d8d9
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/test/TableGen/2010-03-24-PrematureDefaults.td
    M llvm/test/TableGen/AnonDefinitionOnDemand.td
    M llvm/test/TableGen/ClassInstanceValue.td
    M llvm/test/TableGen/Dag.td
    M llvm/test/TableGen/DefmInherit.td
    M llvm/test/TableGen/DefmInsideMultiClass.td
    M llvm/test/TableGen/FieldAccess.td
    M llvm/test/TableGen/ForwardRef.td
    M llvm/test/TableGen/LetInsideMultiClasses.td
    M llvm/test/TableGen/ListArgs.td
    M llvm/test/TableGen/ListArgsSimple.td
    M llvm/test/TableGen/ListConversion.td
    M llvm/test/TableGen/ListManip.td
    M llvm/test/TableGen/ListOfList.td
    M llvm/test/TableGen/ListSlices.td
    M llvm/test/TableGen/LoLoL.td
    M llvm/test/TableGen/MultiClass-def-fail.td
    M llvm/test/TableGen/MultiClass-defm-fail.td
    M llvm/test/TableGen/MultiClass-defm.td
    M llvm/test/TableGen/MultiClass.td
    M llvm/test/TableGen/MultiClassDefName.td
    M llvm/test/TableGen/MultiClassInherit.td
    M llvm/test/TableGen/MultiPat.td
    M llvm/test/TableGen/Paste.td
    M llvm/test/TableGen/SetTheory.td
    M llvm/test/TableGen/Slice.td
    M llvm/test/TableGen/SuperSubclassSameName.td
    M llvm/test/TableGen/TargetInstrInfo.td
    M llvm/test/TableGen/TargetInstrSpec.td
    M llvm/test/TableGen/TemplateArgRename.td
    M llvm/test/TableGen/Tree.td
    M llvm/test/TableGen/TreeNames.td
    M llvm/test/TableGen/TwoLevelName.td
    M llvm/test/TableGen/UnsetBitInit.td
    M llvm/test/TableGen/ValidIdentifiers.td
    M llvm/test/TableGen/arithmetic.td
    M llvm/test/TableGen/cast-typeerror.td
    M llvm/test/TableGen/cast.td
    M llvm/test/TableGen/code.td
    M llvm/test/TableGen/cond-bitlist.td
    M llvm/test/TableGen/cond-default.td
    M llvm/test/TableGen/cond-empty-list-arg.td
    M llvm/test/TableGen/cond-inheritance.td
    M llvm/test/TableGen/cond-let.td
    M llvm/test/TableGen/cond-list.td
    M llvm/test/TableGen/cond-subclass.td
    M llvm/test/TableGen/cond-type.td
    M llvm/test/TableGen/cond-usage.td
    M llvm/test/TableGen/condsbit.td
    M llvm/test/TableGen/dag-functional.td
    M llvm/test/TableGen/defmclass.td
    M llvm/test/TableGen/defset-typeerror.td
    M llvm/test/TableGen/defset.td
    M llvm/test/TableGen/empty.td
    M llvm/test/TableGen/eq.td
    M llvm/test/TableGen/eqbit.td
    M llvm/test/TableGen/exists-error-non-string.td
    M llvm/test/TableGen/exists-error-record.td
    M llvm/test/TableGen/exists-error-uninitialized.td
    M llvm/test/TableGen/exists.td
    M llvm/test/TableGen/field-access-initializers.td
    M llvm/test/TableGen/foldl.td
    M llvm/test/TableGen/foreach-eval.td
    M llvm/test/TableGen/foreach-leak.td
    M llvm/test/TableGen/foreach-multiclass.td
    M llvm/test/TableGen/foreach.td
    M llvm/test/TableGen/generic-tables-instruction.td
    M llvm/test/TableGen/generic-tables.td
    M llvm/test/TableGen/if-empty-list-arg.td
    M llvm/test/TableGen/if-type.td
    M llvm/test/TableGen/if-unresolved-cast.td
    M llvm/test/TableGen/if.td
    M llvm/test/TableGen/ifbit.td
    M llvm/test/TableGen/instances.td
    M llvm/test/TableGen/intrinsic-long-name.td
    M llvm/test/TableGen/intrinsic-varargs.td
    M llvm/test/TableGen/isa.td
    M llvm/test/TableGen/list-element-bitref.td
    M llvm/test/TableGen/match.td
    M llvm/test/TableGen/math.td
    M llvm/test/TableGen/name-resolution-consistency.td
    M llvm/test/TableGen/pr8330.td
    M llvm/test/TableGen/range-lists.td
    M llvm/test/TableGen/range-op.td
    M llvm/test/TableGen/searchabletables-intrinsic.td
    M llvm/test/TableGen/self-reference-recursion.td
    M llvm/test/TableGen/self-reference-typeerror.td
    M llvm/test/TableGen/self-reference.td
    M llvm/test/TableGen/size.td
    M llvm/test/TableGen/submulticlass-leteq.td
    M llvm/test/TableGen/submulticlass-typecheck.td
    M llvm/test/TableGen/subst.td
    M llvm/test/TableGen/subst2.td
    M llvm/test/TableGen/template-arg-dependency.td
    M llvm/test/TableGen/usevalname.td

  Log Message:
  -----------
  [NFC][LLVM] Remove `XFAIL: vg_leaks` from TableGen lit tests (#207016)


  Commit: 4cb3cef5a4e5ea1b3d9bb4f3cd8ae3951ac0f0d4
      https://github.com/llvm/llvm-project/commit/4cb3cef5a4e5ea1b3d9bb4f3cd8ae3951ac0f0d4
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/AST/Decl.h

  Log Message:
  -----------
  [clang][docs] Add \code comments around code in doc comments (#207116)


  Commit: 9c51ed38f1e25a5a9c3c766ed1b2b8198021b5dd
      https://github.com/llvm/llvm-project/commit/9c51ed38f1e25a5a9c3c766ed1b2b8198021b5dd
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-07-01 (Wed, 01 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/empty-type.ll

  Log Message:
  -----------
  [NVPTX] Add support for empty type params and returns (#207057)


  Commit: 091b20e78cc1a35ddea3d28df5288cedb4ae6ac7
      https://github.com/llvm/llvm-project/commit/091b20e78cc1a35ddea3d28df5288cedb4ae6ac7
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/MemoryRegionInfoCache.h
    M lldb/source/Target/MemoryRegionInfoCache.cpp

  Log Message:
  -----------
  [lldb] Use std::map in MemoryRegionInfoCache (#206986)

The RangeVector abstraction is slow w.r.t. amount of sorting it
requires, and it is particularly bad when sorting a MemoryRegionInfo, as
this object is expensive to move. All of this is aggravated in sanitizer
bots, where a handful of tests started timing out as a result of the
MemoryRegionInfoCache.

This commit fixes the situation by simplifying the code: just use a
std::map. Based on current usage, behaviour should be identical to
before. In particular, neither case addresses cases like this:

1. Insert range [100, 200]
2. Insert range [150, 160]
3. Query address 170.

In both cases we fail to find a cached range and proceed to query the
inferior again. Which is not incorrect, jut doesn't maximize the cache
usage.

A proper fix is to use an interval tree, with the assumption that if
overlapping ranges are inserted, they have the same memory region info
contents and we can just join the intervals.


  Commit: ad5add5fb62573fc1f139a40658d616e16a82625
      https://github.com/llvm/llvm-project/commit/ad5add5fb62573fc1f139a40658d616e16a82625
  Author: LeeYoungJoon <dog3hk.dev at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/AST/TypeProperties.td
    A clang/test/Modules/pr204479.cppm

  Log Message:
  -----------
  [clang][serialization] Fix crash on imported pack indexing type (#205965)

The selected index of a PackIndexingType was not serialized, so on
deserialization its canonical type was rebuilt as a dependent type,
crashing CodeGen.

Difference in `Ty` during `CodeGenTypes::ConvertType`
(https://github.com/llvm/llvm-project/blob/49cf5a7ba0ab76a1f700ce6407cea1713741bc01/clang/lib/CodeGen/CodeGenTypes.cpp#L415-L424)

### Before 
```cpp
PackIndexingType 0x142914680 'int' sugar
|-SubstTemplateTypeParmPackType 0x1429145a0 'Ts' dependent contains_unexpanded_pack imported typename depth 0 index 0 ... Ts
| |-TypeAliasTemplate 0x142914318 'element'
| `-TemplateArgument pack '<int>'
|   `-TemplateArgument type 'int'
|     `-BuiltinType 0x14401cf10 'int'
|-ConstantExpr 0x142914630 '__size_t':'unsigned long'
| |-value: Int 0
| `-ImplicitCastExpr 0x1429145f0 '__size_t':'unsigned long' <IntegralCast>
|   `-IntegerLiteral 0x1429145d0 'int' 0
`-SubstTemplateTypeParmType 0x142914650 'int' sugar imported typename depth 0 index 0 ... Ts pack_index 0 final
  |-TypeAliasTemplate 0x142914318 'element'
  `-BuiltinType 0x14401cf10 'int'
```

### After
```cpp
BuiltinType 0x14e02e710 'int'
```

I used AI assistance when writing the test code, but I personally
reviewed it. 🤖

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

---------

Co-authored-by: Younan Zhang <zyn7109 at gmail.com>


  Commit: e7924d50db0ae1c584c975fc4f274960d93c92d2
      https://github.com/llvm/llvm-project/commit/e7924d50db0ae1c584c975fc4f274960d93c92d2
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/CodeGenCXX/dllexport-ctor-closure.cpp
    M clang/test/CodeGenCXX/microsoft-abi-throw.cpp
    A clang/test/SemaCXX/ms-ctor-closure.cpp

  Log Message:
  -----------
  [clang] Handle constructor closures with consteval default args (#203554)

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

Just grabbing the default argument with `getDefaultArg()` during codegen
doesn't work if the expression requires evaluating a consteval
expression (see bug). Instead, we must properly BuildCXXDefaultArgExpr
it during Sema, store it in the AST (including
serialization/deserialization) and then use that during codegen.


  Commit: a5114abd0c022729fdc659dd0dfe14542b25aa85
      https://github.com/llvm/llvm-project/commit/a5114abd0c022729fdc659dd0dfe14542b25aa85
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__configuration/platform.h

  Log Message:
  -----------
  Revert "[libc++] Move threading and random device config into <__configuration/platform.h>" (#207134)

There were CI failures that I missed when merging.

Reverts llvm/llvm-project#206262


  Commit: 9b631e7f24484d1549b24c89b1a59698a201949b
      https://github.com/llvm/llvm-project/commit/9b631e7f24484d1549b24c89b1a59698a201949b
  Author: David Truby <david.truby at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/lib/Target/AArch64/AArch64CallingConvention.td
    M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
    M llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll

  Log Message:
  -----------
  [Windows][Arm64EC] Enable thunk generation for bfloat16 (#206710)

This patch enables thunk generation for functions that take and return
bfloat16 types. These types live in the same registers as fp16 types in
both Arm64 and x86 so we just need the same behaviour as for fp16.

Assisted-by: codex (gpt-5.5)
Co-authored-by: nick.dingle at arm.com


  Commit: b25e5be70aa7d335f07d95b4484e5638544f0f98
      https://github.com/llvm/llvm-project/commit/b25e5be70aa7d335f07d95b4484e5638544f0f98
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/test/Analysis/analyzer-config.c
    A clang/test/Analysis/malloc-failure.c

  Log Message:
  -----------
  [clang][analyzer] Add allocation failure modeling to DynamicMemoryModeling (#205371)

New option is added to the checker to create branches with null return
value from memory allocations (off by default).


  Commit: efb601925afb30ae0205dea008ae72c39fc58485
      https://github.com/llvm/llvm-project/commit/efb601925afb30ae0205dea008ae72c39fc58485
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/insert-subvector.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/extract-vector-elt.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add legalisation for G_INSERT_SUBVECTOR (#205349)

Previously, G_INSERT_SUBVECTOR has no legalisation logic.
To fix, legalise G_INSERT_SUBVECTOR into one of these collections of
instructions:
1. If Vector V is double the size of subvector W:
insert_subvector(V, W, idx) -> concat(W, extract(correct half of V)).
2. V is NOT double the size of W:
insert_subvector(V, W, idx) -> shuffle(V, W, Mask).

Note that the generated code is not as optimal as that produced by SDAG.


  Commit: 1fac729d59897a3366937a276b4201a96f80b225
      https://github.com/llvm/llvm-project/commit/1fac729d59897a3366937a276b4201a96f80b225
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/RegAllocPBQP.cpp
    M llvm/lib/CodeGen/RegisterClassInfo.cpp
    M llvm/lib/CodeGen/RegisterScavenging.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Move getRawAllocOrder to TargetRegInfo (#207124)

For most TargetRegisterClasses, the allocation order function is null
and we try to avoid pointer members in constants, so move the order
function to the TargetRegisterInfo to avoid the pointer member and
shrink the data structure.


  Commit: b2c506061f8f05dcc6c4c03a9e7cfdfc82377c12
      https://github.com/llvm/llvm-project/commit/b2c506061f8f05dcc6c4c03a9e7cfdfc82377c12
  Author: Zhige Chen <zhige_chen at outlook.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Clarify cttz.elts returns poison for undersized result types (#206970)

Update the LangRef for `llvm.experimental.cttz.elts` and
`llvm.vp.cttz.elts` to state that an undersized return type produces
poison rather than UB, matching the intrinsic's speculatable behavior.

See also
https://github.com/llvm/llvm-project/pull/206899#discussion_r3504289653.


  Commit: 855443d4be625e68d30addccb36b4824a54a7ac9
      https://github.com/llvm/llvm-project/commit/855443d4be625e68d30addccb36b4824a54a7ac9
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

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

  Log Message:
  -----------
  [RuntimeLibcalls] Use a multiclass for all libm impls (NFC) (#148349)

`LibmLongDoubleLibcalls` currently handles generating definitions for
the three long double variants, but `F32` and `F64` always get a written
definition. Simplify this by changing `LibmLongDoubleLibcalls` to
`LibmLibcallImpls` that also expands `F32` and `F64`.

As part of this, `LibmLibcallImpls` can take a function name with an `X`
placeholder, to be replaced with the float type suffix. This allows the
multiclass to also be used for libcalls with the suffix in the middle
rather than strictly at the end.


  Commit: ea4ad685e400ddf60cf336225bd5bd6274369c16
      https://github.com/llvm/llvm-project/commit/ea4ad685e400ddf60cf336225bd5bd6274369c16
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [LV] Regenerate RISC-V interleaved-cost.ll with UTC. NFC (#207138)

Also don't have an individual RUN for each of the
+optimized-nfX-segment-load-store, just have an optimized and
unoptimized RUN for scalable and fixed VFs each.


  Commit: 88bf28094ec315d164f975e59e9b96641d801af8
      https://github.com/llvm/llvm-project/commit/88bf28094ec315d164f975e59e9b96641d801af8
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/fstream
    A libcxx/test/benchmarks/streams/fstream.bench.cpp
    R libcxx/test/benchmarks/streams/ofstream.bench.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/filebuf/traits_mismatch.verify.cpp
    M libcxx/test/libcxx/input.output/file.streams/fstreams/traits_mismatch.verify.cpp
    M libcxx/test/std/input.output/file.streams/fstreams/ifstream.members/xsgetn.pass.cpp

  Log Message:
  -----------
  Reapply "[libc++] Optimize fstream::read" (#206453)

This was reverted due to causing crashes if an ifstream wasn't opened.
This patch addresses this issue by simply checking whether the `__file_`
handle is null, and if it is simply fall back to the generic
implementation.

Fixes #168628
Fixes #205845

This reverts commit 347512ff38748ac6ebfacbfda172edb5cf1edbe2.


  Commit: 6a3359fefb8443af1b897e32f0f18dc5c00aac39
      https://github.com/llvm/llvm-project/commit/6a3359fefb8443af1b897e32f0f18dc5c00aac39
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M libcxx/include/future
    A libcxx/test/std/thread/futures/futures.task/destruction_order.pass.cpp

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_COMPRESSED_PAIR from packaged_task (#200642)


  Commit: f1454e0005a0ff83601573da2abbbc87ea670a33
      https://github.com/llvm/llvm-project/commit/f1454e0005a0ff83601573da2abbbc87ea670a33
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [LV] Inline llvm-lit DEFINEs in interleaved-cost.ll NFC (#207143)

Turns out update_analyze_test_checks.py doesn't really like the
DEFINEs, which causes some subsequent updates to have CHECK lines
erroneously merged.


  Commit: 75e0516da874501d7bb3417b7364a452827dea93
      https://github.com/llvm/llvm-project/commit/75e0516da874501d7bb3417b7364a452827dea93
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

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

  Log Message:
  -----------
  [lldb][Windows] Return EOF from PipeWindows::Read on a closed write end (#207017)

A closed pipe write end is EOF, not an error. On POSIX, `read()` returns
0, but on Windows `ReadFile` fails with `ERROR_BROKEN_PIPE`. The
lldb-server `gdbserver/platform` pipe synchronization in
`GDBRemoteCommunication::StartDebugserverProcess` reads the pipe until
EOF, so without this it sees an error instead of EOF and reports the
sync as failed.

Translate both broken-pipe conditions to a zero-length read so
cross-platform callers can detect EOF uniformly.

rdar://180736036


  Commit: d59fe9e1d3d6e52d662f62cdc0f12599ac505e0a
      https://github.com/llvm/llvm-project/commit/d59fe9e1d3d6e52d662f62cdc0f12599ac505e0a
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Arm64ECCallLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64ec-entry-thunks.ll
    M llvm/test/CodeGen/AArch64/arm64ec-exit-thunks.ll
    M llvm/test/CodeGen/Generic/fp128-exp10-libcall.ll
    M llvm/test/CodeGen/Generic/fp128-math-libcalls.ll

  Log Message:
  -----------
  [Arm64EC] Add support for `fp128` (#206980)

fixes https://github.com/llvm/llvm-project/issues/94434

Analogue to https://github.com/llvm/llvm-project/pull/152843 but for
`fp128`.

Testing is a bit thin still, we need to fix some other problems like
https://github.com/llvm/llvm-project/issues/144006 so that the arm64ec
target can be added to more tests.


  Commit: 6f9ac38b7c1934fbce49683e32c732c73e5e1ab4
      https://github.com/llvm/llvm-project/commit/6f9ac38b7c1934fbce49683e32c732c73e5e1ab4
  Author: Xavier Roche <roche at httrack.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M libcxx/test/std/numerics/bit/byteswap.verify.cpp

  Log Message:
  -----------
  [libc++][test] Cover byteswap _BitInt padding on every ABI with width 72 (#206360)

`std::byteswap` is required to reject integer types that have padding
bits, and one test case checks that it does. The case used `unsigned
_BitInt(96)`, but #205295 had to skip it on 32-bit x86. On the i386
System V ABI, `_BitInt(96)` is exactly 12 bytes with no padding, so
`std::byteswap` accepts it and the expected error never fires. The skip
used `!defined(__i386__)`, a target name that stands in for an object
layout the preprocessor cannot see.

This change uses `unsigned _BitInt(72)` instead. Its 9 value bytes round
up to 12 bytes on 32-bit x86 and 16 bytes everywhere else, so the type
always has padding and `std::byteswap` always rejects it. The case now
runs on every target, 32-bit x86 included, with no target guard.

Follows up on #205295.

Assisted-by: Claude (Anthropic)

---------

Co-authored-by: Claude Opus 4.6 <noreply at anthropic.com>
Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: 2523d725d156f50973c4192137ffdd308913c267
      https://github.com/llvm/llvm-project/commit/2523d725d156f50973c4192137ffdd308913c267
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMInstrThumb.td
    M llvm/test/CodeGen/ARM/machine-outliner-thunk-tcgpr.mir

  Log Message:
  -----------
  [ARM] Change register class of tTAILJUMPr's destination (#206763)

This patch changes the register class of tTAILJUMPr's destination from
tcGPR to GPR.

tTAILJUMPr is lowered into a BX (branch-and-exchange) with a register
operand. This instruction has no restrictions about its register
operand, therefore the previous limitation to tcGPR was too tight.

The important consequence of this change is in the machine outliner for
ARM. With this change, code sequences that terminate with a tBLXr can be
outlined regardless of the register used as operand. Before, if the
register used was callee saved, that is, not in tcGPR, the outliner gave
up. The outlining process replaces the call (BLX) by a tail call (BX).

This replacement can be problematic if the callee saved registers are
not properly restored before the tail call. However, one important
detail to mention is that tTAILJUMPr is created during pseudo
instruction expansion, which in turn takes place after register
allocation and prologue/epilogue insertion. By this point, the
replacement is safe because the epilogue will already have been properly
laid out.

Assisted-by: codex. It was used to help in the creation of tests.


  Commit: 9db1a29384dd505b6acd432a039f5c778ef42992
      https://github.com/llvm/llvm-project/commit/9db1a29384dd505b6acd432a039f5c778ef42992
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_types.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_types_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_types.cpp

  Log Message:
  -----------
  [Dexter] Add !type and !type/all nodes to test variable types (#204159)

This patch adds the second kind of variable expect, !type, which tests
the type of a variable as reported by the debugger. As with !value, this
is a string comparison of the debugger output with the script expected
value - this means that even if two types are identical (e.g. typedef),
a !type node will only match the one that the debugger displays by
default.

Script writing and aggregates work the same for !type as for !value, and
the metrics reported are largely similar, with the exception that
"unexpected", "seen", and "missing" metrics are reported separately for
values and types.


  Commit: ce787718c3c82255825ebe5f95740c24df55f7d0
      https://github.com/llvm/llvm-project/commit/ce787718c3c82255825ebe5f95740c24df55f7d0
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp
    A llvm/test/MC/AArch64/hinte-diagnostics.s
    A llvm/test/MC/AArch64/hinte.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64][llvm] Add support for FEAT_HINTE for Armv9.6 onwards (#206905)

Add support for `FEAT_HINTE`, as defined in the Arm ARM M.c edition[1]

This defines the Extended Hint instruction space. `FEAT_HINTE` is
optional from Armv9.0, and mandatory from Armv9.6.

Add MC coverage for assembly, disassembly, diagnostics, generic sysreg
fallback behavior, Clang driver handling, and target parser extension
mapping.

[1] https://developer.arm.com/documentation/ddi0487/latest


  Commit: b385e9f625b0b1dce6f46cc8290d00723a0c4941
      https://github.com/llvm/llvm-project/commit/b385e9f625b0b1dce6f46cc8290d00723a0c4941
  Author: Jan Schultke <me at eisenwave.net>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/test/FixIt/fixit-unicode-named-escape-sequences.c
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Lexer/unicode.c
    M clang/www/cxx_status.html
    M llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
    M llvm/unittests/Support/UnicodeTest.cpp
    M llvm/utils/UnicodeData/UnicodeNameMappingGenerator.cpp

  Log Message:
  -----------
  [clang] Implement P3733R1 (#203944)

In all C++ language modes, as a DR


  Commit: 4f11992ff68d3d872fe72317675b29343d10c1fe
      https://github.com/llvm/llvm-project/commit/4f11992ff68d3d872fe72317675b29343d10c1fe
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Trace/intel-pt/TraceIntelPTBundleSaver.cpp

  Log Message:
  -----------
  [lldb] Fix build after FileSpec::GetDirectory() ConstString removal (#207073)

FileSpec::GetDirectory() now returns llvm::StringRef instead of
ConstString, so the .GetStringRef() call no longer compiles.

Regressed by f9b5264523b1 ("[lldb] Remove ConstString getters from
FileSpec", #206802).

failed with
```

/build/source/lldb/source/Plugins/Trace/intel-pt/TraceIntelPTBundleSaver.cpp:276:44: error: no member named 'GetStringRef' in 'llvm::StringRef'
  276 |         path_to_copy_module.GetDirectory().GetStringRef());
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
1 error generated.
```


  Commit: 924f9e30a3f69f6aff0844bdbb76e49811a87692
      https://github.com/llvm/llvm-project/commit/924f9e30a3f69f6aff0844bdbb76e49811a87692
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/intrinsic-vector-match-sve2.ll
    M llvm/test/CodeGen/AArch64/sve-pred-log.ll
    M llvm/test/CodeGen/AArch64/sve-split-int-pred-reduce.ll

  Log Message:
  -----------
  [LLVM][CodeGen][SVE] Add isel patterns for predicate "and a, (op b, c)" sequences. (#206751)

SVE predicate logical operations are predicated and thus effectively
work as is their operation is not predicated but then anded with another
predicate.


  Commit: d05ff6fff1c289f91719f726700e4d8c425c3f16
      https://github.com/llvm/llvm-project/commit/d05ff6fff1c289f91719f726700e4d8c425c3f16
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64InstPrinter.h
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
    M llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h
    M llvm/test/MC/AArch64/armv8.2a-statistical-profiling.s
    M llvm/test/MC/AArch64/armv8.4a-trace-error.s
    M llvm/test/MC/AArch64/armv8.4a-trace.s
    M llvm/test/MC/AArch64/armv8.5a-bti.s
    A llvm/test/MC/AArch64/armv9.6a-pcdphint-diagnostics.s
    M llvm/test/MC/AArch64/armv9.6a-pcdphint.s
    M llvm/test/MC/AArch64/armv9.7a-memsys.s
    M llvm/test/MC/AArch64/basic-a64-instructions.s
    M llvm/test/MC/AArch64/ras-extension.s
    M llvm/test/MC/AArch64/speculation-barriers.s

  Log Message:
  -----------
  [AArch64][llvm] Implement HINT instructions as aliases (NFC) (#206383)

Implement these `HINT`-space encodings as aliases of `HINT`
instead of dedicated instructions:
  * bti
  * psb
  * stshh
  * stcph
  * shuh
  * tsb

Use normal generated InstAlias parsing for these forms. The option
operands are parsed with `parseKeywordOperand` and are
canonicalized to preserve the existing case-insensitive assembly syntax.

Remove the now-unused `PSB`, `BTI`, `CMH`, `PHint` and `TSB` tablegen
definitions, operand classes, parser hooks and printer helpers.

Also tighten the `BTI` check to match the exact `BTI HINT` encodings:
32, 34, 36 and 38. The previous bitmask check missed plain `BTI/BTI R`
and could match non-BTI HINT immediates.

The only intended test change is a diagnostic wording change to
`armv8.4a-trace-error.s` for invalid `tsb csync` operands, since the
code now uses the common error message codepath:
```
- //CHECK-ERROR: error: 'csync' operand expected
+ //CHECK-ERROR: error: invalid operand for instruction
```

Apart from this, no other test code was modified; only new tests added.


  Commit: 5f094a2734d7be1fa280b1ab15637847b728851d
      https://github.com/llvm/llvm-project/commit/5f094a2734d7be1fa280b1ab15637847b728851d
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp

  Log Message:
  -----------
  [DAGCombiner][NFC] Use `m_Value(N, Pattern)` overload to simplify matching (#207154)

Replace the `m_AllOf(Pattern, m_Value(N))` idiom (match-and-bind) with
the
`m_Value(N, Pattern)` overload throughout `DAGCombiner`, and fold
standalone
negative `sd_match` checks into the pattern via `m_Unless` where
applicable.


  Commit: 8b10c2e17a4fac8198baf097e0ae37e3dfedd282
      https://github.com/llvm/llvm-project/commit/8b10c2e17a4fac8198baf097e0ae37e3dfedd282
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/Modules/embed-files-compressed.cpp

  Log Message:
  -----------
  [modules][test] Loosen size check in embed-files-compressed.cpp (#206879)

zlib-ng 2.3.2 on SpacemiT K3 compresses the repetitive input slightly worse than
zlib (~84KB vs ~67KB), exceeding the 80KB bound. Raise it to 100KB.

Assisted-by: claude-opus


  Commit: 5b70c3eeb79f634fd57ce19e21c678de2636ffa2
      https://github.com/llvm/llvm-project/commit/5b70c3eeb79f634fd57ce19e21c678de2636ffa2
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-unroll-options.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Add missing dependent dialect to TestVectorUnrollingPatterns (#207113)

Add `vector::VectorDialect` to `getDependentDialects()` for
`TestVectorUnrollingPatterns`. Previously, `arith.addf` test passed only
because the vector dialect was indirectly loaded via other vector tests
in the same `MLIRContext`. With `split-input-file`, each test runs in an
isolated context, causing failures due to the missing vector dialect.
Fixes #206921.


  Commit: 2d1dd6c182cd1355e08319f256c81c9414334a0a
      https://github.com/llvm/llvm-project/commit/2d1dd6c182cd1355e08319f256c81c9414334a0a
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/docs/CodingStandards.md

  Log Message:
  -----------
  [LLVM][CodingStandard] More guidance for constants (#206972)

LLVM's startup overhead is dominated by page faults caused by global
constructors (most notably cl::opt, but also some other globals (likely
inadvertantly)) and relocations. Therefore:

- Be more explicit about inadvertant global constructors and recommend
  using constexpr to initialize constant global variables.

- Discourage the addition of globals that cause relocations.


  Commit: 305dd8773f938a65b020b82ae803f86de2c5ac22
      https://github.com/llvm/llvm-project/commit/305dd8773f938a65b020b82ae803f86de2c5ac22
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py

  Log Message:
  -----------
  [lldb][Windows] Mark test as expected failure (#207153)

In f31853255c300e07b93783425e40948cc0dfdb0f, this test was marked as
expected failure only when running with `lldb-server.exe`. It shoulds
not have been, it is still failing. Revert the decorator to
`expectedFailureWindows`.


  Commit: a617ee3307ce1f183e9593ac08c5ddfaf914d1c9
      https://github.com/llvm/llvm-project/commit/a617ee3307ce1f183e9593ac08c5ddfaf914d1c9
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    M llvm/unittests/Target/AArch64/AArch64SVESchedPseudoTest.cpp

  Log Message:
  -----------
  [LLVM][CodeGen][SVE] Add ElementSize information to pseudo instructions. (#206133)

https://github.com/llvm/llvm-project/pull/204820 is making more use of
an SVE instruction's element size. To make best use of this the pseudo
instructions need to carry the same information because the pass is run
before expansion. This PR adds the necessary data and updates
AArch64SVESchedPseudoTest to verify the data matches the real
instruction it represents.


  Commit: 938751d785901445e263568f529d54f1e7171066
      https://github.com/llvm/llvm-project/commit/938751d785901445e263568f529d54f1e7171066
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp

  Log Message:
  -----------
  [Dexter] Allow matching lists of values for aggregate members (#204160)

This patch slightly extends the matching of aggregate members to allow
for lists of expected values for individual functioning the same as
lists of expected values for scalar values. This is accomplished by
recursively calling `get_expect_match` instead of `DebuggerExpectMatch`,
which contains logic for matching against all possible expected values
and selecting the best match (and committing any associated context
changes, e.g. modified address labels).


  Commit: 48a004672bbff735569f037f85211c7c472aa5a0
      https://github.com/llvm/llvm-project/commit/48a004672bbff735569f037f85211c7c472aa5a0
  Author: Łukasz Plewa <lukasz.plewa at intel.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/common/Environment.cpp

  Log Message:
  -----------
  [offload] check olInit and olShutDown error in unittests initialisation (#206764)

if olInit fails, it leaves liboffload in an inconsistent state (proper
cleanup will be addressed in a follow-up patch). This can lead to
seemingly unrelated test failures (e.g. the host device is missing).
This patch makes such tests fail immediately with a clear error message.


  Commit: e8e379ef1ebc67cd2a307db0de8f5ad45cb81101
      https://github.com/llvm/llvm-project/commit/e8e379ef1ebc67cd2a307db0de8f5ad45cb81101
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h

  Log Message:
  -----------
  [LLD][COFF] Factor out addObjectFile (NFC) (#206811)

Avoid parsing the input COFF file twice: first, implicitly, in
findBitcodeInObject and later when creating the ObjFile instance. Create
the COFFObjectFile earlier and use it for both the findBitcodeInObject
call and ObjFile creation. It's also preparation for handling hybrid
ARM64X object files.


  Commit: 43082d6efa9c819a7b4ddf4ecfa963748caa82de
      https://github.com/llvm/llvm-project/commit/43082d6efa9c819a7b4ddf4ecfa963748caa82de
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/StaticAnalyzer/Core/Analyses.def
    M clang/test/Analysis/missing-z3-nocrash.c
    M clang/test/Analysis/z3/D83660.c
    M clang/test/Analysis/z3/pretty-dump.c
    M clang/test/Analysis/z3/z3-unarysymexpr.c

  Log Message:
  -----------
  [analyzer] Rename z3 constraint manager backend to unsupported-z3 (#205370)

The Z3 constraint manager backend (selected via
-analyzer-constraints=z3) is unmaintained and known to crash on
real-world input. Rename the user-facing flag to unsupported-z3 and
reword its description so users see up front that the backend is
unsupported and crash-prone -- patches welcome, crash reports are not.

Assisted-By: claude


  Commit: ce2a9c35e9263c5f88b4d741e3d1b54afd89d7bd
      https://github.com/llvm/llvm-project/commit/ce2a9c35e9263c5f88b4d741e3d1b54afd89d7bd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-shuf.ll
    M llvm/test/CodeGen/X86/haddsub.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll

  Log Message:
  -----------
  [X86] Sync scalar hadd/hsub tests between the middle-end and backend (#207163)

Update some more PhaseOrdering/CodeGen test pairs to ensure we're testing what the backend will actually see

Help towards #143000


  Commit: e08041c787295bb5c5c004453d771473142207af
      https://github.com/llvm/llvm-project/commit/e08041c787295bb5c5c004453d771473142207af
  Author: Konrad Kleine <kkleine at redhat.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

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

  Log Message:
  -----------
  Upload man pages with attestation (#204852)

This first uploads the man pages as a workflow artifact. Then in another
job which requires more permissions than we want to give to the build
job, the man pages are uploaded as a release asset with attestation.


  Commit: 329674f4f4dd08905f456eb7eceeb49770152a38
      https://github.com/llvm/llvm-project/commit/329674f4f4dd08905f456eb7eceeb49770152a38
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/InstCombine/AArch64/sve-pairwise-add-long.ll

  Log Message:
  -----------
  [AArch64][InstCombine] Combine add with [su]adalp intrinsics (#204796)

It can happen that the [su]adalp uses a zero accumulator and its result
is used as an operand into an ADD instruction. We can fold those.

add(adalp(%pred, zeroinitializer, %in), %acc)
-->
adalp(%pred, %acc, %in)


  Commit: a62d8e068fe04e9edc870f184d7ed635811eb1f1
      https://github.com/llvm/llvm-project/commit/a62d8e068fe04e9edc870f184d7ed635811eb1f1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Reject functions with invalid parameters (#207157)

They will just cause problems later when calling them.


  Commit: 73cfa6bf6855b3bd7e8a87569969888cf95d0962
      https://github.com/llvm/llvm-project/commit/73cfa6bf6855b3bd7e8a87569969888cf95d0962
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SCCPSolver.cpp
    R llvm/test/Transforms/SCCP/bitcast-vector-refinement.l.ll
    A llvm/test/Transforms/SCCP/vector-refinement.ll

  Log Message:
  -----------
  [SCCP] Avoid markConstant() in more places (#206494)

This extends the fix from 991455e69e93c0ce88e927eddd28a9ab34d1f8b2 to
two more places. In both of these, we can run into the same situation
where we first mark as constant with a vector that has poison values,
and then again without poison elements, resulting in an assertion
failure.

(An alternative would be to change markConstant() to allow calls with
different constant if the new constant is a vector that only refines
some previously poison elements?)


  Commit: 08016b2dbd1d93a3c5f00ec6cb0ffc46a55d6bf8
      https://github.com/llvm/llvm-project/commit/08016b2dbd1d93a3c5f00ec6cb0ffc46a55d6bf8
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/phaddsub.ll

  Log Message:
  -----------
  [X86] phaddsub.ll - add SSE2/SSE3 test coverage (#207179)

Ensure integer HADD/SUB instructions don't get generated without SSSE3 and that the codegen isn't entirely terrible


  Commit: 3996867e69047fc5ec8aa95bfe06eb153696bdd2
      https://github.com/llvm/llvm-project/commit/3996867e69047fc5ec8aa95bfe06eb153696bdd2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-2.ll

  Log Message:
  -----------
  [X86] haddsub-2.ll - remove duplicate scalar tests (#207183)

These vectorisation tests exist in PhaseOrdering/X86/hadd.ll and
PhaseOrdering/X86/hsub.ll and the result shuffle tests exist in
CodeGen/X86/haddsub.ll and CodeGen/X86/phaddsub.ll

Help towards #143000


  Commit: 21f21d1cbb182907c2bc01fa3d4896b27c71f71a
      https://github.com/llvm/llvm-project/commit/21f21d1cbb182907c2bc01fa3d4896b27c71f71a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV] Use VECREDUCE_OR instead of VP_REDUCE_OR in combineVectorSizedSetCCEquality. NFCish (#207122)

VECREDUCE_OR doesn't require a VL or mask. We generally don't create VP
operations for fixed vectors.

This should produce the same result in most case, but I can't guarantee
it's completely NFC


  Commit: 846f3250ff859130d1d4db8a60461e61c51b5cef
      https://github.com/llvm/llvm-project/commit/846f3250ff859130d1d4db8a60461e61c51b5cef
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/test/MC/RISCV/corev/XCVmem-invalid.s

  Log Message:
  -----------
  [RISCV] Use simm12 instead of simm12_lo for CORE-V post-increment load/store. (#207067)

This operand is an immediate representing how much to adjust the pointer
by after the load/store. Having a symbol address here doesn't make
sense.


  Commit: 507108edb62722b0f8bebf11133722d6689c0b65
      https://github.com/llvm/llvm-project/commit/507108edb62722b0f8bebf11133722d6689c0b65
  Author: disservin <disservin.social at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Parse/ParseStmt.cpp

  Log Message:
  -----------
  [clang] Fix enum/non-enum conditional warning in ParseStmt (#207085)

Use Scope::NoScope instead of 0, fixes
```
llvm-project/clang/lib/Parse/ParseStmt.cpp:1744:57: warning: enumerated and non-enumerated type in conditional expression [-Wextra]
 1744 |   unsigned ScopeFlags = Scope::ControlScope | (C99orCXX ? Scope::DeclScope : 0);
```


  Commit: dab5d92f36fff2149f55e8dd7108522f4104cb62
      https://github.com/llvm/llvm-project/commit/dab5d92f36fff2149f55e8dd7108522f4104cb62
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-2.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll

  Log Message:
  -----------
  [X86] haddsub-2.ll - sync scalar "not" hsub tests between the middle-end and backend (#207192)

Replace the codegen scalar tests with the IR that middle-end actually generates

Help towards #143000


  Commit: 142d555b62e8d364aeb066c4f459e534d12df095
      https://github.com/llvm/llvm-project/commit/142d555b62e8d364aeb066c4f459e534d12df095
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp

  Log Message:
  -----------
  [Dexter] Add ability to check float values within a range (#204161)

Adds a new node type, !float, which can be used to match debugger ouptut
as
float values rather than as strings, optionally allowing a range to be
specified for inexact matches. This new node allows a list of values to
be
given, effectively a shorthand for a list of individual !float nodes.


  Commit: 8f18d86a33e4a2fa56d081d30ff35504dddf0119
      https://github.com/llvm/llvm-project/commit/8f18d86a33e4a2fa56d081d30ff35504dddf0119
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp

  Log Message:
  -----------
  [OpenACC] Fix reduction var equality check for member variables (#207196)

OpenACC requires we check that a variable have the same operator in all
nested constructs with a reduction. The implementation for this checks
everything I could think of, but I apparently missed member expressions.
This patch adds checks for that as well as 'this' so we should correctly
get the checks.

Fixes: #207180


  Commit: 6c5fa602151f8def92b024a162960db8408a71a6
      https://github.com/llvm/llvm-project/commit/6c5fa602151f8def92b024a162960db8408a71a6
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/UnreachableEliminate.ll

  Log Message:
  -----------
  [SimplifyCFG] Avoid calling `paramHasNonNullAttr` on a ptr vector argument (#207195)

After
https://github.com/llvm/llvm-project/commit/f8467698d8cdbac6e02cdc1aab643d1ac733ec19,
`ConstantPointerNull` also represents a null ptr vector. However,
`paramHasNonNullAttr` only accepts scalar pointer arguments.

Closes https://github.com/llvm/llvm-project/issues/207188.


  Commit: fc1565f89eaff7b4594186793cbb04862660ecff
      https://github.com/llvm/llvm-project/commit/fc1565f89eaff7b4594186793cbb04862660ecff
  Author: Yihan Wang <yronglin777 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/test/SemaCXX/type-traits-incomplete.cpp

  Log Message:
  -----------
  [clang] Check `T` and `U` operands of __reference_constructs_from_temporary are complete types (#206703)

This PR fix a bug introduce by
https://github.com/llvm/llvm-project/pull/206527.

[type.traits] Precondition : "T and U shall be complete types, cv void,
or arrays of unknown bound first.

The check for which
[#206527](https://github.com/llvm/llvm-project/pull/206527.) disables if
the first argument isn't a reference type.

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 4df00678d86feafefcd953db317c80241b691d53
      https://github.com/llvm/llvm-project/commit/4df00678d86feafefcd953db317c80241b691d53
  Author: Ganesh <Ganesh.Gopalasubramanian at amd.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/avx512bmmintrin.h
    A clang/lib/Headers/avx512bmmvlintrin.h
    M clang/lib/Headers/immintrin.h
    A clang/test/CodeGen/X86/avx512bmm-builtins.c
    A clang/test/CodeGen/X86/avx512bmmvl-builtins.c
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrPredicates.td
    M llvm/lib/Target/X86/X86IntrinsicsInfo.h
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    A llvm/test/CodeGen/X86/avx512bmm-vbitrevb-bitreverse.ll
    A llvm/test/CodeGen/X86/avx512bmm-vbitrevb-intrinsics-mem.ll
    A llvm/test/CodeGen/X86/avx512bmm-vbitrevb-intrinsics.ll
    A llvm/test/CodeGen/X86/avx512bmm-vbmac-intrinsics.ll
    A llvm/test/MC/Disassembler/X86/avx512bmm-32.txt
    A llvm/test/MC/Disassembler/X86/avx512bmm-64.txt
    A llvm/test/MC/X86/avx512bmm-32-att.s
    A llvm/test/MC/X86/avx512bmm-32-intel.s
    A llvm/test/MC/X86/avx512bmm-64-att.s
    A llvm/test/MC/X86/avx512bmm-64-intel.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [X86] Add AVX512BMM support for AMD Zen 6 (znver6) (#182556)

This patch adds support for AVX512BMM (Bit Matrix Multiply) instruction
set extension for AMD Zen 6 processors.

AVX512BMM includes three instructions:
 - VBITREVB: Bit reverse within each byte
 - VBMACOR: Bit matrix multiply with OR accumulation
 - VBMACXOR: Bit matrix multiply with XOR accumulation 
The following implementations for AVX512BMM are added:
 - Define __AVX512BMM__ macro for znver6
 - avx512bmmintrin.h, avx512bmmvlintrin.h header files
 - Implement _mm_bitrev_epi8, _mm256_bitrev_epi8, _mm512_bitrev_epi8
 - Implement _mm256/512_bmacor16x16x16 and bmacxor intrinsics


  Commit: 78cbc45ce96334c83067fb698fb4f63a7f7899d5
      https://github.com/llvm/llvm-project/commit/78cbc45ce96334c83067fb698fb4f63a7f7899d5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll

  Log Message:
  -----------
  [X86] haddsub-undef.ll - rename undef functions to match equivalents in phaseordering tests (#207207)

Still some churn / regressions to address, but this is the same IR as
we're attempting in PhaseOrdering/X86/hadd.ll

Still need to update them to the vectorized IR from the middle-end


  Commit: dd4703ea0d262f1942879f0ecae669e52a95a270
      https://github.com/llvm/llvm-project/commit/dd4703ea0d262f1942879f0ecae669e52a95a270
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/test/API/commands/process/attach/TestProcessAttach.py

  Log Message:
  -----------
  [lldb][test] Always kill test processes (#207181)


  Commit: 25680b7d00dffc3ca3dd23d931d7784cf71d74f3
      https://github.com/llvm/llvm-project/commit/25680b7d00dffc3ca3dd23d931d7784cf71d74f3
  Author: Jacob Crawley <jacob.crawley at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-with-predicate-epilogue.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-with-predicate.ll

  Log Message:
  -----------
  [LV] Handle partial reductions with predication (#194859)

Enables partial reductions to be used when a reduction is gated by a
condition inside a loop.

Previously when a loop contained a condition, this would introduce a
BLEND to the chain, which prevented a partial reduction from being used
in a pattern where it would normally be created.

This patch records the blend as part of the partial reduction chain and
recognizes blends that select between the updated reduction value and
the previous accumulator.

For tail-folded loops, the transform also combines the loop active-lane
mask with the blend condition, so the generated partial reduction is
predicated by both the tail-folding mask and the original loop
condition. This allows partial reductions to also be used for predicated
reductions with tail folding enabled.


  Commit: e8c7c8768c27a02448bf1e37cd29cca467f56f1a
      https://github.com/llvm/llvm-project/commit/e8c7c8768c27a02448bf1e37cd29cca467f56f1a
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M .github/workflows/test-suite.yml
    M .github/workflows/test-suite/llvm.cmake

  Log Message:
  -----------
  [GitHub] Don't build unnecessary tools for test-suite.yml workflow (#207133)


  Commit: 947dc92d1a88423902f1d644d3456055988df2d7
      https://github.com/llvm/llvm-project/commit/947dc92d1a88423902f1d644d3456055988df2d7
  Author: Sayan Sivakumaran <sivakusayan at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCall.cpp
    M clang/test/CodeGen/64bit-swiftcall.c
    M clang/test/CodeGen/AArch64/args.cpp
    M clang/test/CodeGen/AArch64/byval-temp.c
    M clang/test/CodeGen/AArch64/pure-scalable-args-empty-union.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.cpp
    M clang/test/CodeGen/LoongArch/bitint.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/CodeGen/PowerPC/ppc64-vector.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/RISCV/riscv-abi.cpp
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
    M clang/test/CodeGen/RISCV/riscv32-abi.c
    M clang/test/CodeGen/RISCV/riscv32-vararg.c
    M clang/test/CodeGen/RISCV/riscv64-abi.c
    M clang/test/CodeGen/RISCV/riscv64-vararg.c
    M clang/test/CodeGen/Sparc/sparcv9-abi.c
    M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M clang/test/CodeGen/SystemZ/systemz-abi.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    M clang/test/CodeGen/SystemZ/zos-abi.c
    M clang/test/CodeGen/X86/cx-complex-range.c
    M clang/test/CodeGen/X86/x86_32-arguments-win32.c
    M clang/test/CodeGen/X86/x86_64-arguments-win32.c
    M clang/test/CodeGen/aapcs64-align.cpp
    M clang/test/CodeGen/arm-aapcs-vfp.c
    M clang/test/CodeGen/arm-abi-vector.c
    M clang/test/CodeGen/arm-swiftcall.c
    M clang/test/CodeGen/arm64-abi-vector.c
    M clang/test/CodeGen/arm64-arguments.c
    M clang/test/CodeGen/arm64-microsoft-arguments.cpp
    M clang/test/CodeGen/arm64ec-varargs.c
    M clang/test/CodeGen/armv7k-abi.c
    M clang/test/CodeGen/atomic-arm64.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
    M clang/test/CodeGen/attr-noundef.cpp
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/ext-int-cc.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/mingw-long-double.c
    M clang/test/CodeGen/ms_abi.c
    M clang/test/CodeGen/pass-by-value-noalias.c
    M clang/test/CodeGen/ptrauth-in-c-struct.c
    M clang/test/CodeGen/regcall.c
    M clang/test/CodeGen/regcall4.c
    M clang/test/CodeGen/vectorcall.c
    M clang/test/CodeGen/win-fp128.c
    M clang/test/CodeGen/win64-i128.c
    M clang/test/CodeGen/windows-seh-arg-capture-crash.cpp
    M clang/test/CodeGen/windows-swiftcall.c
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aix-alignment.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/arm-cc.cpp
    M clang/test/CodeGenCXX/arm-swiftcall.cpp
    M clang/test/CodeGenCXX/attr-target-mv-inalloca.cpp
    M clang/test/CodeGenCXX/blocks.cpp
    M clang/test/CodeGenCXX/builtin-clear-padding-codegen.cpp
    M clang/test/CodeGenCXX/copy-initialization.cpp
    M clang/test/CodeGenCXX/cxx1z-copy-omission.cpp
    M clang/test/CodeGenCXX/derived-to-base-conv.cpp
    M clang/test/CodeGenCXX/empty-nontrivially-copyable.cpp
    M clang/test/CodeGenCXX/fastcall.cpp
    M clang/test/CodeGenCXX/homogeneous-aggregates.cpp
    M clang/test/CodeGenCXX/inalloca-lambda.cpp
    M clang/test/CodeGenCXX/inalloca-overaligned.cpp
    M clang/test/CodeGenCXX/inalloca-vector.cpp
    M clang/test/CodeGenCXX/inheriting-constructor.cpp
    M clang/test/CodeGenCXX/member-function-pointer-calls.cpp
    M clang/test/CodeGenCXX/microsoft-abi-arg-order.cpp
    M clang/test/CodeGenCXX/microsoft-abi-byval-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
    M clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
    M clang/test/CodeGenCXX/microsoft-abi-unknown-arch.cpp
    M clang/test/CodeGenCXX/ms-property.cpp
    M clang/test/CodeGenCXX/nrvo.cpp
    M clang/test/CodeGenCXX/pass-by-value-noalias.cpp
    M clang/test/CodeGenCXX/powerpc-byval.cpp
    M clang/test/CodeGenCXX/ptrauth-qualifier-struct.cpp
    M clang/test/CodeGenCXX/regcall.cpp
    M clang/test/CodeGenCXX/regcall4.cpp
    M clang/test/CodeGenCXX/regparm.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenCXX/uncopyable-args.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenCXX/windows-x86-swiftcall.cpp
    M clang/test/CodeGenCXX/x86_32-arguments.cpp
    M clang/test/CodeGenCoroutines/coro-params.cpp
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructPassing.hlsl
    M clang/test/CodeGenHLSL/builtins/ConstantBuffer.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/resources/ConstantBufferT-struct-passing.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_struct_passing.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_struct_passing_with_resources.hlsl
    M clang/test/CodeGenHLSL/semantics/semantic-struct-2-output.hlsl
    M clang/test/CodeGenObjC/pass-by-value-noalias.m
    M clang/test/CodeGenObjC/weak-in-c-struct.m
    M clang/test/CodeGenObjCXX/objc-struct-cxx-abi.mm
    M clang/test/CodeGenObjCXX/property-dot-copy-elision.mm
    M clang/test/CodeGenObjCXX/property-objects.mm
    M clang/test/CodeGenObjCXX/ptrauth-struct-cxx-abi.mm
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/DebugInfo/CXX/debug-info.cpp
    M clang/test/DebugInfo/ObjC/nontrivial-c-struct-exception.m
    M clang/test/Headers/stdarg.cpp
    M clang/test/OpenMP/for_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_firstprivate_codegen.cpp
    M clang/test/OpenMP/sections_firstprivate_codegen.cpp
    M clang/test/OpenMP/single_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp

  Log Message:
  -----------
  [Clang][CodeGen] Emit alignment information for indirect arguments (#201999)

Previously, arguments with `ABIArgInfo::Indirect` would not be given
alignment information if it wasn't `byval`. This could prevent certain
optimizations, such as those guarded by
`isDereferenceableAndAlignedPointer` checks. The missing
dereferenceability information is pointed out in
https://github.com/llvm/llvm-project/issues/129337, for example.

This PR will fix the first half of this problem, which is emitting
alignment information. Dereferenceability information will be added in a
subsequent PR.


  Commit: 2c8d8643c32c9b043f37587807585d54be96e53b
      https://github.com/llvm/llvm-project/commit/2c8d8643c32c9b043f37587807585d54be96e53b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/reassociate-ops.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the reassociated operands, NFC



Reviewers: 

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


  Commit: 21167283a0d3687db672541b58dbf44c9ad6056a
      https://github.com/llvm/llvm-project/commit/21167283a0d3687db672541b58dbf44c9ad6056a
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/test/Integration/Dialect/XeGPU/WG/simple_mxfp_gemm_dequantizeB_F4.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Enable end-to-end integration test compilation (#207158)


  Commit: abdc6a2181cdca2f23978ef577f493157e1e45fe
      https://github.com/llvm/llvm-project/commit/abdc6a2181cdca2f23978ef577f493157e1e45fe
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/InstrumentorConfigFile.cpp
    A llvm/test/Instrumentation/Instrumentor/bad_spelling.ll
    A llvm/test/Instrumentation/Instrumentor/bad_spelling_config.json

  Log Message:
  -----------
  [Instrumentor] Add spellcheck for instrumentor properties (#205416)

This patch adds spellcheck hints for unrecognized properties in the
instrumentor's JSON configuration.


  Commit: 025c4c1d6bd017749e71ad3dc0b0d7b253606b4f
      https://github.com/llvm/llvm-project/commit/025c4c1d6bd017749e71ad3dc0b0d7b253606b4f
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [mlir][tosa] Fold unit-expanded reshapes in reduce-transposes (#203529)

Extend tosa-reduce-transposes so transpose hosting can fold through
unit-expanded vector reshapes such as 1x...x1xC. In particular, this
improves transpose folding when hosting through broadcast binary
elementwise operations.


  Commit: eb89275268a84c4316814e39d8755963aa8eda9a
      https://github.com/llvm/llvm-project/commit/eb89275268a84c4316814e39d8755963aa8eda9a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] phaddsub-undef.ll - rename undef functions to match equivalents in phaseordering tests (#207216)

Still some churn / regressions to address, but this is the same IR as
we're attempting in PhaseOrdering/X86/hadd.ll

Still need to update them to the vectorized IR from the middle-end


  Commit: b43a0db74e833803c9cfbf9cb74b956f3445dba0
      https://github.com/llvm/llvm-project/commit/b43a0db74e833803c9cfbf9cb74b956f3445dba0
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A cross-project-tests/debuginfo-tests/dexter/Heuristic.md
    M cross-project-tests/debuginfo-tests/dexter/README.md
    A cross-project-tests/debuginfo-tests/dexter/Script.md

  Log Message:
  -----------
  [Dexter] Document the structured script model (#204365)

This patch adds documentation for the script model to the Dexter README,
shunting heuristic-mode information into a separate doc, creating a new
doc for script-mode, and linking to both (with a brief summary of the
differences) from the base README.


  Commit: 64b1d17103e590da4bcc2c008c2f01c4253ec245
      https://github.com/llvm/llvm-project/commit/64b1d17103e590da4bcc2c008c2f01c4253ec245
  Author: Azat Khuzhin <a3at.mail at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M compiler-rt/lib/lsan/lsan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp

  Log Message:
  -----------
  [sanitizer] Raise kMaxAllowedMallocSize to 1TB on AArch64 (#206649)

lsan capped AArch64 allocations at 4GB and msan at 8GB. These limits
were tied to the smaller address space of the 32-bit-style allocator.

This became possible after 8e0c1aaf6ba3 ("[msan] Use
SizeClassAllocator64 for AArch64"), which (together with the 48-bit VMA
requirement) switched AArch64 to SizeClassAllocator64, so the limit can
now match the other 64-bit targets (1ULL << 40).

Follow-up for #89728


  Commit: cb4e7fff7d0e7fc2bf116302567f21405f63a748
      https://github.com/llvm/llvm-project/commit/cb4e7fff7d0e7fc2bf116302567f21405f63a748
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/addtf3.cpp
    A compiler-rt/lib/builtins/fp_libc_config.h

  Log Message:
  -----------
  [compiler-rt][builtins] introduce libc math routines (#197950)

Introduce using libc math routines in compiler-rt builtins. this pr adds
`COMPILER_RT_USE_LIBC_MATH` flag and uses math routines in basic
arithmetic operations for Quad-Precision values

RFC:
https://discourse.llvm.org/t/rfc-explore-using-llvm-libc-math-routines-for-compiler-rt-floating-point-builtins/89670

Part of #197824


  Commit: 504fc83820b4fa5cf2edd86a5f4661d4dd310933
      https://github.com/llvm/llvm-project/commit/504fc83820b4fa5cf2edd86a5f4661d4dd310933
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    A flang/test/Lower/OpenMP/declare-reduction-logical-init.f90
    A flang/test/Lower/OpenMP/declare-reduction-shadows-intrinsic-other-type.f90
    A flang/test/Lower/OpenMP/declare-reduction-shadows-intrinsic.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix user-defined reduction shadowing an intrinsic name (#205893)

A user-defined reduction whose identifier is one of the intrinsic
reduction names (max, min, iand, ior, ieor) was mishandled during
lowering, causing a crash. This was due to two different problems:

1. Intrinsic shadowing: a reduction(max:var) clause resolves its
identifier to the intrinsic procedure rather than to the user's
declaration, so lowering applied the built-in reduction and ignored the
declared one. For integer variables this silently used the wrong
combiner/initializer; for a LOGICAL variable it crashed, because the
built-in MAX/MIN initializer calls getIntOrFloatBitWidth() on a
fir.logical type.

Per OpenMP 6.0 7.6.14, a user-defined reduction has the same visibility
and accessibility as a variable declared at the same location, so a
visible declaration must take precedence over a same-named intrinsic.
This is handled the same way as for user-defined operator reductions.

TODO: imported, renamed, or multiple-declaration/type reductions are
currently not implemented.

2. LOGICAL initializer type: a user-defined reduction on a LOGICAL
variable with a logical-literal initializer (e.g. omp_priv = .false.)
lowered the literal to an i1 and yielded it from the init region, but
the reduction type is !fir.logical<4>. The omp.declare_reduction
verifier then rejected the op ("expects initializer region to yield a
value of the reduction type"). Convert the initializer result to the
reduction type when they are convertible trivial types, so the init
region yields the reduction type.

Fixes #188880


  Commit: 2b08bf2858245e724bc5be18df9b32780702d5ff
      https://github.com/llvm/llvm-project/commit/2b08bf2858245e724bc5be18df9b32780702d5ff
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll

  Log Message:
  -----------
  [PhaseOrdering][X86] Add matching test coverage to CodeGen haddsub.ll / phaddsub.ll (#207224)

Add missing undef element combos that were in the CodeGen tests

Fix copy+pasta issue with the "reversed elements" tests which hadn't
packed the lhs/rhs operands correctly within each 128-bit subvector


  Commit: 2c4816cc7eb99ca969ac55e30ca9e135fcf7011c
      https://github.com/llvm/llvm-project/commit/2c4816cc7eb99ca969ac55e30ca9e135fcf7011c
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M bolt/lib/Passes/ReorderAlgorithm.cpp

  Log Message:
  -----------
  [BOLT][Passes] reserve layout vectors in ExtTSP block reordering. (#206402)


  Commit: a1baf39dc1d8a34a10c877ee4217c57e53edeed9
      https://github.com/llvm/llvm-project/commit/a1baf39dc1d8a34a10c877ee4217c57e53edeed9
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/insert-element-build-vector-inseltpoison.ll

  Log Message:
  -----------
  [SLP][NFC]Remove undefs from tests, NFC



Reviewers: 

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


  Commit: 86436867a56a12d705bbb21d08c10078a80bfa03
      https://github.com/llvm/llvm-project/commit/86436867a56a12d705bbb21d08c10078a80bfa03
  Author: Qihan Cai <caiqihan021 at hotmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/test/CodeGen/X86/avx512-extract-subvector-load-store.ll
    A llvm/test/CodeGen/X86/compress-evex-vpmov-blendv.mir
    M llvm/test/CodeGen/X86/compress-evex-vpmov-kill.mir

  Log Message:
  -----------
  [X86] Fold VPMOV*2M + masked VMOV* into VBLENDV* (#204723)

Extend tryCompressVPMOVPattern to handle masked VPMOV*2M + masked VMOV* pattern, compress them into VBLENDV* if possible.

LLM disclaimer: LLM was used for this patch.
Fixes #204550


  Commit: c3153ddb67179551c78e5315c2df4b70c0b16920
      https://github.com/llvm/llvm-project/commit/c3153ddb67179551c78e5315c2df4b70c0b16920
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llubi.rst
    M llvm/test/tools/llubi/fp_nan_preferred.ll
    M llvm/test/tools/llubi/fp_nan_quieting.ll
    M llvm/test/tools/llubi/fp_nan_target_specific_sparc.ll
    M llvm/test/tools/llubi/fp_nan_target_specific_wasm32.ll
    M llvm/test/tools/llubi/fp_nan_target_specific_x86_64_linux.ll
    M llvm/test/tools/llubi/fp_nan_unchanged.ll
    A llvm/test/tools/llubi/undefmem_nondet.ll
    A llvm/test/tools/llubi/undefmem_zero.ll
    M llvm/tools/llubi/llubi.cpp

  Log Message:
  -----------
  [llubi][Docs] Update docs and CLI interface of llubi (#207210)

Update the docs to reflect the current status. This also addresses the
post-commit review in
https://github.com/llvm/llvm-project/pull/185196#discussion_r2995639990.


  Commit: cb54896ff49475348ecf23bf45b3572629cafe3b
      https://github.com/llvm/llvm-project/commit/cb54896ff49475348ecf23bf45b3572629cafe3b
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py

  Log Message:
  -----------
  [Dexter] Add additional variable metrics, sanitize lldb-dap function names (#204366)

This patch makes some required changes prior to switching over to using
the script model by default, to keep the tests in `dexter-tests` working
and meaningful.

In addition to the existing metrics, we split the "missing_vars" metric
into 3 - adding "irretrievable" and "optimized_out", so that we can
specifically test those properties in the output.

We also add some function name sanitizing to lldb-dap, to account for
the fact that some function names get presented with a suffix " [opt]",
which causes the script to fail.


  Commit: 75af8236d2f122b5b528fdc403dcf3f963faddc1
      https://github.com/llvm/llvm-project/commit/75af8236d2f122b5b528fdc403dcf3f963faddc1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll

  Log Message:
  -----------
  [VPlan] Expand SCEV casts in VPSCEVExpander. (#206371)

Add support for expanding scTruncate, scZeroExtend and scSignExtend SCEV
expressions to Trunc/ZExt/SExt VPInstructions in
VPSCEVExpander::tryToExpand.

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


  Commit: f1aeaa7bd55218b62b9aa319c6dcad0430037182
      https://github.com/llvm/llvm-project/commit/f1aeaa7bd55218b62b9aa319c6dcad0430037182
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Lex/LiteralSupport.h
    M clang/include/clang/Lex/Preprocessor.h
    A clang/include/clang/Lex/TextEncoding.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Lex/CMakeLists.txt
    M clang/lib/Lex/LiteralSupport.cpp
    A clang/lib/Lex/TextEncoding.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CodeGen/systemz-charset-diag.cpp
    A clang/test/CodeGen/systemz-charset.c
    A clang/test/CodeGen/systemz-charset.cpp
    M clang/test/Lexer/string-literal-encoding.c
    M clang/test/Preprocessor/init-s390x.c

  Log Message:
  -----------
  Enable fexec-charset option  (#138895)

This patch is the first in a series of patches to enable the fexec-charset option. This patch enables the fexec-charset cc1 option to control the literal encoding of string literals


  Commit: 8f1bac0975c74f4379d9cc402fbebc8d5c7c0dba
      https://github.com/llvm/llvm-project/commit/8f1bac0975c74f4379d9cc402fbebc8d5c7c0dba
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/return-value/TestReturnValue.py
    M lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
    M lldb/test/API/functionalities/scripted_frame_provider/thread_filter/TestFrameProviderThreadFilter.py
    M lldb/test/API/lang/cpp/thread_local/TestThreadLocal.py
    M lldb/test/API/lang/cpp/trivial_abi/TestTrivialABI.py

  Log Message:
  -----------
  [lldb][test] Skip tests for features unsupported on WebAssembly (#207102)

- TestReturnValue, TestTrivialABI: a WebAssembly return value lives on
the operand stack with no way to locate it at a step-out, so the
returned value can't be recovered.
- TestScriptedFrameProvider, TestFrameProviderThreadFilter: the inferior
is multithreaded C++, which wasip1 can't build (no threads, and
inferiors are compiled without exception support).
- TestThreadLocal: reading thread-locals works, but the test checks the
platform-specific error reported when TLS isn't initialized yet, which
WebAssembly doesn't have (already xfail/skip on other platforms).


  Commit: 1c9ebda139440e1f81d02197432cbebe478697e3
      https://github.com/llvm/llvm-project/commit/1c9ebda139440e1f81d02197432cbebe478697e3
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    R libcxx/test/benchmarks/algorithms/nonmodifying/lower_upper_bound.bench.cpp
    A libcxx/test/benchmarks/algorithms/sorting/lower_upper_bound.bench.cpp

  Log Message:
  -----------
  [libc++][NFC] Move the lower_bound/upper_bound benchmark to the sorting directory (#207215)

These algorithms are not under [nonmodifying], they are under [sorting]
in the Standard.


  Commit: 62356985be4f112cf92c1d186d557fe299826106
      https://github.com/llvm/llvm-project/commit/62356985be4f112cf92c1d186d557fe299826106
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/test/Preprocessor/aarch64-target-features.c

  Log Message:
  -----------
  [AArch64][clang][llvm] Add ACLE macros to support Armv9.7 (#192948)

This patch add the macros for Armv9.7 according to the ACLE [1]

[1] https://github.com/ARM-software/acle/blob/main/main/acle.md


  Commit: 2e6621e6e379fd42804a85de3d829d143056a02d
      https://github.com/llvm/llvm-project/commit/2e6621e6e379fd42804a85de3d829d143056a02d
  Author: Letu Ren <fantasquex at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c

  Log Message:
  -----------
  [CIR] Support __builtin_elementwise_ceil (#204974)

Add CIR handling for __builtin_elementwise_ceil


  Commit: 8af376d724891963f68c7c530721ea719136089e
      https://github.com/llvm/llvm-project/commit/8af376d724891963f68c7c530721ea719136089e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll

  Log Message:
  -----------
  [VPlan] Also expand pointer-typed SCEVAddExpr in VPSCEVExpander. (#206366)

Generalize the SCEVAddExpr handling in VPSCEVExpander::tryToExpand to
also expand pointer-typed adds. The pointer base and the offset are
expanded separately, matching IR SCEVExpander.

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


  Commit: 5587443d5fb6f6de329e22ccb991af4580ec922a
      https://github.com/llvm/llvm-project/commit/5587443d5fb6f6de329e22ccb991af4580ec922a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileWasm.cpp

  Log Message:
  -----------
  [lldb] Synthesize data symbols for WebAssembly from DWARF (#207235)

The Wasm "name" section names functions but not data, so data symbols
such as C++ vtables have no entry in the symbol table. The Itanium C++
runtime resolves a dynamic type by looking up the symbol at an object's
vtable pointer and reading its "vtable for X" name. With no such symbol,
dynamic type resolution fails and falls back to the static type.

The vtable's address and mangled name are available in the DWARF as a
DW_TAG_variable with a DW_OP_addr location and a DW_AT_linkage_name.
Extend SymbolFileWasm::AddSymbols to synthesize a data symbol for every
global variable of that shape, so its address resolves back to the
mangled name such as "vtable for X". The size is computed by Symtab to
from the gap to the next symbol.

Assisted-by: Claude


  Commit: db5740f1a633a6ae587de57ab5ef371a0224147f
      https://github.com/llvm/llvm-project/commit/db5740f1a633a6ae587de57ab5ef371a0224147f
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c

  Log Message:
  -----------
  [Dexter] Update lldb-based dexter-tests to use script-mode (#204367)

This patch replaces uses of heuristic-mode Dexter in the dexter-tests
suite with uses of the script-mode, for tests that use DAP (via
lldb-dap). The updates are largely straightforward but occasionally
non-trivial, and in some cases some slight modifications have been made
to keep the "spirit" of the test intact.


  Commit: 8b8a2d7613d9bd9b6a4e49f5408f37b83f28d76e
      https://github.com/llvm/llvm-project/commit/8b8a2d7613d9bd9b6a4e49f5408f37b83f28d76e
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/work-queue.h

  Log Message:
  -----------
  [flang][cuda] Guard descriptor I/O ticket when building thin I/O (#206865)

The work queue system is also used in the assignment and could lead to
unresolved function when building non relocatable code for the gpu using
the CUDA thin I/O. Just add a guard to keep descriptor I/O out of the
CUDA thin I/O build.


  Commit: 3166b22b0e71fd95a828fa84a8c82d9f4b5e7553
      https://github.com/llvm/llvm-project/commit/3166b22b0e71fd95a828fa84a8c82d9f4b5e7553
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/assume.ll

  Log Message:
  -----------
  [InstCombine] Sink instructions across assumes (#205314)

Not sinking across assumes causes InstCombine to not reach a fixpoint
when assumes can be dropped due to the load (usually nonnull assumes).
Sinking the instructions causes the assume to not be dropped anymore,
but I don't think that's a big problem.


  Commit: 6060a6b96bf9bd3d13463478a9f6112c2c71369c
      https://github.com/llvm/llvm-project/commit/6060a6b96bf9bd3d13463478a9f6112c2c71369c
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp

  Log Message:
  -----------
  Put TextEncoding class in clang namespace to prevent naming conflicts (#207247)

Put TextEncoding class in the clang namespace to prevent naming conflicts


  Commit: a0145cf5efb56928dc178cb1a7f8c04e9da33d5f
      https://github.com/llvm/llvm-project/commit/a0145cf5efb56928dc178cb1a7f8c04e9da33d5f
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversion for GL.Fract (#206951)

Co-authored-by: Igor Wodiany <dev at wodiany.com>


  Commit: 2c4286e2e1fc37630ae7d3fef48f2a50cbcaa584
      https://github.com/llvm/llvm-project/commit/2c4286e2e1fc37630ae7d3fef48f2a50cbcaa584
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/attr-noundef.cpp
    M clang/test/CIR/CodeGen/attr-target-x86.c
    M clang/test/CIR/CodeGen/lambda-dtor-field.cpp
    M clang/test/CIR/CodeGenCXX/uncopyable-args.cpp

  Log Message:
  -----------
  [CIR] Update OGCG checks for 4 tests- (#207252)

These are broken by other patches, see: #182556 and #201999


  Commit: 9bd12f6d8873cca268d8129d9395fcefdfa5ab2e
      https://github.com/llvm/llvm-project/commit/9bd12f6d8873cca268d8129d9395fcefdfa5ab2e
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/resources/resources-in-structs-method-call.hlsl

  Log Message:
  -----------
  [HLSL][NFC] Update test check to be more specific (#207232)

If the repo path contains "main", the test was matching it against the
ModuleID in the output because it contains a path to the test file, and
the follow-up checks were failing.

Based on feedback in
https://github.com/llvm/llvm-project/pull/206596#discussion_r3510725223.


  Commit: 999715ac3e8c0d9edc8405b025284a663c9cfe4e
      https://github.com/llvm/llvm-project/commit/999715ac3e8c0d9edc8405b025284a663c9cfe4e
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake
    M lldb/tools/driver/CMakeLists.txt
    M lldb/tools/lldb-dap/tool/CMakeLists.txt
    M lldb/tools/lldb-mcp/CMakeLists.txt

  Log Message:
  -----------
  [lldb][CMake] Extend liblldb interposition fix to lldb-dap and lldb-mcp (#207251)

liblldb statically absorbs the lldbHost and lldbUtility archives (and
every plugin). A tool that links the shared liblldb while also linking
those same archives statically ends up with two copies of that object
code. On ELF, if the tool re-exports the archive symbols in its own
.dynsym, the dynamic linker can bind liblldb's internal references to
the tool's copy instead of liblldb's own, breaking shared-state
assumptions such as the HostInfo singletons.

106644f6c835 fixed this for the lldb driver with --exclude-libs,ALL, but
lldb-dap and lldb-mcp have the same setup and were left exposed. Factor
the logic into a shared lldb_prevent_liblldb_symbol_interposition helper
and call it from all three tools.


  Commit: 1823581ecb2ff84e1adb159d30216bd2cff48cfd
      https://github.com/llvm/llvm-project/commit/1823581ecb2ff84e1adb159d30216bd2cff48cfd
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libc/src/__support/big_int.h
    M libc/test/src/__support/integer_literals_test.cpp

  Log Message:
  -----------
  [libc] Make BigInt trivially constructible (#206277)

This makes BigInt trivially constructible and additionally fixes the
failures caused by the upcoming change in constexpr functions.


  Commit: 7139c74b59a45ae837fd15c81439622130acf206
      https://github.com/llvm/llvm-project/commit/7139c74b59a45ae837fd15c81439622130acf206
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/store-expand-non-pow2.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with the masked non-power-of-2 stores, NFC



Reviewers: 

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


  Commit: bc34ef2616918cb103691dcd7b2d47fafa49f639
      https://github.com/llvm/llvm-project/commit/bc34ef2616918cb103691dcd7b2d47fafa49f639
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/cmake/modules/AddLLDB.cmake

  Log Message:
  -----------
  [lldb] Fix rpath settings for LLDB.framework in buildtree when using LLVM dylib (#207270)

The LLDB.framework location in your build tree relative to the LLVM
dylib differs from an actual installation (which may be located
elsewhere). As-is, we cannot even use the LLDB.framework in the
buildtree because resources in the framework fail to load the LLVM
dylib.


  Commit: 1ced7e587e3f1deb987c33af48d3d0da8f63a21d
      https://github.com/llvm/llvm-project/commit/1ced7e587e3f1deb987c33af48d3d0da8f63a21d
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILLegalizePass.cpp
    M llvm/test/CodeGen/DirectX/legalize-switch-unreachable.ll

  Log Message:
  -----------
  [DirectX] Remove now unreachable blocks in dxil legalize (#207259)

I think when I first wrote
https://github.com/llvm/llvm-project/pull/193592, I had been under the
assumption that the dead block would be removed for us so the test and
pass did not check that the branch was removed in the pass.

This was a wrong assumption and we need to manually remove the blocks.
This change does so by invoking the helper to do so.

For context: this issue reappeared in the offload test suite after
https://github.com/llvm/llvm-project/pull/205433 landed because the loop
could no longer unroll and the dangling branch appeared.

Resolves: https://github.com/llvm/llvm-project/issues/207095


  Commit: e1d11a60584ffaa0ab85cf23287808bb6e1b54a3
      https://github.com/llvm/llvm-project/commit/e1d11a60584ffaa0ab85cf23287808bb6e1b54a3
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/test/SemaTemplate/ctad.cpp

  Log Message:
  -----------
  [clang] fix crash-on-invalid with deduction guides (#207263)

Fix crash when a template template parameter specialization is used as a
deduced type.

This is a regression since Clang 22, and this will be backported, so no
release notes.

Fixes #203261


  Commit: abe1aee8815b4f5adadc00ac0d4498efdd91b746
      https://github.com/llvm/llvm-project/commit/abe1aee8815b4f5adadc00ac0d4498efdd91b746
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll

  Log Message:
  -----------
  [LV] Add test showing incorrect nsw flag on shl. (NFC) (#207242)

Add test for https://github.com/llvm/llvm-project/issues/205252


  Commit: 130d6c3cddbc9756953b566a2da695d3016acea1
      https://github.com/llvm/llvm-project/commit/130d6c3cddbc9756953b566a2da695d3016acea1
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A clang/test/CXX/drs/cwg3088.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG3088 about macros defining special identifiers (#189309)

This PR adds a test for
[CWG3088](https://cplusplus.github.io/CWG/issues/3088.html) "Clarify
macro treatment of identifiers with special meaning".

[[cpp.replace.general] paragraph
9](https://eel.is/c++draft/cpp.replace.general#9) reads as follows:
> A translation unit shall not `#define` or `#undef` macro names
lexically identical to keywords, to the identifiers listed in Table
[4](https://eel.is/c++draft/lex.name#tab:lex.name.special), or to the
[_attribute-token_](https://eel.is/c++draft/dcl.attr.grammar#nt:attribute-token)s
described in [[dcl.attr]](https://eel.is/c++draft/dcl.attr), except that
the macro names `likely` and `unlikely` may be defined as function-like
macros and may be
undefined[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-1)
>
> [Note [1](https://eel.is/c++draft/cpp.replace.general#note-1): An
alternative token ([[lex.digraph]](https://eel.is/c++draft/lex.digraph))
is not an identifier, even when its spelling consists entirely of
letters and
underscores[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-2)
Therefore it is not possible to define a macro whose name is the same as
that of an alternative
token[.](https://eel.is/c++draft/cpp.replace.general#9.sentence-3)
— end note]

Since C++98 and up until
[P2843R3](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2025/p2843r3.pdf)
"Preprocessing is never undefined", which was voted into C++26 **not**
as a DR, this rule has been living as [macro.names]/2 in library
introduction, but that paper made it a part of the core language.

I believe that formally:
- we should not diagnose anything before C++26 if the standard library
is not used, and
- we should diagnose everything in C++26 and newer modes.

But in practice we've been diagnosing everything except for attributes
in all language modes with some exceptions that are likely bugs.


  Commit: 9a896c3f538c3653ddcb82ebd5a19418609f87d1
      https://github.com/llvm/llvm-project/commit/9a896c3f538c3653ddcb82ebd5a19418609f87d1
  Author: jimingham <jingham at apple.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/Breakpoint/BreakpointResolver.h
    M lldb/include/lldb/Breakpoint/ScriptedBreakpointOverrideResolver.h
    M lldb/include/lldb/Interpreter/CommandOptionArgumentTable.h
    M lldb/include/lldb/Target/Target.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/source/API/SBTarget.cpp
    M lldb/source/Breakpoint/BreakpointResolver.cpp
    M lldb/source/Commands/CommandObjectBreakpoint.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Target/Target.cpp
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/TestOverridesResolver.py
    M lldb/test/API/functionalities/breakpoint/scripted_bkpt/overrides_resolver/bkpt_resolver.py

  Log Message:
  -----------
  Add a pre-filter to the breakpoint resolver overrides (#198845)

That way if an override only wants to override, say, file and line
breakpoints, it can say that when it registers itself, and we won't do
the work of creating the resolver and checking with it if the breakpoint
wasn't of the requested type.

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 11576cacaa514a227abfbdd902c53b657915155c
      https://github.com/llvm/llvm-project/commit/11576cacaa514a227abfbdd902c53b657915155c
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/test/Transforms/InstSimplify/ConstProp/saturating-add-sub.ll

  Log Message:
  -----------
  [ConstFold] Eliminate some undef-folding (#207184)

The patch is merely a cleanup, with no real-world impact: undef-folding
is no longer useful these days.


  Commit: 7be188763ab75868ad5c9ac0a2c16ce7d373b053
      https://github.com/llvm/llvm-project/commit/7be188763ab75868ad5c9ac0a2c16ce7d373b053
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll

  Log Message:
  -----------
  [VPlan] Don't preserve NSW in mul -> shl conversion for bw-1 op. (#207280)

When the shift amount is bitwidth - 1, shl nsw would be poison, while
mul nsw is defined. Don't preserve the flag.

https://alive2.llvm.org/ce/z/NgHU_m

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


  Commit: e8c4e99316889849a728828b06f3d77b8c5c279f
      https://github.com/llvm/llvm-project/commit/e8c4e99316889849a728828b06f3d77b8c5c279f
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Strip secondary SIVSteps constructor (NFC) (#207193)

Migrate the only use-site in unit-test to use the canonical constructor.


  Commit: b7623f523c31c96e0449666f69d5b666e70b7627
      https://github.com/llvm/llvm-project/commit/b7623f523c31c96e0449666f69d5b666e70b7627
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/neon-inloop-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-incomplete-chains.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/predicated-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/vplan-scalarivsext-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/illegal-type.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/interleave-and-scalarize-only.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model-i386.ll
    M llvm/test/Transforms/LoopVectorize/X86/fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
    M llvm/test/Transforms/LoopVectorize/X86/replicating-load-store-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
    M llvm/test/Transforms/LoopVectorize/constantfolder.ll
    M llvm/test/Transforms/LoopVectorize/debugloc-optimize-vfuf-term.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/find-last-iv-sinkable-load.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-with-uniform-ops.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/pr125278.ll
    M llvm/test/Transforms/LoopVectorize/pr154045-dont-fold-extractelement-livein.ll
    M llvm/test/Transforms/LoopVectorize/pr31190.ll
    M llvm/test/Transforms/LoopVectorize/pr46525-expander-insertpoint.ll
    M llvm/test/Transforms/LoopVectorize/pr66616.ll
    M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
    M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
    M llvm/test/Transforms/LoopVectorize/single-scalar-cast-minbw.ll
    M llvm/test/Transforms/LoopVectorize/store-reduction-results-in-tail-folded-loop.ll

  Log Message:
  -----------
  [VPlan] Strip early-bail in noalias-check (#203936)

canHoistOrSinkWithNoAliasCheck currently bails eagerly when the
candidate memory location doesn't have a scope. This is unnecessary,
because the alias check automatically handles this: stripping this check
allows us to run the loop, which would never get to the alias check if
none of the recipes write to memory. The end result is that a read-only
FirstBB to LastBB ranges are determined not to alias with anything, even
if the scope metadata is absent, leading to licm-load-store
improvements.


  Commit: c2b50a15c1c34c9619dcdb669d8c2b10ef73bcb9
      https://github.com/llvm/llvm-project/commit/c2b50a15c1c34c9619dcdb669d8c2b10ef73bcb9
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/RISCV/determine-callee-saves-gpr.mir

  Log Message:
  -----------
  [CodeGen] Add tests for `determineCalleeSaves`. (#204855)


  Commit: 7b11c7ce86aafbf4782ceb31543e27dc69617a7a
      https://github.com/llvm/llvm-project/commit/7b11c7ce86aafbf4782ceb31543e27dc69617a7a
  Author: Marlus Cadanus da Costa <marluscadanus at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/Sema/offsetof-unsigned-index.c

  Log Message:
  -----------
  [Clang] Fix offsetof sign-extending unsigned array indices >= 128 (#204139)

When evaluating __builtin_offsetof with an unsigned integer array index
(e.g. uint8_t, uint16_t) whose value has the high bit set, Clang was
calling getSExtValue() on the APSInt index, which sign-extends the value
and produces a large bogus offset.

Fix this to use the correct kind of extension to extend smaller values, and to check for overflow in conversions of larger values.

Fixes #199319

AI Tool Use: GitHub Copilot (Claude Sonnet 4.6) was used to assist in
identifying the root cause of the bug in ExprConstant.cpp and drafting
the fix. The fix was reviewed, tested, and validated manually.


  Commit: 5302608fec8ed7d8ce300d4a0d599a26b24dc972
      https://github.com/llvm/llvm-project/commit/5302608fec8ed7d8ce300d4a0d599a26b24dc972
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp

  Log Message:
  -----------
  [Offload] Guard __llvm_write_custom_profile null check on non-Windows (#207170)

On Windows __llvm_write_custom_profile is defined as a strong stub (MSVC
lacks proper weak symbol support) by 09a51b2818e2, so its address is a
compile-time constant that is never null. The `if
(!__llvm_write_custom_profile)` check therefore triggers
-Wpointer-bool-conversion, which is fatal under -Werror.

Assisted-by: Claude


  Commit: c3b744b585d55f14dcd998ca6d1fad6d62461f65
      https://github.com/llvm/llvm-project/commit/c3b744b585d55f14dcd998ca6d1fad6d62461f65
  Author: Lucas Ribeiro Lima <lucasribeirolima974 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGen/builtins-x86.c

  Log Message:
  -----------
  [clang][CIR]: X86 movnti/movntsd/movntss CIR implementation. (#206388)

### Implements X86 CIR codegen builtins:

- __builtin_ia32_movnti
- __builtin_ia32_movnti64
- __builtin_ia32_movntsd
- __builtin_ia32_movntss

Folow the original codegen architecture lowering to movntss call.

Towards #167765.


  Commit: 20a60c52db181bcfd787e7fd4486d4453b01dba9
      https://github.com/llvm/llvm-project/commit/20a60c52db181bcfd787e7fd4486d4453b01dba9
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    A llvm/docs/AdvancedBuilds.md
    R llvm/docs/AdvancedBuilds.rst
    A llvm/docs/BuildingADistribution.md
    R llvm/docs/BuildingADistribution.rst
    A llvm/docs/CFIVerify.md
    R llvm/docs/CFIVerify.rst
    A llvm/docs/CycleTerminology.md
    R llvm/docs/CycleTerminology.rst
    A llvm/docs/DTLTO.md
    R llvm/docs/DTLTO.rst
    A llvm/docs/Docker.md
    R llvm/docs/Docker.rst
    A llvm/docs/Frontend/PerformanceTips.md
    R llvm/docs/Frontend/PerformanceTips.rst
    A llvm/docs/GoldPlugin.md
    R llvm/docs/GoldPlugin.rst
    A llvm/docs/HowToBuildOnARM.md
    R llvm/docs/HowToBuildOnARM.rst
    A llvm/docs/HowToBuildWithPGO.md
    R llvm/docs/HowToBuildWithPGO.rst
    A llvm/docs/HowToCrossCompileLLVM.md
    R llvm/docs/HowToCrossCompileLLVM.rst
    A llvm/docs/LinkTimeOptimization.md
    R llvm/docs/LinkTimeOptimization.rst
    A llvm/docs/MemProf.md
    R llvm/docs/MemProf.rst
    A llvm/docs/MergeFunctions.md
    R llvm/docs/MergeFunctions.rst
    A llvm/docs/MyFirstTypoFix.md
    R llvm/docs/MyFirstTypoFix.rst
    A llvm/docs/ProjectGovernance.md
    R llvm/docs/ProjectGovernance.rst
    A llvm/docs/StackSafetyAnalysis.md
    R llvm/docs/StackSafetyAnalysis.rst
    A llvm/docs/SupportLibrary.md
    R llvm/docs/SupportLibrary.rst
    A llvm/docs/Vectorizers.md
    R llvm/docs/Vectorizers.rst
    A llvm/docs/tutorial/index.md
    R llvm/docs/tutorial/index.rst
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/tools/llvm-cfi-verify/llvm-cfi-verify.cpp
    M llvm/utils/docker/README

  Log Message:
  -----------
  [docs] Rename 20 selected rst docs to Markdown (#205921)

Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840

This may break the doc build, but it will be fixed in a follow-up.


  Commit: a4b184609b25fc29ea54514b662e9d2fea1923b3
      https://github.com/llvm/llvm-project/commit/a4b184609b25fc29ea54514b662e9d2fea1923b3
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/docs/AdvancedBuilds.md
    M llvm/docs/BuildingADistribution.md
    M llvm/docs/CFIVerify.md
    M llvm/docs/CycleTerminology.md
    M llvm/docs/DTLTO.md
    M llvm/docs/Docker.md
    M llvm/docs/Frontend/PerformanceTips.md
    M llvm/docs/GitHub.md
    M llvm/docs/GoldPlugin.md
    M llvm/docs/HowToBuildOnARM.md
    M llvm/docs/HowToBuildWithPGO.md
    M llvm/docs/HowToCrossCompileLLVM.md
    M llvm/docs/LinkTimeOptimization.md
    M llvm/docs/MemProf.md
    M llvm/docs/MergeFunctions.md
    M llvm/docs/MyFirstTypoFix.md
    M llvm/docs/ProjectGovernance.md
    M llvm/docs/StackSafetyAnalysis.md
    M llvm/docs/SupportLibrary.md
    M llvm/docs/Vectorizers.md
    M llvm/docs/tutorial/index.md

  Log Message:
  -----------
  [docs] Rewrite 20 selected rst LLVM docs to Markdown (#205923)

Tracking issue: https://github.com/llvm/llvm-project/issues/201242
Migration guide docs:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
RFC:
https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840


  Commit: b3d0b1f0415deda8d5f427ff009a72b558532b99
      https://github.com/llvm/llvm-project/commit/b3d0b1f0415deda8d5f427ff009a72b558532b99
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/allocator-registry.h

  Log Message:
  -----------
  [flang-rt] Use posix_memalign instead of std::aligned_alloc (#207248)

MallocWrapper called std::aligned_alloc for over-aligned requests, but
that C11 function is only available on macOS 10.15 and newer. flang-rt
builds with a Darwin deployment target of 10.7 (set in
AddFlangRT.cmake), so the build failed under
-Werror=unguarded-availability-new.

Use posix_memalign instead, as it is available on all supported POSIX
targets.


  Commit: d7cd957bee261ce6e477f16c8768fe8889f599c5
      https://github.com/llvm/llvm-project/commit/d7cd957bee261ce6e477f16c8768fe8889f599c5
  Author: Berkay Sahin <berkaysahindev at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/ModulesBuilder.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp

  Log Message:
  -----------
  [clangd] Invalidate preamble when new module imports are added (#199460)

When using `SkipPreambleBuild`, adding a new `import` statement to a
file did
not invalidate the existing preamble because `isPreambleCompatible` only
checked whether existing prerequisite modules were up-to-date, not
whether
the set of required modules itself had changed.

Fixes: #199389
Partially addresses: #126350


  Commit: 604db5fc463d2e252c2575ff519f479c88cfe093
      https://github.com/llvm/llvm-project/commit/604db5fc463d2e252c2575ff519f479c88cfe093
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp

  Log Message:
  -----------
  [PGO][HIP][NFC] Fix hipModuleGetGlobal -Wunused-function warning (#207293)

The functions trigger the warning on Windows (without elf.h) and is
fatal under -Werror.
Fix by adding [[maybe_unused]]. Alternatively it could be moved inside
the existing __has_include(<elf.h>) block,; however that would trigger
-Wunused-but-set-global on pHipModuleGetGlobal.
Current fix is minimal and can be removed once hipModuleGetGlobal is
supported without elf.h.


  Commit: be1d8d4bb908b90810025479ec1a8afae34a630a
      https://github.com/llvm/llvm-project/commit/be1d8d4bb908b90810025479ec1a8afae34a630a
  Author: Adam Scott <adamscott200322 at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/cttz-of-bool-vector-bitcast.ll

  Log Message:
  -----------
  [AArch64] Lower cttz(bitcast <Nxi1> to iN) with shrn-based compressed movemask (#199081)

The existing lowering in vectorToScalarBitmask() creates a 1 bit per
lane movemask using a powers of 2 reduction (and+addv with a constant
pool entry).

This patch adds a DAG combine on ISD::CTTZ that recognizes cttz(bitcast
<N x i1> to iN) and produces a compressed movemask with shrn (for i8
lanes) or xtn (for wider lanes) then runs scalar cttz on a 64- or
128-bit value. Dividing by bits per lane gives the lane index.

Supports lane counts {2, 4, 8, 16, 32} (one or two NEON registers)

For the example in the issue (`<16 x i8> -> i16`):

Before:
```asm
adrp x8, .LCPI0_0
cmlt v0.16b, v0.16b, #0
ldr  q1, [x8, :lo12:.LCPI0_0]
and  v0.16b, v0.16b, v1.16b
ext  v1.16b, v0.16b, v0.16b, #8
zip1 v0.16b, v0.16b, v1.16b
addv h0, v0.8h
fmov w8, s0
orr  w8, w8, #0x10000
rbit w8, w8
clz  w0, w8
ret
```
After:

```asm
cmlt v0.16b, v0.16b, #0
shrn v0.8b,  v0.8h,  #4
fmov x8, d0
rbit x8, x8
clz  x8, x8
lsr  x0, x8, #2
ret
```

Also created a new test file with 24 functions covering both endianness

- 7 basic widths (`<16 x i8>` down through `<2 x i32>`)
- 4 wider cases that span two NEON registers (`<32 x i8>` etc)
- 2 narrow cases that get sext'd up to fit one register
- 2  cases where the bitcast has two users 
- 4 alternative comparison operators (`eq`, `ne`, etc)
- 1 `cttz` with `is_zero_undef=true`
- 4 negative tests that bails for unsupported shapes 


Fixes #186295


  Commit: 2cf5b7bf4d7dfc6091217d50e8114fd2e6856355
      https://github.com/llvm/llvm-project/commit/2cf5b7bf4d7dfc6091217d50e8114fd2e6856355
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll

  Log Message:
  -----------
  [LegalizeType] Fix VECTOR_DEINTERLEAVE widening with incorrect insert_subvector (#207245)

Partially address #207136 

There are really two parts in the associated issue: (1) incorrect type
widening logics that `insert_subvector` with indices that are not a
multiple of the sub-vector's minimum number of elements, and (2)
incorrect RISC-V lowering logics when it comes to fixed vector.

This PR addresses the first part: It turns out in order to have a
widened, packed concat vector, we don't need to use any insert_subvector
that involves widened operands -- just `concat_vectors` on the
_original_ (narrow) operands (before adjusting to the size of the
desired widened concat vector)


  Commit: 4fad93b912c954720de1b2b63a0f00679dc96550
      https://github.com/llvm/llvm-project/commit/4fad93b912c954720de1b2b63a0f00679dc96550
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/include/__vector/layout.h

  Log Message:
  -----------
  [libc++] Use _LIBCPP_NO_UNIQUE_ADDRESS for the new vector layout (#207149)

We use `_LIBCPP_NO_UNIQUE_ADDRESS`, since a plain
`[[no_unique_address]]` doesn't work on Windows.


  Commit: 760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd
      https://github.com/llvm/llvm-project/commit/760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd
  Author: Zhaoxuan Jiang <jiangzhaoxuan94 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/ModuleSummaryIndexYAML.h
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [ThinLTO] Change GlobalValueSummaryMapTy from std::map to DenseMap+deque (#157839)

Replace GlobalValueSummaryMapTy with a custom container using DenseMap
for O(1) lookup and std::deque for storage with pointer stability. Sort
by GUID at serialization points to preserve deterministic output order.

RFC:
https://discourse.llvm.org/t/rfc-change-globalvaluesummarymapty-from-std-map-to-llvm-densemap-for-thin-linking-performance/88191


  Commit: 1bddfa5c75b551f5c387cb19462ea5eac9bf5da1
      https://github.com/llvm/llvm-project/commit/1bddfa5c75b551f5c387cb19462ea5eac9bf5da1
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lmul-max.ll

  Log Message:
  -----------
  [RISCV] Fix multiline RUN line in fixed-vectors-lmul-max.ll. NFC (#207309)

llvm-lit failed to parse the RUN line because we were missing a \ and a
second
RUN on the line below. The codegen has changed in the meantime but
because it
never parsed, llvm-lit always treated this test as passing.


  Commit: b4e651bb2cb22e5886518957a3048f83b67f9f83
      https://github.com/llvm/llvm-project/commit/b4e651bb2cb22e5886518957a3048f83b67f9f83
  Author: Saleem Abdulrasool <compnerd at compnerd.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/lit/lit/InprocBuiltins.py
    M llvm/utils/lit/lit/ShellEnvironment.py
    M llvm/utils/lit/lit/util.py

  Log Message:
  -----------
  lit: improve long path support on Windows (#207250)

This pull request improves Windows path handling in the
`llvm/utils/lit/lit` utilities by introducing and applying an `extended`
function to correctly format file paths for Windows APIs, especially for
long paths and UNC paths. The changes ensure that file operations such
as removal and redirection work reliably on Windows systems.

**Windows path handling improvements:**

* Added an `extended` function in both `InprocBuiltins.py` and
`ShellEnvironment.py` to convert paths to the extended-length format
required by Windows, handling both regular and UNC paths.
[[1]](diffhunk://#diff-7b75d403cff61cebbd12ef3915054dee6a887deaa2300fbc73a33f64ce2d1255R179-R186)
[[2]](diffhunk://#diff-31c539a1c64eb53261e543eeda1966733230d2b7613f5d500deed3f2f1ce2baeR121-R128)
* Applied the `extended` function to file removal operations in
`InprocBuiltins.py`, ensuring paths are properly formatted before
deletion, which helps avoid issues with long or special Windows paths.
* Used the `extended` function for redirected file paths in
`ShellEnvironment.py`, ensuring that redirections to files handle
Windows path limitations correctly.


  Commit: c671e80a2f3055d61f3f7a2a0aabee4d8d184bbd
      https://github.com/llvm/llvm-project/commit/c671e80a2f3055d61f3f7a2a0aabee4d8d184bbd
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lld/ELF/Writer.cpp

  Log Message:
  -----------
  [ELF] Parallelize demoteSymbolsAndComputeIsPreemptible (#207310)

Each symbol's demotion and isPreemptible bit is independent.
Linking clang release is 1.02x as fast on an x86-64 machine.


  Commit: 8aaa28e8d735b6c9e9c2b46f82918eef07a0e6ee
      https://github.com/llvm/llvm-project/commit/8aaa28e8d735b6c9e9c2b46f82918eef07a0e6ee
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-cost.ll

  Log Message:
  -----------
  [RISCV] Cost legal interleaved memory ops correctly for code size (#207162)

This doesn't yet handle interleaved memory ops with a factor > 8 or with
a gap mask, that still needs to be handled below.


  Commit: e69038f9c2b1c47dd7beebb5531129514fab36e7
      https://github.com/llvm/llvm-project/commit/e69038f9c2b1c47dd7beebb5531129514fab36e7
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchSharedLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchStaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    M clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    M clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    M clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchSharedLibrary.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-nonempty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-empty-lu-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/namespace-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/top-level.test
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    M clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    M clang/unittests/ScalableStaticAnalysis/TestFixture.h

  Log Message:
  -----------
  [clang][ssaf] Add `MultiArchSharedLibrary` data structure (#206854)

This change introduces `MultiArchSharedLibrary` data structure that wraps per-architecture `LUSummaryEncoding` members. This is the SSAF analogue of a fat shared library. The overall design mirrors the existing `MultiArchStaticLibrary` design: each member identifies the same logical library built for a different target triple. Support for constructing and consuming this object will be added in a future PR.

rdar://181164537


  Commit: 602897f729116f343b9dbf7bedc06c7e281ddca0
      https://github.com/llvm/llvm-project/commit/602897f729116f343b9dbf7bedc06c7e281ddca0
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fadd.ll
    M llvm/test/CodeGen/AArch64/vecreduce-fmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sad.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zvdot4a8i.ll
    M llvm/test/CodeGen/RISCV/rvv/zvdot4a8i-sdnode.ll

  Log Message:
  -----------
  [DAGCombiner] Reassociate chains of vector reductions (#206471)

`DAGCombiner::reassociateReduction` already folds a single
`add(vecreduce(x), vecreduce(y)) -> vecreduce(add(x, y))`, and the
balanced-tree form `add(add(vecreduce(a), b), add(vecreduce(c), d))`.
It does not, however, handle a linear chain of reductions like the one
SLP emits for x264's SAD:

```
add(reduce(X0), add(reduce(X1), add(reduce(X2), acc)))
```

Only the innermost pair can ever be merged; the cascade breaks and every
reduction survives to lowering, giving one `vredsum` (or one `uadalp` step,
etc.) per term.

This PR adds a third form to `reassociateReduction`:

```
op(vecreduce(X), op(vecreduce(Y), Z)) -> op(vecreduce(op(X, Y)), Z)
```

Applied to fixpoint by the combiner worklist, this collapses an
arbitrary-length chain into `add(vecreduce(BigSum), acc)`, which the
existing target combines then fold into a single reduction with the
external accumulator folded in as the reduction start value. On RISC-V
with `Zvdot4a8i` this recovers the desired single-`vredsum`, N-dot codegen
for x264 SAD; it also shortens the critical path for other targets (e.g.
AArch64 `uadalp`/`faddp` reduction chains) by exposing a balanced tree.

It is gated on the existing `shouldReassociateReduction` target hook and,
for `FADD`/`FMUL`, only enabled when all involved nodes carry the `reassoc`
fast-math flag, matching the existing two forms.

Fixes #168047.

Assisted-by: TraeCli (AI assistant)


  Commit: 16a6b516d7b72be6d1cd480febb2c1ebf2aa78c2
      https://github.com/llvm/llvm-project/commit/16a6b516d7b72be6d1cd480febb2c1ebf2aa78c2
  Author: Kevin Sala Penades <salapenades1 at llnl.gov>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp

  Log Message:
  -----------
  [NFC][Clang][OpenMP] Simplify checks for num_teams and thread_limit expressions (#207305)

Prepare changes for #206412


  Commit: 1030639662bf27022ec91045d4b457a2e69167e1
      https://github.com/llvm/llvm-project/commit/1030639662bf27022ec91045d4b457a2e69167e1
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lld/ELF/LinkerScript.cpp

  Log Message:
  -----------
  [ELF] Precompute orphan output section names in parallel. NFC (#207321)

addOrphanSections computes getOutputSectionName serially for every live
orphan section. Without --emit-relocs/-r, the name is a pure function of
the section: precompute the names with a parallelFor.


  Commit: e49c8a0363267c7b7235aabb3d36ac50e4281c26
      https://github.com/llvm/llvm-project/commit/e49c8a0363267c7b7235aabb3d36ac50e4281c26
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/include/__cxx03/string
    M libcxx/include/string
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx-03/strings/basic.string/string.capacity/max_size.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/new_alignment.sh.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/allocation_size.pass.cpp
    M libcxx/test/libcxx/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/max_size.pass.cpp
    M libcxx/test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Base string's alignment on __STDCPP_DEFAULT_NEW_ALIGNMENT__ (#171785)

This allows users to influence how much we overalign `string`s
allocations and tune it to the new/delete implementation via
`-fnew-alignment`. If we don't have `__STDCPP_DEFAULT_NEW_ALGINMENT__`
or we're not using `std::allocator`, we default to an alignment of
`sizeof(void*)`.


  Commit: d3b6ad1c11c24362c7f94b41e5a26652047582c8
      https://github.com/llvm/llvm-project/commit/d3b6ad1c11c24362c7f94b41e5a26652047582c8
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-07-02 (Thu, 02 Jul 2026)

  Changed paths:
    M mlir/include/mlir-c/Rewrite.h
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    M mlir/test/CAPI/rewrite.c

  Log Message:
  -----------
  [mlir-c] Reapply Add ConversionTarget dynamic legality C API (#207104) (#207253)

Fixes LeakSanitizer failure from #206161 (reverted in #207104);
`mlirFreezeRewritePattern` moves contents out of the `RewritePatternSet`
but does not free the container (passed by value in the C API), so the
allocation from `mlirRewritePatternSetCreate` was never freed (add
`mlirRewritePatternSetDestroy(patterns)` after freezing).


  Commit: ac05f72d8fa879dce17b73859ad936d59e8731e5
      https://github.com/llvm/llvm-project/commit/ac05f72d8fa879dce17b73859ad936d59e8731e5
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
    M llvm/include/llvm/CodeGen/GlobalISel/Utils.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/MIRParser/MIParser.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/include/llvm/CodeGen/MachineSSAUpdater.h
    M llvm/include/llvm/CodeGen/RegAllocCommon.h
    M llvm/include/llvm/CodeGen/RegisterBank.h
    M llvm/include/llvm/CodeGen/RegisterBankInfo.h
    M llvm/include/llvm/CodeGen/RegisterScavenging.h
    M llvm/include/llvm/CodeGen/ScheduleDAG.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCRegisterInfo.h
    M llvm/lib/CodeGen/AggressiveAntiDepBreaker.h
    M llvm/lib/CodeGen/CriticalAntiDepBreaker.h
    M llvm/lib/CodeGen/RegisterCoalescer.h
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUArgumentUsageInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.h
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/lib/Target/Hexagon/BitTracker.h
    M llvm/lib/Target/Hexagon/HexagonBitTracker.cpp
    M llvm/lib/Target/Hexagon/HexagonFrameLowering.h
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    M llvm/lib/Target/Mips/MipsRegisterInfo.h
    M llvm/lib/Target/Mips/MipsSEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyUtilities.h
    M llvm/lib/Target/Xtensa/XtensaRegisterInfo.h
    M llvm/test/TableGen/RegisterClassCopyCost.td
    M llvm/test/TableGen/RegisterInfoEmitter-inherit-properties.td
    M llvm/test/TableGen/RegisterInfoEmitter-tsflags.td
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen] Merge TargetRegClass into MCRegClass (#207168)

Both data types store primitive information only and TargetRegisterClass
doesn't reference target-specific data structures. TargetRegisterClass,
however, freqeuently refers to MCRegisterClass through a pointer, which
prevents moving the large TargetRegisterClass instances to .rodata.

Therefore, merge the fields of TargetRegisterClass into MCRegisterClass
and adjust the remaining fields to use the existing storage mechanism
for pointer-free storage. To avoid invasive code changes, keep
TargetRegisterClass as alias for MCRegisterClass.

This reduces the size of .data.rel.ro by ~122 kiB in an all-target
build while growing .rodata by just 92 kiB. Further size improvements
are possible in future by reordering struct fields and deduplicating
masks/register lists/register class lists.

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


  Commit: aa7773bef31df88130002748881118cb9982f0c7
      https://github.com/llvm/llvm-project/commit/aa7773bef31df88130002748881118cb9982f0c7
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp

  Log Message:
  -----------
  [clang-tidy] Add regression tests for readability-redundant-typename. NFC. (#207318)

Part of https://github.com/llvm/llvm-project/issues/206995


  Commit: 5969d640a349d593b5935fbe80be89f7a375f528
      https://github.com/llvm/llvm-project/commit/5969d640a349d593b5935fbe80be89f7a375f528
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/IR/Value.cpp
    M llvm/test/CodeGen/AMDGPU/amdhsa-trap-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    M llvm/test/CodeGen/AMDGPU/insert-delay-alu-bug.ll
    M llvm/test/CodeGen/AMDGPU/madak.ll
    M llvm/test/CodeGen/AMDGPU/rewrite-mfma-form-spill-cost-reset.ll
    M llvm/test/CodeGen/X86/load-partial.ll
    M llvm/test/CodeGen/X86/oddsubvector.ll
    M llvm/test/Transforms/GVN/PRE/volatile.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_legality.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_live_outs.ll
    M llvm/test/Transforms/MergeICmps/X86/no-gep-other-work.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/constraint-elimination-placement.ll
    M llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest.ll
    M polly/test/ScopInfo/invariant_load_dereferenceable.ll

  Log Message:
  -----------
  [IR] Enable dereferenceable-at-point semantics (#204795)

The precise semantics of `dereferenceable` are currently undocumented,
but de facto they are:

* Argument position `dereferenceable` implies that the memory remains
dereferenceable while the function executes.
* Return position `dereferenceable` implies that the memory remains
dereferenceable forever.

This is not coherent with how these attributes are used, in at least two
ways:

* C++ reference arguments are annotated as `dereferenceable` by Clang.
However, C++ does not actually make any guarantees that the underlying
memory does not get freed during the execution of the function. (Unlike
Rust, which does guarantee this via protectors in SB/TB.)
* We infer `dereferenceable` on allocator return values (from
`allocsize`). Allocator return values quite obviously do not stay
dereferenceable forever, as they can be freed.

This PR changes the semantics of `dereferenceable` to apply at-point,
i.e. only directly on function entry (for arguments), or at the position
of the call (for return values). The fact that the memory cannot be
freed between the point where the `dereferenceable` fact has been
established and the point where we're trying to speculate needs to be
explicitly proven now.

The main ways this happens is:

* Via `nofree` function attributes (inferred).
* Via `noalias nofree` argument attributes. The latter is inferred, but
the former generally requires frontend annotation. In Rust the
combination of `noalias nofree dereferenceable` is used, so it should
not be materially affected by these changes.
* Context-sensitive analysis to check for frees (i.e. non-nofree calls
or synchronizing atomics) between the point of definition and the point
of speculation.

It's expected that this will regress optimization of C++ code in some
cases, because we can no longer use dereferenceability facts that are
not, in fact, guaranteed to hold.

This finishes implementing an old RFC:
https://discourse.llvm.org/t/rfc-decomposing-deref-n-into-deref-n-nofree/57873


  Commit: 805e89acff0d2f0685adac6eb7b75d1346827c77
      https://github.com/llvm/llvm-project/commit/805e89acff0d2f0685adac6eb7b75d1346827c77
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcInstrInfo.td

  Log Message:
  -----------
  [Sparc] Mark LOAD_BIG/LOAD_LITTLE as MayLoad (#206924)

These were marked as MayStore, but should be MayLoad.


  Commit: 51e0c893151d1ded3b6e5b9c6bb378799a281ef2
      https://github.com/llvm/llvm-project/commit/51e0c893151d1ded3b6e5b9c6bb378799a281ef2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp

  Log Message:
  -----------
  [Sparc] Create MMO for STORE_BIG/LITTLE with MOStore (#206929)

This only stores, so we can use a store MMO instead of a load+store one.


  Commit: 4d8ec1968023e9ab0dcc0d112c65d4e1b36b07d2
      https://github.com/llvm/llvm-project/commit/4d8ec1968023e9ab0dcc0d112c65d4e1b36b07d2
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetRegisterInfo.h
    M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/RDFRegisters.cpp
    M llvm/lib/CodeGen/RegisterClassInfo.cpp
    M llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/lib/CodeGen/TargetRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonBlockRanges.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-list.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost-tuple.td
    M llvm/test/TableGen/RegisterInfoEmitter-regcost.td
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Remove RegisterClasses pointer array (#207204)

All MCRegisterClasses are stored consecutively in memory. Therefore, we
can remove the RegisterClassses pointer array and save 17kiB in
.data.rel.ro.


  Commit: f2334004d0ce9ae6d280f0a9d5e8c05d9b3103c1
      https://github.com/llvm/llvm-project/commit/f2334004d0ce9ae6d280f0a9d5e8c05d9b3103c1
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/buildvec-extract.ll
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/combine-or-shuffle.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll

  Log Message:
  -----------
  [X86] matchUnaryShuffle - only prefer VZEXT_MOVL to VPMOVZX if it will fold away (#207031)

Clean up the logic matching VZEXT_MOVL in preference over VPMOVZX - we
should only use this if the source vector is GPR->FPU or a single
element load (or target load), which fold away to an implicit zero
extension.

Pre-SSE41 targets will attempt to match VZEXT_MOVL again more generally
later on.


  Commit: 2f3d02610748ed8d5ae07ae5cfd837666dd27419
      https://github.com/llvm/llvm-project/commit/2f3d02610748ed8d5ae07ae5cfd837666dd27419
  Author: adalal-2441 <adalal at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops.ll
    M llvm/test/Transforms/LoopVectorize/flags.ll

  Log Message:
  -----------
  [VPlan] Intersect all fast-math flags in VPIRFlags::intersectFlags (#204664)

intersectFlags only ANDed the nnan and ninf flags and left the others
reassoc, arcp, contract, afn and nsz) unchanged. When CSE or
interleave-group narrowing combines two operations into one, the kept
operation's remaining flags then leak onto the merged value.

Intersect all fast-math flags instead, so the result keeps only the
flags present on both operations. A pure intersection is required
because the combined operations do not always compute the same value
(e.g. when narrowing interleave groups), so a flag may be kept only if
every combined operation had it.

Found via @jlebar's X86 LLVM bug hunt / FuzzX effort:
https://github.com/SemiAnalysisAI/FuzzX/blob/master/x86/bugs/090-vplan-cse-intersect-flags-fmf-wrong-direction

cc @jlebar


  Commit: 5447679305323f6108269929fe33a58c1d2c59b9
      https://github.com/llvm/llvm-project/commit/5447679305323f6108269929fe33a58c1d2c59b9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  Fix typo in release-documentation workflow (#207329)

This causes lots of "Invalid workflow file" errors.

Introduced in https://github.com/llvm/llvm-project/pull/204852.


  Commit: 813f06de0df4f0af5601cb1b109eb19b2373cad3
      https://github.com/llvm/llvm-project/commit/813f06de0df4f0af5601cb1b109eb19b2373cad3
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2b.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.single.2c.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
    M llvm/test/CodeGen/AMDGPU/sched-group-barrier-pre-RA.mir

  Log Message:
  -----------
  [AMDGPU] IGroupLP: Avoid DAG manipulation in greedyFind (#194827)

The greedy pipeline solver needs to determine the edges that are
implied by assigning an SUnit to a SchedGroup and the cost of this
assignment. The cost is the number of edges that cannot be added without
introducing cycles.  The current implementation (addEdges) adds the
edges to the DAG and uses the DAG reachability function for cycle
checking.  This happens for each candidate SchedGroup and needs to be
undone before other candidates are considered. The DAG manipulations
become a significant performance bottleneck on bigger pipelines.

This commit implements an alternative function for computing the edges
and cost of an assignment. This function performs the reachability
analysis that is necessary for the cyclicity checks without modifying
the DAG.

The new function returns the same cost as addEdges. The concrete edge
set may show insignificant differences, because, for instance,
the link function called from addEdges chooses not to add transitive
edges (DAG manipulations are more expensive than the check to avoid
this), but the new function includes such edges since this means that
it can avoid to update reachability information in one direction.

The schedule changes are caused due to the existing implementation not
resetting the DAG's topological order after removing the edges that
are added while examining the SchedGroup candidates. Hence it may have
used incorrect reachability information.


  Commit: e8b509f10bf34082b6fb35eb35e34f77ea583bef
      https://github.com/llvm/llvm-project/commit/e8b509f10bf34082b6fb35eb35e34f77ea583bef
  Author: Fan Mo <w007878 at hotmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    A clang/test/SemaCXX/GH203701.cpp

  Log Message:
  -----------
  [clang] use decl itself in static assert failed boolean condition printer (#203736)

fixes #203701
  
`getName()` assumes the decl used in the static asserts has a simple
identifier name, but in some cases like `operator int` don't — they
fails the assertion `Name.isIdentifier() && "Name is not a simple
identifier"` when the `static_assert` failure diagnostic tries to print
the boolean expression.

Switching to getDeclName() handles these special names properly.

Reproducer:
```c++
  struct S {
    constexpr S(auto) {}
    constexpr operator int() const { return 0; }
  };

  constexpr auto a = [](this S) { return 1; };
  static_assert((&decltype(a)::operator())(1) == 42);
```

---
One thing I'm not sure about: the print helper that walks the boolean
expression lives in `SemaTemplate.cpp` (inside
`printTemplateArgumentList` / the DiagRecursiveConstraintEval visitor
area). Is there a historical reason for it being there rather than
somewhere more general like `SemaOverload.cpp` or a shared diagnostic
utility? Happy to move it if that makes more sense.

---
AI used for generating & fixing unit test


  Commit: 6de2b5f8f45d88d25956a2536460d441cd07eeef
      https://github.com/llvm/llvm-project/commit/6de2b5f8f45d88d25956a2536460d441cd07eeef
  Author: pkarveti <pkarveti at qti.qualcomm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonPatternsHVX.td
    A llvm/test/CodeGen/Hexagon/vselect.ll

  Log Message:
  -----------
  [Hexagon] Lower vselect instruction (#206675)

Selection fails with "Cannot select: vselect" when the condition and
both data operands of an HVX vselect are predicate vectors (e.g. v32i1,
v64i1, v128i1). This patch adds patterns for vselect on HVX predicate
vectors of all three element widths (VecQ8, VecQ16, VecQ32), expanding
them to V6_pred_or/V6_pred_and/V6_pred_and_n on Q registers.

Patch-By: @iajbar 
Fixes #206353


  Commit: 2870ebbcb50db6bf451f902d8d611bf8709168c7
      https://github.com/llvm/llvm-project/commit/2870ebbcb50db6bf451f902d8d611bf8709168c7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp

  Log Message:
  -----------
  [CrossProjectTests] Fixup expect in ctor.cpp to accept multiple steps (#207337)

In the test `ctor.cpp`, Dexter tests that when we step into the
constructor used in the test, the value of `this` isn't irretrievable.
To protect against a rotten pass it also checked that we stepped once,
but this caused failures on some platforms where we would step twice on
the constructor - this patch resolves the issue by accepting any
non-zero value for the number of steps.


  Commit: 448e7fec76bdedb50c2e8e17f68440b505da369c
      https://github.com/llvm/llvm-project/commit/448e7fec76bdedb50c2e8e17f68440b505da369c
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/LifetimeSafety/safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Track unary plus on a pointer (#207243)

Unary plus on a pointer is the identity (+p == p), so the result carries
the operand's loans -- but UO_Plus fell through VisitUnaryOperator's
default and left the result origin empty, dropping the borrow (e.g. p =
+&local was a silently-missed use-after-scope). Handle it by flowing the
operand's rvalue origins.

Assisted-by: Claude Opus 4.8

Co-authored-by: Gabor Horvath <gaborh at apple.com>


  Commit: b0c9d8ad10786d4861039b6806ceadda313229dd
      https://github.com/llvm/llvm-project/commit/b0c9d8ad10786d4861039b6806ceadda313229dd
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp

  Log Message:
  -----------
  [AArch64][InstCombine] Tidy [su]adalp combine (NFC) (#207219)

I missed some comments in the #204796 PR.


  Commit: 0341dd51303fc13cafdd21a33e2985cbf603c66b
      https://github.com/llvm/llvm-project/commit/0341dd51303fc13cafdd21a33e2985cbf603c66b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    A llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    A llvm/test/Bitcode/module-asm.ll
    A llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    A llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    A llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    A llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  [IR] Explicitly specify target feature for module asm (#204548)

Support specifying additional properties on module-level inline
assembly. In particular, the target features and target CPU can now be
specified as follows:

    module asm(target_features: "+foo", target_cpu: "bar")
        "asm line 1"
        "asm line 2"

There may be multiple module inline assembly blocks with different
properties.

This is intended to fix the long standing issue where in LTO scenarios
we don't know what target features to use for parsing the module-level
inline assembly. Now they can be faithfully preserved, even when merging
inline assembly from different modules with different features.

If target_features and target_cpu are empty, we fall back to the old
behavior (which, in the backend, would be to use the default subtarget
of the TargetMachine).

Fixes https://github.com/llvm/llvm-project/issues/61991.
Fixes https://github.com/llvm/llvm-project/issues/67698.


  Commit: 473b0a3b727a89140762b558d74520915bd164ff
      https://github.com/llvm/llvm-project/commit/473b0a3b727a89140762b558d74520915bd164ff
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/unittests/Basic/CMakeLists.txt
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  Fix MSVC build after #206326 (again) (#207335)

Adding /utf-8 is bigger endeavor than I hoped, just disable the
problematic test case for now


  Commit: 73e1c53474a46a9686d7111c8566be2d90263aa4
      https://github.com/llvm/llvm-project/commit/73e1c53474a46a9686d7111c8566be2d90263aa4
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libc/startup/baremetal/arm/start.cpp

  Log Message:
  -----------
  [libc][ARM] Defend banked SP setup against register allocator (#206757)

The startup code for bare-metal AArch32 A/R shifts the CPU through all
the different modes which have their own copies of SP, updating all the
stack pointers to the same value. But it does it using C intrinsics,
leaving the register allocation to the compiler – so it's possible that
the register allocator happens to use one of the _other_ banked
registers, such as LR.

For example, when I built this code today, it happened that LR was used
to hold one of the constants written into CPSR_c to change mode. That
constant was written into the SVC mode LR before any mode changes, but
the MSR instruction that tried to use it was run in a different mode, so
it copied from _that_ mode's LR, which contained uninitialised nonsense
in place of the desired constant, triggering a boot-time crash.

I think it's safer to use a single asm statement for the whole job,
guaranteeing which registers it uses.


  Commit: 17e7497629ccb47a1f23aa5e0ba228d6d0e2a0a0
      https://github.com/llvm/llvm-project/commit/17e7497629ccb47a1f23aa5e0ba228d6d0e2a0a0
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/global-constant.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/hello.c
    M cross-project-tests/debuginfo-tests/dexter-tests/inline-line-gap.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/realigned-frame.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c
    M cross-project-tests/debuginfo-tests/dexter/Heuristic.md
    M cross-project-tests/debuginfo-tests/dexter/Script.md
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex-continue.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex_step_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/debug_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_after_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_finish.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_step_out.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_penalties.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_perfect.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/invalid_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/simple_labels.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/source_root_dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/nested_wheres.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/bad-where-attr.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/error-locations.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-script-nodes.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/step-node-expected-values.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/valid-parse.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_types_expected.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_step_lines.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/where_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_limit_steps_no_values.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp

  Log Message:
  -----------
  [Dexter] Switch to using script-mode by default (#204369)

This patch changes the default mode of Dexter from heuristic-mode to
script-mode. The --use-script argument is replaced with --use-heuristic,
some comments/docs/error messages are updated accordingly, and tests
have their flags switched accordingly.


  Commit: 67d7dfcfbc91862a85084e7848ebd62b929e8f78
      https://github.com/llvm/llvm-project/commit/67d7dfcfbc91862a85084e7848ebd62b929e8f78
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-load-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomic-store-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-outline_atomics.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-lse2.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-rcpc3.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64_be-cmpxchg-v8a.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64_i128_endianness.ll

  Log Message:
  -----------
  [AArch64] Fix reversed values in big-endian 128-bit atomics (#205760)

When AArch64TargetLowering expands a load-linked or a store-conditional
during the atomic-expand pass, it made the fixed assumption that the
64-bit value stored first in memory was the low-order half of the
128-bit value, instead of checking the SubtargetInfo's endianness. The
same was true of the code that expands CMP_SWAP_128 pseudoinstructions.
So in each case, if you compiled 128-bit atomic code big-endian, you'd
get back a 128-bit integer with the top and bottom half swapped.

This was found by compiler-rt's existing tests when we ran them for a
big-endian AArch64 target in Arm Toolchain.

Most of the test changes here are `update_llc_test_checks` churn: there
were already many tests of AArch64 atomics in big-endian mode, and
apparently they all simply had the reversed registers in their expected
output.

The one new test, `aarch64_i128_endianness.ll`, directly demonstrates
the failure if run against llc without the patch, because it does both
atomic and normal loads and stores in each test function, and you can
see in the big-endian generated code that the same pair of registers is
used in opposite orders by the ldxp/stxp and ldp/stp instructions. After
this fix, the order of the registers matches.


  Commit: 243211a9222dde80433e57b710cff7de5b9fc38a
      https://github.com/llvm/llvm-project/commit/243211a9222dde80433e57b710cff7de5b9fc38a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [ReleaseNotes] Remove leftover conflict marker (#207348)


  Commit: efcfff751f856c66c936d2057ed9a8463e070833
      https://github.com/llvm/llvm-project/commit/efcfff751f856c66c936d2057ed9a8463e070833
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.append.pass.cpp
    A libcxx/test/libcxx/strings/basic.string/string.modifiers/assert.assign.pass.cpp

  Log Message:
  -----------
  [libc++] Add assert test for string assign/append (#207164)

Fixes
https://github.com/llvm/llvm-project/pull/206320#discussion_r3507502638.


  Commit: 15b38829f76f2116e8ce3dca0b52528e94537e41
      https://github.com/llvm/llvm-project/commit/15b38829f76f2116e8ce3dca0b52528e94537e41
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-fast-isel-conversion.ll

  Log Message:
  -----------
  [AArch64][FastISel] Update arm64-fast-isel-conversion.ll check lines (NFC) (#207159)

Before fixing relevant bugs and extending the existing tests,
auto-generate CHECKs.

Note that some of the existing CHECKs actually check for buggy isel.
Those will be fixed separately, after adding more tests in a separate
PR. This PR just runs `update_llc_test_checks.py`.


  Commit: 4d46b7afdab1747618fdd0f1480ae59d8352eeea
      https://github.com/llvm/llvm-project/commit/4d46b7afdab1747618fdd0f1480ae59d8352eeea
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Report error if HasGroup is set without types (#207334)

Setting `HasGroup = 1` in tablegen without the types being non-empty
causes problems later, so diagnose it.


  Commit: 499eba67ee2301b8692c3b1903840896d2c12d73
      https://github.com/llvm/llvm-project/commit/499eba67ee2301b8692c3b1903840896d2c12d73
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/sve2p1-while-pn-folds.ll

  Log Message:
  -----------
  [SDAG][AArch64] Fold extract from pext to use status flags (#206443)

This folds extracting the first bit from the first segment of a
predicate-as-counter to use the "first active" status. E.g.:

```
%pn:aarch64svcount, %flags:FlagsVT = WHILELO_PRED_COUNTER(a, b, VLx4)
%first_pred:nxv4i1 = pext(%pn, 0)
%more:i1 = extractelement(%first_pred, 0)
```
->
```
%pn:aarch64svcount, %flags:FlagsVT = WHILELO_PRED_COUNTER(a, b, VLx4)
%more = CSET(%flags, FIRST_ACTIVE)
```

Assisted-by: Codex (adding test variations)


  Commit: 11438bc8e31252be03e8a47773da3964ab2df215
      https://github.com/llvm/llvm-project/commit/11438bc8e31252be03e8a47773da3964ab2df215
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-masked-gather-64b-unscaled.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather.ll

  Log Message:
  -----------
  [AArch64] Combine undef UZP and NVCAST away. (#204623)

These are used to lower insert_subvec nodes quite early in SDAG. After
DAG combines run, it's possible that the inputs to these AArch64 nodes
become UNDEF.


  Commit: ba8e423be48d3505b89f27348faaad3e810168fa
      https://github.com/llvm/llvm-project/commit/ba8e423be48d3505b89f27348faaad3e810168fa
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbutil.py
    M lldb/test/API/commands/platform/connect/TestPlatformConnect.py
    M lldb/test/API/commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
    M lldb/test/API/commands/target/auto-install-main-executable/TestAutoInstallMainExecutable.py

  Log Message:
  -----------
  [lldb][test] Add a function to spawn lldb-server platforms (#205083)

I will be doing this in a future test and we already have a few copies of this code in various tests.


  Commit: 234960e7ad301a99acf650d71899a00c80eda1d2
      https://github.com/llvm/llvm-project/commit/234960e7ad301a99acf650d71899a00c80eda1d2
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-intra-tu.cpp

  Log Message:
  -----------
  [LifetimeSafety] Point annotation suggestion location to fix-it insertion point (#207345)


  Commit: aded5309868f4d757490a804d331d4d12bf410b2
      https://github.com/llvm/llvm-project/commit/aded5309868f4d757490a804d331d4d12bf410b2
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    A clang/test/CodeGen/attr-counted-by-with-sanitizers.c
    A clang/test/CodeGen/attr-counted-by-without-sanitizers.c
    R clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang][tests][NFC] Split __counted_by attribute testcases into two (#207144)

Splitting the testcase file makes it easier to review the generated
code. The only changes are cosmetic:

  - Renaming functions and structs to be more descriptive, and
  - Removing a duplicate test.


  Commit: 253d6f216a62ab2e1005ca6a7a56385aa399ef4d
      https://github.com/llvm/llvm-project/commit/253d6f216a62ab2e1005ca6a7a56385aa399ef4d
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py

  Log Message:
  -----------
  [CI][flang][OpenMP] Build OpenMP runtime mod files for flang tests (#206517)

Some flang openmp lit tests require mod files (a bit like C header
files, except they are compiler generated) from the openmp runtime. As
the openmp runtime is not currently built in this configuration, these
71 flang tests get skipped and a warning is emitted.

Here I enable openmp as a dependency for flang but add
-DLIBOMP_FORTRAN_MODULES_ONLY=ON so that only the required mod files are
built and not the whole of the openmp runtime.

This only effects linux bots: Windows and MacOS explicitly exclude
openmp so it will still not be enabled there.

Assited-by: Codex


  Commit: 38241083163a3743413dafd86b45739a2143622e
      https://github.com/llvm/llvm-project/commit/38241083163a3743413dafd86b45739a2143622e
  Author: Ege Beysel <beysel at roofline.ai>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/TransformOps/LinalgTransformOps.td
    M mlir/include/mlir/Dialect/SCF/Transforms/TileUsingInterface.h
    M mlir/include/mlir/Dialect/Tensor/Transforms/Transforms.h
    M mlir/include/mlir/Interfaces/TilingInterface.h
    M mlir/include/mlir/Interfaces/TilingInterface.td
    M mlir/lib/Dialect/Linalg/IR/CMakeLists.txt
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TilingInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Transforms/TileUsingInterface.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorTilingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/SwapExtractSliceWithProducerPatterns.cpp
    M mlir/lib/Interfaces/TilingInterface.cpp
    A mlir/test/Dialect/Linalg/scalable-pack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-pack-tiling.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-consumer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-producer-fusion.mlir
    A mlir/test/Dialect/Linalg/scalable-unpack-tiling.mlir
    M mlir/test/Dialect/Linalg/transform-ops-invalid.mlir
    M mlir/test/Dialect/Linalg/transform-ops.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.cpp
    M mlir/test/lib/Interfaces/TilingInterface/TestTilingInterfaceTransformOps.td
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][linalg/scf/transform] scalable tiling and fusion for pack/unpack ops (#204007)

# Inner tile alignment hints for scalable `linalg.pack`/`linalg.unpack`
tiling and fusion

## Overview

Tiling and fusing `linalg.pack`/`linalg.unpack` produces a clean result
only when the tiling implementation can tell how a loop tile size
relates to the op's inner tile size. When both are statically known this
is decided by comparing the constants. But with **scalable** (and, more
generally, dynamic) sizes, e.g. a loop tile of `8 * vscale` against an
inner tile of `8 * vscale`, that relationship is symbolic and cannot
cleanly be recovered from the IR, so the implementation conservatively
falls back to a dynamic, over-allocated tile. See #150185 for more
details.

This PR adds an optional **inner tile alignment hint**: a per-dimension
caller assertion about that relationship, threaded from the transform-op
surface through the SCF driver into the pack/unpack `TilingInterface`
implementations. The caller is already aware of both the loop tile
sizes, and the inner tile sizes, and therefore can set these hints
easily. With the hint, scalable pack/unpack tiling and fusion produce
the same tight IR they produce for the statically-aligned case.

## The inner tile alignment hint

`InnerTileAlignment` is a per-iteration-domain-dimension enum:

- `Unknown` (`0`) — no information; the implementation keeps its prior
behavior.
- `Multiple` (`1`) — the loop tile size is an integer multiple of the
inner tile.
- `Equal` (`2`) — the loop tile size equals the inner tile size.

It is a *caller assertion*, not a checked fact. It is consulted only
when the relationship cannot be decided from the IR; when the tile and
inner-tile sizes are both statically known, that static comparison wins
and a contradicting hint is ignored rather than allowed to corrupt the
result. Otherwise the hint is not verified, so an incorrect assertion
silently produces invalid tiling, its correctness is owned by the
caller. Only pack/unpack consult it; every other op ignores it.

## TilingInterface API

Four methods gain a second overload taking an extra
`ArrayRef<InnerTileAlignment>` hint:

- `getTiledImplementation`
- `generateResultTileValue`
- `getTiledImplementationFromOperandTiles`
- `getIterationDomainTileFromOperandTiles`

The hint-bearing overload defaults to forwarding to the hint-less one,
so the change is additive: existing implementers and callers that never
mention the hint are unaffected, and the rest of the interface is
untouched.

### Where it helps

The loop tiles the packed dimension by `8 * vscale`, so the size handed
to the pack/unpack is a **full-or-remainder** `affine.min` against that
step:

```mlir
//   #map = affine_map<(d0)[s0] -> (-d0 + 4096, s0)>   // min(4096 - iv, 8*vscale)
%ts = affine.min #map(%iv)[%c8_vscale]
// ... %ts feeds the extracted slice fed to the pack/unpack, whose inner tile
//     on this dimension is also 8*vscale.
```

To fold the tiled op's outer (tile-count) dimension to a static `1`, the
current implementation asks
`ValueBoundsConstraintSet::computeConstantBound` for a *constant* upper
bound on `%ts` and compares it against the inner tile size, essentially
`UB(%ts) % innerTile == 0`. With a scalable `8 * vscale` inner tile,
neither the upper bound of `%ts` nor the inner tile is a constant, so
the comparison is undecidable and the tile conservatively falls back to
a dynamic outer dim (`tensor<?x...>`), over-allocating the tile.

`inner_tile_alignments = [Equal]` asserts `%ts == 8 * vscale`, so the
outer dim folds to a static `1` (`tensor<1x...>`); `[Multiple]` instead
takes the `ceilDiv` branch. The hint thus supplies exactly the
relationship the upper-bound comparison cannot recover for symbolic
sizes.

### How the hint is arranged

- One entry per **iteration-domain dimension**, in **pre-interchange**
order (`interchange` only reorders the generated loops, not the hint).
- Entries are **not** remapped through indexing maps or
`outer_dims_perm`: for a transposing pack they stay in source
(pre-permutation) order.
- For the consumer-fusion (`*FromOperandTiles`) methods, the indexing
follows the op's iteration domain: for a pack it coincides with the
unpacked source dims; for an unpack the entry for the i-th inner tile
sits at its destination dimension `inner_dims_pos[i]`.

The caller must pre-arrange the array to match this order. See the tests
for more examples.

### Out-of-tree implementers

Because the two overloads share a source name:

- An op that lists one of the four methods in
`DeclareOpInterfaceMethods` now has **both** arities declared on it, so
it must also define the hint-bearing overload (typically a one-line
forward to the hint-less one).
- An `ExternalModel` that defines the hint-less overload **hides** the
inherited defaulted hint-bearing overload (C++ name hiding); add `using
Base::<method>;` to keep it visible.

Implementers that do not care about the hint need no functional change
beyond the above visibility boilerplate.

## SCF tiling driver API

The producer- and consumer-fusion driver entry points
(`tileAndFuseProducerOfSlice`, `tileAndFuseConsumerOfSlices`,
`tileAndFuseConsumer`) and `SCFTilingOptions` accept an optional
**control function** rather than a single fixed array.

A single tile-and-fuse invocation can tile/fuse several ops with
**different iteration domains**, so no single array can be correct for
all of them. The driver therefore invokes the control function once per
op being tiled/fused and
expects the returned array to be in *that op's own* domain, it does not
remap it.

### Why a control function and not one array

A single tile-and-fuse can pull in more than one pack/unpack, and each
consults the hint in *its own* iteration domain:

```mlir
%unpacked = linalg.unpack %p0 inner_dims_pos = [0] inner_tiles = [%c8_vscale] ... // domain A
%mul      = linalg.generic ins(%unpacked, ...) ...                                // tiled root
%packed   = linalg.pack   %mul inner_dims_pos = [1] inner_tiles = [%c4_vscale] ... // domain B
// One tile-and-fuse: tile %mul, fuse %unpacked (producer) and %packed (consumer).
```

Both `%unpacked` and `%packed` consume the hint, but their domains
differ, a different dimension is tiled and the inner-tile arrangement is
different, so the array indexed in `%unpacked`'s domain is simply wrong
for `%packed`. No single fixed array can be correct for both. The driver
therefore invokes the control function once per op being tiled/fused and
the caller returns each op's array in its own domain.

### Why the function gets slices (not tile sizes) for fusion

For pure tiling the driver knows the explicit tile sizes and passes
them. In fusion there are no caller-specified tile sizes for the fused
op, its tile is induced by the `tensor.extract_slice` (producer) or
`insert_slice` (consumer) being fused. The control function is therefore
handed those slices, from which the caller can derive the alignment in
the fused op's domain.

## Transform ops

`transform.structured.tile_using_for`, `transform.structured.fuse`, and
`transform.structured.fuse_into_containing_op` gain an optional
`inner_tile_alignments` array attribute (empty by default, preserving
prior behavior). It is wired to the driver as a **constant** control
function (the same array for every op). This is sufficient because each
of these ops drives tiling/fusion at single-op granularity; the per-op
control function remains available at the library/driver level for
callers that fuse multiple ops with differing domains. The test-only
`transform.test.fuse_consumer` is wired the same way.

## Testing

- **`linalg.unpack`**: standalone tiling, producer fusion
(`structured.fuse`, `fuse_into_containing_op`), and consumer fusion
(`test.fuse_consumer`), with both `Multiple` and `Equal` hints.
- **`linalg.pack`**: standalone tiling, producer fusion, and consumer
fusion (`test.fuse_consumer`), with both `Multiple` and `Equal` hints.
- Negative cases: missing hint falls back to the conservative tiling; a
hint that contradicts statically-known sizes is ignored; transposing
`outer_dims_perm`/consumers confirm source-order (un-permuted) indexing.
- Transform-op attribute verification (`inner_tile_alignments`
validity).


Assisted-by: Claude Code

---------

Signed-off-by: Ege Beysel <beyselege at gmail.com>


  Commit: a4df89bcc69ad1c3ef9e57c4cd692cc15cec82d6
      https://github.com/llvm/llvm-project/commit/a4df89bcc69ad1c3ef9e57c4cd692cc15cec82d6
  Author: Maxim Potapchik <maximp1012 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetPfmCounters.td
    A llvm/test/TableGen/ExegesisRawPfmCounters.td
    M llvm/tools/llvm-exegesis/lib/Target.cpp
    M llvm/tools/llvm-exegesis/lib/Target.h
    M llvm/utils/TableGen/ExegesisEmitter.cpp

  Log Message:
  -----------
  [llvm-exegesis] Add raw PMU encoding in TargetPfmCounters tablegen (#201228)

Adds optional EventSelect and UMask fields to PfmCounter in
TargetPfmCounters.td. EventSelect defaults to -1 (no raw encoding).
When set, ExegesisEmitter outputs raw hex values instead of a libpfm
symbolic name, allowing per-CPU .td entries to bypass
pfm_get_os_event_encoding for counters that are undocumented or
unsupported in libpfm.

Extends PfmCountersInfo with CycleCounterEventSelect, CycleCounterUMask,
UopsCounterEventSelect, and UopsCounterUMask fields. PerfHelper wiring
in a subsequent patch.

Towards #187930


  Commit: c6579063cd660094ed7fd121191c5fb9cd1c4b55
      https://github.com/llvm/llvm-project/commit/c6579063cd660094ed7fd121191c5fb9cd1c4b55
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp

  Log Message:
  -----------
  [DebugInfo] Avoid std::function in DWARF verifier internals (#202866)

This changes `OutputCategoryAggregator`'s synchronous callback
parameters from `std::function` to `function_ref`, avoiding type-erased
callback construction at 75 `DWARFVerifier` diagnostic sites.

On an arm64 Release build, standalone llvm-dwarfdump decreases by
133,680 bytes raw and 17,040 bytes stripped, `DWARFVerifier.cpp.o`
decreases by 174,464 bytes, and linked fixups decrease by 546.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 47e3ac23cb90d206ada66383517ffe0e996c60c9
      https://github.com/llvm/llvm-project/commit/47e3ac23cb90d206ada66383517ffe0e996c60c9
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb][test] Truncate unexpectedly long test outputs (#206967)

A bug in LLDB could make our tests to produce giant ValueObjects with
millions of children. The same goes for most commands that print out
test data. While our test system can handle this amount of output, the
resulting log output will most likely break the storage capacity of our
build bots.

This patch adds truncation to the various expect* methods that avoids
spamming the output in the (unlikely) case this happens.

See also #206444


  Commit: 59362e4224aa66092a40dbbaac87f38e4dbc6e61
      https://github.com/llvm/llvm-project/commit/59362e4224aa66092a40dbbaac87f38e4dbc6e61
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/TestDataFormatterStdVBool.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/vbool/main.cpp

  Log Message:
  -----------
  [lldb][test] Modernize and expand data-formatter-stl/generic/vbool (#206955)

This fixes several issues with this test:
* We use modern test utils for setting up the process.
* We get rid of the state-reset code which is no longer necessary these
days.
* Expand the test to also cover an empty and sub-word-size vector of
bool.

assisted-by: claude


  Commit: bb315b7e2953f02e1c8996b110752610e2187ce0
      https://github.com/llvm/llvm-project/commit/bb315b7e2953f02e1c8996b110752610e2187ce0
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] Update (p)haddsub undef element tests to match the output IR from the middle-end (#207244)

Use the vectorised output from the PhaseOrdering/X86 hadd.ll tests -
I've added test coverage for multiple SSE/AVX levels for cases where the
middle-end output is different for any level.

This exposes a number of regressions that have been there for some time
but we'd missed as we'd assumed the backend would still be receiving
non-vectorised IR, but there's been plenty of changes to SLP,
InstCombine and VectorCombine since then - end2end tests would have been
very useful here :(

Looking at fixes next before finally removing the (dead) scalar hadd
matching code for #143000


  Commit: 97f71863590c260870789489200a7652c957827f
      https://github.com/llvm/llvm-project/commit/97f71863590c260870789489200a7652c957827f
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/DenseSet.h

  Log Message:
  -----------
  [ADT][NFC] Remove unused ValueInfoT from DenseSetImpl (#207277)

The `ValueInfoT` template type was unused and is removed in this patch.

---------

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


  Commit: 35bbd6224676b6c0464f92c9f63a7d61f9e53b2a
      https://github.com/llvm/llvm-project/commit/35bbd6224676b6c0464f92c9f63a7d61f9e53b2a
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/test/MC/AArch64/arm-poe2.s

  Log Message:
  -----------
  [AArch64][llvm] Update POE2 thread-private system register names (#200428)

The `TPMINn_ELn` and `TPMAXn_ELn` system registers have been removed
from the 2026-06 documentation [1]. Their encodings are now used by the
`TPCRn_ELn` system registers [2].

Update the system register definitions and MC tests accordingly.
  
[1] https://developer.arm.com/documentation/111109/2026-06
[2]
https://developer.arm.com/documentation/111107/2026-06/AArch64-Registers/TPCR0-EL0--Thread-Private-State-Register-0--EL0-


  Commit: ce68a9916a908b3ed0b7e26468140ee63696558e
      https://github.com/llvm/llvm-project/commit/ce68a9916a908b3ed0b7e26468140ee63696558e
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s

  Log Message:
  -----------
  [AMDGPU][AsmParser] Fix representing src2 op_sel for MAC instructions (#206033)


  Commit: 4f06fa92b6cf16cec5bd0bfe7ef3efec17b91e24
      https://github.com/llvm/llvm-project/commit/4f06fa92b6cf16cec5bd0bfe7ef3efec17b91e24
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/test/std/library/description/conventions/customization.point.object/cpo.compile.pass.cpp

  Log Message:
  -----------
  [libc++][ranges] Enable CPO compile tests (#207123)

`adjacent_transform_view` and `stride_view` were implemented but the
test cases were omitted.

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 61f64e3fececf30cd15727e5d3fc303191513e2e
      https://github.com/llvm/llvm-project/commit/61f64e3fececf30cd15727e5d3fc303191513e2e
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU][InsertWaitCnt] Remove Leftover Comment (#207378)

The right test cases were added in #206439 so that comment no longer
applies.


  Commit: 3b908aaf1de387c34738ebe5166adab98d2254ce
      https://github.com/llvm/llvm-project/commit/3b908aaf1de387c34738ebe5166adab98d2254ce
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll

  Log Message:
  -----------
  [X86] haddsub-undef.ll - sync more testnames with their phaseordering equivalents (#207370)

Ensure we have equivalent hadd/sub middle-end test coverage with similar names for lookup


  Commit: df6e3809d218f42f17a3c90f31498b01b0122346
      https://github.com/llvm/llvm-project/commit/df6e3809d218f42f17a3c90f31498b01b0122346
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp

  Log Message:
  -----------
  [AArch64] Minor simplification in aarch64-ldst-opt with an early return (#207182)

Remove the local `MBBIWithRenameReg` by moving an early return at an
even earlier point.

When `MBBIWithRenameReg` is set we always return early. By moving the
early return to `MBBIWithRenameReg` update we get rid of a local
variable which spans  200+ lines. This also fixes a misleading debug
print between `MBBIWithRenameReg` update and early return:

```
LLVM_DEBUG(dbgs() << "Unable to combine these instructions due to "
                << "interference in between, keep looking.\n");
```

This line shouldn't be printed when we set `MBBIWithRenameReg`, which is
fixed with this change.


  Commit: 965b73ab185f3798b1afe0895476ae899189fcb0
      https://github.com/llvm/llvm-project/commit/965b73ab185f3798b1afe0895476ae899189fcb0
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/M68k/M68kRegisterInfo.cpp

  Log Message:
  -----------
  [M68k] Fix build after removal of RegisterClasses pointer array (#207364)

Commit 4d8ec1968023 ("[CodeGen][NFC] Remove RegisterClasses pointer
array (#207204)") removed regclass_begin()/regclass_end() from
TargetRegisterInfo, so those names now resolve to the MCRegisterInfo
versions whose iterator dereferences to a MCRegisterClass rather than a
const TargetRegisterClass *, breaking getMaximalPhysRegClass():

  error: cannot convert 'const llvm::MCRegisterClass' to
  'const llvm::TargetRegisterClass*' in initialization

M68k was not updated in that commit. Switch to the range-based
regclasses() idiom used elsewhere in the same change.

Regressor: 4d8ec1968023 ("[CodeGen][NFC] Remove RegisterClasses pointer
array") (#207204)


  Commit: 22e5273cc3334906fc18fce2aebb74986259e31d
      https://github.com/llvm/llvm-project/commit/22e5273cc3334906fc18fce2aebb74986259e31d
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-declare-target-func-visibility.mlir
    M mlir/test/Target/LLVMIR/omptarget-device-shared-mem.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop-collapsed.mlir
    M mlir/test/Target/LLVMIR/omptarget-wsloop.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Change device declare target functions to hidden visibility (#207234)

During OpenMP lowering, globally visible device functions are emitted.
These functions might not be kernels themselves, but are designed to
only be called in a kernel context. However, if they are unused, and not
inlined, and reference LDS, the AMDGPU ISel emits lots of misleading
warnings related to "local memory global used by non-kernel function".
Fix by changing visibility from external+default to external+hidden,
which allows DCE to just remove the functions.

Claude assisted with this patch.


  Commit: afe7d8c4d0dce76e0775cdea9e1ed3ee58b63146
      https://github.com/llvm/llvm-project/commit/afe7d8c4d0dce76e0775cdea9e1ed3ee58b63146
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp

  Log Message:
  -----------
  [CSKY] Fix build (#207389)

After 0b413b7d0f5a64e2bb1dea136688b3f4e4ea5e22.


  Commit: ac47f992ffac0842891a7fb6f412bff49b12f364
      https://github.com/llvm/llvm-project/commit/ac47f992ffac0842891a7fb6f412bff49b12f364
  Author: Marc Auberer <marc.auberer at chillibits.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/TokenKinds.h
    M llvm/include/llvm/ADT/DenseMap.h
    M llvm/include/llvm/ADT/DenseMapInfo.h
    M llvm/include/llvm/ADT/DenseSet.h
    M llvm/include/llvm/Support/JSON.h

  Log Message:
  -----------
  [ADT][NFC] Remove unused includes in DenseMap/DenseSet headers (#207282)

Remove unused includes in DenseMap/DenseSet headers.
`llvm/Support/AlignOf.h` was transitively included in
`llvm/Support/JSON.h`


  Commit: 4cdb0335647089e12cb7b8d675871bb7086ed189
      https://github.com/llvm/llvm-project/commit/4cdb0335647089e12cb7b8d675871bb7086ed189
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/vector-loop-backedge-elimination-tail-folding.ll

  Log Message:
  -----------
  [VPlan] Optimize pre-increment IV latch users with tail folding (#206499)

This was noticed after #204089 caused IndVarsSimplify to convert some
live out IV users to use the pre-incremented IV, not the
post-incremented.

Tail folded live-outs don't have the `(extract-last-lane
(extract-last-part foo))` form, but instead have the form `(extract-lane
(last-active-lane header-mask), foo)`.
For post-incremented IVs in tail folding, these are converted to
VPInstruction::ExitingIVValue which are handled separately. But
ExitingIVValue can't be used for the pre-incremented IV. So this teaches
optimizeLatchExitInductionUser to detect the last-active-lane of the
header mask form.


  Commit: a4e51ff84f7eae35f2b1e5e6b53ba0cd3d2e3089
      https://github.com/llvm/llvm-project/commit/a4e51ff84f7eae35f2b1e5e6b53ba0cd3d2e3089
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp

  Log Message:
  -----------
  [VPlan] Introduce m_Branch matcher (NFC) (#207383)


  Commit: c1a016708ee305c72db55b613b8c036ca6dfb84e
      https://github.com/llvm/llvm-project/commit/c1a016708ee305c72db55b613b8c036ca6dfb84e
  Author: Barbara Mitic <bmitic at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
    M llvm/test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll

  Log Message:
  -----------
  [AMDGPU] Accept sext addresses when folding image ops to a16 (#203189)

canSafelyConvertTo16Bit() only accepts a zext when narrowing image
address coordinates to 16 bits. Add an opt-in AllowI16SExt flag so a
sext from i16 is accepted too, and enable it for sampler-less image
instructions.
Coordinates of sampler-less loads/stores are unsigned, so sext and zext
only disagree for a negative i16 (>= 0x8000), which is already out of
bounds since the maximum image dimension is <= 0x8000. Accepting the
sext therefore lets such coordinates fold to the a16 form, reducing VGPR
pressure.

Co-authored-by: Barbara Mitic <Barbara.Mitic at amd.com>


  Commit: 7a3ed4d252ff06161f73d68f3f31bc9aac50aa22
      https://github.com/llvm/llvm-project/commit/7a3ed4d252ff06161f73d68f3f31bc9aac50aa22
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge.def
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_set_neonq.c

  Log Message:
  -----------
  [Clang][SVE ACLE] Remove +bf16 requirement from neon-sve bridge builtins. (#205332)

These builtins only care about the size of the element type and do not
require bfloat specific instructions.


  Commit: 1d577d28b2d259e99795d4f523d527335b04075d
      https://github.com/llvm/llvm-project/commit/1d577d28b2d259e99795d4f523d527335b04075d
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/ClangStaticAnalyzer.md
    M clang/docs/ScalableStaticAnalysis/index.md

  Log Message:
  -----------
  [analyzer][docs] Fix invalid MyST toctree 'numbered' option after Markdown migration (#207217)

The RST-to-Markdown migration (#206181) converted the RST flag
`:numbered:` into `:numbered: true`.

MyST parses the toctree `numbered` option as `int_or_nothing`, so the
string `true` fails with:

```
'toctree': Invalid option value for 'numbered': true:
invalid literal for int() with base 10: 'true'
```

This breaks the `-W` (warnings-as-errors) `docs-clang-html` build.
Make `numbered` a valueless flag, which MyST accepts (equivalent to the
original RST behavior of numbering all levels).

Assisted-By: claude


  Commit: c87a57fcce04d38e23ec5c16ef9b80a4cfbb1c3c
      https://github.com/llvm/llvm-project/commit/c87a57fcce04d38e23ec5c16ef9b80a4cfbb1c3c
  Author: Cyrus Ding <91178148+dingcyrus at users.noreply.github.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/lib/Basic/IdentifierTable.cpp

  Log Message:
  -----------
  [Clang] Remove unused TokenKey::KEYNOZOS (#207132)

[Clang] Remove unused TokenKey::KEYNOZOS

  KEYNOZOS was defined as a TokenKey flag to mark keywords not supported
  on z/OS, but no keyword in TokenKinds.def actually uses it. This patch
  removes the unused enum value and its associated handling code.

  Build: `ninja clang` succeeded (2923/2923 targets).
  Tests: `ninja check-clang` passed — 51180 passed, 0 failed.

AI assistance was used for code review analysis and CI failure
debugging.

  Fixes #206877

Co-authored-by: Chenguang Ding <dingchenguang at kylinos.cn>


  Commit: 624781038c030f8311664e847efda83a2754d5bc
      https://github.com/llvm/llvm-project/commit/624781038c030f8311664e847efda83a2754d5bc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/haddsub-undef.ll

  Log Message:
  -----------
  [X86] haddsub-undef.ll - update remaining tests to match IR generated by middle-end (#207391)

Last prep for #143000


  Commit: ccfab9ee84ae4f7da776d5022e86c62b0960ee4a
      https://github.com/llvm/llvm-project/commit/ccfab9ee84ae4f7da776d5022e86c62b0960ee4a
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/build-vector-reconstructshuffle.ll

  Log Message:
  -----------
  [AArch64] Fix ReconstructShuffle for known vscale>1 (#205099)

The code at AArch64TargetLowering::ReconstructShuffle expects
NEON-compatible types. But for e.g. vscale_range = {2}, we can get legal
fixed-length vectors that are wider than 128 bits.


  Commit: ee82fc0ca6d276c5fe8b19b7f8c24b8a64550193
      https://github.com/llvm/llvm-project/commit/ee82fc0ca6d276c5fe8b19b7f8c24b8a64550193
  Author: Qixi <tjx2361869673 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/test/Sema/matrix-type-operators.c

  Log Message:
  -----------
  [Clang] Fix crash on subscripting a complete matrix subscript expression (#207317)

Subscripting a complete MatrixSubscriptExpr (which has scalar type)
caused an assertion failure in ActOnArraySubscriptExpr because the code
unconditionally asserted isIncomplete() on any MatrixSubscriptExpr base.

Fix by guarding the matrix subscript path with an isIncomplete() check,
allowing complete matrix subscript expressions to fall through to the
standard subscript handling, which emits an appropriate diagnostic.

Fixes #203163


  Commit: 62f8a7b95711baf3b53bf37c4b6e124547902fee
      https://github.com/llvm/llvm-project/commit/62f8a7b95711baf3b53bf37c4b6e124547902fee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [VectorCombine] isExtractExtractCheap - add dbg message showing OldCost vs NewCost (#207386)

Add missing dbs message for VC fold costs decision


  Commit: d1c2d8650ab18c84459cbb6d787243bda595ff70
      https://github.com/llvm/llvm-project/commit/d1c2d8650ab18c84459cbb6d787243bda595ff70
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp
    M llvm/include/llvm/Support/TextEncoding.h
    M llvm/lib/Support/TextEncoding.cpp

  Log Message:
  -----------
  Forward declare TextEncodingConverter in TextEncoding.h, move config.h into TextEncoding.cpp (#207382)

This patch forward declares TextEncodingConverter in
clang/include/clang/Lex/TextEncoding.h, and moves config.h into
llvm/lib/Support/TextEncoding.cpp instead of the header.


  Commit: 2a951083b1fd3e2d221613f3f94f68b05111fefb
      https://github.com/llvm/llvm-project/commit/2a951083b1fd3e2d221613f3f94f68b05111fefb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/Transforms/UnifyAliasedResourcePass.cpp
    M mlir/test/Dialect/SPIRV/Transforms/unify-aliased-resource.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Guard getSizeInBytes() optionals in UnifyAliasedResourcePass rewriters (#207325)


  Commit: fa0822a9dd7bc50ad61a0b19455ca1d26aafe3d5
      https://github.com/llvm/llvm-project/commit/fa0822a9dd7bc50ad61a0b19455ca1d26aafe3d5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Fix null deref in SpecConstantOperationOp::verifyRegions (#207328)


  Commit: e788a46f7311e49d8275116c7a634a04a43a9cef
      https://github.com/llvm/llvm-project/commit/e788a46f7311e49d8275116c7a634a04a43a9cef
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM lowering for GL Radians and Degrees ops (#205967)


  Commit: 6bc513523c7069ee7449a0025b6d1d7f06a44d63
      https://github.com/llvm/llvm-project/commit/6bc513523c7069ee7449a0025b6d1d7f06a44d63
  Author: firmiana402 <firmiana402 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    A llvm/test/DebugInfo/X86/implicit-value-truncated-integer.ll

  Log Message:
  -----------
  [DebugInfo] Truncate implicit value constants to source type width (#206671)

This is a follow-up to #204353.

mikaelholmen and bevin-hansson reported that the previous change could
assert downstream when emitting `DW_OP_implicit_value` for a source
integer type wider than the target generic DWARF stack type, if the
debug-value carrier integer contains bits outside the declared source
type width.

The fix is to construct the source-width `APInt` with explicit
truncation enabled before emitting the implicit value bytes. This
preserves the intended wrap/truncate behavior and avoids asserting on
otherwise recoverable debug-value input.

A regression test is added for an `unsigned _BitInt(48)` debug value on
i386, covering both an out-of-range positive carrier value and an
all-ones negative carrier value.


  Commit: 433eef6dea23c18d52c51218bb9d7f9bfbf47ecf
      https://github.com/llvm/llvm-project/commit/433eef6dea23c18d52c51218bb9d7f9bfbf47ecf
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    R llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    R llvm/test/Bitcode/module-asm.ll
    R llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    R llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    R llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    R llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  Revert "[IR] Explicitly specify target feature for module asm" (#207399)

Reverts llvm/llvm-project#204548

This is causing the runtimes build to fail with e.g.:

```
<inline asm>:11:5: error: 32 bit reloc applied to a field with a different size
   11 | jmp __interceptor_strlen at plt
      |     ^
```

See comments on the PR.


  Commit: 4ba692f421e0679676057b8bf880ff9728c90dd0
      https://github.com/llvm/llvm-project/commit/4ba692f421e0679676057b8bf880ff9728c90dd0
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/include/clang/Lex/TextEncoding.h
    M clang/lib/Lex/TextEncoding.cpp

  Log Message:
  -----------
  Change ToLiteralEncodingConverter to a unique_ptr (#207258)

This patch changes ToLiteralEncodingConverter from a raw pointer to a unique_ptr


  Commit: 1ffae54e7ed2143cd14057406882ff8a073ef3fe
      https://github.com/llvm/llvm-project/commit/1ffae54e7ed2143cd14057406882ff8a073ef3fe
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/alternate-shuffle-cost.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-select.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-single-src.ll
    M llvm/test/Analysis/CostModel/X86/shuffle-two-src.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hadd.ll
    M llvm/test/Transforms/PhaseOrdering/X86/hsub.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-stored.ll

  Log Message:
  -----------
  [CostModel][X86] Reduce cost of pre-SSE41 select shuffle (#207400)

The all-logic instructions have better throughput/latency than shuffles

Confirmed with uops.info, llvm-mca and agner


  Commit: 780298c4424514f0205df5e82c2a135717e6a723
      https://github.com/llvm/llvm-project/commit/780298c4424514f0205df5e82c2a135717e6a723
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Assembler/invalid-immarg5.ll
    M llvm/test/CodeGen/NVPTX/cp-async-bulk-tensor-g2s-invalid.ll
    M llvm/test/CodeGen/NVPTX/fence-proxy-tensormap-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-invalid.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-scale-d-invalid.ll
    M llvm/test/Verifier/AMDGPU/test-cvt-fp4f6f8-immarg-ranges.ll
    M llvm/test/Verifier/NVPTX/fence-proxy.tensormap.ll
    M llvm/test/Verifier/NVPTX/setmaxnreg.ll
    M llvm/test/Verifier/intrinsic-immarg.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  [NFC][LLVM] Define range attribute for `llvm.prefetch` args (#207300)

Define valid range for `llvm.prefetch` immarg values and eliminate C++
verification code.

Additionally, change the range verification failure message to include
the argument number and simplify formatting using `formatv`.


  Commit: d2b5a1fabf98178713282658605f615ab14a5d68
      https://github.com/llvm/llvm-project/commit/d2b5a1fabf98178713282658605f615ab14a5d68
  Author: Björn Schäpers <bjoern at hazardy.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Fix annotating paren after in (#206810)

The y.in(foo) was considered a cast, and thus the following - annotated
as unary operator.

Fixes #206339


  Commit: e6cef24f6c5cbae725eeba3c0fffcb15380f9d27
      https://github.com/llvm/llvm-project/commit/e6cef24f6c5cbae725eeba3c0fffcb15380f9d27
  Author: Gustas Janušonis <janusonis.gustas at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Format/NumericLiteralInfo.cpp
    M clang/unittests/Format/NumericLiteralInfoTest.cpp

  Log Message:
  -----------
  [clang-format] Fix crash on numeric literals with an incomplete exponent (#206594)

NumericLiteralInfo could read into tokens out of bounds due to the token
processing assuming well-formed numeric literals and incrementing
pointers to read past them. The fix properly bounds the searches to the
token size via std::min and accounts for the new trimmed string size.

Fixes #206593

Used Claude Code for help with identifying the source of the bug and
checking correctness with fuzzing, wrote the solution myself


  Commit: 77cc8841df4f1ced13ff16e7338b0f5625ad3850
      https://github.com/llvm/llvm-project/commit/77cc8841df4f1ced13ff16e7338b0f5625ad3850
  Author: Viktoria Maximova <viktoria.maksimova at intel.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.h
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_bfloat16_load_store_xchg.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_16bit_atomics/atomic_int16_load_store_xchg_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/load-atomic.ll
    M llvm/test/CodeGen/SPIRV/transcoding/store-atomic.ll

  Log Message:
  -----------
  [SPIRV] Preserve FP types in atomic load/store instead of casting to integer (#194583)

The default
`TargetLowering::shouldCastAtomicLoadInIR`/`shouldCastAtomicStoreInIR`
cast all FP atomics to integer, producing unnecessary bitcasts in SPIR-V
output. Override both to return None, matching the existing
`shouldCastAtomicRMWIInIR` behavior and letting
`OpAtomicLoad`/`OpAtomicStore` operate on FP types directly.

Also updated 16-bit atomics tests from #184312 to use native load/store
atomic instructions now that the SPIRV backend supports them (landed in
#185696).

AI-assisted: Claude Sonnet 4.6 (commercial SaaS)


  Commit: e56187575b740a182288244a2304d4ae1592b3ff
      https://github.com/llvm/llvm-project/commit/e56187575b740a182288244a2304d4ae1592b3ff
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/ArrayRef.h
    M llvm/unittests/ADT/ArrayRefTest.cpp

  Log Message:
  -----------
  [ArrayRef] Make iterator_range constructor const-agnostic (#205183)

Make the enable_if guard const-agnostic to help some use-cases.


  Commit: 0fd9b71a397c77bc6671df3b0fbeb41fa8c73fed
      https://github.com/llvm/llvm-project/commit/0fd9b71a397c77bc6671df3b0fbeb41fa8c73fed
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [NFC][LLVM][Verifier] Use auto when assigning result of `dyn_cast` (#207343)


  Commit: 627b1645051f7b6b59aef446a43e59f6696e250f
      https://github.com/llvm/llvm-project/commit/627b1645051f7b6b59aef446a43e59f6696e250f
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-placement-issue61083.ll

  Log Message:
  -----------
  [AMDGPU] Remove obsolet __keep_alive declare in test (#207418)

__keep_alive doesn't exist anymore since
https://reviews.llvm.org/D151324


  Commit: 554e32395cd552dd36d3511d177f01735937d4f9
      https://github.com/llvm/llvm-project/commit/554e32395cd552dd36d3511d177f01735937d4f9
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h

  Log Message:
  -----------
  [compiler-rt][sanitizer_common] Remove internal linkage from RegisterFlag (NFC) (#206308)

RegisterFlag is a static function template in a header, so every TU that
includes it without calling it trips `-Wunused-template`. Dropping
static gives it normal external linkage and clears the warning.

NFC. Part of #202945.


  Commit: d24f20ab649a28dd48b09c0bebc1f255e7ebf909
      https://github.com/llvm/llvm-project/commit/d24f20ab649a28dd48b09c0bebc1f255e7ebf909
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/X86DisassemblerDecoderCommon.h
    M llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp
    M llvm/utils/TableGen/DisassemblerEmitter.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.cpp
    M llvm/utils/TableGen/X86DisassemblerTables.h

  Log Message:
  -----------
  [X86] Pool sparse disassembler opcode rows (#202666)

The XOP, 3DNow, and VEX/EVEX map 4-7 decoder tables contain 1,760
context rows but only 266 distinct values. Keep the four common opcode
maps as direct tables and intern rows only for these eight sparse maps.

This reduces fully stripped arm64 llvm-mc from 8,333,344 to 6,797,728
bytes, saving 1,535,616 bytes (18.43%). X86Disassembler.cpp.o decreases
by 1,525,328 bytes (52.36%); constant data falls by 1,526,328 bytes
while text grows by 848 bytes. The stripped all-tools multicall binary
decreases from 145,103,200 to 143,567,584 bytes, saving 1,535,616 bytes
(1.058%).

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 11d2e989db34fb2a94ff6574f43d1fb3f9a84fa5
      https://github.com/llvm/llvm-project/commit/11d2e989db34fb2a94ff6574f43d1fb3f9a84fa5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [X86] known-pow2.ll - regenerate checks to reduce diff in a future patch (#207425)


  Commit: 80f2ae4b5681f9324795691bcad0e81c06fba69b
      https://github.com/llvm/llvm-project/commit/80f2ae4b5681f9324795691bcad0e81c06fba69b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg.ll

  Log Message:
  -----------
  [X86] zero_extend_vector_inreg.ll - regenerate checks to reduce diff in a future patch (#207424)


  Commit: 4f64218c2aee2d0a74838d4b5adf3bbb1fbffea5
      https://github.com/llvm/llvm-project/commit/4f64218c2aee2d0a74838d4b5adf3bbb1fbffea5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

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

  Log Message:
  -----------
  [VPlan] Add m_VScale() pattern matcher. (NFC) (#207394)

Add a dedicated m_VScale() matcher for VPInstruction::VScale, in line
with other VPInstruction matchers.


  Commit: 14d98081a574c3c5f342e2d2e958a514369fa2f2
      https://github.com/llvm/llvm-project/commit/14d98081a574c3c5f342e2d2e958a514369fa2f2
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M compiler-rt/lib/hwasan/hwasan_checks.h

  Log Message:
  -----------
  [compiler-rt][hwasan] Remove internal linkage from check templates (NFC) (#207430)

`SigTrap`, `CheckAddress`, and `CheckAddressSized` are static function
templates in `hwasan_checks.h`, so any TU that includes the header
without instantiating them trips -Wunused-template. Dropping static
clears the warning.
Part of #202945


  Commit: 210834279ac6c3c47fdbe8dfe112c625f429e869
      https://github.com/llvm/llvm-project/commit/210834279ac6c3c47fdbe8dfe112c625f429e869
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/injected-class-name-crash.cpp

  Log Message:
  -----------
  [clang] fix redeclarations of the injected class name (#207301)

The declaration used to represent an injected class name should never be
part of any redeclaration chain.

Fixes #202320


  Commit: b6976d223eeb40091685e3b20e9c41f42f6bd6e0
      https://github.com/llvm/llvm-project/commit/b6976d223eeb40091685e3b20e9c41f42f6bd6e0
  Author: Neil Nair <neilnair4 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/support/CMakeLists.txt
    A clang-tools-extra/clang-doc/support/Markdown.cpp
    A clang-tools-extra/clang-doc/support/Markdown.h
    M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
    A clang-tools-extra/unittests/clang-doc/MarkdownParserTest.cpp

  Log Message:
  -----------
  [clang-doc] Add Markdown AST node type definitions (#205609)

Markdown AST node hierarchy for clang-doc/support. Separate Block and
Inline node hierarchies using llvm::ilist_node and llvm::simple_ilist.
Virtual print() in base classes with LLVM_DUMP_METHOD dump() inherited
by subclasses. clangDocMarkdown is its own CMake target. Unit tests
exercise node construction, accessors, and children. Assisted-by: Claude


  Commit: 297261502dcf30ad06f45edd4a250f4f3af27014
      https://github.com/llvm/llvm-project/commit/297261502dcf30ad06f45edd4a250f4f3af27014
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/fmaddsub-combine.ll

  Log Message:
  -----------
  [X86] fmaddsub-combine.ll - remove 128/256-bit buildvector tests (#207436)

These are covered by PhaseOrdering/X86/fmaddsub.ll which outputs the
vectorized shuffle patterns already tested for in fmaddsub-combine.ll
and fmsubadd-combine.ll

Minor cleanup for #144489


  Commit: 320a8a4db8720ac54ee37eedeb92dbe452a86dcb
      https://github.com/llvm/llvm-project/commit/320a8a4db8720ac54ee37eedeb92dbe452a86dcb
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/test/Transforms/InstCombine/fptrunc.ll

  Log Message:
  -----------
  [InstCombine] Don't blindly copy ninf when narrowing fptrunc(binop(fpext, fpext)) (#202489)

The fold narrows fptrunc(BO(fpext x, fpext y)) -> BO(x, y) for
fadd/fsub/fmul/fdiv, recomputing the binop directly in the narrower
type.

Even if the original BO returns a finite result, the fptrunc may produce
inf. Therefore even if the original BO has ninf, we have to drop it on
the new BO unless the original fptrunc *also* has ninf.


  Commit: 63b19740e0bc4a145ed9b4dd4273123a0ed2247d
      https://github.com/llvm/llvm-project/commit/63b19740e0bc4a145ed9b4dd4273123a0ed2247d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/known-range-frexp-exp.ll

  Log Message:
  -----------
  [ValueTracking] Fix frexp exponent range for nan/inf inputs (#202447)

computeConstantRange() returns a bounded range for the exponent result of
llvm.frexp.

frexp's exponent is unspecified when the argument is nan or inf,
so we can assign such a range only if we know the argument is
not nan or inf.


  Commit: cbb277a718bd9a8ee28df177f42313cda00cb3f6
      https://github.com/llvm/llvm-project/commit/cbb277a718bd9a8ee28df177f42313cda00cb3f6
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxxabi/src/private_typeinfo.cpp

  Log Message:
  -----------
  [libc++abi][NFC] Avoid out parameter in dyn_cast_get_derived_info (#207326)

Returning the object is much more idiomatic than having an out
parameter.


  Commit: 3f724494ef0f0bd7d6e74fee7c526567910e6f87
      https://github.com/llvm/llvm-project/commit/3f724494ef0f0bd7d6e74fee7c526567910e6f87
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Add VPBuilder::createVScale (NFC) (#207401)

Add a VPBuilder::createVScale helper (mirroring IRBuilder::CreateVScale)
and use it at the existing sites that create a VScale VPInstruction.


  Commit: 796dc153395846413591e6c35324f738d214e32f
      https://github.com/llvm/llvm-project/commit/796dc153395846413591e6c35324f738d214e32f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn] Fix mistake from 4df00678d86fe (#207451)


  Commit: 07ef930cd2aa519f78f2542122a7911a210f02a0
      https://github.com/llvm/llvm-project/commit/07ef930cd2aa519f78f2542122a7911a210f02a0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 24476abfac20 (#207452)


  Commit: e96a42daca51802041eb795aa7da95e273885c52
      https://github.com/llvm/llvm-project/commit/e96a42daca51802041eb795aa7da95e273885c52
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M libcxx/test/benchmarks/spec.gen.py
    M libcxx/utils/run-spec-benchmark

  Log Message:
  -----------
  [libc++] Fix SPEC benchmarks not producing a .lnt result file (#207450)

The refactoring in 471e8f7f94e7 removed the output of a .lnt file, which
is necessary for interoperation with consolidate-benchmarks.


  Commit: fbbf5df32b42dc8fa5dd6ed03b28f366734c2778
      https://github.com/llvm/llvm-project/commit/fbbf5df32b42dc8fa5dd6ed03b28f366734c2778
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Target/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/Utility/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 282416b6d457 (#207453)


  Commit: 0576c32331eaf12d2cd4cfbed9baec01cb205091
      https://github.com/llvm/llvm-project/commit/0576c32331eaf12d2cd4cfbed9baec01cb205091
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port bd338806e423 (#207455)


  Commit: a6f54816073f0c275c8710a6281d156a94133322
      https://github.com/llvm/llvm-project/commit/a6f54816073f0c275c8710a6281d156a94133322
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/support/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/unittests/clang-doc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port b6976d223eeb (#207454)


  Commit: 296ab5b036138914851839bf9632ce82a12192d4
      https://github.com/llvm/llvm-project/commit/296ab5b036138914851839bf9632ce82a12192d4
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Core/BUILD.gn

  Log Message:
  -----------
  [gn build] Port e69038f9c2b1 (#207457)


  Commit: 66ae5b8f699a31240a738311e4acc81ef3ce700b
      https://github.com/llvm/llvm-project/commit/66ae5b8f699a31240a738311e4acc81ef3ce700b
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Lex/BUILD.gn

  Log Message:
  -----------
  [gn build] Port f1aeaa7bd552 (#207458)


  Commit: 0418a88ae67165a2f7af0e25ad34fdaa84df3b21
      https://github.com/llvm/llvm-project/commit/0418a88ae67165a2f7af0e25ad34fdaa84df3b21
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/zos_wrappers/grp.h
    A clang/lib/Headers/zos_wrappers/locale.h
    A clang/lib/Headers/zos_wrappers/math.h
    A clang/lib/Headers/zos_wrappers/poll.h
    A clang/lib/Headers/zos_wrappers/string.h
    A clang/lib/Headers/zos_wrappers/time.h
    A clang/lib/Headers/zos_wrappers/variant.h
    A clang/test/Headers/Inputs/zos/usr/include/grp.h
    A clang/test/Headers/Inputs/zos/usr/include/locale.h
    A clang/test/Headers/Inputs/zos/usr/include/math.h
    A clang/test/Headers/Inputs/zos/usr/include/poll.h
    A clang/test/Headers/Inputs/zos/usr/include/string.h
    A clang/test/Headers/Inputs/zos/usr/include/time.h
    A clang/test/Headers/Inputs/zos/usr/include/variant.h
    A clang/test/Headers/zos-guard.c

  Log Message:
  -----------
  [z/OS][Clang] Reland Add wrapper headers to avoid macro name conflicts (#204472) (#207420)

Some z/OS system headers define macros (e.g. __time, __math) that
conflict with user identifiers and break compilation. These wrappers
include the system headers and neutralize the problematic macros.

Reland of 04079deb547c91eff6c6e2b820dbe6937c72fcf5.
Add systemz-registered-target requirement to zos-guard.c.


  Commit: e0289ad97908460c5dadbc4aefb3ad22cd8ac054
      https://github.com/llvm/llvm-project/commit/e0289ad97908460c5dadbc4aefb3ad22cd8ac054
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    A llvm/test/CodeGen/RISCV/rvp-bitreverse-zbkb.ll

  Log Message:
  -----------
  [RISCV][P-ext] Use brev8 for bitreverse with Zbkb (#207338)

Resolves the FIXME.


  Commit: 4fd535388e1b52122259db6686bf7f5c2468edf0
      https://github.com/llvm/llvm-project/commit/4fd535388e1b52122259db6686bf7f5c2468edf0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0418a88ae671 (#207463)


  Commit: a9c5602da71ada68dfebd5bbe311f88baa8a72c5
      https://github.com/llvm/llvm-project/commit/a9c5602da71ada68dfebd5bbe311f88baa8a72c5
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    A llvm/test/CodeGen/PowerPC/abdu-neg.ll
    A llvm/test/CodeGen/PowerPC/abdu.ll
    M llvm/test/CodeGen/PowerPC/misched.ll

  Log Message:
  -----------
  [PowerPC] Custom Lower ABDU using branchless carry (#182704)

In normal abs, we already do this but with asr 31 instead of sbc, which
we can get directly from the subtraction.


  Commit: 37fa9c4b74e93ce3055804f51caa1ca2c11219c8
      https://github.com/llvm/llvm-project/commit/37fa9c4b74e93ce3055804f51caa1ca2c11219c8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/alias-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/clmul.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/runtime-check-trip-count-decisions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fixed-width-inorder-core.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/alias-mask-force-evl.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
    M llvm/test/Transforms/LoopVectorize/X86/clmul.ll
    M llvm/test/Transforms/LoopVectorize/X86/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/nondetermisitic-widening-cost.ll
    M llvm/test/Transforms/LoopVectorize/alias-mask-negative-tests.ll
    M llvm/test/Transforms/LoopVectorize/forked-pointers.ll
    M llvm/test/Transforms/LoopVectorize/fpsat.ll
    M llvm/test/Transforms/LoopVectorize/hoist-and-sink-mem-ops-with-invariant-pointers.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads.ll
    M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/noalias-scope-decl.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/pointer-select-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/predicated-inductions.ll
    M llvm/test/Transforms/LoopVectorize/preserve-dbg-loc-and-loop-metadata.ll
    M llvm/test/Transforms/LoopVectorize/replace-first-order-recurrence-by-versioned-iv.ll
    M llvm/test/Transforms/LoopVectorize/reuse-lcssa-phi-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-readonly.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-bounded-ranges.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    M llvm/test/Transforms/LoopVectorize/struct-return.ll
    M llvm/test/Transforms/LoopVectorize/tail-folding-constant-trip-counts.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/hoisting-sinking-required-for-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll

  Log Message:
  -----------
  [LAA] Use (Diff - 1) <u (Threshold - 1) for diff checks. (#188462)

Update diff checks to use (Diff - 1) <u (Threshold - 1), equivalent to 0
< Diff <u Threshold, to exclude Diff == 0, equal pointers are a safe
loop-independent dependence.

Alive2 proofs https://alive2.llvm.org/ce/z/_ss9QG
 * (Diff - 1) <u (Threshold - 1) => 0 < Diff <u Threshold
 * Old and new check are equivalent, if diff > 0: 

On some platforms, this adds an extra instruction to compute the diff
check, but allows to handle the case where both pointers are equal.

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


  Commit: 5de2fb5112d03e319035e3c147e08c0db506cce8
      https://github.com/llvm/llvm-project/commit/5de2fb5112d03e319035e3c147e08c0db506cce8
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanCFG.h

  Log Message:
  -----------
  [VPlan] Simplify VPHierarchicalChildrenIterator::operator*. NFC (#207464)

This is like a pointer-valued iterator, whose constness should not
qualify the pointee ( `vector<T*>::const_iterator` yields `T*`, not
`const T*`), so collapse the two overloads into a single `BlockPtrTy
operator*() const`.


  Commit: 1381ef49fc5cc8c5bd76aa9b86fdf2507312d78d
      https://github.com/llvm/llvm-project/commit/1381ef49fc5cc8c5bd76aa9b86fdf2507312d78d
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ReleaseNotes.md
    M clang/docs/ReleaseNotesTemplate.txt
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/Diagnostic.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Testing/TestLanguage.def
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/unknown-std.cpp
    M clang/test/Preprocessor/init.c
    M clang/unittests/Basic/LangOptionsTest.cpp
    M clang/www/OpenProjects.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status

  Log Message:
  -----------
  [Clang] Add flags and lang option for C++2d (#203992)

This adds diagnostic groups, command-line options, a language option,
and various other things required to support `-std=c++2d`. I haven’t
touched e.g. clang-tidy or clang-format, as I’m not really familiar w/
either. This is only meant to add the most necessary parts to support
C++29 mode.

I grepped for `CPlusPlus26`/`C++26`/`C++2c` and updated all places I
could find where we need to handle every language mode in some way or
another.

This patch is roughly based on b763d6a4ed4650c74c6846d743156468563b0e31.


  Commit: bf68b4165c419f1893d0668bb05630e33c2efe8c
      https://github.com/llvm/llvm-project/commit/bf68b4165c419f1893d0668bb05630e33c2efe8c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h

  Log Message:
  -----------
  [LV] Implement VPBuilder::createPtrAdd with createNoWrapPtrAdd (NFC) (#207467)

createPtrAdd is exactly createNoWrapPtrAdd with GEPNoWrapFlags::none().
Forward to it instead of duplicating the VPInstruction construction.


  Commit: 76357610925cbc76f3a084dea730f97db8fe7464
      https://github.com/llvm/llvm-project/commit/76357610925cbc76f3a084dea730f97db8fe7464
  Author: David Tenty <daltenty at ibm.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/Object/ObjectFile.cpp
    M llvm/unittests/Object/GOFFObjectFileTest.cpp

  Log Message:
  -----------
  [llvm][object] handle GOFF in createObjectFile (#206636)

`ObjectFile::createObjectFile` doesn't handle GOFF and returns an error,
even though the requisite GOFF support is present (i.e.
`createGOFFObjectFile`). This change corrects this, and adds a simple
test for `createObjectFile` on a GOFF type object.


  Commit: 0f1f456263b5889935514ecf81440d0909d06dc7
      https://github.com/llvm/llvm-project/commit/0f1f456263b5889935514ecf81440d0909d06dc7
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2026-07-03 (Fri, 03 Jul 2026)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/FileCheck/FileCheckImpl.h
    M llvm/test/FileCheck/match-time-error-propagation/matched-excluded-pattern.txt
    M llvm/test/FileCheck/match-time-error-propagation/matched-expected-pattern.txt
    A llvm/test/FileCheck/unmatched-substs-captures.txt

  Log Message:
  -----------
  [FileCheck] Call out var captures on unmatched patterns (#206303)

This patch is motivated by an #llvm IRC chat in 2019 with @AaronBallman,
where he pointed out an example similar to following:

```
$ cat input
[[clang::optnone]] void foo() {

$ cat check
CHECK: [[clang::optnone]] void foo() {

$ FileCheck check < input |& tail -7
Input was:
<<<<<<
           1: [[clang::optnone]] void foo() {
check:1'0    {                                } search range (exclusive bounds)
check:1'1                                       error: no match found
check:1'2            ?                          possible intended match
>>>>>>
```

It is very easy to miss why that fails. This patch adds one more note
that hopefully clears up the confusion:

```
$ FileCheck check < input |& tail -8
Input was:
<<<<<<
           1: [[clang::optnone]] void foo() {
check:1'0    {                                } search range (exclusive bounds)
check:1'1                                       error: no match found
check:1'2                                       pattern attempts to capture variables: "clang"
check:1'3            ?                          possible intended match
>>>>>>
```

That is, where matching patterns print successful variable captures,
this patch makes unmatching patterns print attempted variable captures.


  Commit: 951a60861a9998c429f833364480265a0c5dd052
      https://github.com/llvm/llvm-project/commit/951a60861a9998c429f833364480265a0c5dd052
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpStack.cpp
    M clang/lib/AST/ByteCode/InterpStack.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Source.h
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode] Move the program counter into `InterpState` (#207393)

Instead of using a local variable for the PC, save it in `InterpState`.
Only comparatively few opcodes care about it, but with exceptions, all
calls ops can change the PC. Saving it in the `InterpState` makes it
easier to have opcode implementation jump around in bytecode.


  Commit: 5b53190d1209bca676ca60797a30bdd3593edbb1
      https://github.com/llvm/llvm-project/commit/5b53190d1209bca676ca60797a30bdd3593edbb1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Remove unused local variable (#207480)

It's unnecessary and broke a builder:
https://lab.llvm.org/buildbot/#/builders/228/builds/3735


  Commit: 238dbdce63b41b4da1f808b78e3d143f1635642b
      https://github.com/llvm/llvm-project/commit/238dbdce63b41b4da1f808b78e3d143f1635642b
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Bytecode/BytecodeImplementation.h
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/include/mlir/IR/BytecodeBase.td
    M mlir/lib/IR/BuiltinDialectBytecode.cpp
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp

  Log Message:
  -----------
  [mlirbc] Add IntegerSetAttr (#207482)

Serialize IntegerSetAttr using VarInt for numDims and numSymbols and
arrays for contraints and eqFlags. Add ArrayWithKnownSize` an Array
variant that omits the length prefix when the size is known from a
previously serialized member. This avoids encoding redundant array
lengths when, for example, two arrays are always the same size.

Assisted-By: Gemini


  Commit: db0f427a25a4caae97679a4a0caf05aed5dd47f5
      https://github.com/llvm/llvm-project/commit/db0f427a25a4caae97679a4a0caf05aed5dd47f5
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M compiler-rt/lib/nsan/nsan.cpp

  Log Message:
  -----------
  [compiler-rt][nsan] Remove unused checkValueConsistency template (NFC) (#207441)

checkValueConsistency is a static function template in nsan.cpp with no
callers, so it trips -Wunused-template. Remove the dead code.

Part of #202945


  Commit: 99c1a8c36e9f5d9d448c377edc0f10e6bea7e6e9
      https://github.com/llvm/llvm-project/commit/99c1a8c36e9f5d9d448c377edc0f10e6bea7e6e9
  Author: Daniel Cederman <cederman at gaisler.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/LeonPasses.cpp
    M llvm/lib/Target/Sparc/LeonPasses.h
    A llvm/test/CodeGen/SPARC/tn0010.ll
    M llvm/test/CodeGen/SPARC/tn0010.mir

  Log Message:
  -----------
  [Sparc] Handle two new cases in the GRLIB-TN-0010 workaround pass (#205780)

Handle the case of an empty block or an indirect branch.


  Commit: c874b1b4b2bd3cefb3479c9fc82af67883b20d28
      https://github.com/llvm/llvm-project/commit/c874b1b4b2bd3cefb3479c9fc82af67883b20d28
  Author: Jacques Pienaar <jacques+gh at japienaar.info>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinDialectBytecode.td
    M mlir/test/Dialect/Builtin/Bytecode/attrs.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed.mlir
    M mlir/test/Dialect/Builtin/Bytecode/builtin_fixed_0.mlirbc
    M mlir/test/Dialect/Builtin/Bytecode/types.mlir

  Log Message:
  -----------
  [mlirbc] Address remaining missing encodings for builtin dialect. (#207488)

Simple ones that got missed (graph & strided layout), and add some
additional tests. Also update the fixed test.

Assisted-By: Gemini


  Commit: b2755364764f0159a0e74a7111c3fc2140ec43ee
      https://github.com/llvm/llvm-project/commit/b2755364764f0159a0e74a7111c3fc2140ec43ee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Remove LowerToHorizontalOp vectorization lowering code (#207406)

Thanks to improvements to SLP, InstCombine and VectorCombine - we should
no longer see any of the scalar code hadd/sub patterns in the backend.

This allows to remove the old
build_vector(x[0]+x[1],x[2]+x[3],y[0]+y[1],y[2]+y[3]) lowering entirely,
and just rely on the combineToHorizontalAddSub folds from
add(shuffle(x,y),shuffle(x,y)) patterns.

Fixes #143000


  Commit: 0649b2e7b39c7f0614b0a8862ec0097ea6f497d7
      https://github.com/llvm/llvm-project/commit/0649b2e7b39c7f0614b0a8862ec0097ea6f497d7
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp

  Log Message:
  -----------
  [clang-tidy] Fix FP in misc-const-correctness (#206515)

`ExprPointeeResolve` now resolves through the `int*` to `void*` bitcast
when the destination pointee is non-const

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


  Commit: f78d4b083b462607b518db6fed5ac8204de95e13
      https://github.com/llvm/llvm-project/commit/f78d4b083b462607b518db6fed5ac8204de95e13
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [LV] Use findUserOf to improve addReductionResultComputation (NFC) (#207427)


  Commit: 38ecfd2c0d9acef2ea328fb88550a3846ac5c9fe
      https://github.com/llvm/llvm-project/commit/38ecfd2c0d9acef2ea328fb88550a3846ac5c9fe
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    A lldb/test/API/functionalities/fork/stop/Makefile
    A lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py
    A lldb/test/API/functionalities/fork/stop/main.c
    A lldb/test/Shell/Subprocess/stop-on-fork.test
    A lldb/test/Shell/Subprocess/stop-on-vfork.test

  Log Message:
  -----------
  [lldb] Add stop-on-fork and stop-on-vfork settings (#188710)

Added support for new `target.process.stop-on-fork` and
`target.process.stop-on-vfork` settings. GDB already has ability to set
[catchpoints](https://www.sourceware.org/gdb/current/onlinedocs/gdb.html/Set-Catchpoints.html)
on `fork` and `vfork`, so having this feature in LLDB might be useful
(e.g. use it to get pid of new process and attach to the new process
from different console).


  Commit: e173245deeaa234064c23f4185998f06f0778a86
      https://github.com/llvm/llvm-project/commit/e173245deeaa234064c23f4185998f06f0778a86
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-chained.ll

  Log Message:
  -----------
  [LV] Add test with BuildVector select condition. (NFC) (#207506)

Add test case causing revert 638d71403 (revert of #206774).


  Commit: 645e02b88248103e8cce0c9ab605e6eaa70c0f07
      https://github.com/llvm/llvm-project/commit/645e02b88248103e8cce0c9ab605e6eaa70c0f07
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py

  Log Message:
  -----------
  [lldb] Disable TestStopOnForkAndVFork on remote targets (#207509)

Fix CI after merge of #188710


  Commit: bf09114d6164f522508ae80921a63c5a080c183d
      https://github.com/llvm/llvm-project/commit/bf09114d6164f522508ae80921a63c5a080c183d
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M mlir/cmake/modules/AddMLIR.cmake

  Log Message:
  -----------
  [mlir][cmake][NFC] Remove duplicate `tablegen_compile_commands.yml` append (#207510)

The append-logic of the compile command is already performed by the
`tablegen` function, there is no need to replicate the logic twice.


  Commit: 72070deb4d811cce31154257a1acfca74d738130
      https://github.com/llvm/llvm-project/commit/72070deb4d811cce31154257a1acfca74d738130
  Author: janr-bay <jrehders at baylibre.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/lib/Support/APFloat.cpp
    M llvm/unittests/ADT/APFloatTest.cpp

  Log Message:
  -----------
  [APFloat] Extend fltSemantics with field for explicit integer bit (#204860)

This is one more step towards being able to make APFloat extensible with
custom formats in the future.

fltSemantics gained a new flag to indicate the presence of an explicit
integer bit as specified by the x86 double extended precision format.

The special case implementation for initFromF80LongDoubleAPInt has been
merged into initFromIEEEAPInt.

Also adding tests for x87DoubleExtended bit conversion.
initFromF80LongDoubleAPInt was called only twice during in all APFloat
unit tests together. Testing common cases, boundary conditions, and the
special cases documented in IEEEFloat::initFromF80LongDoubleAPInt.


  Commit: b3e8d7ebed1dc50bce3348d1508316cc6a493133
      https://github.com/llvm/llvm-project/commit/b3e8d7ebed1dc50bce3348d1508316cc6a493133
  Author: Kim Gräsman <kim.grasman at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/Headers/avx512vp2intersectintrin.h

  Log Message:
  -----------
  [X86] Update #error to mention the right header name (#207507)

Practically every internal intrinsics header has a little public/private
check to force users to use public *intrin.h header names.

avx512vp2intersectintrin.h is the only one with a discrepancy between
the #error directive and the actual filename.

Fix them to agree. No functional change expected.


  Commit: 06554227c7005f90fee66925d9acbe249329b005
      https://github.com/llvm/llvm-project/commit/06554227c7005f90fee66925d9acbe249329b005
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/buildvector-first-lane-only.ll

  Log Message:
  -----------
  Reapply "[VPlan] Replace first-lane uses of BuildVector." (#206774) (#207512)

This reverts commit 638d71403a8598bb061b874ab39b8f9c6f0a97f0.

Recommit with fix for root cause of the revert:
VPWidenRecipe::onlyFirstLaneUsed was incorrectly assuming all operands
defined outside loop region are invariant, which is not true (e.g.
BuildVector). Test added in e173245deeaa2340.

Original message:
Replace uses of the first lane of a BuildVector with the first operand.


  Commit: 6ae9fe5e285847107ca47ace4368ca0cde894108
      https://github.com/llvm/llvm-project/commit/6ae9fe5e285847107ca47ace4368ca0cde894108
  Author: Markus Böck <markus.boeck02 at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/CIR/Dialect/CMakeLists.txt
    M clang/include/clang/Parse/CMakeLists.txt
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Serialization/CMakeLists.txt
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/Headers/CMakeLists.txt
    M llvm/include/llvm/TargetParser/CMakeLists.txt
    M offload/plugins-nextgen/common/CMakeLists.txt

  Log Message:
  -----------
  [cmake][NFC] Use `EXTRA_INCLUDES` in `tablegen` commands (#207514)

Not only is it more declarative than using the `-I` directory, it
additionally adds the given directory to the
`tablegen_compile_commands.yml` which allows the LSP and IDE tooling to
also be aware of the extra include directories used to compile that
TableGen file


  Commit: b105f35c2d0befe65545092894a2a2d292192582
      https://github.com/llvm/llvm-project/commit/b105f35c2d0befe65545092894a2a2d292192582
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Unify "this pointer" naming in interp::Function (#207410)


  Commit: 103f170a390e69a032fcb4333e6ed68e6112a3a5
      https://github.com/llvm/llvm-project/commit/103f170a390e69a032fcb4333e6ed68e6112a3a5
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    A llvm/test/tools/llvm-pdbutil/opt-docnum.test
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.cpp
    M llvm/tools/llvm-pdbutil/llvm-pdbutil.h

  Log Message:
  -----------
  [llvm-pdbutil] Support `--docnum` for yaml2pdb (#207058)

I saw that yaml2obj has this option to select the nth yaml document.
This makes it easy to group multiple outputs together. For example a
COFF yaml + PDB yaml in one file.

As a semi-related change, I also declared the yaml2pdb options in
`llvm-pdbutil.h`. clang-tidy complains about them being only in the
source file (could be static in that case).


  Commit: 64f834271e07350a921f6abe925e5a11cd7da562
      https://github.com/llvm/llvm-project/commit/64f834271e07350a921f6abe925e5a11cd7da562
  Author: disservin <disservin.social at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp

  Log Message:
  -----------
  [clang] Remove always false comparisons (#207504)

```
llvm-project/clang/lib/Sema/SemaTemplateVariadic.cpp:1371:16: warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]
 1371 |     if (*Index < 0 || *Index >= ExpandedExprs.size()) {
      |         ~~~~~~~^~~

llvm-project/clang/lib/Sema/SemaType.cpp:10130:32: warning: comparison of unsigned expression in ‘< 0’ is always false [-Wtype-limits]
10130 |     if (FullySubstituted && (V < 0 || V >= Expansions.size())) {
```


https://github.com/llvm/llvm-project/commit/9b132a2ff80dac4bc8e78b242bebb97551c292c7
changed the types from int64_t to uint64_t so those comparisons are
always false now


  Commit: 4a2ad970c6fe783f026be47292be93b6cdfe7d9b
      https://github.com/llvm/llvm-project/commit/4a2ad970c6fe783f026be47292be93b6cdfe7d9b
  Author: satyanarayana reddy janga <satyajanga at gmail.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Utility/ArchSpec.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp

  Log Message:
  -----------
  [lldb] Add AMD GPU architectures to ArchSpec (#206369)

## Summary
Teach ArchSpec and ObjectFileELF about AMD (R600 and GCN/amdgcn) GPU
architectures so GPU ELF object files and triples resolve to a precise
architecture.

## Tests: 
unit-test the ELF-header -> architecture mapping in ArchSpecTest and an
end-to-end AMDGPU ELF in TestObjectFileELF.

The processor list, e_flags machine values, OSABI and ABI versions
follow llvm/include/llvm/BinaryFormat/ELF.h (AMDGPU_MACH_LIST) and the
AMDGPU code-object spec documented at
https://llvm.org/docs/AMDGPUUsage.html.


  Commit: e395479d5cf45246f8bd6636a72274df8f225be5
      https://github.com/llvm/llvm-project/commit/e395479d5cf45246f8bd6636a72274df8f225be5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Speed up Semi-NCA construction (#207474)

Run the immediate-dominator step in DFS-number space instead of chasing
NodePtr IDom through getNodeInfo()/getNumber(), and drop the redundant
NumToInfo[Semi]->DFSNum lookup. Use an inline capacity 32 (sqlite3's p90
is ~29 blocks), with no measurable gain from a larger inline buffer.
NumToInfo and IDoms are filled with resize_for_overwrite: index 0 is an
unused sentinel (DFS numbering is 1-based) and every other slot is
written before it is read, so the value-init and push_back bookkeeping
are dead.

Make getChildren return a lazy filtered range and iterate it directly in
runDFS's common case, instead of materializing a SmallVector per node
just to push its successors onto the worklist.

clang::CFGBlock::AdjacentBlock still needs special handling: it is a
proxy convertible to CFGBlock* that can be null for unreachable edges
(also see commit 7ea0ee30588e), and it is not easy to migrate off.


  Commit: 580fac02f4ca7be5a04062c19044d261152c42fd
      https://github.com/llvm/llvm-project/commit/580fac02f4ca7be5a04062c19044d261152c42fd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-shuffle.ll

  Log Message:
  -----------
  [SLP][NFC]Remove undefs, NFC



Reviewers: 

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


  Commit: 1ceada6b6466d09c73c367ea8c664df47570efb8
      https://github.com/llvm/llvm-project/commit/1ceada6b6466d09c73c367ea8c664df47570efb8
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/docs/PDB/CodeViewSymbols.rst

  Log Message:
  -----------
  [Docs][CodeView] Document `S_LOCAL` and `S_DEFRANGE*` (#190156)

As suggested in
https://github.com/llvm/llvm-project/pull/187709#issuecomment-4120922355,
this adds documentation for both `S_LOCAL` and the known `S_DEFRANGE*`
records.

In all descriptions, I put struct definition with comments, because it
describes both the layout and the function of each member. Some comments
are from the original PDB repo
(https://github.com/microsoft/microsoft-pdb/blob/805655a28bd8198004be2ac27e6e0290121a5e89/include/cvinfo.h#L4209-L4291).

Many structs in LLVM itself don't have these comments. I think we should
also add them there.


  Commit: 33be7999a363dd6a870baaebf5cd871309b668b0
      https://github.com/llvm/llvm-project/commit/33be7999a363dd6a870baaebf5cd871309b668b0
  Author: 8051Enthusiast <8051Enthusiast at protonmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/DemandedBits.cpp
    M llvm/test/Analysis/DemandedBits/intrinsics.ll

  Log Message:
  -----------
  [DemandedBits] Track demanded bits for clmul instrinsics (#202415)

Similar to regular multiplication, carryless multiplication does not
depend on bits in positions higher than the output bits.


  Commit: 143e5bf1935cc5a5f94f27ea2a17969100a5ca5b
      https://github.com/llvm/llvm-project/commit/143e5bf1935cc5a5f94f27ea2a17969100a5ca5b
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

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

  Log Message:
  -----------
  [VPlan] Remove redundant VPIRValue cast in ::computeCost (NFC) (#207525)

We can directly cast o VPConstantInt.


  Commit: 5b23e226ed8a38b725253748e623ad9bf27ac4a4
      https://github.com/llvm/llvm-project/commit/5b23e226ed8a38b725253748e623ad9bf27ac4a4
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/test/Sema/LifetimeSafety/lifetime-facts.cpp

  Log Message:
  -----------
  [LifetimeSafety][NFC] Support printing propagated loans in Fact::dump (#207526)

This patch updates Fact::dump to accept an optional
LoanPropagationAnalysis parameter.
If provided, OriginFlowFact::dump will query it to print the loans held
by the destination origin.

This enables richer debug output for LifetimeFacts.


  Commit: 7a3767e361cc0d6acc8e1568727a54d9b0d0b525
      https://github.com/llvm/llvm-project/commit/7a3767e361cc0d6acc8e1568727a54d9b0d0b525
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp

  Log Message:
  -----------
  [clang][bytecode] Only pass OpPC if needed (#207479)

Quite a few opcode implementations don't ever report a diagnostic, so
they don't need the `OpPC` at all. Add a tablegen bit to disable passing
`OpPC` altogether.


  Commit: fa7d2a86bfb22f8ff5961ab1b1bcda42c5da49ff
      https://github.com/llvm/llvm-project/commit/fa7d2a86bfb22f8ff5961ab1b1bcda42c5da49ff
  Author: Kazu Hirata <kazu at google.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfWriter.h
    M llvm/lib/ProfileData/SampleProf.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/ProfileData/SampleProfWriter.cpp

  Log Message:
  -----------
  [ProfileData] Fix formatting (#207442)

I've been working in this area, and I keep running into some of the
formatting issues fixed in this patch.


  Commit: 725051d69b733910226687a99dacc6ffc8805aab
      https://github.com/llvm/llvm-project/commit/725051d69b733910226687a99dacc6ffc8805aab
  Author: Douglas Yung <douglas.yung at sony.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M clang-tools-extra/test/clang-doc/html/long-name.cpp

  Log Message:
  -----------
  Mark test introduced in #205586 as unsupported on Windows because it creates paths that are too long (#207476)


  Commit: 3eb53013dca38fc0fa0c0e11de9fef1a7a14b9c7
      https://github.com/llvm/llvm-project/commit/3eb53013dca38fc0fa0c0e11de9fef1a7a14b9c7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Make VPRegionValue a subclass of VPSymbolicValue. (NFC) (#196753)

Turn VPRegionValue into a subclass of VPSymbolicValue, ensuring we also
guard against premature RAUW of region values.

Split off from approved https://github.com/llvm/llvm-project/pull/196199

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


  Commit: 2925ca216d5a3d87697484a085dd63d6bfd3a655
      https://github.com/llvm/llvm-project/commit/2925ca216d5a3d87697484a085dd63d6bfd3a655
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/AssumptionCache.cpp
    M llvm/test/Analysis/AssumptionCache/basic.ll
    M llvm/test/Transforms/InstCombine/assume-cache-update.ll

  Log Message:
  -----------
  [AssumptionCache] Properly print assume operand bundles. (#207501)

Update AssumptionCache printing to print operand bundles, instead of
just printing true which does not provide any useful information.


  Commit: eaa33893a5d45031f2f5f180b897aeaaa25aab42
      https://github.com/llvm/llvm-project/commit/eaa33893a5d45031f2f5f180b897aeaaa25aab42
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/AArch64/vplan-memory-op-decisions.ll

  Log Message:
  -----------
  [VPlan] Add additional memory decision tests. (NFC) (#207537)

Add extra tests showing additional cases where no VPlan-based decisions
are made yet.


  Commit: c98a157d7d76f982d3e1a12db23b47196ac358d4
      https://github.com/llvm/llvm-project/commit/c98a157d7d76f982d3e1a12db23b47196ac358d4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/debug-info-salvage.ll

  Log Message:
  -----------
  [SLP][NFC]Update test to avoid instructions folding, NFC



Reviewers: 

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


  Commit: 7f449d38cd9d203af2be106210f3ef9c30597ebe
      https://github.com/llvm/llvm-project/commit/7f449d38cd9d203af2be106210f3ef9c30597ebe
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-04 (Sat, 04 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/resched.ll

  Log Message:
  -----------
  [SLP][NFC]Remove undef from the test, cleanup, NFC



Reviewers: 

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


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp

  Log Message:
  -----------
  [AMDGPU][NFC] Remove direct access to FeatureKV (#206231)

This is preparatory work for changing the representation of
FeatureKV/SubTypeKV, in which they will no longer be that easily
accessible as global variables. Therefore, get them from the subtarget
instead.


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

  Changed paths:
    M llvm/include/llvm/MC/MCInstrInfo.h
    M llvm/lib/MC/MCInstrInfo.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [MC][NFC] Generate ComplexDeprecationInfos as function (#207496)

The only user of ComplexDeprecationInfos is ARM, where 19 instructions
are deprecated. Instead of emitting a ~36kiB function pointer table,
emit a single 201B (x86-64) function switching over the opcodes.


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

  Changed paths:
    M lldb/source/DataFormatters/FormatterBytecode.cpp
    M llvm/include/llvm/DebugInfo/CodeView/Formatters.h
    M llvm/include/llvm/DebugInfo/PDB/Native/FormatUtil.h
    M llvm/include/llvm/Support/FormatAdapters.h
    M llvm/include/llvm/Support/FormatCommon.h
    M llvm/include/llvm/Support/FormatProviders.h
    M llvm/include/llvm/Support/FormatVariadic.h
    M llvm/include/llvm/Support/FormatVariadicDetails.h
    M llvm/lib/Support/FormatVariadic.cpp
    M llvm/tools/llvm-xray/xray-stacks.cpp
    M llvm/unittests/ADT/TwineTest.cpp
    M llvm/unittests/Support/FormatVariadicTest.cpp
    M mlir/include/mlir/TableGen/Format.h
    M mlir/lib/TableGen/Format.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp

  Log Message:
  -----------
  [Support] Remove virtual functions from formatv (#207516)

Currently, formatv erases types using a base class and calls the virtual
function format() to format the objects. To avoid these vtables,
refactor formatv to instead store function_refs to a functor (struct
with overloaded operator()). This saves ~5kiB in vtables.

Additionally, add a static assertion that a formatter is present instead
of relying on errors due to missing templates. This requires a little
change to MLIR's tgfmt to use a different name -- previously, the
substitution failure on ArrayRef<> would cause the variadic function to
be skipped, but a static assertion failure is not a substitution error.

Also, simplify the code in FormatVariadicDetails to use if constexpr
instead of template overloads with enable_if, making the code shorter
and easier to read.


  Commit: 5ec0eee3a67ec0f8aebccc6864c574ce73e2f937
      https://github.com/llvm/llvm-project/commit/5ec0eee3a67ec0f8aebccc6864c574ce73e2f937
  Author: Zorojuro <sawantsukumar at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libc/src/__support/frac128.h

  Log Message:
  -----------
  [libc] Fix buildbot failure for bigint (#207534)

Fixes the buildbot failure in
https://github.com/llvm/llvm-project/pull/206277 by adding the missing
initialization


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

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Support][NFC] Use single predecessor array in DomTreeConstr (#207535)

Storing many small vectors of predecessors is bad for performance, as
each of these has to be non-trivially initialized when growing the
NodeInfos vector. Therefore, store all predecessors in a separate
vector, in which predecessors form a linked list.


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

  Changed paths:
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/test/TableGen/MacroFusion.td
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [MC] Generate FeatureKV with compact string table (#206331)

FeatureKV is responsible for a fair amount of .data.rel.ro size and
relocations; in an all-target build, this amounts to ~139 kiB that need
to be touched on every startup. Therefore, store strings adjacent to the
SubtargetFeatureKV in memory and reference the strings via relative
offsets to avoid dynamic relocations.


  Commit: b0a64cf46adcb6da2cef28bac25f910077277923
      https://github.com/llvm/llvm-project/commit/b0a64cf46adcb6da2cef28bac25f910077277923
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv
    M libcxx/test/std/utilities/memory/pointer.traits/pointer.traits.functions/pointer_to.pass.cpp

  Log Message:
  -----------
  [libc++] Mark LWG3454 as resolved (#207487)

Closes https://github.com/llvm/llvm-project/issues/171307.

LWG3454 has been implemented in
https://github.com/llvm/llvm-project/commit/98d3d5b5da66e3cf7807c23a0294280bb796466b.


  Commit: c4714e43dc36f4bcf047e0f4bb1f8757fe72e422
      https://github.com/llvm/llvm-project/commit/c4714e43dc36f4bcf047e0f4bb1f8757fe72e422
  Author: Sergey Subbotin <ssubbotin at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/lib/Format/Format.cpp
    M clang/unittests/Format/ConfigParseTest.cpp

  Log Message:
  -----------
  [clang-format] Fix BlockIndent compat mapping of AlignAfterOpenBracket (#207187)

be11e2b3d25 (#192283) replaced the `[[fallthrough]]` chain in the
`AlignAfterOpenBracket` backward-compatibility switch with explicit
per-case assignments. In the `BAS_BlockIndent` case the
`BreakBeforeCloseBracket{BracedList,Function,If} = true` assignments are
immediately overwritten with `false`, and
`BreakAfterOpenBracket{BracedList,Function,If}` (previously inherited
from the `BAS_AlwaysBreak` case via fallthrough) are never set. As a
result, `AlignAfterOpenBracket: BlockIndent` parses to the same flag set
as `Align`, silently dropping the block-indent style for existing
configurations.

Restore the pre-#192283 mapping and pin the full BlockIndent flag
mapping in ConfigParseTest so the compat shim cannot regress silently
again.

Fixes #207186.

Note for the release branch: if #205920 (backport of #192283 to
release/22.x) lands, this fix needs to be backported together with it.


  Commit: 758f0394c0158d7b4db7b7f1d5cd8174ab9812b7
      https://github.com/llvm/llvm-project/commit/758f0394c0158d7b4db7b7f1d5cd8174ab9812b7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp

  Log Message:
  -----------
  [VPlan] Move consecutive vector pointer construction to VPBuilder (NFC). (#207563)

Introduce VPBuilder::createConsecutiveVectorPointer to create vector
pointers for consecutive accesses. This enables re-use in follow-up
changes.


  Commit: 37f7fc7c05865e1c8ebcda915d379963b48c3e69
      https://github.com/llvm/llvm-project/commit/37f7fc7c05865e1c8ebcda915d379963b48c3e69
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-profiles.c
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/MC/RISCV/invalid-attribute.s
    A llvm/test/MC/RISCV/rvy-build-attributes.s
    A llvm/test/MC/RISCV/rvy-invalid-attributes.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISC-V][RVY] Initial ISAInfo support for RVY

RVY is a new base ISA, so the syntax to enable it is rv32y/rv64y.
Since the compressed instructions reuse the space for Zcf (RV32) and
Zcd (RV64), those are marked as incompatible and the logic for C/Zce
is updated as part of this PR.
RVY can also extend RVE instead of RVY (as is done for CHERIoT), but the
official arch string syntax for that has not been finalized yet.
Related discussion on that includes the "long base name" proposal:
https://lists.riscv.org/g/tech-unprivileged/message/1134

Reviewers: topperc, lenary, jrtc27

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


  Commit: a8b40e80344d09b9a1b2b14bde934494409db9df
      https://github.com/llvm/llvm-project/commit/a8b40e80344d09b9a1b2b14bde934494409db9df
  Author: Zhige Chen <zhige_chen at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    A llvm/test/tools/llubi/intr_experimental_vector.ll
    M llvm/tools/llubi/lib/Interpreter.cpp

  Log Message:
  -----------
  [llubi] Implement experimental vector intrinsics (#206899)

This PR implements experimental vector intrinsics.


  Commit: f26f3e659f4a4292f8cf311f351bcc231dc59c71
      https://github.com/llvm/llvm-project/commit/f26f3e659f4a4292f8cf311f351bcc231dc59c71
  Author: AbdallahRashed <63146988+AbdallahRashed at users.noreply.github.com>
  Date:   2026-07-05 (Sun, 05 Jul 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
    A clang/test/CodeGen/AArch64/neon/rounding-v8.5.c
    M clang/test/CodeGen/AArch64/v8.5a-neon-frint3264-intrinsic.c

  Log Message:
  -----------
  [clang][CIR] Add lowering for Neon rounding builtins (#195021)

This PR adds CIR lowering for AArch64 NEON rounding builtins:

- vrnd (trunc), vrnda (round), vrndi (nearbyint), vrndm (floor),
  vrndn (roundeven), vrndp (ceil), vrndx (rint)
- vrnd32x, vrnd32z, vrnd64x, vrnd64z (v8.5-a FRINT variants)

The standard rounding builtins lower to the corresponding CIR ops
(cir.trunc, cir.round, etc.). The vrndi_v/vrndiq_v cases are handled
in the common NEON switch since they enter via AArch64SIMDIntrinsicMap
(NEONMAP0). The vrnd32/64 builtins use NEONMAP1 entries with their
aarch64.neon.frint* intrinsic names.

The lowering follows the existing implementation in
CodeGen/TargetBuiltins/ARM.cpp.

Prior to this patch, the original neon-intrinsics.c had zero f32
standard rounding tests :
I had added 15 test cases to cover f32 standard rounding tests
(vrnd_f32, vrnda_f32, etc.) in
clang/test/CodeGen/AArch64/neon/intrinsics.c

For this reasons, 30 num-of-new-tests > 15 num-of-deleted-tests.

Part of https://github.com/llvm/llvm-project/issues/185382.


  Commit: 4fb7bf3323ea54d929f3846e6cd28d9dda1b891c
      https://github.com/llvm/llvm-project/commit/4fb7bf3323ea54d929f3846e6cd28d9dda1b891c
  Author: Yuan Suo <suoyuan666 at s5n.xyz>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/test/Sema/LifetimeSafety/safety-c.c
    M clang/test/Sema/LifetimeSafety/safety.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add multi-block support to buildOriginFlowChain (#204592)

After introducing `buildOriginFlowChain` to use-after-scope diagnostics,
it should support multi-block analysis. This also allows it to be reused
by other diagnostics.

In some loops, `UseFact` may appear before `OriginFlowFact`:

```cpp
void for_loop_use_before_loop_body(MyObj safe) {
  MyObj* p = &safe;
  for (int i = 0; i < 1; ++i) {
    (void)*p;
    MyObj s;
    p = &s;
  }
  (void)*p;
}
```

So I no longer use `StartPoint` as the initial search starting point; it
is only used to locate the corresponding block.

---------

Signed-off-by: Yuan Suo <suoyuan666 at s5n.xyz>


  Commit: f2342e84e66c015a43437620f825fe884c8bdd4e
      https://github.com/llvm/llvm-project/commit/f2342e84e66c015a43437620f825fe884c8bdd4e
  Author: Koakuma <koachan at protonmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/test/CodeGen/SPARC/bswap.ll

  Log Message:
  -----------
  [SPARC] Don't combine misaligned memory ops with BSWAP (#206345)

Doing it will result in a misaligned LD*A/ST*A instruction, which will
raise a bus error.

This should fix the failure in `clamscan` test.


  Commit: d832bfe3c99ac8251258b5a965d4418db503e38c
      https://github.com/llvm/llvm-project/commit/d832bfe3c99ac8251258b5a965d4418db503e38c
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx26Issues.csv

  Log Message:
  -----------
  [libc++] Mark LWG4098 as resolved (#206295)

Already implemented and tested in the scope of the full implementation
for `adjacent_view` (1e15dbe311eb08462e7a68fcb8b5850632e24aff).

Closes #105353


  Commit: 9a858b68628a37a36d82b076425c1e5ce902cb6f
      https://github.com/llvm/llvm-project/commit/9a858b68628a37a36d82b076425c1e5ce902cb6f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILPrettyPrinter.cpp

  Log Message:
  -----------
  [DirectX] Fix format override in DXILPrettyPrinter.cpp (#207588)


  Commit: ecbadb43064ad4f9dbc5bf8c1e232ce3582779f7
      https://github.com/llvm/llvm-project/commit/ecbadb43064ad4f9dbc5bf8c1e232ce3582779f7
  Author: Vicky Nguyen <vicky.trucviennguyen at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/AArch64CodeGenUtils.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon/subtraction.c

  Log Message:
  -----------
  [CIR][AArch64] Upstream narrowing-subtraction NEON builtins (#207115)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for
- narrowing-subtraction intrinsics
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#narrowing-subtraction)

Port tests:
- `clang/test/CodeGen/AArch64/neon_intrinsics.c` to
`clang/test/CodeGen/AArch64/neon/subtraction.c`


  Commit: 67d9abb916acc2b501ae08297de95c22e99d7218
      https://github.com/llvm/llvm-project/commit/67d9abb916acc2b501ae08297de95c22e99d7218
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Use 0-based DFS numbering (#207524)

Number DFS-visited nodes from 0 and drop the unused index-0 sentinel
from NumToNode/NumToInfo/IDoms.

`Unvisited = 0` marks unvisited nodes by DFS. 0 is now the DFS root, or
the virtual root for postdominators.

Decrease the inline capacity for NumToNode/NodeInfos, which doesn't seem
to matter. sqlite3's p90 block count is 29.


  Commit: 2ac46a3b86ba92408f6503986f518da6cbd1d224
      https://github.com/llvm/llvm-project/commit/2ac46a3b86ba92408f6503986f518da6cbd1d224
  Author: David Green <david.green at arm.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith.ll
    M llvm/test/Analysis/CostModel/AArch64/mul.ll

  Log Message:
  -----------
  [AArch64] Update some arith and mul tests. NFC (#207589)


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

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/Target/AArch64/AArch64InstPrinterTest.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.h
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [CodeGen][NFC] Store CPU model index in SubTypeKV (#207351)

Instead of storing the pointer to the CPU model, store all CPU models in
an array and store the index. This is preliminary work for moving
SubTypeKV to .rodata.

NB: the scheduling models also take a fair amount of space in
.data.rel.ro, with SchedModels ~13kiB, ModelProcResources ~57kiB.


  Commit: 9cd1001509c89f468ab262194a77f5e191ca9040
      https://github.com/llvm/llvm-project/commit/9cd1001509c89f468ab262194a77f5e191ca9040
  Author: Osman Yasar <osmanyas05 at gmail.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir

  Log Message:
  -----------
  [GlobalISel] Add or_and_and pattern from SelectionDAG (#204618)

This PR adds the `fold or (xor x, y), (x and/or y) --> or x, y` pattern
from SelectionDAG to GlobalISel.


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

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetSubtargetInfo.h
    M llvm/include/llvm/MC/MCSubtargetInfo.h
    M llvm/lib/CodeGen/TargetSubtargetInfo.cpp
    M llvm/lib/MC/MCSubtargetInfo.cpp
    M llvm/unittests/CodeGen/MFCommon.inc
    M llvm/unittests/CodeGen/MachineInstrTest.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/Target/AArch64/AArch64InstPrinterTest.cpp
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  [MC][NFC] Store SubTypeKV names as string table (#207580)

This moves the large SubTypeKV arrays to .rodata, as they no longer
contain the key pointers that need to be relocated.

Additionally, remove the largely redundant CPUNames arrays and integrate
the AArch64 aliases into the sorted string table. There was really no
need to introduce these 17 kiB arrays solely for including AArch64
aliases in help output.... (added in b6c22a4)


  Commit: e3c881815ea25acdf9a5f485b23a60c2eae8481c
      https://github.com/llvm/llvm-project/commit/e3c881815ea25acdf9a5f485b23a60c2eae8481c
  Author: Igor Shevlyakov <igor at tachyum.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add4.ll

  Log Message:
  -----------
  [InstCombine] Fold commuted add of udiv/urem by two (#206272) (#207462)

Fixes #206272.

`SimplifyAddWithRemainder` folds `(X / C0) * C1 + (X % C0) * C2`,
treating `and X, lowmask` as a remainder and `lshr X, N` as a division.
The commuted form `add (and X, C), (lshr X, N)` was missed because the
operand-order swap only recognized a real `urem`/`srem`.

Now the fold is tried with both operand orders instead of relying on
that swap. Verified with Alive2.

Supersedes #207249 (re-opened from the correct account; already
incorporates the both-operand-orders refactor suggested there by
nikic).

Prepared with AI assistance per the [LLVM AI Tool
Policy](https://llvm.org/docs/AIToolPolicy.html); not a "good first
issue".

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: d8b223292490e9abdbce87278044de406e0242f3
      https://github.com/llvm/llvm-project/commit/d8b223292490e9abdbce87278044de406e0242f3
  Author: Sungbin Jo <goranmoomin at daum.net>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    A llvm/test/Transforms/InstCombine/fptoui-of-fdiv.ll

  Log Message:
  -----------
  [InstCombine] Fold fpto{u,s}i of int-cast fdiv into {u,s}div (#205853)

Fixes #205305.

Adds an InstCombine fold for the pattern `fpto{u,s}i (fdiv ({u,s}itofp
X), C)` to `{u,s}div X, C`.

Safe when
- Unsigned: C > 0 and the integer width N <= the FP mantissa width p.
- Signed:  C != 0 and N - 1 <= p, excluding (X == INT_MIN, C == -1). 

See linked issue for detailed reasoning.


  Commit: 4a02e116e58d162335cf18b4f1f28c7d34d6d3ac
      https://github.com/llvm/llvm-project/commit/4a02e116e58d162335cf18b4f1f28c7d34d6d3ac
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxxabi/test/thread_local_destruction_order.pass.cpp

  Log Message:
  -----------
  [libcxxabi] Re-enable `thread_local_destruction_order.pass.cpp‎` on FreeBSD (#186129)

The underlying bug has been fixed in https://reviews.freebsd.org/D55826.


  Commit: a68147f0f05652d50937ab178f7ac21069562028
      https://github.com/llvm/llvm-project/commit/a68147f0f05652d50937ab178f7ac21069562028
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__thread/formatter.h
    M libcxx/include/__thread/thread.h
    M libcxx/include/future
    M libcxx/include/module.modulemap.in
    M libcxx/include/thread
    A libcxx/test/libcxx/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.pass.cpp
    M libcxx/test/libcxx/transitive_includes/cxx26.csv
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.format.pass.cpp
    R libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.tests.h
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.functions.vformat.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/format.pass.cpp
    M libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.id/stream.pass.cpp

  Log Message:
  -----------
  [libc++] Use std::to_chars to format thread::id and canonicalize the representation across platforms (#181624)

This makes printing `thread::id` faster, since we avoid a bunch of
boilerplate code that isn't optimized away. It also avoids including
`<sstream>` and `<__locale>`, cutting the time to parse `<thread>` in
half.

This also changes the output when printing the id on a platform that
uses a pointer as the underlying type. I don't think that's a problem,
since the thread id isn't in any way stable. It also makes the output
consistent across all platforms we support.


  Commit: 925f4f27b724446572c644a23d20a8a8ecd5dd90
      https://github.com/llvm/llvm-project/commit/925f4f27b724446572c644a23d20a8a8ecd5dd90
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__random/mersenne_twister_engine.h
    M libcxx/test/benchmarks/random.bench.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_result_type.pass.cpp
    M libcxx/test/std/numerics/rand/rand.eng/rand.eng.mers/ctor_sseq.pass.cpp
    M libcxx/utils/libcxx/test/features/libcxx_macros.py

  Log Message:
  -----------
  [libc++] Add an ABI flag to optimize mersenne_twister_engine (#206423)

Instead of updating the status array every time `operator()` is called,
we can instead update it once every time the entire array has been read.
That allows the compiler to vectorize the updating code, improving
performance.

Apple M4:
```
Benchmark                                     old      new    Difference    % Difference
----------------------------------------  -------  -------  ------------  --------------
std::mt19937::operator()                     1.39     0.65         -0.74         -53.26%
std::mt19937::operator()_(into_array)      172.92    80.69        -92.23         -53.34%
std::mt19937_64::operator()                  1.46     0.99         -0.47         -31.99%
std::mt19937_64::operator()_(into_array)   187.31   108.10        -79.21         -42.29%
```

Fixes #197221


  Commit: 076af822d2bfba95e5d62e15d0f11216956b1cb4
      https://github.com/llvm/llvm-project/commit/076af822d2bfba95e5d62e15d0f11216956b1cb4
  Author: David Green <david.green at arm.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/docs/GlobalISel/Legalizer.rst
    R llvm/include/llvm/CodeGen/GlobalISel/LegacyLegalizerInfo.h
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h
    M llvm/lib/CodeGen/GlobalISel/CMakeLists.txt
    R llvm/lib/CodeGen/GlobalISel/LegacyLegalizerInfo.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
    M llvm/lib/Target/BPF/GISel/BPFLegalizerInfo.cpp
    M llvm/lib/Target/M68k/GISel/M68kLegalizerInfo.cpp
    M llvm/lib/Target/Mips/MipsLegalizerInfo.cpp
    M llvm/lib/Target/PowerPC/GISel/PPCLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/WebAssembly/GISel/WebAssemblyLegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/unittests/CodeGen/GlobalISel/GISelMITest.h
    M llvm/unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
    M llvm/unittests/CodeGen/GlobalISel/LegalizerInfoTest.cpp
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/GlobalISel/BUILD.gn

  Log Message:
  -----------
  [GlobalISel] Remove LegacyLegalizerInfo (#197308)

After #197238, #197370, #197371, #197374, #197375, #197377, #197378 and
#197379, this removes the legacy rules from global isel.

The above patches attempt to make all _tested_ operations legal, but
have only gone through the operations that have llvm tests. If more
fallbacks are now found to be happening, the other operations from
#197238 might be needed.


  Commit: 3be67c72f5d5b9f459c0b11fce2c92c2cac5a984
      https://github.com/llvm/llvm-project/commit/3be67c72f5d5b9f459c0b11fce2c92c2cac5a984
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M lld/ELF/Arch/SPARCV9.cpp

  Log Message:
  -----------
  [ELF] Add target-specific relocation scanning for SPARCV9 (#206284)

Implement SPARCV9::scanSectionImpl, following the pattern established
for x86 and other targets. This merges the getRelExpr and TLS handling
for SHF_ALLOC sections into the target-specific scanner, enabling
devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC for PC-relative relocations and processR_PLT_PC for
  PLT relocations.
- Handle TLS LE relocations directly with checkTlsLe.
- Simplify getRelExpr to only handle relocations needed by
  relocateNonAlloc and preprocessRelocs.


  Commit: 051bcefe0efe0d157e6dc72e89c38b7840e9836a
      https://github.com/llvm/llvm-project/commit/051bcefe0efe0d157e6dc72e89c38b7840e9836a
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [GenericDomTreeConstruction] Store the semidominator value in Label (#207603)

runSemiNCA's eval() stores the vertex with the minimal semidominator in
Label and dereferences NumToInfo[Label]->Semi to compare it. Store the
semidominator (Semi) value directly in Label instead, so eval compares
by number with no NumToInfo lookup.


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

  Changed paths:
    M llvm/include/llvm/Support/GenericLoopInfoImpl.h

  Log Message:
  -----------
  [LoopInfo] Avoid a throwaway vector in getLoopsInPreorder. NFC (#207607)

We can append each root and walk its inner loops directly into the
result.


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

  Changed paths:
    M llvm/lib/Target/M68k/GISel/M68kLegalizerInfo.cpp

  Log Message:
  -----------
  [M68K][GlobalISel] Remove dependency on legal ruleset (#207614)

This fills in always legal rules, to remove the dependency on the legacy
ruleset. This is not guaranteed to be all the rules, just the ones that
appear
in tests.

See #197308


  Commit: bb639a128559172e8b3067ea267b8f37895ae1f8
      https://github.com/llvm/llvm-project/commit/bb639a128559172e8b3067ea267b8f37895ae1f8
  Author: xys-syx <xuyuansui at outlook.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/LLVMIRToNVVMTranslation.cpp
    M mlir/test/Target/LLVMIR/Import/nvvmir.ll

  Log Message:
  -----------
  [MLIR][NVVM]Import llvm intrinsics for nvvm.barrier (#202862)

This PR adds LLVM IR import support for the `bar.sync` intrinsic family,
lifting the four variants into `nvvm.barrier` with the appropriate
`aligned` attribute and optional thread-count operand.

`LLVM_IntrOpBase` and its auto-generated import is one to one, but four
`bar.sync` variants are many-to-one, where they all lift into
`nvvm.barrier`, differing only in `aligned` and the optional
`numberOfThreads` operand.

An alternative implementation would extend mlir-tblgen with many-to-one
intrinsic-to-op mapping support so the conversion could live in
`NVVMOps.td`. But the change is bigger than manually import `bar.sync`
intrinsic family.


  Commit: 434e4e15f6a3217b4bbb8dafe68084222067e9ce
      https://github.com/llvm/llvm-project/commit/434e4e15f6a3217b4bbb8dafe68084222067e9ce
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/test/CodeGen/RISCV/make-compressible-for-store-address.mir
    M llvm/test/CodeGen/RISCV/make-compressible-rv64.mir
    M llvm/test/CodeGen/RISCV/make-compressible-xqci.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc-zhinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zbc.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zfinx.mir
    M llvm/test/CodeGen/RISCV/make-compressible-zilsd.mir
    M llvm/test/CodeGen/RISCV/make-compressible.mir

  Log Message:
  -----------
  [RISCV] Run MakeCompresible at Os as well (#207172)


  Commit: 319c1f1c1132e54a2135ffe1d7c58ed7e47b5e51
      https://github.com/llvm/llvm-project/commit/319c1f1c1132e54a2135ffe1d7c58ed7e47b5e51
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/StaticDataProfileInfo.h
    M llvm/lib/Analysis/StaticDataProfileInfo.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/lib/Target/X86/X86AsmPrinter.h

  Log Message:
  -----------
  [NewPM] Port StaticDataProfileInfo and wire into x86 AsmPrinter

Ports the analysis to the NewPM and wires it into the NewPM x86
AsmPrinter where we are currently just returning nullptr.

Reviewers: mingmingl-llvm, teresajohnson, arsenm, RKSimon

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


  Commit: 29fa6a82476b92c8bc5168118151675b6ab940d1
      https://github.com/llvm/llvm-project/commit/29fa6a82476b92c8bc5168118151675b6ab940d1
  Author: TelGome <93700071+TelGome at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    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 Merge. (#207110)


  Commit: deecf8dce7dd6df5ce82bf273f7bfb75a783160a
      https://github.com/llvm/llvm-project/commit/deecf8dce7dd6df5ce82bf273f7bfb75a783160a
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUAsyncOperations.rst
    A llvm/docs/AMDGPUDMAOperations.md
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/UserGuides.md

  Log Message:
  -----------
  [docs][AMDGPU] move DMA operations to a separate file (#206917)

This includes the various `.async` and `.tensor` operations. Various
scattered bits of information are now in one place. Also added the
missing documentation for tensor intrinsics.


  Commit: 9b2d44a51252891b4612330c485fa11464866455
      https://github.com/llvm/llvm-project/commit/9b2d44a51252891b4612330c485fa11464866455
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/include/llvm/ObjectYAML/ContiguousBlobAccumulator.h
    M llvm/lib/ObjectYAML/CMakeLists.txt
    A llvm/lib/ObjectYAML/ContiguousBlobAccumulator.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp

  Log Message:
  -----------
  [ObjectYAML][NFC] Hoist ContiguousBlobAccumulator into a shared header (#207306)

Move ContiguousBlobAccumulator out of ELFEmitter.cpp's anonymous
namespace so other yaml2obj emitters can reuse it.


  Commit: 224b9d2ac05d808aa4b08c27ba37149260310e4b
      https://github.com/llvm/llvm-project/commit/224b9d2ac05d808aa4b08c27ba37149260310e4b
  Author: Vinay Deshmukh <vinay_deshmukh at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/set
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.associative.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/ranges.for_each.associative.pass.cpp
    M libcxx/test/std/containers/associative/multiset/clear.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/empty.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/find.pass.cpp
    M libcxx/test/std/containers/associative/multiset/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/multiset/max_size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/merge.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/compare.three_way.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/upper_bound.pass.cpp

  Log Message:
  -----------
  [libc++] Make `<set>` `std::multiset` constexpr as part of P3372R3 (#206257)


  Commit: dc56f7104e036bdbf5b48d4d16dd3cf41c44e78f
      https://github.com/llvm/llvm-project/commit/dc56f7104e036bdbf5b48d4d16dd3cf41c44e78f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    A llvm/include/llvm/CodeGen/StaticDataSplitter.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/StaticDataSplitter.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp

  Log Message:
  -----------
  [NewPM] Port StaticDataSplitter

Standard pass porting. Remove the MBPI member given it was unused.

Reviewers: arsenm, teresajohnson, mingmingl-llvm

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


  Commit: 311c3cee0c6c6d7f192b58ec02dd381539ccb0a2
      https://github.com/llvm/llvm-project/commit/311c3cee0c6c6d7f192b58ec02dd381539ccb0a2
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/Passes.h
    A llvm/include/llvm/CodeGen/StaticDataAnnotator.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/StaticDataAnnotator.cpp
    M llvm/lib/CodeGen/TargetPassConfig.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def

  Log Message:
  -----------
  [NewPM] Port StaticDataAnnotator

Standard NewPM pass porting. The PassBuilder wireup/test coverage will
come in the next PR.

Reviewers: arsenm, teresajohnson, mingmingl-llvm

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


  Commit: f7d75024bf194e660aa56714e7f0fdb56b92de69
      https://github.com/llvm/llvm-project/commit/f7d75024bf194e660aa56714e7f0fdb56b92de69
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M llvm/include/llvm/BinaryFormat/DynamicTags.def
    M llvm/lib/Object/ELF.cpp

  Log Message:
  -----------
  [SPARC] Make SPARC_REGISTER Sparc specific in llvm-readobj and LLDB (#206316)

The commit 4418a8e5 failed to limit SPARC_REGISTER to Sparc targets
only, which causes conflict when adding new dynamic tags for other
targets.


  Commit: 774f8a0b868cf526ffbd8af0a7e83c6b70d1b4fb
      https://github.com/llvm/llvm-project/commit/774f8a0b868cf526ffbd8af0a7e83c6b70d1b4fb
  Author: jinge90 <ge.jin at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/complex.rst
    M libc/include/complex.yaml
    M libc/src/complex/CMakeLists.txt
    A libc/src/complex/cabs.h
    A libc/src/complex/cabsf.h
    M libc/src/complex/generic/CMakeLists.txt
    A libc/src/complex/generic/cabs.cpp
    A libc/src/complex/generic/cabsf.cpp
    A libc/test/src/complex/CAbsTest.h
    M libc/test/src/complex/CMakeLists.txt
    A libc/test/src/complex/cabs_test.cpp
    A libc/test/src/complex/cabsf_test.cpp
    M libc/utils/MPCWrapper/MPCUtils.cpp

  Log Message:
  -----------
  [libc][complex] Enable cabs and cabsf in libc (#206677)

This PR adds basic implementation for cabs and cabsf in LLVM libc and
also extend current MPC infrastructure to support cabs operation.

---------

Signed-off-by: jinge90 <ge.jin at intel.com>


  Commit: 4d7b4fd9879fb0599b4e0a2a0c60394f64015c5a
      https://github.com/llvm/llvm-project/commit/4d7b4fd9879fb0599b4e0a2a0c60394f64015c5a
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/test-suite.yml

  Log Message:
  -----------
  [GitHub] Build llvm-size for test-suite.yml workflow (#207642)

This is also needed by llvm-test-suite


  Commit: 4eb56cf497aaee55dc1346a7e1319dff33864601
      https://github.com/llvm/llvm-project/commit/4eb56cf497aaee55dc1346a7e1319dff33864601
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/GVN/PRE/pre-load-through-select.ll
    M llvm/test/Transforms/InstSimplify/cast.ll

  Log Message:
  -----------
  [InstSimplify] Fold value-preserving zext/sext of trunc (#204089)

Fold a value-preserving `zext (trunc nuw X)` / `sext (trunc nsw X)` back
to
`X` in `simplifyCastInst` (when the trunc source type equals the extend
result type and the no-wrap flag guarantees the round-trip is identity).

After indvars canonicalizes a min-index loop, the running-index select
has a
`trunc nuw nsw i64 %iv to i32` on its true side while `arr[i]` is
addressed
directly with the i64 `%iv`. When PHI-translating the select-dependent
address along the backedge (see #203863), the true side becomes
`gep base, zext nneg (trunc nuw %iv)`, which has no matching instruction
in
the loop, so the select dependency is never formed and the redundant
load
survives.

Teaching `simplifyCastInst` to collapse the value-preserving
extend-of-trunc
makes the translated address fold back to `gep base, %iv`, matching the
existing `arr[i]` address, so the load through the select index is
eliminated. This fixes the integer min-index variant of

https://github.com/llvm/llvm-project/issues/58569#issuecomment-2788365047
(e.g. returning `minloc` instead of the value).

Alive2: https://alive2.llvm.org/ce/z/T5kMG8

Assisted-by: TraeCli (AI assistant)


  Commit: 45574a58a0298cf64264022cb108818d84c3d6fd
      https://github.com/llvm/llvm-project/commit/45574a58a0298cf64264022cb108818d84c3d6fd
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSubtarget.cpp
    M llvm/test/Analysis/CostModel/RISCV/fca-load-store.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-gather.ll
    M llvm/test/Analysis/CostModel/RISCV/fixed-vector-scatter.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-select.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lmul-max.ll
    M llvm/test/CodeGen/RISCV/rvv/pr52475.ll

  Log Message:
  -----------
  [RISCV] Remove -riscv-v-fixed-length-vector-lmul-max option (#207312)

Whilst reviewing https://github.com/llvm/llvm-project/pull/207254, I
threw claude at it and it found a crash when passing in a non-default
-riscv-v-fixed-length-vector-lmul-max flag.

This option was added 5 years ago around the time initial fixed vector
support was being added in a719b667a9794, and IIUC it was added so that
support for more LMULs could be added over time.

We don't have any substantial codegen testing for it and I couldn't find
any downstream users either. So rather than trying to fix
https://github.com/llvm/llvm-project/pull/207254 to handle it it seems
easier just to remove it now that fixed vector support for RVV has
matured.


  Commit: 467390e7c08a5067355aa72d6262ff965d7fc9b4
      https://github.com/llvm/llvm-project/commit/467390e7c08a5067355aa72d6262ff965d7fc9b4
  Author: Chengjun <chengjunp at Nvidia.com>
  Date:   2026-07-05 (Sun, 05 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/vec_demanded_elts.ll

  Log Message:
  -----------
  [InstCombine] Skip redundant demanded element queries in insert chains (#205948)

Avoid re-running `SimplifyDemandedVectorElts` on intermediate
`insertelement` chain nodes when a bounded scan proves the top-level
all-lanes query cannot change the IR.

The skip is implemented inside the `InsertElement` case of
`SimplifyDemandedVectorElts` and is limited to the top-level all-lanes
query (`Depth == 0 && DemandedElts.isAllOnes()`). The bounded scan
matches the existing SDVE depth window and only skips chains with
distinct in-range constant insert indices. This keeps the normal SDVE
path for duplicate indices, variable indices, out-of-range indices,
multi-use chains, and the final chain root.

This was motivated by a cutile matmul compile-time case where loop
unrolling produced 128-lane vector insert/extract chains. Before this
change, InstCombine repeatedly invoked SDVE on intermediate
`insertelement` nodes in those chains. On the representative IR, the
affected InstCombine pass time went from about `44.9 ms` to `29.8 ms`,
and total `opt` compile time was reduced by about 20%.

AI disclosure: This patch was developed with assistance from
@openai-codex using GPT-5.5 via [Codex](https://openai.com/codex/). I
reviewed and tested the final changes before submission.


  Commit: a929f649b490103ee15e2b71b4666d52b997b877
      https://github.com/llvm/llvm-project/commit/a929f649b490103ee15e2b71b4666d52b997b877
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll

  Log Message:
  -----------
  [AMDGPU][NPM] Complete AsmPrinter support (#203509)


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

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Move Scope classes to source file (#207647)


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

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Remove unnecessary loop variable (#207649)

No reason to have the extra `N`.


  Commit: a280b1b4f84186255c41a989312ab01ee4c30b88
      https://github.com/llvm/llvm-project/commit/a280b1b4f84186255c41a989312ab01ee4c30b88
  Author: Santanu Das <santdas at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/test/Driver/hexagon-toolchain-elf.c
    M llvm/lib/Target/Hexagon/Hexagon.td
    M llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp
    M llvm/test/CodeGen/Hexagon/reserved-regs.ll

  Log Message:
  -----------
  [Hexagon] Allow reservation of caller saved registers via -ffixed-rXX (#205733)

Previously, hexagon allowed only callee saved registers to be reserved
since reserving caller saved regs can create problems, since it cannot
be sure that the callee (from a different module) also reserves the
register.

The responsibility of reserving register and managing it is now on the
user. However, a warning will be displayed if the user tries to reserve a
caller saved register.

---------

Co-authored-by: quic-santdas <quic_santdas at qti.qualcomm.com>


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

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Move float->ap cast ops to the source file (#207592)

And deduplicate the code.


  Commit: ae3d310fa38febc0fd52421ed1e12c621757204c
      https://github.com/llvm/llvm-project/commit/ae3d310fa38febc0fd52421ed1e12c621757204c
  Author: ingoneuse <ingo.neuse at sap.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp

  Log Message:
  -----------
  [clangd] Null-check AutoTypeLoc in CollectExtraHighlightings::VisitDeclaratorDecl (#207323)

A Decl's getType() can have a getContainedAutoType() without
its TypeSourceInfo's type having one, because the two types
can differ in type sugar such as DecltypeType which
getContainedAutoType[Loc]() deliberately does not look through.

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


  Commit: 7bdca287b102ee935e982613dba2264cbc7a32ad
      https://github.com/llvm/llvm-project/commit/7bdca287b102ee935e982613dba2264cbc7a32ad
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Analysis/InlineCost.cpp
    A llvm/test/Transforms/Inline/X86/always-inline-features.ll

  Log Message:
  -----------
  [InlineCost] Never inline functions with incompatible target features (#205113)

If inlining is unsound due to incompatible target feature attributes, we
should not inline the call even if alwaysinline is set. This will likely
result in a crash during instruction selection.

We tried this previously in
https://github.com/llvm/llvm-project/commit/d6f994acb3d545b80161e24ab742c9c69d4bbf33,
but the change had to be reverted because the quality of our
areInlineCompatible() hooks was very bad at the time, which resulted in
inlining not happening in many cases where it was safe.

I think we're in a much better position now. Most notably, we now have a
default areInlineCompatible() implementation that actually does
something sensible (https://github.com/llvm/llvm-project/pull/117493),
inlining compatibility for target features is now specified in TableGen
(https://github.com/llvm/llvm-project/pull/205348). Various
target-specific issues have been fixed as well, e.g. ARM's overly strict
feature whitelist (https://github.com/llvm/llvm-project/pull/205763) and
X86's overly conservative ABI compatibility checks
(https://github.com/llvm/llvm-project/pull/205106).


  Commit: 1b2efd2e079a7fe86888cb7da12a5efa84b131fc
      https://github.com/llvm/llvm-project/commit/1b2efd2e079a7fe86888cb7da12a5efa84b131fc
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    A libcxx/include/__memory/uninitialized_multidimensional_algorithms.h
    M libcxx/include/module.modulemap.in

  Log Message:
  -----------
  [libc++] Split the multidimensional algorithms out of uninitialized_algorithms.h (#207447)

While these algorithms are conceptually related to other
`uninitialized_*` algorithms, they're likely only ever going to be used
by `shared_ptr`. `uninitialized_algorithms.h` itself is also getting
rather large, so it makes sense to split the multidimensional versions
into their own header.

Fixes #207417


  Commit: acafa250fd7abd22c20584ad615e9727fa5d1ed5
      https://github.com/llvm/llvm-project/commit/acafa250fd7abd22c20584ad615e9727fa5d1ed5
  Author: lrzlin <linrunze at loongson.cn>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchLASXInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchLSXInstrInfo.td
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/sitofp.ll
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/uitofp.ll
    M llvm/test/CodeGen/LoongArch/lsx/ir-instruction/sitofp.ll

  Log Message:
  -----------
  [LoongArch] Remove inaccurate LASX conversion pattern and use [X]VFFINT.S.L instead (#207107)

Original LASX signed/unsigned 64-bit integer & floating point will
suffer from double rounding issue, due to it implements such logic: `i64
-> double -> float` that will lead to precision loss. So delete it and
introduce the `[X]VFFINT.S.L` instruction, which could convert 4 or 8
signed 64-bit integer into float in one instrunction.

Also, create the `MergeBlocksConvert` helper function to reuse the logic
about merge two blocks into one, avoid unnecessary code size bloat.


  Commit: cb942d009a5ed029ce20d9b75b3604f551f0cb56
      https://github.com/llvm/llvm-project/commit/cb942d009a5ed029ce20d9b75b3604f551f0cb56
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libc++abi] Always enable -fvisibility=hidden (#207333)

Building with `-fvisibility=hidden` is generally a good idea, since it
avoids unnecessary relocations when loading a dylib. For libc++abi this
should be a no-op, since most things are annotated explicitly. By
enabling `-fvisibility=hidden` we can remove these explicit annotations
however.


  Commit: 46aa983d0990692e9aab6917435faab8a6395aa0
      https://github.com/llvm/llvm-project/commit/46aa983d0990692e9aab6917435faab8a6395aa0
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst

  Log Message:
  -----------
  [clang][analyzer] Add documentation for unix modeling checker options (NFC) (#207225)


  Commit: 4341c0c9b8b88aac576ce55211ea9db032b74124
      https://github.com/llvm/llvm-project/commit/4341c0c9b8b88aac576ce55211ea9db032b74124
  Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/MemRef/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  [mlir][memref] Implement ValueBoundsOpInterface for memref.extract_strided_metadata/assume_alignment (#206466)

Add ValueBoundsOpInterface external models for memref.assume_alignment
and memref.extract_strided_metadata, so dimension and metadata bounds
can be propagated through these view-like ops during value-bounds
analysis.


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

  Changed paths:
    R llvm/test/CodeGen/AArch64/GlobalISel/combine-max-min.ll

  Log Message:
  -----------
  [AArch64] Remove duplicate combine-max-min.ll test. NFC (#207679)


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

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fixed-point-math-i64.ll

  Log Message:
  -----------
  [SPIR-V] Support i64 smul.fix/umul.fix via SPV_ALTERA_arbitrary_precision_integers (#207405)


  Commit: 61679c3a299b2a858642feb805a5b383ae7d0902
      https://github.com/llvm/llvm-project/commit/61679c3a299b2a858642feb805a5b383ae7d0902
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/linux/sys-socket-macros.h

  Log Message:
  -----------
  [libc] Add protocol family constants (#206911)

These aren't in POSIX, but are in 4.2BSD and they're still widely used.


  Commit: d93dfabfba1b2450e2571b72e7344def2703b0b1
      https://github.com/llvm/llvm-project/commit/d93dfabfba1b2450e2571b72e7344def2703b0b1
  Author: Yunqing Yu <yunqingy at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    A llvm/test/Verifier/NVPTX/tensormap-replace.ll

  Log Message:
  -----------
  [NVPTX] Add missing Range attr to tensormap.replace intrinsics. (#207099)

Add missing `Range=[0, 5)` for `%ord imm` operand in
`nvvm.tensormap.replace` intrinsics.


  Commit: 0c38875e1ae414695265f82bb91643c3d1ebcb9f
      https://github.com/llvm/llvm-project/commit/0c38875e1ae414695265f82bb91643c3d1ebcb9f
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/Process.h
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/TargetProperties.td
    R lldb/test/API/functionalities/fork/stop/Makefile
    R lldb/test/API/functionalities/fork/stop/TestStopOnForkAndVFork.py
    R lldb/test/API/functionalities/fork/stop/main.c
    R lldb/test/Shell/Subprocess/stop-on-fork.test
    R lldb/test/Shell/Subprocess/stop-on-vfork.test

  Log Message:
  -----------
  [lldb] Revert stop-on-fork and stop-on-vfork (#207663)

This was causing failures on green dragon


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

  Changed paths:
    M clang/test/CodeGenCoroutines/coro-elide.cpp
    M clang/test/CodeGenCoroutines/coro-halo.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp

  Log Message:
  -----------
  [Clang] Require X86 backend for some coroutine tests (#207681)

The wrapper functions are generated without target features.
They can still be inlined based on target-specific logic, but this
requires the target to be available.

We should fix this by properly generating the target features,
but for now add a REQUIRES to unbreak the tests.


  Commit: 2866d2333c477dead9a37248316e8d172e3b612a
      https://github.com/llvm/llvm-project/commit/2866d2333c477dead9a37248316e8d172e3b612a
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    A llvm/test/Bitcode/Inputs/aarch64-memory-attribute-upgrade.bc
    A llvm/test/Bitcode/Inputs/x86-memory-attribute-upgrade.bc
    A llvm/test/Bitcode/target-memory-attribute.ll
    A llvm/test/Transforms/LICM/AArch64/sme-fp8-hoist.ll

  Log Message:
  -----------
  [AArch64][Bitcode] Use target memory for SME state (#205829)

Model AArch64 ZA and ZT0 intrinsic state using target_mem instead of
inaccessiblemem.

Bump the bitcode memory-attribute encoding and upgrade old AArch64
bitcode so prior inaccessiblemem effects are preserved on the new target
memory locations. Non-AArch64 bitcode keeps the old interpretation.


  Commit: b30c365833b2d9d06c9de28551302acf524a2b04
      https://github.com/llvm/llvm-project/commit/b30c365833b2d9d06c9de28551302acf524a2b04
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  [clang-format][NFC] Refactor UnwrappedLineParser::parseLabel (#207674)

See
https://github.com/llvm/llvm-project/pull/196815#issuecomment-4470006692


  Commit: 753ceecfdcdf43d626ddd9534cdf470572a8deda
      https://github.com/llvm/llvm-project/commit/753ceecfdcdf43d626ddd9534cdf470572a8deda
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/sys/socket.yaml
    M libc/src/sys/socket/CMakeLists.txt
    M libc/src/sys/socket/linux/CMakeLists.txt
    A libc/src/sys/socket/linux/sockatmark.cpp
    A libc/src/sys/socket/sockatmark.h
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    A libc/test/src/sys/socket/linux/sockatmark_test.cpp

  Log Message:
  -----------
  [libc] Implement sockatmark (#205400)

This patch implements sockatmark as a simple wrapper around
ioctl(SIOCATMARK).

I don't test it with actual out of band data, as that requires a TCP
connection, which is more complicated to set up.

Assisted by Gemini.


  Commit: 74eebbe02b85b28e4c6519062d82c146987b5d8e
      https://github.com/llvm/llvm-project/commit/74eebbe02b85b28e4c6519062d82c146987b5d8e
  Author: Ádám Kallai <kadam at inf.u-szeged.hu>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M bolt/unittests/Profile/PerfScripts.cpp

  Log Message:
  -----------
  [BOLT] Fixed PerfScript unittest for X86 (#207408)

The test was not prepared to run on X86 target.
This change parameterized the test function to ensure proper
initialization for different targets.


  Commit: 40d671f85d28a683fd5820b2e0a356f2d1cc58e3
      https://github.com/llvm/llvm-project/commit/40d671f85d28a683fd5820b2e0a356f2d1cc58e3
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/benchmarks/ImmutableSetIteratorBM.cpp
    M llvm/include/llvm/ADT/ImmutableSet.h

  Log Message:
  -----------
  [ADT][NFC] Use isEqual for ImmutableSet/Map tree canonicalization (#207596)

`ImutAVLFactory::getCanonicalTree` deduplicates a newly built tree
against the trees already in its cache. On a digest collision it
confirmed structural equality with `compareTreeWithSection`, a plain
element-by-element in-order walk that is always linear in the tree size.

`ImutAVLTree` already provides `isEqual`, which performs the same
structural comparison but skips subtrees that are shared by pointer.
These persistent trees are heavily structurally shared -- a tree
produced by `add`/`remove` shares everything but the mutated spine with
its predecessor -- so switching `getCanonicalTree` to `isEqual` reduces
the confirmation from `O(tree size)` to `O(number of differing nodes)`
in the common case, and is never asymptotically worse. The comparison is
exact, so canonicalization behavior is unchanged.

This builds on the recent iterator rewrite in #205552 ("Rewrite
ImmutableSet/Map in-order iterator without per-node state"), which made
in-order traversal and `skipSubTree` ~2x faster. That change is a
constant-factor speedup of the iterator primitive and it deliberately
preserved `skipSubTree`/`isEqual` semantics; this patch is complementary
and algorithmic: it routes canonicalization through the pointer-skipping
`isEqual`, cutting the number of nodes visited rather than the per-node
cost. The two compose -- the remaining traversal here runs on the faster
iterator from #205552.

This confirmation is the dominant cost of `ExplodedGraph`
canonicalization in the Clang Static Analyzer whenever many equivalent
`ProgramState`s are kept live and re-derived on different paths (for
example with node reclamation disabled): each re-derivation of an
already-cached `Environment`/`Store` map paid a full in-order walk to
confirm the match. On several large reproducers the analyzer's
`ImutAVLFactory` node comparisons dropped by ~26-36x with identical
diagnostics and identical `ExplodedGraph` node/step counts. (These
measurements already include #205552, so this speedup is on top of that
iterator win.)

`compareTreeWithSection` had no other callers and is removed.

## Analyzer wall-clock

Measured on the three reproducers from

https://github.com/llvm/llvm-project/issues/105512#issuecomment-2389083480,
best-of-3 wall-clock, `RelWithDebInfo` on an Apple M-series host. "ON"
is the default; "OFF" disables node reclamation (`-analyzer-config
graph-trim-interval=0`), the configuration that exposes the cost:

| Reproducer   | Config | Before   | After   | Speedup |
| ------------ | ------ | -------- | ------- | ------- |
| ruby-unicode | ON     |  2.18 s  | 2.06 s  | ~1.0x   |
| ruby-unicode | OFF    | 11.97 s  | 2.28 s  | ~5.2x   |
| linux-topro  | ON     |  5.26 s  | 5.08 s  | ~1.0x   |
| linux-topro  | OFF    | 11.16 s  | 5.21 s  | ~2.1x   |
| MSP430       | ON     |  2.71 s  | 2.65 s  | ~1.0x   |
| MSP430       | OFF    |  7.58 s  | 2.71 s  | ~2.8x   |

The default (ON) path is unchanged within noise; the OFF path drops from
2.1-5.5x slower than ON to parity.

## Microbenchmark

Add a `CanonicalizeSharedEqual` case to `ImmutableSetIteratorBM`
covering `getCanonicalTree`/`isEqual`. It re-canonicalizes a freshly
built tree that is equal to, and shares subtrees with, a cached tree
(`RelWithDebInfo`, same host):

| Set size `N` | Before    | After   | Speedup |
| ------------ | --------- | ------- | ------- |
| 16           |    212 ns |  186 ns | ~1.1x   |
| 256          |   1354 ns |  347 ns | ~3.9x   |
| 4096         |  21603 ns |  547 ns | ~40x    |
| 65536        | 677240 ns | 1015 ns | ~667x   |

The existing `Iterate`/`Skip`/`CompareSamePos` cases are unchanged; this
does not touch the iterator.

Assisted by: Claude Opus 4.8


  Commit: 672342f104a17a49f1286e5852fd0a9799c457fb
      https://github.com/llvm/llvm-project/commit/672342f104a17a49f1286e5852fd0a9799c457fb
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/Verifier/NVPTX/tensormap-replace.ll

  Log Message:
  -----------
  [NVPTX] Regenerate check lines (NFC) (#207684)

llvm-nvptx-nvidia-ubuntu buildbots were previously failing, appeared
after https://github.com/llvm/llvm-project/pull/207099.


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

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrFragmentsSIMD.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/divrem-by-select.ll
    M llvm/test/CodeGen/X86/insertelement-zero.ll
    M llvm/test/CodeGen/X86/legalize-vec-assertzext.ll
    M llvm/test/CodeGen/X86/psadbw.ll
    M llvm/test/CodeGen/X86/sad_variations.ll
    M llvm/test/CodeGen/X86/trunc-subvector.ll
    M llvm/test/CodeGen/X86/ucmp.ll
    M llvm/test/CodeGen/X86/udiv_fix.ll
    M llvm/test/CodeGen/X86/udiv_fix_sat.ll
    M llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-mask.ll
    M llvm/test/CodeGen/X86/vector-reduce-add-zext.ll
    M llvm/test/CodeGen/X86/vector-reduce-ctpop.ll

  Log Message:
  -----------
  [X86] Attempt to narrow XMM->i64 (v)movq -> (v)movd if the upper 32-bits are known to be zero (#207615)

Add a custom 'X86upperzero' tablegen pattern to match vectors where the
upper half bits of every element is known zero.

Saves 1 byte by using (V)MOVD instead of (V)MOVQ - and avoids
differences in X86/X64 codegen that was bloating diffs in some upcoming
VECREDUCE_ADD work.

I've added an extra psadbw.ll test to ensure that the extractstore
pattern isn't being affected.

Cleanup for the upcoming VECREDUCE_ADD handling which will be using
PSADBW more aggressively (v2i64 result type but only 16 active bits for
element).


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll

  Log Message:
  -----------
  [AMDGPU] Fix s.barrier.init/signal.var member count mask (#207660)

The count was shifted before masking, so bits above the low 6 could leak
past the member count field in M0


  Commit: 831ad2ee6af862965c21d7b785b0b00ed7bb7d9d
      https://github.com/llvm/llvm-project/commit/831ad2ee6af862965c21d7b785b0b00ed7bb7d9d
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_ipv6_mreq.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/netinet-in-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_ipv6_mreq.h
    M libc/include/netinet/in.yaml
    M libc/test/src/netinet/CMakeLists.txt
    M libc/test/src/netinet/in_test.cpp

  Log Message:
  -----------
  [libc] Add struct ipv6_mreq and IPv6 socket options (#206448)

This patch adds struct ipv6_mreq and defines various IPv6 socket option
macros in <netinet/in.h>. I've also moved the existing option
definitions to the yaml file.

Assisted by Gemini.


  Commit: 334eb772a25d700feb1f6c64b872cc693731b0b3
      https://github.com/llvm/llvm-project/commit/334eb772a25d700feb1f6c64b872cc693731b0b3
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/cl-ops-to-llvm.mlir
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversions for GL.FMix and CL.mix (#206935)


  Commit: 65bbeff0bdcfa53e72517ed59ab510ab6ebd32bf
      https://github.com/llvm/llvm-project/commit/65bbeff0bdcfa53e72517ed59ab510ab6ebd32bf
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/gl-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIR-V] Add SPIRVToLLVM conversion for GL.FClamp/SClamp/UClamp (#203831)

Lower the GLSL clamp ops as nested min/max following `min(max(x, y), z)`

---------

Co-authored-by: Igor Wodiany <dev at wodiany.com>


  Commit: 8470dfb1e6190cc42c3eb151884533b8b4aba7e6
      https://github.com/llvm/llvm-project/commit/8470dfb1e6190cc42c3eb151884533b8b4aba7e6
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  [lldb] Guard DW_OP_convert against null DWARF unit and empty stack (#207008)

`Evaluate_DW_OP_convert` dereferenced `eval_ctx.dwarf_cu` (the
`DWARFExpression` Delegate) whenever the operand DIE offset was
non-zero,
and unconditionally read `eval_ctx.stack.back()`.  When a DWARF
expression is evaluated without a DWARF unit (as the
lldb-dwarf-expression-fuzzer does), two operand shapes crash:

- `DW_OP_convert` with a non-zero offset calls
  `dwarf_cu->GetDIEBitSizeAndSign(...)` on a null Delegate.
- `DW_OP_convert` with nothing on the stack reads the back of an empty
  vector.

The unit test feeds both with `dwarf_cu == nullptr` and crashes:

```
[ RUN      ] DWARFExpression.DW_OP_convert
 #2 SignalHandler(int, __siginfo*, void*)
 #4 DWARFExpression::Evaluate(...)
 #5 Evaluate(ArrayRef<unsigned char>, ...)
```

(SIGSEGV, the process aborts.)

Bail out with an error when the stack is empty, and when a non-zero DIE
offset is requested without a DWARF unit, instead of crashing.

Extends `DWARFExpression.DW_OP_convert` with these two cases, which
crash
without the fix.

---------

Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>


  Commit: 8e85d1f3d458ae91d8838ccde75c1488dd514794
      https://github.com/llvm/llvm-project/commit/8e85d1f3d458ae91d8838ccde75c1488dd514794
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    A lldb/test/API/macosx/expedited-stack-memory/Makefile
    A lldb/test/API/macosx/expedited-stack-memory/TestExpeditedStackMemory.py
    A lldb/test/API/macosx/expedited-stack-memory/main.c

  Log Message:
  -----------
  [lldb][test] Add expedited-stack-memory backtrace/locals packet test (#205897)

Add a Darwin API test that checks which gdb-remote packets lldb sends
while
inspecting the stack at a public stop, using the gdb-remote packet log
(the
same approach as TestExpeditedThreadPCs.py).

debugserver expedites the frame-pointer backchain in the `jThreadsInfo`
reply
at a public stop and lldb caches it, so:

- A backtrace (`GetNumFrames` + `GetFrameAtIndex` over every frame)
sends no
packets at all. With the memory cache disabled it must read the
backchain
frame by frame, which confirms the test exercises the unwinder's memory
    reads.

- Examining frame locals is not covered by the expedite, so it reads
value
memory. The reads are classified as stack vs heap using the variables'
    own addresses (known from main.c).

Locals are examined two ways, modeling how an IDE inspects values at a
stop:
walking the whole stack but examining only the selected frame's locals
(frame 0, as a variables view does on a stop), and examining every
frame's
locals (a "view all frames" mode). The stopped frame (`func_e`) carries
scalar,
aggregate, and pointer-to-heap locals so frame 0 alone reads both stack
and
heap memory; the outer frames keep locals so the all-frames case reads
the
same variety across several frames.  Values are read with
`use_dynamic=eDynamicCanRunTarget` to match how an IDE reads them.


  Commit: 4ffcfdfac177a7e7b3d9be20f73dd9d2890da006
      https://github.com/llvm/llvm-project/commit/4ffcfdfac177a7e7b3d9be20f73dd9d2890da006
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
    M lldb/unittests/ScriptInterpreter/Python/PythonDataObjectsTests.cpp

  Log Message:
  -----------
  [lldb] Reject NULL key in PythonDictionary::GetItem (#205753)

A `breakpoint set -P <class>` with an invalid-UTF-8 class name crashes
lldb with `EXC_BAD_ACCESS`.  The class name is passed through
unmodified, so the byte sequence `\xd0p` (an incomplete two-byte UTF-8
sequence) reaches the Python layer:

```
 ./bin/lldb -b -o $'breakpoint set -P \xd0p -f main.cpp' ./bin/lldb
...
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/
Stack dump:
 #4 PythonDictionary::GetItem(PythonObject const&) const
 #6 PythonDictionary::GetItemForKey(PythonObject const&) const
 #7 PythonObject::ResolveNameWithDictionary(StringRef, PythonDictionary const&)
 #9 ScriptedPythonInterface::CreatePluginObject<...>(...)
```

`ResolveNameWithDictionary` builds a `PythonString` from the class name
and looks it up in the module dictionary.  When the name is not valid
UTF-8, `PyUnicode_FromStringAndSize` returns `NULL`, so the
`PythonString` is left with `m_py_obj == NULL`. `GetItemForKey` forwards
that object to `GetItem`, which passed the `NULL` `PyObject *` straight
to `PyDict_GetItemWithError`.

Debugging the crashing lldb under lldb shows the `NULL` key arriving in
`GetItem`:

```
(lldb) break set -n lldb_private::python::PythonDictionary::GetItem
(lldb) run --no-use-colors -b -s /tmp/bp_cmds.txt
* stop reason = breakpoint 1.1
(lldb) up
(lldb) frame variable key.m_py_obj
(PyObject *) key.m_py_obj = nullptr
```

Continuing lands on the dereference of that `NULL` inside CPython:

```
(lldb) continue
* stop reason = EXC_BAD_ACCESS (code=1, address=0x8)
    frame #0: PyDict_GetItemWithError + 40
->  ldr    x8, [x1, #0x8]
```

`x1` holds the key argument, which is `NULL`, so reading the type field
at offset `0x8` faults at address `0x8`.

`GetItem` already guards against an invalid dictionary (`!IsValid()`);
extend that guard to reject an invalid key as well and return
`nullDeref()`.  `GetItemForKey` consumes the error and returns an empty
`PythonObject`, so existing callers such as `ResolveNameWithDictionary`
keep working and the breakpoint command now fails cleanly instead of
crashing.

This was found by `lldb-commandinterpreter-fuzzer`.

Adds `PythonDataObjectsTest.TestPythonDictionaryGetItemWithInvalidKey`,
which feeds an invalid-UTF-8 key to `GetItem`.  Without the fix the test
dereferences the `NULL` key and crashes (`SIGSEGV`).


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

  Changed paths:
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/Frontend/ast-codegen.c
    M clang/test/Modules/codegen.test
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Object/ModuleSymbolTable.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Transforms/IPO/ExtractGV.cpp
    M llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
    M llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp
    M llvm/lib/Transforms/Utils/SplitModule.cpp
    A llvm/test/Assembler/module-asm-invalid.ll
    M llvm/test/Bitcode/compatibility-3.6.ll
    M llvm/test/Bitcode/compatibility-3.7.ll
    M llvm/test/Bitcode/compatibility-3.8.ll
    M llvm/test/Bitcode/compatibility-3.9.ll
    M llvm/test/Bitcode/compatibility-4.0.ll
    M llvm/test/Bitcode/compatibility-5.0.ll
    M llvm/test/Bitcode/compatibility-6.0.ll
    M llvm/test/Bitcode/compatibility.ll
    M llvm/test/Bitcode/highLevelStructure.3.2.ll
    A llvm/test/Bitcode/module-asm.ll
    A llvm/test/CodeGen/RISCV/module-asm-features.ll
    M llvm/test/Instrumentation/DataFlowSanitizer/prefix-rename.ll
    A llvm/test/LTO/RISCV/module-asm.ll
    M llvm/test/LTO/X86/inline-asm-lto-discard.ll
    A llvm/test/Linker/Inputs/module-asm.ll
    M llvm/test/Linker/link-arm-and-thumb-module-inline-asm.ll
    A llvm/test/Linker/module-asm.ll
    M llvm/test/ThinLTO/X86/import-symver.ll
    M llvm/test/Transforms/LowerTypeTests/export-symver.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/cfi-icall-static-inline-asm.ll
    M llvm/test/Transforms/ThinLTOBitcodeWriter/x86/module-asm.ll
    M llvm/tools/llvm-reduce/deltas/ReduceModuleData.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/test/Target/LLVMIR/module-asm.mlir

  Log Message:
  -----------
  Reapply [IR] Explicitly specify target feature for module asm (#204548) (#207677)

Reapply with a use-after-free fix. The MC subtarget used for inline
assembly has to stay alive until finalization, not only during the
emitInlineAsm() call.

-----

Support specifying additional properties on module-level inline
assembly. In particular, the target features and target CPU can now be
specified as follows:

    module asm(target_features: "+foo", target_cpu: "bar")
        "asm line 1"
        "asm line 2"

There may be multiple module inline assembly blocks with different
properties.

This is intended to fix the long standing issue where in LTO scenarios
we don't know what target features to use for parsing the module-level
inline assembly. Now they can be faithfully preserved, even when merging
inline assembly from different modules with different features.

If target_features and target_cpu are empty, we fall back to the old
behavior (which, in the backend, would be to use the default subtarget
of the TargetMachine).

Fixes https://github.com/llvm/llvm-project/issues/61991.
Fixes https://github.com/llvm/llvm-project/issues/67698.


  Commit: 58bc8dff332e0d4d7609b6dbda62200355bbc75f
      https://github.com/llvm/llvm-project/commit/58bc8dff332e0d4d7609b6dbda62200355bbc75f
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/X86/Transforms/VectorContractToAMXDotProduct.cpp
    M mlir/test/Dialect/X86/AMX/vector-contract-to-tiled-dp.mlir

  Log Message:
  -----------
  [mlir][x86] AMX memref source check (#206785)

Adds extra checks to AMX lowering to ensure data is read from memrefs as
tensors are not supported by x86 dialect ops.


  Commit: 9de8a97a9e3551a97e342823a9b30960e4186212
      https://github.com/llvm/llvm-project/commit/9de8a97a9e3551a97e342823a9b30960e4186212
  Author: Valery Dmitriev <valeryd at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/test/CodeGen/AArch64/machine-cp-spill-chain-across-call.mir
    M llvm/test/CodeGen/PowerPC/mcp-elim-eviction-chain.mir

  Log Message:
  -----------
  [MCP] Fix bug in spill copy elimination folding chain across a call. (#206858)

findLastSeenDefInCopy interface does not check for possible register
clobbering between the def and current instruction. That may lead to not
having a caller preserved register being preserved across a call.
Replaced with findAvailCopy that also does checks for a regmask operand
between the def and current instruction.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-cmpne.ll

  Log Message:
  -----------
  [AArch64][InstCombine] xor(cmpne) -> cmpeq (#207007)

Fold xor(cmpne(pg, v, 0), pg) into cmpeq(pv, v, 0)

Created after initially trying as a DAGCombine in #206931.


  Commit: 57b1519e491498996ecb8599f6bbbf511a3146e8
      https://github.com/llvm/llvm-project/commit/57b1519e491498996ecb8599f6bbbf511a3146e8
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave2.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll

  Log Message:
  -----------
  [RISCV][NFC] Remove unnecessary ZIP/VISNI checks (#207683)

We should remove them when removing `XRivosVizip` and `XRivosVisni`
but it seems UTC failed to do that.


  Commit: 335a584e9d95db0c12b3f99d7c5ae19be2712128
      https://github.com/llvm/llvm-project/commit/335a584e9d95db0c12b3f99d7c5ae19be2712128
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_DAPConnection.py
    A lldb/test/API/tools/lldb-dap/utils/TestDAPUtils_EventHistory.py
    A lldb/test/API/tools/lldb-dap/utils/sample_dap_log.json

  Log Message:
  -----------
  [lldb-dap] Add tests for DAPConnection and EventHistory (#207037)

Add tests for DAPConnection and EventHistory


  Commit: 18c0f3a20c46b79d5a1023372982bc73b39b6627
      https://github.com/llvm/llvm-project/commit/18c0f3a20c46b79d5a1023372982bc73b39b6627
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/future

  Log Message:
  -----------
  [libc++] Use _LIBCPP_KEEP_TRANSITIVE_INCLUDES_LLVM23 in <future> (#207668)

`_LIBCPP_REMOVE_TRANSITIVE_INCLUDES` was used accidentally.


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

  Changed paths:
    M lldb/include/lldb/Utility/ConstString.h
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Utility/ConstString.cpp
    M lldb/test/API/commands/statistics/basic/TestStats.py

  Log Message:
  -----------
  [lldb] Reintroduce ConstString stats (#207694)

These stats were removed in ca59c69132eef55cc42bf8854706590dfddf5584 .
This patch restores the stats in their original form by tracking the
removed value in our own LLDB-specific counter.


  Commit: 3ce39bb78b9c1cc3ca65b8a62ae798fcf7fe44ee
      https://github.com/llvm/llvm-project/commit/3ce39bb78b9c1cc3ca65b8a62ae798fcf7fe44ee
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp

  Log Message:
  -----------
  [offload] Fix duplicate __llvm_write_custom_profile on Windows PGO builds (#207366)

MSVC/clang-cl lack __attribute__((weak)), so GlobalHandler.cpp provided
a strong stub for __llvm_write_custom_profile. When clang_rt.profile is
linked (e.g. instrumented/PGO builds) lld-link rejects the duplicate
strong symbol.

Replace the stub + CMake workaround with the /alternatename linker
pragma, which is the standard Windows weak-symbol equivalent used by
compiler-rt itself. The linker picks compiler-rt's strong definition
when present.

Fix the guard: use _WIN32 && !__MINGW32__ (not _MSC_VER) so the stub and
/alternatename pragma apply to plain clang-on-Windows too, while MinGW
(which supports __attribute__((weak)) natively) continues to use the
real weak declaration.

Also fix the stub signature from 8 to 10 parameters to match the header.

Assisted-by: Claude


  Commit: dc9edeb0453bd54b7461dae7feb5b35b784914fa
      https://github.com/llvm/llvm-project/commit/dc9edeb0453bd54b7461dae7feb5b35b784914fa
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/AssumeBundleQueries.h
    M llvm/lib/Analysis/AssumeBundleQueries.cpp
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp

  Log Message:
  -----------
  [AssumeBundleQueries] Remove unused code (#203927)

Some of the utilities in AssumeBundleQueris was only ever used in tests
for them, so there isn't much point in keeping the code around.


  Commit: 07e98388aea4a6696598556500c0f3efac16497a
      https://github.com/llvm/llvm-project/commit/07e98388aea4a6696598556500c0f3efac16497a
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    A llvm/test/CodeGen/RISCV/rvp-reverse.ll

  Log Message:
  -----------
  [RISCV][P-ext] Support packed reverse intrinsics (#207574)

Following X86, this patch uses general shuffles for packed reverse
intrinsics.


  Commit: eac4725ef0b505176af3d9bcca00688f53d911f1
      https://github.com/llvm/llvm-project/commit/eac4725ef0b505176af3d9bcca00688f53d911f1
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/early_exit_with_stores_vplan.ll
    A llvm/test/Transforms/LoopVectorize/early_exit_combined_exits.ll
    M llvm/test/Transforms/LoopVectorize/early_exit_store_legality.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/countable-and-uncountable-exits-combined.ll

  Log Message:
  -----------
  [LV] Tests for combined exit conditions (#205104)

Some initial tests for loops where earlier scalar transforms have
combined a countable exit with an uncountable one.


  Commit: 292c99c02eba6b5d2a8a6799636550494cdf7a88
      https://github.com/llvm/llvm-project/commit/292c99c02eba6b5d2a8a6799636550494cdf7a88
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/lds-link-time-codegen-named-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier-signal-var-gep.ll
    M llvm/test/CodeGen/AMDGPU/s-barrier.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll

  Log Message:
  -----------
  [AMDGPU] Improve SelectionDAG codegen around barrier intrinsics (#207688)

When lowering some intrinsics use generic AND/OR nodes instead of
specific machine instructions. This allows DAG combines and ISel to
select better instructions like S_BFE_U32.


  Commit: 5f4940efe9c121fb84ada13be9001f24cbef4a4c
      https://github.com/llvm/llvm-project/commit/5f4940efe9c121fb84ada13be9001f24cbef4a4c
  Author: unexpectedlydefined <91391114+unexpectedlydefined at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  [llvm-dwarfdump][LineCov 3/3] Add IR analysis for variable coverage (#195342)

Patch 3 of 3 to add to llvm-dwarfdump the ability to measure DWARF
coverage of local variables in terms of source lines, as discussed in
this RFC:
https://discourse.llvm.org/t/rfc-debug-info-coverage-tool-v2/83266

This patch adds an IR-level analysis in order to more accurately compute
the defined ranges for each variable. This avoids the problem of the
more naïve approach relying on source scopes, which overcounts as
coverable those lines where the variable is not yet defined (e.g. stack
variables).

The IR analysis requires IR to be provided to llvm-dwarfdump as a
separate `--variable-coverage-bitcode-file` argument (either textual IR
or bitcode; can be produced by various means e.g. `--save-temps
--emit-llvm`, `-ffat-lto-objects`,
[wllvm](https://github.com/travitch/whole-program-llvm)). The
recommended way to obtain a whole-program bitcode file is to use wllvm
as follows:
```sh
$ export LLVM_COMPILER=clang
$ CC=wllvm make  # build as usual, but replace clang/clang++ with wllvm/wllvm++
$ extract-bc binfile  # produces binfile.bc, which can be passed to llvm-dwarfdump
```


  Commit: 4226a8c4a2708b71ce7e7e35494f17345c44d1f7
      https://github.com/llvm/llvm-project/commit/4226a8c4a2708b71ce7e7e35494f17345c44d1f7
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  Revert "[llvm-dwarfdump][LineCov 3/3] Add IR analysis for variable coverage" (#207703)

Reverts llvm/llvm-project#195342

Change resulted in build errors resulting from not finding the
parseIRFile symbol while linking, example:
https://lab.llvm.org/buildbot/#/builders/67/builds/7988


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/known-pow2.ll

  Log Message:
  -----------
  [DAG] isKnownToBeAPowerOfTwo - add DemandedElts + OrZero handling to ISD::ZERO_EXTEND cases (#207697)

Fixes #181648


  Commit: b9347e0f1bcfa92387fdb57954a081196c655601
      https://github.com/llvm/llvm-project/commit/b9347e0f1bcfa92387fdb57954a081196c655601
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-reverse-load.ll

  Log Message:
  -----------
  [RISCV] Fold vp.reverse of vp.load through binary ops (#205529)

InstCombine canonicalizes reverses, including vp.reverses, by pulling
them through binary ops: https://godbolt.org/z/cs4M1TsE3

We have a combine that converts vp.reverses of vp.loads into
vp.strided.loads with a stride of -1, but it only matches the pattern
`vp.reverse(vp.load)` directly.

This PR teaches the combine to look through binary ops for vp.loads so
it can match the canonicalized form when there's a binary op that uses
the vp.reverse.

All leaves must be either a vp.load or a splat, but it still will only
convert one vp.load at a time. This combine isn't always profitable so
we should eventually remove it when it's done somewhere that's cost
model driven like the loop vectorizer or vector combine.


  Commit: 3264e4eba83027a0f84eaca8e91569701d6611aa
      https://github.com/llvm/llvm-project/commit/3264e4eba83027a0f84eaca8e91569701d6611aa
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVISelLowering.cpp
    M llvm/test/CodeGen/SPIRV/instructions/scalar-integer-arithmetic.ll

  Log Message:
  -----------
  [SPIR-V] Fix invalid OpIMul emitted for i1 multiplication (#207388)

OpIMul requires integer scalar/vector operands

OpTypeBool is not considered an integer type and causes spirv-val
failure


  Commit: fb1de34e8db8d11c764c7ff422879f923554cbd9
      https://github.com/llvm/llvm-project/commit/fb1de34e8db8d11c764c7ff422879f923554cbd9
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.general/p1.cpp
    M clang/test/SemaCXX/condition.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp
    M clang/test/SemaCXX/warn-tautological-compare.cpp

  Log Message:
  -----------
  [Clang][Sema] Warn on a function reference compared/converted to null (#204944)

Look through a reference-to-function in `DiagnoseAlwaysNonNullPointer`
so `-Wtautological-pointer-compare` and `-Wpointer-bool-conversion` fire
for it, as they already do for a bare function name.

Fixes #46362


  Commit: 1df080a267eeda318f6abb9791f098d870e622fd
      https://github.com/llvm/llvm-project/commit/1df080a267eeda318f6abb9791f098d870e622fd
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/x86-inst-tuning.mir

  Log Message:
  -----------
  [X86] Add test for VPBLENDW Tuning (#179906)

In PR https://github.com/llvm/llvm-project/pull/178883 we fixed tuning
for VPBLENDW with negative masked. Current test adds more cover for
masks for both unsigned and signed case.

We are adding explicit mir test to cover scenarios for tuning which are
hard to cover from IR and provides coverage to code under x86 tuning
pass.


  Commit: cb740ebaae9eec758d689388411f3b633be06569
      https://github.com/llvm/llvm-project/commit/cb740ebaae9eec758d689388411f3b633be06569
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MergeICmps.cpp
    A llvm/test/Transforms/MergeICmps/X86/dbgloc-branches.ll

  Log Message:
  -----------
  [MergeICmps][DebugInfo] Preserve debug locations in mergeComparisons (#205796)

The mergeComparisons function in MergeICmps merges a chain of comparison
blocks, generating new instructions inside of the merged block(s) to
memcmp the contiguous blocks of memory being compared and perform a
single branch based on the result. Some of the generated instructions
take their debug locations directly from the first block in the
comparison chain, but the icmp/memcmp and branch instructions generated
are not assigned any debug location.

This patch assigns a debug location to the comparison instructions from
the merged location of all merged comparison instructions, and similarly
assigns the branch instruction from the merged branch instructions.


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

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp

  Log Message:
  -----------
  [SPIR-V] Replace isPipeOrAddressSpaceCastBI hardcoded list with table lookup (#207147)


  Commit: 5c243188cf637c91f09a66986a1c0d90b92c33bb
      https://github.com/llvm/llvm-project/commit/5c243188cf637c91f09a66986a1c0d90b92c33bb
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/SPIRV/store-to-read-only-addrspace.ll

  Log Message:
  -----------
  [SPIR-V] Diagnose stores into read-only storage classes (#207331)


  Commit: e1ecc759dfc4e8dcbb249d4ec22946648cc9ee10
      https://github.com/llvm/llvm-project/commit/e1ecc759dfc4e8dcbb249d4ec22946648cc9ee10
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/SimplePackedSerialization.h
    M orc-rt/unittests/SimplePackedSerializationTest.cpp

  Log Message:
  -----------
  [orc-rt] Add SPSSequence serialization from iterator_range. (#207715)

Adds an SPSSerializationTraits specialization that serializes an
iterator_range<IteratorT> as an SPSSequence<SPSElementTagT>, matching
the wire format of the existing container and span sequence serializers.
The element type is deduced via std::iterator_traits, so both class-type
iterators and raw pointers are supported.

This lets callers serialize an arbitrary [begin, end) sub-range
directly, without first copying the elements into a temporary container.
Only serialization is provided: a bare iterator pair has no meaningful
deserialization target, so decode into a std::vector (or other sequence
type) as usual.

Please enter the commit message for your changes. Lines starting


  Commit: 592acb361000290a2a1502181b0b335a14d303fe
      https://github.com/llvm/llvm-project/commit/592acb361000290a2a1502181b0b335a14d303fe
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/docs/UsersManual.rst
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [Clang] Add `std:c++26preview` for MSVC compat (#207693)

As discussed here
https://github.com/llvm/llvm-project/pull/203992#discussion_r3438454092


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/vector-reduce-mul.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions-expanded.ll

  Log Message:
  -----------
  [X86] Add ISD::VECREDUCE_MUL lowering instead of matching in DAG (#207593)

Add X86 support for ISD::VECREDUCE_MUL and remove it from
combineArithReduction - most of the change is refactoring the custom
promotion of vXi8 -> vXi16.

Another part of #194621


  Commit: ed2b1d7920365a59e2f6c01f732157f1144d0a00
      https://github.com/llvm/llvm-project/commit/ed2b1d7920365a59e2f6c01f732157f1144d0a00
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaProfileCompliance.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TargetEnv.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/availability.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-attach-target.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add new block-scaled tensor type and support for MXFP CAST (#203583)

This commit adds a new compound-block scaled tensor type and uses this
type to implement support for MXFP in the CAST operation, as per the
following specification changes:
https://github.com/arm/tosa-specification/pull/50,
https://github.com/arm/tosa-specification/pull/53.

The new block-scaled type is closely modelled after the `quant` dialect
type and supports the following parameters:
- block shape - The size and axis of each block. Support for specifying
constant scale values has not been added in this commit, but will be
added in a later one.
- scale type - The type of the scale value associated with each block.
- value type - The type of the data values in each block.

Example syntax for the new block-scaled type:
```
tensor<160x!tosa.block_scaled<BLOCK_SHAPE_32:f8E8M0FNU:f8E5M2>>
```

As a pre-requisite for supporting MXFP CAST, the commit also adds new
extensions intended to split the existing EXT-MXFP extension into
separate extensions for each block-scaled type. This allows for more
fine-grained control over which block-scaled types are supported by a
given target. See specification change
https://github.com/arm/tosa-specification/pull/26 for details.

Finally, support for casting to/from the new block-scaled type has been
added, aligning with the behaviour specified in the CAST operation
specification.


  Commit: 25becf2006208b0d31e4af6cab3b642891f17604
      https://github.com/llvm/llvm-project/commit/25becf2006208b0d31e4af6cab3b642891f17604
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmStreamer.h
    M llvm/lib/MC/MCAsmStreamer.cpp

  Log Message:
  -----------
  [MC] Move addEncodingComment() into new base class MCAsmBaseStreamer (#188585)

This is in preparation to use this functionality in the
SystemZHLASMAsmStreamer. No functional change.


  Commit: 7f8dcfacbbcd77a8ddf512fa31589af1bf1f6ef4
      https://github.com/llvm/llvm-project/commit/7f8dcfacbbcd77a8ddf512fa31589af1bf1f6ef4
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/test/Transforms/CorrelatedValuePropagation/vectors.ll

  Log Message:
  -----------
  [LVI] Do not walk past cross-lane ops while determining value range (#207711)

While walking the one-use chain to find a constraining select
in `getValueAtUse`, do not look through cross-lane operations,
as they may move wrapping lanes into positions where the select
condition is true, and inferring nowrap flags would be unsound.

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


  Commit: 6840e6042cf5cb92eb3ebe06cf781d6458958b69
      https://github.com/llvm/llvm-project/commit/6840e6042cf5cb92eb3ebe06cf781d6458958b69
  Author: yaohuihan-iluvatar <yaohui.han at iluvatar.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    A clang/test/Sema/aux-target-builtin-constexpr.cpp

  Log Message:
  -----------
  [Clang][ExprConstant] Normalize aux target builtin IDs before dispatch (#201805)

When compiling for a device target that has an auxiliary host target
(for example OpenMP or CUDA offload), builtins of the auxiliary target
are registered with IDs shifted past the primary target's builtins. The
constant evaluator passed the raw ID straight into the target-specific
evaluation switches in the Pointer/Int/Vector/Float expression
evaluators, so a shifted auxiliary ID could fall through to an unrelated
builtin's case (or miss its case entirely) and fail to fold.

Add a getConstantEvaluatedBuiltinID() helper that translates auxiliary
builtin IDs back to their canonical target IDs via
BuiltinInfo::getAuxBuiltinID(), and use it before dispatching in each of
those evaluators.


  Commit: 9d59248664dd8356fe0614950b567a4a1e6429a9
      https://github.com/llvm/llvm-project/commit/9d59248664dd8356fe0614950b567a4a1e6429a9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll

  Log Message:
  -----------
  [AMDGPU] Do not copy the range attribute onto a widened kernarg load (#207655)

Sub-dword args (e.g. i8) are loaded as a full i32 and truncated. Copying
the i8 range onto the i32 load is invalid IR, and its bounds are wrong
since the upper bytes hold other args

Only copy the range when the load type matches the argument type


  Commit: bed625b42eeeb854c297508e46d822b96693c671
      https://github.com/llvm/llvm-project/commit/bed625b42eeeb854c297508e46d822b96693c671
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    A llvm/test/Transforms/InstCombine/insert-element-shuffle-vector-debugloc.ll

  Log Message:
  -----------
  [InstCombine] Propagate debuglocs when replacing insert->extract elts (#206026)

InstCombine may replace an extractelement->insertelement chain, where
the insert vector is wider than the extract vector, with a pair of
shufflevectors - one to widen the extract vector, and one to perform the
extract+insert simultaneously. Currently the second shufflevector
correctly adopts the insertelement's debug location, since it replaces
the chain of instructions that culminates with the insert. The first
shufflevector however takes its debug location from its insert position,
if the extract vector was a PHI or non-instruction, and otherwise
receives no location.

Since the first shufflevector is really adapting the extract vector for
use by one or more other instructions, we can consider it an extension
of the extractvector. If the extract vector is an instruction, its debug
location should be used (even if it is a PHI - this likely defaults to a
CompilerGenerated debug location); otherwise, the extract vector is a
constant, and so the shufflevector represents a constant materialization
- so should receive a CompilerGenerated location.


  Commit: 6eb0dac37aa409390bd96a91a99f216c35a0b8cb
      https://github.com/llvm/llvm-project/commit/6eb0dac37aa409390bd96a91a99f216c35a0b8cb
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    M flang/test/Fir/CUDA/cuda-device-global.f90

  Log Message:
  -----------
  [flang][cuda] Only strip internal linkage for device globals (#207521)

Stripping all linkage was too much. Only strip internal linkage so the
symbol is visible to CUDA API.


  Commit: c827c9011f81ef8b74143dd0ef40db5950aaec81
      https://github.com/llvm/llvm-project/commit/c827c9011f81ef8b74143dd0ef40db5950aaec81
  Author: Hagai Lev Hacohen <100465137+HagaiLevHacohen at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/Arith/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  Improving MinUI and MaxUI implementation in valuebounds (#207701)

Previously, the valuebounds implementation for MinUI and MaxUI was too
conservative.
We can already make correct assumptions even when we know only one
operand is provably not negative.


  Commit: a3624cb45f2a3902e59f78eafd005357d2b72688
      https://github.com/llvm/llvm-project/commit/a3624cb45f2a3902e59f78eafd005357d2b72688
  Author: Emery Conrad <conrade.ctc at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A clang/test/Interpreter/emulated-tls.cpp
    M llvm/lib/ExecutionEngine/Orc/Layer.cpp

  Log Message:
  -----------
  [ORC] Track __emutls_t definitions in IRMaterializationUnit (#207161)

When emulated TLS is enabled, `IRMaterializationUnit`'s constructor
emits an `__emutls_t.<var>` symbol for each non-zero-initialized
`thread_local` global and records it in `SymbolFlags`, but never adds it
to `SymbolToDefinition`.

If the same weak (`linkonce_odr`) definition is materialized by more
than one module — e.g. an `inline` function that odr-uses such a
`thread_local`, pulled into two `PartialTranslationUnit`s by clang-repl
— `JITDylib::defineImpl` discards the duplicate via
`IRMaterializationUnit::discard()`. `discard()` looks the symbol up in
`SymbolToDefinition` and, finding nothing, dereferences `end()`: an
assertion failure in `+Asserts` builds and heap corruption otherwise.

Register `__emutls_t.<var>` in `SymbolToDefinition` alongside its flags,
mirroring the `__emutls_v.<var>` handling just above.

### Test

`clang/test/Interpreter/emulated-tls.cpp` reproduces the crash through
clang-repl: two PTUs each odr-use one `inline worker()` that reads a
non-zero `thread_local`, so each re-emits the same weak emulated-TLS
set; defining the second module runs `discard()` over the duplicate. The
test aborts on the unfixed path and prints the expected value with the
fix.

🤖 Done with the help of [Claude Code](https://claude.com/claude-code)
(Claude Opus 4.8, human in the loop)

Co-authored-by: Emery Conrad <emery.conrad at chicagotrading.com>


  Commit: 7cb7f074b71e62d33b22ced07d860947fac08480
      https://github.com/llvm/llvm-project/commit/7cb7f074b71e62d33b22ced07d860947fac08480
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_mutex_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h

  Log Message:
  -----------
  [compiler-rt][sanitizer_common] Fix -Wunused-template in test helpers… (#207706)

`Ident` is a static function template in a test header, so any test TU
that never calls it trips `-Wunused-template`. Drop static.

`check_locked` in `sanitizer_mutex_test.cpp` has no callers.

Part of #202945.


  Commit: 3fbe826e3707540c9b7f942c573fbcb2d51b6bcc
      https://github.com/llvm/llvm-project/commit/3fbe826e3707540c9b7f942c573fbcb2d51b6bcc
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Prevent openmp-device attribute being added to the host (#207719)

This attribute is only intended for an OpenMP target device but a recent
patch started causing it to appear on the host. This causes the
OpenMPOpt pass to treat the LLVM IR module as an OpenMP offloading
target, potentially introducing invalid modifications.

Fixes #207423.


  Commit: 62708d1030229006b70bf1b5a46dbb56d2d058ec
      https://github.com/llvm/llvm-project/commit/62708d1030229006b70bf1b5a46dbb56d2d058ec
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/CostTable.h

  Log Message:
  -----------
  [CodeGen] Compact cost table entries (#202836)

ISD and CostType can both be shrunk to uint16_t, which reduces the
binary by 16KB.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: dcf969eaf2c25048542d13946ca5ff65be5bc7ab
      https://github.com/llvm/llvm-project/commit/dcf969eaf2c25048542d13946ca5ff65be5bc7ab
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Remove internal linkage from LargeBlock header helpers (NFC) (#207708)

`addHeaderTag` and `getHeader` are static function templates in
`secondary.h,` so any TU that includes the header without using them
trips `-Wunused-template`. Dropping static fixes the warning.

Part of #202945.


  Commit: 5f66b69933540b9602ba1e2106d1a4397c058a6e
      https://github.com/llvm/llvm-project/commit/5f66b69933540b9602ba1e2106d1a4397c058a6e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/SemaTemplate/member-specialization.cpp

  Log Message:
  -----------
  [clang] accept member specializations declared in class scope (#207256)

Explicit specializations are not restricted to namespace scope since
CWG727 was accepted as a DR.

Also fixes a crash upon error recovery in this case which was a recent
unreleased regression.

Fixes #206866


  Commit: 4c6e5788851421e9382452e147a9427cb77b23d9
      https://github.com/llvm/llvm-project/commit/4c6e5788851421e9382452e147a9427cb77b23d9
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/test/CodeGen/SystemZ/call-zos-02.ll
    M llvm/test/MC/SystemZ/insn-good-zos-pcrel.s

  Log Message:
  -----------
  [SystemZ][z/OS] Show instruction encoding in HLASM output (#181904)

This change adds the support to show instruction encoding as a comment
when emitting HLASM text. With this, the last 2 LIT tests migrate to
HLASM syntax.


  Commit: 5ddd08310373371d416f148727c707beeffc1b8a
      https://github.com/llvm/llvm-project/commit/5ddd08310373371d416f148727c707beeffc1b8a
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  [clang][AST] Outline constant-interpreter shift diagnostics (#202633)

CheckShift is instantiated for each primitive left-hand and right-hand
type
and for both shift directions. Its four diagnostic paths are cold, but
each
instantiation currently emits the diagnostic construction and undefined
behavior handling.

Move those paths to the non-template, noinline diagnoseShiftFailure
function.
Valid shifts retain the existing checks and do not call the outlined
function.
Invalid shifts preserve the same diagnostic arguments and call
noteUndefinedBehavior exactly once.

On arm64 macOS with a Release build of standalone Clang, this changes:

  linked binary:  222,173,192 -> 221,924,960 bytes (-248,232)
  stripped binary: 128,407,464 -> 128,291,224 bytes (-116,240)
  __TEXT,__text:   98,369,916 -> 98,255,864 bytes (-114,052)

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 6dd93e338442f070f55691e5374aac966287ee3c
      https://github.com/llvm/llvm-project/commit/6dd93e338442f070f55691e5374aac966287ee3c
  Author: Hocky Yudhiono <hocky.yudhiono at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaNarrowTypes.cpp
    M mlir/test/Dialect/Tosa/tosa-narrow-i64-to-i32.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix TosaNarrowTypes conversion order to prevent rollback crash (#207372)

Fix #206952 by doing `convertRegionTypes` before moving and unlinking
the blocks when handling `tosa.cond_if` ops. This will cause a crash
when doing rollback.


  Commit: f1b7f9758f4a1c9bb80c0becb1a39b3b651ef670
      https://github.com/llvm/llvm-project/commit/f1b7f9758f4a1c9bb80c0becb1a39b3b651ef670
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp

  Log Message:
  -----------
  [clang-tidy] Compact the confusable identifier table (#202626)

Encode confusable replacement strings once in a shared UTF-8 byte array.
Each sorted mapping becomes an eight-byte code point, 16-bit offset, and
16-bit length entry instead of reserving nineteen UTF-32 code points for
every replacement.

ConfusableIdentifierCheck appends the UTF-8 slice directly after the
binary search, removing the per-identifier UTF-32 to UTF-8 conversion.
Add compile-time assertions for the eight-byte entry layout and the 64
KiB replacement-data limit, plus generator-side overflow checks.

The logical table shrinks from 508,400 to 63,327 bytes, saving 445,073
bytes. A stripped standalone clang-tidy shrinks from 91,116,608 to
90,654,176 bytes, saving 462,432 bytes (0.508%).

A lookup microbenchmark improves from 79.9 to 40.4 ns median. A
100,000-identifier clang-tidy benchmark improves from 0.343 to 0.314
seconds mean.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 6dcadef39ffd3a25f4d4cd82cf35943e4c374304
      https://github.com/llvm/llvm-project/commit/6dcadef39ffd3a25f4d4cd82cf35943e4c374304
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    A llvm/test/Transforms/JumpTableToSwitch/callee-type-mismatch.ll

  Log Message:
  -----------
  [JumpTableToSwitch] Bail out on function type mismatch (#207700)

If the function types of the functions in the jump table don't match the
function type of the call, we currently get an assertion failure. We
could avoid that by using a different API, but the usefulness of the
transform in this case is questionable (e.g. we wouldn't be able to
inline the call). For simplicity just bail out.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: 0b94c13b63406281ce5cef76fcbdc3e82fe5e494
      https://github.com/llvm/llvm-project/commit/0b94c13b63406281ce5cef76fcbdc3e82fe5e494
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    A clang/test/Lexer/char-escapes-delimited-invalid-utf8.c
    M clang/test/Lexer/char-escapes-delimited.c
    M clang/test/SemaCXX/static-assert-cxx26.cpp
    M clang/test/SemaCXX/static-assert.cpp
    M clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M llvm/include/llvm/Support/ConvertUTF.h
    M llvm/lib/Support/ConvertUTF.cpp

  Log Message:
  -----------
  [Clang] Reduce the number of ways we have to print a codepoint. (#206990)

In #206326, we introduced yet another way to format a codepoint, so we
try to claw back some consistency.

- When we display a single character we do so inside quotes
- Non-decodable code units are displayed as <0xYY>
- In strings
    - we render printable and format characters
    - we print <U+XXXX> for non printable, non-format characters

- In characters
    - we only render non-format print characters
    - we always print the codepoint as U+XXXX for non-ascii characters

This does not change `WriteCharValueForDiagnostic` which is deeply weird
and was contentious a while back.

So we still have 2 different formatting utilities. Which is better than
4!

I've also added a test for invalid utf-8 in \N{}


  Commit: 4109893350feeea69214d938864e200ca5eec7b5
      https://github.com/llvm/llvm-project/commit/4109893350feeea69214d938864e200ca5eec7b5
  Author: Qixi <tjx2361869673 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    A mlir/test/Conversion/ArithToAMDGPU/scaling-truncf-tensor.mlir

  Log Message:
  -----------
  [mlir][ArithToAMDGPU] Skip tensor scaling ops (#207327)

This fixes a crash in -convert-arith-to-amdgpu=chipset=gfx950 when the
input contains tensor arith.scaling_truncf operations.

The scaling rewrite patterns are written for scalar/vector values.
Tensor values should not be rewritten by these patterns, so this patch
returns failure for tensor operands and leaves those ops unchanged.

A regression test is added for the tensor reproducer from #207311.

Co-authored-by: tongjinxuan <tongjinxuan at longcheer.com>


  Commit: acfbfca988887d830a22fc9dd684ced437928cdb
      https://github.com/llvm/llvm-project/commit/acfbfca988887d830a22fc9dd684ced437928cdb
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    A flang/test/HLFIR/inline-elemental-multi-users.fir

  Log Message:
  -----------
  [flang][HLFIR] Relax InlineElementals to support more than two users (#186916)

This pr optimizes the lowering of MINLOC and MAXLOC when the MASK
argument is a simple equality comparison (e.g., MASK = A == X).

This patch introduces isEqualityMask to identify these patterns and
inline the comparison directly into the reduction loop.

This allows the SimplifyHLFIRIntrinsicscation pass to extract the
invariant
search target and bypasses the creation of a temporary logical mask
array
by inlining the equality comparison directly into the reduction loop.
optimization removes the 'hlfir.apply' to the mask's hlfir.elemental,
which
gets eliminated in bufferize-hlfir pass.
Simplifies the reduction state by removing the min/max value tracker,
as the target value is already known.
Implements a 'first-hit' locking mechanism.

---------

Co-authored-by: anoop.kumar6 at ibm.com <anoopk at b35lp63.lnxne.boe>


  Commit: c58675e91042e7052870675aeaf2aca963e11376
      https://github.com/llvm/llvm-project/commit/c58675e91042e7052870675aeaf2aca963e11376
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/src/atomic.cpp

  Log Message:
  -----------
  [libc++] Make atomic contention tables constinit (#207456)


  Commit: 750f3bf803251abacfd440dbd883ce660597a986
      https://github.com/llvm/llvm-project/commit/750f3bf803251abacfd440dbd883ce660597a986
  Author: Fateme Hosseini <Fhossein at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/lib/Target/Hexagon/HexagonPostRAHandleQFP.cpp
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-multi-conv.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-conv-double2.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-fakereg.ll
    M llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg2.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-subreg3.ll
    A llvm/test/CodeGen/Hexagon/autohvx/xqf-postra-warnings.ll

  Log Message:
  -----------
  [Hexagon] Add XQFloat post-RA compliance checker (#207082)

Introduce XqfPostRADiagnosis to verify qf use-def correctness after
register allocation. Acts as a diagnostic/debugger for XQFloat
implementation. Off by default, enabled with -enable-postra-xqf-check.

Co-authored-by: Santanu Das <quic_santdas at quicinc.com>


  Commit: 2c7d18c6ad5fdc4743673b6a5dd23d521ec9e810
      https://github.com/llvm/llvm-project/commit/2c7d18c6ad5fdc4743673b6a5dd23d521ec9e810
  Author: 311Volt <41923095+311Volt at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/program/olCreateProgram.cpp

  Log Message:
  -----------
  [offload] add unit tests for olCreateProgram (#206462)

Add tests for olCreateProgram param validation & fail on invalid program


  Commit: 1ac400e69f26946bf3c84a253e61d1d0ede0d680
      https://github.com/llvm/llvm-project/commit/1ac400e69f26946bf3c84a253e61d1d0ede0d680
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  [clang][Frontend] Batch LangOptions context hashing (#203162)

`CompilerInvocation::computeContextHash` currently expands 269
non-benign `LangOptions` into individual `HashBuilder::add` calls. This
collects the values in an `unsigned` array and passes the array to
`HashBuilder::addRangeElements`, which preserves the ordered
native-endian bytes without adding an element count.

In a Release arm64 build, clangd decreases by 16,528 bytes unstripped
and 16,544 bytes stripped.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.


  Commit: 8b50847a31f927d258cf22953035db206d42fc5d
      https://github.com/llvm/llvm-project/commit/8b50847a31f927d258cf22953035db206d42fc5d
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/AST/StmtVisitor.h

  Log Message:
  -----------
  [clang][AST] Inline StmtVisitor fallback methods (#203125)

Mark the trivial `StmtVisitorBase` fallback methods `always_inline` so
each `VisitFoo`-to-`VisitParent` delegation is folded into its caller
instead of retained as an out-of-line template thunk.

In matched Release assertions-off Darwin arm64 builds, stripped clang
decreased by 266,656 bytes, stripped clangd decreased by 232,912 bytes,
and the stripped upstream `llvm-driver` multicall decreased by 266,336
bytes.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.

Co-authored-by: OpenAI Codex <noreply at openai.com>


  Commit: 26380406c852574f79f3df58bc6ed2664c186ac9
      https://github.com/llvm/llvm-project/commit/26380406c852574f79f3df58bc6ed2664c186ac9
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/test/CodeGen/AMDGPU/lower-kernargs.ll

  Log Message:
  -----------
  [AMDGPU] Copy the nofpclass attribute onto a matching kernarg load (#207734)

Follow up for https://github.com/llvm/llvm-project/pull/207655


  Commit: 343197e8da2856fd357f64b4e3639f7c18e4935a
      https://github.com/llvm/llvm-project/commit/343197e8da2856fd357f64b4e3639f7c18e4935a
  Author: darkbuck <michael.hliao at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/CIR/CodeGen/inline-asm.c
    M clang/test/CIR/Lowering/module-asm.cir

  Log Message:
  -----------
  [CIR] Fix lit tests after explicit target feature for module asm (#207741)

- Fix lit tests after the module-level inline assembly is enhanced to
support specifying target features explicitly in
fcfc9167b628a2fae8fe1d662989ff7752d905ad.


  Commit: 6575e395e3f37f4bea17092f612b37649d319041
      https://github.com/llvm/llvm-project/commit/6575e395e3f37f4bea17092f612b37649d319041
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lld/ELF/InputFiles.cpp
    M lld/ELF/InputFiles.h

  Log Message:
  -----------
  [ELF] Reuse SHT_GROUP selection verdicts in initializeSections. NFC (#207437)

For each SHT_GROUP section, the parallel initializeSections re-derives
what the serial parse() already decided
(https://reviews.llvm.org/D130810).

Record the kept group section indices during parse() so that we can save
the work (xxh3 string hash and DenseMap lookup) in the parallel
initializeSections().

In a clang-relassert --threads=8 benchmark, "Initialize sections"
decreases from 39.0 to 30.6.


  Commit: 39505025e42479ebfde4600df00a80f2fe3625f7
      https://github.com/llvm/llvm-project/commit/39505025e42479ebfde4600df00a80f2fe3625f7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ClangLinkerWrapper.rst
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [ClangLinkerWrapper] Use discrete steps in verbose mode (#204186)

Summary:
One persistent problem with the linker wrapper flow is that it was more
difficult to reuse as a script than the previous flow. This is because
it did a lot of work internally. In the past we moved al ot of this into
dedicated LLVM tools, so now it's possible to simply use these tools
instead.

This PR changes the verbose mode handling to defer steps to tools rather
than doing it internally. This allows users to use verbose printing and
can copy/paste the results to re-run the steps.


  Commit: b8c1776668c217a3ddfa18a7668a75245d08b528
      https://github.com/llvm/llvm-project/commit/b8c1776668c217a3ddfa18a7668a75245d08b528
  Author: Mohsen Rahmati <mohsenrahmati at icloud.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avx512bwintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx2-builtins.c
    M clang/test/CodeGen/X86/avx512bw-builtins.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/builtins-x86.c

  Log Message:
  -----------
  [Clang] Add constant evaluation support for x86 psadbw (#169253)

This patch adds constant evaluation support for the  x86 PSADBW and PSADBW128 intrinsics in Clang’s constexpr interpreter.


  Commit: 3ed7f90ec978ce4670779adf30fac17e87cba4fb
      https://github.com/llvm/llvm-project/commit/3ed7f90ec978ce4670779adf30fac17e87cba4fb
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/elements_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.elements/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Applied [[nodiscard]] to `elements_view` (#206589)

[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.elements

Towards https://github.com/llvm/llvm-project/issues/172124

---------

Co-authored-by: A. Jiang <de34 at live.cn>


  Commit: 0cb5782f7ae0e859d3a649327227a3119e69cc25
      https://github.com/llvm/llvm-project/commit/0cb5782f7ae0e859d3a649327227a3119e69cc25
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst

  Log Message:
  -----------
  [docs][AMDGPU] Correct spelling of DW_AT_LLVM_memory_space (#207745)


  Commit: d930a16182aee3a541173c58bd2061c5265ffd44
      https://github.com/llvm/llvm-project/commit/d930a16182aee3a541173c58bd2061c5265ffd44
  Author: 311Volt <41923095+311Volt at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M offload/unittests/OffloadAPI/program/olCreateProgram.cpp

  Log Message:
  -----------
  [Offload] run clang-format on olCreateProgram unit tests (#207757)

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


  Commit: 3b57d53a792cd9e9ba848cfe6fef151a0cb6f5d9
      https://github.com/llvm/llvm-project/commit/3b57d53a792cd9e9ba848cfe6fef151a0cb6f5d9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/GenericDomTree.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h
    M llvm/include/llvm/Support/GenericLoopInfoImpl.h
    M llvm/unittests/IR/DominatorTreeTest.cpp

  Log Message:
  -----------
  [LoopInfo] Reuse DomTree's own DFS numbering in analyze() (#207650)

analyze() discovers loop headers with a post_order(DomRoot) walk, then
tests each back-edge candidate with DomTree.dominates(). Initial queries
use `dominatedBySlowTreeWalk` and then switch to `updateDFSNumbers`
(Euler tour technique), requiring two tree walks in total.

Optimize this with an upfront updateDFSNumbers to avoid the post-order
walk. Both post-order and reverse pre-order satisfy the
child-before-parent (bottom-up) property. This does change the order in
which siblings are visited (reverse preorder visits the last child
first; post-order visits it last), but that has no observable effect:
the sub-loop and block vectors are only populated by the separate
PopulateLoopsDFS traversal afterward, not by discovery order.

`post_order` (and `depth_first`) are also inefficient for tree
traversals:
DomTreeNodeBase doesn't expose graph numbers, so they fall back to
tracking visited nodes in a SmallPtrSet. For a tree this bookkeeping is
unnecessary, since by definition every node has exactly one parent and
can never be reached twice.

DFS numbers, of [0, 2*N), have many nullptr gaps. Simplify
updateDFSNumbers() so DFSNumOut no longer consumes its own counter tick:
DFSNumIn becomes a dense [0, N) preorder rank.


  Commit: b30e3c23a537ca99937181d03bb53a8fe1d54c36
      https://github.com/llvm/llvm-project/commit/b30e3c23a537ca99937181d03bb53a8fe1d54c36
  Author: Ron Green [NVIDIA] <rogreen at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.td
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Fir/CUDA/cuda-device-func-transform.mlir
    M flang/test/Lower/CUDA/cuda-proc-attribute.cuf
    M flang/test/Semantics/CUDA/cuf08.cuf
    A flang/test/Semantics/CUDA/cuf31.cuf

  Log Message:
  -----------
  [flang][cuda] Make the second LAUNCH_BOUNDS() operand optional (#207273)

The minimum-blocks-per-multiprocessor (second) and maximum-blocks-per-cluster
(third) operands of the CUDA Fortran `LAUNCH_BOUNDS()` prefix are optional, as in
CUDA C++ `__launch_bounds__`. A single-operand `LAUNCH_BOUNDS(N)` is now accepted;
1, 2, or 3 integer constants are valid.

Previously `LAUNCH_BOUNDS(N)` with a single operand was rejected, and the
diagnostic path dereferenced an empty `std::optional` (`currStmtSource()`). That
handler runs during the direct statement walk in `ResolveSpecificationParts`,
where the statement source is not set, so the dereference aborted the compiler.
The diagnostic source is now derived from the prefix, and the same fix is applied
to every diagnostic in the `LAUNCH_BOUNDS()` and `CLUSTER_DIMS()` handlers.

When only the maximum-threads-per-block operand is present, the 
`cuf.launch_bounds` attribute omits `minBPM` (now an optional parameter) and no
`nvvm.minctasm` attribute is generated.

Assisted-by: AI


  Commit: 6645153025367af4f3bd4020dc81700a4cbe9132
      https://github.com/llvm/llvm-project/commit/6645153025367af4f3bd4020dc81700a4cbe9132
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/ClangScanDeps/diagnostics.c
    M clang/test/ClangScanDeps/header-search-pruning-transitive.c
    M clang/test/ClangScanDeps/modules-context-hash-from-named-module.cpp
    M clang/test/ClangScanDeps/modules-context-hash-ignore-macros.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/ClangScanDeps/modules-context-hash-warnings.c
    M clang/test/ClangScanDeps/modules-context-hash.c
    M clang/test/ClangScanDeps/modules-dep-args.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-extern-unrelated.m
    M clang/test/ClangScanDeps/modules-fmodule-name-no-module-built.m
    M clang/test/ClangScanDeps/modules-full-named-modules.cppm
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-full.cpp
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-implementation-vfs.m
    M clang/test/ClangScanDeps/modules-implicit-dot-private.m
    M clang/test/ClangScanDeps/modules-incomplete-umbrella.c
    M clang/test/ClangScanDeps/modules-inferred.m
    M clang/test/ClangScanDeps/modules-no-undeclared-includes.c
    M clang/test/ClangScanDeps/modules-pch-common-stale.c
    M clang/test/ClangScanDeps/modules-pch-common-submodule.c
    M clang/test/ClangScanDeps/modules-pch-common-via-submodule.c
    M clang/test/ClangScanDeps/modules-pch.c
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    M clang/test/ClangScanDeps/multiple-commands.c
    M clang/test/ClangScanDeps/tu-buffer.c

  Log Message:
  -----------
  [clang-scan-deps] Migrate more tests through scan-deps-filter (#207283)

Migrate tests that would otherwise fail when the `-emit-visible-modules`
flag is removed.

* The tests now include a `scan-deps-filter` invocation that maintains
the same fields that are already checked, so there is no test coverage
lost.
* Also remove `command-line` fields that were not actually checked in
tests.

Assisted-by: Claude Opus 4.8


  Commit: ea165572a5e649b1ab8181322ff6d759ca8adceb
      https://github.com/llvm/llvm-project/commit/ea165572a5e649b1ab8181322ff6d759ca8adceb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  IR: Use switch in getFloatingPointType (#207750)


  Commit: 4ad89d11db9e4048328de408af5ae0503861fe4c
      https://github.com/llvm/llvm-project/commit/4ad89d11db9e4048328de408af5ae0503861fe4c
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.h
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Remove temporary gnu as output on z/OS (#181906)

On z/OS, there is only HLASM as system assembler available. Since all
LIT tests are migrated, the temporary option can now be removed.


  Commit: 60cccae52fda78a9cdc9323900e14952d71b2624
      https://github.com/llvm/llvm-project/commit/60cccae52fda78a9cdc9323900e14952d71b2624
  Author: Chris B <chris.bieneman at me.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp

  Log Message:
  -----------
  [NFC] Remove dead code to fix build (#207753)

LLVM changed the interfaces around inline assembly, and while we could
have updated this code, in practice DXIL doesn't allow inline assembly
so I removed it.


  Commit: d3d3fdd940d714af2ac060b9f3da3ed32bdbaa05
      https://github.com/llvm/llvm-project/commit/d3d3fdd940d714af2ac060b9f3da3ed32bdbaa05
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  Disable test not supported on MSVC (#207752)

Fixes an Incorrectly applied merge conflict resolution after landing
#206990


  Commit: f0bbde8630ed94d749b95624799659d6ccbb9418
      https://github.com/llvm/llvm-project/commit/f0bbde8630ed94d749b95624799659d6ccbb9418
  Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/i128-imm-compare-ccmp.ll
    M llvm/test/CodeGen/AArch64/isinf.ll
    M llvm/test/CodeGen/AArch64/umulo-128-legalisation-lowering.ll

  Log Message:
  -----------
  [AArch64] optimize lowering for icmp on i128 when RHS is an immediate (#181822)

Optimize cases including eq, ne, ult, ule, ugt, and uge. 

Closes #161273.


  Commit: 1aa74f6d98b357189d735c800510424035edb9d5
      https://github.com/llvm/llvm-project/commit/1aa74f6d98b357189d735c800510424035edb9d5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/Dominators.h
    M clang/include/clang/Analysis/CFG.h
    M llvm/include/llvm/Support/CFGDiff.h
    M llvm/include/llvm/Support/GenericDomTreeConstruction.h

  Log Message:
  -----------
  [Analysis] Modernize CFGBlock GraphTraits; drop generic dominator tree special case (#207552)

Make clang analyzer's CFG behave like other graphs in the generic
dominator tree builder by teaching the CFGBlock GraphTraits two things.

* Node numbers: getNumber/getMaxNumber/getNumberEpoch backed by the
  dense, never-renumbered BlockIDs. GraphHasNodeNumbers<CFGBlock *>
  becomes true (#101706) so Semi-NCA indexes a SmallVector instead of a
  DenseMap and DominatorTreeBase drops its CFGBlock-to-index map.
* Plain `CFGBlock *` children: map through the reachable target and skip
`AB_Unreachable` (null) edges. This drops the
is_same_v/make_filter_range
fallback in getChildren() and the CFGBlock ChildrenGetterTy
specialization.

(Post)dominator and IDF results are unchanged.

Aided by Claude Opus 4.8


  Commit: 8e8e4e50f501bac04b9a00dd7305cf35549b5afc
      https://github.com/llvm/llvm-project/commit/8e8e4e50f501bac04b9a00dd7305cf35549b5afc
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Semantics/openmp-utils.cpp

  Log Message:
  -----------
  [flang][OpenMP][NFC] Move variant-matching context to semantics (#207087)

Move FlangOMPContext from lowering into semantics as the
MLIR-independent OmpVariantMatchContext. This lets an upcoming semantic
check reuse the matcher to skip the loop-nest checks for a metadirective
variant that cannot be selected on the current target, such as a
`device={kind(nohost)}` variant in a host compilation. No functional
change to metadirective lowering.

Assisted with copilot.


  Commit: 902273247db1f8b62613f38fa1a6f93700de517b
      https://github.com/llvm/llvm-project/commit/902273247db1f8b62613f38fa1a6f93700de517b
  Author: Alexey Karyakin <akaryaki at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp

  Log Message:
  -----------
  [clang][tablegen] Allow qualifiers on _Vector builtin types (#207091)

The builtin prototype parser accepts pointers to _Vector<> template
types but not const/volatile/restrict pointers. Currently, _Vector<>
types are parsed in a special way: first parsing the type itself,
consuming it, and saving the resulting type string. Then, the remaining
qualifiers are parsed while the type is removed from the input. For this
to work, parsing qualifiers must accept empty base type, which was the
case only for plain pointers and references.
This change extends this approach to const/volatile/restrict qualifiers.

Signed-off-by: Alexey Karyakin <akaryaki at qti.qualcomm.com>


  Commit: a913e893c3f3e820f413ccd3877f19eb4ab028f6
      https://github.com/llvm/llvm-project/commit/a913e893c3f3e820f413ccd3877f19eb4ab028f6
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
    M llvm/test/Transforms/SLPVectorizer/X86/copyable-operands-reordering.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-node-with-in-order-parent.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-before-main.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-with-removed-extracts.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll

  Log Message:
  -----------
  [SLP]Support Mul as the main copyable instruction

Added support for the missed Mul as a main copyable instruction opcode

Reviewers: RKSimon, hiraditya, bababuck

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


  Commit: b0d35497b666b3e0c0c4244c1f8c19f2cfdc1fb2
      https://github.com/llvm/llvm-project/commit/b0d35497b666b3e0c0c4244c1f8c19f2cfdc1fb2
  Author: Quentin Colombet <quentin.colombet at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MILexer.cpp
    M llvm/lib/CodeGen/MIRParser/MILexer.h
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/test/CodeGen/AArch64/nested-iv-regalloc.mir
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/dead_bundle.mir
    M llvm/test/CodeGen/AMDGPU/extend-phi-subrange-not-in-parent.mir
    M llvm/test/CodeGen/AMDGPU/greedy-global-heuristic.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-agpr-negative-tests.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av-with-load-source.mir
    M llvm/test/CodeGen/AMDGPU/inflate-reg-class-vgpr-mfma-to-av.mir
    M llvm/test/CodeGen/AMDGPU/inflated-reg-class-snippet-copy-use-after-free.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill-inspect-subrange.mir
    M llvm/test/CodeGen/AMDGPU/infloop-subrange-spill.mir
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/ra-inserted-scalar-instructions.mir
    M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-fail-unsatisfiable-overlapping-tuple-hints.mir
    M llvm/test/CodeGen/AMDGPU/regalloc-undef-copy-fold.mir
    M llvm/test/CodeGen/AMDGPU/split-liverange-overlapping-copies.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-bundle.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-copy-live-lanes.mir
    M llvm/test/CodeGen/AMDGPU/splitkit-do-not-undo-subclass-split-with-remat.mir
    M llvm/test/CodeGen/AMDGPU/splitkit.mir
    M llvm/test/CodeGen/AMDGPU/swdev502267-use-after-free-last-chance-recoloring-alloc-succeeds.mir
    A llvm/test/CodeGen/MIR/AMDGPU/lr-split-flag.mir
    M llvm/test/CodeGen/RISCV/pr176001.ll
    M llvm/test/CodeGen/X86/AMX/amx-greedy-ra-spill-shape.ll
    M llvm/test/CodeGen/X86/apx/foldmemory.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-enter-at-end.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra-inline-spiller.mir
    M llvm/test/CodeGen/X86/statepoint-invoke-ra.mir
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-movements.mir
    M llvm/test/DebugInfo/MIR/X86/dvl-livedebugvars-stackptr.mir
    M llvm/utils/UpdateTestChecks/mir.py

  Log Message:
  -----------
  [MIR] Serialize/Deserialize MachineInstr::LRSplit flag (#197362)

The LRSplit MachineInstr flag is set by SplitKit on copies inserted for
live-range splitting.
Until now the flag had no MIR-text representation.

This patch fixes that so that it gets easier to reproduce/capture issues
that involves SplitKit.

Round-trip coverage in
llvm/test/CodeGen/MIR/AMDGPU/lr-split-flag.mir.


  Commit: c35cba42e67284a1b6b8609f20782f6d8c692a6c
      https://github.com/llvm/llvm-project/commit/c35cba42e67284a1b6b8609f20782f6d8c692a6c
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/SandboxIR/PassManager.h
    M llvm/unittests/SandboxIR/PassTest.cpp

  Log Message:
  -----------
  [SandboxIR] Fix pass pipeline parsing after aux arguments (#207237)

## Summary
- Fix `sandboxir::PassManager::setPassPipeline` to resume scanning pass
names after a pass aux argument when the next token is a delimiter.
- Add a unit test covering flat pipelines like `foo(aux1),bar`.

This fixes parsing of region pass pipelines such as
`bottom-up-vec(top-down),tr-accept` that will be used by the
SandboxVectorizer.

## Test plan
- [x] `ninja SandboxIRTests`
- [x] `./unittests/SandboxIR/SandboxIRTests
--gtest_filter=PassTest.SetPassPipeline`


Made with [Cursor](https://cursor.com)

Co-authored-by: Cursor <cursoragent at cursor.com>


  Commit: 20e12152f9b218c42791151f0bca93a5a1763b64
      https://github.com/llvm/llvm-project/commit/20e12152f9b218c42791151f0bca93a5a1763b64
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64CallingConvention.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/ARC/ARCISelLowering.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/CSKY/CSKYISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Lanai/LanaiISelLowering.cpp
    M llvm/lib/Target/M68k/M68kISelLowering.cpp
    M llvm/lib/Target/MSP430/MSP430ISelLowering.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCCallingConv.cpp
    M llvm/lib/Target/Sparc/SparcISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/VE/VEISelLowering.cpp
    M llvm/lib/Target/X86/X86CallingConv.cpp
    M llvm/lib/Target/XCore/XCoreISelLowering.cpp
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp
    M llvm/utils/TableGen/CallingConvEmitter.cpp

  Log Message:
  -----------
  [TableGen][CC][NFC] Emit idiomatic guards for CallingConv. (#207758)

Emit independent guards for the two existing sections rather than the
if-else done today. This is in preparation for adding other sections
that must be includable exclusive of the other sections.

This also eliminates the current asymmetry between the automatic
IfGuardEmitter for the "if" portion vs the manually emitted "else"
section.


  Commit: 78bc590bbc89aa868bcee35982dd3cf70cebea64
      https://github.com/llvm/llvm-project/commit/78bc590bbc89aa868bcee35982dd3cf70cebea64
  Author: Stefan Mada <smada at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp
    A llvm/test/CodeGen/NVPTX/intrinsic-immarg-print-mismatched-signature.ll

  Log Message:
  -----------
  [IR][NVVM] Fixed null pointer deference in AsmWriter pretty printer (#207223)

ASMWriter can deference a null pointer on intrinsics with pretty printed
args when those intrinsics are called with an invalid number of
arguments. This check avoids the null dereference and turns this into a
graceful failure.


  Commit: 9c823964dd43645162d361b16d2ddedc381f5d2d
      https://github.com/llvm/llvm-project/commit/9c823964dd43645162d361b16d2ddedc381f5d2d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerAlloca.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    M llvm/lib/Target/NVPTX/NVPTXLowerUnreachable.cpp

  Log Message:
  -----------
  [NFC][LLVM][NVPTX] Initialize pass-ids to zero (#207547)

Initialize pass::ID values for various passes to canonical zero instead
of 1.


  Commit: 2e75acd861aa78755c7a57ab8eca63fde916497a
      https://github.com/llvm/llvm-project/commit/2e75acd861aa78755c7a57ab8eca63fde916497a
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/test/UnitTest/ErrnoSetterMatcher.h

  Log Message:
  -----------
  [libc][test] Remove internal linkage from ErrnoSetterMatcher helpers (NFC) (#207707)

`Succeeds`, `Fails`, and `returns` are static function templates in a
header, so any test TU that includes it without using all of them trips
`-Wunused-template`. Dropping static also matches the neighboring EQ/NE
helpers, which are already non-static.

Part of #202945.


  Commit: 42746081459775eb85879cc09361a316ac9e0ea2
      https://github.com/llvm/llvm-project/commit/42746081459775eb85879cc09361a316ac9e0ea2
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll

  Log Message:
  -----------
  [AMDGPU] Fix printf %s buffer slot oversized when strlen % 4 == 0 (#207772)

The metadata slot for a constant string %s used alignTo(strlen + 1, 4),
but the store loop only writes ceil(strlen / 4) dwords (no trailing
NUL), so every following argument was read from offset shifted by +4


  Commit: 0f0b1c76a4d84594fef4de8ae5c49aa565d8bab0
      https://github.com/llvm/llvm-project/commit/0f0b1c76a4d84594fef4de8ae5c49aa565d8bab0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Run the libcxx-run-benchmarks action on macOS in addition to Linux (#207780)

The libcxx-run-benchmarks action is triggered when a specially formatted
comment is posted on a PR, requesting benchmarks to be run against that
PR. This patch expands the Github action so it also runs benchmarks on
the macOS CI resources that were added recently.


  Commit: 804a081a797c953b86503ead745dfde96f1c61c9
      https://github.com/llvm/llvm-project/commit/804a081a797c953b86503ead745dfde96f1c61c9
  Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-phi.mir

  Log Message:
  -----------
  [GlobalISel][AArch64] Legalize PHIs with vectors smaller than 64-bits (#207356)

New legalization rule added as the last to not change legalization of
small vectors in existing tests.


  Commit: 82d27f67b6aad3bf72e9db610ab5b6984cb02b76
      https://github.com/llvm/llvm-project/commit/82d27f67b6aad3bf72e9db610ab5b6984cb02b76
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    R clang/test/Interpreter/emulated-tls.cpp
    M llvm/lib/ExecutionEngine/Orc/Layer.cpp

  Log Message:
  -----------
  Revert "[ORC] Track __emutls_t definitions in IRMaterializationUnit" (#207775)


  Commit: 96904e83cf69b0a02a5fb7dece9b258f562205e0
      https://github.com/llvm/llvm-project/commit/96904e83cf69b0a02a5fb7dece9b258f562205e0
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp

  Log Message:
  -----------
  [scudo] Make death tests use SCUDO_XXX_DEATH_TEST. (#206196)

On Android, we want to disable the tombstone generation on expected
crashes to speed up running the tests. Also, this means that any
tombstone files will be real crashes and it's not necessary to search
for the right tombstone if one of the tests crashes unexpectedly.

In order to do the above, add SCUDO_EXPECT_DEATH_TEST and
SCUDO_ASSERT_DEATH_TEST that will disable tombstoned on Android but do
nothing on all other platforms.


  Commit: 69ee64790ed69555264a200a3ae95d644a649e42
      https://github.com/llvm/llvm-project/commit/69ee64790ed69555264a200a3ae95d644a649e42
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll

  Log Message:
  -----------
  InstCombine: Add baseline test for implied frexp exponent ranges (#206926)


  Commit: d1eae28e79d33a4f85bf16a09cbb90aa9b6848e4
      https://github.com/llvm/llvm-project/commit/d1eae28e79d33a4f85bf16a09cbb90aa9b6848e4
  Author: Kamlesh Kumar <kamleshbhalui at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    A llvm/test/Transforms/InstSimplify/vector-interleave-deinterleave.ll

  Log Message:
  -----------
  [InstSimplify] fold the identity interleave (#206646)

If all the extracvalue of deinterleave used in interleave in same order
then it is an identity.


  Commit: 5e265484030eb034a14f4e4fec5abb0209605787
      https://github.com/llvm/llvm-project/commit/5e265484030eb034a14f4e4fec5abb0209605787
  Author: Aliaksei Urbanski <aliaksei.urbanski at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-bind.rst
    M clang/include/clang/Lex/MultipleIncludeOpt.h
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/CodeGen/README.txt
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_aarch64.S
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_riscv64.S
    M flang/docs/Semantics.md
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M libc/src/string/memory_utils/arm/inline_memcpy.h
    M libcxx/docs/DesignDocs/FeatureTestMacros.rst
    M llvm/docs/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack/AMDGPUDwarfExtensionAllowLocationDescriptionOnTheDwarfExpressionStack.md
    M llvm/docs/LangRef.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrNEON.td
    M llvm/lib/Transforms/Instrumentation/NumericalStabilitySanitizer.cpp
    M llvm/test/CodeGen/AArch64/regcoal-physreg.mir
    M llvm/test/CodeGen/PowerPC/pgo-ref-directive.ll
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    M mlir/include/mlir/Dialect/NVGPU/IR/NVGPUOps.td
    M polly/lib/External/isl/isl_union_map.c

  Log Message:
  -----------
  [NFC] Fix "is is" typos (#206288)

These changes aim to fix common "is is" typos.


  Commit: 03c62ca40d19ba03c7d2b69dbedc95e498d46071
      https://github.com/llvm/llvm-project/commit/03c62ca40d19ba03c7d2b69dbedc95e498d46071
  Author: Alex Strelnikov <strel at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/docs/dev/printf_behavior.rst
    M libc/src/__support/float_to_string.h
    M libc/src/stdio/printf_core/converter_utils.h
    M libc/src/stdio/printf_core/core_structs.h
    M libc/src/stdio/printf_core/float_dec_converter.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdio/printf_core/float_hex_converter.h
    M libc/src/stdio/printf_core/float_inf_nan_converter.h
    M libc/src/stdio/printf_core/parser.h
    M libc/src/stdio/printf_core/printf_config.h
    M libc/src/stdio/printf_core/write_int_converter.h
    M libc/test/UnitTest/CMakeLists.txt
    M libc/test/UnitTest/PrintfMatcher.cpp
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp

  Log Message:
  -----------
  [libc] Add Q length modifier to support float128 conversions in printf (#203077)

The spelling follows an existing pattern in e.g. libquadmath for format
printing `__float128` values.

A flag is added to disable float128 conversions and the "Q" length
modifier.


  Commit: a4107d67f91946a97d0acd0a70e2ae16513858b9
      https://github.com/llvm/llvm-project/commit/a4107d67f91946a97d0acd0a70e2ae16513858b9
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Don't install custom Python on self-hosted macOS runners (#207794)

That shouldn't be necessary, since they already come with Python 3, and
it doesn't work anyway because it requires special setup that the macOS
runners don't currently perform.


  Commit: 7b9a58e6cfa0dab49ef417f731ee7a8dc5e3aab5
      https://github.com/llvm/llvm-project/commit/7b9a58e6cfa0dab49ef417f731ee7a8dc5e3aab5
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/dirent_overlay.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/DIR.h
    A libc/hdr/types/struct_dirent.h
    M libc/src/__support/File/dir.cpp
    M libc/src/__support/File/dir.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/OSUtil/linux/stat/kernel_statx_types.h
    M libc/src/__support/OSUtil/linux/syscall_wrappers/CMakeLists.txt
    A libc/src/__support/OSUtil/linux/syscall_wrappers/fcntl.h
    M libc/src/dirent/CMakeLists.txt
    A libc/src/dirent/fdopendir.cpp
    A libc/src/dirent/fdopendir.h
    M libc/test/src/dirent/CMakeLists.txt
    A libc/test/src/dirent/fdopendir_test.cpp

  Log Message:
  -----------
  [libc] Implement fdopendir (#206590)

The fdopendir function takes a file descriptor opened on a directory,
then opens a DIR* on it.

Needed for #191075

Assisted-by: Automated tooling, human reviewed.


  Commit: 2590272e5674c300c9438ef5c10a65358b0636e9
      https://github.com/llvm/llvm-project/commit/2590272e5674c300c9438ef5c10a65358b0636e9
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/EmulateInstruction.h
    M lldb/include/lldb/Core/Value.h
    M lldb/include/lldb/Expression/Materializer.h
    M lldb/include/lldb/Host/common/NativeRegisterContext.h
    M lldb/include/lldb/Symbol/UnwindPlan.h
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/include/lldb/Target/RegisterContext.h
    A lldb/include/lldb/Utility/RegisterInfo.h
    M lldb/include/lldb/Utility/RegisterValue.h
    M lldb/include/lldb/lldb-private-types.h
    M lldb/source/Plugins/Process/Utility/RegisterFlagsDetector_arm64.h
    M lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h

  Log Message:
  -----------
  [lldb] Move RegisterInfo and RegisterSet into their own header (#207286)

RegisterInfo holds onto a pointer to RegisterFlags which is in
lldbUtility. My understanding of lldb-private-types is that it contains
types used throughout LLDB but should generally stand on their own (i.e.
without dependencies on specific lldb types and headers). Thus I am
moving it to lldbUtility.

RegisterSet _does_ stand on its own but it is pretty strongly coupled to
RegisterInfo.


  Commit: b74512899707cfcf962ebfa21f9209378372e78b
      https://github.com/llvm/llvm-project/commit/b74512899707cfcf962ebfa21f9209378372e78b
  Author: Andrei Elovikov <andrei.elovikov at sifive.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h

  Log Message:
  -----------
  [NFC][PatternMatch] Simplify m_Intrinsic impl using variadic templates (#207211)

Updates both IR/VPlan pattern matchers.


  Commit: 76d253e2736c7da493a836c9c150772056dafd73
      https://github.com/llvm/llvm-project/commit/76d253e2736c7da493a836c9c150772056dafd73
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [docs][AMDGPU] Document amdgpu.buffer.oob.mode more, especially on fat pointers (#134734)

This commit expands the documentation of the amdgpu.buffer.oob.mode so
that fat buffer pointer users are more aware of its effects.


  Commit: c8c20662e036099b00469bf26324b93151acb00c
      https://github.com/llvm/llvm-project/commit/c8c20662e036099b00469bf26324b93151acb00c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-ldexp.ll
    M llvm/test/Transforms/InstCombine/frexp-implied-exponent-range-dominating-conditions.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-ldexp.ll

  Log Message:
  -----------
  ValueTracking: Improve frexp known range from dominating conditions (#206927)

Try to restrict the known range of the exponent result of llvm.frexp
based on dominating conditions. Identify comparisons that imply the
incoming value cannot introduce an overflow in a downstream ldexp
use. This pattern appears in the implementation of some complex math
functions and allows finite only math to prune out more edge case
paths.

One attributor test for ldexp regresses due to the switch from
computeKnownBits to computeConstantRange. computeConstantRange
does not try to handle non-splat vector constants for the binary
operators.

As a side effect, this also improves knowing that ldexp can't
introduce overflow for the 0 case.


  Commit: dbd7511ad28819587fc9effc0086abf437279a84
      https://github.com/llvm/llvm-project/commit/dbd7511ad28819587fc9effc0086abf437279a84
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-memcpy.ll
    M llvm/test/CodeGen/AMDGPU/llc-pipeline.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-calls.ll
    A llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-mem-transfer.ll
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-unoptimized-debug-data.ll
    M llvm/test/CodeGen/AMDGPU/memset-pattern.ll

  Log Message:
  -----------
  [LowerBufferFatPointers] Correctly handle alignment modes (#134329)

Previously, AMDGPULowerBufferFatPointers would emit unaligned buffer
loads/stores, even when such unaligned accesses were disabled (that is,
on non-HSA platforms).

In addition, the lowering did not respect the newly-added
amdgpu.buffer.oob.mode module flag, which now must be enabled in order
to vectorize unaligned loads from buffers.

This commit fixes both issues and adds tests.


  Commit: 000f6bf9cb7ec4223ef1de829158d09d4bfa2946
      https://github.com/llvm/llvm-project/commit/000f6bf9cb7ec4223ef1de829158d09d4bfa2946
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/test/Fir/CUDA/cuda-function-rewrite.mlir

  Log Message:
  -----------
  [flang][cuda] Recognize on_device() by its Fortran leaf name in CUFFunctionRewrite (#207298)

CUFFunctionRewrite folds on_device() to a compile-time constant: true
inside a gpu.module (device), false on the host. Match on the callee's
Fortran leaf name, recovered independently of the external name-mangling
convention and of where the pass runs in the pipeline.


  Commit: 3ae61eb220dc8f1fa0dd551a9575237b84dae61d
      https://github.com/llvm/llvm-project/commit/3ae61eb220dc8f1fa0dd551a9575237b84dae61d
  Author: Ken Matsui <26405363+ken-matsui at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/add.ll
    M llvm/test/Transforms/InstCombine/masked-merge-add.ll
    M llvm/test/Transforms/InstCombine/pr53357.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  [InstCombine] Turn Add into Or even when undef (#171556)

Since 03d4a9d94da30590ebfc444cf13a8763f47b7bb9, Add is turned into
DisjointOr, and since 5c3496ff33ce8e4cc6f8c18edd7ae5fc65d23fdf, Add
isn't turned into DisjointOr when undef. However, Add can still be
turned into Or even when undef.

This patch restores the transformation behavior we had in LLVM 17, while
continuing to generate DisjointOr when possible.

Alive2: https://alive2.llvm.org/ce/z/ZT0ZFj


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/haddsub-undef.ll
    M llvm/test/CodeGen/X86/phaddsub-undef.ll

  Log Message:
  -----------
  [X86] combineToHorizontalAddSub - use PostShuffleMask to determine undemanded subvectors (#207789)

For cases where the middle-end has created a 256-bit HADD/SUB pattern
with unused upper 128-bit subvectors, use the PostShuffleMask undefined
ranges to remove any unused 128-bit HADD/SUB ops.


  Commit: 3df6ca69c9e2b22687315a3074857383eefa93b8
      https://github.com/llvm/llvm-project/commit/3df6ca69c9e2b22687315a3074857383eefa93b8
  Author: Quentin Colombet <quentin.colombet at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    R llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.ll
    A llvm/test/CodeGen/AMDGPU/regalloc-hoist-spill-live-range-upd.mir

  Log Message:
  -----------
  [AMDGPU][test] Use mir test for regalloc issue (#197363)

Use the newly introduced split-from flag to produce a more robust test
case for the hoistSpillInsideBB live-range update issue.

NFC


  Commit: 2e0c6a254c4a159726f0477bbe3723eafe33382c
      https://github.com/llvm/llvm-project/commit/2e0c6a254c4a159726f0477bbe3723eafe33382c
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/scripted_frame_provider/circular_dependency/TestFrameProviderCircularDependency.py

  Log Message:
  -----------
  [lldb] Fix TestFrameProviderCircularDependency.py on Arm (#207804)

After #206987 this test started passing on Windows and 32-bit Linux on
Arm. Remove the expected failure annotation to fix lldb-arm-ubuntu
buildbot.


  Commit: 396354a3f7f627aaa5cbfffa2033e1ea8bc00e69
      https://github.com/llvm/llvm-project/commit/396354a3f7f627aaa5cbfffa2033e1ea8bc00e69
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Install missing dependencies for running benchmarks on macOS (#207810)

The macOS self-hosted runners don't come with Ninja and CMake installed
out of the box, so we need to install them with Homebrew.


  Commit: d2b6f83980ed0428d8342b378f01317acf4510de
      https://github.com/llvm/llvm-project/commit/d2b6f83980ed0428d8342b378f01317acf4510de
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaExpr.cpp
    A clang/test/CIR/CodeGen/fp16-native-args.c
    A clang/test/CIR/CodeGen/fp16.c
    M clang/test/CodeGen/builtin_float.c
    M clang/test/CodeGen/builtin_float_strictfp.c
    M clang/test/CodeGen/wasm-fp16.c

  Log Message:
  -----------
  clang: Remove useFP16ConversionIntrinsics target option (#207212)

Follow up to #174494. Remove the remnants of the control to
use llvm.convert.to.fp16/llvm.convert.from.fp16. Prefer
directly using the IR half type.

I did the first 80% of this a long time ago, and AI finished
the last bit and handled the recent rebases and test updates.

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


  Commit: 4868f2c1edfede611994a621e8eb0adac46bca1a
      https://github.com/llvm/llvm-project/commit/4868f2c1edfede611994a621e8eb0adac46bca1a
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py

  Log Message:
  -----------
  [lldb] Modify test binaries that link against LLDB to use LLVM dylib (#207290)

When LLVM_LINK_LLVM_DYLIB is enabled and we build LLDB.framework, tests
that link against LLDB.framework will fail to load the LLVM dylib
because of a missing rpath.


  Commit: 2d0f294d1b272b8976ebd2d90a5252af1af8ca89
      https://github.com/llvm/llvm-project/commit/2d0f294d1b272b8976ebd2d90a5252af1af8ca89
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.offset-split.ll
    M llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.ptr.buffer.load.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load-exported.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU] Precommit for pulling NUW large buffer offsets into SOFFSET (#207795)

This commit adds tests with larger constant offsets [being added to
VGPRs] in raw.buffer.* instructions to show the movement of such offsets
to SOFFSET after rounding in a future commit if this won't cause errors
because of overflow.

This also necessitated adding gfx1250 tests (to show the different
offset sizes) and moving tests that ctalled "export" into a new file so
that the gfx1250 (which doesn't support that instruction) doesn't trip
ot those tests.

This also adds a few global-isel specific tests for handling `or
disjoint` like an add we can't just stick -global-isel in the normal
buffer intrinsic tests.

AI usage disclosure: AI wrote these, I skimmed them.

---------

Co-authored-by: Codex <codex at openai.com>


  Commit: 5dfc35a50514aaa62a34cb17f5be5c6396caf4fb
      https://github.com/llvm/llvm-project/commit/5dfc35a50514aaa62a34cb17f5be5c6396caf4fb
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/docs/VectorizationPlan.rst
    M llvm/docs/conf.py
    M utils/docs/llvm_sphinx/__init__.py

  Log Message:
  -----------
  [docs] Disable sphinx's numfig option (#207817)

Benchmarking shows a speedup of about 1.6x for a single file edit:

```bash

source .venv/bin/activate

hyperfine \
    --ignore-failure \
    --warmup 1 \
    --setup 'rm -rf /dev/shm/sphinx-build && cm c -b /dev/shm/sphinx-build' \
    --prepare 'touch llvm/docs/AMDGPUDwarfExtensionsForHeterogeneousDebugging.rst' \
    'cm b -b /dev/shm/sphinx-build docs-llvm-html'

 # main:
 # Benchmark 1: cm b -b /dev/shm/sphinx-build docs-llvm-html
 #   Time (mean ± σ):     41.424 s ±  1.652 s    [User: 39.534 s, System: 1.876 s]
 #   Range (min … max):   40.696 s … 46.110 s    10 runs

 # no-numfig:
 # Benchmark 1: cm b -b /dev/shm/sphinx-build docs-llvm-html
 #   Time (mean ± σ):     25.808 s ±  2.051 s    [User: 24.106 s, System: 1.692 s]
 #   Range (min … max):   24.287 s … 30.132 s    10 runs
```

There are only two uses of the feature, both in VectorizationPlan, and
the net result of disabling it just changes them from looking like this:

Refer to [Fig. 1] for an overview of the current transformation
pipeline.

To looking like this:

Refer to [VPlan Transformation Pipeline in 2024] for an overview of the
    current transformation pipeline.

Where "[...]" denotes the hyperlink to the figure.

See

https://github.com/zephyrproject-rtos/zephyr/pull/37572#discussion_r1102411281
for another project's discussion of the same issue.


  Commit: 2ef9c9d02409b02dc2289b4125397cbc40030c74
      https://github.com/llvm/llvm-project/commit/2ef9c9d02409b02dc2289b4125397cbc40030c74
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  [bazel][libc] Port 03c62ca40d (#207820)


  Commit: 642c9f69772dea930c8c035813430d325c96697c
      https://github.com/llvm/llvm-project/commit/642c9f69772dea930c8c035813430d325c96697c
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M utils/docs/llvm_sphinx/__init__.py

  Log Message:
  -----------
  [docs][NFC] Some small cleanup in llvm_sphinx (#207818)

Format the doc-comment suggested import to match what `black` prefers,
and isolate the `import` as the only statement in the `try` for
`myst_parser`.


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

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll

  Log Message:
  -----------
  [VPlan] Add intrinsic constant folding test for replicate recipes. (NFC) (#207792)


  Commit: f348d964af441ec454e5fc12ab1b599cfc1e7d14
      https://github.com/llvm/llvm-project/commit/f348d964af441ec454e5fc12ab1b599cfc1e7d14
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/test/Misc/warning-wall.c
    M clang/test/SemaCXX/warn-func-not-needed.cpp
    M clang/test/SemaCXX/warn-variable-not-needed.cpp

  Log Message:
  -----------
  [Clang] Enable -Wunused-template under -Wall (#206123)

Uncomment `UnusedTemplate` in the `Unused` diagnostic group so
`-Wunused-template` becomes part of `-Wall`.

`-Wunused-template` flags unused function and variable templates with
internal linkage. In a header, such a template gives every translation
unit its own internal-linkage copy, which is a latent ODR violation
(ill-formed, no diagnostic required), so enabling this surfaces a real
class of bugs and keeps the pattern from reappearing.

### Depends on

The in-tree occurrences were cleaned up first in a series of NFC PRs
tracked by #202945. This change only builds clean once those land, so CI
will be red on any area whose cleanup is not yet merged. Remaining
prerequisites:

Approved
- #202969
- #202971
- #202973
- #202974
- #206309
- #206312

Needs to be reviewed 
- #202988
- #206308

Closes #202945

cc @AaronBallman @vgvassilev


  Commit: 2e1f347c38114f5e2e4fc4355fad9cdc0e1bb205
      https://github.com/llvm/llvm-project/commit/2e1f347c38114f5e2e4fc4355fad9cdc0e1bb205
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/zip_transform_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.zip.transform/nodiscard.verify.cpp
    M libcxx/test/std/ranges/range.adaptors/range_adaptor_types.h
    M libcxx/test/support/test_iterators.h

  Log Message:
  -----------
  [libc++][ranges] Applied `[[nodiscard]]` to `views::zip_transform` (#207120)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.zip.transform

Towards #172124

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 5a74b398d27ecba94fa0acf800af86039bf6a0f5
      https://github.com/llvm/llvm-project/commit/5a74b398d27ecba94fa0acf800af86039bf6a0f5
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Section.h
    M lldb/source/API/SBModule.cpp
    M lldb/source/API/SBSection.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Core/Section.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/Android/PlatformAndroid.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwin.cpp
    M lldb/source/Plugins/Process/minidump/ProcessMinidump.cpp
    M lldb/unittests/Core/ModuleTest.cpp
    M lldb/unittests/ObjectFile/ELF/TestObjectFileELF.cpp
    M lldb/unittests/Symbol/LineTableTest.cpp

  Log Message:
  -----------
  [lldb] Remove ConstString from SectionList::FindSectionByName (#207296)

By having ConstString in this interface, we are forcing callers to
create a ConstString in order to perform a lookup. In many cases,
`FindSectionByName` is a best-effort interface, meaning we're creating
ConstStrings speculatively. In other cases, we were creating a
ConstString at the call-site instead of computing it once and re-using
it.

I audited all the callsites and changed all the callsites that created a
ConstString for the purpose of calling `FindSectionByName`. Other
callsites will take more time to change.


  Commit: 09f2062da3b34b7db167268b05c9a9a5bd3c7e17
      https://github.com/llvm/llvm-project/commit/09f2062da3b34b7db167268b05c9a9a5bd3c7e17
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

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

  Log Message:
  -----------
  clang: Use getFloatingPointType instead of reinventing it (#207213)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll

  Log Message:
  -----------
  [VPlan] Refine hasEarlyExit check. (#207791)

Currently hasEarlyExit misses cases where we have things like dead exit
blocks or simplified the middle block.

Update to check by counting the predecessors.

This fixes a case where we missed properly updating LoopInfo due to
incorrect results.

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


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll

  Log Message:
  -----------
  Revert "[VPlan] Refine hasEarlyExit check." (#207838)

Reverts llvm/llvm-project#207791

This appears to break multiple build-bots


  Commit: f147395634dd21f9f2dfbdcc8c1a2f96c3228a24
      https://github.com/llvm/llvm-project/commit/f147395634dd21f9f2dfbdcc8c1a2f96c3228a24
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/ObjectYAML/BUILD.gn

  Log Message:
  -----------
  [gn build] Port commits (#207839)

1b2efd2e079a
9b2d44a51252


  Commit: 23a01e949a55d4034dbbcad08c875a1d458464b1
      https://github.com/llvm/llvm-project/commit/23a01e949a55d4034dbbcad08c875a1d458464b1
  Author: Eli Friedman <efriedma at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/test/CodeGen/AArch64/stack-guard-width.ll

  Log Message:
  -----------
  [AArch64] Support 4-byte stack protector with large code model. (#205956)

This is a simple extension to existing code. We might need this in the
future.


  Commit: 61d766817b9ebe9804c84d71aa7a620962436dff
      https://github.com/llvm/llvm-project/commit/61d766817b9ebe9804c84d71aa7a620962436dff
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    A clang/test/CodeGen/attr-counted-by-nested-structs.c

  Log Message:
  -----------
  [Clang][counted_by] Use the expr's RecordDecl that transitively contains the counter field (#205903)

The counted field could be in nested structs. This can happen when the
Expr is pointing to a field that has a struct type. The original code
didn't do a good job at finding the best RecordDecl to build the GEP off
of. It made too many assumptions about how structs' layouts.

This rewrite finds the RecordDecl that transitively contains the
__counted_by__'s counter field.

Fixes: #205652


  Commit: c9c7fdde03d04ab10960db156f832a276411e3b5
      https://github.com/llvm/llvm-project/commit/c9c7fdde03d04ab10960db156f832a276411e3b5
  Author: yebinchon <86588366+yebinchon at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/test/HLFIR/separate-allocatable-assign.fir

  Log Message:
  -----------
  [flang] keep runtime allocator for pinned allocations (#207822)

If an allocatable is pinned, use the flang runtime instead of lowering
to normal memcpy/free.

---------

Co-authored-by: Yebin Chon <ychon at nvidia.com>


  Commit: 8014a1d208f0f9e58cfeaf022517cf3d69257bff
      https://github.com/llvm/llvm-project/commit/8014a1d208f0f9e58cfeaf022517cf3d69257bff
  Author: Yao Qi <yao_qi at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Support/LEB128.h
    M llvm/unittests/Support/LEB128Test.cpp

  Log Message:
  -----------
  [Support] Fix undefined shift in decodeULEB128/decodeSLEB128 for overlong encodings (#205907)

When a (signed or unsigned) LEB128 value is encoded with extra trailing
bytes that only carry zero- or sign-extension, the decode loop could
keep
running with the shift amount at 64 or beyond and then evaluate
`Slice << Shift`, which is undefined behavior for a 64-bit type.

The DWARF expression parser feeds attacker-controlled LEB128 operands
(such as `DW_OP_bregN` / `DW_OP_constu`) through
`DataExtractor::getULEB128` / `getSLEB128`, so the
`lldb-dwarf-expression-fuzzer` reaches this under UBSan.  The unsigned
case:

```
LEB128.h:152:20: runtime error: shift exponent 70 is too large for
64-bit type 'uint64_t' (aka 'unsigned long long')
    #0 llvm::decodeULEB128(...) LEB128.h:152
    #1 getLEB128<unsigned long long>(...) DataExtractor.cpp:227
    #2 llvm::DataExtractor::getULEB128(...) DataExtractor.cpp:241
    #3 llvm::DWARFExpression::Operation::extract(...) DWARFExpression.cpp:218
    #7 lldb_private::DWARFExpression::Evaluate(...) DWARFExpression.cpp:1333
    #9 LLVMFuzzerTestOneInput lldb-dwarf-expression-fuzzer.cpp:83
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior LEB128.h:152:20
```

and the signed case, reached the same way:

```
LEB128.h:190:20: runtime error: shift exponent 70 is too large for
64-bit type 'uint64_t' (aka 'unsigned long long')
    #0 llvm::decodeSLEB128(...) LEB128.h:190
    #1 getLEB128<long long>(...) DataExtractor.cpp:227
    #2 llvm::DataExtractor::getSLEB128(...) DataExtractor.cpp:245
    #3 llvm::DWARFExpression::Operation::extract(...) DWARFExpression.cpp:216
    #7 lldb_private::DWARFExpression::Evaluate(...) DWARFExpression.cpp:1333
```

The existing range checks already guarantee that once `Shift` reaches 64
the remaining bytes are pure extension and contribute nothing to the
result, so skip the accumulating shift in that case.  Decoded values are
unchanged for all well-formed inputs.

Adds overlong-encoding regression cases to `LEB128Test`. Without the fix
the signed case is the UBSan diagnostic above in a sanitizer build, and
in a normal build the unsigned case also decodes to the wrong value (the
overlong `1` decodes as `11`).


  Commit: 3df648c5678f6add2a813cd5be3dffb4f074115e
      https://github.com/llvm/llvm-project/commit/3df648c5678f6add2a813cd5be3dffb4f074115e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/select-abs-positive-mul.ll

  Log Message:
  -----------
  [InstCombine] Add tests for select-abs through multiply (NFC) (#207833)

Add tests from approved https://github.com/llvm/llvm-project/pull/207539


  Commit: 1b6f1528bbb95d47bb2e3fc394b3a4943b1e9708
      https://github.com/llvm/llvm-project/commit/1b6f1528bbb95d47bb2e3fc394b3a4943b1e9708
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    A llvm/test/tools/llvm-dwarfdump/X86/array-type-lower-bound-dwarf6.s
    M llvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp

  Log Message:
  -----------
  [llvm][DebugInfo] Add DW_LNAME_ support to DWARFDie::getLanguage (#207151)

Currently `DWARFDie::getLanguage` only looks at `DW_AT_language`.
However, with DWARFv6 we may not have such attribute, and instead have a
`DW_AT_language_name` (and optional `DW_AT_language_version`).

This patch adjusts the implementation to also consider the DWARFv6
language name/version codes. In this patch I just convert it back to
`DW_LANG_` (similar to what we do for the `AsmPrinter`'s
`DwarfUnit::getSourceLanguage`). Added a FIXME to investigate whether we
want to return a variant-like type that can be either an DW_LANG vs.
DW_LNAME code.

The way I initially observed this was looking at a DWARFv6 dwarfdump for
a `const char[]` type. It displayed as follows:
```
DW_AT_type  (0x... "const char[[?, ? + 3)]")
```
which is our representation for when we [can't derive the default lower
bound for the
language](https://github.com/llvm/llvm-project/blob/ce787718c3c82255825ebe5f95740c24df55f7d0/llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h#L122-L135).

With this patch, we'd display it as expected:
```
DW_AT_type  (0x... "const char[3]")
```

Added unit-tests for the new API and a dwarfdump test.

AI usage:
- Claude wrote the dwarfdump and unit-tests. Manually reviewed and
cleaned them up.


  Commit: 94b325469b20255d31879c80204800510ac4fd66
      https://github.com/llvm/llvm-project/commit/94b325469b20255d31879c80204800510ac4fd66
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/Analysis/bstring.c
    M clang/test/Analysis/malloc.c
    M clang/test/Analysis/pr22954.c
    M clang/test/Sema/builtin-memcpy.c
    M clang/test/Sema/builtin-object-size.c
    M clang/test/Sema/warn-fortify-source.c
    R clang/test/Sema/warn-stringop-overread.c
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
    M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp

  Log Message:
  -----------
  Revert "[Clang][Sema] Add -Wstringop-overread warning for source buffer overreads (#183004)" (#207840)

This reverts commit 86f2e71cb8d165b59ad31a442b2391e23826133e.

And revert followup ab1ef459069d1dbf4ee9e5a802537ababe294b25 (#205201).

Causes crashes:
https://github.com/llvm/llvm-project/pull/183004#issuecomment-4897195939


  Commit: ff11bbce9e87ab4ef59a789cff1c9b9d771adc1e
      https://github.com/llvm/llvm-project/commit/ff11bbce9e87ab4ef59a789cff1c9b9d771adc1e
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 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/LibASTMatchersReference.html
    M clang/docs/ReleaseNotes.md
    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/drs/cwg18xx.cpp
    M clang/test/CXX/drs/cwg7xx.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/SemaCXX/GH195416.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
    M clang/test/SemaCXX/member-class-11.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 (#207825)

Relands https://github.com/llvm/llvm-project/pull/199528
Previous: https://github.com/llvm/llvm-project/pull/202088

This implements a new strategy for collecting the template arguments, by
relying on the qualifiers and template parameter lists to navigate the
template
context of out-of-line definitions.

This greatly simplifies the signature of that function, by removing a
bunch
of workarounds, and simpliffying a couple that weren't removed yet.

Since this now relies on qualifiers and template parameter lists,
this patch expends most of its effort making sure these are placed,
transformed and propagated to template instantiations.

Also makes the explicit specialization AST nodes stop abusing the
template
parameter lists by storing it's own template parameter list, creating a
dedicated field for them, similar to partial specializations.

Fixes #202106
Fixes #202109


  Commit: c63adb28aa78ecb300bf06c1d0893ae6259765dd
      https://github.com/llvm/llvm-project/commit/c63adb28aa78ecb300bf06c1d0893ae6259765dd
  Author: mzukovec <martin.zukovec at xlab.si>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/test/CodeGenCXX/mangle-ms-md5.cpp

  Log Message:
  -----------
  [clang] Cap MS RTTI TypeDescriptor name strings like MSVC does (#206317)

On the Microsoft ABI, an RTTI TypeDescriptor stores the type's decorated
name as an inline string. Unlike symbol names, this string was never run
through the MD5 shortening that MSVC applies to over-long decorated
names. Deeply nested template types therefore produced unbounded
writable .data COMDATs: for example a type whose template arguments
contain a local lambda, whose mangled name re-spells the enclosing
template context at every level of nesting, grows exponentially with
depth. A five-level repro emitted an 82 MB object file.

Wrap the TypeDescriptor name string in the same msvc_hashing_ostream
already used for the RTTI symbol. When the name reaches the length limit
it is replaced by ??@<md5>@, mimicking MSVC. MSVC counts the leading .
of the name string toward the 4096-character limit but excludes it from
the hashed input, so the threshold here is one lower than for symbols.

Fixes #206313


  Commit: e27218ee24231abd4f4d3231fc682745a71a0657
      https://github.com/llvm/llvm-project/commit/e27218ee24231abd4f4d3231fc682745a71a0657
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFUnit.cpp
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp

  Log Message:
  -----------
  Reapply "DebugInfo: Shrink-to-fit some containers to reduce peak memory usage" (#199145) (#201160)

Starting with posting this as a draft PR to run presubmit checks to
understand what failed.

This reverts commit #199145,
effectively reapplying #198935.


  Commit: 1fd46543f6b8aa0017d814301e0b019aa7144468
      https://github.com/llvm/llvm-project/commit/1fd46543f6b8aa0017d814301e0b019aa7144468
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb_dap/session_helpers.py
    M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
    M lldb/test/API/tools/lldb-dap/exception/asan/TestDAP_asan.py
    M lldb/test/API/tools/lldb-dap/exception/cpp/TestDAP_exception_cpp.py
    M lldb/test/API/tools/lldb-dap/exception/cpp/main.cpp
    M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
    M lldb/test/API/tools/lldb-dap/exception/ubsan/TestDAP_ubsan.py

  Log Message:
  -----------
  [lldb-dap] Migrate DAP exceptions test. (#207029)

Migrate all the tests in the `lldb-dap/exception` folder.


  Commit: 5275ff2efaa9b729aebdfbfc4219f0d109cf03e5
      https://github.com/llvm/llvm-project/commit/5275ff2efaa9b729aebdfbfc4219f0d109cf03e5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/__clang_gpu_builtin_vars.h
    A clang/lib/Headers/__clang_gpu_device_functions.h
    A clang/lib/Headers/__clang_gpu_intrinsics.h
    M clang/test/Driver/hip-device-libs-llvm-env.hip
    A clang/test/Headers/gpu-device-functions.cpp
    M clang/test/Preprocessor/predefined-macros.c

  Log Message:
  -----------
  [Clang][HIP] Add LLVM vendored device headers for `*-llvm` triple (#203980)

Summary:
We already have the `*-llvm` vendor triple to imply a hermetic LLVM
toolchain for HIP. This adds the device portion of the headers that can
be used without a ROCm installation. These are vendored just like the
CUDA ones. Despite being HIP, these are actually generic because it onyl
uses clang builtins and the `gpuintrin` shims.


  Commit: 6f47c92a82cc142fe5b728a4d90987e15876b372
      https://github.com/llvm/llvm-project/commit/6f47c92a82cc142fe5b728a4d90987e15876b372
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/test/Misc/warning-wall.c
    M clang/test/SemaCXX/warn-func-not-needed.cpp
    M clang/test/SemaCXX/warn-variable-not-needed.cpp

  Log Message:
  -----------
  Revert "[Clang] Enable -Wunused-template under -Wall" (#207848)

Reverts llvm/llvm-project#206123

See the Flang Runtime unit test failures, we probably should fix those
before merging this to keep buildbots green.


  Commit: 1e7e166e39f4515a4cea1dcd07d016b4e2315e31
      https://github.com/llvm/llvm-project/commit/1e7e166e39f4515a4cea1dcd07d016b4e2315e31
  Author: Kyungtak Woo <kevinwkt at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/flang/lib/Optimizer/Transforms/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel

  Log Message:
  -----------
  [bazel][libc] Port 03c62ca40d pt2 (#207846)

This was missed in https://github.com/llvm/llvm-project/pull/207820 adding dep. Along with flang deps.


  Commit: 8475e376043ddacc53b7062c71438ea4e2a082e0
      https://github.com/llvm/llvm-project/commit/8475e376043ddacc53b7062c71438ea4e2a082e0
  Author: tedwoodward <56049650+tedwoodward at users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lldb/bindings/python/get-python-config.py

  Log Message:
  -----------
  [lldb] Change Python site-packages path (#207771)

On POSIX systems, traditionally the lldb Python module is in
lib/pythonx.x/site-packages. We only ever have 1 Python in a given
build, so we don't need to specify the version.

On Windows, we've always had the Python module in lib\site-packages.

Change the behavior on POSIX to match the Windows behavior, and put the
lldb Python module in lib/site-packages.

---------

Co-authored-by: Ted Woodward <tedwood at quicinc.com>


  Commit: 6e0311f077601350d5cc70e59c49432d985ca631
      https://github.com/llvm/llvm-project/commit/6e0311f077601350d5cc70e59c49432d985ca631
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Object/COFF.h
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/lib/Object/COFFObjectFile.cpp
    A llvm/test/tools/llvm-ar/arm64x-hybridobj.yaml
    A llvm/test/tools/llvm-ar/arm64x-split.yaml
    A llvm/test/tools/llvm-lib/arm64x-hybridobj.yaml

  Log Message:
  -----------
  [Archive][COFF] Split hybrid COFF files when adding them to an archive (#205160)

Create a separate member for the embedded hybrid object so that it's
properly reflected in the archive's symbol map and can be correctly
processed by tools unaware of multi-arch object files. Prefix the
embedded member name with 'obj.arm64x/' to avoid name collisions.

The split is performed only when targeting COFF archive format.


  Commit: 6da965ce85fc9c14ecad4d6d15cb6bb57776d979
      https://github.com/llvm/llvm-project/commit/6da965ce85fc9c14ecad4d6d15cb6bb57776d979
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M mlir/examples/standalone/pyproject.toml

  Log Message:
  -----------
  [mlir][python] Set a static version in the standalone example pyproject.toml (#207860)

The standalone example's pyproject.toml declares `dynamic = ["version"]` but does not configure a `tool.scikit-build metadata.version.provider`. Newer versions of scikit-build-core reject this combination with:

```
AssertionError: project.version is not specified, must be statically present or tool.scikit-build metadata.version.provider configured when dynamic
```

Just pin a static placeholder version instead of adding a "provider".

Assisted by: Claude


  Commit: 3d517ee6486553b3ecbabdb46c0496abcf9ad20a
      https://github.com/llvm/llvm-project/commit/3d517ee6486553b3ecbabdb46c0496abcf9ad20a
  Author: Damyan Pepper <damyanp at microsoft.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/test/tools/dxil-dis/waveactiveballot.ll

  Log Message:
  -----------
  [NFC] Fix dxil-dis/waveactiveballot.ll test (#207446)

It looks like #204478 introduced new intrinsic signature verification,
but since it didn't touch any of the HLSL/DXIL related paths the tests
were never run on a runner that has dxil-dis installed on it.

Assisted-by: copilot


  Commit: f7f06613d4fc68620076a48341acf22dc05fbd82
      https://github.com/llvm/llvm-project/commit/f7f06613d4fc68620076a48341acf22dc05fbd82
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/RISCV.cpp
    A clang/test/CodeGen/RISCV/attr-rvv-vector-bits-struct-call.c
    A clang/test/CodeGenCXX/riscv-rvv-fixed-length-struct-call.cpp

  Log Message:
  -----------
  [RISCV] Pass structs containing riscv_rvv_vector_bits types using vector registers. (#203601)

The ABI for this isn't documented. The riscv_rvv_vector_bits feature was
copied from aarch_sve_vector_bits which passes the types in vector
registers. At the time I implemented RISC-V I didn't think about struct
arguments so no ABI support was added.

I think it makes sense to pass structs of these types in vector
registers similar to the vls_cc ABI. We already do use vector registers
for these types when the vls_cc ABI is enabled for a function(unclear if
that was intentional), but we should do it unconditionally.

I will work with gcc maintainers to see if they can do the same. In
practice, there probably isn't much compiler mixing with these types.

This patch was heavily assisted by AI, but I've reviewed it and the
changes seem reasonable to me.


  Commit: 81200d780eb6f9d8c9cf319d04ca5d7039dff944
      https://github.com/llvm/llvm-project/commit/81200d780eb6f9d8c9cf319d04ca5d7039dff944
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/lib/Target/NVPTX/NVVMProperties.cpp

  Log Message:
  -----------
  [NFC][LLVM][NVPTX] Use namespace qualifiers to define functions (#207546)

Use namespace qualifiers to define functions in `llvm` namespace, per
https://llvm.org/docs/CodingStandards.html#use-namespace-qualifiers-to-define-previously-declared-symbols.


  Commit: 06f4b027b2df1febf3cd496573b8739074e8aa29
      https://github.com/llvm/llvm-project/commit/06f4b027b2df1febf3cd496573b8739074e8aa29
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVVMReflect.cpp

  Log Message:
  -----------
  [NFC][LLVM][NVPTX] Minor code cleanup in NVVMReflect (#207549)

Use explicit types instead of auto when the type is not obvious. Use
`StringRef` type in the range for loop over `ReflectList`, allowing
additional code cleanups.


  Commit: 8f3e6197f676831794bfa7a7b4619c59c7915c42
      https://github.com/llvm/llvm-project/commit/8f3e6197f676831794bfa7a7b4619c59c7915c42
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M libc/config/linux/riscv/entrypoints.txt

  Log Message:
  -----------
  [libc][RISC-V] Temporarily disable dirent (#207867)

The RISC-V 32 QEMU buildbot is failing due to missing SYS_fcntl, which
is needed for fdopendir. Since that syscall is referenced in the shared
dir code it's easiest to just disable all the dirent functions for now.


  Commit: cc048e80b670a5262500612069d1c2d065b53f15
      https://github.com/llvm/llvm-project/commit/cc048e80b670a5262500612069d1c2d065b53f15
  Author: Neil Nair <neilnair4 at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/CMakeLists.txt
    A clang-tools-extra/clang-doc/markdown/CMakeLists.txt
    A clang-tools-extra/clang-doc/markdown/Markdown.cpp
    A clang-tools-extra/clang-doc/markdown/Markdown.h
    M clang-tools-extra/clang-doc/support/CMakeLists.txt
    R clang-tools-extra/clang-doc/support/Markdown.cpp
    R clang-tools-extra/clang-doc/support/Markdown.h
    M clang-tools-extra/unittests/clang-doc/MarkdownParserTest.cpp

  Log Message:
  -----------
  [clang-doc] Move Markdown into its own subdirectory (#207856)

Removes the need for PARTIAL_SOURCES_INTENDED by giving clangDocMarkdown
its own directory. Addresses post-merge feedback on #205609.


  Commit: a2dbd23cdc562f5307e81789e770a290e863a91f
      https://github.com/llvm/llvm-project/commit/a2dbd23cdc562f5307e81789e770a290e863a91f
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/clang-tools-extra/clang-doc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang-tools-extra/unittests/BUILD.bazel

  Log Message:
  -----------
  [Bazel] Fixes cc048e8 (#207873)

This fixes cc048e80b670a5262500612069d1c2d065b53f15.

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: a37bb291fd9ca6c19a809196d074eaddae041353
      https://github.com/llvm/llvm-project/commit/a37bb291fd9ca6c19a809196d074eaddae041353
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXLowerArgs.cpp
    A llvm/test/CodeGen/NVPTX/lower-byval-args-mem-attrs.ll

  Log Message:
  -----------
  [NVPTX] Assign correct memory attrs to args in NVPTXLowerArgs (#207461)


  Commit: 52f1b754dddb740a553166acb9a5d40c38cc74e5
      https://github.com/llvm/llvm-project/commit/52f1b754dddb740a553166acb9a5d40c38cc74e5
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/bindings/python/tests/cindex/test_source_range.py
    M clang/bindings/python/tests/cindex/test_translation_unit.py

  Log Message:
  -----------
  [clang] workaround libclang-python windows CI failures (#207875)


  Commit: a42a1c84c1305d785ca58d271d5f2f87f1daeeb0
      https://github.com/llvm/llvm-project/commit/a42a1c84c1305d785ca58d271d5f2f87f1daeeb0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/InProcessEPCTest.cpp

  Log Message:
  -----------
  [ORC] Fix reinterpret_cast warning. (#207874)

https://github.com/llvm/llvm-project/pull/206725#issuecomment-4896222897
reported warnings on windows builds due to reinterpret_cast:

warning C4312: 'reinterpret_cast': conversion from 'unsigned int' to
'void *' of greater size

This commit fixes the issue by using ExecutorAddr::toPtr for conversion
instead of reinterpret_cast.


  Commit: 5cd8f2f847101effad54a88936abe5e3bcb7e884
      https://github.com/llvm/llvm-project/commit/5cd8f2f847101effad54a88936abe5e3bcb7e884
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/test/Driver/fsave-optimization-record.f90
    M lld/test/ELF/lto/stats-file-option.ll
    M llvm/docs/Remarks.rst
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/test/CodeGen/AArch64/aarch64-large-stack-spbump.mir
    M llvm/test/CodeGen/AArch64/aarch64-vector-pcs.mir
    M llvm/test/CodeGen/AArch64/addg_subg.mir
    M llvm/test/CodeGen/AArch64/cfi_restore.mir
    M llvm/test/CodeGen/AArch64/chkstk.ll
    M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-declare.mir
    M llvm/test/CodeGen/AArch64/debug-info-sve-dbg-value.mir
    M llvm/test/CodeGen/AArch64/emit-prologue-clobber-verification.mir
    M llvm/test/CodeGen/AArch64/extra-callee-save.mir
    M llvm/test/CodeGen/AArch64/framelayout-fpr128-spill.mir
    M llvm/test/CodeGen/AArch64/framelayout-frame-record.mir
    M llvm/test/CodeGen/AArch64/framelayout-offset-immediate-change.mir
    M llvm/test/CodeGen/AArch64/framelayout-scavengingslot-stack-hazard.mir
    M llvm/test/CodeGen/AArch64/framelayout-scavengingslot.mir
    M llvm/test/CodeGen/AArch64/framelayout-split-sve.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve-basepointer.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve-calleesaves-fix.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve-fixed-width-access.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve-scavengingslot.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve-win.mir
    M llvm/test/CodeGen/AArch64/framelayout-sve.mir
    M llvm/test/CodeGen/AArch64/large-stack-offset-calcs.mir
    M llvm/test/CodeGen/AArch64/live-debugvalues-sve.mir
    M llvm/test/CodeGen/AArch64/lr-reserved-for-ra-live-in.ll
    M llvm/test/CodeGen/AArch64/machine-outliner-bti.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-calls.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-no-noreturn-no-stack.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-noreturn-no-stack.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-regsave.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-retaddr-sign-regsave.mir
    M llvm/test/CodeGen/AArch64/machine-outliner-size-info.mir
    M llvm/test/CodeGen/AArch64/machine-outliner.mir
    M llvm/test/CodeGen/AArch64/memtag-stg-loop-reg-pressure.mir
    M llvm/test/CodeGen/AArch64/no-xzr-liveins.mir
    M llvm/test/CodeGen/AArch64/pr157252.mir
    M llvm/test/CodeGen/AArch64/preserve.ll
    M llvm/test/CodeGen/AArch64/prologue-epilogue-remarks.mir
    M llvm/test/CodeGen/AArch64/reg-scavenge-frame.mir
    M llvm/test/CodeGen/AArch64/reloc-specifiers.mir
    M llvm/test/CodeGen/AArch64/settag-merge.mir
    M llvm/test/CodeGen/AArch64/spill-stack-realignment.mir
    M llvm/test/CodeGen/AArch64/stack-guard-reassign-sve.mir
    M llvm/test/CodeGen/AArch64/stack-guard-reassign.mir
    M llvm/test/CodeGen/AArch64/stack-id-pei-alloc.mir
    M llvm/test/CodeGen/AArch64/stack-id-stackslot-scavenging.mir
    M llvm/test/CodeGen/AArch64/stack-probing-last-in-block.mir
    M llvm/test/CodeGen/AArch64/stack-probing-no-scratch-reg.mir
    M llvm/test/CodeGen/AArch64/stack-probing-shrink-wrap.mir
    M llvm/test/CodeGen/AArch64/stack-tagging-epilogue-fold.mir
    M llvm/test/CodeGen/AArch64/stack-tagging-merge-past-memcpy.mir
    M llvm/test/CodeGen/AArch64/statepoint-call-lowering-lr.ll
    M llvm/test/CodeGen/AArch64/statepoint-call-lowering-sp.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention.ll
    M llvm/test/CodeGen/AArch64/sve-ld1r.mir
    M llvm/test/CodeGen/AArch64/sve-ldN.mir
    M llvm/test/CodeGen/AArch64/sve-ldnf1.mir
    M llvm/test/CodeGen/AArch64/sve-ldst-multi-vec.mir
    M llvm/test/CodeGen/AArch64/sve-ldstnt1.mir
    M llvm/test/CodeGen/AArch64/sve-stN.mir
    M llvm/test/CodeGen/AArch64/unreachable-emergency-spill-slot.mir
    M llvm/test/CodeGen/AArch64/unwind-preserved-from-mir.mir
    M llvm/test/CodeGen/AArch64/wineh-frame-predecrement.mir
    M llvm/test/CodeGen/AArch64/wineh-frame-scavenge.mir
    M llvm/test/CodeGen/AArch64/wineh-frame0.mir
    M llvm/test/CodeGen/AArch64/wineh-frame1.mir
    M llvm/test/CodeGen/AArch64/wineh-frame2.mir
    M llvm/test/CodeGen/AArch64/wineh-frame3.mir
    M llvm/test/CodeGen/AArch64/wineh-frame4.mir
    M llvm/test/CodeGen/AArch64/wineh-frame5.mir
    M llvm/test/CodeGen/AArch64/wineh-frame6.mir
    M llvm/test/CodeGen/AArch64/wineh-frame7.mir
    M llvm/test/CodeGen/AArch64/wineh-frame8.mir
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair1.mir
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair2.mir
    M llvm/test/CodeGen/AArch64/wineh-save-lrpair3.mir
    M llvm/test/CodeGen/AArch64/wineh1.mir
    M llvm/test/CodeGen/AArch64/wineh2.mir
    M llvm/test/CodeGen/AArch64/wineh3.mir
    M llvm/test/CodeGen/AArch64/wineh4.mir
    M llvm/test/CodeGen/AArch64/wineh5.mir
    M llvm/test/CodeGen/AArch64/wineh6.mir
    M llvm/test/CodeGen/AArch64/wineh7.mir
    M llvm/test/CodeGen/AArch64/wineh8.mir
    M llvm/test/CodeGen/AArch64/wineh_shrinkwrap.mir
    M llvm/test/CodeGen/AArch64/wrong-callee-save-size-after-livedebugvariables.mir
    M llvm/test/CodeGen/AMDGPU/SRSRC-GIT-clobber-check.mir
    M llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
    M llvm/test/CodeGen/AMDGPU/agpr-spill-copy.mir
    M llvm/test/CodeGen/AMDGPU/av-spill-expansion-with-machine-cp.mir
    M llvm/test/CodeGen/AMDGPU/av_spill_cross_bb_usage.mir
    M llvm/test/CodeGen/AMDGPU/bug-undef-spilled-agpr.mir
    M llvm/test/CodeGen/AMDGPU/copy-vgpr-clobber-spill-vgpr.mir
    M llvm/test/CodeGen/AMDGPU/csr-sgpr-spill-live-ins.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-mov-b32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-select.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32-wave32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/entry-function-cfi.mir
    M llvm/test/CodeGen/AMDGPU/fix-frame-ptr-reg-copy-livein.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-fold-fi-gfx1250.mir
    M llvm/test/CodeGen/AMDGPU/frame-index-elimination-tied-operand.mir
    M llvm/test/CodeGen/AMDGPU/frame-index.mir
    M llvm/test/CodeGen/AMDGPU/frame-lowering-entry-all-sgpr-used.mir
    M llvm/test/CodeGen/AMDGPU/frame-lowering-fp-adjusted.mir
    M llvm/test/CodeGen/AMDGPU/ipra-regmask.ll
    M llvm/test/CodeGen/AMDGPU/kernel-mubuf-with-voffset.mir
    M llvm/test/CodeGen/AMDGPU/machine-function-info-cwsr.ll
    M llvm/test/CodeGen/AMDGPU/mcinstlower-external-symbol-reloc.mir
    M llvm/test/CodeGen/AMDGPU/mir-print-dead-csr-fi.mir
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain-preserve.mir
    M llvm/test/CodeGen/AMDGPU/pei-amdgpu-cs-chain.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-av-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill-offset-overflow-gfx950.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill-partial-agpr.mir
    M llvm/test/CodeGen/AMDGPU/pei-build-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-reg-scavenger-position.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-carry-out.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/pei-scavenge-vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/pei-vgpr-block-spill-csr.mir
    M llvm/test/CodeGen/AMDGPU/preserve-only-inactive-lane.mir
    M llvm/test/CodeGen/AMDGPU/same-slot-agpr-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-dead-frame-in-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-overlap-wwm-reserve.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber-unhandled.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-to-vmem-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-vmem-large-frame.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/spill-agpr-partially-undef.mir
    M llvm/test/CodeGen/AMDGPU/spill-agpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-reg-tuple-super-reg-use.mir
    M llvm/test/CodeGen/AMDGPU/spill-restore-partial-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-sgpr-used-for-exec-copy.mir
    M llvm/test/CodeGen/AMDGPU/spill-special-sgpr.mir
    M llvm/test/CodeGen/AMDGPU/spill-to-agpr-partial.mir
    M llvm/test/CodeGen/AMDGPU/spill_kill_v16.mir
    M llvm/test/CodeGen/AMDGPU/spillv16.mir
    M llvm/test/CodeGen/AMDGPU/spillv16Kernel.mir
    M llvm/test/CodeGen/AMDGPU/tied-op-for-wwm-scratch-reg-spill-restore.mir
    M llvm/test/CodeGen/AMDGPU/track-spilled-vgpr-liveness.mir
    M llvm/test/CodeGen/AMDGPU/use_restore_frame_reg.mir
    M llvm/test/CodeGen/AMDGPU/vector-spill-restore-to-other-vector-type.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-blocks-funcinfo.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-dead-frame-in-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-fi-skip-processing-stack-arg-dbg-value-list.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-fi-skip-processing-stack-arg-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill-scc-clobber.mir
    M llvm/test/CodeGen/AMDGPU/vgpr-spill.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
    M llvm/test/CodeGen/AMDGPU/wwm-reg-shift-down-gfx11plus.mir
    M llvm/test/CodeGen/ARM/execute-only-save-cpsr.mir
    M llvm/test/CodeGen/ARM/fpoffset_overflow.mir
    M llvm/test/CodeGen/ARM/interrupt-save-fp-attr-status-regs.mir
    M llvm/test/CodeGen/ARM/machine-outliner-calls.mir
    M llvm/test/CodeGen/ARM/machine-outliner-stack-fixup-arm.mir
    M llvm/test/CodeGen/ARM/machine-outliner-stack-fixup-thumb.mir
    M llvm/test/CodeGen/ARM/nonreserved-callframe-with-basereg.mir
    M llvm/test/CodeGen/ARM/noreturn-csr-skip.mir
    M llvm/test/CodeGen/ARM/pei-swiftself.mir
    M llvm/test/CodeGen/ARM/register-scavenger-exceptions.mir
    M llvm/test/CodeGen/ARM/stack_frame_offset.mir
    M llvm/test/CodeGen/ARM/tldrlit_ga_size.mir
    M llvm/test/CodeGen/BPF/BTF/func-nocall-undef-dead-arg.ll
    M llvm/test/CodeGen/Hexagon/aligna-prologue-expansion.mir
    M llvm/test/CodeGen/Hexagon/livephysregs-regmask-clobber.mir
    M llvm/test/CodeGen/Hexagon/spill-vector-alignment.mir
    M llvm/test/CodeGen/LoongArch/stack-probing-frame-setup.mir
    M llvm/test/CodeGen/LoongArch/statepoint-call-lowering-r1.ll
    M llvm/test/CodeGen/M68k/CollapseMOVEM.mir
    M llvm/test/CodeGen/M68k/is-pcrel-register-operand-legal.mir
    M llvm/test/CodeGen/MIR/AArch64/hasstackframe.mir
    M llvm/test/CodeGen/MIR/AArch64/return-address-signing.mir
    M llvm/test/CodeGen/MIR/AMDGPU/machine-function-info-after-pei.ll
    M llvm/test/CodeGen/MIR/AMDGPU/spill-phys-vgprs.mir
    M llvm/test/CodeGen/MIR/AMDGPU/stack-id-assert.mir
    M llvm/test/CodeGen/MIR/ARM/thumb2-sub-sp-t3.mir
    M llvm/test/CodeGen/MIR/X86/diexpr-win32.mir
    M llvm/test/CodeGen/Mips/copy-fp64.ll
    M llvm/test/CodeGen/Mips/shrink-wrap-buildpairf64-extractelementf64.mir
    M llvm/test/CodeGen/PowerPC/aix-csr-vector-extabi.ll
    M llvm/test/CodeGen/PowerPC/aix-csr-vector.ll
    M llvm/test/CodeGen/PowerPC/aix-csr.ll
    M llvm/test/CodeGen/PowerPC/aix32-crsave.mir
    M llvm/test/CodeGen/PowerPC/aix32-vector-pair-cc-spills.ll
    M llvm/test/CodeGen/PowerPC/aix64-vector-pair-cc-spills.ll
    M llvm/test/CodeGen/PowerPC/alloca-crspill.ll
    M llvm/test/CodeGen/PowerPC/byval-agg-info.ll
    M llvm/test/CodeGen/PowerPC/frame_index_scavenging.mir
    M llvm/test/CodeGen/PowerPC/mflr-store.mir
    M llvm/test/CodeGen/PowerPC/ppc64-crsave.mir
    M llvm/test/CodeGen/PowerPC/prolog_vec_spills.mir
    M llvm/test/CodeGen/PowerPC/stack_pointer_vec_spills.mir
    M llvm/test/CodeGen/RISCV/determine-callee-saves-gpr.mir
    M llvm/test/CodeGen/RISCV/live-sp.mir
    M llvm/test/CodeGen/RISCV/out-of-reach-emergency-slot.mir
    M llvm/test/CodeGen/RISCV/pr53662.mir
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv32.mir
    M llvm/test/CodeGen/RISCV/riscv-scavenge-crash-2nd-pass-rv64.mir
    M llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x1.ll
    M llvm/test/CodeGen/RISCV/rv64-statepoint-call-lowering-x2.ll
    M llvm/test/CodeGen/RISCV/rvv/addi-rvv-stack-object.mir
    M llvm/test/CodeGen/RISCV/rvv/addi-scalable-offset.mir
    M llvm/test/CodeGen/RISCV/rvv/debug-info-rvv-dbg-value.mir
    M llvm/test/CodeGen/RISCV/rvv/emergency-slot.mir
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-emergency-slot.mir
    M llvm/test/CodeGen/RISCV/rvv/get-vlen-debugloc.mir
    M llvm/test/CodeGen/RISCV/rvv/large-rvv-stack-size.mir
    M llvm/test/CodeGen/RISCV/rvv/mask-reg-alloc.mir
    M llvm/test/CodeGen/RISCV/rvv/rvv-stack-align.mir
    M llvm/test/CodeGen/RISCV/rvv/vxrm.mir
    M llvm/test/CodeGen/RISCV/rvv/wrong-stack-offset-for-rvv-object.mir
    M llvm/test/CodeGen/RISCV/rvv/wrong-stack-slot-rv32.mir
    M llvm/test/CodeGen/RISCV/rvv/wrong-stack-slot-rv64.mir
    M llvm/test/CodeGen/RISCV/rvv/zvlsseg-spill.mir
    M llvm/test/CodeGen/RISCV/shadowcallstack-frame-flags.ll
    M llvm/test/CodeGen/RISCV/stack-inst-compress.mir
    M llvm/test/CodeGen/RISCV/stack-probing-frame-setup.mir
    M llvm/test/CodeGen/RISCV/xqccmp-cm-popretz.mir
    M llvm/test/CodeGen/RISCV/xqccmp-cm-push-pop.mir
    M llvm/test/CodeGen/RISCV/zcmp-cm-popretz.mir
    M llvm/test/CodeGen/RISCV/zcmp-cm-push-pop.mir
    M llvm/test/CodeGen/RISCV/zcmp-prolog-epilog-crash.mir
    M llvm/test/CodeGen/RISCV/zdinx-large-spill.mir
    M llvm/test/CodeGen/RISCV/zdinx-spill.ll
    M llvm/test/CodeGen/RISCV/zilsd-csr-duplicate.mir
    M llvm/test/CodeGen/RISCV/zilsd-spill.ll
    M llvm/test/CodeGen/SystemZ/frame-26.mir
    M llvm/test/CodeGen/SystemZ/frame-27.mir
    M llvm/test/CodeGen/SystemZ/frame-28.mir
    M llvm/test/CodeGen/SystemZ/scavenge-clobbered-reg.mir
    M llvm/test/CodeGen/SystemZ/tls-11.mir
    M llvm/test/CodeGen/Thumb2/fp16-stacksplot.mir
    M llvm/test/CodeGen/Thumb2/frame-index-addrmode-t2i8s4.mir
    M llvm/test/CodeGen/Thumb2/mve-stacksplot.mir
    M llvm/test/CodeGen/Thumb2/scavenge-lr.mir
    M llvm/test/CodeGen/X86/cfi-epilogue-with-return.mir
    M llvm/test/CodeGen/X86/cfi-epilogue-without-return.mir
    M llvm/test/CodeGen/X86/cfi-xmm.ll
    M llvm/test/CodeGen/X86/epilogue-cfi-fp.ll
    M llvm/test/CodeGen/X86/ipra-inline-asm.ll
    M llvm/test/CodeGen/X86/ipra-reg-usage.ll
    M llvm/test/CodeGen/X86/prologepilog_deref_size.mir
    M llvm/test/CodeGen/X86/prologue-epilogue-remarks.mir
    M llvm/test/CodeGen/X86/push-cfi.ll
    M llvm/test/CodeGen/X86/throws-cfi-fp.ll
    M llvm/test/CodeGen/X86/virtual-registers-cleared-in-machine-functions-liveins.ll
    M llvm/test/CodeGen/X86/win_coreclr_chkstk_liveins.mir
    M llvm/test/CodeGen/X86/zero-call-used-regs-debug-info.mir
    M llvm/test/DebugInfo/MIR/X86/bit-piece-dh.mir
    M llvm/test/DebugInfo/MIR/X86/no-cfi-loc.mir
    M llvm/test/DebugInfo/MIR/X86/prolog-epilog-indirection.mir
    M llvm/test/DebugInfo/X86/prolog-params.mir
    M llvm/test/tools/dsymutil/Inputs/private/tmp/remarks/basic1.macho.remarks.arm64.opt.yaml
    M llvm/test/tools/dsymutil/Inputs/private/tmp/remarks/basic2.macho.remarks.arm64.opt.yaml
    M llvm/test/tools/dsymutil/Inputs/private/tmp/remarks/basic3.macho.remarks.arm64.opt.yaml
    M llvm/test/tools/dsymutil/Inputs/private/tmp/remarks/fat.macho.remarks.x86_64.opt.yaml
    M llvm/test/tools/dsymutil/Inputs/private/tmp/remarks/fat.macho.remarks.x86_64h.opt.yaml
    M llvm/test/tools/llvm-remarkutil/Inputs/two-remarks.bitstream
    M llvm/test/tools/llvm-remarkutil/Inputs/two-remarks.yaml
    M llvm/test/tools/llvm-remarkutil/convert.test
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/1-func-1-instr-1-stack.yaml
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/1-func-2-instr-2-stack.yaml
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/2-identical-func-1-instr-1-stack.yaml
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/inconvertible-integer.yaml
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/no-instruction-count-remarks.yaml
    M llvm/test/tools/llvm-remarkutil/size-diff/Inputs/unexpected-key.yaml
    M llvm/tools/llvm-exegesis/lib/Assembler.cpp
    M llvm/tools/llvm-remarkutil/RemarkSizeDiff.cpp

  Log Message:
  -----------
  [CodeGen] Rename prologpeilog to prolog-epilog (#207870)

This is primarily to ensure consistenct with the new pass manager where
the name of the pass is already prolog-epilog, which is more consistent
with our existing naming scheme. This is necessary to be able to run
existing llc invocations that explicitly specify prolog-epilog under the
NewPM automatically.

Assisted by Gemini.


  Commit: 0ad19f403165d8fc1596fb2fef9c940e941c54df
      https://github.com/llvm/llvm-project/commit/0ad19f403165d8fc1596fb2fef9c940e941c54df
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/shared/builtins.h
    A libc/shared/builtins/subsf3.h
    M libc/src/__support/builtins/CMakeLists.txt
    A libc/src/__support/builtins/subsf3.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_builtins_test.cpp

  Log Message:
  -----------
  [libc] add shared subsf3 builtin (#205677)

Re-exposes LLVM-libc's `__subsf3` as `shared::subsf3` for reuse by
compiler-rt's builtins.

Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673
- #205674
- #205675
- #205676

Part of #197824


  Commit: d49c6da56c60e3859b686ed2434fed7cab92bff9
      https://github.com/llvm/llvm-project/commit/d49c6da56c60e3859b686ed2434fed7cab92bff9
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    R .github/workflows/libclang-python-tests.yml

  Log Message:
  -----------
  CI: move libclang python bindings tests to main CI (#201677)

This removes the separate python bindings CI, which run on the GitHub
free runners and take more than one hour to build libclang.

The tests are executed instead in the monolithic pipelines, whenever
clang would be tested.
That only tests whatever python version we set up for that pipeline.

This is fine in terms of resources because all the dependencies are
built anyway, and the tests themselves take less than one second to run
on the free runners.


  Commit: 1b9723b3cd661b53f8ea891204efdb95a9c1c678
      https://github.com/llvm/llvm-project/commit/1b9723b3cd661b53f8ea891204efdb95a9c1c678
  Author: Yi Zhang <cathyzhyi at google.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/APInt.h
    M llvm/unittests/ADT/APIntTest.cpp

  Log Message:
  -----------
  Fix APInt::concat for zero-width operands (#207475)

APInt::concat triggered undefined behavior (invalid shift exponent) when
concatenating a zero-width operand with a 64-bit operand on the fast
path (combined width <= 64). For example, `I0.concat(I64)` resulted in
`U.VAL << 64`, which is UB.
Fix by checking for zero-width operands early and returning the other
operand. Added regression tests to `APIntTest.cpp`.


  Commit: 5c715d56884364a3b05acb4d3e6b52a911f14667
      https://github.com/llvm/llvm-project/commit/5c715d56884364a3b05acb4d3e6b52a911f14667
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang/lib/Tooling/Tooling.cpp
    M clang/unittests/Tooling/ToolingTest.cpp

  Log Message:
  -----------
  [Tooling] Preserve backslashes in POSIX source paths (#207499)

On POSIX, backslashes are valid filename characters. Avoid converting
them to slashes when computing absolute source paths in LibTooling,
since doing so changes paths such as `a\b.cc` into `a/b.cc`.

Closes #207396


  Commit: 664e704bd5da24971bfdedee410415537e8d2e45
      https://github.com/llvm/llvm-project/commit/664e704bd5da24971bfdedee410415537e8d2e45
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M flang/include/flang/Semantics/semantics.h
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Driver/bbc-implicit-use-module.f90
    M flang/tools/bbc/bbc.cpp

  Log Message:
  -----------
  [flang] Add ability to implicitly use a module (#207824)

Add parser and semantics plumbing for configured implicit USE modules,
reusing
the normal USE-association path so public symbols and common blocks are
imported
consistently.


  Commit: c45ff74fbe38151a21e1877b7e0c703b1590f101
      https://github.com/llvm/llvm-project/commit/c45ff74fbe38151a21e1877b7e0c703b1590f101
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVSystemOperands.td

  Log Message:
  -----------
  [RISCV] Sync RISCVSystemOperands.td order/sections with priv-csrs.adoc from riscv-isa-manual. NFC (#207803)


  Commit: c392657d4992148cb7cd5ebd94f12d2ffab949b4
      https://github.com/llvm/llvm-project/commit/c392657d4992148cb7cd5ebd94f12d2ffab949b4
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    A llvm/test/CodeGen/SPIRV/pointers/array-stride-subbyte.ll

  Log Message:
  -----------
  [SPIR-V] Fix ArrayStride truncation to 0 for sub-byte element types (#207140)

addArrayStrideDecorations computed the stride as `getTypeSizeInBits/8`
which truncates to 0 for sub-byte element types such as i1

0 strides are disallowed in spec

---------

Co-authored-by: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>


  Commit: 2ef13ce61b9625080e20df1e13763aa4d4fb5964
      https://github.com/llvm/llvm-project/commit/2ef13ce61b9625080e20df1e13763aa4d4fb5964
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll

  Log Message:
  -----------
  [AMDGPU] Fix whole-wave function prologue to set EXEC to -1 (#207781)

A whole-wave function body must run with all lanes on. With no WWM
spills the prologue emitted `S_XOR_SAVEEXEC`, giving `EXEC` =
`~entryEXEC`


  Commit: b068ae9e376b1e3d721064e140e638cad076d0bc
      https://github.com/llvm/llvm-project/commit/b068ae9e376b1e3d721064e140e638cad076d0bc
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M llvm/docs/LFI.rst
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/MC/MCLFI.cpp
    M llvm/lib/Target/X86/MCTargetDesc/CMakeLists.txt
    A llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp
    A llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86Subtarget.h
    M llvm/lib/TargetParser/Triple.cpp
    A llvm/test/CodeGen/X86/lfi-sibcall.ll
    A llvm/test/MC/X86/LFI/abi-note.s
    A llvm/test/MC/X86/LFI/syscall.s
    A llvm/test/MC/X86/LFI/thread-pointer-errors.s
    A llvm/test/MC/X86/LFI/thread-pointer.s

  Log Message:
  -----------
  [LFI][X86] Add X86 LFI target and system instruction rewrites (#189569)

This PR introduces an x86-64 backend for Lightweight Fault Isolation
(LFI), similar to the one being developed for AArch64. LFI is a
compiler-based mechanism that enables efficient in-process sandboxing.
See the RFC from last fall for details.

This PR adds the `x86_64_lfi` target (similar to `aarch64_lfi`), sets up
reserved registers, and implements some initial rewrites for system
instructions (system calls and TLS accesses). The rewrites are done at
the MC level, using the `MCLFIRewriter` infrastructure. I have updated
the documentation to describe the x86-64 sandboxing scheme and to list
rewrites that will be implemented in future PRs (to keep each individual
PR small).

For performance and compatibility reasons, the plan is currently to use
bundling for maintaining control-flow integrity in the sandbox, which
is not yet supported. For now we are setting up the rewrites without using
bundling, but we can also use a CFI mechanism based on shadow
stack+endbr in order to have something usable while bundling is
in progress.


  Commit: a849f52b7930ead34ce6337763cff9977f5f61aa
      https://github.com/llvm/llvm-project/commit/a849f52b7930ead34ce6337763cff9977f5f61aa
  Author: rdevshp <rdevshp at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/test/Transforms/InstCombine/conditional-variable-length-signext-after-high-bit-extract.ll

  Log Message:
  -----------
  [InstCombine] Fix assertion failure in `foldVariableSignZeroExtensionOfVariableHighBitExtract` (#205148)

This PR fixes crash for the following program:
```
define i16 @d(i16 %x, i4 %n) {
entry:
  %highbits = lshr i16 %x, 1
  %sub1 = sub i4 0, %n
  %z1 = zext i4 %sub1 to i16
  %shl = shl i16 %highbits, %z1
  %sub2 = sub i4 0, %n
  %z2 = zext i4 %sub2 to i16
  %ashr = ashr i16 %shl, %z2
  ret i16 %ashr
}
```
when running `opt -passes=instcombine prog.ll -S`.

Assisted-by: Codex


  Commit: fa9fac7ae909053993e96a1c2aecc981b08f70cb
      https://github.com/llvm/llvm-project/commit/fa9fac7ae909053993e96a1c2aecc981b08f70cb
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M llvm/docs/LFI.rst
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/MC/MCLFI.cpp
    M llvm/lib/Target/X86/MCTargetDesc/CMakeLists.txt
    R llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.cpp
    R llvm/lib/Target/X86/MCTargetDesc/X86MCLFIRewriter.h
    M llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/Target/X86/X86Subtarget.h
    M llvm/lib/TargetParser/Triple.cpp
    R llvm/test/CodeGen/X86/lfi-sibcall.ll
    R llvm/test/MC/X86/LFI/abi-note.s
    R llvm/test/MC/X86/LFI/syscall.s
    R llvm/test/MC/X86/LFI/thread-pointer-errors.s
    R llvm/test/MC/X86/LFI/thread-pointer.s

  Log Message:
  -----------
  Revert "[LFI][X86] Add X86 LFI target and system instruction rewrites" (#207891)

Reverts llvm/llvm-project#189569


  Commit: 025e2adf1c774d17415b72244722aa740fe4d712
      https://github.com/llvm/llvm-project/commit/025e2adf1c774d17415b72244722aa740fe4d712
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/source/Host/freebsd/Host.cpp

  Log Message:
  -----------
  [LLDB][FreeBSD] Fix build from FileSpec change (#207819)

FileSpec now returns llvm::StringRef instead of ConstString. As a
result, we don't need to use GetCString to get the raw string. Remove it
to fix build failure.

Fixes: f9b5264523b1 (#206802)


  Commit: b838b0cc1c76c34e57d70d5d259382ac0d764cca
      https://github.com/llvm/llvm-project/commit/b838b0cc1c76c34e57d70d5d259382ac0d764cca
  Author: Ying Chen <chenying at inchitech.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZclsd.td
    M llvm/test/MC/RISCV/rv32zclsd-invalid.s

  Log Message:
  -----------
  [RISCV][MC] Improve diagnostics for Zclsd RV32 GPR pair operands (#207639)

Add dedicated assembler diagnostics for the RV32 GPR pair operands used
by
Zclsd compressed load/store pair instructions.

After the RISC-V asm parser started reporting multiple near-miss
reasons, these
operands still fell back to the generic "invalid operand for
instruction" note.
Give them explicit diagnostic types and messages so invalid register
pairs report
the expected pair constraints.


  Commit: 26fbd61932b41a36a1fee3bcdfbb6800ca5c09b3
      https://github.com/llvm/llvm-project/commit/26fbd61932b41a36a1fee3bcdfbb6800ca5c09b3
  Author: Ying Chen <chenying at inchitech.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M lld/test/ELF/gc-sections-keep-shared-start.s

  Log Message:
  -----------
  [ELF,test] Fix FileCheck RUN line in gc-sections-keep-shared-start.s (#207678)

Fix a malformed multiline RUN line.

---------

Co-authored-by: Fangrui Song <i at maskray.me>


  Commit: 25b205eb9413e418732d0d5b526511c3ce37c6d9
      https://github.com/llvm/llvm-project/commit/25b205eb9413e418732d0d5b526511c3ce37c6d9
  Author: Kareem Ergawy <kergawy at nvidia.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp

  Log Message:
  -----------
  [FIRToMemRef] Doc collectSliceInfoFrom, getMemrefIndices, canonicalizeIndex (#207699)

Also drops the unused `converted` parameter from getMemrefIndices. The
internal workings of these functions were not easy to understand for me
so I worked with Claude to document with examples. Hopefully, that makes
the code easier to read. I reviewed the docs and corrected some obvious
hallucinations produced by the agent.

Co-Authored-By: Claude Sonnet 4.6 noreply at anthropic.com


  Commit: 51a378885ae5f48c2b1521700fd5732a5aae00aa
      https://github.com/llvm/llvm-project/commit/51a378885ae5f48c2b1521700fd5732a5aae00aa
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

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

  Log Message:
  -----------
  [TableGen] Separate string when digit follows octal escape (#207807)

Silence MSVC warning C4125 by separating the string literals when an
octal escape sequence is followed by a decimal char.


  Commit: cb19f2b288a94e62c93f3e862cb697c14a7326fb
      https://github.com/llvm/llvm-project/commit/cb19f2b288a94e62c93f3e862cb697c14a7326fb
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M clang/test/OffloadTools/clang-offload-bundler/zstd.c

  Log Message:
  -----------
  [clang][test][darwin] Driver/clang-offload-bundler-zstd.c fails on macOS (#207876)

Driver/clang-offload-bundler-zstd.c isn't supported on Darwin, but
neglected to list the macosx target.


  Commit: cbf8048aa1427166045a602e0bc29127c1d8274c
      https://github.com/llvm/llvm-project/commit/cbf8048aa1427166045a602e0bc29127c1d8274c
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    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 codegen for packed absolute difference sum (#207314)

The pabdsumu/pabdsumau instructions compute the sum of absolute differences
of packed unsigned bytes; pabdsumau also accumulates into rd.

Add the llvm.riscv.pabdsumu and pabdsumau intrinsics. A single-GPR source is
selected directly to pabdsumu.b/pabdsumau.b with isel patterns. A 64-bit
GPRPair source on RV32 has no paired instruction, so it is split during
lowering into two v4i8 halves: reduce the low half (folding in rd when
accumulating), then accumulate the high half into that partial sum.

Cases with a target-illegal result are handled in ReplaceNodeResults:

    RV64, i32 result: reduce at i64 and truncate (a 32-bit source is
    zero-extended first).
    RV32, i64 result: reduce each half with pabdsumu.b and combine the
    partial sums with a widening add (waddu/waddau).


  Commit: 0fc9beeadf2a415553047989154a8df7f89fd8dc
      https://github.com/llvm/llvm-project/commit/0fc9beeadf2a415553047989154a8df7f89fd8dc
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/adjacent_transform_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.adjacent.transform/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Applied [[nodiscard]] to `adjacent_transform_view` (#205900)

[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.adjacent.transform

Towards https://github.com/llvm/llvm-project/issues/172124

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 8992cdf458f78c5ef9b018c92234658fc78cfd80
      https://github.com/llvm/llvm-project/commit/8992cdf458f78c5ef9b018c92234658fc78cfd80
  Author: Lucas Mellone <github.snugness349 at passinbox.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/join_view.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.join/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Applied [[nodiscard]] to `join_view` (#206838)

[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.join

Towards https://github.com/llvm/llvm-project/issues/172124


  Commit: 347e97f815e2b866aa07b8e0f6364a79280ad2fb
      https://github.com/llvm/llvm-project/commit/347e97f815e2b866aa07b8e0f6364a79280ad2fb
  Author: quic-k <kushpal at qti.qualcomm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/test/Driver/hexagon-toolchain-picolibc.c

  Log Message:
  -----------
  [Clang][Hexagon] Use flat library directory layout for Picolibc (#201326)

Signed-off-by: Kushal Pal <kushpal at qti.qualcomm.com>


  Commit: a6575e8ea5a638259d4051ebfb1430bf1cc2795b
      https://github.com/llvm/llvm-project/commit/a6575e8ea5a638259d4051ebfb1430bf1cc2795b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Use `PtrView` in `CheckActive()` (#207756)


  Commit: bc2b50fbca41852434db4c3f066989e036b9b962
      https://github.com/llvm/llvm-project/commit/bc2b50fbca41852434db4c3f066989e036b9b962
  Author: David Green <david.green at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/AArch64/arith-overflow.ll
    M llvm/test/Analysis/CostModel/AArch64/arith.ll
    M llvm/test/Analysis/CostModel/AArch64/div.ll
    M llvm/test/Analysis/CostModel/AArch64/mul.ll
    M llvm/test/Analysis/CostModel/AArch64/rem.ll

  Log Message:
  -----------
  [AArch64] Add a basic i128 mul cost. (#203271)

This adds a basic cost for i128 multiply instructions, which has a basic
cost of 4 and scales n^2 with bitsize.


  Commit: 08ed6acb7e0d328ee02d4c15b7b6bcdd943323e3
      https://github.com/llvm/llvm-project/commit/08ed6acb7e0d328ee02d4c15b7b6bcdd943323e3
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/src/__support/File/CMakeLists.txt
    M libc/src/__support/File/dir.cpp
    M libc/src/__support/File/dir.h
    M libc/src/__support/File/linux/dir.cpp

  Log Message:
  -----------
  [libc] Improve Dir class safety, performance, and style (#207214)

Addressed issues in the Dir class identified during review:

* Safety: Added bounds and validation checks in Dir::read to prevent
out-of-bounds reads on corrupted input.
* Performance: Aligned the internal buffer to struct dirent to prevent
unaligned memory access, and increased the buffer size to 4096 to reduce
syscall overhead.
* Style: Replaced the system <dirent.h> include with a new proxy header
(struct_dirent.h) to avoid system dependencies, and fixed relative
includes.
* Refactoring: Moved platform-specific record length access to a
platform helper (platform_dir_reclen).
* CMake: Updated dependencies for the dir target.

Assisted-by: Automated tooling, human reviewed.


  Commit: a2031641ed0db092d7f7a5371f4710b9e260ec4a
      https://github.com/llvm/llvm-project/commit/a2031641ed0db092d7f7a5371f4710b9e260ec4a
  Author: David Green <david.green at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    R llvm/test/CodeGen/AArch64/arm64-2013-02-12-shufv8i8.ll
    M llvm/test/CodeGen/AArch64/arm64-zip.ll
    M llvm/test/CodeGen/AArch64/bf16-shuffle.ll
    M llvm/test/CodeGen/AArch64/build-vector-two-dup.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    M llvm/test/CodeGen/AArch64/insert-subvector.ll
    M llvm/test/CodeGen/AArch64/insertshuffleload.ll
    M llvm/test/CodeGen/AArch64/neon-extracttruncate.ll
    M llvm/test/CodeGen/AArch64/neon-shuffle-vector-tbl.ll
    M llvm/test/CodeGen/AArch64/neon-wide-splat.ll
    M llvm/test/CodeGen/AArch64/neon-widen-shuffle.ll
    M llvm/test/CodeGen/AArch64/shuffle-extend.ll
    M llvm/test/CodeGen/AArch64/shuffle-slide-to-shift.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll
    M llvm/test/CodeGen/AArch64/shuffles.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add more shuffle test coverage. NFC (#207907)


  Commit: 39f64b9045441225f6229d3ea5502ae5a03307f8
      https://github.com/llvm/llvm-project/commit/39f64b9045441225f6229d3ea5502ae5a03307f8
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-07-06 (Mon, 06 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVExpandPseudoInsts.cpp
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_eq.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_ne.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_sge.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_slt.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_uge.ll
    M llvm/test/CodeGen/RISCV/short-forward-branch-opt-with-branch-with-immediates_32_ult.ll

  Log Message:
  -----------
  [RISCV] Fix Predicates in SFB to MVccI (#207806)


  Commit: 93509a564b4dda593766f4395873175ede1a30ed
      https://github.com/llvm/llvm-project/commit/93509a564b4dda593766f4395873175ede1a30ed
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    A llvm/test/CodeGen/LoongArch/get-rounding.ll
    M llvm/test/CodeGen/LoongArch/set-rounding.ll

  Log Message:
  -----------
  [LoongArch] Support ISD::GET_ROUNDING (llvm.get.rounding) (#207319)


  Commit: c6cadf901add7de1751cb27856aec90e47849cf4
      https://github.com/llvm/llvm-project/commit/c6cadf901add7de1751cb27856aec90e47849cf4
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M flang-rt/lib/runtime/CMakeLists.txt
    M runtimes/cmake/config-Fortran.cmake

  Log Message:
  -----------
  [Fortran] Use INTERFACE targets for options and dependencies (#193469)

Use CMake INTERFACE libraries to express dependencies and common build
options.

Using INTERFACE libraries was proposed here:
https://github.com/llvm/llvm-project/pull/171610#discussion_r3122187957

Since such libraries can also propagate build options use this instead
of `target_compile_options`. Unfortunately this does not mean we can get
rid of `flang_module_target` because it also needs to set the module
output directory.

---------

Co-authored-by: Tarun Prabhu <tarunprabhu at gmail.com>


  Commit: 1a5376e062e3f3b99ffce25e24e53182202e06b9
      https://github.com/llvm/llvm-project/commit/1a5376e062e3f3b99ffce25e24e53182202e06b9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    A llvm/test/CodeGen/AVR/cmp-sgt-i128.ll

  Log Message:
  -----------
  [AVR] Fix overflow in SETGT lowering (#207737)

https://github.com/llvm/llvm-project/pull/182690 fixed this for the
SETUGT case, but the same issue exists for SETGT, so fix it in the same
way.

Similar to the SETUGT case this needs a i128 comparison to reproduce,
otherwise the comparison gets folded away too early.


  Commit: 47b819b866636fb1770f78da3f45ebd64d5f9875
      https://github.com/llvm/llvm-project/commit/47b819b866636fb1770f78da3f45ebd64d5f9875
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/lasx/ir-instruction/shuffle-as-xvpermi.ll

  Log Message:
  -----------
  [LoongArch] Fix vpermi.w legalization with undef elements (#207751)

For the MaskSize==8 case, the code was comparing mask elements that
could be undef (-1). This could result in a miscompile (where -1 + 4 ==
3, which crosses from the high half to the low half) or the pattern not
matching (because -1 doesn't match the other mask element).

Fix this by explicitly handling undef elements in the code. If the high
half is undef, we can just ignore. If the low half is undef, we need to
use the value from the high half shifted down by 4. If neither are
undef, use the original check.


  Commit: 5bca42d7d7cd55642e9e63fa3b4da11245d025c3
      https://github.com/llvm/llvm-project/commit/5bca42d7d7cd55642e9e63fa3b4da11245d025c3
  Author: Jaydeep Chauhan <chauhan.jaydeep.ashwinbhai at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/BuiltinsX86_64.td
    M clang/include/clang/Options/Options.td
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Headers/CMakeLists.txt
    R clang/lib/Headers/amxtf32intrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Sema/SemaX86.cpp
    R clang/test/CodeGen/X86/amx_tf32.c
    R clang/test/CodeGen/X86/amx_tf32_api.c
    R clang/test/CodeGen/X86/amx_tf32_errors.c
    R clang/test/CodeGen/X86/amx_tf32_inline_asm.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/x86_target_features.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/IR/IntrinsicsX86.td
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86ExpandPseudo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAMX.td
    M llvm/lib/Target/X86/X86InstrPredicates.td
    M llvm/lib/Target/X86/X86LowerAMXType.cpp
    M llvm/lib/Target/X86/X86RegisterInfo.cpp
    M llvm/lib/TargetParser/Host.cpp
    M llvm/lib/TargetParser/X86TargetParser.cpp
    R llvm/test/CodeGen/X86/amx-tf32-internal.ll
    R llvm/test/CodeGen/X86/amx-tf32-intrinsics.ll
    R llvm/test/MC/Disassembler/X86/AMX/x86-64-amx-tf32.txt
    R llvm/test/MC/X86/AMX/x86-64-amx-tf32-att.s
    R llvm/test/MC/X86/AMX/x86-64-amx-tf32-intel.s
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [X86] Remove AMX-TF32 (#207673)

Per Intel Architecture Instruction Set Extensions Programming Reference
rev. 62 https://cdrdv2.intel.com/v1/dl/getContent/922690 Revision
History entry for revision -062


  Commit: 5c01d66e97208cd8acf6d7db72d9cfcbb4cd883f
      https://github.com/llvm/llvm-project/commit/5c01d66e97208cd8acf6d7db72d9cfcbb4cd883f
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/test/CodeGen/win64-i128.c

  Log Message:
  -----------
  [AArch64][msvc] allow higher align than slot size in va_arg (#207591)

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

On aarch64 windows, an `__int128` argument is passed with alignment 16,
but was read with an alignment of 8. Based on the MSVC assembly and how
e.g. aarch64 darwin handles this, I think it's correct to set
`AllowHigherAlign = true`.


  Commit: 57a7e7538cfc73184b8280160e8d89cedab04c5d
      https://github.com/llvm/llvm-project/commit/57a7e7538cfc73184b8280160e8d89cedab04c5d
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/fp128-cast.ll

  Log Message:
  -----------
  [X86][Windows] use `LowerWin64_INT128_TO_FP` for `u128` to `f128` conversion (#207285)

This change fixes an ABI issue where the signed conversion passes a
`i128` different from a `u128`, and crucially different from GCC.

https://godbolt.org/z/x3daY3rej

```diff
--- <unnamed>
+++ <unnamed>
@@ -1,15 +1,15 @@
-conv_from_i128:
+conv_from_u128:
         push    rsi
-        sub     rsp, 64
+        sub     rsp, 48
         mov     rsi, rcx
-        movaps  xmm0, xmmword ptr [rdx]
-        movaps  xmmword ptr [rsp + 48], xmm0
+        mov     rax, qword ptr [rdx]
+        mov     r8, qword ptr [rdx + 8]
         lea     rcx, [rsp + 32]
-        lea     rdx, [rsp + 48]
-        call    __floattitf
+        mov     rdx, rax
+        call    __floatuntitf
         movaps  xmm0, xmmword ptr [rsp + 32]
         movaps  xmmword ptr [rsi], xmm0
         mov     rax, rsi
-        add     rsp, 64
+        add     rsp, 48
         pop     rsi
         ret
```

The signed case being correct is apparently due to a special
windows-specific path being chosen. The unsigned version bailed out too
early. So, I've changed `LowerUINT_TO_FP` to be more like
`LowerSINT_TO_FP`. In particular this moves the "Bail out when we don't
have native conversion instructions." down a bit, so that
`LowerWin64_INT128_TO_FP` is actually used.

I've then also added some testing for win64 SSE. I'm not sure if the
other target features are as relevant but I can add those too if
helpful.

This was found by running the `rust-lang/compiler-builtins` tests with a
build that includes https://github.com/llvm/llvm-project/pull/204887.


  Commit: c5026e4e3332acf88bb304c37137bd247fa12b25
      https://github.com/llvm/llvm-project/commit/c5026e4e3332acf88bb304c37137bd247fa12b25
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Architecture/CMakeLists.txt
    A lldb/source/Plugins/Architecture/RISCV/ArchitectureRISCV.cpp
    A lldb/source/Plugins/Architecture/RISCV/ArchitectureRISCV.h
    A lldb/source/Plugins/Architecture/RISCV/CMakeLists.txt
    A lldb/unittests/Architecture/CMakeLists.txt
    A lldb/unittests/Architecture/RISCV/ArchitectureRISCVTest.cpp
    A lldb/unittests/Architecture/RISCV/CMakeLists.txt
    M lldb/unittests/CMakeLists.txt

  Log Message:
  -----------
  [RISCV][LLDB] Add RISC-V Architecture plugin for trap validation (#207675)

Add a minimal `RISC-V Architecture` plugin and implement
`IsValidTrapInstruction` for trap opcodes. The plugin recognizes riscv32
and riscv64 targets and validates 32-bit `EBREAK` and 16-bit `C.EBREAK`.

On RISC-V, `EBREAK` traps with the PC still pointing at the `EBREAK`
instruction. A plain continue resumes from that same PC and traps again.
This issue was found while trying to run the `TestBuiltinDebugTrap` test
case locally on a `RISC-V QEMU`.

Added a cpp unit test to verify the behaviour of
`IsValidTrapInstruction`. I've chosen to verify `EBREAK` on `riscv32`
and `C.EBREAK` on `riscv64` so that there is some coverage for both
targets.

Assisted by gpt-5.5


  Commit: 70646dd3eda3e64fc94b44d7403f946cd7455b92
      https://github.com/llvm/llvm-project/commit/70646dd3eda3e64fc94b44d7403f946cd7455b92
  Author: lianjinfeng2003 <101249452+mygitljf at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/AST/StmtPrinter.cpp
    M clang/unittests/AST/StmtPrinterTest.cpp
    M clang/unittests/AST/TypePrinterTest.cpp

  Log Message:
  -----------
  [clang][AST] Qualify DeclRefExpr printing (#206041)

I updated DeclRefExpr printing so fully-qualified printing consistently
uses declaration ownership rather than only the written qualifier. This
also preserves existing behavior for local names and cleaned parameter
names.
The added tests cover both the direct expression printer behavior and
the original type-printing scenario that exposed the missing
qualification.

Fixes #205925


  Commit: 64df722400e57118436776be2b897e70d12e8553
      https://github.com/llvm/llvm-project/commit/64df722400e57118436776be2b897e70d12e8553
  Author: walkerkd <keith.walker at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedC1Nano.td

  Log Message:
  -----------
  [AArch64] C1-Nano scheduler cleanup in preparation for SME [NFC] (#207738)

Change are in preparation for a forthcoming addition of SME to the
C1-Nano scheduling model. This is restructuring of the code which does
not involve the actual SME changes. By separating out these NFC changes
it will make review of the SME specific changes easier.

- Defined resource names to match the form now used in the C1-Ultra
scheduling model which has the throughput information on the end of the
name rather than in the middle:

    C1NanoWrite_1c_1r_2ALU => C1NanoWrite_1c_2ALU_1rc

- Moved definitions so that they more closely match the order they are
defined in the C1-Nano SWOG. This make it easier to match entries in the
code to the tables in the SWOG.

These changes also make the C1-Nano scheduling model more closely match
the forms and layout used in the C1-Ultra scheduling model.


  Commit: ff518705c4c5d1e6e7a94d6ab7819618708d5bcd
      https://github.com/llvm/llvm-project/commit/ff518705c4c5d1e6e7a94d6ab7819618708d5bcd
  Author: Chandana Mudda <quic_csinderi at quicinc.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonPatterns.td
    A llvm/test/CodeGen/Hexagon/sext-mul-splat-v2i16.ll

  Log Message:
  -----------
  [Hexagon] Optimize sext + mul pattern for splatted scalar sext i16 (#206893)

Extend the existing vmpyh pattern to handle the case where one operand
of a v2i32 nsw mul is a splatted scalar sext i16 value. When the splat
is hoisted out of a loop, it arrives as assertsext v2i32, i16 in the DAG
rather than sext v2i16. The existing pattern did not match this form,
causing the multiply to expand to two scalar mpyi instructions.

Add a PatFrag assertsext_v2i32_i16 to match assertsext nodes of type
v2i32 extended from i16, and two new patterns (both operand orderings)
that recover the v2i16 using A2_combine_ll before feeding into
M2_vmpy2s_s0.


  Commit: adc3969513100367bd4b2cf6add8935cd308432b
      https://github.com/llvm/llvm-project/commit/adc3969513100367bd4b2cf6add8935cd308432b
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  [AMDGPU] Use APFloat::getOne instead of parsing "1.0" (NFC) (#207916)


  Commit: 4e43cd6339934945e829ddc4ec3ef81c381a0423
      https://github.com/llvm/llvm-project/commit/4e43cd6339934945e829ddc4ec3ef81c381a0423
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/test/Transforms/LoopVectorize/RISCV/reductions.ll

  Log Message:
  -----------
  [LV][RISCV] Enable FSub reduction for scalable VFs (#207698)

#197134 introduced a change to FAdd reduction recognition, causing fsub
instructions to be classified as FSub reductions instead of FAdd
reductions. This patch fixes the regression by enabling FSub reduction
support for scalable VFs in TTI.


  Commit: ec9e62cb609a0382c817112e983c461827056dfd
      https://github.com/llvm/llvm-project/commit/ec9e62cb609a0382c817112e983c461827056dfd
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp

  Log Message:
  -----------
  [MLIR][XeGPU] Move arch-specific topology under uArch check (#207449)


  Commit: 503f0ca19cfcc9c0c88d6918939a2c0038ad0498
      https://github.com/llvm/llvm-project/commit/503f0ca19cfcc9c0c88d6918939a2c0038ad0498
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp

  Log Message:
  -----------
  [SPIR-V] Simplify and fix sign-extension bug in convertCharsToWord (#207769)


  Commit: 81e317971d50396fc68a602a505eb85572c51373
      https://github.com/llvm/llvm-project/commit/81e317971d50396fc68a602a505eb85572c51373
  Author: DaanishD20 <daanish.dhillip at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp

  Log Message:
  -----------
  [clang] Fix constant-evaluator crash on array new with no size (#207730)

An array new-expression whose bound is neither specified nor deducible
from its initializer (for example `new int[]()`) is ill-formed and is
already diagnosed by Sema with `error: cannot determine allocated array
size from initializer`. However, the constant evaluator still tried to
evaluate the recovery expression. In
`PointerExprEvaluator::VisitCXXNewExpr`
the array size is unavailable (`E->getArraySize()` is `nullopt`), so the
allocation fell through to the scalar-new path, producing an array
`APValue` stored under a scalar type. Reading that object later asserted
in `Type::castAsArrayTypeUnsafe()` (`isa<ArrayType>(CanonicalType)`)
from
`CheckEvaluationResult`.

This patch detects an array new-expression whose size could not be
determined and bails out of constant evaluation.

Fixes #200139


  Commit: d6a4a97cb7a198121e5058d6c4c6b4552259a79d
      https://github.com/llvm/llvm-project/commit/d6a4a97cb7a198121e5058d6c4c6b4552259a79d
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Remove dead helper `addStringImm(const StringRef &Str, IRBuilder<> &B, std::vector<Value *> &Args)` (#207923)

The helper was unused.


  Commit: ee2f8649c1be2702a79d2249d2e4f7a9befb115b
      https://github.com/llvm/llvm-project/commit/ee2f8649c1be2702a79d2249d2e4f7a9befb115b
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/early-exit-live-out.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses-i64-rv32.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses-i64-rv32.ll

  Log Message:
  -----------
  [RISCV] Fix interleaved + strided costs for e64 elements on rv32 (#207927)

This is the same fix as #176105 for interleaved + strided memory op
costs.

We currently compute the cost of interleaved + strided ops as N *
scalar element memory ops, but on rv32 the scalar memory access will
be on an illegal type for 64 bit elements, even with zve64x. Prevent
it from overcosting by just using TCC_Basic.


  Commit: 62cb33ee38d748e16e95bc6e90fa747ae7f6c49b
      https://github.com/llvm/llvm-project/commit/62cb33ee38d748e16e95bc6e90fa747ae7f6c49b
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h

  Log Message:
  -----------
  [RISCV] Enumerate all RecurKind cases in isLegalToVectorizeReduction. nfc (#207932)


  Commit: 5318bd4123261b716c8a0750076495b77e3614dc
      https://github.com/llvm/llvm-project/commit/5318bd4123261b716c8a0750076495b77e3614dc
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/include/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/include/llvm-libc-macros/sys-auxv-macros.h

  Log Message:
  -----------
  [libc] Add auxiliary vector and note macros to elf.h (#207914)

Added missing macros to elf.h:

* sys-auxv-macros.h: Added AT_RSEQ_FEATURE_SIZE and AT_RSEQ_ALIGN.
* elf.yaml: Added PT_AARCH64_MEMTAG_MTE, PN_XNUM, ELFCLASSNUM, EV_NUM,
and AT_* macros (via sys-auxv-macros.h). Also added NN_* and NT_* note
macros (including NT_FPREGSET and NT_SIGINFO) to match system headers.
* CMakeLists.txt: Added sys_auxv_macros dependency to elf target.

Assisted-by: Automated tooling, human reviewed.


  Commit: 6e0de1cea1c8c567304e5e539ba480cada3e28f5
      https://github.com/llvm/llvm-project/commit/6e0de1cea1c8c567304e5e539ba480cada3e28f5
  Author: Sergey Semenov <sergey.semenov at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libsycl/docs/index.rst
    M libsycl/include/sycl/__impl/async_handler.hpp
    M libsycl/include/sycl/__impl/detail/obj_utils.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    M libsycl/src/detail/offload/offload_topology.cpp
    M libsycl/src/detail/platform_impl.cpp
    M libsycl/src/detail/queue_impl.cpp
    M libsycl/src/detail/queue_impl.hpp
    M libsycl/src/queue.cpp
    A libsycl/test/usm/memcpy.cpp
    M libsycl/unittests/mock/helpers.cpp
    M libsycl/unittests/mock/helpers.hpp
    M libsycl/unittests/mock/mock.cpp
    M libsycl/unittests/queue/CMakeLists.txt
    A libsycl/unittests/queue/memcpy.cpp

  Log Message:
  -----------
  [libsycl] Implement memcpy API (#205369)


  Commit: fcd02ae7caf28f99357521cafaa6cc7be216ad02
      https://github.com/llvm/llvm-project/commit/fcd02ae7caf28f99357521cafaa6cc7be216ad02
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/test/Conversion/SPIRVToLLVM/control-flow-ops-to-llvm.mlir

  Log Message:
  -----------
  [mlir][SPIRVToLLVM] Add spirv.Unreachable to llvm.unreachable conversion (#207762)


  Commit: d8bc45049075791aa291ef0d6298061308506346
      https://github.com/llvm/llvm-project/commit/d8bc45049075791aa291ef0d6298061308506346
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Utility/LinuxSignals.cpp

  Log Message:
  -----------
  [lldb][Linux] Show si_addr for SIGBUS signals (#207718)

The general rule is if si_addr is the same as the PC, we don't show it
because it doesn't add any new information.

SIGBUS signals are caused by an instruction trying to do something, but
si_addr is not the address of the instruction. It's some virtual
address, which is the important bit so add it to the description.

https://man7.org/linux/man-pages/man7/signal.7.html
> SIGBUS <...> Bus error (bad memory access)

Before:
```
* thread #1, name = 'test.o', stop reason = signal SIGBUS: illegal address
  * frame #0: 0x0000aaaaaaaa0b80 test.o`main at test.c:42:13
```
After:
```
* thread #1, name = 'test.o', stop reason = signal SIGBUS: illegal address (fault address=0xfffff7ff6000)
  * frame #0: 0x0000aaaaaaaa0b80 test.o`main at test.c:42:13
```
I am not adding test cases for this because:
* They would be architecture specific.
* Reliably generating BUS_OBJERR seems difficult.
* Signal reporting has good coverage as it is, so we know that
si_code/si_addr are handled correctly.


  Commit: 3f3276ea30babdca38cbfa1188c3b8302819641f
      https://github.com/llvm/llvm-project/commit/3f3276ea30babdca38cbfa1188c3b8302819641f
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.h
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVMetadata.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Use `StringRef` by value (no `const`, no `&`) (#207940)

A `StringRef` is non-modifiable and it acts as a reference, so there is
no need to declare it as `const` nor `&`.

---------

Co-authored-by: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>


  Commit: 5aa3f7d5ca15ef942e2735555724a65358d0a30d
      https://github.com/llvm/llvm-project/commit/5aa3f7d5ca15ef942e2735555724a65358d0a30d
  Author: Amit Tiwari <amtiwari at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopDistribute.cpp
    M llvm/lib/Transforms/Scalar/LoopLoadElimination.cpp
    M llvm/lib/Transforms/Utils/LoopVersioning.cpp
    A llvm/test/Transforms/LoopDistribute/non-lcssa-input.ll
    A llvm/test/Transforms/LoopLoadElim/non-lcssa-input.ll

  Log Message:
  -----------
  [LLE][LoopDistribution][LoopVersioning] Form LCSSA at Caller Invoking LoopVersioning Utility (#202296)

LoopVersioning utility `versionLoop()` expects the input form to be
LCSSA. However, passes like Loop distribution, Loop-load-elimination,
may invoke versioning with a non-LCSSA IR. Versioning updates exit-block
PHIs to handle both the original loop and the cloned loop. However, a
raw non-LCSSA use in the exit block (such as `switch i1 %C`) still
points to the original loop’s `%C`. On the cloned-loop path, control
reaches the exit block without executing the original `%C`, resulting in
error: `Instruction does not dominate all uses!`.

The fix is to form LCSSA at the caller pass.


  Commit: d4cf0c375dadd830c27a2b16e0283c4e31beac1a
      https://github.com/llvm/llvm-project/commit/d4cf0c375dadd830c27a2b16e0283c4e31beac1a
  Author: David Green <david.green at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/GlobalISel/store-merging.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/store-wro-addressing-modes.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/subreg-copy.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/uaddo-8-16-bits.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/vararg.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/widen-narrow-tbz-tbnz.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/xro-addressing-mode-constant.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Update some tests to use concrete types. NFC (#207960)


  Commit: bc5d5f369d127f8b029a81e4fcd874d4b6454347
      https://github.com/llvm/llvm-project/commit/bc5d5f369d127f8b029a81e4fcd874d4b6454347
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/command-processor.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/float-loop-counter.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/std-namespace-modification.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/throwing-static-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-string-to-number-conversion.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl50-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/fio38-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/flp30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/new-delete-overloads.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-copyable-objects.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-setjmp-longjmp.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-variadic-functions.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/copy-constructor-mutates-argument.cpp

  Log Message:
  -----------
  [clang-tidy][docs] Update CERT links to current SEI URLs. NFC. (#207893)


  Commit: ac60c83fc60a86c01eaaafd82bb19bc41649bcfa
      https://github.com/llvm/llvm-project/commit/ac60c83fc60a86c01eaaafd82bb19bc41649bcfa
  Author: walkerkd <keith.walker at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-streaming-cme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Cortex/C1Ultra-sve-sme-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Inputs/streaming-cme-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Inputs/sve-sme-instructions.s

  Log Message:
  -----------
  [AArch64] llvm-mca C1-Ultra tests: SVE instructions added by SME when not streaming [NFC] (#207948)

In the C1-Ultra llvm-mca test, moves some instructions that were
incorrectly in the test file for "Instructions available with no SME but
will be sent to CME when in streaming SVE mode" into a file specifically
for instruction that are "SVE instructions added by SME and available
when not in Streaming SVE mode".

This is in preparation for forthcoming C1-Nano SME support to the
scheduling model that currently has no information about these
instruction due to lack of information in the C1-Nano SWOG.

This change is currently NFC because the C1-Ultra is still running the
the same tests, just from different test files.


  Commit: baddc8f7778881120a2a206de817454e13f762bc
      https://github.com/llvm/llvm-project/commit/baddc8f7778881120a2a206de817454e13f762bc
  Author: Ebuka Ezike <e_ezike at apple.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_args.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_commands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_cwd.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_debuggerRoot.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_disableSTDIO.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_array.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_object.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_console.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_launch_commands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_launch_commands_and_console.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_program.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_no_lldbinit_flag.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_disabled.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_enabled.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_sourcePath.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection_and_console.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stopOnEntry.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_terminate_commands.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_termination.py
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_version.py
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp

  Log Message:
  -----------
  [lldb-dap] Migrate DAP launch tests (#207023)

Migrate all the tests in `lldb-dap/launch` base directory only. Fixes
any grammar if needed.


  Commit: 7b4fd8762aa76e8b256afb51043a1508af2646fe
      https://github.com/llvm/llvm-project/commit/7b4fd8762aa76e8b256afb51043a1508af2646fe
  Author: Connector Switch <c8ef at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv

  Log Message:
  -----------
  [libc++] Mark LWG3585 as resolved (#207717)

- Close: https://github.com/llvm/llvm-project/issues/104934.
- Commit:
https://github.com/llvm/llvm-project/commit/0d3d8de014f1012dd0b2c2c077099cf6face44e5
- Test:
https://github.com/llvm/llvm-project/blob/52271a5c11f6abde1fa1221db304212b5eb8ec7c/libcxx/test/std/utilities/variant/variant.variant/variant.assign/copy.pass.cpp#L29-L34


  Commit: 38a4eef07180d1d9a3216a7ea9d71c50ee4f3c0e
      https://github.com/llvm/llvm-project/commit/38a4eef07180d1d9a3216a7ea9d71c50ee4f3c0e
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions-pei.mir
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll

  Log Message:
  -----------
  [AMDGPU] Save entry EXEC in whole-wave prologue with no WWM spills (#207924)

PR #207781 replaced the prologue S_XOR_SAVEEXEC (which set EXEC to
~entryEXEC) with a plain S_MOV EXEC, -1, but dropped the save of the
entry EXEC that the return restores from, leaving an undefined register
read

se S_OR_SAVEEXEC to both save entry EXEC and set EXEC to -1


  Commit: 4db63ee847f2a9154a9869da51a8c575eb123923
      https://github.com/llvm/llvm-project/commit/4db63ee847f2a9154a9869da51a8c575eb123923
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/inet-address-macros.h
    M libc/include/arpa/inet.yaml
    M libc/src/__support/net/CMakeLists.txt
    M libc/src/__support/net/address.cpp
    M libc/src/__support/net/address.h
    M libc/src/arpa/inet/CMakeLists.txt
    A libc/src/arpa/inet/inet_ntop.cpp
    A libc/src/arpa/inet/inet_ntop.h
    M libc/test/src/arpa/inet/CMakeLists.txt
    A libc/test/src/arpa/inet/inet_ntop_test.cpp

  Log Message:
  -----------
  [libc] Add inet_ntop (#204143)

The function converts from IPv4/6 addresses to their string forms. The
complication comes from the v6 part due to address compression and
v4-mapping.

The traditional implementation of this is to sprintf the address into a
temporary buffer. We cannot do that here due to the ban on calling other
entry points. Using the lower-level constructs is possible, but a
straight forward application of IntegerToString does not result in
particularly impressive performance: 50%-100% slower than what's in this
patch (and slower than glibc). It also doesn't make the code much
smaller as the majority of it is dedicated to v6 compression.

The IPv6 implementation uses a temporary buffer, but it also has a
fast-path which skips the buffer if its size is guaranteed to be
sufficient. The IPv4 implementation also has a fast path, but the
fallback here is to compute the precise length of the string instead
(the buffer option was slower and IPv4 makes it easier to compute the
precise length).

The v6 compression code is unrolled to make it easier to optimize. While
it is possible to write a single printing loop that handles all cases,
its branchiness does not make it amenable for optimization.

The resulting function is faster than its glibc counterpart, though the
exact ratio varies depending on the input:
- random IPv4: 15% faster
- random IPv6: 6% faster
- "::": 50% faster


  Commit: de348bcd5f7898dc7478fed6bbd95c97a1848d98
      https://github.com/llvm/llvm-project/commit/de348bcd5f7898dc7478fed6bbd95c97a1848d98
  Author: Andrei Golubev <andrey.golubev at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/MLProgram/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp

  Log Message:
  -----------
  [NFC][mlir][bufferization] Align alloc/memcpy/cast options hooks to the rest (#206966)

There are three hooks that have a different, more complicated API than
the other ones: allocationFn, memCpyFn, castFn. All three are called via
"helper" functions that check whether the hooks are set to call them and
fall back to default implementations otherwise.

Other hooks (e.g. unknownTypeConverterFn) in the bufferization options
have a different "API": they are always set to some default
implementation and can be overwritten by the user. This is a simpler API
overall and seems it can be universal.

Note for LLVM integration: BufferizationOptions::{createAlloc,
createMemCpy, createCast} functions are "replaced" with direct calls to
the underlying std::function objects. At any call-site that relied on
any of the removed APIs, a call to the respective hook should now be
used instead. The exception is the `allocationFn` hook which needs an
explicit "bufferAlignment" parameter. Beforehand, it was implicitly
taken from BufferizationOptions::bufferAlignment field, so a
non-functional migration path is to go from
`options.createAlloc(builder, loc, destType, value)` to
`options.allocationFn(builder, loc, destType, value,
options.bufferAlignment)`.


  Commit: 8f7019acdd29270a0a51006a6cbdb43d6844dd20
      https://github.com/llvm/llvm-project/commit/8f7019acdd29270a0a51006a6cbdb43d6844dd20
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/test/AST/ByteCode/typeid.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix getting typeid pointers of struct fields (#207946)

`getDeclPtr()` will return the declaration pointer, which might be
unrelated to the pointer we actually care about.


  Commit: f8defb1033fefe4a62e2f71540e3bea16c20e09f
      https://github.com/llvm/llvm-project/commit/f8defb1033fefe4a62e2f71540e3bea16c20e09f
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Remove dead helper `buildOpMemberDecorate(Register, MachineInstr &, ...)` (#207952)

Another dead helper.


  Commit: b4c4fd9ee380b00000ab3fd6e71f9a8c807fb96a
      https://github.com/llvm/llvm-project/commit/b4c4fd9ee380b00000ab3fd6e71f9a8c807fb96a
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h

  Log Message:
  -----------
  [NFC][SPIRV] Make `getVacantFunctionName` static (#207954)

The function is only used inside `SPIRVUtils.cpp`.


  Commit: 12c36c7abb1600638d976258c1c0d3517df59226
      https://github.com/llvm/llvm-project/commit/12c36c7abb1600638d976258c1c0d3517df59226
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/net_if_macros.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/struct_ifreq.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/linux/CMakeLists.txt
    A libc/include/llvm-libc-macros/linux/net-if-macros.h
    A libc/include/llvm-libc-macros/net-if-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/struct_ifreq.h
    A libc/include/net/if.yaml
    M libc/src/CMakeLists.txt
    A libc/src/net/CMakeLists.txt
    A libc/src/net/if_indextoname.h
    A libc/src/net/if_nametoindex.h
    A libc/src/net/linux/CMakeLists.txt
    A libc/src/net/linux/if_indextoname.cpp
    A libc/src/net/linux/if_nametoindex.cpp
    M libc/test/src/CMakeLists.txt
    A libc/test/src/net/CMakeLists.txt
    A libc/test/src/net/linux/CMakeLists.txt
    A libc/test/src/net/linux/if_indextoname_test.cpp
    A libc/test/src/net/linux/if_nametoindex_test.cpp

  Log Message:
  -----------
  [libc] Implement if_nametoindex and if_indextoname (#206082)

This patch implements if_nametoindex and if_indextoname for Linux.

Both functions work by creating a temporary AF_UNIX socket and issuing
ioctl calls (SIOCGIFINDEX and SIOCGIFNAME, respectively).

The main implementation details:
- for if_nametoindex, I check that the interface name fits within
IF_NAMESIZE before issuing the ioctl
- for if_indextoname, if the kernel returns ENODEV for an unknown index,
I map it to ENXIO to comply with POSIX requirements
- added the definition of struct ifreq to support these operations.
Similar to the other net structure definitions, I'm using an anonymous
union to avoid #defining members.

Assisted by Gemini.


  Commit: 149e219bf87f31f0a209037e52b0412d0e8cb5a8
      https://github.com/llvm/llvm-project/commit/149e219bf87f31f0a209037e52b0412d0e8cb5a8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ByteCode/cxx2a.cpp

  Log Message:
  -----------
  [clang][bytecode] Add more checks for pseudo dtors (#207959)

Rename the `EndLifetimePop` op (which was only used for pseudo dtors) to
`PseudoDtor` and call `checkDestructor()` in there, so we get the full
suite of checks.


  Commit: 5506a59c7ff2a3a066d1ec6c3fb0ce69754923d4
      https://github.com/llvm/llvm-project/commit/5506a59c7ff2a3a066d1ec6c3fb0ce69754923d4
  Author: fengfeng <153487255+fengfeng09 at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/StraightLineStrengthReduce.cpp
    M llvm/test/CodeGen/AMDGPU/asyncmark-gfx12plus.ll
    M llvm/test/CodeGen/AMDGPU/barrier-signal-wait-latency.ll
    M llvm/test/Transforms/StraightLineStrengthReduce/NVPTX/slsr-var-delta.ll
    A llvm/test/Transforms/StraightLineStrengthReduce/slsr-gep-sext-wrap.ll

  Log Message:
  -----------
  [SLSR] Fix slsr gep stride delta miscompile (#204278)

Signed-off-by: feng.feng <feng.feng at iluvatar.com>


  Commit: 132aa1fcb68f5bedc9e15d47a2d90b06ebf7727b
      https://github.com/llvm/llvm-project/commit/132aa1fcb68f5bedc9e15d47a2d90b06ebf7727b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCKernelDescriptor.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/lds-dma-workgroup-release.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-av-none.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-local.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-cluster.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir
    M llvm/test/CodeGen/AMDGPU/tgsplit.ll
    M llvm/test/MC/AMDGPU/hsa-tg-split.s

  Log Message:
  -----------
  AMDGPU: Replace tgsplit subtarget feature with attribute (#204216)

This is a per-entrypoint property and has a corresponding
assembler directive, so it should not be baked into the
subtarget. I couldn't find much documentation on what this
actually does, so the description isn't great.

Fixes #204149

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


  Commit: 8c97a2edd20343c7729f76f7b119e024eb6530cc
      https://github.com/llvm/llvm-project/commit/8c97a2edd20343c7729f76f7b119e024eb6530cc
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/PCH/dllexport-ctor-closure-copy.cpp

  Log Message:
  -----------
  [Clang] Fix null-pointer assertion reading CtorClosureDefaultArgs (#207917)

BuildCtorClosureDefaultArgs deliberately leaves the first default-arg
slot null for MS ABI copy-constructor closures (the closure itself
supplies that argument), and ASTWriterDecl.cpp serializes the null. But
e7924d50db0a deserialized it with cast<>, which asserts on null. This
only triggers under the MS C++ ABI, e.g. when throwing a class with a
non-trivial copy constructor by value across a PCH boundary, as in test

https://github.com/intel/llvm/blob/cb9b7b7/clang-tools-extra/clangd/test/sycl.test

Assisted by: Claude


  Commit: e16f4895b18d4bac812326416dbb774d5b4162ad
      https://github.com/llvm/llvm-project/commit/e16f4895b18d4bac812326416dbb774d5b4162ad
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    A llvm/test/CodeGen/SPIRV/malformed-mangled-builtin-name.ll

  Log Message:
  -----------
  [SPIR-V] Avoid crash on malformed mangled builtin name length (#207939)

Replace the assert on invalid length parsing with a graceful bail-out
since malformed names can potentially come from outside, it is not
necessarily always an error

All usages of `getOclOrSpirvBuiltinDemangledName` are being checked for
emptiness where it is needed anyway


  Commit: d8a9bfb0b39d2d331bd6e587016c779552caaffc
      https://github.com/llvm/llvm-project/commit/d8a9bfb0b39d2d331bd6e587016c779552caaffc
  Author: ayrai-gb <ayrai at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    M llvm/test/CodeGen/X86/asm-modifier.ll

  Log Message:
  -----------
  [X86] Fix inline asm modifier printing across dialects (#204558)

X86AsmPrinter handles several inline asm operand modifiers differently
depending on whether the asm block uses AT&T or Intel syntax.

For `%a` and `%A`, the scalar/register operand path used AT&T
punctuation unconditionally. In Intel-dialect inline asm this could
print invalid forms such as `(rdi)` for an address operand or `*rdi` for
an indirect call operand.

For `%P`, `PrintAsmMemoryOperand` passed `"disp-only"` to both the Intel
and AT&T memory printers, but only the Intel path honored it for
global/symbol displacements with a base register. The AT&T path could
therefore print `g(%rdi)` even though `%P` requested displacement-only
output.

Make the affected X86 asm-printer paths dialect-aware/consistent:
- print Intel `%a` register operands as `[reg]`
- print Intel `%A` register operands without AT&T `*`
- make AT&T `%P` honor `"disp-only"` for global/symbol displacements,
matching the existing Intel behavior

Found via @jlebar's X86 LLVM bug-hunt / FuzzX effort.

cc @jlebar

Co-authored-by: Ayush Rai <your-email at amd.com>


  Commit: 670c3c0adc6487654d0fd857e6666fe5576f5a68
      https://github.com/llvm/llvm-project/commit/670c3c0adc6487654d0fd857e6666fe5576f5a68
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M orc-rt/CMakeLists.txt

  Log Message:
  -----------
  [orc-rt] Fix indentation in CMakeLists.txt. NFC. (#207980)


  Commit: 17d7bf22294173609c3a711a223713780055ed66
      https://github.com/llvm/llvm-project/commit/17d7bf22294173609c3a711a223713780055ed66
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Try to avoid temporaries in (compound) assignments (#207652)

This is only needed if the RHS has side-effects. If we can easily and
cheaply prove that it doesn't, avoid the temporary variable. This saves
memory and is slightly faster.


  Commit: 7cb8692cc1455e983bdd7312d3bcc2f2f5222760
      https://github.com/llvm/llvm-project/commit/7cb8692cc1455e983bdd7312d3bcc2f2f5222760
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

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

  Log Message:
  -----------
  [AArch64] Select SVE2 multiply-add long from mull and add/sub (#207951)

Both multiple-add long and multiple long are part of SVE2.


  Commit: e0093262487e101d3c13773bf313cd3641544cd8
      https://github.com/llvm/llvm-project/commit/e0093262487e101d3c13773bf313cd3641544cd8
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/ARM/ARMInstrInfo.td
    M llvm/lib/Target/ARM/ARMInstrThumb2.td
    M llvm/test/CodeGen/ARM/atomic-ops-v8.ll
    A llvm/test/CodeGen/ARM/cmn-shift.ll
    M llvm/test/CodeGen/ARM/cmp-peephole.ll
    M llvm/test/CodeGen/ARM/umulo-32.ll
    M llvm/test/CodeGen/Thumb2/LowOverheadLoops/reductions.ll

  Log Message:
  -----------
  [ARM] Swap sides of cmp/cmn based on folding ability (#191915)

If we can fold lsl, lsr, rotr, or asr into the right side of the
compare, we should do so.


  Commit: 9588dfe546b81a76a79c571ca0740cab494ff707
      https://github.com/llvm/llvm-project/commit/9588dfe546b81a76a79c571ca0740cab494ff707
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/select-abs-positive-mul.ll

  Log Message:
  -----------
  [InstCombine] Recognize abs through positive-K nsw multiply. (#207539)

Generalize matchSelectPattern to also consider multiplies that do not
change sign when trying to from llvm.abs.

End-to-end, this allows vectorizing with narrower element types for code
such as below. This triggers in some ffmpeg kernels on AArch64.

```
  void scaled_absdiff_u8(uint8_t * __restrict out,
                         const uint8_t * __restrict a,
                         const uint8_t * __restrict b,
                         size_t n) {
    for (size_t i = 0; i < n; ++i) {
      int32_t d = 4 * ((int32_t)a[i] - (int32_t)b[i]);
      if (d < 0) d = -d;
      if (d > 255) d = 255;
      out[i] = (uint8_t)d;
    }
  }
```

Alive2 proof:
 * Mul - https://alive2.llvm.org/ce/z/pGYQ36
 * Shl - https://alive2.llvm.org/ce/z/WBU2mw

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


  Commit: 0d9f3f41d6a45e0673c04a01e64d24a76ccffe60
      https://github.com/llvm/llvm-project/commit/0d9f3f41d6a45e0673c04a01e64d24a76ccffe60
  Author: David Truby <david.truby at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M openmp/runtime/cmake/arm64x.cmake
    M openmp/runtime/src/CMakeLists.txt

  Log Message:
  -----------
  [openmp][arm64ec] Fix arm64x when PER_TARGET_RUNTIME_DIR=On (#207747)

This patch fixes an issue where the combination of LIBOMP_ENABLE_ARM64X
and LLVM_PER_TARGET_RUNTIME_DIR=On led to only the arm64 library being
installed. With this fix, the arm64ec and arm64 .lib files are both
installed, and the arm64x dll is the one installed to the binary dir.


  Commit: 884d9277e89834a9a76a8891de6624c791e5ee08
      https://github.com/llvm/llvm-project/commit/884d9277e89834a9a76a8891de6624c791e5ee08
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/docs/PDB/MsfFile.rst

  Log Message:
  -----------
  [docs][pdb] Fix description of FileMagic (#207972)

There are no spaces around the slash:

https://github.com/microsoft/microsoft-pdb/blob/master/PDB/msf/msf.cpp#L962

Fixes #158492


  Commit: d847e2f19b7dfb63c4f73fefcc69cf328b9c18d7
      https://github.com/llvm/llvm-project/commit/d847e2f19b7dfb63c4f73fefcc69cf328b9c18d7
  Author: Cyrus Ding <91178148+dingcyrus at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/IdentifierTable.h

  Log Message:
  -----------
  [Clang] Renumber TokenKey enum values to close gap left by KEYNOZOS removal (#207906)

The previous commit (#207132) removed the unused KEYNOZOS flag
(0x4000000) but left a gap between KEYZOS (0x2000000) and KEYHLSL
(0x8000000). This patch renumbers the subsequent TokenKey values to
close the gap:

  KEYHLSL:       0x8000000  -> 0x4000000
  KEYFIXEDPOINT: 0x10000000 -> 0x8000000
  KEYDEFERTS:    0x20000000 -> 0x10000000
  KEYNOHLSL:     0x40000000 -> 0x20000000

The ~0x4000000u exclusion in KEYALL and the associated reserved-bit
comment are removed, since the renumbering eliminates the orphaned bit.

This is a follow-up to #207132, as suggested by @perry-ca.

AI assistance was used for code review analysis and CI failure
debugging.

Co-authored-by: Chenguang Ding <dingchenguang at kylinos.cn>


  Commit: 91578461e8a112941afeed18679efb168b81f796
      https://github.com/llvm/llvm-project/commit/91578461e8a112941afeed18679efb168b81f796
  Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    A clang/test/CodeGen/builtin-cpu-is-cputype.c
    A clang/test/CodeGen/builtin-cpu-is-subtype.c
    A clang/test/CodeGen/builtin-cpu-is-vendor.c
    R clang/test/CodeGen/builtin-cpu-is.c
    A clang/test/CodeGen/builtin-cpu-supports-all.c
    M compiler-rt/lib/builtins/cpu_model/x86.c
    M llvm/include/llvm/TargetParser/X86TargetParser.def
    M llvm/include/llvm/TargetParser/X86TargetParser.h
    M llvm/lib/TargetParser/X86TargetParser.cpp

  Log Message:
  -----------
  [X86] Sync compiler-rt cpu subtypes and vendors with libgcc and refactor internal cpu type tables in LLVM (#171172)

This is a continuation of previous PR:
https://github.com/llvm/llvm-project/pull/168750

compiler-rt was synced with libgcc on ProcessorVendor and
ProcessorSubtype fields and so was llvm. Cpu type, subtype and vendor
entries in X86TargetParser.def were refactored to use ABI_VALUE.

LLVM doesn't set the ABI_VALUE for its enums -- clang now takes care of
that by reading the ABI_VALUE.

I've removed and added some comments to better explain what is going on.

While at it, I've added tests to check that right values are passed for
vendor, subtypes, types and features (the last ones weren't added in
feature sync PR: https://github.com/llvm/llvm-project/pull/168750)

Parts of the PR (test) have been realized using Claude Code


  Commit: 5343b204252d7bf5bdfcacd664e78e9f7f9fd745
      https://github.com/llvm/llvm-project/commit/5343b204252d7bf5bdfcacd664e78e9f7f9fd745
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxxabi/src/CMakeLists.txt

  Log Message:
  -----------
  [libcxxabi] Don't enable -fvisibility=hidden on Windows (#207943)

This option is supported (and hence gets added by the
target_add_compile_flags_if_supported function) on Windows, but if using
dllexport, there's no point in using hidden visibility. (However if
building both static and shared libraries at the same time, it could be
beneficial to have hidden visibilty in the static libraries.)

In asserts enabled builds of Clang, building with -fvisibility=hidden
caused errors like this:

    dllexport GlobalValue must have default or protected visibility
    ptr @_ZTIv
    [...]
    fatal error: error in backend: Broken module found, compilation aborted!

Normally, combining -fvisibility=hidden with dllexport is not a problem,
but specifically for `__cxxabiv1:: __fundamental_type_info` it does make
Clang trigger an inconsistency, visible in asserts enabled builds of
Clang - see https://github.com/llvm/llvm-project/issues/207963.

This fixes Windows builds with Clang with asserts enabled, after
cb942d009a5ed029ce20d9b75b3604f551f0cb56.


  Commit: 849d90b64e2a91892d45d2fa75f405fa075d3c3d
      https://github.com/llvm/llvm-project/commit/849d90b64e2a91892d45d2fa75f405fa075d3c3d
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaType.cpp
    M clang/test/C/C23/n3007.c
    M clang/test/Parser/c2x-auto.c

  Log Message:
  -----------
  [C23] Allow deducing restrict and _Atomic qualifiers (#207994)

We were limiting the logic to __auto_type when it should apply to auto
as well.

Fixes #207466


  Commit: 980f51a9b264a836b1a145366f17cd1b6d843f7c
      https://github.com/llvm/llvm-project/commit/980f51a9b264a836b1a145366f17cd1b6d843f7c
  Author: Tomohiro Kashiwada <kikairoya at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonPostRAHandleQFP.cpp

  Log Message:
  -----------
  [Hexagon] Don't use reserved identifiers (#207967)

All identifiers that begin with an underscore followed by a capital
letter or by another underscore are reserved.


  Commit: 90dd76bf36f5d8c5ab4dccabee444229e461e7be
      https://github.com/llvm/llvm-project/commit/90dd76bf36f5d8c5ab4dccabee444229e461e7be
  Author: Barbara Mitic <bmitic at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/float-to-arbitrary-fp.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/idot4u.ll
    M llvm/test/CodeGen/AMDGPU/idot8s.ll
    M llvm/test/CodeGen/AMDGPU/idot8u.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.make.buffer.rsrc.ll
    A llvm/test/CodeGen/AMDGPU/pack-half-to-lshl-or.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll

  Log Message:
  -----------
  [AMDGPU] Select the high-half 16-bit packing idiom to v_lshl_or_b32 (#206058)

The (hi << 16) | z high-half packing idiom is not fused by the existing
(or (shl x, y), z) selection. By the time it reaches ISel the DAG
combiner has rewritten (ext i16) << 16 into bitcast(build_vector (i16
0), hi), so there is no shl node left to match and the build_vector and
or are selected separately.

Add ISel patterns that match the build_vector form directly. On the
non-real-true16 path the high-half source is a VGPR_32, so fold into
v_lshl_or_b32. On the real-true16 path the high-half source is a VGPR_16
and 16-bit ops are native, so OR it into the high half of the other
operand with v_or_b16 and assemble the result with a REG_SEQUENCE.

Co-authored-by: Barbara Mitic <Barbara.Mitic at amd.com>


  Commit: 0ac35389e9d47fb9aa2934cbfab274aa69d05317
      https://github.com/llvm/llvm-project/commit/0ac35389e9d47fb9aa2934cbfab274aa69d05317
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx2a.cpp
    M clang/test/CXX/dcl.decl/dcl.init/dcl.init.general/p16-cxx20.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix `getDynamicDecl()` wrt. multiple base classes (#207722)

The previous code did not consider that the base class we're getting
might not be on the path from `TypePtr` to `TypePtr.stripBaseCasts()` at
all, because of multiple bases.


  Commit: 9f4c43747f86f29efa397ad7f172d21dee5ecbe1
      https://github.com/llvm/llvm-project/commit/9f4c43747f86f29efa397ad7f172d21dee5ecbe1
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/invalid-addrspacecast.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/strict_fsub.f64.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Fix orphaned SDAG/GISEL check prefixes in tests (#207964)


  Commit: 5db2a39854f32632fb406b1b25a4b0df4842630e
      https://github.com/llvm/llvm-project/commit/5db2a39854f32632fb406b1b25a4b0df4842630e
  Author: unexpectedlydefined <91391114+unexpectedlydefined at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/test/tools/llvm-dwarfdump/X86/coverage.test
    M llvm/tools/llvm-dwarfdump/CMakeLists.txt
    M llvm/tools/llvm-dwarfdump/Coverage.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
    M llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h

  Log Message:
  -----------
  Reapply: [llvm-dwarfdump][LineCov 3/3] Add IR analysis for variable coverage (#207974)

Reapplies 5f4940ef. The original patch caused failures on buildbots due to
adding uses of functions defined in LLVMCore and LLVMIRReader without
adding those libraries to the dwarfdump link components.

Patch 3 of 3 to add to llvm-dwarfdump the ability to measure DWARF
coverage of local variables in terms of source lines, as discussed in
this RFC:
https://discourse.llvm.org/t/rfc-debug-info-coverage-tool-v2/83266

This patch adds an IR-level analysis in order to more accurately compute
the defined ranges for each variable. This avoids the problem of the
more naïve approach relying on source scopes, which overcounts as
coverable those lines where the variable is not yet defined (e.g. stack
variables).

The IR analysis requires IR to be provided to llvm-dwarfdump as a
separate `--variable-coverage-bitcode-file` argument (either textual IR
or bitcode; can be produced by various means e.g. `--save-temps
--emit-llvm`, `-ffat-lto-objects`,
[wllvm](https://github.com/travitch/whole-program-llvm)). The
recommended way to obtain a whole-program bitcode file is to use wllvm
as follows:
```sh
$ export LLVM_COMPILER=clang
$ CC=wllvm make  # build as usual, but replace clang/clang++ with wllvm/wllvm++
$ extract-bc binfile  # produces binfile.bc, which can be passed to llvm-dwarfdump
```


  Commit: 17c9f2ea943cb65e1afd02d60c67f7928c9b36c2
      https://github.com/llvm/llvm-project/commit/17c9f2ea943cb65e1afd02d60c67f7928c9b36c2
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/semanticly-same.ll

  Log Message:
  -----------
  [SLP][NFC]Add a new test for fadd/fsub combination, NFC



Reviewers: 

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


  Commit: d1cd1de72a8f88c3b44c2eacb18146ffd3adee2e
      https://github.com/llvm/llvm-project/commit/d1cd1de72a8f88c3b44c2eacb18146ffd3adee2e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    A llvm/test/CodeGen/X86/apx/peephole-fold-subreg-tied-copy.mir

  Log Message:
  -----------
  X86: Fix mishandling subregisters in ndd memory fold (#207997)

Defends against regressions in a future change.


  Commit: 3c7727f1269e5986915aacf4ee1ae117843bd573
      https://github.com/llvm/llvm-project/commit/3c7727f1269e5986915aacf4ee1ae117843bd573
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/src/spawn/linux/CMakeLists.txt
    M libc/src/spawn/linux/posix_spawn.cpp

  Log Message:
  -----------
  [libc] Use the dup2 syscall wrapper in posix_spawn (#207879)

posix_spawn's local dup2 helper fell back to a bare dup3 on targets
without SYS_dup2. dup3 fails with EINVAL when oldfd == newfd, where dup2
must instead return oldfd if it is valid, so
posix_spawn_file_actions_adddup2 with equal fds misbehaved on those
targets. linux_syscalls::dup2 already implements the correct fallback,
so call it directly and drop the local helper.


  Commit: e16c737a52fa9c5144299282f4da519e898af2a5
      https://github.com/llvm/llvm-project/commit/e16c737a52fa9c5144299282f4da519e898af2a5
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    A llvm/test/CodeGen/SPIRV/instructions/phi-aggregate-call.ll
    A llvm/test/CodeGen/SPIRV/instructions/phi-aggregate-with-overflow-zeroinitializer.ll
    A llvm/test/CodeGen/SPIRV/instructions/phi-aggregate-with-overflow.ll
    A llvm/test/CodeGen/SPIRV/instructions/select-freeze-aggregate-with-overflow.ll

  Log Message:
  -----------
  [SPIRV] Expand aggregate instructions with mutated-type uses (#206835)

This is a workaround for the problem in GH issue
https://github.com/llvm/llvm-project/issues/203586.

The problem is that we need to mutate aggregate-typed PHI nodes to
`i32`, however that means all incoming values need to have a matching
type, but we can't always easily mutate the incoming types to i32, as in
the case in the GH issue with a math intrinsic that returns a struct
by-value.

We do the same mutation for some other cases like `freeze`, the
workaround is the same.

The workaround is to expand the incoming values to a form that will also
be mutated to i32 so the types match. An example transformation is
below:

Before
```
...
bb1:                                              ; preds = %entry
  %0 = call { i64, i1 } @llvm.usub.with.overflow.i64(i64 %a, i64 %b)
  br label %epilog
...
  %2 = phi { i64, i1 } [ %1, %bb0 ], [ %0, %bb1 ]
```

After
```
...
bb1:                                              ; preds = %entry
  %0 = call { i64, i1 } @llvm.usub.with.overflow.i64(i64 %a, i64 %b)
  %1 = extractvalue { i64, i1 } %0, 0
  %2 = insertvalue { i64, i1 } poison, i64 %1, 0
  %3 = extractvalue { i64, i1 } %0, 1
  %4 = insertvalue { i64, i1 } %2, i1 %3, 1
  br label %epilog
...
  %10 = phi { i64, i1 } [ %9, %bb0 ], [ %4, %bb1 ]
```

`insertvalue` get replaced with a SPIR-V intrinsic later in the pass
which is also type-mutated, so the IR is correct:

```
...
bb1:                                              ; preds = %entry
  %0 = call { i64, i1 } @llvm.usub.with.overflow.i64(i64 %a, i64 %b)
  call void @llvm.spv.value.md(metadata !0)
  call void (...) @llvm.fake.use({ i64, i1 } %0)
  %1 = extractvalue { i64, i1 } %0, 0
  call void @llvm.spv.assign.type.i64(i64 %1, metadata i64 poison)
  call void @llvm.spv.assign.type.i32(i32 undef, metadata { i64, i1 } poison)
  %2 = call i32 (i32, i64, ...) @llvm.spv.insertv.i64(i32 undef, i64 %1, i32 0)
  call void @llvm.spv.assign.type.i32(i32 %2, metadata { i64, i1 } poison)
  %3 = extractvalue { i64, i1 } %0, 1
  call void @llvm.spv.assign.type.i1(i1 %3, metadata i1 poison)
  %4 = call i32 (i32, i1, ...) @llvm.spv.insertv.i1(i32 %2, i1 %3, i32 1)
  call void @llvm.spv.assign.type.i32(i32 %4, metadata { i64, i1 } poison)
  br label %epilog
...
  %10 = phi i32 [ %9, %bb0 ], [ %4, %bb1 ]
```

This is the simplest change I could come up with, my other ideas were
much more complicated and/or risky.

This fix is important for us because this pattern comes up in libc's
implementation on FMA, so this is blocking SPIR-V libc support.

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

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply at anthropic.com>

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: cb668bb3632d06bbcd736ec8999811c8b6b06dd5
      https://github.com/llvm/llvm-project/commit/cb668bb3632d06bbcd736ec8999811c8b6b06dd5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    A llvm/test/CodeGen/SPIRV/capability-Int64Atomics-weak-cmpxchg.ll

  Log Message:
  -----------
  [SPIR-V] Add missing Int64Atomics requirement for OpAtomicCompareExchangeWeak (#207965)


  Commit: 250a554f05e54f2bf4f2c2ba736ed2e06429aba2
      https://github.com/llvm/llvm-project/commit/250a554f05e54f2bf4f2c2ba736ed2e06429aba2
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-cmpeq.ll

  Log Message:
  -----------
  [AArch64][InstCombine] Fold xor(cmpeq, pg) to cmpne (#207759)

Extend the existing xor(cmpne(pg, lhs, rhs), pg) fold to also handle
cmpeq to cmpne


  Commit: 999b3cfbe21747aa952f79814e7dfd1a7b3fd891
      https://github.com/llvm/llvm-project/commit/999b3cfbe21747aa952f79814e7dfd1a7b3fd891
  Author: Ankit Kumar Tiwari <141545455+ankit-cybertron at users.noreply.github.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/RISCV/rvv/fold-binary-reduce.ll
    A llvm/test/CodeGen/RISCV/rvv/vecreduce-add-constant-fold.ll

  Log Message:
  -----------
  [SelectionDAG] Fold VECREDUCE_ADD of a constant BUILD_VECTOR (#207560)

This PR implements constant folding for ISD::VECREDUCE_ADD when the
input is a BUILD_VECTOR of integer constants. The fold computes the sum
at compile time using APInt arithmetic and returns a folded constant
scalar, instead of emitting real vector materialization and reduction
instructions for a value that's already known.

Folding is skipped if any element is undef or opaque, since the result
can't be assumed at compile time in that case.

Fixes #206743


  Commit: 047b145c0cfe2ebcf73694f0ab39a0fc11dc9d09
      https://github.com/llvm/llvm-project/commit/047b145c0cfe2ebcf73694f0ab39a0fc11dc9d09
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/shared/builtins.h
    A libc/shared/builtins/mulsf3.h
    M libc/src/__support/builtins/CMakeLists.txt
    A libc/src/__support/builtins/mulsf3.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_builtins_test.cpp

  Log Message:
  -----------
  [libc] add shared mulsf3 builtin (#205678)

Re-exposes LLVM-libc's `__mulsf3` as `shared::mulsf3` for reuse by
compiler-rt's builtins.

Stacked change - merge these first:
- #200094
- #205669
- #205670
- #205671
- #205672
- #205673
- #205674
- #205675
- #205676
- #205677

Part of #197824


  Commit: 2f7a3a032cb0ff5347135c59914733fc04b20d35
      https://github.com/llvm/llvm-project/commit/2f7a3a032cb0ff5347135c59914733fc04b20d35
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/signed_arithmetic_overflow.ll

  Log Message:
  -----------
  [SPIR-V] Fix crash on direct aggregate return of an intrinsic call result (#206491)


  Commit: 012523d96b30a9a6d7148825fe307919a9c4753c
      https://github.com/llvm/llvm-project/commit/012523d96b30a9a6d7148825fe307919a9c4753c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll

  Log Message:
  -----------
  [VPlan] Support VPInstruction for intrinsic calls in live-in folding. (#207836)

Use getIntrinsicID in getOpcodeOrIntrinsicID. This enables constant
folding for VPInstructions calling intrinsics.

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


  Commit: 3a6d3f77960b4dded18d15e28eaa3f953be18faa
      https://github.com/llvm/llvm-project/commit/3a6d3f77960b4dded18d15e28eaa3f953be18faa
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
    M mlir/test/Target/LLVMIR/Import/intrinsic.ll
    M mlir/test/Target/LLVMIR/llvmir-intrinsics.mlir

  Log Message:
  -----------
  [mlir][LLVM] Add arithmetic fence intrinsic op (#207975)

Add a generated LLVM dialect op for llvm.arithmetic.fence, including
LLVM IR import and export coverage for scalar and vector floating-point
forms.

Assisted-by: Codex


  Commit: 43ccdbc84774da0ae4cb5131f2245a9633d977b9
      https://github.com/llvm/llvm-project/commit/43ccdbc84774da0ae4cb5131f2245a9633d977b9
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/FIRToSCF.cpp
    M flang/test/Fir/FirToSCF/do-loop.fir

  Log Message:
  -----------
  [FIRToSCF] propagate acc.par_dims during fir.do_loop conversion (#207973)

Copy any OpenACC parallel dimensions from the fir.do_loop to the scf op


  Commit: 35db7fd565138b4756193b36750f052e27359baf
      https://github.com/llvm/llvm-project/commit/35db7fd565138b4756193b36750f052e27359baf
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/add.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/addo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_optimizations_mul_one.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_udec_wrap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_uinc_wrap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/bitcast_38_i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-structurizer.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i128.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.i8.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/extractelement.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fabs.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.gfx.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fneg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fpext.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/implicit-kernarg-backend-usage-global-isel.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-copy-scc-vcc.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/lds-global-value.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.scale.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.2darraymsaa.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.load.3d.a16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.store.2d.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.update.dpp.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.atomic.cmpxchg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-unaligned.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-uniform-in-vgpr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mad.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mubuf-global.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/or.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbanklegalize-amdgcn.s.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sdivrem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/strict_fma.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/subo.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/udivrem.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/widen-i8-i16-scalar-loads.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w32-imm.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/wmma-gfx12-w64-imm.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomic-cmpxchg.ll
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/a-v-global-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/abi-attribute-hints-undefined-behavior.ll
    M llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/add.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-reuse-writes.mir
    M llvm/test/CodeGen/AMDGPU/agpr-copy-sgpr-no-vgprs.mir
    M llvm/test/CodeGen/AMDGPU/agpr-csr.ll
    M llvm/test/CodeGen/AMDGPU/always-uniform.ll
    M llvm/test/CodeGen/AMDGPU/amd.endpgm.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.ptr.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-cc.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-cs-chain-preserve-cc.ll
    M llvm/test/CodeGen/AMDGPU/and.ll
    M llvm/test/CodeGen/AMDGPU/andorn2.ll
    M llvm/test/CodeGen/AMDGPU/any_extend_vector_inreg.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_local_pointer.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw_usub_cond.ll
    M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
    M llvm/test/CodeGen/AMDGPU/bfi_int.ll
    M llvm/test/CodeGen/AMDGPU/bitreverse.ll
    M llvm/test/CodeGen/AMDGPU/blender-no-live-segment-at-def-implicit-def.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-usub_cond.ll
    M llvm/test/CodeGen/AMDGPU/buffer-rsrc-ptr-ops.ll
    M llvm/test/CodeGen/AMDGPU/build_vector.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/carryout-selection.ll
    M llvm/test/CodeGen/AMDGPU/cluster_stores.ll
    M llvm/test/CodeGen/AMDGPU/codegen-prepare-addrspacecast-non-null.ll
    M llvm/test/CodeGen/AMDGPU/collapse-endcf.ll
    M llvm/test/CodeGen/AMDGPU/copy-overlap-sgpr-kill.mir
    M llvm/test/CodeGen/AMDGPU/copy-overlap-vgpr-kill.mir
    M llvm/test/CodeGen/AMDGPU/copy-phys-reg-implicit-operand-kills-subregs.mir
    M llvm/test/CodeGen/AMDGPU/copy_phys_vgpr64.mir
    M llvm/test/CodeGen/AMDGPU/ctlz.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_poison.ll
    M llvm/test/CodeGen/AMDGPU/ctpop64.ll
    M llvm/test/CodeGen/AMDGPU/cttz.ll
    M llvm/test/CodeGen/AMDGPU/cttz_zero_poison.ll
    M llvm/test/CodeGen/AMDGPU/d16-write-vgpr32.ll
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/ds_read2.ll
    M llvm/test/CodeGen/AMDGPU/ds_write2.ll
    M llvm/test/CodeGen/AMDGPU/ds_write2_a_v.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_elt-i8.ll
    M llvm/test/CodeGen/AMDGPU/fabs.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fabs.ll
    M llvm/test/CodeGen/AMDGPU/fast-unaligned-load-store.global.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
    M llvm/test/CodeGen/AMDGPU/fceil64.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f64.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.ll
    M llvm/test/CodeGen/AMDGPU/fence-lds-read2-write2.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i32_system.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_noprivate.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system.ll
    M llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system_noprivate.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/fmaxnum.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum.ll
    M llvm/test/CodeGen/AMDGPU/fminnum.ll
    M llvm/test/CodeGen/AMDGPU/fmul-2-combine-multi-use.ll
    M llvm/test/CodeGen/AMDGPU/fnearbyint.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.f64.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fneg.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg.ll
    M llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp_to_uint.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/fshl.ll
    M llvm/test/CodeGen/AMDGPU/fshr.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-return-types.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i32_system.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_i64_system.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/identical-subrange-spill-infloop.ll
    M llvm/test/CodeGen/AMDGPU/implicit-kernarg-backend-usage.ll
    M llvm/test/CodeGen/AMDGPU/indirect-addressing-si.ll
    M llvm/test/CodeGen/AMDGPU/insert-waitcnts-merge.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_dynelt.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.ll
    M llvm/test/CodeGen/AMDGPU/issue130120-eliminate-frame-index.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/kernel-args.ll
    M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.av.load.b128.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.av.store.b128.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.bvh8_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.pkrtz.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scalef32.pk.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ds.bpermute.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.exp.simple.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.init.whole.wave-w64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.inverse.ballot.i64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx942.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.pops.exiting.wave.id.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.quadmask.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readfirstlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.readlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.barrier.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx11.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.gfx12.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sendmsg.rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.load.format.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1250.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.imm.gfx1251.w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.writelane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.round.f64.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-f64.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i1.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i32.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i64.ll
    M llvm/test/CodeGen/AMDGPU/load-constant-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-global-f32.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i16.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i8.ll
    M llvm/test/CodeGen/AMDGPU/load-select-ptr.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
    M llvm/test/CodeGen/AMDGPU/lower-work-group-id-intrinsics-hsa.ll
    M llvm/test/CodeGen/AMDGPU/mad_64_32.ll
    M llvm/test/CodeGen/AMDGPU/max-hard-clause-length.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-crash-issue63986.ll
    M llvm/test/CodeGen/AMDGPU/memcpy-libcall.ll
    M llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
    M llvm/test/CodeGen/AMDGPU/memmove-var-size.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-single-wave-workgroup-memops.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-store-infinite-loop.ll
    M llvm/test/CodeGen/AMDGPU/memory_clause.ll
    M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
    M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/min.ll
    M llvm/test/CodeGen/AMDGPU/module-lds-false-sharing.ll
    M llvm/test/CodeGen/AMDGPU/no-folding-imm-to-inst-with-fi.ll
    M llvm/test/CodeGen/AMDGPU/optimize-negated-cond.ll
    M llvm/test/CodeGen/AMDGPU/or.ll
    M llvm/test/CodeGen/AMDGPU/packed-fp64.ll
    M llvm/test/CodeGen/AMDGPU/packed-u64.ll
    M llvm/test/CodeGen/AMDGPU/pal-simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/promote-alloca-vector-dynamic-idx-bitcasts-llc.ll
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/ptradd-sdag.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/rotl.ll
    M llvm/test/CodeGen/AMDGPU/rotr.ll
    M llvm/test/CodeGen/AMDGPU/sad.ll
    M llvm/test/CodeGen/AMDGPU/saddo.ll
    M llvm/test/CodeGen/AMDGPU/sdiv64.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-phys-copy.mir
    M llvm/test/CodeGen/AMDGPU/sgpr-spill-update-only-slot-indexes.ll
    M llvm/test/CodeGen/AMDGPU/shift-and-i128-ubfe.ll
    M llvm/test/CodeGen/AMDGPU/shift-and-i64-ubfe.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/sign_extend.ll
    M llvm/test/CodeGen/AMDGPU/siloadstoreopt-misaligned-regsequence.ll
    M llvm/test/CodeGen/AMDGPU/simple-indirect-call.ll
    M llvm/test/CodeGen/AMDGPU/sint_to_fp.f64.ll
    M llvm/test/CodeGen/AMDGPU/smfmac_no_agprs.ll
    M llvm/test/CodeGen/AMDGPU/sminmax.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr.ll
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll
    M llvm/test/CodeGen/AMDGPU/splitkit-getsubrangeformask-phi-extend.ll
    M llvm/test/CodeGen/AMDGPU/srem.ll
    M llvm/test/CodeGen/AMDGPU/srem64.ll
    M llvm/test/CodeGen/AMDGPU/ssubo.ll
    M llvm/test/CodeGen/AMDGPU/stack-pointer-offset-relative-frameindex.ll
    M llvm/test/CodeGen/AMDGPU/stacksave_stackrestore.ll
    M llvm/test/CodeGen/AMDGPU/store-local.128.ll
    M llvm/test/CodeGen/AMDGPU/store-weird-sizes.ll
    M llvm/test/CodeGen/AMDGPU/structurize-hoist.ll
    M llvm/test/CodeGen/AMDGPU/sub.ll
    M llvm/test/CodeGen/AMDGPU/subreg-coalescer-undef-use.ll
    M llvm/test/CodeGen/AMDGPU/swdev380865.ll
    M llvm/test/CodeGen/AMDGPU/trap-abis.ll
    M llvm/test/CodeGen/AMDGPU/trunc.ll
    M llvm/test/CodeGen/AMDGPU/uaddo.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv64.ll
    M llvm/test/CodeGen/AMDGPU/udivrem.ll
    M llvm/test/CodeGen/AMDGPU/uint_to_fp.f64.ll
    M llvm/test/CodeGen/AMDGPU/umin-sub-to-usubo-select-combine.ll
    M llvm/test/CodeGen/AMDGPU/unspill-vgpr-after-rewrite-vgpr-mfma.ll
    M llvm/test/CodeGen/AMDGPU/urem64.ll
    M llvm/test/CodeGen/AMDGPU/usubo.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/v_sat_pk_u8_i16.ll
    M llvm/test/CodeGen/AMDGPU/valu-i1.ll
    M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-mark-last-scratch-load.ll
    M llvm/test/CodeGen/AMDGPU/wave32.ll
    M llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll
    M llvm/test/CodeGen/AMDGPU/wwm-reserved.ll
    M llvm/test/CodeGen/AMDGPU/xor.ll

  Log Message:
  -----------
  [AMDGPU] Stop adding implicit def of superreg in copyPhysReg (#125255)

Previously when copyPhysReg expanded a COPY into multiple MOV
instructions it added an implicit def of the destination superreg to the
first MOV. Removing these does not cause any liveness verification
problems and still passes Vulkan CTS for correctness testing.


  Commit: 863be135eb5261fc85007492a5f26de926802a81
      https://github.com/llvm/llvm-project/commit/863be135eb5261fc85007492a5f26de926802a81
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/src/stdio/printf_core/float_hex_converter.h

  Log Message:
  -----------
  [libc] Fix build failure with ASSUME_ROUND_NEAREST_ONLY (#207991)

Commit 03c62ca40d19ba0 moved some local variables of
`convert_float_hex_exp` into a struct called `properties`, but didn't
edit the #ifdef branch for `LIBC_MATH_HAS_ASSUME_ROUND_NEAREST_ONLY`, so
builds with that definition failed.


  Commit: 5ee85101a70dd2628d5b65a6a8a1e5d697d6c757
      https://github.com/llvm/llvm-project/commit/5ee85101a70dd2628d5b65a6a8a1e5d697d6c757
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll

  Log Message:
  -----------
  [SLP][NFC]Add tests with mul to shl transformations, NFC



Reviewers: 

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


  Commit: 31fc40b0904861d33b926dfd6ea04432e7690c49
      https://github.com/llvm/llvm-project/commit/31fc40b0904861d33b926dfd6ea04432e7690c49
  Author: Benjamin Luke <benjamin.luke at sony.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/X86/mmx-inline-asm-error.c
    A clang/test/CodeGen/target-avx-abi-diag-knr.c
    M clang/test/CodeGen/target-builtin-error-3.c
    M clang/test/CodeGen/target-features-error-2.c
    A clang/test/CodeGenCXX/target-avx-abi-diag.cpp
    M libcxx/include/__algorithm/simd_utils.h

  Log Message:
  -----------
  [clang][X86] Emit AVX level mismatch psABI warnings on function definitions (#199091)

Emit -WpsABI for x86_64 function definitions whose return type or
parameter type uses a vector wider than 128 bits without the required
ABI feature enabled. 256-bit vectors require avx, and 512-bit vectors
require avx512f.

Previously this diagnostic was only emitted at call sites, so
definitions with wide vector signatures could be introduced without a
warning until they were called. Use the function feature map so
attribute(target("avx/avx512f")) definitions are accepted, and emit no
warnings for prototype-only declarations.


  Commit: e702ecb84930e1d7d8ed1869c713566de2262a63
      https://github.com/llvm/llvm-project/commit/e702ecb84930e1d7d8ed1869c713566de2262a63
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    R llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll

  Log Message:
  -----------
  Revert "[SLP][NFC]Add tests with mul to shl transformations, NFC"

This reverts commit 5ee85101a70dd2628d5b65a6a8a1e5d697d6c757, incorrect
checks in the test

Reviewers: 

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


  Commit: e390e6b7a64353c72dbe1ff3f4bd3382412daca5
      https://github.com/llvm/llvm-project/commit/e390e6b7a64353c72dbe1ff3f4bd3382412daca5
  Author: sohail <sohailraj.satapathy at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libc/docs/headers/stdfix.rst
    R libc/src/stdfix/bitusk.cpp
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/IdivFxTest.h
    R libc/test/src/stdfix/IdivTest.h
    M libc/test/src/stdfix/idivk_test.cpp
    M libc/test/src/stdfix/idivlk_test.cpp
    M libc/test/src/stdfix/idivlr_test.cpp
    M libc/test/src/stdfix/idivr_test.cpp
    M libc/test/src/stdfix/idivuk_test.cpp
    M libc/test/src/stdfix/idivulk_test.cpp
    M libc/test/src/stdfix/idivulr_test.cpp
    M libc/test/src/stdfix/idivur_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Fix idiv* doc table, rename idivfx test helpers and remove duplicate bitsuk source (#206729)

Two small cleanups in libc/src/stdfix.

1. `idiv*` in `stdfix.rst` was marked as implemented for all 12 type
variants but only the 8 non-short width variants (ur, r, ulr, lr, uk, k,
ulk, lk) exist in the directory and are built. Updated the table to
match.
2. Removed `bitusk.cpp` which is an orphaned duplicate of `bitsuk.cpp`
with a typo in the file name. It isn't referenced in the CMakeLists.txt
and has no corresponding .h file.
3. Rename the idivfx test header and helpers.


  Commit: c1822d6104d7b2cb2093a5273d6ceccd9ebb2fb1
      https://github.com/llvm/llvm-project/commit/c1822d6104d7b2cb2093a5273d6ceccd9ebb2fb1
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaCXXScopeSpec.cpp

  Log Message:
  -----------
  [clang][Sema][NFC] Improve readability in `computeDeclContext` (#208010)

Split off from #190495.

Co-authored-by: Matheus Izvekov <mizvekov at gmail.com>


  Commit: 93ff6992c68766a1def33a8a074f9bce544fc102
      https://github.com/llvm/llvm-project/commit/93ff6992c68766a1def33a8a074f9bce544fc102
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll

  Log Message:
  -----------
  [SLP][NFC]Add tests with mul to shl transformations, NFC



Reviewers: 

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


  Commit: cde011852d0b7d08c820f7d623655e5f354a50c8
      https://github.com/llvm/llvm-project/commit/cde011852d0b7d08c820f7d623655e5f354a50c8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll

  Log Message:
  -----------
  [SLP] Drop nsw when mul by INT_MIN is converted to shl

mul nsw X, INT_MIN is valid, but shl X, BW-1 is not nsw-safe. Drop nsw on
the vector shl when a mul lane with INT_MIN is unified into shl during
opcode interchange.

Fixes #207990

Reviewers: 

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


  Commit: 94a8d4cbf13810e9f4fee03488312dee8869c074
      https://github.com/llvm/llvm-project/commit/94a8d4cbf13810e9f4fee03488312dee8869c074
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/test/CodeGen/AMDGPU/sched.barrier.inverted.mask.ll

  Log Message:
  -----------
  [AMDGPU] Clear DS aggregate in inverted sched_barrier mask when LDSDMA allowed (#207779)

The DS clause was missing the LDSDMA check that the VMEM clause has


  Commit: 6053d19eb3bc2391fcab76eb20a8ea0462568224
      https://github.com/llvm/llvm-project/commit/6053d19eb3bc2391fcab76eb20a8ea0462568224
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/avg.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/long-non-power-of-2.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/partial-vec-invalid-cost.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bad-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-postpone-for-dependency.ll
    M llvm/test/Transforms/SLPVectorizer/X86/buildvector-reused-with-bv-subvector.ll
    M llvm/test/Transforms/SLPVectorizer/X86/commutable-node-with-non-sched-parent.ll
    M llvm/test/Transforms/SLPVectorizer/X86/debug-info-salvage.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-power-of-2-subvectors-insert.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-parent-multi-copyables.ll
    M llvm/test/Transforms/SLPVectorizer/X86/recalc-copyable-operand-deps-shared-inst.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-ordered-values-update.ll

  Log Message:
  -----------
  [SLP] Retune look-ahead scores for constants

Rescale LookAheadHeuristics scores and add ScoreSameConstants /
ScoreConstantScaleFactor so identical constants no longer score the
same as same-opcode instruction matches, fixing suboptimal operand
reordering around repeated constants (shift amounts, splat values).
Also retry a SplitVectorize alt-shuffle build for copyable-element
bundles when scheduling fails, instead of always falling back to a
gather, to fix regressions.

Reviewers: hiraditya, bababuck, RKSimon

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


  Commit: a00f7be392d9468779af59d86bed12d17aa578c0
      https://github.com/llvm/llvm-project/commit/a00f7be392d9468779af59d86bed12d17aa578c0
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SLPVectorizer.h
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/vector-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/c-ray.ll
    M llvm/test/Transforms/SLPVectorizer/X86/delayed-gather-emission.ll
    M llvm/test/Transforms/SLPVectorizer/X86/poor-throughput-seeds.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction2.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec3-reorder-reshuffle.ll

  Log Message:
  -----------
  [SLP]Use poor-throughput instructions as vectorization seeds

Seed vectorization from expensive poor-throughput ops (fdiv/frem/fsqrt
and target-expensive calls) even when they do not feed a store or reduction.

Compile time effect https://llvm-compile-time-tracker.com/compare.php?from=8cdf6346f46c505928a9fb9d3ef9e8ce125a2108&to=27a3f0a5c0489c91bf386e480289fdcc9dc9c8b7&stat=instructions:u

These compile time regressions are the side effects of the vectorization
vectorization gains and cannot be reduced further (note Bullet).

Fixes #38780

Reviewers: hiraditya, bababuck, RKSimon

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


  Commit: 29f1a71a8d3f12232ccd53bca2442e35396a11a3
      https://github.com/llvm/llvm-project/commit/29f1a71a8d3f12232ccd53bca2442e35396a11a3
  Author: Aditya Medhane <sherlockedaditya at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M openmp/runtime/src/kmp_dispatch.h

  Log Message:
  -----------
  [OpenMP] Remove internal linkage from __kmp_wait template (NFC) (#207983)

__kmp_wait in kmp_dispatch.h is a static function template in a header,
so any TU that includes it without instantiating it trips
-Wunused-template (kmp_runtime.cpp, kmp_affinity.cpp, kmp_global.cpp,
kmp_settings.cpp). It is used by kmp_dispatch.cpp and
kmp_dispatch_hier.h. Drop static, which the comment above it already
suggests.

Part of #202945


  Commit: 72e1037c32e22759b682a0e973af6b95b0630a01
      https://github.com/llvm/llvm-project/commit/72e1037c32e22759b682a0e973af6b95b0630a01
  Author: AnthonyCalandraGeotab <anthonycalandra at geotab.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/include/__configuration/attributes.h
    M libcxx/include/__mutex/lock_guard.h
    M libcxx/include/__mutex/mutex.h
    M libcxx/include/mutex
    M libcxx/include/shared_mutex
    A libcxx/test/extensions/clang/thread/thread.mutex/thread_safety_scoped_lock.pass.cpp
    A libcxx/test/extensions/clang/thread/thread.mutex/thread_safety_scoped_lock.verify.cpp

  Log Message:
  -----------
  [libc++][ThreadSafety] Add thread safety annotations for variadic std::scoped_lock (#204462)

The thread safety annotations on std::scoped_lock were previously only
applied to the empty and single-mutex specializations. The general
variadic specialization carried no annotations, so -Wthread-safety
considered none of the mutexes held inside a multi-mutex scoped_lock
block and reported the guarded data accessed there as unprotected.

Now that Clang supports pack expansion inside thread safety attributes
(landed for Clang 21), annotate the variadic scoped_lock with
acquire_capability/requires_capability on its constructors,
release_capability on its destructor, and scoped_lockable on the class.

Fixes #42000.

Co-authored-by: Anthony Calandra <anthony at anthony-calandra.com>


  Commit: e4e2a9346b60e3805b63cec888f6de022db5b271
      https://github.com/llvm/llvm-project/commit/e4e2a9346b60e3805b63cec888f6de022db5b271
  Author: Jacob Crawley <jacob.crawley at arm.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/CodeGen/AArch64/sve-interleave-low-vf.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/first-order-recurrence.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/sve-interleave-low-vf-cost.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-access-low-vf.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll

  Log Message:
  -----------
  [AArch64][LV] Cost low-VF interleaved access (#205844)

Adds a case to getInterleavedMemoryOpCost to cost scalable interleaved
memory accesses where the interleave factor is larger than the VF.

Previously for these cases, memory operations would be costed as
individual gathers and scatters, which may result in the LoopVectorizer
choosing a wider VF than necessary.

This changes proposes an alternative approach of using a contiguous
load/store of the interleaved vector followed by shuffles to get
the elements into place.


  Commit: 1045d1ebca559d7e6dee49b002142e52bb61b49e
      https://github.com/llvm/llvm-project/commit/1045d1ebca559d7e6dee49b002142e52bb61b49e
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M libcxx/include/__ranges/zip_view.h
    M libcxx/test/libcxx/ranges/range.adaptors/range.zip.transform/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.zip/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range_adaptor_types.h

  Log Message:
  -----------
  [libc++][ranges] Applied `[[nodiscard]]` to `zip_view` (#207667)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.zip

Towards #172124


  Commit: 3046fb3de4b067179bcb8f933942aafea2c0d46f
      https://github.com/llvm/llvm-project/commit/3046fb3de4b067179bcb8f933942aafea2c0d46f
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    A offload/test/Inputs/declare-target-common-block-sub.f90
    A offload/test/offloading/fortran/declare-target-common-block-2.f90
    A offload/test/offloading/fortran/declare-target-common-block-main.f90

  Log Message:
  -----------
  [Flang][OpenMP][Offload] Add Flang offload tests for common block and declare target (#202949)

This PR adds a couple of tests revolving around the usage of common
block with declare target in Fortran OpenMP.


  Commit: 3b3f6b56dba47ce53afa6340b27355a94a483e8c
      https://github.com/llvm/llvm-project/commit/3b3f6b56dba47ce53afa6340b27355a94a483e8c
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp

  Log Message:
  -----------
  [AMDGPU] SIFoldOperands: Print instructions/operands in debug output (NFC) (#207945)

Print instructions/operands instead of their addresses in debug output.

---------

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


  Commit: da9377fad1764dd7f654676aba1fef49205ccc6d
      https://github.com/llvm/llvm-project/commit/da9377fad1764dd7f654676aba1fef49205ccc6d
  Author: UebelAndre <github at uebelandre.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M utils/bazel/MODULE.bazel
    M utils/bazel/MODULE.bazel.lock

  Log Message:
  -----------
  [bazel] Sort bazel_deps into 'compat floor' and 'latest' sections (#207605)

Some dependencies have big knock-on effects and to the benefit of
consumers should best be tracked as min-supported-version. This change
divides the `MODULE.bazel` file into two sections where one contains
known sensitive dependencies that should only be bumped as needed and
the second are flex dependencies that can freely be updated with minimal
impact to external consumers.


  Commit: 2bb0c2d1e86c6bd008c3dc23040fb9081289deff
      https://github.com/llvm/llvm-project/commit/2bb0c2d1e86c6bd008c3dc23040fb9081289deff
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp

  Log Message:
  -----------
  PPC: Use SmallVector for tracking operands instead of DenseMap (#208034)

This is just tracking registers by operand index, which doesn't
need a heavy map.


  Commit: 301060211315e9eadb39e17872c2b9d696d72fd6
      https://github.com/llvm/llvm-project/commit/301060211315e9eadb39e17872c2b9d696d72fd6
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp

  Log Message:
  -----------
  PPC: Fix querying TargetInstrInfo from PPCInstrInfo (#208030)


  Commit: 3a9778bbf2d78d95bd1d330390187922c6956c78
      https://github.com/llvm/llvm-project/commit/3a9778bbf2d78d95bd1d330390187922c6956c78
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/bindings/python/get-python-config.py

  Log Message:
  -----------
  Revert "[lldb] Change Python site-packages path" (#207910)

Reverts llvm/llvm-project#207771.

`/usr/lib/pythonN.M/site-packages` is a standard path that everyone uses
to install python modules on posix systems. There is no such thing as
`/usr/lib/site-packages`. This change breaks lldb packaging for Linux
distros.


  Commit: 17e8068444b58be6935b05200961c984e52989cb
      https://github.com/llvm/llvm-project/commit/17e8068444b58be6935b05200961c984e52989cb
  Author: Ivo Popov <popov.ivo at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/AST/ASTContext.cpp
    A clang/test/Modules/modules-using-enum-class-scope.cppm

  Log Message:
  -----------
  [clang][Modules] Support ODR merging of `UsingEnumDecl` (#207071)

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

`UsingEnumDecl` (representing C++20 `using enum` declarations)
was not handled in `ASTContext::isSameEntity`. 
Consequently, identical class definitions containing
a `using enum` statement failed to merge, resulting in spurious ODR
mismatch errors such as: `error: 'MyStruct::MyEnum' from module
'ModuleB' is not present in definition of 'MyStruct' in module
'ModuleA'`.

This patch implements merging support for `UsingEnumDecl` in
`ASTContext::isSameEntity` by comparing the nested-name-specifier
qualifiers and the underlying `EnumDecl` target.

---------

Co-authored-by: ipopov <ipopov at google.com>


  Commit: 87a5682c92f69c87704487670d49db4ca65db21c
      https://github.com/llvm/llvm-project/commit/87a5682c92f69c87704487670d49db4ca65db21c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll

  Log Message:
  -----------
  [SLP][NFC]Update test checks, add some more tests, NFC



Reviewers: 

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


  Commit: 221cd6295224c93bed2bdfcc113eba5b64325c06
      https://github.com/llvm/llvm-project/commit/221cd6295224c93bed2bdfcc113eba5b64325c06
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyRuntimeLibcallSignatures.cpp
    A llvm/test/CodeGen/WebAssembly/f128-minmax.ll

  Log Message:
  -----------
  [WebAssembly] support `f{min, max}imum.f128` and `f{min, max}imumnum.f128` (#207160)

fixes https://github.com/llvm/llvm-project/issues/207100

As far as I can see `wasi-libc` does not currently export the dedicated
libcalls, so I went with a custom expansion. It emits more code, but
will work without any linker errors etc.

The `long double` type is actually `f128` for webassembly, so at least
the libcalls should work.


  Commit: 24688c6a67dc5293c2e75ca9ec991dd0c2a23e59
      https://github.com/llvm/llvm-project/commit/24688c6a67dc5293c2e75ca9ec991dd0c2a23e59
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp

  Log Message:
  -----------
  PPC: Fix querying TargetRegisterInfo in PPCInstrInfo (#208031)

Use the direct PPCRegisterInfo member


  Commit: 9e22a5950e51ace7f50729d7f556ca99d06fa8bb
      https://github.com/llvm/llvm-project/commit/9e22a5950e51ace7f50729d7f556ca99d06fa8bb
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/Analysis/MemoryDependenceAnalysis.cpp
    M llvm/lib/Analysis/MemorySSA.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Analysis/MemorySSA/invariant-load-intrinsic.ll
    M llvm/test/Transforms/GVN/invariant-load-intrinsic.ll
    M llvm/test/Transforms/InstCombine/invariant-load-like-sink.ll
    M llvm/test/Transforms/Sink/invariant-load.ll
    A llvm/test/Verifier/invariant-load-metadata-invalid.ll

  Log Message:
  -----------
  [llvm] Support invariant.load on readonly intrinsics (#205916)

Update passes and analyses that look at invariant.load (ex. MemorySSA)
to also consider the possibility that `!invariant.load` may be present
on intrinsic calls.

Updates the verifier to indicate that `!invariant.load` is only legal
for loads and readonly intrinsics (and moves the definition of the
metadata out of the definition of `load`).

This has not been extended to arbitrary function calls since it's less
clear what the semantics of !invariant.load on them would be.
Furthermore, extension to read/write intrinsics like memcpy() is planned
as a followup.

This PR also deletes tests that were pre-committed in
https://github.com/llvm/llvm-project/pull/205894 but that become invalid
with the verifier changes in this PR

AI disclosure: I've reviewed the code but all the actual generation was
done by AI.

---------

Co-authored-by: Codex <codex at openai.com>


  Commit: dda9dc50945006189f5fabe08a165640c289f0e7
      https://github.com/llvm/llvm-project/commit/dda9dc50945006189f5fabe08a165640c289f0e7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M .github/workflows/libcxx-run-benchmarks.yml

  Log Message:
  -----------
  [libc++] Use a median-of-3 for the A/B comparison benchmarking job (#208023)

After a bit of testing, I think this provides a good tradeoff between
resource utilization and noise reduction. Furthermore, the comparison
script (which produces the output) will be augmented to surface the
variability of the results in a separate PR.


  Commit: 0fba09ca6c856f7ec043689c62198166a0b0321e
      https://github.com/llvm/llvm-project/commit/0fba09ca6c856f7ec043689c62198166a0b0321e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/ashr-main-opcode-copyables.ll

  Log Message:
  -----------
  [SLP][NFC]Add an extra test with ashr vectorization, NFC



Reviewers: 

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


  Commit: 100a1fb9d628dc9969ca8f7aef774f61e168f9e9
      https://github.com/llvm/llvm-project/commit/100a1fb9d628dc9969ca8f7aef774f61e168f9e9
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M flang/include/flang/Semantics/openmp-dsa.h
    M flang/lib/Semantics/openmp-dsa.cpp
    M flang/lib/Semantics/resolve-directives.cpp

  Log Message:
  -----------
  [flang][OpenMP][NFC] Share SetSymbolDSA between semantics and lowering (#207826)

Move the DSA helper from the private OmpAttributeVisitor::SetSymbolDSA
into the public openmp-dsa header next to GetSymbolDSA, and share the
DSA flag set through a single GetDataSharingAttributeFlags().

This lets an upcoming metadirective lowering change reuse the helper to
set the predetermined DSA of the loop induction variables of a selected
variant. A loop-associated variant is resolved during lowering, so the
usual semantic DSA resolution never runs on its loop nest and lowering
must set those flags itself.

Assisted with Copilot.


  Commit: 5da6b3c590792a069c40d8982c8b0fb3557f241a
      https://github.com/llvm/llvm-project/commit/5da6b3c590792a069c40d8982c8b0fb3557f241a
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-07 (Tue, 07 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Target/DynamicRegisterInfo.h
    M lldb/source/Target/DynamicRegisterInfo.cpp

  Log Message:
  -----------
  [lldb] DynamicRegisterInfo::Dump should take a Stream argument (#207863)

Otherwise, it creates its own Stream dumping to stdout.


  Commit: 6f470649ae324a56d5c9bbe3ad095f58b097d9af
      https://github.com/llvm/llvm-project/commit/6f470649ae324a56d5c9bbe3ad095f58b097d9af
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-08 (Wed, 08 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .ci/green-dragon/lldb-windows.groovy
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    R .github/workflows/libclang-python-tests.yml
    M .github/workflows/libcxx-run-benchmarks.yml
    M .github/workflows/merged-prs.yml
    M .github/workflows/new-prs.yml
    M .github/workflows/prune-branches.yml
    M .github/workflows/prune-unused-branches.py
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/subscriber.yml
    M .github/workflows/test-suite.yml
    M .github/workflows/test-suite/llvm.cmake
    M .gitignore
    M bolt/CMakeLists.txt
    M bolt/docs/BAT.md
    M bolt/docs/BinaryAnalysis.md
    A bolt/docs/GettingStarted.rst
    M bolt/docs/OptimizingClang.md
    M bolt/docs/PointerAuthDesign.md
    M bolt/docs/conf.py
    M bolt/docs/index.rst
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/BinarySection.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Core/Relocation.h
    M bolt/include/bolt/Passes/PatchEntries.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Passes/Aligner.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CacheMetrics.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/PatchEntries.cpp
    M bolt/lib/Passes/ProfileQualityStats.cpp
    M bolt/lib/Passes/ReorderAlgorithm.cpp
    M bolt/lib/Passes/RetpolineInsertion.cpp
    M bolt/lib/Passes/TailDuplication.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/runtime/common.h
    A bolt/test/AArch64/constant-island-reproducible.s
    M bolt/test/X86/icf-safe-icp.test
    M bolt/test/X86/icf-safe-test1.test
    M bolt/test/X86/icf-safe-test2GlobalConstPtrNoPic.test
    M bolt/test/X86/infer_no_exits.test
    M bolt/test/X86/patch-entries.test
    A bolt/test/X86/relr-odd-unaligned.c
    M bolt/test/eh-frame-hdr.test
    M bolt/unittests/Profile/PerfScripts.cpp
    M clang-tools-extra/clang-doc/CMakeLists.txt
    M clang-tools-extra/clang-doc/YAMLGenerator.cpp
    A clang-tools-extra/clang-doc/markdown/CMakeLists.txt
    A clang-tools-extra/clang-doc/markdown/Markdown.cpp
    A clang-tools-extra/clang-doc/markdown/Markdown.h
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.h
    M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnhandledCodePathsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnhandledCodePathsCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ExplicitConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.h
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    A clang-tools-extra/clang-tidy/readability/TrivialSwitchCheck.cpp
    A clang-tools-extra/clang-tidy/readability/TrivialSwitchCheck.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
    M clang-tools-extra/clang-tidy/utils/TypeTraits.h
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/AST.h
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeCompletionStrings.cpp
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang-tools-extra/clangd/IncludeFixer.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/ModulesBuilder.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/SymbolDocumentation.cpp
    M clang-tools-extra/clangd/SymbolDocumentation.h
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.h
    M clang-tools-extra/clangd/refactor/tweaks/DefineInline.cpp
    M clang-tools-extra/clangd/support/Markup.cpp
    M clang-tools-extra/clangd/support/Markup.h
    M clang-tools-extra/clangd/test/did-change-configuration-params.test
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/CodeCompletionStringsTests.cpp
    M clang-tools-extra/clangd/unittests/DiagnosticsTests.cpp
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/clangd/unittests/SemanticHighlightingTests.cpp
    M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/clangd/unittests/support/MarkupTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/assignment-in-selection-statement.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/command-processor.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-mutates-argument.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/default-operator-new-on-overaligned-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-copy-constructor-throws.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/float-loop-counter.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/random-generator-seed.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/raw-memory-call-on-non-trivial-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/reserved-identifier.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/signal-handler.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/spuriously-wake-up-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/std-namespace-modification.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/throwing-static-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-string-to-number-conversion.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-code-paths.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl50-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err60-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/fio38-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/flp30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc32-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/oop57-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/anonymous-namespace-in-header.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/new-delete-overloads.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-copyable-objects.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/predictable-rand.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/static-initialization-cycle.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-bind.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-setjmp-longjmp.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-variadic-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-override.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/trivial-switch.rst
    M clang-tools-extra/docs/conf.py
    M clang-tools-extra/modularize/PreprocessorTracker.cpp
    M clang-tools-extra/pp-trace/PPCallbacksTracker.cpp
    A clang-tools-extra/test/clang-doc/Inputs/DR-141990.cpp
    A clang-tools-extra/test/clang-doc/Inputs/array-type.cpp
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/database_template.json
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Rectangle.h
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/include/Shape.h
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Calculator.cpp
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Rectangle.cpp
    A clang-tools-extra/test/clang-doc/Inputs/builtin_types.cpp
    A clang-tools-extra/test/clang-doc/Inputs/class-partial-specialization.cpp
    A clang-tools-extra/test/clang-doc/Inputs/class-requires.cpp
    A clang-tools-extra/test/clang-doc/Inputs/class-specialization.cpp
    A clang-tools-extra/test/clang-doc/Inputs/class-template.cpp
    A clang-tools-extra/test/clang-doc/Inputs/class.cpp
    A clang-tools-extra/test/clang-doc/Inputs/comments-in-macros.cpp
    A clang-tools-extra/test/clang-doc/Inputs/compact.cpp
    A clang-tools-extra/test/clang-doc/Inputs/compound-constraints.cpp
    A clang-tools-extra/test/clang-doc/Inputs/concept.cpp
    A clang-tools-extra/test/clang-doc/Inputs/conversion_function.cpp
    M clang-tools-extra/test/clang-doc/Inputs/enum.cpp
    A clang-tools-extra/test/clang-doc/Inputs/function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/Inputs/function-requires.cpp
    A clang-tools-extra/test/clang-doc/Inputs/function-specifiers.cpp
    A clang-tools-extra/test/clang-doc/Inputs/index.cpp
    A clang-tools-extra/test/clang-doc/Inputs/inheritance.cpp
    A clang-tools-extra/test/clang-doc/Inputs/long-name.cpp
    A clang-tools-extra/test/clang-doc/Inputs/member-function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/Inputs/method-template.cpp
    A clang-tools-extra/test/clang-doc/Inputs/multiple-namespaces.cpp
    A clang-tools-extra/test/clang-doc/Inputs/mustache-index.cpp
    A clang-tools-extra/test/clang-doc/Inputs/mustache-separate-namespace.cpp
    A clang-tools-extra/test/clang-doc/Inputs/namespace-html-md.cpp
    A clang-tools-extra/test/clang-doc/Inputs/namespace.cpp
    A clang-tools-extra/test/clang-doc/Inputs/nested-namespace.cpp
    A clang-tools-extra/test/clang-doc/Inputs/nested-pointer-qualifiers.cpp
    A clang-tools-extra/test/clang-doc/Inputs/single-file-public.cpp
    A clang-tools-extra/test/clang-doc/Inputs/single-file.cpp
    A clang-tools-extra/test/clang-doc/Inputs/templates.cpp
    M clang-tools-extra/test/clang-doc/Inputs/test-assets/test.css
    M clang-tools-extra/test/clang-doc/Inputs/test-assets/test.js
    A clang-tools-extra/test/clang-doc/Inputs/typedef-alias.cpp
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/basic-project.test
    R clang-tools-extra/test/clang-doc/builtin_types.cpp
    R clang-tools-extra/test/clang-doc/comments-in-macros.cpp
    R clang-tools-extra/test/clang-doc/compact.cpp
    R clang-tools-extra/test/clang-doc/conversion_function.cpp
    R clang-tools-extra/test/clang-doc/enum.cpp
    A clang-tools-extra/test/clang-doc/html/array-type.cpp
    A clang-tools-extra/test/clang-doc/html/class-partial-specialization.cpp
    A clang-tools-extra/test/clang-doc/html/class-specialization.cpp
    A clang-tools-extra/test/clang-doc/html/class.cpp
    A clang-tools-extra/test/clang-doc/html/comments-in-macros.cpp
    A clang-tools-extra/test/clang-doc/html/compound-constraints.cpp
    A clang-tools-extra/test/clang-doc/html/conversion_function.cpp
    A clang-tools-extra/test/clang-doc/html/enum.cpp
    A clang-tools-extra/test/clang-doc/html/function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/html/index.cpp
    A clang-tools-extra/test/clang-doc/html/long-name.cpp
    A clang-tools-extra/test/clang-doc/html/member-function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/html/mustache-index.cpp
    A clang-tools-extra/test/clang-doc/html/mustache-separate-namespace.cpp
    A clang-tools-extra/test/clang-doc/html/namespace.cpp
    A clang-tools-extra/test/clang-doc/html/nested-pointer-qualifiers.cpp
    A clang-tools-extra/test/clang-doc/html/templates.cpp
    A clang-tools-extra/test/clang-doc/html/typedef-alias.cpp
    R clang-tools-extra/test/clang-doc/index.cpp
    A clang-tools-extra/test/clang-doc/json/array-type.cpp
    A clang-tools-extra/test/clang-doc/json/class-partial-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    A clang-tools-extra/test/clang-doc/json/compact.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    A clang-tools-extra/test/clang-doc/json/conversion_function.cpp
    A clang-tools-extra/test/clang-doc/json/enum.cpp
    A clang-tools-extra/test/clang-doc/json/function-pointer-type.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
    A clang-tools-extra/test/clang-doc/json/index.cpp
    M clang-tools-extra/test/clang-doc/json/inheritance.cpp
    A clang-tools-extra/test/clang-doc/json/long-name.cpp
    A clang-tools-extra/test/clang-doc/json/member-function-pointer-type.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
    A clang-tools-extra/test/clang-doc/json/nested-pointer-qualifiers.cpp
    A clang-tools-extra/test/clang-doc/json/templates.cpp
    R clang-tools-extra/test/clang-doc/long-name.cpp
    A clang-tools-extra/test/clang-doc/md/array-type.cpp
    A clang-tools-extra/test/clang-doc/md/builtin_types.cpp
    A clang-tools-extra/test/clang-doc/md/class-partial-specialization.cpp
    A clang-tools-extra/test/clang-doc/md/comments-in-macros.cpp
    A clang-tools-extra/test/clang-doc/md/enum.cpp
    A clang-tools-extra/test/clang-doc/md/function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/md/member-function-pointer-type.cpp
    A clang-tools-extra/test/clang-doc/md/namespace.cpp
    A clang-tools-extra/test/clang-doc/md/nested-pointer-qualifiers.cpp
    A clang-tools-extra/test/clang-doc/md/templates.cpp
    R clang-tools-extra/test/clang-doc/mustache-index.cpp
    R clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
    R clang-tools-extra/test/clang-doc/namespace.cpp
    R clang-tools-extra/test/clang-doc/single-file-public.cpp
    R clang-tools-extra/test/clang-doc/single-file.cpp
    R clang-tools-extra/test/clang-doc/templates.cpp
    R clang-tools-extra/test/clang-doc/typedef-alias.cpp
    A clang-tools-extra/test/clang-doc/yaml/builtin_types.cpp
    A clang-tools-extra/test/clang-doc/yaml/conversion_function.cpp
    A clang-tools-extra/test/clang-doc/yaml/single-file-public.cpp
    A clang-tools-extra/test/clang-doc/yaml/single-file.cpp
    A clang-tools-extra/test/clang-doc/yaml/templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/copy-constructor-mutates-argument.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-widening-cast-bitfield.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unhandled-code-paths.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/confusable-identifiers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-style-cast.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/type-traits-remove-cvref.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-virtual-and-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/trivial-switch.cpp
    M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
    A clang-tools-extra/unittests/clang-doc/MarkdownParserTest.cpp
    M clang-tools-extra/unittests/clang-tidy/CMakeLists.txt
    A clang-tools-extra/unittests/clang-tidy/TypeTraitsTest.cpp
    M clang/CMakeLists.txt
    M clang/bindings/python/tests/cindex/test_source_range.py
    M clang/bindings/python/tests/cindex/test_translation_unit.py
    A clang/docs/AddressSanitizer.md
    R clang/docs/AddressSanitizer.rst
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/ClangSYCLLinker.rst
    A clang/docs/ClangStaticAnalyzer.md
    R clang/docs/ClangStaticAnalyzer.rst
    M clang/docs/CommandGuide/clang.rst
    M clang/docs/ConstantInterpreter.rst
    A clang/docs/CrossCompilation.md
    R clang/docs/CrossCompilation.rst
    A clang/docs/DataFlowSanitizer.md
    R clang/docs/DataFlowSanitizer.rst
    A clang/docs/FunctionEffectAnalysis.md
    R clang/docs/FunctionEffectAnalysis.rst
    M clang/docs/HIPSupport.rst
    M clang/docs/InternalsManual.rst
    A clang/docs/LanguageExtensions.md
    R clang/docs/LanguageExtensions.rst
    A clang/docs/LeakSanitizer.md
    R clang/docs/LeakSanitizer.rst
    M clang/docs/LibASTMatchersReference.html
    A clang/docs/LifetimeSafety.md
    R clang/docs/LifetimeSafety.rst
    A clang/docs/MemorySanitizer.md
    R clang/docs/MemorySanitizer.rst
    A clang/docs/RealtimeSanitizer.md
    R clang/docs/RealtimeSanitizer.rst
    A clang/docs/ReleaseNotes.md
    R clang/docs/ReleaseNotes.rst
    M clang/docs/ReleaseNotesTemplate.txt
    A clang/docs/SafeBuffers.md
    R clang/docs/SafeBuffers.rst
    A clang/docs/SanitizerCoverage.md
    R clang/docs/SanitizerCoverage.rst
    A clang/docs/ScalableStaticAnalysis/developer-docs/ForceLinkerHeaders.rst
    A clang/docs/ScalableStaticAnalysis/developer-docs/HowToExtend.rst
    A clang/docs/ScalableStaticAnalysis/developer-docs/SummaryExtractionInternals.rst
    A clang/docs/ScalableStaticAnalysis/developer-docs/index.rst
    A clang/docs/ScalableStaticAnalysis/index.md
    A clang/docs/ScalableStaticAnalysis/user-docs/SummaryExtraction.rst
    R clang/docs/ScalableStaticAnalysisFramework/developer-docs/ForceLinkerHeaders.rst
    R clang/docs/ScalableStaticAnalysisFramework/developer-docs/HowToExtend.rst
    R clang/docs/ScalableStaticAnalysisFramework/developer-docs/SummaryExtractionInternals.rst
    R clang/docs/ScalableStaticAnalysisFramework/developer-docs/index.rst
    R clang/docs/ScalableStaticAnalysisFramework/index.rst
    R clang/docs/ScalableStaticAnalysisFramework/user-docs/SummaryExtraction.rst
    A clang/docs/ThreadSafetyAnalysis.md
    R clang/docs/ThreadSafetyAnalysis.rst
    A clang/docs/ThreadSanitizer.md
    R clang/docs/ThreadSanitizer.rst
    A clang/docs/Toolchain.md
    R clang/docs/Toolchain.rst
    A clang/docs/TypeSanitizer.md
    R clang/docs/TypeSanitizer.rst
    A clang/docs/UndefinedBehaviorSanitizer.md
    R clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.rst
    A clang/docs/WarningSuppressionMappings.md
    R clang/docs/WarningSuppressionMappings.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/conf.py
    R clang/docs/ghlinks.py
    M clang/docs/index.rst
    M clang/docs/tools/dump_ast_matchers.py
    M clang/include/clang/APINotes/APINotesManager.h
    M clang/include/clang/APINotes/APINotesReader.h
    M clang/include/clang/APINotes/APINotesWriter.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/Comment.h
    M clang/include/clang/AST/CommentLexer.h
    M clang/include/clang/AST/CommentSema.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/HLSLResource.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtVisitor.h
    A clang/include/clang/AST/SubobjectVisitor.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Analysis/Analyses/Dominators.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Analysis/CallGraph.h
    M clang/include/clang/Basic/AArch64CodeGenUtils.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/BuiltinHeaders.def
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAArch64NeonSVEBridge.def
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/BuiltinsAMDGPUDocs.td
    M clang/include/clang/Basic/BuiltinsRISCV.td
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/BuiltinsX86_64.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/Diagnostic.td
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticOptions.def
    M clang/include/clang/Basic/DiagnosticOptions.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/OffloadArch.h
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/SourceManager.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Basic/riscv_sifive_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/CIR/CIRToCIRPasses.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/CMakeLists.txt
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIREnumAttr.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/LoweringHelpers.h
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/CodeGen/ModuleBuilder.h
    M clang/include/clang/DependencyScanning/DependencyActionController.h
    M clang/include/clang/Driver/Action.h
    M clang/include/clang/Driver/Compilation.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/Job.h
    M clang/include/clang/Driver/OffloadBundler.h
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Frontend/FrontendOptions.h
    A clang/include/clang/Frontend/SSAFOptions.h
    M clang/include/clang/Lex/LiteralSupport.h
    M clang/include/clang/Lex/MultipleIncludeOpt.h
    M clang/include/clang/Lex/Preprocessor.h
    A clang/include/clang/Lex/TextEncoding.h
    M clang/include/clang/Options/FlangOptions.td
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/CMakeLists.txt
    M clang/include/clang/Parse/Parser.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphSummary.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
    A clang/include/clang/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
    A clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
    A clang/include/clang/ScalableStaticAnalysis/Core/ASTEntityMapping.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/EntitySummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/LUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchSharedLibrary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/MultiArchStaticLibrary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/BuildNamespace.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityId.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityIdTable.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityLinkage.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/EntityName.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/PrivateFieldNames.def
    A clang/include/clang/ScalableStaticAnalysis/Core/Model/SummaryName.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/JSONFormat.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormat.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryData.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilder.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataStore.h
    A clang/include/clang/ScalableStaticAnalysis/Core/SummaryData/SummaryDataTraits.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Support/ErrorBuilder.h
    A clang/include/clang/ScalableStaticAnalysis/Core/Support/FormatProviders.h
    A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/EntitySummary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.h
    A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummary.h
    A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.h
    A clang/include/clang/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisBase.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisResult.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisTraits.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/DerivedAnalysis.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/SummaryAnalysis.h
    A clang/include/clang/ScalableStaticAnalysis/Core/WholeProgramAnalysis/WPASuite.h
    A clang/include/clang/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.h
    A clang/include/clang/ScalableStaticAnalysis/SSAFBuiltinForceLinker.h
    A clang/include/clang/ScalableStaticAnalysis/SSAFForceLinker.h
    A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/SourceEditEmitter.h
    A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformation.h
    A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.h
    A clang/include/clang/ScalableStaticAnalysis/SourceTransformation/TransformationReportEmitter.h
    A clang/include/clang/ScalableStaticAnalysis/Tool/Utils.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphSummary.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.h
    R clang/include/clang/ScalableStaticAnalysisFramework/BuiltinAnchorSources.def
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/EntitySummaryEncoding.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummary.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/LUSummaryEncoding.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/EntityLinker/TUSummaryEncoding.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityId.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/EntityName.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/PrivateFieldNames.def
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Model/SummaryName.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormat.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryData.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilder.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataStore.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataTraits.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/Support/FormatProviders.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/EntitySummary.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummary.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisBase.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisResult.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisTraits.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/DerivedAnalysis.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/SummaryAnalysis.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/WPASuite.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SSAFBuiltinForceLinker.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SSAFForceLinker.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/SourceEditEmitter.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/Transformation.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.h
    R clang/include/clang/ScalableStaticAnalysisFramework/SourceTransformation/TransformationReportEmitter.h
    R clang/include/clang/ScalableStaticAnalysisFramework/Tool/Utils.h
    M clang/include/clang/Sema/AnalysisBasedWarnings.h
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Sema/Designator.h
    M clang/include/clang/Sema/Initialization.h
    M clang/include/clang/Sema/MultiplexExternalSemaSource.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaOpenCL.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/CMakeLists.txt
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/Analyses.def
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
    M clang/include/clang/Support/Compiler.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    M clang/include/clang/Testing/TestLanguage.def
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesFormat.h
    M clang/lib/APINotes/APINotesManager.cpp
    M clang/lib/APINotes/APINotesReader.cpp
    M clang/lib/APINotes/APINotesWriter.cpp
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/ASTDumper.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Context.h
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/DynamicAllocator.cpp
    M clang/lib/AST/ByteCode/DynamicAllocator.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.h
    M clang/lib/AST/ByteCode/Floating.h
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpHelpers.h
    M clang/lib/AST/ByteCode/InterpStack.cpp
    M clang/lib/AST/ByteCode/InterpStack.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Source.h
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/CommentLexer.cpp
    M clang/lib/AST/CommentParser.cpp
    M clang/lib/AST/CommentSema.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/Mangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/lib/Analysis/CallGraph.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/WatchedLiteralsSolver.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/Module.cpp
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/ParsedAttrInfo.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/AVR.cpp
    M clang/lib/Basic/Targets/AVR.h
    M clang/lib/Basic/Targets/BPF.h
    M clang/lib/Basic/Targets/CSKY.cpp
    M clang/lib/Basic/Targets/CSKY.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/Hexagon.h
    M clang/lib/Basic/Targets/Lanai.cpp
    M clang/lib/Basic/Targets/Lanai.h
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/M68k.cpp
    M clang/lib/Basic/Targets/M68k.h
    M clang/lib/Basic/Targets/Mips.h
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/Basic/Targets/PPC.h
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/Sparc.h
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Basic/Targets/Xtensa.h
    M clang/lib/Basic/Warnings.cpp
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinNVPTX.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinRISCV.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenMPClause.cpp
    A clang/lib/CIR/CodeGen/CIRGenOpenMPClause.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/EHABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
    M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
    A clang/lib/CIR/Dialect/Transforms/LibOpt.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp
    M clang/lib/CMakeLists.txt
    M clang/lib/CodeGen/BackendConsumer.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGLoopInfo.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CMakeLists.txt
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTBAA.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/ModuleBuilder.cpp
    M clang/lib/CodeGen/README.txt
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/DirectX.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    A clang/lib/CodeGen/pch.h
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Driver/Action.cpp
    M clang/lib/Driver/CMakeLists.txt
    M clang/lib/Driver/Compilation.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.h
    M clang/lib/Driver/ToolChains/AVR.cpp
    M clang/lib/Driver/ToolChains/AVR.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/BareMetal.h
    M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
    M clang/lib/Driver/ToolChains/CSKYToolChain.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CrossWindows.cpp
    M clang/lib/Driver/ToolChains/CrossWindows.h
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cuda.h
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/Flang.h
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.h
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.h
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Gnu.h
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.h
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.h
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Driver/ToolChains/HLSL.h
    M clang/lib/Driver/ToolChains/Haiku.cpp
    M clang/lib/Driver/ToolChains/Haiku.h
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Hexagon.h
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSP430.cpp
    M clang/lib/Driver/ToolChains/MSP430.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/Managarm.cpp
    M clang/lib/Driver/ToolChains/Managarm.h
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MinGW.h
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/NetBSD.h
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OHOS.h
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.h
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.h
    M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
    M clang/lib/Driver/ToolChains/SPIRVOpenMP.h
    M clang/lib/Driver/ToolChains/SYCL.cpp
    M clang/lib/Driver/ToolChains/SYCL.h
    M clang/lib/Driver/ToolChains/Serenity.cpp
    M clang/lib/Driver/ToolChains/Serenity.h
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/Solaris.h
    M clang/lib/Driver/ToolChains/VEToolchain.cpp
    M clang/lib/Driver/ToolChains/VEToolchain.h
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.h
    M clang/lib/Driver/ToolChains/XCore.cpp
    M clang/lib/Driver/ToolChains/XCore.h
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Driver/ToolChains/ZOS.h
    M clang/lib/Format/CMakeLists.txt
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/FormatTokenLexer.h
    M clang/lib/Format/NumericLiteralInfo.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Format/UnwrappedLineParser.h
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/CMakeLists.txt
    A clang/lib/Headers/__clang_gpu_builtin_vars.h
    A clang/lib/Headers/__clang_gpu_device_functions.h
    A clang/lib/Headers/__clang_gpu_intrinsics.h
    M clang/lib/Headers/__clang_hip_libdevice_declares.h
    R clang/lib/Headers/amxtf32intrin.h
    M clang/lib/Headers/avx2intrin.h
    A clang/lib/Headers/avx512bmmintrin.h
    A clang/lib/Headers/avx512bmmvlintrin.h
    M clang/lib/Headers/avx512bwintrin.h
    M clang/lib/Headers/avx512vlvnniintrin.h
    M clang/lib/Headers/avx512vnniintrin.h
    M clang/lib/Headers/avx512vp2intersectintrin.h
    M clang/lib/Headers/avxvnniintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/lib/Headers/xmmintrin.h
    A clang/lib/Headers/zos_wrappers/grp.h
    A clang/lib/Headers/zos_wrappers/locale.h
    A clang/lib/Headers/zos_wrappers/math.h
    A clang/lib/Headers/zos_wrappers/poll.h
    A clang/lib/Headers/zos_wrappers/string.h
    A clang/lib/Headers/zos_wrappers/time.h
    A clang/lib/Headers/zos_wrappers/variant.h
    M clang/lib/Index/IndexingContext.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Lex/CMakeLists.txt
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/lib/Lex/PPCaching.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/Pragma.cpp
    M clang/lib/Lex/Preprocessor.cpp
    A clang/lib/Lex/TextEncoding.cpp
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractor.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphJSONFormat.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlow.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowAnalysis.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowExtractor.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowFormat.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
    A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
    A clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
    A clang/lib/ScalableStaticAnalysis/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Core/ASTEntityMapping.cpp
    A clang/lib/ScalableStaticAnalysis/Core/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/BuildNamespace.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/EntityId.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/EntityIdTable.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/EntityLinkage.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/EntityName.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Model/SummaryName.cpp
    A clang/lib/ScalableStaticAnalysis/Core/ModelStringConversions.h
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/Artifact.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.h
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummary.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchSharedLibrary.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/MultiArchStaticLibrary.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/StaticLibrary.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummary.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/WPASuite.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Serialization/SerializationFormatRegistry.cpp
    A clang/lib/ScalableStaticAnalysis/Core/SummaryData/LUSummaryConsumer.cpp
    A clang/lib/ScalableStaticAnalysis/Core/SummaryData/SummaryDataBuilderRegistry.cpp
    A clang/lib/ScalableStaticAnalysis/Core/Support/ErrorBuilder.cpp
    A clang/lib/ScalableStaticAnalysis/Core/TUSummary/ExtractorRegistry.cpp
    A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryBuilder.cpp
    A clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.cpp
    A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisDriver.cpp
    A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisName.cpp
    A clang/lib/ScalableStaticAnalysis/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
    A clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendAction.cpp
    A clang/lib/ScalableStaticAnalysis/Plugins/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/AnalysisResults.h
    A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/PairsAnalysis.cpp
    A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsAnalysis.cpp
    A clang/lib/ScalableStaticAnalysis/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
    A clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/SourceTransformation/TransformationRegistry.cpp
    A clang/lib/ScalableStaticAnalysis/Tool/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Tool/Utils.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractor.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphJSONFormat.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevel.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/EntityPointerLevel/EntityPointerLevelFormat.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlow.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowAnalysis.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowExtractor.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowFormat.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/SSAFAnalysesCommon.h
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsage.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageExtractor.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageFormat.cpp
    R clang/lib/ScalableStaticAnalysisFramework/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Core/ASTEntityMapping.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Core/EntityLinker/EntityLinker.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/BuildNamespace.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityId.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityIdTable.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityLinkage.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/EntityName.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Model/SummaryName.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/ModelStringConversions.h
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/Artifact.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONEntitySummaryEncoding.h
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.h
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummary.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/LUSummaryEncoding.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummary.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/TUSummaryEncoding.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/WPASuite.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/SerializationFormatRegistry.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/LUSummaryConsumer.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/SummaryData/SummaryDataBuilderRegistry.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/Support/ErrorBuilder.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/ExtractorRegistry.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryBuilder.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/TUSummary/TUSummaryExtractor.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisDriver.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisName.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Core/WholeProgramAnalysis/AnalysisRegistry.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Frontend/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendAction.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/AnalysisResults.h
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/PairsAnalysis.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsAnalysis.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Plugins/ExamplePlugin/TagsPairsAnalysis.cpp
    R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/SourceTransformation/TransformationRegistry.cpp
    R clang/lib/ScalableStaticAnalysisFramework/Tool/CMakeLists.txt
    R clang/lib/ScalableStaticAnalysisFramework/Tool/Utils.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/MultiplexExternalSemaSource.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaOpenCL.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CXXDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NullabilityChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UndefinedNewArraySizeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/UseAfterLifetimeEnd.cpp
    M clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/lib/Tooling/CompilationDatabase.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/lib/Tooling/Execution.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/lib/UnifiedSymbolResolution/USRGeneration.cpp
    M clang/test/APINotes/Inputs/WhereParametersConvertDiag/APINotes.apinotes
    M clang/test/APINotes/Inputs/WhereParametersConvertDiag/WhereParametersConvertDiag.h
    A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/APINotes.apinotes
    A clang/test/APINotes/Inputs/WhereParametersEmptyWhereDiag/WhereParametersConvertDiag.h
    M clang/test/APINotes/where-parameters-convert-diags.cpp
    M clang/test/AST/ByteCode/builtin-constant-p.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/codegen.cpp
    A clang/test/AST/ByteCode/command-line-options.cpp
    M clang/test/AST/ByteCode/cxx11.cpp
    M clang/test/AST/ByteCode/cxx17.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx2a.cpp
    M clang/test/AST/ByteCode/dynamic-cast.cpp
    A clang/test/AST/ByteCode/enable_if.c
    A clang/test/AST/ByteCode/evaluate-dtor-codegen.cpp
    A clang/test/AST/ByteCode/evaluate-dtor.cpp
    M clang/test/AST/ByteCode/mutable.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ByteCode/typeid.cpp
    R clang/test/AST/HLSL/ConstantBuffers-AST-error.hlsl
    M clang/test/AST/HLSL/ConstantBuffers-AST.hlsl
    A clang/test/AST/HLSL/Texture2DArray-scalar-AST.hlsl
    A clang/test/AST/HLSL/Texture2DArray-shorthand-AST.hlsl
    A clang/test/AST/HLSL/Texture2DArray-vector-AST.hlsl
    A clang/test/AST/HLSL/resources-in-structs-method-call.hlsl
    R clang/test/AST/ast-dump-openmp-atomic.c
    R clang/test/AST/ast-dump-openmp-barrier.c
    R clang/test/AST/ast-dump-openmp-cancel.c
    R clang/test/AST/ast-dump-openmp-cancellation-point.c
    R clang/test/AST/ast-dump-openmp-critical.c
    R clang/test/AST/ast-dump-openmp-distribute-parallel-for-simd.c
    R clang/test/AST/ast-dump-openmp-distribute-parallel-for.c
    R clang/test/AST/ast-dump-openmp-distribute-simd.c
    R clang/test/AST/ast-dump-openmp-distribute.c
    R clang/test/AST/ast-dump-openmp-flush.c
    R clang/test/AST/ast-dump-openmp-for-simd.c
    R clang/test/AST/ast-dump-openmp-for.c
    R clang/test/AST/ast-dump-openmp-master.c
    R clang/test/AST/ast-dump-openmp-ordered.c
    R clang/test/AST/ast-dump-openmp-parallel-for-simd.c
    R clang/test/AST/ast-dump-openmp-parallel-for.c
    R clang/test/AST/ast-dump-openmp-parallel-sections.c
    R clang/test/AST/ast-dump-openmp-parallel.c
    R clang/test/AST/ast-dump-openmp-section.c
    R clang/test/AST/ast-dump-openmp-sections.c
    R clang/test/AST/ast-dump-openmp-simd.c
    R clang/test/AST/ast-dump-openmp-single.c
    R clang/test/AST/ast-dump-openmp-split.c
    R clang/test/AST/ast-dump-openmp-target-data.c
    R clang/test/AST/ast-dump-openmp-target-enter-data.c
    R clang/test/AST/ast-dump-openmp-target-exit-data.c
    R clang/test/AST/ast-dump-openmp-target-parallel-for-simd.c
    R clang/test/AST/ast-dump-openmp-target-parallel-for.c
    R clang/test/AST/ast-dump-openmp-target-parallel.c
    R clang/test/AST/ast-dump-openmp-target-simd.c
    R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for-simd.c
    R clang/test/AST/ast-dump-openmp-target-teams-distribute-parallel-for.c
    R clang/test/AST/ast-dump-openmp-target-teams-distribute-simd.c
    R clang/test/AST/ast-dump-openmp-target-teams-distribute.c
    R clang/test/AST/ast-dump-openmp-target-teams.c
    R clang/test/AST/ast-dump-openmp-target-update.c
    R clang/test/AST/ast-dump-openmp-target.c
    R clang/test/AST/ast-dump-openmp-task.c
    R clang/test/AST/ast-dump-openmp-taskgroup.c
    R clang/test/AST/ast-dump-openmp-taskloop-simd.c
    R clang/test/AST/ast-dump-openmp-taskloop.c
    R clang/test/AST/ast-dump-openmp-taskwait.c
    R clang/test/AST/ast-dump-openmp-taskyield.c
    R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for-simd.c
    R clang/test/AST/ast-dump-openmp-teams-distribute-parallel-for.c
    R clang/test/AST/ast-dump-openmp-teams-distribute-simd.c
    R clang/test/AST/ast-dump-openmp-teams-distribute.c
    R clang/test/AST/ast-dump-openmp-teams.c
    M clang/test/AST/ast-dump-templates-pattern.cpp
    A clang/test/AST/ast_matchers_updated.test
    A clang/test/AST/builtin-name-registration.c
    A clang/test/AST/pr198903.cpp
    M clang/test/AST/undocumented-attrs.cpp
    M clang/test/Analysis/Inputs/system-header-simulator-cxx.h
    A clang/test/Analysis/Scalable/PointerFlow/entity-name-no-conflict.cpp
    A clang/test/Analysis/Scalable/PointerFlow/multi-decl-contributor.cpp
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-shared-library-nonempty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-multi-arch-static-library-nonempty.json
    A clang/test/Analysis/Scalable/ssaf-format/Artifact/Inputs/rt-static-library-empty.json
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/round-trip.test
    M clang/test/Analysis/Scalable/ssaf-format/Artifact/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-empty-lu-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/namespace-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchSharedLibrary/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/duplicate-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-namespace-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/namespace-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/namespace-wrong-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-empty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-nonempty-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/rt-three-members.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/Inputs/unsorted-three-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/MultiArchStaticLibrary/top-level.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/duplicate-member.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/invalid-syntax.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-inner-error.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/member-triple-mismatch.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/members-not-array.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/mismatched-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-members.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-namespace.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/missing-type.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-invalid-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-missing-name.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/namespace-wrong-kind.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-json-extension.txt
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-normalized-target-triple.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/not-object.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-empty.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-multiple-members.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/rt-single-member.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/Inputs/unsorted-members-input.json
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/io.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/permissions.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/round-trip.test
    A clang/test/Analysis/Scalable/ssaf-format/StaticLibrary/top-level.test
    M clang/test/Analysis/analyzer-config.c
    A clang/test/Analysis/debug-lifetime-bound.cpp
    A clang/test/Analysis/lifetime-bound.cpp
    A clang/test/Analysis/malloc-failure.c
    M clang/test/Analysis/missing-z3-nocrash.c
    A clang/test/Analysis/pr169302.cpp
    A clang/test/Analysis/use-after-move-iterator.cpp
    M clang/test/Analysis/use-after-move.cpp
    M clang/test/Analysis/z3/D83660.c
    M clang/test/Analysis/z3/pretty-dump.c
    M clang/test/Analysis/z3/z3-unarysymexpr.c
    M clang/test/C/C11/n1285_1.c
    M clang/test/C/C23/n3007.c
    M clang/test/C/C23/n3037.c
    M clang/test/CIR/CodeGen/abstract-cond.c
    A clang/test/CIR/CodeGen/agg-atomic-cast.c
    R clang/test/CIR/CodeGen/agg-atomic-cast.cpp
    M clang/test/CIR/CodeGen/agg-expr-lvalue.c
    M clang/test/CIR/CodeGen/agg-init-constexpr.cpp
    M clang/test/CIR/CodeGen/aggregate-copy-overlap.cpp
    A clang/test/CIR/CodeGen/anonymous-nested-init.c
    M clang/test/CIR/CodeGen/array.cpp
    A clang/test/CIR/CodeGen/atomic-libcall.c
    M clang/test/CIR/CodeGen/attr-noundef.cpp
    M clang/test/CIR/CodeGen/attr-target-x86.c
    M clang/test/CIR/CodeGen/binassign.c
    A clang/test/CIR/CodeGen/bitfield-init-values.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    A clang/test/CIR/CodeGen/builtin-atomic-is-lock-free.c
    A clang/test/CIR/CodeGen/builtin-multiprecision.c
    M clang/test/CIR/CodeGen/builtins-x86.c
    A clang/test/CIR/CodeGen/cleanup-scope-throw-caught.cpp
    M clang/test/CIR/CodeGen/complex-cast.cpp
    M clang/test/CIR/CodeGen/compound_literal.cpp
    M clang/test/CIR/CodeGen/const-array-floating-point.c
    A clang/test/CIR/CodeGen/const-label-addr.c
    M clang/test/CIR/CodeGen/constant-inits.cpp
    M clang/test/CIR/CodeGen/consteval-aggregate.cpp
    M clang/test/CIR/CodeGen/constexpr-ptr-offset.cpp
    M clang/test/CIR/CodeGen/copy-constructor.cpp
    A clang/test/CIR/CodeGen/cross-reference-globals.c
    M clang/test/CIR/CodeGen/cxx-rewritten-binary-operator.cpp
    M clang/test/CIR/CodeGen/embed-expr.c
    A clang/test/CIR/CodeGen/enum-bool.cpp
    A clang/test/CIR/CodeGen/flexible-array-init.c
    A clang/test/CIR/CodeGen/fp16-native-args.c
    A clang/test/CIR/CodeGen/fp16.c
    M clang/test/CIR/CodeGen/global-array-dtor.cpp
    M clang/test/CIR/CodeGen/global-decomp-decls.cpp
    M clang/test/CIR/CodeGen/global-dtor-union-narrowed.cpp
    M clang/test/CIR/CodeGen/global-init.cpp
    A clang/test/CIR/CodeGen/global-replace-string-array.c
    M clang/test/CIR/CodeGen/global-temp-dtor.cpp
    A clang/test/CIR/CodeGen/global-temporary-comdat.cpp
    M clang/test/CIR/CodeGen/global-tls-dyn-init.cpp
    M clang/test/CIR/CodeGen/global-tls-templates.cpp
    M clang/test/CIR/CodeGen/globals.cpp
    A clang/test/CIR/CodeGen/goto-address-label-table.c
    M clang/test/CIR/CodeGen/inline-asm.c
    A clang/test/CIR/CodeGen/int128-global-const.cpp
    M clang/test/CIR/CodeGen/label-values.c
    M clang/test/CIR/CodeGen/lambda-dtor-field.cpp
    M clang/test/CIR/CodeGen/lambda.cpp
    M clang/test/CIR/CodeGen/local-const-aggregate-name-clash.cpp
    M clang/test/CIR/CodeGen/loop.cpp
    A clang/test/CIR/CodeGen/member-pointer-null-init.cpp
    A clang/test/CIR/CodeGen/new-array-init.cpp
    M clang/test/CIR/CodeGen/new.cpp
    M clang/test/CIR/CodeGen/no-odr-use.cpp
    M clang/test/CIR/CodeGen/no-unique-address.cpp
    M clang/test/CIR/CodeGen/nonzeroinit-struct.cpp
    M clang/test/CIR/CodeGen/nrvo.cpp
    M clang/test/CIR/CodeGen/paren-init-list.cpp
    M clang/test/CIR/CodeGen/paren-list-agg-init.cpp
    M clang/test/CIR/CodeGen/pointer-to-data-member.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/CodeGen/record-zero-init-padding.c
    M clang/test/CIR/CodeGen/replace-global.cpp
    M clang/test/CIR/CodeGen/self-ref-temporaries.cpp
    M clang/test/CIR/CodeGen/statement-exprs.c
    M clang/test/CIR/CodeGen/static-local.cpp
    M clang/test/CIR/CodeGen/static-members.cpp
    M clang/test/CIR/CodeGen/struct-init.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    A clang/test/CIR/CodeGen/switch-range.c
    M clang/test/CIR/CodeGen/temp-param-obj-decl.cpp
    M clang/test/CIR/CodeGen/thread-local-in-func.cpp
    M clang/test/CIR/CodeGen/three-way-cmp.cpp
    A clang/test/CIR/CodeGen/trivially-recursive-skip.cpp
    A clang/test/CIR/CodeGen/unary-expr-or-type-trait-32bit.cpp
    M clang/test/CIR/CodeGen/union-agg-init.c
    M clang/test/CIR/CodeGen/var-arg-aggregate.c
    M clang/test/CIR/CodeGen/variable-decomposition.cpp
    A clang/test/CIR/CodeGen/vtable-load-invariant.cpp
    A clang/test/CIR/CodeGenBuiltins/RISCV/riscv-xcvalu.c
    M clang/test/CIR/CodeGenBuiltins/builtin-fpclassify.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isfpclass.c
    M clang/test/CIR/CodeGenBuiltins/builtin-isinf-sign.c
    A clang/test/CIR/CodeGenBuiltins/builtin-nondeterministic-value.c
    A clang/test/CIR/CodeGenBuiltins/builtin-nontemporal.cpp
    A clang/test/CIR/CodeGenBuiltins/builtin-reduce-bitwise.c
    M clang/test/CIR/CodeGenBuiltins/builtin-undef-rvalue.cpp
    A clang/test/CIR/CodeGenBuiltins/builtins-elementwise-bool-nyi.c
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    M clang/test/CIR/CodeGenBuiltins/builtins-overflow.cpp
    M clang/test/CIR/CodeGenCUDA/address-spaces.cu
    A clang/test/CIR/CodeGenCXX/base-layout.cpp
    M clang/test/CIR/CodeGenCXX/global-refs.cpp
    M clang/test/CIR/CodeGenCXX/new-array-init.cpp
    M clang/test/CIR/CodeGenCXX/sizeof-pack.cpp
    M clang/test/CIR/CodeGenCXX/uncopyable-args.cpp
    M clang/test/CIR/CodeGenCXX/zero_init_bases.cpp
    M clang/test/CIR/CodeGenOpenACC/cache.c
    M clang/test/CIR/CodeGenOpenACC/combined-copy.c
    M clang/test/CIR/CodeGenOpenACC/combined-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-int.cpp
    M clang/test/CIR/CodeGenOpenACC/combined-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/combined.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-copy.c
    M clang/test/CIR/CodeGenOpenACC/compute-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause-templates.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.c
    M clang/test/CIR/CodeGenOpenACC/compute-firstprivate-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause.c
    M clang/test/CIR/CodeGenOpenACC/compute-private-clause.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-float.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.c
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-int.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-unsigned-int.c
    M clang/test/CIR/CodeGenOpenACC/data.c
    M clang/test/CIR/CodeGenOpenACC/declare-copy.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyin.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-copyout.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-create.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-deviceresident.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-link.cpp
    M clang/test/CIR/CodeGenOpenACC/declare-present.cpp
    M clang/test/CIR/CodeGenOpenACC/enter-data.c
    M clang/test/CIR/CodeGenOpenACC/exit-data.c
    M clang/test/CIR/CodeGenOpenACC/firstprivate-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenACC/host_data.c
    M clang/test/CIR/CodeGenOpenACC/init.c
    M clang/test/CIR/CodeGenOpenACC/kernels.c
    M clang/test/CIR/CodeGenOpenACC/loop-private-clause.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/CodeGenOpenACC/loop-reduction-clause-inline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-int.cpp
    M clang/test/CIR/CodeGenOpenACC/loop-reduction-clause-outline-ops.cpp
    M clang/test/CIR/CodeGenOpenACC/loop.cpp
    M clang/test/CIR/CodeGenOpenACC/parallel.c
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-array-recipes-int.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-CtorDtor.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-NoOps.cpp
    M clang/test/CIR/CodeGenOpenACC/private-clause-pointer-recipes-int.cpp
    M clang/test/CIR/CodeGenOpenACC/reduction-clause-recipes.cpp
    M clang/test/CIR/CodeGenOpenACC/serial.c
    M clang/test/CIR/CodeGenOpenACC/set.c
    M clang/test/CIR/CodeGenOpenACC/shutdown.c
    M clang/test/CIR/CodeGenOpenACC/update.c
    M clang/test/CIR/CodeGenOpenACC/wait.c
    M clang/test/CIR/CodeGenOpenMP/not-yet-implemented.c
    M clang/test/CIR/CodeGenOpenMP/omp-llvmir.c
    A clang/test/CIR/CodeGenOpenMP/target-map-llvm-device.c
    A clang/test/CIR/CodeGenOpenMP/target-map-llvm-host.c
    A clang/test/CIR/CodeGenOpenMP/target-map.c
    A clang/test/CIR/IR/builtin-int-cast.cir
    A clang/test/CIR/IR/const-record-flexible-array.cir
    A clang/test/CIR/IR/const-record-union.cir
    M clang/test/CIR/IR/global.cir
    A clang/test/CIR/IR/invalid-builtin-int-cast.cir
    M clang/test/CIR/IR/invalid-const-record.cir
    M clang/test/CIR/IR/invalid-data-member.cir
    A clang/test/CIR/IR/invalid-int-attr.cir
    M clang/test/CIR/IR/invalid-linkage.cir
    A clang/test/CIR/IR/load-invariant.cir
    M clang/test/CIR/Lowering/array.cpp
    A clang/test/CIR/Lowering/builtin-int-cast.cir
    M clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
    M clang/test/CIR/Lowering/const-array-of-pointers.cir
    A clang/test/CIR/Lowering/load-invariant.cir
    M clang/test/CIR/Lowering/module-asm.cir
    M clang/test/CIR/Lowering/omp-target-map.cir
    M clang/test/CIR/Transforms/abi-lowering/coerce-record-to-record-via-memory.cir
    A clang/test/CIR/Transforms/abi-lowering/direct-flatten.cir
    A clang/test/CIR/Transforms/abi-lowering/expand-struct-arg.cir
    A clang/test/CIR/Transforms/abi-lowering/indirect-byval.cir
    A clang/test/CIR/Transforms/builtin-int-cast-fold.cir
    M clang/test/CIR/Transforms/hoist-allocas.cir
    A clang/test/CIR/Transforms/lib-opt.cpp
    M clang/test/CIR/Transforms/omp-mark-declare-target.cir
    M clang/test/CIR/Transforms/switch.cir
    M clang/test/CIR/Transforms/vector-cmp-fold.cir
    M clang/test/CMakeLists.txt
    M clang/test/CXX/basic/basic.link/p11.cpp
    M clang/test/CXX/dcl.decl/dcl.init/dcl.init.general/p16-cxx20.cpp
    M clang/test/CXX/drs/cwg18xx.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    A clang/test/CXX/drs/cwg3088.cpp
    M clang/test/CXX/drs/cwg30xx.cpp
    M clang/test/CXX/drs/cwg31xx.cpp
    M clang/test/CXX/drs/cwg5xx.cpp
    M clang/test/CXX/drs/cwg7xx.cpp
    M clang/test/CXX/expr/expr.const/p6-2a.cpp
    M clang/test/CXX/expr/expr.unary/expr.unary.general/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/ClangScanDeps/diagnostics.c
    M clang/test/ClangScanDeps/header-search-pruning-transitive.c
    M clang/test/ClangScanDeps/modules-context-hash-from-named-module.cpp
    M clang/test/ClangScanDeps/modules-context-hash-ignore-macros.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/ClangScanDeps/modules-context-hash-warnings.c
    M clang/test/ClangScanDeps/modules-context-hash.c
    M clang/test/ClangScanDeps/modules-dep-args.c
    M clang/test/ClangScanDeps/modules-extern-submodule.c
    M clang/test/ClangScanDeps/modules-extern-unrelated.m
    M clang/test/ClangScanDeps/modules-fmodule-name-no-module-built.m
    M clang/test/ClangScanDeps/modules-full-by-mod-name.c
    M clang/test/ClangScanDeps/modules-full-by-mult-mod-names-diagnostics.c
    M clang/test/ClangScanDeps/modules-full-named-modules.cppm
    M clang/test/ClangScanDeps/modules-full-output-tu-order.c
    M clang/test/ClangScanDeps/modules-full.cpp
    M clang/test/ClangScanDeps/modules-has-include-umbrella-header.c
    M clang/test/ClangScanDeps/modules-header-sharing.m
    M clang/test/ClangScanDeps/modules-implementation-module-map.c
    M clang/test/ClangScanDeps/modules-implementation-private.m
    M clang/test/ClangScanDeps/modules-implementation-vfs.m
    M clang/test/ClangScanDeps/modules-implicit-dot-private.m
    M clang/test/ClangScanDeps/modules-incomplete-umbrella.c
    M clang/test/ClangScanDeps/modules-inferred.m
    M clang/test/ClangScanDeps/modules-no-undeclared-includes.c
    M clang/test/ClangScanDeps/modules-pch-common-stale.c
    M clang/test/ClangScanDeps/modules-pch-common-submodule.c
    M clang/test/ClangScanDeps/modules-pch-common-via-submodule.c
    A clang/test/ClangScanDeps/modules-pch-compatibility.c
    M clang/test/ClangScanDeps/modules-pch.c
    M clang/test/ClangScanDeps/modules-priv-fw-from-pub.m
    M clang/test/ClangScanDeps/multiple-commands.c
    M clang/test/ClangScanDeps/tu-buffer.c
    A clang/test/CodeCompletion/GH200879.cpp
    A clang/test/CodeCompletion/GH201632.cpp
    M clang/test/CodeGen/2006-01-23-FileScopeAsm.c
    M clang/test/CodeGen/64bit-swiftcall.c
    M clang/test/CodeGen/AArch64/args.cpp
    M clang/test/CodeGen/AArch64/atomic-ops-float-check-minmax.c
    M clang/test/CodeGen/AArch64/byval-temp.c
    M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_reinterpret.c
    M clang/test/CodeGen/AArch64/ls64-inline-asm.c
    M clang/test/CodeGen/AArch64/neon-2velem.c
    M clang/test/CodeGen/AArch64/neon-intrinsics.c
    M clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
    M clang/test/CodeGen/AArch64/neon/add.c
    M clang/test/CodeGen/AArch64/neon/bf16-getset.c
    M clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
    M clang/test/CodeGen/AArch64/neon/fused-multiply.c
    M clang/test/CodeGen/AArch64/neon/intrinsics.c
    A clang/test/CodeGen/AArch64/neon/rounding-v8.5.c
    M clang/test/CodeGen/AArch64/neon/subtraction.c
    M clang/test/CodeGen/AArch64/pure-scalable-args-empty-union.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    M clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
    M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.cpp
    M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
    M clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6_lane_x2.c
    M clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
    M clang/test/CodeGen/AArch64/v8.5a-neon-frint3264-intrinsic.c
    M clang/test/CodeGen/LoongArch/bitint.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc64-vector.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
    A clang/test/CodeGen/RISCV/attr-rvv-vector-bits-struct-call.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/RISCV/riscv-abi.cpp
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
    M clang/test/CodeGen/RISCV/riscv32-abi.c
    M clang/test/CodeGen/RISCV/riscv32-vararg.c
    M clang/test/CodeGen/RISCV/riscv64-abi.c
    M clang/test/CodeGen/RISCV/riscv64-vararg.c
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e4m3.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e5m2.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e4m3.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e5m2.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e4m3.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e5m2.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e4m3.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e5m2.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_f_f.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_s.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_u.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_s.c
    M clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_u.c
    M clang/test/CodeGen/Sparc/sparcv9-abi.c
    M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M clang/test/CodeGen/SystemZ/systemz-abi.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    M clang/test/CodeGen/SystemZ/zos-abi.c
    M clang/test/CodeGen/WebAssembly/builtins-table-externref.c
    M clang/test/CodeGen/WebAssembly/builtins-table-funcref.c
    M clang/test/CodeGen/WebAssembly/builtins-test-fp-sig.c
    M clang/test/CodeGen/WebAssembly/wasm-externref.c
    A clang/test/CodeGen/WebAssembly/wasm-funcref-to-ptr-error.c
    M clang/test/CodeGen/WebAssembly/wasm-funcref.c
    R clang/test/CodeGen/X86/amx_tf32.c
    R clang/test/CodeGen/X86/amx_tf32_api.c
    R clang/test/CodeGen/X86/amx_tf32_errors.c
    R clang/test/CodeGen/X86/amx_tf32_inline_asm.c
    M clang/test/CodeGen/X86/avx-cxx-record.cpp
    M clang/test/CodeGen/X86/avx2-builtins.c
    A clang/test/CodeGen/X86/avx512bmm-builtins.c
    A clang/test/CodeGen/X86/avx512bmmvl-builtins.c
    M clang/test/CodeGen/X86/avx512bw-builtins.c
    M clang/test/CodeGen/X86/avx512vlvnni-builtins.c
    M clang/test/CodeGen/X86/avx512vnni-builtins.c
    M clang/test/CodeGen/X86/avxvnni-builtins.c
    M clang/test/CodeGen/X86/cx-complex-range.c
    M clang/test/CodeGen/X86/mmx-builtins.c
    M clang/test/CodeGen/X86/mmx-inline-asm-error.c
    A clang/test/CodeGen/X86/newpm.c
    M clang/test/CodeGen/X86/sse2-builtins.c
    M clang/test/CodeGen/X86/sse41-builtins.c
    M clang/test/CodeGen/X86/x86_32-arguments-win32.c
    M clang/test/CodeGen/X86/x86_64-arguments-win32.c
    M clang/test/CodeGen/aapcs64-align.cpp
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_dup_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_get_neonq.c
    M clang/test/CodeGen/aarch64_neon_sve_bridge_intrinsics/acle_neon_sve_bridge_set_neonq.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/amdgpu-builtin-is-invocable.c
    M clang/test/CodeGen/amdgpu-builtin-processor-is.c
    R clang/test/CodeGen/amdgpu-feature-builtins-invalid-use.cpp
    M clang/test/CodeGen/arm-aapcs-vfp.c
    M clang/test/CodeGen/arm-abi-vector.c
    M clang/test/CodeGen/arm-swiftcall.c
    M clang/test/CodeGen/arm64-abi-vector.c
    M clang/test/CodeGen/arm64-arguments.c
    M clang/test/CodeGen/arm64-microsoft-arguments.cpp
    M clang/test/CodeGen/arm64ec-varargs.c
    M clang/test/CodeGen/armv7k-abi.c
    M clang/test/CodeGen/asm.c
    M clang/test/CodeGen/asm_incbin.c
    M clang/test/CodeGen/atomic-arm64.c
    A clang/test/CodeGen/atomic-auto-type.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-bitcast.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-codegen.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-globals.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-types.c
    A clang/test/CodeGen/attr-counted-by-nested-structs.c
    A clang/test/CodeGen/attr-counted-by-with-sanitizers.c
    A clang/test/CodeGen/attr-counted-by-without-sanitizers.c
    R clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/attr-noundef.cpp
    M clang/test/CodeGen/attr-target-x86.c
    M clang/test/CodeGen/builtin-clear-padding-codegen.c
    A clang/test/CodeGen/builtin-cpu-is-cputype.c
    A clang/test/CodeGen/builtin-cpu-is-subtype.c
    A clang/test/CodeGen/builtin-cpu-is-vendor.c
    R clang/test/CodeGen/builtin-cpu-is.c
    A clang/test/CodeGen/builtin-cpu-supports-all.c
    M clang/test/CodeGen/builtin_float.c
    M clang/test/CodeGen/builtin_float_strictfp.c
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/builtins-wasm.c
    M clang/test/CodeGen/builtins-x86.c
    M clang/test/CodeGen/call-graph-section-callback.cpp
    M clang/test/CodeGen/call-graph-section-internal.cpp
    M clang/test/CodeGen/call-graph-section-templates.cpp
    M clang/test/CodeGen/call-graph-section-virtual-methods.cpp
    M clang/test/CodeGen/call-graph-section.c
    M clang/test/CodeGen/call-graph-section.cpp
    M clang/test/CodeGen/cfi-salt.c
    M clang/test/CodeGen/cfi-unchecked-callee-attribute.cpp
    M clang/test/CodeGen/convergent-functions.cpp
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/errno-tbaa.c
    M clang/test/CodeGen/ext-int-cc.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/kcfi.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/mingw-long-double.c
    M clang/test/CodeGen/ms_abi.c
    M clang/test/CodeGen/pass-by-value-noalias.c
    M clang/test/CodeGen/ptrauth-in-c-struct.c
    M clang/test/CodeGen/regcall.c
    M clang/test/CodeGen/regcall4.c
    M clang/test/CodeGen/sanitize-metadata-ignorelist.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/sanitize-type-globals.cpp
    M clang/test/CodeGen/svboolx2_t.cpp
    M clang/test/CodeGen/svboolx4_t.cpp
    A clang/test/CodeGen/systemz-charset-diag.cpp
    A clang/test/CodeGen/systemz-charset.c
    A clang/test/CodeGen/systemz-charset.cpp
    A clang/test/CodeGen/target-avx-abi-diag-knr.c
    M clang/test/CodeGen/target-builtin-error-3.c
    M clang/test/CodeGen/target-builtin-noerror.c
    M clang/test/CodeGen/target-features-error-2.c
    M clang/test/CodeGen/tbaa-class.cpp
    M clang/test/CodeGen/tbaa-matrix.c
    M clang/test/CodeGen/tbaa-ms-abi.cpp
    M clang/test/CodeGen/tbaa-pointers.c
    M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
    M clang/test/CodeGen/tbaa-struct.cpp
    M clang/test/CodeGen/tbaa.c
    M clang/test/CodeGen/tbaa.cpp
    M clang/test/CodeGen/ubsan-aggregate-null-align-bounds.c
    M clang/test/CodeGen/union-tbaa1.c
    M clang/test/CodeGen/vectorcall.c
    M clang/test/CodeGen/wasm-fp16.c
    M clang/test/CodeGen/win-fp128.c
    M clang/test/CodeGen/win64-i128.c
    M clang/test/CodeGen/windows-seh-arg-capture-crash.cpp
    M clang/test/CodeGen/windows-swiftcall.c
    M clang/test/CodeGenCUDA/filter-decl.cu
    M clang/test/CodeGenCUDA/offload_via_llvm.cu
    M clang/test/CodeGenCXX/aarch64-mangle-sve-fixed-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/aarch64-sve-fixedtypeinfo.cpp
    M clang/test/CodeGenCXX/aix-alignment.cpp
    M clang/test/CodeGenCXX/amdgcn-func-arg.cpp
    M clang/test/CodeGenCXX/arm-cc.cpp
    M clang/test/CodeGenCXX/arm-swiftcall.cpp
    M clang/test/CodeGenCXX/attr-likelihood-if-branch-weights.cpp
    M clang/test/CodeGenCXX/attr-likelihood-iteration-stmt.cpp
    M clang/test/CodeGenCXX/attr-likelihood-switch-branch-weights.cpp
    M clang/test/CodeGenCXX/attr-target-mv-inalloca.cpp
    M clang/test/CodeGenCXX/blocks.cpp
    M clang/test/CodeGenCXX/builtin-clear-padding-codegen.cpp
    M clang/test/CodeGenCXX/const-init-cxx2a.cpp
    M clang/test/CodeGenCXX/copy-initialization.cpp
    M clang/test/CodeGenCXX/cxx1z-copy-omission.cpp
    M clang/test/CodeGenCXX/default-arguments.cpp
    M clang/test/CodeGenCXX/derived-to-base-conv.cpp
    M clang/test/CodeGenCXX/dllexport-ctor-closure.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/dynamic-cast-exact.cpp
    M clang/test/CodeGenCXX/empty-nontrivially-copyable.cpp
    M clang/test/CodeGenCXX/explicit-instantiation.cpp
    M clang/test/CodeGenCXX/fastcall.cpp
    A clang/test/CodeGenCXX/gh196469-default-member-init-lambda-cleanup.cpp
    M clang/test/CodeGenCXX/gnu-asm-constexpr.cpp
    M clang/test/CodeGenCXX/homogeneous-aggregates.cpp
    M clang/test/CodeGenCXX/inalloca-lambda.cpp
    M clang/test/CodeGenCXX/inalloca-overaligned.cpp
    M clang/test/CodeGenCXX/inalloca-vector.cpp
    M clang/test/CodeGenCXX/inheriting-constructor.cpp
    M clang/test/CodeGenCXX/load-reference-metadata.cpp
    M clang/test/CodeGenCXX/mangle-ms-md5.cpp
    M clang/test/CodeGenCXX/mangle-neon-vectors.cpp
    M clang/test/CodeGenCXX/member-function-pointer-calls.cpp
    M clang/test/CodeGenCXX/microsoft-abi-arg-order.cpp
    M clang/test/CodeGenCXX/microsoft-abi-byval-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
    M clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
    M clang/test/CodeGenCXX/microsoft-abi-throw.cpp
    M clang/test/CodeGenCXX/microsoft-abi-unknown-arch.cpp
    M clang/test/CodeGenCXX/ms-property.cpp
    M clang/test/CodeGenCXX/non-const-init-cxx2a.cpp
    M clang/test/CodeGenCXX/nrvo.cpp
    M clang/test/CodeGenCXX/pass-by-value-noalias.cpp
    M clang/test/CodeGenCXX/powerpc-byval.cpp
    M clang/test/CodeGenCXX/ptrauth-qualifier-struct.cpp
    M clang/test/CodeGenCXX/regcall.cpp
    M clang/test/CodeGenCXX/regcall4.cpp
    M clang/test/CodeGenCXX/regparm.cpp
    A clang/test/CodeGenCXX/riscv-rvv-fixed-length-struct-call.cpp
    M clang/test/CodeGenCXX/std-byte.cpp
    A clang/test/CodeGenCXX/target-avx-abi-diag.cpp
    M clang/test/CodeGenCXX/temporaries.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenCXX/uncopyable-args.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
    M clang/test/CodeGenCXX/windows-x86-swiftcall.cpp
    M clang/test/CodeGenCXX/x86_32-arguments.cpp
    R clang/test/CodeGenCoroutines/coro-cwg2935.cpp
    M clang/test/CodeGenCoroutines/coro-elide.cpp
    M clang/test/CodeGenCoroutines/coro-gro.cpp
    M clang/test/CodeGenCoroutines/coro-halo.cpp
    M clang/test/CodeGenCoroutines/coro-params.cpp
    M clang/test/CodeGenCoroutines/pr65018.cpp
    M clang/test/CodeGenHIP/offload-pgo-sections.hip
    M clang/test/CodeGenHLSL/BasicFeatures/InitLists.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/OutArgLifetime.hlsl
    M clang/test/CodeGenHLSL/BasicFeatures/StructPassing.hlsl
    M clang/test/CodeGenHLSL/builtins/ConstantBuffer.hlsl
    A clang/test/CodeGenHLSL/builtins/InterlockedOr.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    R clang/test/CodeGenHLSL/cbuffer_copy_layout.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    A clang/test/CodeGenHLSL/resources/ConstantBufferT-struct-passing.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/resources/StructuredBuffers-subscripts.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-CalculateLevelOfDetail.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-Gather.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-GetDimensions.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-Load.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-Mips.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-Sample.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleBias.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmp.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleCmpLevelZero.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleGrad.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-SampleLevel.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-Subscript.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-default-explicit-binding.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-default.hlsl
    A clang/test/CodeGenHLSL/resources/Texture2DArray-shorthand-contexts.hlsl
    M clang/test/CodeGenHLSL/resources/cbuffer_struct_passing.hlsl
    A clang/test/CodeGenHLSL/resources/cbuffer_struct_passing_with_resources.hlsl
    A clang/test/CodeGenHLSL/resources/resources-in-structs-method-call.hlsl
    M clang/test/CodeGenHLSL/semantics/semantic-struct-2-output.hlsl
    M clang/test/CodeGenObjC/category-class.m
    M clang/test/CodeGenObjC/objc-runtime-name.m
    M clang/test/CodeGenObjC/pass-by-value-noalias.m
    M clang/test/CodeGenObjC/weak-in-c-struct.m
    M clang/test/CodeGenObjCXX/objc-struct-cxx-abi.mm
    M clang/test/CodeGenObjCXX/property-dot-copy-elision.mm
    M clang/test/CodeGenObjCXX/property-objects.mm
    M clang/test/CodeGenObjCXX/ptrauth-struct-cxx-abi.mm
    M clang/test/CodeGenOpenCL/address-spaces-conversions.cl
    M clang/test/CodeGenOpenCL/address-spaces.cl
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-printf.cl
    M clang/test/CodeGenOpenCL/amdgpu-sizeof-alignof.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-asyncmark-errs.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-asyncmark.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx9.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-workgroup-size.cl
    M clang/test/CodeGenOpenCL/func-call-dbg-loc.cl
    M clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
    M clang/test/CodeGenOpenCL/preserve_vec3.cl
    M clang/test/CodeGenSYCL/address-space-conversions.cpp
    M clang/test/CodeGenSYCL/amd-address-space-conversions.cpp
    M clang/test/CodeGenSYCL/cuda-address-space-conversions.cpp
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/DebugInfo/CXX/debug-info.cpp
    M clang/test/DebugInfo/Generic/bitfield-0-struct.c
    M clang/test/DebugInfo/Generic/macro.c
    M clang/test/DebugInfo/ObjC/nontrivial-c-struct-exception.m
    M clang/test/Driver/aarch64-v96a.c
    M clang/test/Driver/aix-object-mode.c
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Driver/baremetal-multilib.yaml
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/driverkit-path.c
    A clang/test/Driver/fsanitize-shadow-call-stack-hexagon.c
    A clang/test/Driver/gpu-exceptions.cpp
    A clang/test/Driver/hexagon-hvx-ieee-qfloat.c
    M clang/test/Driver/hexagon-toolchain-elf.c
    M clang/test/Driver/hexagon-toolchain-picolibc.c
    M clang/test/Driver/hip-binding.hip
    M clang/test/Driver/hip-device-compile.hip
    M clang/test/Driver/hip-device-libs-llvm-env.hip
    M clang/test/Driver/hip-link-bundle-archive.hip
    M clang/test/Driver/hip-phases.hip
    M clang/test/Driver/hip-target-id.hip
    M clang/test/Driver/hip-toolchain-no-rdc.hip
    M clang/test/Driver/hipstdpar.c
    M clang/test/Driver/incompatible_sysroot.c
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/offload-arch-translation-amdgpu.cu
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/print-enabled-extensions/aarch64-hip12.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-profiles.c
    M clang/test/Driver/stack-protector-guard.c
    M clang/test/Driver/sycl-offload-jit.cpp
    A clang/test/Driver/sycl-print-internal-defines.cpp
    M clang/test/Driver/unknown-std.cpp
    M clang/test/Driver/wasm-toolchain.c
    M clang/test/Driver/x86-march.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/Driver/zos-ld.c
    M clang/test/FixIt/fixit-unicode-named-escape-sequences.c
    M clang/test/Frontend/ast-codegen.c
    A clang/test/Frontend/linemarker-invalid-escape.c
    M clang/test/Frontend/x86-target-cpu.c
    A clang/test/Headers/Inputs/zos/usr/include/grp.h
    A clang/test/Headers/Inputs/zos/usr/include/locale.h
    A clang/test/Headers/Inputs/zos/usr/include/math.h
    A clang/test/Headers/Inputs/zos/usr/include/poll.h
    A clang/test/Headers/Inputs/zos/usr/include/string.h
    A clang/test/Headers/Inputs/zos/usr/include/time.h
    A clang/test/Headers/Inputs/zos/usr/include/variant.h
    M clang/test/Headers/__clang_hip_math.hip
    M clang/test/Headers/amdhsa_abi.cl
    A clang/test/Headers/gpu-device-functions.cpp
    M clang/test/Headers/stdarg.cpp
    A clang/test/Headers/zos-guard.c
    M clang/test/Index/index-builtin-sve.cpp
    A clang/test/Lexer/char-escapes-delimited-invalid-utf8.c
    M clang/test/Lexer/char-escapes-delimited.c
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Lexer/has_feature_modules.m
    M clang/test/Lexer/string-literal-encoding.c
    M clang/test/Lexer/unicode.c
    M clang/test/Misc/constexpr-source-ranges.cpp
    A clang/test/Misc/diagnostic-color-output-stream.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M clang/test/Misc/target-invalid-cpu-note/x86.c
    M clang/test/Modules/codegen.test
    M clang/test/Modules/embed-files-compressed.cpp
    A clang/test/Modules/modules-lambda-dependent-crash.cppm
    A clang/test/Modules/modules-local-class-dependent-crash.cppm
    A clang/test/Modules/modules-using-enum-class-scope.cppm
    A clang/test/Modules/pr204479.cppm
    R clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc-amdgcnspirv.c
    M clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
    A clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-verbose.c
    M clang/test/OffloadTools/clang-offload-bundler/zstd.c
    M clang/test/OffloadTools/clang-sycl-linker/basic.ll
    M clang/test/OffloadTools/clang-sycl-linker/split-mode.ll
    M clang/test/OffloadTools/clang-sycl-linker/triple.ll
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/bug56913.c
    M clang/test/OpenMP/bug60602.cpp
    M clang/test/OpenMP/declare_target_local_codegen.cpp
    M clang/test/OpenMP/distribute_codegen.cpp
    M clang/test/OpenMP/distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/distribute_private_codegen.cpp
    M clang/test/OpenMP/distribute_simd_codegen.cpp
    M clang/test/OpenMP/distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/for_firstprivate_codegen.cpp
    M clang/test/OpenMP/map_struct_ordering.cpp
    M clang/test/OpenMP/nvptx_lambda_capturing.cpp
    M clang/test/OpenMP/nvptx_target_parallel_reduction_codegen_tbaa_PR46146.cpp
    R clang/test/OpenMP/nvptx_teams_reduction_codegen.cpp
    M clang/test/OpenMP/parallel_firstprivate_codegen.cpp
    M clang/test/OpenMP/parallel_if_codegen_PR51349.cpp
    M clang/test/OpenMP/reduction_implicit_map.cpp
    M clang/test/OpenMP/sections_firstprivate_codegen.cpp
    M clang/test/OpenMP/single_firstprivate_codegen.cpp
    M clang/test/OpenMP/spirv_target_teams_reduction_addrspace.c
    M clang/test/OpenMP/target_codegen_global_capture.cpp
    M clang/test/OpenMP/target_default_codegen.cpp
    M clang/test/OpenMP/target_defaultmap_codegen_03.cpp
    M clang/test/OpenMP/target_dyn_groupprivate_codegen.cpp
    M clang/test/OpenMP/target_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen.cpp
    M clang/test/OpenMP/target_has_device_addr_codegen_01.cpp
    M clang/test/OpenMP/target_is_device_ptr_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_no_length_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_codegen_03.cpp
    M clang/test/OpenMP/target_map_codegen_hold.cpp
    M clang/test/OpenMP/target_map_deref_array_codegen.cpp
    M clang/test/OpenMP/target_map_member_expr_codegen.cpp
    M clang/test/OpenMP/target_offload_mandatory_codegen.cpp
    M clang/test/OpenMP/target_ompx_dyn_cgroup_mem_codegen.cpp
    M clang/test/OpenMP/target_parallel_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_codegen-2.cpp
    M clang/test/OpenMP/target_parallel_generic_loop_uses_allocators_codegen.cpp
    M clang/test/OpenMP/target_parallel_if_codegen.cpp
    M clang/test/OpenMP/target_parallel_num_threads_codegen.cpp
    M clang/test/OpenMP/target_parallel_num_threads_strict_codegen.cpp
    M clang/test/OpenMP/target_private_codegen.cpp
    M clang/test/OpenMP/target_task_affinity_codegen.cpp
    M clang/test/OpenMP/target_teams_ast_print.cpp
    M clang/test/OpenMP/target_teams_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_num_teams_messages.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_order_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/target_teams_generic_loop_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_collapse_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_if_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_order_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_generic_loop_uses_allocators_codegen.cpp
    M clang/test/OpenMP/target_teams_map_codegen.cpp
    M clang/test/OpenMP/target_teams_num_teams_codegen.cpp
    A clang/test/OpenMP/target_teams_reduction_codegen.cpp
    M clang/test/OpenMP/target_teams_thread_limit_codegen.cpp
    M clang/test/OpenMP/taskloop_strictmodifier_codegen.cpp
    M clang/test/OpenMP/teams_codegen.cpp
    M clang/test/OpenMP/teams_distribute_codegen.cpp
    M clang/test/OpenMP/teams_distribute_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_copyin_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_proc_bind_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_if_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_num_threads_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_proc_bind_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_parallel_for_simd_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_reduction_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_collapse_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_dist_schedule_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_lastprivate_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_private_codegen.cpp
    M clang/test/OpenMP/teams_distribute_simd_reduction_codegen.cpp
    M clang/test/OpenMP/teams_firstprivate_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_codegen-1.cpp
    M clang/test/OpenMP/teams_generic_loop_collapse_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_private_codegen.cpp
    M clang/test/OpenMP/teams_generic_loop_reduction_codegen.cpp
    M clang/test/OpenMP/teams_num_teams_messages.cpp
    M clang/test/OpenMP/teams_private_codegen.cpp
    A clang/test/PCH/dllexport-ctor-closure-copy.cpp
    A clang/test/PCH/pch-debuginfo-vtable.cpp
    M clang/test/Parser/c2x-auto.c
    M clang/test/Parser/cxx0x-attributes.cpp
    M clang/test/Parser/cxx0x-keyword-attributes.cpp
    M clang/test/Parser/cxx1z-class-template-argument-deduction.cpp
    M clang/test/Preprocessor/aarch64-target-features.c
    A clang/test/Preprocessor/hardlink-include-names.c
    M clang/test/Preprocessor/init-s390x.c
    M clang/test/Preprocessor/init.c
    M clang/test/Preprocessor/line-directive-output.c
    M clang/test/Preprocessor/line-directive.c
    M clang/test/Preprocessor/pragma_module.c
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/predefined-macros.c
    M clang/test/Preprocessor/ucn-pp-identifier.c
    M clang/test/Preprocessor/x86_target_features.c
    M clang/test/Rewriter/objc-modern-getclass-proto.mm
    A clang/test/Sema/Inputs/warn-fortify-source-umask-darwin.h
    A clang/test/Sema/Inputs/warn-fortify-source-umask-glibc.h
    A clang/test/Sema/Inputs/warn-fortify-source-umask.h
    M clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.cpp
    M clang/test/Sema/LifetimeSafety/annotation-suggestions.cpp
    A clang/test/Sema/LifetimeSafety/dangling-field-implicit-ctor.cpp
    M clang/test/Sema/LifetimeSafety/dangling-global.cpp
    M clang/test/Sema/LifetimeSafety/invalidations.cpp
    M clang/test/Sema/LifetimeSafety/lifetime-facts.cpp
    M clang/test/Sema/LifetimeSafety/lifetimebound-violation.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-cross-tu.cpp
    M clang/test/Sema/LifetimeSafety/misplaced-lifetimebound-intra-tu.cpp
    M clang/test/Sema/LifetimeSafety/safety-c.c
    M clang/test/Sema/LifetimeSafety/safety.cpp
    M clang/test/Sema/aarch64-bf16-ldst-intrinsics.c
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.cpp
    M clang/test/Sema/aarch64-sme-func-attrs.c
    M clang/test/Sema/aarch64-sme-streaming-nonstreaming-vl-checks.c
    M clang/test/Sema/aarch64-sme2p1-diagnostics.c
    M clang/test/Sema/aarch64-sme2p1-intrinsics/acle_sme2p1_imm.cpp
    M clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_imm.c
    M clang/test/Sema/asm.c
    A clang/test/Sema/atomic-auto-type.c
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/attr-arm-sve-vector-bits.c
    A clang/test/Sema/attr-const-pure.c
    A clang/test/Sema/aux-target-builtin-constexpr.cpp
    A clang/test/Sema/builtin-abs-invalid.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/matrix-type-operators.c
    A clang/test/Sema/offsetof-unsigned-index.c
    M clang/test/Sema/scoped-atomic-ops.c
    M clang/test/Sema/sifive-xsfmm.c
    A clang/test/Sema/warn-fortify-source-umask-darwin.c
    A clang/test/Sema/warn-fortify-source-umask-forward-decl.c
    A clang/test/Sema/warn-fortify-source-umask-glibc.c
    A clang/test/Sema/warn-fortify-source-umask-not-builtin.c
    A clang/test/Sema/warn-fortify-source-umask-record-member.c
    A clang/test/Sema/warn-fortify-source-umask-redecl.c
    M clang/test/Sema/warn-fortify-source.c
    M clang/test/SemaCXX/GH195416.cpp
    A clang/test/SemaCXX/GH203701.cpp
    A clang/test/SemaCXX/amdgpu-feature-builtins-invalid-use.cpp
    M clang/test/SemaCXX/attr-arm-sve-vector-bits.cpp
    M clang/test/SemaCXX/condition.cpp
    M clang/test/SemaCXX/constant-expression-cxx14.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/test/SemaCXX/cxx2c-pack-indexing.cpp
    M clang/test/SemaCXX/deduced-return-type-cxx14.cpp
    M clang/test/SemaCXX/enable_if-nested-call-with-valuedependent-param.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/ext-int.cpp
    A clang/test/SemaCXX/gh147127.cpp
    A clang/test/SemaCXX/gh196469-default-member-init-lambda-capture.cpp
    A clang/test/SemaCXX/init-list-incomplete-dtor-crash.cpp
    M clang/test/SemaCXX/injected-class-name-crash.cpp
    A clang/test/SemaCXX/inline-asm-aggregate-output.cpp
    M clang/test/SemaCXX/member-class-11.cpp
    A clang/test/SemaCXX/ms-ctor-closure.cpp
    M clang/test/SemaCXX/source_location.cpp
    M clang/test/SemaCXX/static-assert-cxx26.cpp
    M clang/test/SemaCXX/static-assert.cpp
    M clang/test/SemaCXX/type-traits-incomplete.cpp
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/typo-correction.cpp
    M clang/test/SemaCXX/warn-bool-conversion.cpp
    M clang/test/SemaCXX/warn-implicit-unicode-conversions.cpp
    M clang/test/SemaCXX/warn-tautological-compare.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-warning-data-invocation.cpp
    M clang/test/SemaHIP/amdgpu-feature-predicates-guard-use.hip
    M clang/test/SemaHLSL/BuiltIns/ConstantBuffer-member-funcs.hlsl
    A clang/test/SemaHLSL/BuiltIns/InterlockedOr-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/asuint-errors.hlsl
    M clang/test/SemaHLSL/Resources/ConstantBuffers.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-CalculateLevelOfDetail.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-GetDimensions.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-SampleBias.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmp.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-SampleCmpLevelZero.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-SampleGrad.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-SampleLevel.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-Sema.hlsl
    A clang/test/SemaHLSL/Resources/Texture2DArray-Subscript.hlsl
    A clang/test/SemaHLSL/Texture2DArray-Gather.hlsl
    A clang/test/SemaHLSL/Texture2DArray-GatherCmp-Vulkan.hlsl
    A clang/test/SemaHLSL/Texture2DArray-Load-errors.hlsl
    A clang/test/SemaHLSL/Texture2DArray-mips-errors.hlsl
    M clang/test/SemaOpenACC/loop-construct-reduction-clause.cpp
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx9.cl
    A clang/test/SemaOpenCL/read-image-integer-linear-filter.cl
    M clang/test/SemaOpenCL/usm-address-spaces-conversions.cl
    M clang/test/SemaSYCL/address-space-conversions.cpp
    M clang/test/SemaSYCL/sycl-cconv-win.cpp
    A clang/test/SemaSYCL/sycl-kernel-param-restrictions.cpp
    A clang/test/SemaTemplate/GH198890.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/concepts.cpp
    M clang/test/SemaTemplate/ctad.cpp
    M clang/test/SemaTemplate/friend-template.cpp
    M clang/test/SemaTemplate/instantiate-member-template.cpp
    M clang/test/SemaTemplate/instantiate-scope.cpp
    M clang/test/SemaTemplate/member-specialization.cpp
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/test/Templight/templight-default-func-arg.cpp
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/lit.cfg.py
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/tools/clang-ssaf-analyzer/CMakeLists.txt
    M clang/tools/clang-ssaf-analyzer/SSAFAnalyzer.cpp
    M clang/tools/clang-ssaf-format/CMakeLists.txt
    M clang/tools/clang-ssaf-format/SSAFFormat.cpp
    M clang/tools/clang-ssaf-linker/CMakeLists.txt
    M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
    M clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
    M clang/tools/clang-sycl-linker/SYCLLinkOpts.td
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CLog.h
    M clang/unittests/AST/ASTImporterFixtures.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/AST/CMakeLists.txt
    M clang/unittests/AST/CommentLexer.cpp
    M clang/unittests/AST/StmtPrinterTest.cpp
    A clang/unittests/AST/SubobjectVisitorTest.cpp
    M clang/unittests/AST/TypePrinterTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNarrowingTest.cpp
    M clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M clang/unittests/Basic/LangOptionsTest.cpp
    M clang/unittests/Basic/SourceManagerTest.cpp
    M clang/unittests/CMakeLists.txt
    M clang/unittests/CodeGen/CodeGenExternalTest.cpp
    M clang/unittests/Driver/DXCModeTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestComments.cpp
    M clang/unittests/Format/NumericLiteralInfoTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Frontend/CompilerInvocationTest.cpp
    M clang/unittests/Index/CMakeLists.txt
    M clang/unittests/Index/IndexTests.cpp
    M clang/unittests/Interpreter/CodeCompletionTest.cpp
    M clang/unittests/Lex/PPMemoryAllocationsTest.cpp
    A clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/CallGraph/CallGraphExtractorTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowWPATest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
    A clang/unittests/ScalableStaticAnalysis/BuildNamespaceTest.cpp
    A clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
    A clang/unittests/ScalableStaticAnalysis/EntityIdTableTest.cpp
    A clang/unittests/ScalableStaticAnalysis/EntityIdTest.cpp
    A clang/unittests/ScalableStaticAnalysis/EntityLinkageTest.cpp
    A clang/unittests/ScalableStaticAnalysis/EntityLinkerTest.cpp
    A clang/unittests/ScalableStaticAnalysis/EntityNameTest.cpp
    A clang/unittests/ScalableStaticAnalysis/ErrorBuilderTest.cpp
    A clang/unittests/ScalableStaticAnalysis/FindDecl.h
    A clang/unittests/ScalableStaticAnalysis/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    A clang/unittests/ScalableStaticAnalysis/LUSummaryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/ModelStringConversionsTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/FancyAnalysisData.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/MockSerializationFormat.h
    A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor1.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/MockSummaryExtractor2.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/MockTUSummaryBuilder.h
    A clang/unittests/ScalableStaticAnalysis/Registries/SerializationFormatRegistryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Registries/SummaryExtractorRegistryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/JSONFormatTest.h
    A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/LUSummaryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/TUSummaryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/SourceTransformation/EmitterTest.cpp
    A clang/unittests/ScalableStaticAnalysis/SourceTransformation/RegistryTest.cpp
    A clang/unittests/ScalableStaticAnalysis/SummaryData/SummaryDataTest.cpp
    A clang/unittests/ScalableStaticAnalysis/SummaryNameTest.cpp
    A clang/unittests/ScalableStaticAnalysis/TUSummaryBuilderTest.cpp
    A clang/unittests/ScalableStaticAnalysis/TestFixture.cpp
    A clang/unittests/ScalableStaticAnalysis/TestFixture.h
    A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/AnalysisDriverTest.cpp
    A clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/ASTEntityMappingTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Analyses/CallGraph/CallGraphExtractorTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowWPATest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Analyses/UnsafeBufferUsage/UnsafeBufferUsageWPATest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/BuildNamespaceTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/CMakeLists.txt
    R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTableTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/EntityIdTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkageTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/EntityLinkerTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/EntityNameTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/ErrorBuilderTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/FindDecl.h
    R clang/unittests/ScalableStaticAnalysisFramework/Frontend/TUSummaryExtractorFrontendActionTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/LUSummaryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/ModelStringConversionsTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/FancyAnalysisData.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSerializationFormat.h
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor1.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockSummaryExtractor2.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/MockTUSummaryBuilder.h
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/SerializationFormatRegistryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Registries/SummaryExtractorRegistryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/JSONFormatTest.h
    R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/LUSummaryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/Serialization/JSONFormatTest/TUSummaryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/EmitterTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SourceTransformation/RegistryTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SummaryData/SummaryDataTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/SummaryNameTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/TUSummaryBuilderTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/TestFixture.h
    R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/AnalysisDriverTest.cpp
    R clang/unittests/ScalableStaticAnalysisFramework/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
    M clang/unittests/Tooling/HeaderIncludesTest.cpp
    M clang/unittests/Tooling/ToolingTest.cpp
    M clang/utils/TableGen/CIRLoweringEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangOpcodesEmitter.cpp
    A clang/utils/scan-deps-filter.py
    M clang/www/OpenProjects.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/make_cxx_dr_status
    M cmake/Modules/CMakePolicy.cmake
    M cmake/Modules/FindLibcCommonUtils.cmake
    M compiler-rt/CMakeLists.txt
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M compiler-rt/include/profile/InstrProfData.inc
    M compiler-rt/include/sanitizer/safestack_interface.h
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/addtf3.cpp
    M compiler-rt/lib/builtins/arm/addsf3.S
    M compiler-rt/lib/builtins/arm/divdf3.S
    A compiler-rt/lib/builtins/arm/thumb1/addsf3.S
    A compiler-rt/lib/builtins/arm/thumb1/addsf3fast.S
    M compiler-rt/lib/builtins/cpu_model/x86.c
    A compiler-rt/lib/builtins/fp_libc_config.h
    M compiler-rt/lib/fuzzer/FuzzerIO.cpp
    M compiler-rt/lib/hwasan/hwasan_checks.h
    M compiler-rt/lib/hwasan/hwasan_platform_interceptors.h
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_aarch64.S
    M compiler-rt/lib/hwasan/hwasan_tag_mismatch_riscv64.S
    M compiler-rt/lib/lsan/lsan_allocator.cpp
    M compiler-rt/lib/msan/msan_allocator.cpp
    M compiler-rt/lib/nsan/nsan.cpp
    M compiler-rt/lib/profile/CMakeLists.txt
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingBuffer.c
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/profile/InstrProfilingInternal.h
    M compiler-rt/lib/profile/InstrProfilingPlatformGPU.c
    M compiler-rt/lib/profile/InstrProfilingPlatformROCm.cpp
    A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSA.cpp
    A compiler-rt/lib/profile/InstrProfilingPlatformROCmHSADefs.h
    A compiler-rt/lib/profile/InstrProfilingPlatformROCmInternal.h
    M compiler-rt/lib/profile/InstrProfilingPlatformWindows.c
    M compiler-rt/lib/profile/InstrProfilingWriter.c
    M compiler-rt/lib/safestack/safestack.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc
    M compiler-rt/lib/sanitizer_common/sanitizer_flag_parser.h
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_mutex_test.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/chunk_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/flags_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/map_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/memtag_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/wrappers_cpp_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_libdispatch.cpp
    M compiler-rt/lib/tsan/rtl/tsan_platform.h
    M compiler-rt/lib/tysan/tysan.cpp
    M compiler-rt/lib/tysan/tysan_interceptors.cpp
    M compiler-rt/test/builtins/CMakeLists.txt
    A compiler-rt/test/builtins/Unit/addsf3new_test.c
    M compiler-rt/test/builtins/Unit/divdf3new_test.c
    M compiler-rt/test/builtins/Unit/lit.cfg.py
    M compiler-rt/test/builtins/Unit/lit.site.cfg.py.in
    A compiler-rt/test/builtins/Unit/subsf3_test.c
    A compiler-rt/test/profile/AMDGPU/device-basic.hip
    A compiler-rt/test/profile/AMDGPU/device-early-collect.hip
    A compiler-rt/test/profile/AMDGPU/device-no-kernel.hip
    A compiler-rt/test/profile/AMDGPU/device-symbols.hip
    A compiler-rt/test/profile/AMDGPU/lit.local.cfg.py
    A compiler-rt/test/profile/Darwin/instrprof-mcdc-correlation.c
    A compiler-rt/test/profile/GPU/instrprof-hip-basic.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-collect-after.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-counter-correctness.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-coverage.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-device-branching.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-fork-safety.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-multi-gpu.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-multi-process-merge.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-multiple-kernels.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-nondefault-device.hip
    A compiler-rt/test/profile/GPU/instrprof-hip-pgo-use.hip
    A compiler-rt/test/profile/GPU/lit.local.cfg.py
    A compiler-rt/test/profile/Inputs/instrprof-mcdc-correlation.cpp
    A compiler-rt/test/profile/Linux/instrprof-mcdc-correlation.c
    M compiler-rt/test/profile/instrprof-binary-correlate-debuginfod.c
    M compiler-rt/test/profile/instrprof-binary-correlate.c
    A compiler-rt/test/profile/instrprof-rocm-bounds-dedup.cpp
    A compiler-rt/test/profile/instrprof-rocm-grow-array.cpp
    M compiler-rt/test/profile/lit.cfg.py
    M compiler-rt/test/safestack/sigaltstack.c
    A compiler-rt/test/sanitizer_common/TestCases/Linux/read_pread_chk.c
    M compiler-rt/test/shadowcallstack/libc_support.h
    M compiler-rt/test/shadowcallstack/lit.cfg.py
    M compiler-rt/test/shadowcallstack/minimal_runtime.h
    A compiler-rt/test/tsan/Darwin/dispatch_apply.mm
    M compiler-rt/test/tsan/signal_in_read.c
    M compiler-rt/test/tysan/global.c
    A compiler-rt/test/tysan/memcpy_doesnt_change_shadow.c
    M cross-project-tests/CMakeLists.txt
    M cross-project-tests/debuginfo-tests/dexter-tests/aggregate-indirect-arg.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan-deque.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/asan.c
    M cross-project-tests/debuginfo-tests/dexter-tests/ctor.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/dbg-arg.c
    M cross-project-tests/debuginfo-tests/dexter-tests/deferred_globals.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/global-constant.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/hello.c
    M cross-project-tests/debuginfo-tests/dexter-tests/inline-line-gap.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/bitcast.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/const-branch.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inline-escaping-function.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/merged-store.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/struct-dse.c
    M cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
    M cross-project-tests/debuginfo-tests/dexter-tests/namespace.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo-string.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/nrvo.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/realigned-frame.cpp
    M cross-project-tests/debuginfo-tests/dexter-tests/stack-var.c
    M cross-project-tests/debuginfo-tests/dexter-tests/vla.c
    A cross-project-tests/debuginfo-tests/dexter/Heuristic.md
    M cross-project-tests/debuginfo-tests/dexter/README.md
    A cross-project-tests/debuginfo-tests/dexter/Script.md
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ScriptDebuggerController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/dbgeng/dbgeng.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/FrameIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/dextIR/StepIR.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
    A cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectRewriter.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/RunMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
    M cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/TestToolBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/ToolBase.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex-continue.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/control/dex_step_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/dex_declare_file.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_kinds.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_out_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/float_range_zero_nonmatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/missing_dex_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_line_range.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/penalty/unreachable_on_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/command_line.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_after_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/address_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/expression_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/identical_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/multiple_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/offset_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_address/self_comparison.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_declare_file/dex_and_source/test.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/default_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_conditional_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/dex_finish_test/limit_steps_simple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_program_state.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/direction.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/func_external.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/recursive.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_kind/small_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_step_order.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/expect_watch_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_multiple.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_no_arg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_small.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/float_range_watch/float_range_zero_match.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_check_json_step_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_loop.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_expect_value.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_line_mismatch.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_overlapping_ranges.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/limit_steps_same_line_conditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/limit_steps/unconditional.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_not_cmd_lineno.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/commands/perfect/unreachable_on_line.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/conditions.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/debug_aggregates.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_function.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/simple_where_line.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_after_hit_count.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_finish.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/then_step_out.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/watch_scope.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_file_paths.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_fn_hit_count.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_for_hit_count.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/debugging/where_hit_count_early_exit.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/basic_evaluate.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_at_frame.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_list_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_penalties.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_steps_perfect.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_types.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/evaluate_nothing.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/invalid_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/simple_labels.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/source_root_dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/lit.local.cfg
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/nested_wheres.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/bad-where-attr.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/error-locations.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/expect-all-with-value.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-address.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/invalid-script-nodes.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/parse-address.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/reject-bad-at_frame_idx.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/step-node-expected-values.test
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/parser/valid-parse.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_aggregates_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_at_frame_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expect_list_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_expects_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_list_aggregates_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_multiple_scripts_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_scopes_list_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_step_lines.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_step_lines_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/rewrite_types_expected.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/simple_prog.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test.dex
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/Inputs/whole_file_test_expected.dex
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_at_frame.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expect_list.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_expects.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_list_aggregates.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_multiple_scripts.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_scopes_list.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_step_lines.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/rewrite_types.cpp
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/rewriting/whole_file.test
    A cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/where_hit_count.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/address_printing.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_bad_label_ref.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_address.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_duplicate_label.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_label_kwarg.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_limit_steps_no_values.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_paren_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_dexdeclarefile.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_syntax_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_type_mline.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/err_undeclared_addr.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_another_line.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/label_offset.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/source-root-dir.cpp
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/test/target_run_args_with_command.c
    M cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp
    A cross-project-tests/dtlto/cache-serialization.test
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c
    M cross-project-tests/lit.cfg.py
    M flang-rt/include/flang-rt/runtime/allocator-registry.h
    M flang-rt/include/flang-rt/runtime/work-queue.h
    M flang-rt/lib/cuda/allocator.cpp
    M flang-rt/lib/cuda/descriptor.cpp
    M flang-rt/lib/runtime/CMakeLists.txt
    M flang-rt/lib/runtime/ISO_Fortran_binding.cpp
    M flang-rt/lib/runtime/__cuda_device.f90
    M flang-rt/lib/runtime/__fortran_type_info.f90
    M flang-rt/lib/runtime/__ppc_intrinsics.f90
    M flang-rt/lib/runtime/__ppc_types.f90
    M flang-rt/lib/runtime/cooperative_groups.f90
    M flang-rt/lib/runtime/cuda_runtime_api.f90
    M flang-rt/lib/runtime/cudadevice.f90
    M flang-rt/lib/runtime/descriptor.cpp
    M flang-rt/lib/runtime/mma.f90
    M flang-rt/lib/runtime/pointer.cpp
    M flang-rt/test/lit.cfg.py
    M flang-rt/unittests/Runtime/Allocatable.cpp
    M flang-rt/unittests/Runtime/Pointer.cpp
    M flang/CMakeLists.txt
    A flang/cmake/caches/BOLT-PGO.cmake
    A flang/cmake/caches/BOLT.cmake
    A flang/cmake/caches/PGO-stage2-instrumented.cmake
    A flang/cmake/caches/PGO-stage2.cmake
    A flang/cmake/caches/PGO.cmake
    M flang/docs/Directives.md
    M flang/docs/Extensions.md
    M flang/docs/FlangDriver.md
    M flang/docs/GettingInvolved.md
    M flang/docs/OpenACC-extensions.md
    M flang/docs/OpenMPSupport.md
    M flang/docs/ReleaseNotes.md
    M flang/docs/Semantics.md
    M flang/docs/conf.py
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/include/flang/Lower/ConvertExprToHLFIR.h
    M flang/include/flang/Lower/Support/ReductionProcessor.h
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    M flang/include/flang/Optimizer/Builder/BoxValue.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/Dialect/MIF/MIFOps.td
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/openmp-utils.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Runtime/CUDA/allocator.h
    M flang/include/flang/Runtime/allocator-registry-consts.h
    M flang/include/flang/Runtime/pointer.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/openmp-dsa.h
    M flang/include/flang/Semantics/openmp-utils.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Support/Flags.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/include/flang/Support/Fortran.h
    M flang/lib/Evaluate/fold-integer.cpp
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/MultiImageFortran.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineElementals.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/ACCRecipeBufferization.cpp
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    A flang/lib/Optimizer/OpenMP/HostOpFiltering.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkshare.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUDA/CUFAllocDelay.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFPredefinedVarToGPU.cpp
    M flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/FIRToSCF.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    M flang/lib/Parser/executable-parsers.cpp
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/openmp-utils.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-call.h
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-omp-atomic.cpp
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/check-omp-variant.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/openmp-dsa.cpp
    M flang/lib/Semantics/openmp-utils.cpp
    M flang/lib/Semantics/program-tree.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names-utils.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/rewrite-parse-tree.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/Flags.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/lib/Support/Fortran.cpp
    M flang/test/Analysis/AliasAnalysis/alias-analysis-host-assoc.fir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-1.fir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-target-2.fir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-scoped-origins.fir
    M flang/test/CMakeLists.txt
    A flang/test/Driver/bbc-implicit-use-module.f90
    M flang/test/Driver/color-diagnostics.f90
    A flang/test/Driver/fpseudo-probe-for-profiling.f90
    M flang/test/Driver/fsave-optimization-record.f90
    M flang/test/Driver/offload-device.f90
    M flang/test/Driver/omp-driver-offload.f90
    M flang/test/Fir/CUDA/cuda-device-func-transform.mlir
    A flang/test/Fir/CUDA/cuda-device-global-internal-linkage.fir
    M flang/test/Fir/CUDA/cuda-device-global.f90
    M flang/test/Fir/CUDA/cuda-function-rewrite.mlir
    M flang/test/Fir/CUDA/predefined-variables.mlir
    M flang/test/Fir/FirToSCF/do-loop.fir
    M flang/test/Fir/MIF/change_team.mlir
    M flang/test/Fir/MIF/change_team2.mlir
    M flang/test/Fir/MIF/co_broadcast.mlir
    M flang/test/Fir/MIF/co_max.mlir
    M flang/test/Fir/MIF/co_min.mlir
    M flang/test/Fir/MIF/co_sum.mlir
    M flang/test/Fir/MIF/coarray-alloc.mlir
    A flang/test/Fir/MIF/cobound.mlir
    A flang/test/Fir/MIF/coshape.mlir
    M flang/test/Fir/MIF/form_team.mlir
    M flang/test/Fir/MIF/get_team.mlir
    A flang/test/Fir/MIF/image_index.mlir
    M flang/test/Fir/MIF/init.mlir
    M flang/test/Fir/MIF/num_images.mlir
    M flang/test/Fir/MIF/sync_all.mlir
    M flang/test/Fir/MIF/sync_images.mlir
    M flang/test/Fir/MIF/sync_memory.mlir
    M flang/test/Fir/MIF/sync_team.mlir
    M flang/test/Fir/MIF/team_number.mlir
    M flang/test/Fir/MIF/this_image.mlir
    M flang/test/Fir/OpenACC/openacc-mappable.fir
    M flang/test/Fir/OpenMP/bounds-generation-for-char-arrays.f90
    M flang/test/Fir/basic-program.fir
    M flang/test/Fir/convert-to-llvm-openmp-and-fir.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/fir-ops.fir
    A flang/test/Fir/present-absent-if-fold.fir
    A flang/test/HLFIR/inline-elemental-multi-users.fir
    M flang/test/HLFIR/separate-allocatable-assign.fir
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M flang/test/Integration/OpenMP/workshare-array-array-assign.f90
    M flang/test/Integration/OpenMP/workshare-axpy.f90
    M flang/test/Integration/OpenMP/workshare-forall-sliced-array.f90
    M flang/test/Integration/OpenMP/workshare-scalar-array-assign.f90
    M flang/test/Integration/OpenMP/workshare-scalar-array-mul.f90
    A flang/test/Integration/pseudo-probe-for-profiling.f90
    M flang/test/Integration/split-lto-unit-2.f90
    A flang/test/Lower/CUDA/cuda-allocatable-component.cuf
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf
    M flang/test/Lower/CUDA/cuda-gpu-managed.cuf
    M flang/test/Lower/CUDA/cuda-proc-attribute.cuf
    M flang/test/Lower/MIF/coarray_allocation.f90
    M flang/test/Lower/MIF/coarray_allocation2.f90
    M flang/test/Lower/MIF/coarray_allocation3.f90
    M flang/test/Lower/MIF/coarray_allocation4.f90
    M flang/test/Lower/MIF/coarray_allocation5.f90
    A flang/test/Lower/MIF/cobound.f90
    A flang/test/Lower/MIF/coshape.f90
    A flang/test/Lower/MIF/image_index.f90
    M flang/test/Lower/MIF/this_image.f90
    M flang/test/Lower/OpenACC/acc-host-data-cuda-device.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-routine-bind-clone-signature.f90
    A flang/test/Lower/OpenACC/acc-routine-bind-devtype-filter.f90
    M flang/test/Lower/OpenACC/acc-routine-bind-devtype-undeclared.f90
    M flang/test/Lower/OpenACC/acc-routine-bind-string-undeclared.f90
    M flang/test/Lower/OpenACC/acc-routine-bind-undeclared.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map-2.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-implicit-scalar-map.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-teams-private-implicit-scalar-map.f90
    M flang/test/Lower/OpenMP/KernelLanguage/bare-clause.f90
    A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-multiple-types.f90
    A flang/test/Lower/OpenMP/Todo/declare-reduction-operator-use-assoc.f90
    A flang/test/Lower/OpenMP/Todo/locator-call-affinity.f90
    A flang/test/Lower/OpenMP/Todo/locator-call-from.f90
    A flang/test/Lower/OpenMP/Todo/locator-call-map.f90
    A flang/test/Lower/OpenMP/Todo/locator-call-to.f90
    A flang/test/Lower/OpenMP/Todo/locator-reserved.f90
    R flang/test/Lower/OpenMP/Todo/reduction-task.f90
    M flang/test/Lower/OpenMP/allocatable-dtype-intermediate-map-gen.f90
    M flang/test/Lower/OpenMP/allocatable-map.f90
    M flang/test/Lower/OpenMP/array-bounds.f90
    M flang/test/Lower/OpenMP/attach-and-ref-modifier.f90
    M flang/test/Lower/OpenMP/common-block-map.f90
    A flang/test/Lower/OpenMP/compound.f90
    M flang/test/Lower/OpenMP/declare-mapper.f90
    A flang/test/Lower/OpenMP/declare-reduction-logical-init.f90
    A flang/test/Lower/OpenMP/declare-reduction-operator-derived.f90
    A flang/test/Lower/OpenMP/declare-reduction-operator.f90
    A flang/test/Lower/OpenMP/declare-reduction-shadows-intrinsic-other-type.f90
    A flang/test/Lower/OpenMP/declare-reduction-shadows-intrinsic.f90
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/default-mapper-no-pointer-map.f90
    M flang/test/Lower/OpenMP/defaultmap.f90
    M flang/test/Lower/OpenMP/depend-iterator.f90
    M flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
    M flang/test/Lower/OpenMP/derived-type-map.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M flang/test/Lower/OpenMP/dyn-groupprivate-clause.f90
    M flang/test/Lower/OpenMP/groupprivate.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    M flang/test/Lower/OpenMP/implicit-mapper-no-pointer-map.f90
    M flang/test/Lower/OpenMP/local-intrinsic-sized-array-map.f90
    M flang/test/Lower/OpenMP/location.f90
    M flang/test/Lower/OpenMP/map-character.f90
    M flang/test/Lower/OpenMP/map-component-ref.f90
    M flang/test/Lower/OpenMP/map-descriptor-deferral.f90
    M flang/test/Lower/OpenMP/map-mapper.f90
    M flang/test/Lower/OpenMP/metadirective-construct.f90
    M flang/test/Lower/OpenMP/multiple-entry-points.f90
    A flang/test/Lower/OpenMP/non-rectangular-collapse.f90
    A flang/test/Lower/OpenMP/non-rectangular-collapse2.f90
    A flang/test/Lower/OpenMP/non-rectangular-collapse3.f90
    M flang/test/Lower/OpenMP/optional-argument-map-2.f90
    M flang/test/Lower/OpenMP/optional-argument-map-3.f90
    A flang/test/Lower/OpenMP/parallel-reduction-task.f90
    A flang/test/Lower/OpenMP/target-kernel-types.f90
    M flang/test/Lower/OpenMP/target-map-complex.f90
    M flang/test/Lower/OpenMP/target-parallel-private.f90
    M flang/test/Lower/OpenMP/target-scope.f90
    M flang/test/Lower/OpenMP/target-spmd.f90
    M flang/test/Lower/OpenMP/target-teams-private.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/workdistribute-target-teams-clauses.f90
    M flang/test/Lower/OpenMP/workdistribute.f90
    M flang/test/Lower/OpenMP/workshare.f90
    M flang/test/Parser/OpenMP/allocate-align-tree.f90
    M flang/test/Parser/OpenMP/allocate-tree-spec-part.f90
    M flang/test/Parser/OpenMP/allocate-tree.f90
    M flang/test/Parser/OpenMP/declare-variant.f90
    M flang/test/Parser/OpenMP/depobj-construct.f90
    M flang/test/Parser/OpenMP/groupprivate.f90
    M flang/test/Parser/OpenMP/metadirective-dirspec.f90
    M flang/test/Parser/OpenMP/metadirective-flush.f90
    M flang/test/Parser/OpenMP/openmp6-directive-spellings.f90
    M flang/test/Parser/OpenMP/threadprivate.f90
    A flang/test/Parser/acc-routine-in-interface.f90
    A flang/test/Preprocessing/carriage-return.f90
    A flang/test/Semantics/CUDA/cuf-constant-generic-unified.cuf
    A flang/test/Semantics/CUDA/cuf-device-procedures01.cuf
    A flang/test/Semantics/CUDA/cuf-device-procedures02.cuf
    A flang/test/Semantics/CUDA/cuf-generic-literal-host.cuf
    A flang/test/Semantics/CUDA/cuf-generic-nonvar-unified.cuf
    A flang/test/Semantics/CUDA/cuf-hostdevice-host-call.cuf
    A flang/test/Semantics/CUDA/cuf-ignore-tkr-m-error.cuf
    A flang/test/Semantics/CUDA/cuf-ignore-tkr-m-generic.cuf
    A flang/test/Semantics/CUDA/cuf-matching-distance.cuf
    A flang/test/Semantics/CUDA/cuf-missing-intrinsic-modules.cuf
    A flang/test/Semantics/CUDA/cuf-proc-attr-error.cuf
    A flang/test/Semantics/CUDA/cuf01.cuf
    A flang/test/Semantics/CUDA/cuf02.cuf
    A flang/test/Semantics/CUDA/cuf03.cuf
    A flang/test/Semantics/CUDA/cuf04.cuf
    A flang/test/Semantics/CUDA/cuf05.cuf
    A flang/test/Semantics/CUDA/cuf06.cuf
    A flang/test/Semantics/CUDA/cuf07.cuf
    A flang/test/Semantics/CUDA/cuf08.cuf
    A flang/test/Semantics/CUDA/cuf09.cuf
    A flang/test/Semantics/CUDA/cuf10.cuf
    A flang/test/Semantics/CUDA/cuf11.cuf
    A flang/test/Semantics/CUDA/cuf12.cuf
    A flang/test/Semantics/CUDA/cuf13.cuf
    A flang/test/Semantics/CUDA/cuf14.cuf
    A flang/test/Semantics/CUDA/cuf15.cuf
    A flang/test/Semantics/CUDA/cuf16.cuf
    A flang/test/Semantics/CUDA/cuf17.cuf
    A flang/test/Semantics/CUDA/cuf18.cuf
    A flang/test/Semantics/CUDA/cuf19.cuf
    A flang/test/Semantics/CUDA/cuf20.cuf
    A flang/test/Semantics/CUDA/cuf21.cuf
    A flang/test/Semantics/CUDA/cuf22.cuf
    A flang/test/Semantics/CUDA/cuf23.cuf
    A flang/test/Semantics/CUDA/cuf24.cuf
    A flang/test/Semantics/CUDA/cuf25.cuf
    A flang/test/Semantics/CUDA/cuf26.cuf
    A flang/test/Semantics/CUDA/cuf27.cuf
    A flang/test/Semantics/CUDA/cuf28.cuf
    A flang/test/Semantics/CUDA/cuf29.cuf
    A flang/test/Semantics/CUDA/cuf30.cuf
    A flang/test/Semantics/CUDA/cuf31.cuf
    A flang/test/Semantics/OpenACC/acc-component-ref-dsa.f90
    A flang/test/Semantics/OpenACC/acc-default-none-arrays.f90
    M flang/test/Semantics/OpenACC/acc-default-none-scalars-strict.f90
    M flang/test/Semantics/OpenACC/acc-default-none-scalars.f90
    M flang/test/Semantics/OpenACC/acc-kernels-loop.f90
    M flang/test/Semantics/OpenACC/acc-parallel.f90
    M flang/test/Semantics/OpenACC/acc-resolve01.f90
    A flang/test/Semantics/OpenACC/acc-routine-bad.f90
    A flang/test/Semantics/OpenACC/acc-routine-in-interface-name-mismatch.f90
    A flang/test/Semantics/OpenACC/acc-routine-in-interface.f90
    M flang/test/Semantics/OpenMP/affinity-clause.f90
    M flang/test/Semantics/OpenMP/affinity-invalid.f90
    M flang/test/Semantics/OpenMP/allocate02.f90
    M flang/test/Semantics/OpenMP/allocate04.f90
    M flang/test/Semantics/OpenMP/allocate_do1.f90
    M flang/test/Semantics/OpenMP/allocators03.f90
    M flang/test/Semantics/OpenMP/atomic-compare.f90
    M flang/test/Semantics/OpenMP/atomic.f90
    M flang/test/Semantics/OpenMP/atomic01.f90
    M flang/test/Semantics/OpenMP/cancel.f90
    M flang/test/Semantics/OpenMP/clause-validity01.f90
    M flang/test/Semantics/OpenMP/clause-validity02.f90
    M flang/test/Semantics/OpenMP/combined-constructs.f90
    M flang/test/Semantics/OpenMP/declarative-directive01.f90
    A flang/test/Semantics/OpenMP/declare-reduction-overbroad-lookup.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-mixed-merged.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-only-defined-op.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-only-merged.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-only-renamed.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-only.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-merged.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-reexport-remerge.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-shadow-merged.f90
    A flang/test/Semantics/OpenMP/declare-reduction-use-shadow.f90
    M flang/test/Semantics/OpenMP/declare-variant-match.f90
    M flang/test/Semantics/OpenMP/declare-variant.f90
    M flang/test/Semantics/OpenMP/default.f90
    M flang/test/Semantics/OpenMP/depend-substring.f90
    M flang/test/Semantics/OpenMP/detach02.f90
    M flang/test/Semantics/OpenMP/device-constructs.f90
    M flang/test/Semantics/OpenMP/do-collapse.f90
    M flang/test/Semantics/OpenMP/flush01.f90
    M flang/test/Semantics/OpenMP/flush02.f90
    M flang/test/Semantics/OpenMP/graph-id.f90
    M flang/test/Semantics/OpenMP/graph-reset.f90
    A flang/test/Semantics/OpenMP/if-clause-45-suggestion.f90
    M flang/test/Semantics/OpenMP/if-clause-45.f90
    A flang/test/Semantics/OpenMP/if-clause-50-suggestion.f90
    M flang/test/Semantics/OpenMP/if-clause-50.f90
    A flang/test/Semantics/OpenMP/if-clause-60.f90
    M flang/test/Semantics/OpenMP/if-clause.f90
    M flang/test/Semantics/OpenMP/interchange-permutation.f90
    M flang/test/Semantics/OpenMP/loop-transformation-clauses01.f90
    M flang/test/Semantics/OpenMP/loop-transformation-construct01.f90
    M flang/test/Semantics/OpenMP/masked.f90
    M flang/test/Semantics/OpenMP/nontemporal.f90
    M flang/test/Semantics/OpenMP/order-clause01.f90
    M flang/test/Semantics/OpenMP/ordered01.f90
    M flang/test/Semantics/OpenMP/ordered03.f90
    M flang/test/Semantics/OpenMP/requires01.f90
    M flang/test/Semantics/OpenMP/resolve02.f90
    M flang/test/Semantics/OpenMP/scan1.f90
    M flang/test/Semantics/OpenMP/sections01.f90
    M flang/test/Semantics/OpenMP/single03.f90
    M flang/test/Semantics/OpenMP/single04.f90
    M flang/test/Semantics/OpenMP/symbol08.f90
    A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor-omp61.f90
    A flang/test/Semantics/OpenMP/target-enter-data-temp-descriptor.f90
    M flang/test/Semantics/OpenMP/target-update01.f90
    M flang/test/Semantics/OpenMP/taskgroup01.f90
    M flang/test/Semantics/OpenMP/taskloop04.f90
    M flang/test/Semantics/OpenMP/threadset-clause.f90
    M flang/test/Semantics/OpenMP/tile01.f90
    M flang/test/Semantics/OpenMP/workshare02.f90
    M flang/test/Semantics/bug121973.f90
    A flang/test/Semantics/call03-ignore-tkr-c-relaxed.f90
    A flang/test/Semantics/call03-ignore-tkr-c-strict.f90
    M flang/test/Semantics/call47.f90
    M flang/test/Semantics/case01.f90
    R flang/test/Semantics/cuf-constant-generic-unified.cuf
    R flang/test/Semantics/cuf-device-procedures01.cuf
    R flang/test/Semantics/cuf-device-procedures02.cuf
    R flang/test/Semantics/cuf-generic-literal-host.cuf
    R flang/test/Semantics/cuf-ignore-tkr-m-error.cuf
    R flang/test/Semantics/cuf-ignore-tkr-m-generic.cuf
    R flang/test/Semantics/cuf-matching-distance.cuf
    R flang/test/Semantics/cuf-missing-intrinsic-modules.cuf
    R flang/test/Semantics/cuf-proc-attr-error.cuf
    R flang/test/Semantics/cuf01.cuf
    R flang/test/Semantics/cuf02.cuf
    R flang/test/Semantics/cuf03.cuf
    R flang/test/Semantics/cuf04.cuf
    R flang/test/Semantics/cuf05.cuf
    R flang/test/Semantics/cuf06.cuf
    R flang/test/Semantics/cuf07.cuf
    R flang/test/Semantics/cuf08.cuf
    R flang/test/Semantics/cuf09.cuf
    R flang/test/Semantics/cuf10.cuf
    R flang/test/Semantics/cuf11.cuf
    R flang/test/Semantics/cuf12.cuf
    R flang/test/Semantics/cuf13.cuf
    R flang/test/Semantics/cuf14.cuf
    R flang/test/Semantics/cuf15.cuf
    R flang/test/Semantics/cuf16.cuf
    R flang/test/Semantics/cuf17.cuf
    R flang/test/Semantics/cuf18.cuf
    R flang/test/Semantics/cuf19.cuf
    R flang/test/Semantics/cuf20.cuf
    R flang/test/Semantics/cuf21.cuf
    R flang/test/Semantics/cuf22.cuf
    R flang/test/Semantics/cuf23.cuf
    R flang/test/Semantics/cuf24.cuf
    R flang/test/Semantics/cuf25.cuf
    R flang/test/Semantics/cuf26.cuf
    R flang/test/Semantics/cuf27.cuf
    R flang/test/Semantics/cuf28.cuf
    A flang/test/Semantics/enumeration-type-declarations.f90
    A flang/test/Semantics/enumeration-type-forward-ref.f90
    A flang/test/Semantics/enumeration-type-relational.f90
    M flang/test/Semantics/indirect02.f90
    A flang/test/Semantics/stmt-func04.f90
    A flang/test/Transforms/CUF/cuf-alloc-delay.fir
    M flang/test/Transforms/DoConcurrent/basic_device.f90
    M flang/test/Transforms/DoConcurrent/basic_host.f90
    M flang/test/Transforms/DoConcurrent/basic_host.mlir
    M flang/test/Transforms/DoConcurrent/host_eval.f90
    M flang/test/Transforms/DoConcurrent/local_device.mlir
    M flang/test/Transforms/DoConcurrent/locality_specifiers_simple.mlir
    M flang/test/Transforms/DoConcurrent/map_shape_info.f90
    M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90
    M flang/test/Transforms/DoConcurrent/non_const_bounds.f90
    M flang/test/Transforms/DoConcurrent/non_reference_to_device.f90
    M flang/test/Transforms/DoConcurrent/reduce_add.mlir
    M flang/test/Transforms/DoConcurrent/reduce_all_regions.mlir
    M flang/test/Transforms/DoConcurrent/reduce_device.mlir
    M flang/test/Transforms/DoConcurrent/reduce_device_min.f90
    M flang/test/Transforms/DoConcurrent/reduce_local.mlir
    M flang/test/Transforms/DoConcurrent/reduction_symbol_resultion.f90
    M flang/test/Transforms/DoConcurrent/runtime_sized_array.f90
    M flang/test/Transforms/DoConcurrent/skip_all_nested_loops.f90
    M flang/test/Transforms/DoConcurrent/use_loop_bounds_in_body.f90
    M flang/test/Transforms/FIRToMemRef/slice-projected.mlir

  Log Message:
  -----------
  Merge branch 'main' into users/aokblast/libcxx/ci/bump_to_15.1


Compare: https://github.com/llvm/llvm-project/compare/c2a6fa7c98e3...6f470649ae32

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