[all-commits] [llvm/llvm-project] 66e8cc: [ConstraintElim] Handle (X | Y) >s -1 as X >s -1 &...

Alexey Bataev via All-commits all-commits at lists.llvm.org
Sat Jul 18 05:51:04 PDT 2026


  Branch: refs/heads/users/alexey-bataev/spr/slpmake-the-instruction-count-check-loop-aware
  Home:   https://github.com/llvm/llvm-project
  Commit: 66e8cc5ec83d7ec5e506c53b11c1d22887c0c418
      https://github.com/llvm/llvm-project/commit/66e8cc5ec83d7ec5e506c53b11c1d22887c0c418
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/or-non-negative.ll
    M llvm/test/Transforms/PhaseOrdering/constraint-eliminiation-interactions.ll

  Log Message:
  -----------
  [ConstraintElim] Handle (X | Y) >s -1 as X >s -1 && Y >s -1. (#209743)

InstCombine canonicalizes X >=s 0 && Y >=s 0 as (X | Y) >=s 0. Teach
ConstraintElimination to recover the signed-positive information by
looking through compares of binary ORs.

Alive2 Proof: https://alive2.llvm.org/ce/z/sqNF8M

Compile-time impact is neutral

https://llvm-compile-time-tracker.com/compare.php?from=88acd428fd72f44312408c3fb6165992fb3b043a&to=a2aa4cacb953b32d6319939b9aee3226a7294334&stat=instructions%3Au

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


  Commit: 6388cfc492e82702dfc1aa965adab7e85c7ad3d8
      https://github.com/llvm/llvm-project/commit/6388cfc492e82702dfc1aa965adab7e85c7ad3d8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/reduction.ll

  Log Message:
  -----------
  [AMDGPU] Add missing FMF flags in tests (NFC) (#210055)

The flags should be on the select, not the fcmp for nsz to have
any effect.


  Commit: 424fec2368d615dff78b4167e78e9bbb06fc4214
      https://github.com/llvm/llvm-project/commit/424fec2368d615dff78b4167e78e9bbb06fc4214
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/test/Analysis/AliasSet/memset.ll

  Log Message:
  -----------
  [NFC][test][AliasSet] Canonicalise memset.ll's overload suffices (#210059)

The second overload suffix here corresponds to the type of the length,
the third argument, which is an i64 not an i32. Canonicalise this to
avoid confusion from inconsistency.

Whilst here, fix the whitespace used to align the arguments in the
intrinsic declarations, a remnant of losing the two characters in "i8"
when migrating to opaque pointers.

Fixes: 9f0916129024 ("[AST] Add test coverage of memsets")
Fixes: ac924305793c ("[AliasSet] Convert tests to opaque pointers
(NFC)")


  Commit: 006d13e206401545c011028d85749071acdc5326
      https://github.com/llvm/llvm-project/commit/006d13e206401545c011028d85749071acdc5326
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Kernel.h
    M offload/plugins-nextgen/level_zero/include/L0Options.h
    M offload/plugins-nextgen/level_zero/src/L0Options.cpp
    M offload/plugins-nextgen/level_zero/src/L0Queue.cpp

  Log Message:
  -----------
  [OFFLOAD][L0][NFC] Cleanup dead code (#210060)

As we have done several refactorings lately, some dead code/data was
left behind inadvertedly. This is just cleaning it up.


  Commit: 6ba12f1878384fa0d5be092b511f67e7e808772b
      https://github.com/llvm/llvm-project/commit/6ba12f1878384fa0d5be092b511f67e7e808772b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll

  Log Message:
  -----------
  [X86] fold-signbit-reduction-cmp.ll - test for each x86-64 cpu level (#210051)


  Commit: 26c200d88e720fa88e8692ace13a493696ac591f
      https://github.com/llvm/llvm-project/commit/26c200d88e720fa88e8692ace13a493696ac591f
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Add support for AMDGCN sin builtins (#197784)

Adds codegen for the following AMDGCN sin builtins:

- __builtin_amdgcn_sinf (float)
- __builtin_amdgcn_sinh (half)
- __builtin_amdgcn_sin_bf16 (bfloat16)

These are lowered to the corresponding `llvm.amdgcn.sin` intrinsic.


  Commit: 8739d89c4c2475eefc4638882311515fc67f9f9b
      https://github.com/llvm/llvm-project/commit/8739d89c4c2475eefc4638882311515fc67f9f9b
  Author: Yuan Suo <suoyuan666 at s5n.xyz>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/test/Sema/LifetimeSafety/invalidations.cpp
    M clang/test/Sema/LifetimeSafety/safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Introduce buildOriginFlowChain to use-after-invalidation (#208891)

After completing the implementation of `buildOriginFlowChain`, we should
integrate it into the remaining diagnostics. I started with
`use-after-invalidation` because there is already an overload of
`buildOriginFlowChain` for `UseFact`.

While testing, I noticed the following diagnostics:

```txt
test.cpp:9:23: note: result of call to 'begin<std::vector<int>>' aliases the storage of parameter 'v'
    9 |   auto it = std::find(std::begin(v), std::end(v), 3); // expected-warning {{parameter 'v' is later invalidated}} \
      |                       ^~~~~~~~~~~~~
test.cpp:9:13: note: result of call to 'find<__gnu_cxx::__normal_iterator<int *, std::vector<int>>, int>' aliases the storage of parameter 'v'
    9 |   auto it = std::find(std::begin(v), std::end(v), 3); // expected-warning {{parameter 'v' is later invalidated}} \
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```

I think these diagnostics could be made clearer, but I'd prefer to
address that in a separate PR.

---------

Signed-off-by: Yuan Suo <suoyuan666 at s5n.xyz>


  Commit: 19595357e32b36383a025fddaaf8c38f90658b7b
      https://github.com/llvm/llvm-project/commit/19595357e32b36383a025fddaaf8c38f90658b7b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vpdpwssd.ll

  Log Message:
  -----------
  [X86] combineAdd - remove unnecessary add(a,concat(vpmaddwd(x,y),vpmaddwd(z,w))) -> vpdpwssd(a,concat(x,z),concat(y,w)) fold (#209838)

We already handle vpmaddwd concatenation in combineConcatVectorOps - but
512-bit vpmaddwd is only available on BWI targets, which was missing
from the tests

Technically if there's a target that has AVX512VNNI but not BWI, then
this fold would be useful, but there's no such target and there's a
limit to "what if" optimisations we really need.

A small attempt at cleaning out some not very useful code from
X86ISelLowering.cpp - I'm intending to do a lot more of this for 24.x / #143088


  Commit: e3d3b3b0cf3672480d6f781a9726cec1e7983d14
      https://github.com/llvm/llvm-project/commit/e3d3b3b0cf3672480d6f781a9726cec1e7983d14
  Author: DylanFleming-arm <85629460+DylanFleming-arm at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libc/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/simd.h
    M libc/src/__support/mathvec/CMakeLists.txt
    A libc/src/__support/mathvec/acosf.h
    A libc/src/__support/mathvec/acoshf.h
    A libc/src/__support/mathvec/acospif.h
    A libc/src/__support/mathvec/asinf.h
    A libc/src/__support/mathvec/asinhf.h
    A libc/src/__support/mathvec/asinpif.h
    A libc/src/__support/mathvec/atanf.h
    A libc/src/__support/mathvec/atanhf.h
    A libc/src/__support/mathvec/cbrtf.h
    M libc/src/__support/mathvec/common_constants.h
    A libc/src/__support/mathvec/cosf.h
    A libc/src/__support/mathvec/coshf.h
    A libc/src/__support/mathvec/cospif.h
    A libc/src/__support/mathvec/erff.h
    A libc/src/__support/mathvec/exp10f.h
    A libc/src/__support/mathvec/exp10m1f.h
    A libc/src/__support/mathvec/exp2f.h
    A libc/src/__support/mathvec/exp2m1f.h
    M libc/src/__support/mathvec/expf.h
    M libc/src/__support/mathvec/expf_utils.h
    A libc/src/__support/mathvec/expm1f.h
    A libc/src/__support/mathvec/log10f.h
    A libc/src/__support/mathvec/log1pf.h
    A libc/src/__support/mathvec/log2f.h
    A libc/src/__support/mathvec/logf.h
    A libc/src/__support/mathvec/rsqrtf.h
    A libc/src/__support/mathvec/sinf.h
    A libc/src/__support/mathvec/sinhf.h
    A libc/src/__support/mathvec/sinpif.h
    A libc/src/__support/mathvec/sqrtf.h
    A libc/src/__support/mathvec/tanf.h
    A libc/src/__support/mathvec/tanhf.h
    A libc/src/__support/mathvec/tanpif.h
    M libc/src/mathvec/CMakeLists.txt
    A libc/src/mathvec/abi_prefix.h
    A libc/src/mathvec/acosf.h
    A libc/src/mathvec/acoshf.h
    A libc/src/mathvec/acospif.h
    A libc/src/mathvec/asinf.h
    A libc/src/mathvec/asinhf.h
    A libc/src/mathvec/asinpif.h
    A libc/src/mathvec/atanf.h
    A libc/src/mathvec/atanhf.h
    A libc/src/mathvec/cbrtf.h
    A libc/src/mathvec/cosf.h
    A libc/src/mathvec/coshf.h
    A libc/src/mathvec/cospif.h
    A libc/src/mathvec/erff.h
    A libc/src/mathvec/exp10f.h
    A libc/src/mathvec/exp10m1f.h
    A libc/src/mathvec/exp2f.h
    A libc/src/mathvec/exp2m1f.h
    M libc/src/mathvec/expf.h
    A libc/src/mathvec/expm1f.h
    M libc/src/mathvec/generic/CMakeLists.txt
    A libc/src/mathvec/generic/acosf.cpp
    A libc/src/mathvec/generic/acoshf.cpp
    A libc/src/mathvec/generic/acospif.cpp
    A libc/src/mathvec/generic/asinf.cpp
    A libc/src/mathvec/generic/asinhf.cpp
    A libc/src/mathvec/generic/asinpif.cpp
    A libc/src/mathvec/generic/atanf.cpp
    A libc/src/mathvec/generic/atanhf.cpp
    A libc/src/mathvec/generic/cbrtf.cpp
    A libc/src/mathvec/generic/cosf.cpp
    A libc/src/mathvec/generic/coshf.cpp
    A libc/src/mathvec/generic/cospif.cpp
    A libc/src/mathvec/generic/erff.cpp
    A libc/src/mathvec/generic/exp10f.cpp
    A libc/src/mathvec/generic/exp10m1f.cpp
    A libc/src/mathvec/generic/exp2f.cpp
    A libc/src/mathvec/generic/exp2m1f.cpp
    M libc/src/mathvec/generic/expf.cpp
    A libc/src/mathvec/generic/expm1f.cpp
    A libc/src/mathvec/generic/log10f.cpp
    A libc/src/mathvec/generic/log1pf.cpp
    A libc/src/mathvec/generic/log2f.cpp
    A libc/src/mathvec/generic/logf.cpp
    A libc/src/mathvec/generic/rsqrtf.cpp
    A libc/src/mathvec/generic/sinf.cpp
    A libc/src/mathvec/generic/sinhf.cpp
    A libc/src/mathvec/generic/sinpif.cpp
    A libc/src/mathvec/generic/sqrtf.cpp
    A libc/src/mathvec/generic/tanf.cpp
    A libc/src/mathvec/generic/tanhf.cpp
    A libc/src/mathvec/generic/tanpif.cpp
    A libc/src/mathvec/log10f.h
    A libc/src/mathvec/log1pf.h
    A libc/src/mathvec/log2f.h
    A libc/src/mathvec/logf.h
    A libc/src/mathvec/rsqrtf.h
    A libc/src/mathvec/sinf.h
    A libc/src/mathvec/sinhf.h
    A libc/src/mathvec/sinpif.h
    A libc/src/mathvec/sqrtf.h
    A libc/src/mathvec/tanf.h
    A libc/src/mathvec/tanhf.h
    A libc/src/mathvec/tanpif.h
    M libc/test/src/mathvec/CMakeLists.txt
    A libc/test/src/mathvec/UnitTestWrappers.h
    A libc/test/src/mathvec/acosf_test.cpp
    A libc/test/src/mathvec/acoshf_test.cpp
    A libc/test/src/mathvec/acospif_test.cpp
    A libc/test/src/mathvec/asinf_test.cpp
    A libc/test/src/mathvec/asinhf_test.cpp
    A libc/test/src/mathvec/asinpif_test.cpp
    A libc/test/src/mathvec/atanf_test.cpp
    A libc/test/src/mathvec/atanhf_test.cpp
    A libc/test/src/mathvec/cbrtf_test.cpp
    A libc/test/src/mathvec/cosf_test.cpp
    A libc/test/src/mathvec/coshf_test.cpp
    A libc/test/src/mathvec/cospif_test.cpp
    A libc/test/src/mathvec/erff_test.cpp
    M libc/test/src/mathvec/exhaustive/CMakeLists.txt
    A libc/test/src/mathvec/exhaustive/acosf_test.cpp
    A libc/test/src/mathvec/exhaustive/acoshf_test.cpp
    A libc/test/src/mathvec/exhaustive/acospif_test.cpp
    A libc/test/src/mathvec/exhaustive/asinf_test.cpp
    A libc/test/src/mathvec/exhaustive/asinhf_test.cpp
    A libc/test/src/mathvec/exhaustive/asinpif_test.cpp
    A libc/test/src/mathvec/exhaustive/atanf_test.cpp
    A libc/test/src/mathvec/exhaustive/atanhf_test.cpp
    A libc/test/src/mathvec/exhaustive/cbrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/cosf_test.cpp
    A libc/test/src/mathvec/exhaustive/coshf_test.cpp
    A libc/test/src/mathvec/exhaustive/cospif_test.cpp
    A libc/test/src/mathvec/exhaustive/erff_test.cpp
    M libc/test/src/mathvec/exhaustive/exhaustive_test.h
    A libc/test/src/mathvec/exhaustive/exp10f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp10m1f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp2f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp2m1f_test.cpp
    M libc/test/src/mathvec/exhaustive/expf_test.cpp
    A libc/test/src/mathvec/exhaustive/expm1f_test.cpp
    A libc/test/src/mathvec/exhaustive/log10f_test.cpp
    A libc/test/src/mathvec/exhaustive/log1pf_test.cpp
    A libc/test/src/mathvec/exhaustive/log2f_test.cpp
    A libc/test/src/mathvec/exhaustive/logf_test.cpp
    A libc/test/src/mathvec/exhaustive/rsqrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinhf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinpif_test.cpp
    A libc/test/src/mathvec/exhaustive/sqrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanhf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanpif_test.cpp
    A libc/test/src/mathvec/exp10f_test.cpp
    A libc/test/src/mathvec/exp10m1f_test.cpp
    A libc/test/src/mathvec/exp2f_test.cpp
    A libc/test/src/mathvec/exp2m1f_test.cpp
    M libc/test/src/mathvec/expf_test.cpp
    A libc/test/src/mathvec/expm1f_test.cpp
    A libc/test/src/mathvec/log10f_test.cpp
    A libc/test/src/mathvec/log1pf_test.cpp
    A libc/test/src/mathvec/log2f_test.cpp
    A libc/test/src/mathvec/logf_test.cpp
    A libc/test/src/mathvec/rsqrtf_test.cpp
    A libc/test/src/mathvec/sinf_test.cpp
    A libc/test/src/mathvec/sinhf_test.cpp
    A libc/test/src/mathvec/sinpif_test.cpp
    A libc/test/src/mathvec/sqrtf_test.cpp
    A libc/test/src/mathvec/tanf_test.cpp
    A libc/test/src/mathvec/tanhf_test.cpp
    A libc/test/src/mathvec/tanpif_test.cpp

  Log Message:
  -----------
  [libc][mathvec] Add loop over scalar for unary FP32 (#199273)

Adds all FP32 unary functions currently supported in scalar LLVM LIBM to
LIBMVEC as loop over scalars.

Includes some cleanup of existing mathvec testing infrastructure


  Commit: 1cb7e838cd47ecad4050948c0c907ecb1f466ac3
      https://github.com/llvm/llvm-project/commit/1cb7e838cd47ecad4050948c0c907ecb1f466ac3
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU] Simplify some isVALU calls. NFC. (#210057)


  Commit: 122efb26893f7e214d0223615c3a4abcc0ac7796
      https://github.com/llvm/llvm-project/commit/122efb26893f7e214d0223615c3a4abcc0ac7796
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libcxx/include/__algorithm/is_heap_until.h
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap_until.pass.cpp

  Log Message:
  -----------
  [libc++] Optimize std::is_heap_until (#209141)

Fixes #208299


  Commit: 6e7ff09291652cc784a095707029852e249902f9
      https://github.com/llvm/llvm-project/commit/6e7ff09291652cc784a095707029852e249902f9
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp

  Log Message:
  -----------
  [AMDGPU] Improve debug printing of regunits in SIInsertWaitcnts (#210066)

Use the standard printRegUnit helper.


  Commit: c7a5b9c0ddd1a5e89a3e8b5a79a916f03e0689b7
      https://github.com/llvm/llvm-project/commit/c7a5b9c0ddd1a5e89a3e8b5a79a916f03e0689b7
  Author: Sean Clarke <sclarke at tenstorrent.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/HashRecognize.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/HashRecognize.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
    A llvm/test/Transforms/LoopIdiom/AArch64/cyclic-redundancy-check.ll
    A llvm/test/Transforms/LoopIdiom/RISCV/cyclic-redundancy-check.ll
    A llvm/test/Transforms/LoopIdiom/X86/cyclic-redundancy-check.ll
    M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll

  Log Message:
  -----------
  [LoopIdiomRecognize] Enable clmul optimization for CRC loops (#203405)

The current `optimizeCRCLoop` function always optimizes CRC loops to use
a 256-entry Sarwate lookup table to process a byte at a time (except on
Hexagon and with optsize). However, some targets are able to process
larger chunks of CRC data with carry-less/polynomial multiplication
instructions. Implement this approach in IR for such targets using the
`llvm.clmul` intrinsic. (Only with optsize for the moment, though.)

Like the current CRC loop optimization, this does not apply to the
Hexagon target, despite it having a `pmpyw` instruction.

Assisted-by: Claude Opus 4.8


  Commit: 73aa9102362f07e2f8fc537b3d2f72062d4a1e68
      https://github.com/llvm/llvm-project/commit/73aa9102362f07e2f8fc537b3d2f72062d4a1e68
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libsycl/docs/index.rst
    M libsycl/include/sycl/__impl/detail/kernel_arg_helpers.hpp
    A libsycl/include/sycl/__impl/detail/linearization.hpp
    M libsycl/include/sycl/__impl/detail/unified_range_view.hpp
    A libsycl/include/sycl/__impl/group.hpp
    A libsycl/include/sycl/__impl/memory_enums.hpp
    A libsycl/include/sycl/__impl/nd_item.hpp
    A libsycl/include/sycl/__impl/nd_range.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    A libsycl/include/sycl/__impl/sub_group.hpp
    M libsycl/include/sycl/__spirv/spirv_vars.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/detail/queue_impl.cpp
    A libsycl/test/basic/group.cpp
    A libsycl/test/basic/group_local_id.cpp
    A libsycl/test/basic/linear_sub_group.cpp
    A libsycl/test/basic/nd_range.cpp
    M libsycl/test/basic/queue_parallel_for_generic.cpp
    A libsycl/test/basic/sub_group_by_value_semantics.cpp
    A libsycl/test/basic/sub_group_common.cpp
    M libsycl/unittests/queue/sycl_kernel_launch.cpp

  Log Message:
  -----------
  [libsycl] Implement nd_range kernel submissions (#206505)

This PR adds core SYCL 2020 nd_range kernel submissions (including
nd_item, group, and sub_group).

Assisted with GH Copilot.

---------

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


  Commit: 0852ac5649a0ac6959af6fbc2e4cf6cf4bad7238
      https://github.com/llvm/llvm-project/commit/0852ac5649a0ac6959af6fbc2e4cf6cf4bad7238
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCSchedule.td
    M llvm/lib/Target/PowerPC/PPCSchedule440.td
    M llvm/lib/Target/PowerPC/PPCScheduleA2.td
    M llvm/lib/Target/PowerPC/PPCScheduleE500.td
    M llvm/lib/Target/PowerPC/PPCScheduleE500mc.td
    M llvm/lib/Target/PowerPC/PPCScheduleE5500.td
    M llvm/lib/Target/PowerPC/PPCScheduleG3.td

  Log Message:
  -----------
  [PowerPC] Remove itinerary IIC_LdStDCBA (#207227)

The itinerary IIC_LdStDCBA is defined and used in scheduling models, but
no instruction is assigned to it. However, since the instruction is
basically retired (not part of the portable Power ISA), and all
scheduling models model it similar to IIC_LdStDCBF, the itinerary can be
removed.


  Commit: 96cab305c0402e051d16e748911bd469b4ad57fe
      https://github.com/llvm/llvm-project/commit/96cab305c0402e051d16e748911bd469b4ad57fe
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/IR/VerifierAMDGPU.cpp
    M llvm/test/Assembler/callbr.ll

  Log Message:
  -----------
  [AMDGPU] Improve amdgcn_kill verification (#208220)


  Commit: 8c22bbde747ce8c577318c3fb6cafaae6f1b8aec
      https://github.com/llvm/llvm-project/commit/8c22bbde747ce8c577318c3fb6cafaae6f1b8aec
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV][P-ext] Replace lowerBuildVectorAsRV32PNarrowingShift with shuffle lowering. (#209088)

Add an implementation of isExtractSubvectorCheap for extracting
v2i16/v4i8 from a v4i16/v8i8 vector on RV32. This allows the
build_vector+extract_elt pattern to be turned into
shuffle_vector+extract_subvectors.

Assisted-by: Claude


  Commit: 00674044ab7111ce25ac9a613fefeace7dff1125
      https://github.com/llvm/llvm-project/commit/00674044ab7111ce25ac9a613fefeace7dff1125
  Author: Benjamin Jurk <106487517+bnjmnjrk at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [PatternMatch] Add m_SpecificType(Type*) matcher (#208427)

Fixes #208401.


  Commit: d333df5aeb31ecf867e1a7908a7814485f4aa7f0
      https://github.com/llvm/llvm-project/commit/d333df5aeb31ecf867e1a7908a7814485f4aa7f0
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [LLDB] Print stderr in HandleStop (#208875)

There are some testcases silently fail in stopping hook without
returning anything on FreeBSD. We dump the error from the handler to
make it easier to debug.


  Commit: 7fc7d8d5d2c10db1cff7f53175ad4cb158f0890d
      https://github.com/llvm/llvm-project/commit/7fc7d8d5d2c10db1cff7f53175ad4cb158f0890d
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes e3d3b3b (#210068)

This fixes e3d3b3b0cf3672480d6f781a9726cec1e7983d14.

Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=e3d3b3b0cf3672480d6f781a9726cec1e7983d14

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 638d6736400891b03f211487ccb643a49f14f743
      https://github.com/llvm/llvm-project/commit/638d6736400891b03f211487ccb643a49f14f743
  Author: Zeyi Xu <mitchell.xu2 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaLifetimeSafety.h
    A clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.c

  Log Message:
  -----------
  [LifetimeSafety] Add better lifetimebound fix-it spelling for C (#209967)

Use `__attribute__((lifetimebound))` as the default lifetimebound fix-it
spelling in pre-C23 C.
C++ and C23 continue to use `[[clang::lifetimebound]]` as the default
spelling.

When no explicit lifetimebound macro is configured, pre-C23 C only looks
for `__attribute__((lifetimebound))`, C++ and C23 keep looking for
`[[clang::lifetimebound]]` macros first, then
`__attribute__((lifetimebound))`.

Follow up of https://github.com/llvm/llvm-project/pull/204045


  Commit: 9ec7974432975674b0128ea85a54cb3e5b0ffa75
      https://github.com/llvm/llvm-project/commit/9ec7974432975674b0128ea85a54cb3e5b0ffa75
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [AMDGPU] Update libc/runtime target to use amdgpu (#210032)

Update libc/runtime targets to use "amdgpu" instead of "amdgcn". This
change is necessary to do libc testing with a
check-libc-amdgpu-amd-amdhsa target. The previous
check-libc-amdgcn-amd-amdhsa target already stopped working after
https://github.com/llvm/llvm-project/pull/209247.

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: dfa1360735f5a834ce96c8c63594e2cdc3bfe0ea
      https://github.com/llvm/llvm-project/commit/dfa1360735f5a834ce96c8c63594e2cdc3bfe0ea
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Add support for AMDGCN cos builtins (#197806)

Adds codegen for the following AMDGCN cos builtins:

- __builtin_amdgcn_cosf (float)
- __builtin_amdgcn_cosh (half)
- __builtin_amdgcn_cos_bf16 (bfloat16)

These are lowered to the corresponding `llvm.amdgcn.cos` intrinsic.


  Commit: 8f0a479f46c98e1a098319786d0848e4b9e0a98d
      https://github.com/llvm/llvm-project/commit/8f0a479f46c98e1a098319786d0848e4b9e0a98d
  Author: jandrovins <46629861+jandrovins at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    A llvm/test/Instrumentation/Instrumentor/load_store_gpu_ind.json
    A llvm/test/Instrumentation/Instrumentor/load_store_gpu_ind.ll

  Log Message:
  -----------
  [Instrumentor] Fix indirect arguments on gpu targets (#209835)

When an argument is passed indirectly,
`IRTCallDescription::createLLVMCall` spills it into a temporary alloca
and passes that alloca address to the runtime call. The alloca is
created in the target's alloca address space. On GPUs it is not address
space 0, which is what the runtime expects for indirect parameters. The
alloca pointer was passed as the argument, so its type didn't match the
call's declared parameter type, causing a "bad signature" assertion in
`CallInst::init` when instrumenting GPU code that requires indirection.
The solution is therefore to cast this pointer to address space 0 before
passing it the the instrumentor call.


  Commit: 689fa1d6d74a465130ad0b1705813e14d1cd5b1a
      https://github.com/llvm/llvm-project/commit/689fa1d6d74a465130ad0b1705813e14d1cd5b1a
  Author: Hardik Kumar <hardikxk at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  Fix Unintialised char *CommentLexer resulting in potential UB. (#210067)

The patch intialised the  pointer to a .
Previously the pointer would have some garbage value which might have
resulted in UB.

closes #210034


  Commit: f57bdc62619417a2ee9076ac05db9d115c3ba464
      https://github.com/llvm/llvm-project/commit/f57bdc62619417a2ee9076ac05db9d115c3ba464
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    A llvm/test/Transforms/ConstraintElimination/and-negative.ll
    M llvm/test/Transforms/PhaseOrdering/constraint-eliminiation-interactions.ll

  Log Message:
  -----------
  [ConstraintElim] Handle (X & Y) <s 0 as X <s 0 && Y <s 0. (#210033)

InstCombine canonicalizes X <s 0 && Y <s 0 as (X & Y) <s 0. Teach
ConstraintElimination to recover the signed-negative information by
looking through compares of binary ANDs.

Alive2 Proof: https://alive2.llvm.org/ce/z/R6DWqD

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

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


  Commit: c9ec54a8a781166546c1001a8bfb2448fbacda44
      https://github.com/llvm/llvm-project/commit/c9ec54a8a781166546c1001a8bfb2448fbacda44
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [RISCV] Add DUMMY_REG_PAIR_WITH_X0->GPR copy to copyPhysReg. (#209964)

The register coalescer can convert (extract_subreg x0_pair, sub_gpr_odd)
to a read of DUMMY_REG_PAIR_WITH_X0. This patch treats it the same as a
copy from X0.

I don't know if this is a good long term fix, but I think it's ok for
now. I will continue to look for other options.


  Commit: a5b70908d9cacd0aa1c918c920e8a6118b4340ce
      https://github.com/llvm/llvm-project/commit/a5b70908d9cacd0aa1c918c920e8a6118b4340ce
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/test/CodeGen/amdgpu-builtin-is-invocable.c
    M clang/test/CodeGen/amdgpu-builtin-processor-is.c
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-av-load.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-av-store.ll

  Log Message:
  -----------
  [AMDGPU] Guard more intrinsics with target features (#203956)


  Commit: 53dae32b8a3e973a1677bd2745b9128741d69f59
      https://github.com/llvm/llvm-project/commit/53dae32b8a3e973a1677bd2745b9128741d69f59
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libsycl/include/sycl/__impl/queue.hpp

  Log Message:
  -----------
  [libsycl] fix nd_range template resolution (#210081)

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


  Commit: d76f5249eaca89f73ff8e55783153a8376938abf
      https://github.com/llvm/llvm-project/commit/d76f5249eaca89f73ff8e55783153a8376938abf
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/tools/lldb-server/lldb-gdbserver.cpp

  Log Message:
  -----------
  [lldb][Windows] Don't let the inferior inherit the --pipe handle (#207024)

`lldb-server` writes its listening socket id to the `--pipe` handle and
then closes it. The parent process that spawned it reads the pipe until
EOF purely as a synchronization point (`"the server is now listening"`).

On Windows the inferior is launched with `bInheritHandles=TRUE` (it
needs the ConPTY handles), so it also inherited the pipe's write end.
That kept the write end open after `lldb-server` closed its own handle,
so the parent never saw EOF: it blocked until its read timeout and the
client's connection handshake timed out first.

This patch clears `HANDLE_FLAG_INHERIT` on the `--pipe` handle so the
inferior cannot keep the write end open, while leaving it valid for
lldb-server's own use.

rdar://180736036


  Commit: 694c561cf73e81943395e18b2d96621baf68efe5
      https://github.com/llvm/llvm-project/commit/694c561cf73e81943395e18b2d96621baf68efe5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp

  Log Message:
  -----------
  [CycleInfo] Store cycles in a flat preorder array. NFC (#209981)

Store cycles by value in one array in cycle-forest preorder, each cycle
immediately followed by its descendants, instead of heap-allocating each
cycle and holding its children in a std::vector<std::unique_ptr<>>.
Child and top-level iteration become pointer arithmetic that skips a
subtree via a new NumDescendants count, and sizeof(GenericCycle) drops
from 72 to 48. GenericCycleInfoCompute builds the forest with temporary
nodes, then flatten() moves it into the array.

GenericCycle still exposes raw pointers into this array. The eventual
goal is to replace them with an opaque handle, so all access goes
through GenericCycleInfo and the storage stays an implementation detail.

Aided by Fable 5


  Commit: 16c6374250a465204e067b518577a2b4fd655f93
      https://github.com/llvm/llvm-project/commit/16c6374250a465204e067b518577a2b4fd655f93
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M .github/workflows/llvm-abi-tests.yml

  Log Message:
  -----------
  workflows/llvm-abi-tests: Fix typo (#209917)

Introduced by 9bd8bbb2b76c55ca83ddb6e0aa8a3a79b65706d4.


  Commit: be1728c99d806654d4ce4e7ad17aa89885e8053c
      https://github.com/llvm/llvm-project/commit/be1728c99d806654d4ce4e7ad17aa89885e8053c
  Author: Rithik Sharma <rithiksh02 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/Dialect/IR/CIRStdOps.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/lib/CIR/CodeGen/CIRGenClass.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/IdiomRecognizer.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    A clang/test/CIR/CodeGen/func-identity-attr.c
    A clang/test/CIR/CodeGen/func-identity-attr.cpp
    A clang/test/CIR/IR/func-identity-attr.cir
    A clang/test/CIR/Transforms/idiom-recognizer-guards-void-result.cpp
    A clang/test/CIR/Transforms/idiom-recognizer-guards.cpp
    A clang/test/CIR/Transforms/idiom-recognizer-inline-namespace.cpp
    A clang/test/CIR/Transforms/idiom-recognizer.cir
    M clang/test/CIR/Transforms/idiom-recognizer.cpp
    M clang/tools/cir-opt/cir-opt.cpp

  Log Message:
  -----------
  [CIR] Add support for the IdiomRecognizer pass (#208854)

This patch adds the `IdiomRecognizer` pass, which raises calls to known
standard library functions into dedicated operations that later passes
can optimize. The implementation follows the ClangIR incubator, and
upstream had only the pass skeleton and the frontend wiring.

The pass recognizes the standard find algorithm and raises it to the new
operation `cir.std.find`. A call is raised when its callee carries the
matching identity tag, the argument count and the types line up, the
callee is not variadic, and the call is not `musttail`. LoweringPrepare
lowers the operation back to the original call with its attributes, so
behavior never changes when no transform fires.

The tag is the new `func_identity` form under the `func_info` union on
`cir.func`. It holds one entry from an enum naming the entities the
recognizer knows, so the tag itself carries no names. `CIRGen` attaches
it by the plain name, the std membership with inline namespaces looked
through, and whether the function is free, so members, static members,
operators, and functions outside std never match, while the recognizer
checks the shape of each call.

The pass reads facts from the operations alone, so the AST requirement
and its wiring are gone, the pass is registered with `cir-opt`, and a
test drives it over parsed CIR assembly.


  Commit: 3736a7bed1baae7c4b461062f89ddd76f799480d
      https://github.com/llvm/llvm-project/commit/3736a7bed1baae7c4b461062f89ddd76f799480d
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/test/API/commands/frame/var-dil/expr/Literals/TestFrameVarDILLiterals.py
    M lldb/test/API/commands/frame/var-dil/expr/Literals/main.cpp
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/TestFrameVarDILNullptrVar.py
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/main.c

  Log Message:
  -----------
  [lldb] Add `nullptr` literal to DIL (#208831)

DIL will first attempt resolving `nullptr` as a variable, and if there
is none, `nullptr` will be resolved as a null pointer.


  Commit: ab5e01593562aa25bd104118ff42192d4a6ea80f
      https://github.com/llvm/llvm-project/commit/ab5e01593562aa25bd104118ff42192d4a6ea80f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp

  Log Message:
  -----------
  [CycleInfo] Move cycle accessors to GenericCycleInfo. NFC (#209990)

Move member functions off GenericCycle onto GenericCycleInfo.
GenericCycle now holds only data and the child-iterator type, and all
cycle queries go through GenericCycleInfo. This prepares replacing the
GenericCycle pointer with an opaque handle.

Aided by Claude Opus 4.8


  Commit: 0d37efa88b64ee83230599c13587b06ec43e06c0
      https://github.com/llvm/llvm-project/commit/0d37efa88b64ee83230599c13587b06ec43e06c0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp

  Log Message:
  -----------
  SPIRV: Fix constructing temporary TTI in SPIRVPrepareFunctions (#209977)

Passes should obtain TargetTransformInfo from the analysis manager
and never construct one. It may contain pipeline configuration state
(e.g., TargetLibraryInfo).

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


  Commit: 4a578be311736c684214e87aa07800cd76dd2471
      https://github.com/llvm/llvm-project/commit/4a578be311736c684214e87aa07800cd76dd2471
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp

  Log Message:
  -----------
  PPC: Avoid constructing TargetTransformInfo in isHardwareLoopProfitable (#209972)

PPCTTIImpl::isHardwareLoopProfitable constructed a throwaway
TargetTransformInfo only to call CodeMetrics::analyzeBasicBlock. TTI
may contain pipeline configuration state, and should only be queried
from the PassManager. It was also particularly ugly to construct one
here given that we're inside a TTIImpl.

Most of what analyzeBasicBlock computes was not used here. Directly
sum the instruction code size costs, which was the only used component
of the analysis.

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


  Commit: 2fc864be4c7b254d61a0d2c397660951ac108cb7
      https://github.com/llvm/llvm-project/commit/2fc864be4c7b254d61a0d2c397660951ac108cb7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M llvm/unittests/FuzzMutate/StrategiesTest.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUMCExprTest.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.h
    M llvm/unittests/Target/AMDGPU/CSETest.cpp
    M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
    M llvm/unittests/Target/AMDGPU/ExecMayBeModifiedBeforeAnyUse.cpp
    M llvm/unittests/Target/AMDGPU/PALMetadata.cpp
    M llvm/unittests/Target/AMDGPU/UniformityAnalysisTest.cpp
    M llvm/unittests/Transforms/Utils/CodeExtractorTest.cpp

  Log Message:
  -----------
  AMDGPU: Use subarch triples in more unit tests (#210011)

Avoid looking up the target by the cpu name with the legacy
amdgcn name.

Co-authored-by: Claude (Claude-Opus-4.8)


  Commit: 49744c0cc07c85f201267d75ec064eab743270d4
      https://github.com/llvm/llvm-project/commit/49744c0cc07c85f201267d75ec064eab743270d4
  Author: Ron Green [NVIDIA] <rogreen at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/test/Parser/acc-unparse.f90

  Log Message:
  -----------
  [flang][OpenACC] Allow blanks around ':' in a gang-arg (#210089)

The parsers for the STATIC, DIM, and NUM forms of an OpenACC gang-arg
used the token strings "STATIC: ", "DIM: ", and "NUM: ", none of which
permit a blank between the keyword and the ':' separator. A space in a
TokenStringMatch pattern is the only place a blank is accepted in the
source (outside the leading/trailing skip), so a directive such as

    !$acc loop gang(static : 1)

was rejected with "expected end of OpenACC directive", even though
free-form Fortran allows optional blanks around the separator.

Move the blank in each token string to before the ':' ("STATIC :", etc.)
so zero or more blanks are accepted on either side of the separator. The
_tok form keeps the blank optional, so the no-space spelling still
parses without a warning.

Add parser/unparse coverage for the spaced spellings of the static, dim,
and num gang arguments.


  Commit: 4180e2bb885271956e80344354b046a9b4cf3031
      https://github.com/llvm/llvm-project/commit/4180e2bb885271956e80344354b046a9b4cf3031
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericUniformityImpl.h

  Log Message:
  -----------
  [UniformityAnalysis] Make divergent-exit cycle print order deterministic (#210107)

Once the set spills to the heap its iteration order follows allocation
addresses, so the printed order is nondeterministic.

Fix https://reviews.llvm.org/D130746 ("RFC: Uniformity Analysis for
Irreducible Control Flow")


  Commit: 74dee943ac272caa4cd80a2a23c7f866dd96b4ec
      https://github.com/llvm/llvm-project/commit/74dee943ac272caa4cd80a2a23c7f866dd96b4ec
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A llvm/test/tools/llvm-reduce/remove-funcs-inline-history.ll
    M llvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp

  Log Message:
  -----------
  [llvm-reduce] Fix !inline_history verifier issues (#199373)

We'd RAUW a function which would cause !inline_history metadata nodes to
be `ptr null` which doesn't pass the verifier.

Instead we can keep around metadata usages of the function with
replaceNonMetadataUsesWith().


  Commit: 8da6ab53c7533b9bc1e8eb5a2c8eaf195c45c0b3
      https://github.com/llvm/llvm-project/commit/8da6ab53c7533b9bc1e8eb5a2c8eaf195c45c0b3
  Author: UebelAndre <github at uebelandre.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M utils/bazel/.bazelrc
    M utils/bazel/llvm-project-overlay/clang-tools-extra/include-cleaner/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/lit_test.bzl
    A utils/bazel/llvm-project-overlay/llvm/utils/lit/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/utils/lit/tests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel

  Log Message:
  -----------
  [bazel] Updated lit_test to work from external workspaces (#204489)

This change should not change the behavior of tests but instead ensure
that no matter where a test is run (either as an external repo or as an
overlay from `./utils/bazel`) that the rendered source paths are correct
for that context.


  Commit: 202cb24d246a871e7ae0b5ebf900582d76e7a334
      https://github.com/llvm/llvm-project/commit/202cb24d246a871e7ae0b5ebf900582d76e7a334
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/lib/Serialization/ASTReader.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp

  Log Message:
  -----------
  [clang][Modules] Adding Specific Diagnostics when a Finalized PCM is Out-of-date due to Input File Changes (#209857)

We have good diagnostics coverage when a pcm cannot be dropped in
`ASTReader::readASTCore`, because we call `canRecoverFromOutOfDate` to
check if the pcm is finalized or not. This check is missing for input
file changes.

This PR fixes the diagnostics, so we do not fall to the generic error
`err_module_rebuild_finalized`, which is hard to reason and act on.


  Commit: a730dda7d520cff562e77efbe02b5bba470a2b36
      https://github.com/llvm/llvm-project/commit/a730dda7d520cff562e77efbe02b5bba470a2b36
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/AtomicLineLogger.h
    M clang/include/clang/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
    M clang/include/clang/DependencyScanning/InProcessModuleCache.h
    M clang/include/clang/Serialization/InMemoryModuleCache.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/DependencyScanning/InProcessModuleCache.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Serialization/InMemoryModuleCache.cpp
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    A clang/test/ClangScanDeps/logging-drop-pcm.c
    A clang/test/ClangScanDeps/logging-simple-by-name.c
    A clang/test/ClangScanDeps/logging-simple.c
    A clang/test/ClangScanDeps/logging-two-threads.c
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/clang-scan-deps/Opts.td
    M clang/unittests/Basic/AtomicLineLoggerTest.cpp
    M clang/unittests/DependencyScanning/InProcessModuleCacheTest.cpp
    M clang/unittests/Serialization/InMemoryModuleCacheTest.cpp

  Log Message:
  -----------
  [clang][DependencyScanning] Logging Dependency Scanning Events (#195896)

This PR sets up an `AtomicLineLogger` (added by
https://github.com/llvm/llvm-project/pull/205395) to log the sequence of
dependency scanning events. The logging is triggered by a new `LogPath`
option in `DependencyScanningServiceOptions`. This PR adds an option
`-log-path=` to `clang-scan-deps` to trigger the log.

We are logging 16 events during dependency scanning. 

| Event | Logged In | When |
|-------|-----------|------|
| `starting scanning command: <args>` | `DependencyScanningWorker.cpp` |
Start of each TU scan |
| `finished scanning command: <args>` | `DependencyScanningWorker.cpp` |
End of each TU scan |
| `init_compiler_instance_with_context: <args>` |
`DependencyScanningTool.cpp` | CompilerInstanceWithContext created for
by-name scanning |
| `start scan_by_name: <module name>` | `DependencyScanningTool.cpp` |
Start of a by-name module query |
| `finish scan_by_name: <module name>` | `DependencyScanningTool.cpp` |
End of a by-name module query |
| `module_compile_thread: parent=<TID> pcm_compile: <pcm path>` |
`CompilerInstance::compileModule` | A new thread is created to compile a
pcm |
| `timestamp_read: <pcm path>` |
`InProcessModuleCache::getModuleTimestamp` | Validation timestamp read |
| `timestamp_write: <pcm path>` |
`InProcessModuleCache::updateModuleTimestamp` | Validation timestamp
update |
| `pcm_write: <pcm path>` | `InProcessModuleCache::write` | PCM write to
disk attempted |
| `pcm_read_disk: <pcm path>` | `InProcessModuleCache::read` | PCM read
from disk attempted |
| `pcm_read_cached: <pcm path>` | `InMemoryModuleCache::lookupPCM` | PCM
looked up in in-memory cache |
| `pcm_add: <pcm path>` | `InMemoryModuleCache::addPCM` | PCM added to
cache (not validated) |
| `pcm_add_built: <pcm path>` | `InMemoryModuleCache::addBuiltPCM` | PCM
added to cache (final) |
| `pcm_finalized: <pcm path>` | `InMemoryModuleCache::finalizePCM` | PCM
marked as validated/final |
| `pcm_dropped: <pcm path>` | `InMemoryModuleCache::tryToDropPCM` | PCM
dropped (validation failed) |
| `pcm_not_dropped: <pcm path>` | `InMemoryModuleCache::tryToDropPCM` |
PCM not dropped (validation failed, but already final) |

In addition to checking the logger's functionality,
`clang/test/ClangScanDeps/logging-simple.c` checks against the change
committed by https://github.com/llvm/llvm-project/pull/177062. Without
https://github.com/llvm/llvm-project/pull/177062,
`clang/test/ClangScanDeps/logging-simple.c` fails.

This implementation adds a single instance of `AtomicLineLogger` to the
`DependencyScanningService`. Most of the plumbing goes into the
`ModuleCache` and its derived classes.

Assisted-by: claude-opus-4.6

rdar://39907408


  Commit: 908b5931ce3d9630ae3b897bd4c523945038fdcd
      https://github.com/llvm/llvm-project/commit/908b5931ce3d9630ae3b897bd4c523945038fdcd
  Author: Nikita Terentev <svet58585 at mail.ru>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/test/CodeGen/PowerPC/builtins-ppc-fma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-fpconstrained.c

  Log Message:
  -----------
  [NFC][Clang][PowerPC] Fix suspicious unsequenced volatile accesses in codegen tests (#199338)

When trying to add new Sema check in PR
https://github.com/llvm/llvm-project/pull/180955 some tests failed.
The following pattern is observed in these tests:
```
volatile x;
x = __builtinXXX(x, x, x);

```
For C and C++ standards order of evaluate funcall argument is
unsequence(or indeterminate sequence) and unsequence access for same
volatile variable is UB(because read volatile qualified variable is
side-effects).

As far as I undestand, unsequenced accesses is unwanted and new warning
is correct.
This PR try to fix it for tests:
```
\clang\test\CodeGen\PowerPC\builtins-ppc-fma.c
\clang\test\CodeGen\PowerPC\builtins-ppc-fpconstrained.c
```
Topics on discourse:
https://discourse.llvm.org/t/suspicious-use-volatile-qualified-variable-in-clang-codegen-tests/90837
Closed similar issue for SystemZ :
https://github.com/llvm/llvm-project/issues/186584


  Commit: dd2e6e03c75918dce69e9d1f46e7b356ef31c60d
      https://github.com/llvm/llvm-project/commit/dd2e6e03c75918dce69e9d1f46e7b356ef31c60d
  Author: Alexander Richardson <mail at alexrichardson.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [RISCV][RVY] Fix DwarfRegAlias for X10_Y to X15_Y (#210104)

The initial commit had typos here missing the leading 1.
This was not noticed since we don't have any tests yet that
emit .cfi_offset etc.

Fixes 5eb3969c7a0b192d74bf4730f854d4cfc25a6c77


  Commit: 409f15dbb1d3853fb563e6ac902a1067411c8b9f
      https://github.com/llvm/llvm-project/commit/409f15dbb1d3853fb563e6ac902a1067411c8b9f
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Section.h
    M lldb/source/API/SBSection.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Target/SectionLoadList.cpp
    M lldb/source/Target/Target.cpp
    M lldb/tools/lldb-test/lldb-test.cpp

  Log Message:
  -----------
  [lldb] Section::GetName should return a StringRef (#209926)

Section currently owns a ConstString to hold onto its name. I plan on
changing this in the future, but first I want to remove ConstString from
its API. This commit starts with `GetName`.


  Commit: 03c539c79af2d917be5f5120fb49e714d0f23101
      https://github.com/llvm/llvm-project/commit/03c539c79af2d917be5f5120fb49e714d0f23101
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp

  Log Message:
  -----------
  [RISCV] Use MCRegister. NFC (#210110)


  Commit: 5d99b0a9a79dd72ae45b88a7815edaf600808698
      https://github.com/llvm/llvm-project/commit/5d99b0a9a79dd72ae45b88a7815edaf600808698
  Author: Mauri de Souza Meneguzzo <mauri870 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_interface.h
    M compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp

  Log Message:
  -----------
  [tsan][go]: add a128 store, load, compare_exchange (#196833)

This commit adds a128 load, store and compare_exchange to the Go
sanitizer functions. This is needed for a new Go atomic type that
operate on 16-byte values.

The SANITIZER_GO macro was gating a128 and is now lifted. Based on the
__TSAN_HAS_INT128 macro definition, the only architecture excluded by it
that intersects with [Go race support
](https://go.dev/doc/articles/race_detector#Requirements) is s390x.

For https://github.com/golang/go/issues/61236


  Commit: fb908ede5170c8eadb4ff86b491ca48a23f23c17
      https://github.com/llvm/llvm-project/commit/fb908ede5170c8eadb4ff86b491ca48a23f23c17
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/CXX/temp/temp.param/p10-2a.cpp

  Log Message:
  -----------
  Add fallback type for Constrained placeholders other than plain auto. (#209893)

We were diagnosing this and leave the type in place, but that broke
invariants when
looking it up later. This patch just sets a fallback type to just the
'auto' (or a supported
type at least) instead, so that we gracefully continue.

Fixes: #208658


  Commit: 55fc45605710c642cf49a732f7d96a95c120db9f
      https://github.com/llvm/llvm-project/commit/55fc45605710c642cf49a732f7d96a95c120db9f
  Author: Farid Zakaria <farid.m.zakaria at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [NFC] Refactor when selecting x86-64 EH encoding to be less prone to error (#210109)

Use a case-scoped local (EHCM) rather than mutating the object file's
code model, so only the EH encoding selection is affected.


  Commit: f6ed48325939e40940fccce886e5414d26b7114e
      https://github.com/llvm/llvm-project/commit/f6ed48325939e40940fccce886e5414d26b7114e
  Author: hulxv <hulxxv at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/acos.h
    M libc/src/__support/math/acosbf16.h
    M libc/src/__support/math/acosf.h
    M libc/src/__support/math/acospif.h
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/asin_utils.h
    M libc/src/__support/math/asinbf16.h
    M libc/src/__support/math/asinf.h
    M libc/src/__support/math/asinpi.h
    M libc/src/__support/math/asinpif.h
    M libc/src/__support/math/atan2f.h
    M libc/src/__support/math/atan2f16.h
    M libc/src/__support/math/atan_utils.h
    M libc/src/__support/math/atanf.h
    R libc/src/__support/math/inv_trigf_utils.h
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] reduce duplicated inv trig helpers (#191364)

Instead of duplicate inv trig helpers for float and double. we can unify
them when that is possible and drop inv_trigf_utils after moving helpers
to asin_utils and atan_utils. That makes everything clean.


  Commit: dce66b626c98c2c85b77b6b77cef24adc4f01460
      https://github.com/llvm/llvm-project/commit/dce66b626c98c2c85b77b6b77cef24adc4f01460
  Author: Damian Rouson <rouson at lbl.gov>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/docs/FortranStandardsSupport.md

  Log Message:
  -----------
  [Flang] [Docs] Update DO CONCURRENT status (#209299)

Update the documentation of
1. `reduce` locality support
2. `do concurrent` support (link to implementation details).

---------

Co-authored-by: Dan Bonachea <dobonachea at lbl.gov>
Co-authored-by: Tarun Prabhu <tarunprabhu at gmail.com>


  Commit: 37cf7d04a3a7ec460aabed51a9a383d60bc63572
      https://github.com/llvm/llvm-project/commit/37cf7d04a3a7ec460aabed51a9a383d60bc63572
  Author: Zhen Wang <zhenw at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/lib/Lower/ConvertCall.cpp
    A flang/test/Lower/CUDA/cuda-managed-func-result.cuf

  Log Message:
  -----------
  [flang][cuda] Fix invalid host free of managed allocatable function results (#209945)

An allocatable function result with a CUDA data attribute is allocated
with the CUDA allocator, but the caller freed the temporary with a host
`free` (via `hlfir.destroy` → `fir.freemem`), corrupting the heap.
Release it through the CUDA-aware deallocation (`cuf.deallocate`)
instead.


  Commit: 5f371b2add3e2784e6e9921b42842e2a6622e24e
      https://github.com/llvm/llvm-project/commit/5f371b2add3e2784e6e9921b42842e2a6622e24e
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-flat-scratch-svs.mir

  Log Message:
  -----------
  [AMDGPU] Fold constant offset into SV form addressing in SVS frame index fallback (#208629)

Depends on #208624 (which depends on #208612).

In the SVS fallback path of `SIRegisterInfo::eliminateFrameIndex` for
flat scratch, the scratch address was materialized by moving the full
frame offset into the scavenged vaddr VGPR and forcing the
instruction's immediate offset to `0`, which also silently dropped
any pre-existing immediate offset on the instruction.

This splits the full constant offset with `TII->splitFlatOffset`, folding
as much as possible into the SV form instruction's immediate offset
field and materializing only the remainder (plus the frame register,
if any) into the vaddr VGPR.

Test: adds `scratch_{store,load}_svs_split_offset` to
`eliminate-frame-index-flat-scratch-svs.mir` (non-zero instruction
offset, now preserved and folded) and regenerates the existing checks.

Made with [Cursor](https://cursor.com)

Resolves https://github.com/llvm/llvm-project/issues/178968


  Commit: d4f4524291d734c4b3ddb55d205c6fffeefbea6a
      https://github.com/llvm/llvm-project/commit/d4f4524291d734c4b3ddb55d205c6fffeefbea6a
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Add support for AMDGCN exp2 builtins (#198025)

Adds codegen support for the following AMDGCN exp2 builtins:

- __builtin_amdgcn_exp2f (float)
- __builtin_amdgcn_exp2_bf16 (bfloat16)

These are lowered to the corresponding `llvm.amdgcn.exp2` intrinsic.


  Commit: 4c50e41095b36cfa2e362a4f1990c4df59533836
      https://github.com/llvm/llvm-project/commit/4c50e41095b36cfa2e362a4f1990c4df59533836
  Author: DylanFleming-arm <85629460+DylanFleming-arm at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libc/src/mathvec/abi_prefix.h

  Log Message:
  -----------
  [libc][mathvec] Fix missing ABI-prefix from causing errors (#210127)

abi_prefix.h throws errors for unsupported ABI targets. This patch
modifies that behaviour to instead fall back onto a default
naming scheme instead, as to not break non-vfabi supporting targets.


  Commit: 6563d2500c82deb27c7dab9bc17334de777f8cbc
      https://github.com/llvm/llvm-project/commit/6563d2500c82deb27c7dab9bc17334de777f8cbc
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cpp

  Log Message:
  -----------
  [sanitizer_common] fix shadowed ret hiding symbolizer read failures. (#209971)

The inner `bool ret` from ReadFromFile shadowed the outer one that is
returned, so a dead/closed symbolizer (0-byte read or read error) was
reported as success: SendCommand never restarted the crashed process,
and the addr2line path aborted on a CHECK over an empty buffer.
Regression from acfeb1a6c244. Add a regression test that feeds an EOF fd
through ReadFromSymbolizer and expects failure.


  Commit: e1fa984ae0a87cf6de3b656496ced466b35995c0
      https://github.com/llvm/llvm-project/commit/e1fa984ae0a87cf6de3b656496ced466b35995c0
  Author: Mariusz Borsa <wrotki at msn.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A compiler-rt/test/asan/TestCases/Darwin/atos-canary-symbolize.cpp

  Log Message:
  -----------
  [Sanitizers][Darwin] Add atos-canary test (#209338)

We've observed tests using atos symbolizer ocasionally failing for
several test runs on x86_64 machines, then stabilizing again. We were
unable to reproduce
this with local builds, so it's unclear what the root cause is.

To help investigate similar failures in the future, we're adding a test
exercising atos itself. Should atos start to fail again, this test
should fail too, and provide way more info helping debugging than other
tests do

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

---------

Co-authored-by: Mariusz Borsa <m_borsa at apple.com>
Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>


  Commit: 5fc5c2e4cde7ca12cbbd3868a8c24e0bbfcf570a
      https://github.com/llvm/llvm-project/commit/5fc5c2e4cde7ca12cbbd3868a8c24e0bbfcf570a
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors2.cpp
    A clang/test/CodeGenCXX/msvc-global-delete-forwarding-at-delete-site.cpp
    M clang/test/CodeGenCXX/msvc-global-delete-scalar-array-split.cpp
    M clang/test/CodeGenCXX/msvc-global-delete-scope-no-dtor.cpp
    M clang/test/CodeGenCXX/msvc-no-global-delete-forwarding.cpp

  Log Message:
  -----------
  [clang][win] Fix __global_delete wrappers for Arm64EC and cross-TU ::delete (#209585)

PR #188372 made Clang's MSVC-ABI deleting-destructor path route global
deletes
through compiler-generated __global_delete / __global_array_delete
wrappers
instead of referencing ::operator delete directly. This lets a deleting
destructor be emitted in environments (e.g. kernel mode) where no global
::operator delete exists: each wrapper defaults to a trapping
__empty_global_delete fallback, and a real forwarding body that calls
::operator delete is materialized only when the program actually uses
::delete.

This change refines how those wrappers and their fallbacks are emitted,
fixing
two problems that made the #188372 mechanism fail in practice.

New behavior:

- The trapping fallback is now emitted as a weak GlobalAlias to
__empty_global_delete rather than via an /alternatename directive. This
lowers
to a COFF weak-external-with-default -- exactly what MSVC emits -- so a
real
__global_delete defined in any TU overrides the fallback in every other
TU at
  link time.

- A ::delete expression now registers the wrapper for its resolved
global
operator delete directly (in EmitCXXDeleteExpr), so the strong
forwarding body
is emitted in that TU regardless of where the class's deleting
destructor is
defined. This matches MSVC, which emits the forwarder at every ::delete
site.

Bugs fixed:

1. Arm64EC (miscompile -> LNK2019). /alternatename only names the plain
symbol,
not the backend-generated "$$h" hybrid EC symbol referenced by the exit
thunk, so Arm64EC images left __global_delete$exit_thunk unresolved. The
weak
GlobalAlias correctly produces the "$$h" symbol, exit thunk, and plain
alias
   (verified on both x64 and Arm64EC).

2. Cross-TU ::delete (runtime crash). Previously the forwarding body was
only
emitted in a TU that *both* emitted a matching vector deleting
destructor and
contained a ::delete. A TU that only performed `::delete p` -- with the
class
defined elsewhere -- emitted no forwarder, so nothing overrode the
weak-alias
trap and the program executed a trapping __empty_global_delete at
runtime
(STATUS_ILLEGAL_INSTRUCTION). Registering the wrapper at the ::delete
site
   fixes this.

To share wrapper-creation logic between the deleting-destructor path and
the
delete-expression path, getOrCreateMSVCGlobalDeleteWrapper is promoted
from a
static helper in CGClass.cpp to a CodeGenModule method.

Verified end-to-end: a weak alias in one TU and a strong forwarder in
another
resolve to the forwarder under both lld-link and MSVC link.exe, and the
previously-crashing delete-only TU now runs cleanly.


  Commit: db43e54c966ce9146a05bc0e8cb1550f65f89e35
      https://github.com/llvm/llvm-project/commit/db43e54c966ce9146a05bc0e8cb1550f65f89e35
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/reproducer-remarks.ll
    M llvm/test/Transforms/ConstraintElimination/trunc.ll

  Log Message:
  -----------
  [ConstraintElim] Add trunc nuw support to condition checks (#209844)

Adding support for trunc nuw %x to i1 by using the m_ICmpLike pattern in
conditions the same way as icmp ne %x, 0

proof: https://alive2.llvm.org/ce/z/ZyDWZ2


  Commit: da6f3e6cc2565e4c6cf720931845c8eee132ce86
      https://github.com/llvm/llvm-project/commit/da6f3e6cc2565e4c6cf720931845c8eee132ce86
  Author: Ikhlas Ajbar <iajbar at quicinc.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp
    A llvm/test/CodeGen/Hexagon/rdfopt-liveins-hang.mir

  Log Message:
  -----------
  [Hexagon] Fix HexagonRDFOpt hang during live-in recomputation (#209986)

After HexagonRDFOpt, the compiler recomputed live-in registers for every
block in one batch. On large inputs (e.g. kernel builds) this was slow,
and on some functions each pass changed the live-in values of other
blocks, triggering more passes until the compiler hung (PR #207422).

Fix: process blocks one at a time in post-order (successors before
predecessors) and stop as soon as nothing changes. Add a pass limit as a
safety net to keep compile time bounded in all cases.


  Commit: c0b8c59b65afd268f286f56ef71f6433ac47dfd1
      https://github.com/llvm/llvm-project/commit/c0b8c59b65afd268f286f56ef71f6433ac47dfd1
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    A compiler-rt/test/memprof/TestCases/memprof_histogram_tail_clear.cpp
    A compiler-rt/test/memprof/TestCases/memprof_nonhistogram_tail_clear.cpp

  Log Message:
  -----------
  [compiler-rt][memprof] clear histogram tail granule on allocation. (#208911)

ClearShadow rounded the size down, leaving the partial tail counter
(ceil(size/8)-th) uncleared, so a recycled chunk leaked a stale count
into the last histogram bucket. Round up instead.


  Commit: e59415baa96d15415a230d1c438c722dca71516e
      https://github.com/llvm/llvm-project/commit/e59415baa96d15415a230d1c438c722dca71516e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll

  Log Message:
  -----------
  [SLP][NFC]Add tests with incorrect nsw propagation in shl/mul, NFC



Reviewers: 

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


  Commit: 909ba8d3508cf7177da65a4d1399f7bc5a3a4b98
      https://github.com/llvm/llvm-project/commit/909ba8d3508cf7177da65a4d1399f7bc5a3a4b98
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/test/CodeGen/AMDGPU/bf16-math.ll

  Log Message:
  -----------
  [AMDGPU] Select upper 16-bits for inline constants in packed BF16 (#209861)

>From gfx1250 software programming guide, v_pk_*_bf16 instructions using
inline constants must use OPSEL to select the upper 16-bits.

Fixes: LCOMPILER-2445


  Commit: 8116ab2889d74f25b8c5c0f0dbd7f6bb3aabfc8c
      https://github.com/llvm/llvm-project/commit/8116ab2889d74f25b8c5c0f0dbd7f6bb3aabfc8c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/sincos.ll

  Log Message:
  -----------
  [InstCombine] Use getInsertionPointAfterDef to get sin/cos InsertPt. (#210130)

The current logic added in
https://github.com/llvm/llvm-project/pull/194616
picks an incorrect insert point for the argument is an invoke.

Use getInsertionPointAfterDef and bail out if there is no such insert
point.

Fixes crashes in the added tests.

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


  Commit: 85cc99660cf051157f0ce50e3a976312b1f829bd
      https://github.com/llvm/llvm-project/commit/85cc99660cf051157f0ce50e3a976312b1f829bd
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 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 shl by BW-1 is converted to mul

shl nsw X, BW-1 is valid at X = -1, but mul X, INT_MIN is not nsw-safe
there. Drop nsw on the vector mul when a shl lane with shift amount
BW-1 is unified into mul during opcode interchange.

Fixes #210093

Reviewers: 

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


  Commit: e78a880505ca0c9ed102fc48100b4cdb280f4e34
      https://github.com/llvm/llvm-project/commit/e78a880505ca0c9ed102fc48100b4cdb280f4e34
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [RISCV][P-ext] Make undef vectors Legal. (#210106)

Add a few additional isel patterns to avoid false dependencies. We may
want to enable the BreakFalseDep pass in the future.


  Commit: 152fdb8ae8725dab7e529c5cedec1d5151506307
      https://github.com/llvm/llvm-project/commit/152fdb8ae8725dab7e529c5cedec1d5151506307
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCCGToGPU.cpp

  Log Message:
  -----------
  [OpenACC] emit NYI for multi-rank or non-memref type array reduction (#210143)

This should be an NYI and not an assertion


  Commit: 1387002dc6bee9b9f4b430afebc4141a0f603bb1
      https://github.com/llvm/llvm-project/commit/1387002dc6bee9b9f4b430afebc4141a0f603bb1
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseStmt.cpp

  Log Message:
  -----------
  [Clang][NFC] Update diagnostic handling for C2y compatibility in parser (#209920)

Follow-up on #198244 after #209241


  Commit: a11e3727f82f1395e7554f348c76a9af5f05b0b5
      https://github.com/llvm/llvm-project/commit/a11e3727f82f1395e7554f348c76a9af5f05b0b5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [RISCV][P-ext] Remove redundant shuffle lowering for packed widening high-half convert. (#210128)

The more general lowerVECTOR_SHUFFLEAsPZip can handle this case.


  Commit: d9d1d919de92b1086b583168b4edccfa19bc854d
      https://github.com/llvm/llvm-project/commit/d9d1d919de92b1086b583168b4edccfa19bc854d
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp

  Log Message:
  -----------
  [OFFLOAD][L0] Don't return error on initImpl if library/drivers are missing (#210083)

When a Level Zero driver is not present in the environment the current
behavior makes olInit fail if the level_zero plugin is requested. This
changes the behavior to match other plugins where it doesn't fail but
return 0 supported devices.


  Commit: 44e3f3cb248de5c1a071182367ee719baf3683df
      https://github.com/llvm/llvm-project/commit/44e3f3cb248de5c1a071182367ee719baf3683df
  Author: Akshay K <iit.akshay at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/ternary-throw.cpp

  Log Message:
  -----------
  [CIR] Fix use-after-free when emitting ternary with a throw-expression arm (#208850)

Fixes #208848.

When a conditional operator arm is a noreturn expression, such as
`throw`, `VisitAbstractConditionalOperator` saved an insertion point in
the empty dead-code block created after the expression. The intent was
to insert a `cir.yield` later, once the types of both arms were known.
However, `LexicalScope::cleanup()` removes that empty block when the
arm’s scope exits, leaving the deferred insertion point with a dangling
block pointer.

Avoid saving the insertion point for noreturn arms. These regions
already terminate with `cir.unreachable` and do not require a
`cir.yield`. The CIR verifier accepts ternary regions that terminate
with `cir.unreachable`.

Extended `ternary-throw.cpp` with scalar-rvalue cases covering `throw`
in either arm and in both arms. The existing tests only covered glvalue
conditionals, which take the LValue emission path and never reach this
code.


  Commit: b74a97cae97a7732df5bcdef3d09f08a2e586468
      https://github.com/llvm/llvm-project/commit/b74a97cae97a7732df5bcdef3d09f08a2e586468
  Author: firmiana <firmiana402 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp

  Log Message:
  -----------
  [lldb] Produce generic results for DWARF relational operations (#210122)

DWARF relational operations produce a generic result, whose width is the
target address size. LLDB currently assigns the C++ `bool` comparison
result directly to `Scalar`; because `Scalar` has no `bool` constructor,
this creates a 32-bit integer even on 64-bit targets.

The stricter binary operand checks added in #201288 exposed this in
x86-64 `_sigtramp` CFI. A later `DW_OP_plus` combines a 64-bit generic
address with the 32-bit relational result, so evaluation fails and
signal-frame unwinding stops. The generic-operand relaxation in #209641
does not cover this case because the relational result is narrower than
the address size.

Convert the results of `DW_OP_eq`, `DW_OP_ge`, `DW_OP_gt`, `DW_OP_le`,
`DW_OP_lt`, and `DW_OP_ne` through the existing `to_generic` helper.

## Testing

Add a unit test that evaluates each relational opcode with an 8-byte
address size and then consumes its result with `DW_OP_plus`.


  Commit: 5b46dcf59375181dee1fbd6e1d1cdb3f0c8f5289
      https://github.com/llvm/llvm-project/commit/5b46dcf59375181dee1fbd6e1d1cdb3f0c8f5289
  Author: Ilya Leoshkevich <iii at linux.ibm.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/include/llvm/DWP/DWP.h
    M llvm/lib/DWP/DWP.cpp
    A llvm/test/tools/llvm-dwp/SystemZ/big_endian_info_v5.s
    M llvm/test/tools/llvm-dwp/X86/compress.test

  Log Message:
  -----------
  [llvm-dwp] Fix endianness issues (#203424)

llvm-dwp fails on SystemZ, which is big-endian, as follows:

    $ cat min.c
    int main() {}
    $ clang -g -O0 -gsplit-dwarf min.c -o min
    $ llvm-dwp -e min -o min.dwp
error: compile unit exceeds .debug_info section range: 905969668 >= 58

This is because it hardcodes IsLittleEndian=true in multiple places. Fix
by forwarding endianness of the current object file.

Add a SystemZ-specific test.

Add proper big-endian support to X86/compress.test and add an
explanation regarding what the hardcoded blobs are and how they are
generated.


  Commit: c9a9737dee777f5fe19131911e8ca3c8ca3c7031
      https://github.com/llvm/llvm-project/commit/c9a9737dee777f5fe19131911e8ca3c8ca3c7031
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A lld/docs/DTLTO.md
    R lld/docs/DTLTO.rst
    A lld/docs/ELF/large_sections.md
    R lld/docs/ELF/large_sections.rst
    A lld/docs/ELF/linker_script.md
    R lld/docs/ELF/linker_script.rst
    A lld/docs/ELF/start-stop-gc.md
    R lld/docs/ELF/start-stop-gc.rst
    A lld/docs/ELF/warn_backrefs.md
    R lld/docs/ELF/warn_backrefs.rst
    A lld/docs/MachO/index.md
    R lld/docs/MachO/index.rst
    A lld/docs/MachO/ld64-vs-lld.md
    R lld/docs/MachO/ld64-vs-lld.rst
    A lld/docs/NewLLD.md
    R lld/docs/NewLLD.rst
    A lld/docs/ReleaseNotes.md
    R lld/docs/ReleaseNotes.rst
    A lld/docs/WebAssembly.md
    R lld/docs/WebAssembly.rst
    A lld/docs/error_handling_script.md
    R lld/docs/error_handling_script.rst
    A lld/docs/index.md
    R lld/docs/index.rst
    A lld/docs/missingkeyfunction.md
    R lld/docs/missingkeyfunction.rst
    A lld/docs/windows_support.md
    R lld/docs/windows_support.rst

  Log Message:
  -----------
  [docs] Rename LLD docs to Markdown (#209894)

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 is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.


  Commit: f8107f628360eb0c7c4a04af98e768ffa637c1b3
      https://github.com/llvm/llvm-project/commit/f8107f628360eb0c7c4a04af98e768ffa637c1b3
  Author: Tim Corringham <timothy.corringham at amd.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/test/AST/HLSL/Textures-AST.hlsl
    M clang/test/CodeGenHLSL/resources/Textures-GetDimensions.hlsl
    M clang/test/CodeGenHLSL/resources/Textures-Load.hlsl
    M clang/test/SemaHLSL/Resources/RWTexture2D-mips-errors.hlsl
    M clang/test/SemaHLSL/Resources/RWTexture2D-unsupported-methods-errors.hlsl
    M clang/test/SemaHLSL/Resources/Textures-GetDimensions.hlsl
    M clang/test/SemaHLSL/Resources/Textures-Load-errors.hlsl

  Log Message:
  -----------
  [HLSL] Implement RWTexture2DArray (#208725)

Add front-end support for RWTexture2DArray, and update related tests to
include coverage of this resource.

Fixes #194947

---------

Co-authored-by: Tim Corringham <tcorring at amd.com>


  Commit: ab35099249433e55ba586285c2087d0bd7f65e9c
      https://github.com/llvm/llvm-project/commit/ab35099249433e55ba586285c2087d0bd7f65e9c
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lld/docs/DTLTO.md
    M lld/docs/ELF/large_sections.md
    M lld/docs/ELF/linker_script.md
    M lld/docs/ELF/start-stop-gc.md
    M lld/docs/ELF/warn_backrefs.md
    M lld/docs/MachO/index.md
    M lld/docs/MachO/ld64-vs-lld.md
    M lld/docs/NewLLD.md
    M lld/docs/ReleaseNotes.md
    M lld/docs/WebAssembly.md
    M lld/docs/conf.py
    M lld/docs/error_handling_script.md
    M lld/docs/index.md
    M lld/docs/missingkeyfunction.md
    M lld/docs/windows_support.md

  Log Message:
  -----------
  [docs] Rewrite LLD docs to Markdown (#209897)

Tracking issue: #201242
This is a stacked PR based on #209894 , which will be a standalone
commit that renames *.rst -> *.md before this PR lands for history
preservation purposes. See the [migration guide] for more information.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This was prepared with rst2myst plus LLM-assisted cleanup. I paged
through all the generated HTML looking for migration artifacts, and all
of the differences I could find appear to be formatting error
corrections. Please spot check my work and approve if it looks good.


  Commit: d49307497bbf9f49e6a603c605319dc39113c51c
      https://github.com/llvm/llvm-project/commit/d49307497bbf9f49e6a603c605319dc39113c51c
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFAddConstructor.cpp
    M flang/test/Fir/CUDA/cuda-constructor-2.f90

  Log Message:
  -----------
  [flang][cuda] Register allocator when cuf.allocate or cuf.deallocate are present (#210147)


  Commit: fe616e4d87cfbce9317537aa95e6068ac103a373
      https://github.com/llvm/llvm-project/commit/fe616e4d87cfbce9317537aa95e6068ac103a373
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/i386/headers.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/include/CMakeLists.txt
    A libc/include/alloca.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/alloca-macros.h
    M libc/test/include/CMakeLists.txt
    A libc/test/include/alloca_test.cpp

  Log Message:
  -----------
  [libc] Implement alloca.h header (#210150)

Implemented the alloca.h header for LLVM libc.

* libc/include/llvm-libc-macros/alloca-macros.h: Defined alloca macro
using __builtin_alloca.
* libc/include/alloca.yaml: Added header specification.
* libc/include/CMakeLists.txt,
libc/include/llvm-libc-macros/CMakeLists.txt: Registered the new header
and macro targets.
* libc/config/linux/*/headers.txt: Enabled the header for Linux targets
(x86_64, aarch64, arm, i386, riscv).
* libc/test/include/alloca_test.cpp, libc/test/include/CMakeLists.txt:
Added and registered functional unit tests.

Tested by running the new unit and hermetic tests.

Assisted-by: Automated tooling, human reviewed.


  Commit: c96a176dd15690ed8181c6764b26d0303008a40f
      https://github.com/llvm/llvm-project/commit/c96a176dd15690ed8181c6764b26d0303008a40f
  Author: Mauri de Souza Meneguzzo <mauri870 at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M compiler-rt/lib/tsan/rtl/tsan_interface.h

  Log Message:
  -----------
  [tsan] Enable __TSAN_HAS_INT128 on s390x and mips64 (#197319)

The s390x exclusion was added in
https://github.com/llvm/llvm-project/commit/b17673816d7f65e07015489993b22049e36b04db
(https://reviews.llvm.org/D105629)
citing lack of hardware 128-bit atomics. s390x does have the CDSG
instruction,
but `alignof(__int128) == 8` on the s390x psABI while CDSG requires
16-byte
alignment, so Clang does not define
`__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16` for
this target. The mips64 exclusion has been present since
`__TSAN_HAS_INT128` was
introduced in
https://github.com/llvm/llvm-project/commit/06bbca9ec4bbc5a103c94c4973797ea4ddf944b5
(https://reviews.llvm.org/D18543) with no documented
rationale. Clang similarly does not define
`__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16`
for mips64.

Both exclusions are unnecessary. When
`__GCC_HAVE_SYNC_COMPARE_AND_SWAP_16` is
not defined, all a128 operations use the SpinMutex-based emulation path,
which
serializes 128-bit accesses under a global lock without requiring any
hardware
CAS16 support.

Verified with Clang (targets: s390x-linux-gnu, mips64-linux-gnuabi64,
mips64el-linux-gnuabi64): all three produce the full set of 12
`__tsan_atomic128_*` symbols with zero `__sync_*_16 / __atomic_*_16`
libcall references.

Runtime testing has not been performed as I lack access to these
architectures.

Relates https://github.com/llvm/llvm-project/pull/196833
For https://github.com/golang/go/issues/61236


  Commit: 58db4cea87114268cca4c2957232de7db9327ceb
      https://github.com/llvm/llvm-project/commit/58db4cea87114268cca4c2957232de7db9327ceb
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/masked-blended-loads.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with GEPs under the same select condition, NFC



Reviewers: 

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


  Commit: 7cfe30df768f109dbaead1ed5f7538c10ba65d2e
      https://github.com/llvm/llvm-project/commit/7cfe30df768f109dbaead1ed5f7538c10ba65d2e
  Author: Kevin Bravo <kbravjr at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/TableGen/ProgRef.rst
    M llvm/lib/TableGen/Record.cpp
    M llvm/test/TableGen/true-false.td

  Log Message:
  -----------
  [TableGen] Short-circuit !cond operator (#208942)

Fixes #163213 

TableGen `!cond` operator currently resolves all subsequent conditions
and values even if it already found a condition that resolves to `true`.
This change short-circuits on the first `true` resolution found
iterating from left to right. It folds a new `CondOpInit` with only the
conditions and values that have already been resolved, including the
current condition and value.


  Commit: f6f08fa7e5d56aa07f9ebc51500f2c9fd6df8e1b
      https://github.com/llvm/llvm-project/commit/f6f08fa7e5d56aa07f9ebc51500f2c9fd6df8e1b
  Author: Matsu <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf

  Log Message:
  -----------
  [flang][cuda] Use managed allocation for saved locals (#210133)

Example:
```fortran
subroutine work
  real, allocatable, save :: q(:)
  allocate(q(10))
end
```

`SAVE` gives the local allocatable descriptor static storage. Implicitly
attributing it as Unified causes allocation to look it up as a
registered CUDA global, but no device symbol is registered for the
descriptor.

Fix: use Managed attribution for saved subprogram-local allocatables and
pointers, avoiding the invalid CUDA symbol lookup.


  Commit: aaa4ebd2ad174920ddce67c4641292a44788e879
      https://github.com/llvm/llvm-project/commit/aaa4ebd2ad174920ddce67c4641292a44788e879
  Author: John Paul Jepko <john.jepko at ericsson.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/ComputeDependence.cpp
    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
    A clang/test/Sema/warn-stringop-overread-fortify.c
    A 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:
  -----------
  [Clang][Sema] Reland -Wstringop-overread with computeDependence fix (#208012)

Reland #183004 and follow-up #205201 (reverted in #207840) which adds `-Wstringop-overread` to warn when memory functions `memcpy`, `memmove`, `memcmp`, and other related builtins read more bytes than the source buffer size.

The revert was due to a crash when a memory function is called on `&x` where `x` is a static constexpr local inside a template. The original PR exposed a bug in `computeDependence(UnaryOperator*)` where only the value-dependence bit is set for this case, when the instantiation-dependence bit should also be set. This is the root cause behind the crash.

Fix `computeDependence` to properly set both value and instantiation-dependence bits, and add a regression for this crash via `warn-stringop-overread.c`.


  Commit: 68f703f3e58a52c41b39dfc654a675560b6c5614
      https://github.com/llvm/llvm-project/commit/68f703f3e58a52c41b39dfc654a675560b6c5614
  Author: Daniel Kiss <daniel.kiss at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/docs/UsersManual.md
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/AArch64/branch-protection-attr.c
    M clang/test/CodeGen/AArch64/sign-return-address.c
    M clang/test/Driver/aarch64-security-options.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/TargetParser/ARMTargetParserCommon.h
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
    M llvm/test/CodeGen/AArch64/sign-return-address.ll
    A llvm/test/CodeGen/AArch64/windows-pac-invalid-a-key.ll
    M llvm/test/CodeGen/AArch64/wineh-bti.ll

  Log Message:
  -----------
  [AArch64][COFF] Branch-protection=standard/pac-ret means "b-key" on Windows (#203989)

On AArch64 Windows the `B-key` is the only supported key for userspace,
let's make "standard" and "pac-ret" options generate "b-key".

Fixes: #203852


  Commit: 95ff1fa00ed4c35b3589fa92b591e02444fcc5d5
      https://github.com/llvm/llvm-project/commit/95ff1fa00ed4c35b3589fa92b591e02444fcc5d5
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/test/CodeGen/AMDGPU/add-max.ll
    M llvm/test/CodeGen/AMDGPU/uaddsat.ll

  Log Message:
  -----------
  [AMDGPU] Lower uniform uaddsat.i32 to SALU insts (#210168)

Map uaddsat.i32(i32 %a, i32 %b) to the following:

```
s_not_b32 s4, s17          ; s17 = %b
s_min_u32 s4, s16, s4      ; s16 = %a
s_add_u32 s4, s4, s17
```

Co-authored-by: Shilei Tian <i at tianshilei.me>


  Commit: 0acbbccdbd5b5a218b459acc9abc6b3dc7f338a6
      https://github.com/llvm/llvm-project/commit/0acbbccdbd5b5a218b459acc9abc6b3dc7f338a6
  Author: Brad Smith <brad at comstyle.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [Android] Drop workarounds for older Android API levels pre 23 (#161893)

Drop workarounds for Android API levels pre 23.

The minimum Android API currently supported by the LTS NDK is 23.


  Commit: 7812fef524a0aef0b34599c2eb81b66843fbcdd8
      https://github.com/llvm/llvm-project/commit/7812fef524a0aef0b34599c2eb81b66843fbcdd8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    A llvm/test/CodeGen/RISCV/rvp-widening-convert-isel.ll

  Log Message:
  -----------
  [RISCV][P-ext] Add RISCVISD::PWZIP for RV32. (#210134)

This node takes 2 32-bit vector inputs and produces a 64-bit vector
result. By extracting the subvector during lowering, we expose more
opportunities for optimizations.


  Commit: 5978ac06a2cc75025703008c373fc7c94246f7a3
      https://github.com/llvm/llvm-project/commit/5978ac06a2cc75025703008c373fc7c94246f7a3
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [NFC] Inline DwarfExpression frame register check (#210186)

Inline DwarfExpression frame register check as it's the only call.

Tested via make check.

Assisted by AI.


  Commit: bd0395ebfe9830b1e3dc9580021fb5a3ab343a51
      https://github.com/llvm/llvm-project/commit/bd0395ebfe9830b1e3dc9580021fb5a3ab343a51
  Author: Alexey Samsonov <vonosmas at gmail.com>
  Date:   2026-07-16 (Thu, 16 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/docs/headers/time.rst
    M libc/include/sys/time.yaml
    M libc/include/time.yaml
    M libc/src/sys/time/CMakeLists.txt
    A libc/src/sys/time/gettimeofday.h
    M libc/src/sys/time/linux/CMakeLists.txt
    A libc/src/sys/time/linux/gettimeofday.cpp
    M libc/src/time/CMakeLists.txt
    R libc/src/time/gettimeofday.h
    M libc/src/time/linux/CMakeLists.txt
    R libc/src/time/linux/gettimeofday.cpp
    M libc/test/src/sys/time/CMakeLists.txt
    A libc/test/src/sys/time/gettimeofday_test.cpp
    M libc/test/src/time/CMakeLists.txt
    R libc/test/src/time/gettimeofday_test.cpp

  Log Message:
  -----------
  [libc] Move gettimeofday to sys/time.h header. (#210185)

`gettimeofday` is supposed to be declared in the `<sys/time.h>` header,
not the `<time.h>` where we've had it previously. Move the declaration
to the correct header, and move the files with implementation and unit
tests accordingly.

Note that `gettimeofday` is removed removed from POSIX-2024, but let's
keep it available for now, since there's fair amount of existing code
that still uses it.


  Commit: 5ed5468f3810cd3c424eec5e9288884f67594068
      https://github.com/llvm/llvm-project/commit/5ed5468f3810cd3c424eec5e9288884f67594068
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [NFC][LSR] Remove duplicate debug expression update (#210188)

Remove duplicate debug expression update we assigned
the same DIExpression twice so let's just remove the redundant call.

Tested via make check.

Assisted by AI.


  Commit: 205a66201235c03b892e075ae548d6ea12f024a3
      https://github.com/llvm/llvm-project/commit/205a66201235c03b892e075ae548d6ea12f024a3
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/test/Driver/mingw-sysroot.cpp

  Log Message:
  -----------
  [clang][mingw] Try both native and ARM64EC triples when looking for a sysroot on the ARM64EC target (#210017)

Similarly to MSVC, a MinGW toolchain may provide support for both ARM64
and ARM64EC in a single sysroot. Structuring the toolchain this way has
the additional advantage of seamlessly supporting linking ARM64X images.

Support this configuration in findClangRelativeSysroot.


  Commit: 092ac9c0c776fc5a3eddf779643d004230260300
      https://github.com/llvm/llvm-project/commit/092ac9c0c776fc5a3eddf779643d004230260300
  Author: David Mentler <mentlerd at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/docs/resources/test.md
    A lldb/packages/Python/lldbsuite/support/xcode.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/packages/Python/lldbsuite/test/dotest_args.py

  Log Message:
  -----------
  [lldb][test] Allow dotest.py to call for Xcode to attach (#209628)

This speeds up the debugging of API tests a little on macOS.

(AppleScript written by Claude based on Xcode.sdef)


  Commit: eb819b90735b819c1afd98ab3aa14183fa57157e
      https://github.com/llvm/llvm-project/commit/eb819b90735b819c1afd98ab3aa14183fa57157e
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/sub-nsw-icmp-eq-zero-reorder.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with incorrect nsw in reordered sub feeding equal cmp, NFC



Reviewers: 

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


  Commit: e5c143f96b37f2215a0b07d46df7600d06a372f4
      https://github.com/llvm/llvm-project/commit/e5c143f96b37f2215a0b07d46df7600d06a372f4
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/sub-nsw-icmp-eq-zero-reorder.ll

  Log Message:
  -----------
  [SLP]Drop nsw when reordering a sub feeding icmp eq/ne 0

A sub used only by icmp eq/ne 0 is treated as commutative, so SLP may
swap its operands, and nsw does not survive a - b -> b - a (a - b can
be INT_MIN while b - a overflows).

Fixes #210177

Reviewers: 

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


  Commit: 396d2555ddac2d6a4885ec3ad2c73fcee00f5bd3
      https://github.com/llvm/llvm-project/commit/396d2555ddac2d6a4885ec3ad2c73fcee00f5bd3
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/test/MC/Disassembler/WebAssembly/wasm.txt

  Log Message:
  -----------
  [WebAssembly] Don't assert on a non-zero call_indirect table index (#210120)

WebAssemblyInstPrinter::printInst asserted that a non-symbol table
operand of call_indirect is the immediate 0, on the assumption that only
MVP single-table compilation units reach the printer. That is true for
code generated by the compiler, but the printer is shared by the
disassembler.

The disassembler must produce output for any byte sequence it is pointed
at and shouldn't abort on the operand values it decodes. A non-zero
immediate table index is both a valid encoding, from a multi-table
module, and a routine result of best-effort disassembly of a range that
is not all code, which is how I hit this in LLDB.

Print the table operand when it is a symbol or a non-zero immediate, and
omit it only for the implicit table 0. This makes the output lossless
and unambiguous, matching how a table symbol is already printed. MVP and
table-symbol output are unchanged, so there is no effect on the
compiler's assembly.


  Commit: 71a7c24dec4fe7ab5eda28650cf8d9138b9ca994
      https://github.com/llvm/llvm-project/commit/71a7c24dec4fe7ab5eda28650cf8d9138b9ca994
  Author: Ikhlas Ajbar <iajbar at quicinc.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A llvm/test/MC/Hexagon/relax-align.s

  Log Message:
  -----------
  [Hexagon] Add MC lit test for dropped fixups after packet relaxation (#210157)

Test that a branch fixup is preserved when MC relaxes a packet
containing a conditional compare-and-jump due to a following .p2align
directive. Regression test for issue #163851.


  Commit: 5337314b4bea4be5e86396eb21e59f4d123af175
      https://github.com/llvm/llvm-project/commit/5337314b4bea4be5e86396eb21e59f4d123af175
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssembly.h
    M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
    M llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  [WebAssembly] Port WebAssemblySetP2AlignOperandsPass

Standard NewPM pass porting.

Reviewers: dschuff, sbc100, aheejin

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


  Commit: 0fc03f0454b5a5d6d35338a6f4d1092960d63e17
      https://github.com/llvm/llvm-project/commit/0fc03f0454b5a5d6d35338a6f4d1092960d63e17
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    A bolt/docs/BOLTAArch64OptimizationStatus.md
    R bolt/docs/BOLTAArch64OptimizationStatus.rst
    A bolt/docs/GettingStarted.md
    R bolt/docs/GettingStarted.rst
    A bolt/docs/index.md
    R bolt/docs/index.rst

  Log Message:
  -----------
  [bolt][docs] Rename BOLT docs to Markdown (#210198)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.


  Commit: 2494e80d1cd91911713ec8451a961e07b9da8b9c
      https://github.com/llvm/llvm-project/commit/2494e80d1cd91911713ec8451a961e07b9da8b9c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssembly.h
    M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  [WebAssembly] Port WebAssemblyFixBrTableDefaultsPass

Standard NewPM pass porting.

Reviewers: dschuff, sbc100, aheejin

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


  Commit: d0dd060443b657f3d96bd1b2dcd32974cccfa6fc
      https://github.com/llvm/llvm-project/commit/d0dd060443b657f3d96bd1b2dcd32974cccfa6fc
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.exp.compr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dual_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll

  Log Message:
  -----------
  [NFC] Use new target triple for some tests (#210202)

They were mistakenly reverted back to the old ones.


  Commit: 565ef24d6c1b31e2fbf736b2b115d49d49b86af7
      https://github.com/llvm/llvm-project/commit/565ef24d6c1b31e2fbf736b2b115d49d49b86af7
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssembly.h
    M llvm/lib/Target/WebAssembly/WebAssemblyCleanCodeAfterTrap.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  [WebAssembly] Port WebAssemblyCleanCodeAfterTrapPass

Standard NewPM pass porting.

Reviewers: sbc100, dschuff, aheejin

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


  Commit: 03ab16cb415ff8dc2cb06332a628b79a718c74d8
      https://github.com/llvm/llvm-project/commit/03ab16cb415ff8dc2cb06332a628b79a718c74d8
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M bolt/docs/BOLTAArch64OptimizationStatus.md
    M bolt/docs/GettingStarted.md
    M bolt/docs/index.md

  Log Message:
  -----------
  [docs] Finish MyST migration for BOLT docs (#210199)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines
This is a stacked PR based on #210198, which will be a standalone commit
that
renames *.rst -> *.md before this PR lands for history preservation
purposes.

This was prepared with rst2myst plus LLM-assisted cleanup. I paged
through all the generated HTML looking for migration artifacts, and all
of the differences I could find appear to be formatting error
corrections. Please spot check my work and approve if it looks good. You
can use the HTML links below to confirm it renders properly.

-----

Before/after validation links:
| Source file | Before HTML | After HTML |
| --- | --- | --- |
| `bolt/docs/BOLTAArch64OptimizationStatus.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/BOLTAArch64OptimizationStatus.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/BOLTAArch64OptimizationStatus.html)
|
| `bolt/docs/GettingStarted.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/GettingStarted.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/GettingStarted.html)
|
| `bolt/docs/index.md` |
[before](https://llvmdocs.staging.reidkleckner.dev/bolt/docs-old/index.html)
|
[after](https://llvmdocs.staging.reidkleckner.dev/bolt/docs/index.html)
|


  Commit: 611d015f0030e0d4f1b3bd2270205f6f6b6e20eb
      https://github.com/llvm/llvm-project/commit/611d015f0030e0d4f1b3bd2270205f6f6b6e20eb
  Author: Peter Collingbourne <pcc at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/utils/gn/README.rst
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/BUILDCONFIG.gn
    M llvm/utils/gn/build/buildflags.gni
    M llvm/utils/gn/build/symlink_or_copy.gni
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/secondary/BUILD.gn
    M llvm/utils/gn/secondary/bolt/tools/driver/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/tool/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/xpc/framework/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
    M llvm/utils/gn/secondary/lld/tools/lld/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ar/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-cxxfilt/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod-find/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-dwp/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-libtool-darwin/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-lipo/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ml/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-nm/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-rc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-readobj/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-readtapi/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-size/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-strings/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-symbolizer/BUILD.gn

  Log Message:
  -----------
  gn build: Support building debug binaries from a release build directory.

This change makes it so that all binaries in `bin` have a corresponding
debug binary target `$TARGET.dbg` that will build a debug binary in
`bin.dbg/$TARGET`. This is implemented using a separate toolchain for
the debug builds. This has the following advantages over a separate
debug build directory:

1. Can use release mode tblgen to generate code for the debug build
   binaries, which speeds up the build because it can run tblgen faster as
   well as being able to reuse the tblgen binary from the release build.

2. Can reuse runtimes built in the release mode clang's resource
   directory, avoiding the need to build them again with a slow debug
   build of clang.

Assisted-by: gemini

Reviewers: aeubanks, nico

Reviewed By: aeubanks

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


  Commit: a45ae4cf77776bdae8ab79c3b5b4d4ef7cbd7d99
      https://github.com/llvm/llvm-project/commit/a45ae4cf77776bdae8ab79c3b5b4d4ef7cbd7d99
  Author: lntue <lntue at google.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/math/hypot.h
    M libc/test/src/math/smoke/hypot_test.cpp

  Log Message:
  -----------
  [libc][math] Fix double-rounding errors with denormal inputs for hypot function. (#208247)

The issue was reported by Paul Zimmermann.

Solution: for denormal inputs, we use 1.0 + x trick after proper scaling
to mimick rounding at denormal scale.


  Commit: eafc387c1da0620642f469fde70455c554ba3470
      https://github.com/llvm/llvm-project/commit/eafc387c1da0620642f469fde70455c554ba3470
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M orc-rt/include/CMakeLists.txt
    A orc-rt/include/orc-rt/CCallback.h
    A orc-rt/test/unit/CCallbackTest.cpp
    M orc-rt/test/unit/CMakeLists.txt

  Log Message:
  -----------
  [orc-rt] Add asCCallback utility -- C callbacks for methods. (#210048)

Adds orc_rt::asCCallback<&Class::method>, which produces a C-ABI
function pointer that forwards to the given member function. The first
parameter of the generated trampoline is an opaque context pointer (
void * for non-const methods, const void * for const methods) that is
cast back to the class type and used as the receiver:

  struct Counter {
    void inc(int N) { Count += N; }
    int Count = 0;
  };

  Counter C;
  void (*CB)(void *, int) = asCCallback<&Counter::inc>;
  CB(asCCallbackContext<&Counter::inc>(C), 2); // C.Count == 2

asCCallbackContext produces the matching context pointer via
static_cast, so any base-class offset is applied and const-ness is
preserved; pairing it with asCCallback by the same method keeps things
correct under inheritance and const-qualification. (A raw cast of &C
would give the trampoline the wrong `this` when method's class is a base
at a non-zero offset.)

Specializations cover the const x noexcept combinations. The trampoline
is always noexcept -- a C caller cannot unwind a C++ exception, so an
escaping one terminates -- and return/argument types are restricted to
C-compatible (non-reference, trivially copyable) types via
static_assert.


  Commit: 5658411aed0f610380323918ce4b02016f2df6f2
      https://github.com/llvm/llvm-project/commit/5658411aed0f610380323918ce4b02016f2df6f2
  Author: Kaitlin Peng <kaitlinpeng at microsoft.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/test/CodeGenHLSL/resources/RWBuffer-imageformat.hlsl
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll

  Log Message:
  -----------
  [SPIRV] Pack 64-bit vec2 typed buffers into 4x32-bit images (#208626)


  Commit: 6b9929001d0b46d087e871934e50e4783147fa7d
      https://github.com/llvm/llvm-project/commit/6b9929001d0b46d087e871934e50e4783147fa7d
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M bolt/docs/profiles.md
    M bolt/include/bolt/Profile/DataReader.h
    M bolt/lib/Profile/DataReader.cpp
    A bolt/test/X86/profile-symbols-mode.s

  Log Message:
  -----------
  [BOLT] Add fdata symbols mode (#209932)

Add a new fdata profile mode accepting symbol names as-is.

It addresses the UX gap surfaced by #208313 that all methods of selecting
functions to process (symbolized profile types, `-funcs*` options) expect
disambiguated local symbols. 

Introduce fdata mode activated by a `symbols` header line, where each subsequent
line is a (mangled) symbol name. The names are matched against restored function
names (with disambiguation suffix stripped), and every matching function gets an
execution count of 1. 

This can be used to drive selective instrumentation (`--instrument-hot-only`) or
basic linker-script style optimizations.

Symbols are stored as branch entry data so matching reuses the existing default
branch profile path.

Test Plan:
Update docs/profiles.md and add profile-symbols-mode.s


  Commit: 398f2117379f42764e433d19ea0d0cd65009a4aa
      https://github.com/llvm/llvm-project/commit/398f2117379f42764e433d19ea0d0cd65009a4aa
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-explicit-triple.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-namespace-override.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libempty.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libtwo.json
    M clang/test/Analysis/Scalable/ssaf-linker/help.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-create.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-help.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-time.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-verbose.test
    M clang/tools/clang-ssaf-linker/CMakeLists.txt
    M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
    A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.cpp
    A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.h

  Log Message:
  -----------
  [clang][ssaf] Add static-library create subcommand (#208799)

This change adds `clang-ssaf-linker static-library create` for bundling
TU summaries into a StaticLibrary archive. The linker has been
refactored to dispatch on `cl::SubCommand`; invocations without a
subcommand still run the existing linker pipeline unchanged for backward
compatibility.

rdar://181930526


  Commit: 9f839a4396916283cc28e45d18d7f4742ad5094a
      https://github.com/llvm/llvm-project/commit/9f839a4396916283cc28e45d18d7f4742ad5094a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [SLP][NFC]Fix non-determinism in pointers comparison, NFC



Reviewers: 

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


  Commit: a07b91d8243b8a8051dbbe5739eacc7942269c61
      https://github.com/llvm/llvm-project/commit/a07b91d8243b8a8051dbbe5739eacc7942269c61
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M lldb/bindings/python/CMakeLists.txt
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/CMakeLists.txt
    A lldb/examples/python/templates/scripted_stackframe_recognizer.py
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedStackFrameRecognizerInterface.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/frame/recognizer/recognizer.py
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp

  Log Message:
  -----------
  [lldb/script] Migrate frame recognizers onto ScriptedPythonInterface  (#209805)

Give `frame recognizer add -l` a formal
ScriptedStackFrameRecognizerInterface, matching the architecture already
used by ScriptedProcess, ScriptedBreakpoint, etc.: a C++ interface
header, a Python-backed implementation built on
ScriptedPythonInterface's CreatePluginObject/Dispatch machinery,
PluginManager registration, and a generatable Python ABC template
(scripted_stackframe_recognizer.py).

get_recognized_arguments' documented contract returns a plain list of
lldb.SBValue (not an lldb.SBValueList), so it bypasses the generic
Dispatch<ValueObjectListSP>() extractor and calls the SWIG bridge
directly, matching the legacy behavior exactly.

ScriptedStackFrameRecognizer now holds a single interface object created
once in its constructor and reused across every RecognizeFrame() call,
same lifecycle as before.

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: 3e1948e9a528d1bc82f2a671a00c02fa8717f26f
      https://github.com/llvm/llvm-project/commit/3e1948e9a528d1bc82f2a671a00c02fa8717f26f
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M llvm/unittests/IR/MetadataTest.cpp

  Log Message:
  -----------
  Add expression validation tests for DW_OP_swap (#210184)

Add DIExpression validation tests for DW_OP_swap that we noticed were
missing. The tests are based on the existing expression tests for
DW_OP_stack_value.

Tested via make check.

Assisted by AI.


  Commit: b9869c8c920a7dfa983e215bc30729b13d8b353b
      https://github.com/llvm/llvm-project/commit/b9869c8c920a7dfa983e215bc30729b13d8b353b
  Author: Shanzhi Chen <chenshanzhi at huawei.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-stores.ll

  Log Message:
  -----------
  [AArch64][SVE] Support lowering masked loads/stores of <4 x bf16> and <8 x bf16> (#208744)

Add support for lowering masked loads/stores of <4 x bf16> and <8 x
bf16> when target features contain "+sve" and "+bf16".

Fixes: #201149


  Commit: 464b46a73b7592c95222cf2e64b34ffe6f2cf251
      https://github.com/llvm/llvm-project/commit/464b46a73b7592c95222cf2e64b34ffe6f2cf251
  Author: Benjamin Luke <benjamin.luke at sony.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/ABIVersions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/CodeGen/CGFunctionInfo.h
    M clang/include/clang/CodeGen/CodeGenABITypes.h
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/CGCUDARuntime.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenABITypes.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/sysv_abi.c
    A clang/test/CodeGen/target-avx-function-abi.c
    A clang/test/CodeGenCXX/target-avx-method-abi.cpp
    M clang/unittests/CodeGen/CodeGenExternalTest.cpp
    M clang/unittests/CodeGen/TestCompiler.h

  Log Message:
  -----------
  [clang][CodeGen][X86_64] Honor per-function AVX ABI in C/C++ call paths, maintain old psABI for PlayStation. (#193298)

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

Wire per function x86 AVX ABI level into CodeGen arrangement methods so
__attribute(__target("avx"))) / __attribute(__target("avx512f"))) on
methods, ctors, and free-functions affects ABI lowering consistently.
    
Specifically:
- Added X86AVXABILevel member to CGFunctionInfo.
- Populated X86AVXABILevel member in CGFunctionInfo objects via
arrangement methods declared in CodeGenTypes.h.
- Respect CGFunctionInfo AVX Level in X86_64ABIInfo::computeInfo.
- Add/extend regression tests for:
- free-function target-attribute AVX ABI lowering
- C++ method/ctor target-attribute AVX ABI lowering
- PS4/PS5 legacy ABI behavior (no per-function AVX ABI change)

---------

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>


  Commit: 7fec267c9a44c76604e1135ee0ef694c4eaae784
      https://github.com/llvm/llvm-project/commit/7fec267c9a44c76604e1135ee0ef694c4eaae784
  Author: sohail <sohailraj.satapathy at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/test/src/stdfix/DiviFxTest.h

  Log Message:
  -----------
  [libc][stdfix] Guard DiviFxTest shift edge cases against narrow IntType (#209970)

Fixes riscv32 buildbot failure from #206115.


  Commit: 9d2181c78f4e248069e39ec0e5b899dfbfcf3d6a
      https://github.com/llvm/llvm-project/commit/9d2181c78f4e248069e39ec0e5b899dfbfcf3d6a
  Author: Eric Christopher <echristo at gmail.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  [NFC] Reuse DwarfExpression fragment (#210181)

Reuse DwarfExpression fragment information since nothing changes it
between the outside of the loop and the inside of the loop.

Tested via make check.

Assisted by AI.


  Commit: 1a3347f608394b12c5a18cb5b3457af4e85449a1
      https://github.com/llvm/llvm-project/commit/1a3347f608394b12c5a18cb5b3457af4e85449a1
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [bazel][clang][ssaf] Fix 398f2117379f42764e433d19ea0d0cd65009a4aa (#210222)


  Commit: 27d7b61322f1528cc582a62d1b74683d24cc987b
      https://github.com/llvm/llvm-project/commit/27d7b61322f1528cc582a62d1b74683d24cc987b
  Author: Harrison Hao <57025411+harrisonGPU at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [GVN][NFC] Use LoadInst::getProperties() when creating PRE load (#208605)

Use load's properties via getProperties() instead of individually
forwarding isVolatile(), getAlign(), getOrdering() and getSyncScopeID().

Reference: https://github.com/llvm/llvm-project/pull/206470


  Commit: 4a75259134c72d8be7fa3ea36c9dc7bfc02640ac
      https://github.com/llvm/llvm-project/commit/4a75259134c72d8be7fa3ea36c9dc7bfc02640ac
  Author: hev <wangrui at loongson.cn>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    A llvm/test/CodeGen/LoongArch/lasx/issue207316.ll
    M llvm/test/CodeGen/LoongArch/lasx/xvexth.ll
    M llvm/test/CodeGen/LoongArch/lsx/vexth.ll

  Log Message:
  -----------
  [LoongArch] Fix invalid VEXTH combines for unsupported type extensions (#209725)

`performEXTENDCombine` could form `VEXTH`/`VEXTH_U` nodes for
unsupported type combinations, such as extending `v8i8` to `v8i32` or
`v2i64` to `v2i128`. These illegal nodes would later reach instruction
selection and trigger backend failures:

* `Cannot select: LoongArchISD::VEXTH`
* `Don't know how to legalize this operation`

Prevent these combines from firing by verifying that the destination
type is legal and has exactly twice the total bit width of the source
before forming a `VEXTH`/`VEXTH_U` node.
    
Apply the same checks to `performSHLCombine` for consistency.


Fixes
https://github.com/llvm/llvm-project/pull/207316#issuecomment-4978234865
Fixes
https://github.com/llvm/llvm-project/pull/207316#issuecomment-4979233899


  Commit: 8aaa15e82688177db7c0c3fa06103d10f6799598
      https://github.com/llvm/llvm-project/commit/8aaa15e82688177db7c0c3fa06103d10f6799598
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
    M llvm/lib/ObjectYAML/BBAddrMapYAML.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp

  Log Message:
  -----------
  [ObjectYAML][NFC] Hoist BBAddrMap yaml2obj encoder into a shared helper (#205991)

Preparatory NFC refactor to let the upcoming COFF emitter reuse the
BBAddrMap YAML encoder.


  Commit: ddd21a5500bc65354211c0088520d0b331e862d7
      https://github.com/llvm/llvm-project/commit/ddd21a5500bc65354211c0088520d0b331e862d7
  Author: Vijay Kandiah <vkandiah at nvidia.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

  Changed paths:
    M flang/include/flang/Lower/CUDA.h
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Lower/CUDA/cuda-gpu-unified.cuf
    R flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf

  Log Message:
  -----------
  [flang][cuda] Managed backing for -gpu=unified allocatables/pointers (#210149)

Under `-gpu=unified`, allocatables and pointers with no explicit CUDA data
attribute must be reachable from the device. Back them with CUDA managed
memory by selecting the unified allocator index at the ALLOCATE site (in
lowering), instead of stamping an implicit `Unified`/`Managed` CUDA data attribute
on the symbol in the frontend — the approach introduced in PR #209292.
This is necessary because attributing the symbol in the frontend routed every
plain allocatable/pointer through the CUDA Fortran managed descriptor
pipeline (constructor registration, `cuf.allocate`/`cuf.free`), which added
per-`ALLOCATE` overhead, forced special-casing for objects that may not legally carry a
CUDA attribute (COMMON members, derived-type components, module globals), and
changed symbol semantics used well beyond allocation. Choosing the allocator
index at the `ALLOCATE` site keeps the object a plain host allocatable/pointer while
the storage still comes from the managed allocator.


  Commit: 963e226d9a6b923b10c8e328438838bd42e03d18
      https://github.com/llvm/llvm-project/commit/963e226d9a6b923b10c8e328438838bd42e03d18
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-07-16 (Thu, 16 Jul 2026)

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

  Log Message:
  -----------
  workflows: Fixes for release-binaries and upload-release-artifact (#209246)

There were some bugs in upload-release-artifact workflow and
release-binaries was not including this action in its checkout.


  Commit: fe64fbbafc19e46ef461fac3ec0b4144a1ffc847
      https://github.com/llvm/llvm-project/commit/fe64fbbafc19e46ef461fac3ec0b4144a1ffc847
  Author: Madhur Amilkanthwar <madhura at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h

  Log Message:
  -----------
  [SLP][modularisation][NFC] Extract mask, shuffle and AA helpers into SLUtils 3/3 (#209973)

Move the mask/shuffle construction and alias-analysis free helpers out
of SLPVectorizer.cpp into SLPVectorizer/SLPUtils.{h,cpp} (namespace
llvm::slpvectorizer).

Moved:
  transformScalarShuffleIndiciesToVector
  getShufflevectorNumGroups
  calculateShufflevectorMask
  UseMask (enum)
  buildUseMask
  isUndefVector
  doesInTreeUserNeedToExtract
  getLocation
  isSimple
  addMask
  fixupOrderingIndices
  getAltInstrMask
  replicateMask

RFC: https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922


  Commit: 3c6b4870425e7b62a966ff04f51f78920adbedb8
      https://github.com/llvm/llvm-project/commit/3c6b4870425e7b62a966ff04f51f78920adbedb8
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/include/orc-rt/TaskGroup.h
    M orc-rt/test/unit/SessionTest.cpp
    M orc-rt/test/unit/TaskGroupTest.cpp

  Log Message:
  -----------
  [orc-rt] Add TaskGroup::TokenSource; drop raw group accessor (#210240)

Session::managedCodeTaskGroup() returned the raw
std::shared_ptr<TaskGroup> for the managed-code group, exposing the
group's full interface -- including close() and addOnComplete() -- to
callers, even though those operations are reserved for the Session.

Add TaskGroup::TokenSource, a strong handle whose sole role is to serve
as an argument to the TaskGroup::Token constructor. Session now exposes
managedCodeTokenSource() in its place, so clients can acquire tokens (to
keep managed code alive across shutdown) without gaining the ability to
close the group or register completion callbacks.


  Commit: f2ef5670cf70371153caeb0ebbeae2323a61f8e0
      https://github.com/llvm/llvm-project/commit/f2ef5670cf70371153caeb0ebbeae2323a61f8e0
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_dpp_lds_expected_active_lanes.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/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-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/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/valu-mask-write-hazard.mir

  Log Message:
  -----------
  [AMDGPU] Refactor GFX11 VALU Mask Hazard Waitcnt Merging (#169213)

Move GFX11 SGPR VALU mask hazard waitcnt merging to the a forward scan
within the AMDGPUWaitSGPRHazard pass.
This simplifies the hazard recognizer code and allows merging of waitcnt
instructions in cases where SGPRs unaffected by pending writes are used.
In turn this greatly decreasing numbers of waits inserted in sequences
of V_CMP instructions writing SGPRs improving VALU pipeline performance.


  Commit: 78ed03f555ea75d2337f618930c062f4d881a08b
      https://github.com/llvm/llvm-project/commit/78ed03f555ea75d2337f618930c062f4d881a08b
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A flang/test/Lower/global-initialization-parens.f90

  Log Message:
  -----------
  [flang] Add lowering tests for parenthesized initial values (#209664)

Add a LIT test that baselines the current lowering of parenthesized
initial values in fir.global initializer regions. Today a parenthesized
scalar or derived constant survives constant folding as a Parentheses
node and is lowered to a fir.no_reassoc operation inside the global init
region, while parentheses around characters, array named-constants, and
structure-constructor components are stripped before lowering.

This test pins that behavior so that an upcoming change to the
initializer-lowering path shows its behavior delta explicitly and has a
regression guard.

Assisted-by: AI


  Commit: 15ae01dd24261bd70947aab884098e5dcd4096dd
      https://github.com/llvm/llvm-project/commit/15ae01dd24261bd70947aab884098e5dcd4096dd
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang-tools-extra/clangd/CMakeLists.txt
    A clang-tools-extra/clangd/LSPBinder.cpp
    M clang-tools-extra/clangd/LSPBinder.h
    M llvm/include/llvm/Support/LSP/Transport.h
    M llvm/lib/Support/LSP/Transport.cpp
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
    M utils/bazel/llvm-project-overlay/clang-tools-extra/clangd/BUILD.bazel

  Log Message:
  -----------
  [clangd][Support] Outline LSP payload decode errors (#203121)

Move failed payload handling from `clangd::LSPBinder::parse<T>` and
`llvm::lsp::MessageHandler::parse<T>` into their non-inline
`handleParseError` functions, while keeping successful payload
conversion specialized in each `parse<T>` instantiation.

For a Darwin arm64 build, stripped clangd decreased by 32,848 bytes and
`__TEXT,__text` decreased by 25,180 bytes.

`ClangdTests --gtest_filter=LSPBinderTest.*` passes, and
`llvm/lib/Support/LSP/Transport.cpp` passes a standalone syntax compile.

Work towards #202616

AI tool disclosure: Co-authored with OpenAI Codex.

Co-authored-by: OpenAI Codex <noreply at openai.com>


  Commit: c488b2c2407bf29bb20f67bb8f3cf39c637d231e
      https://github.com/llvm/llvm-project/commit/c488b2c2407bf29bb20f67bb8f3cf39c637d231e
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/docs/AMDGPUDMAOperations.md

  Log Message:
  -----------
  [Docs][AMDGPU] Consistent use of "wave-uniform", "per-lane" and "immediate" (#209974)

When documenting DMA operations, use consistent qualifiers
(wave-uniform, per-lane, immediate) instead of referring to SGPRs and
VGPRs.

Assisted-By: Claude Opus 4.6


  Commit: a376783e2ed3a44f63991c97513711faad09525b
      https://github.com/llvm/llvm-project/commit/a376783e2ed3a44f63991c97513711faad09525b
  Author: maflcko <6399679+maflcko at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M compiler-rt/lib/ubsan/ubsan_diag.cpp
    M compiler-rt/test/ubsan/TestCases/Integer/suppressions-nested-calls.c

  Log Message:
  -----------
  [compiler-rt][ubsan] Fix suppressions for inlined functions (#206735)

Align suppression PC handling with getCallerLocation(), so function
suppressions identify the inlined function that caused a report.

Intentionally match only the innermost inline frame.

Extend suppressions-nested-calls.c coverage to -O1.


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

---------

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


  Commit: 30bc042395a6cf0aa1e5de4fcc625d5b8c611767
      https://github.com/llvm/llvm-project/commit/30bc042395a6cf0aa1e5de4fcc625d5b8c611767
  Author: maflcko <6399679+maflcko at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [compiler-rt][test] Use configured Python for lit page-size probe (#209175)

Use the same Python executable configured for the test suite, rather
than relying on python3 being on PATH.

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


  Commit: c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75
      https://github.com/llvm/llvm-project/commit/c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    M libc/test/src/sys/socket/linux/bind_test.cpp
    M libc/test/src/sys/socket/linux/connect_accept_test.cpp
    M libc/test/src/sys/socket/linux/listen_test.cpp
    M libc/test/src/sys/socket/linux/socket_test_support.h
    M libc/test/src/sys/socket/linux/sockname_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel

  Log Message:
  -----------
  [libc][bazel] Add remaining sys/socket functions and tests (#209798)

This patch adds the following sys/socket functions and syscall wrapper
libraries to BUILD.bazel:
- accept
- accept4
- bind
- connect
- getpeername
- getsockname
- listen
- sockatmark

I'm also enabling the unit tests for these functions. Running AF_UNIX
socket tests under Bazel ran into a problem where the absolute path to
the test sandbox directory exceeds the 108-byte limit of
sockaddr_un::sun_path. To work around that, I added a TestDirectoryScope
helper that temporarily chdirs into the test directory so the tests can
use short relative filenames, and restores the original working
directory on exit.

Assisted by Gemini.


  Commit: 9445ad3f91d4331eead867f8b3c9c8a3818edac0
      https://github.com/llvm/llvm-project/commit/9445ad3f91d4331eead867f8b3c9c8a3818edac0
  Author: Rana Pratap Reddy <RanaPratapReddy.Nimmakayala at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    A clang/test/CIR/CodeGenHIP/amdgcn-buffer-rsrc-type.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Adds `__amdgpu_buffer_rsrc_t` in the buffer-resource address space (#204782)

CIR previously lowering every AMDGPU opaque pointer to
`!cir.ptr<!void>`. Now `__amdgpu_buffer_rsrc_t` lower to
`!cir.ptr<!void, target_address_space(8)>` similar to (`ptr
addrspace(8)` in LLVM IR) matching CodeGen.

This change requires for upcoming raw buffer load/store/atomic builtins.
Those builtins `__builtin_amdgcn_raw_buffer_load/store_b*,
__builtin_amdgcn_raw_ptr_buffer_atomic_*` take a
`__amdgpu_buffer_rsrc_t` as operand, and the corresponding LLVM
intrinsics expect a `ptr addrspace(8)` resource argument.


  Commit: 513ac13e7e5037af4b39c8c582dd7927f4c807fc
      https://github.com/llvm/llvm-project/commit/513ac13e7e5037af4b39c8c582dd7927f4c807fc
  Author: SiHuaN <liyongtai at iscas.ac.cn>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c

  Log Message:
  -----------
  [Clang][RISCV] Add P extension reinterpret cast intrinsics (#210241)

Implement the "Reinterpret casts" section of the RISC-V P extension intrinsic
spec in `riscv_packed_simd.h`.

The 82 `__riscv_preinterpret_<from>_<to>` intrinsics provide
bit-pattern-preserving conversions between packed types and equal-width
scalars, and between equal-width packed types. They generate no instructions;
each is a `__builtin_bit_cast`.


  Commit: 61fa8d3db491c4a864242f22ce31b730fb78ecb5
      https://github.com/llvm/llvm-project/commit/61fa8d3db491c4a864242f22ce31b730fb78ecb5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp

  Log Message:
  -----------
  CodeGen: Rename LibcallLoweringModuleAnalysisResult to ModuleLibcallLoweringInfo (#210176)


  Commit: 6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8
      https://github.com/llvm/llvm-project/commit/6f2bd9fd1a5e7c61893abf2f1e9246610e6a32f8
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    A flang/test/Fir/CUDA/cuda-device-func-transform-aio.mlir

  Log Message:
  -----------
  [flang][cuda] Add option to flag descriptor I/O as error (#210170)

Descriptor I/O is too expensive in some compilation mode (nordc). Add
ability to emit an error if they are found in device code.


  Commit: 02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd
      https://github.com/llvm/llvm-project/commit/02f55a9e5e4775bc17cc23f9d1e7f5ee23cf63cd
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [libc] add net/if.h to the list of installed headers (#210021)

on aarch64, riscv and x86_64.


  Commit: c571b0bd7330a4b737ad7dec31e7f2b52edd3953
      https://github.com/llvm/llvm-project/commit/c571b0bd7330a4b737ad7dec31e7f2b52edd3953
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/include/llvm-libc-types/struct_sockaddr_storage.h
    M libc/test/src/sys/socket/linux/sockaddr_storage_test.cpp

  Log Message:
  -----------
  [libc] Fix size of struct sockaddr_storage (#210037)

My cleverness with the union backfired as it introduced an
(architecture-specific) padding between before it. Drop the union to
avoid that.

This probably wouldn't break much as the structure exists just to
allocate space (and this made it larger), but we should fix it
nonetheless.


  Commit: c4903855b64ee801d1b9caeb970921a63475c98b
      https://github.com/llvm/llvm-project/commit/c4903855b64ee801d1b9caeb970921a63475c98b
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang-rt/CMakeLists.txt
    M flang/test/Driver/fakeflang.F
    M flang/tools/fakeflang/fakeflang.cpp
    M runtimes/cmake/config-Fortran.cmake

  Log Message:
  -----------
  [fakeflang] Also detect CMakeTestGNU.c (#210175)

Two fixes when using CMake < 3.28 after #209482:

* In addition to `flang`, also recognize `fakeflang` to determine
whether any workaround for CMake not completely supporting Flang is
needed. `fakeflang` is used as a shim in #209482.

* For CMake < 3.24, CMake does not reognize Flang at all and tries other
methods to detect to the compiler, including the file `CMakeTestGNU.c`.
Make `fakeflang` recognize it as a probe attempt.

This should fix the
[openmp-offload-amdgpu-clang-flang](https://lab.llvm.org/buildbot/#/builders/67)
buildbot. The buildbot is currently upgrade to a newer CMake version,
and the minimum required version of CMake will become 3.31 soon.


  Commit: 250f791e7002afb308e4a59dc5ef3e1f2e1c10af
      https://github.com/llvm/llvm-project/commit/250f791e7002afb308e4a59dc5ef3e1f2e1c10af
  Author: Raphael Isemann <rise at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp

  Log Message:
  -----------
  [lldb] Fix tsan error in SymbolLocatorDebugSymbols (#209698)

g_dlsym_DBGCopyFullDSYMURLForUUID and g_dlsym_DBGCopyDSYMPropertyLists
are two globals that are lazily initialized when first used. TSan
complains that this lazy init code is not thread-safe as there is no
synchronization mechanism. In practice, the only race that can happen
here is that we initialize the same values concurrently, which should be
'safe' on any platform.

This patch moves the initialization code into a static local that
returns a const object. This makes this code thread-safe by construction
and fixes the TSan error.

It also fixes that we keep calling dlopen if the initialization fails.
That is, the `g_dlsym_DBGCopyFullDSYMURLForUUID == nullptr` will always
be true on systems where the framework doesn't exist, so this code will
try loading it on every function call and fail.


  Commit: 89f5334990c5aa853fcbaa361aefe5b999e63dc5
      https://github.com/llvm/llvm-project/commit/89f5334990c5aa853fcbaa361aefe5b999e63dc5
  Author: Jeff Bailey <jbailey at raspberryginger.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/docs/CMakeLists.txt
    R libc/docs/headers/time.rst
    A libc/utils/docgen/time.yaml

  Log Message:
  -----------
  [libc][docs] Dynamically generate time.h documentation (#210197)

Removed the static time.rst file.

Added time to docgen_list in libc/docs/CMakeLists.txt. Created
libc/utils/docgen/time.yaml to define the functions.

Assisted-by: Automated tooling, human reviewed.


  Commit: d68dc184b1cec0a01876b3f635bce6c25a64edf6
      https://github.com/llvm/llvm-project/commit/d68dc184b1cec0a01876b3f635bce6c25a64edf6
  Author: Kareem Ergawy <kergawy at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/lib/Lower/PFTBuilder.cpp
    A flang/test/Lower/pre-fir-tree-assigned-goto.f90

  Log Message:
  -----------
  [flang][PFT] record every target of an assigned GO TO (#210065)

Assigned GO TO (`go to v [, (l1, l2, ...)]`) is the third multiway
branch in the language, alongside the computed GO TO and arithmetic IF
that were addressed in PR #210012. Its PFTBuilder handler previously
did:

    [&](const parser::AssignedGotoStmt &) {
      eval.isUnstructured = true;
      markSuccessorAsNewBlock(eval);
    },

i.e. it recorded no branch targets at all -- neither `controlSuccessor`
nor `extraControlSuccessors` was populated.

Handle the assigned GO TO the same way PR #210012 handles the computed
GO TO and arithmetic IF: iterate every possible target and call
`markBranchTarget(eval, label)` for each, so that `controlSuccessor`
receives the first and `extraControlSuccessors` receives the rest.

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>


  Commit: d134db0b2b989a2b15f91f24acca43497dfe0919
      https://github.com/llvm/llvm-project/commit/d134db0b2b989a2b15f91f24acca43497dfe0919
  Author: Sean Clarke <sclarke at tenstorrent.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/HashRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
    M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll

  Log Message:
  -----------
  [HashRecognize] Remove byte-multiple trip count requirement (#210086)

The newly added carryless-multiply CRC loop optimization (#203405) does
not require a byte-multiple trip count unlike the Sarwate method which
was previously implemented. Loosen this requirement in HashRecognize and
reapply it in `optimizeCRCLoop`.


  Commit: cc98c1eb84c690c65fba77b72c269a869978c898
      https://github.com/llvm/llvm-project/commit/cc98c1eb84c690c65fba77b72c269a869978c898
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    M llvm/include/llvm/ADT/GenericUniformityInfo.h
    M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
    M llvm/include/llvm/IR/CycleInfo.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/lib/Analysis/CFG.cpp
    M llvm/lib/Analysis/UniformityAnalysis.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/IR/CycleInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp

  Log Message:
  -----------
  [CycleInfo] Represent cycles by an opaque handle. NFC (#210117)

Consumers refer to a cycle by a GenericCycle pointer into
GenericCycleInfo's storage. Introduce GenericCycleRef, a value handle
wrapping the cycle's preorder index, and route every GenericCycleInfo
query and mutation through it. GenericCycle becomes an internal
implementation detail, so its storage representation can change without
touching callers.

Aided by Claude Opus 4.8, reviewed by Fable 5

Suggested by
https://github.com/llvm/llvm-project/pull/208614#pullrequestreview-4683378136


  Commit: 90e31c46d005ae0a7f5968c38a9310bee499923c
      https://github.com/llvm/llvm-project/commit/90e31c46d005ae0a7f5968c38a9310bee499923c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/LTO/LTO.cpp
    A llvm/test/ThinLTO/X86/Inputs/cache-defined-globals-order.ll
    A llvm/test/ThinLTO/X86/cache-defined-globals-order.ll

  Log Message:
  -----------
  [LTO] Sort DefinedGlobals in LTO cache key (#210025)

Sort the DefindeGlobals by GUID when computing the LTO cache key, to
avoid making the cache key dependent on the insertion order. This fixes
large compile-time regressions in rust incremental builds.

Alternatively one could make collectDefinedGVSummariesPerModule() work
on the sortedRange(), but as that is also used in other places, it
probably makes sense to sort locally.

The issue was introduced in 760bb06cb3cd98832f1e4e7a4eaebd98b66d2bdd.


  Commit: b69dd3366863acff56b0b2efdc4c4938097bb43e
      https://github.com/llvm/llvm-project/commit/b69dd3366863acff56b0b2efdc4c4938097bb43e
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M mlir/test/Integration/Dialect/Vector/CPU/compress.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/expand.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/maskedload.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/maskedstore.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/scatter.mlir

  Log Message:
  -----------
  [mlir][vector][nfc] Update integration tests (#210090)

Add comments, unify naming, remove redundant printing hooks.


  Commit: 8b269587981fdc3b487cda5559ef75eeb475e613
      https://github.com/llvm/llvm-project/commit/8b269587981fdc3b487cda5559ef75eeb475e613
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll

  Log Message:
  -----------
  [VectorCombine][X86] Add test coverage for #209714 (#210063)


  Commit: 981c0f9037fc2e1e5c70ba2cfe61128557b5eeff
      https://github.com/llvm/llvm-project/commit/981c0f9037fc2e1e5c70ba2cfe61128557b5eeff
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/test/API/functionalities/thread/finish-from-empty-func/TestEmptyFuncThreadStepOut.py
    M lldb/test/API/functionalities/thread/finish-from-empty-func/main.c

  Log Message:
  -----------
  [lldb][test] Handle potential compiler differences in TestEmptyFuncThreadStepOut.py (#210050)

Fixes #195958

It was reported that this test sometimes failed in CI because lldb would
step out to line 6 instead of line 7.

Jim Ingham expained on the issue that both could be valid locations
(https://github.com/llvm/llvm-project/issues/195958#issuecomment-4384269846).

There's no garauntee that "step out" would go to the source line after
the call you step out of. All it does is go to the first location
outside of the call. If the compiler so chose, that could be on the same
line as the call.

I was not able to reproduce this failure mode, but I think it was
happening in CI before, and is possible. So I've made the test accept
line 6 or 7. Anything further than that we've gone too far and the test
will fail.


  Commit: 9ee8b18b6c0758e57cedfa57e99ba85dfd247d35
      https://github.com/llvm/llvm-project/commit/9ee8b18b6c0758e57cedfa57e99ba85dfd247d35
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir

  Log Message:
  -----------
  [mlir][vector] Fix e2e test post #210090 (#210270)

Failing bots:
  * https://lab.llvm.org/buildbot/#/builders/177/builds/37626
  * https://lab.llvm.org/buildbot/#/builders/116/builds/30570


  Commit: 4894d4e87c332af24809b20573d880a4073b738b
      https://github.com/llvm/llvm-project/commit/4894d4e87c332af24809b20573d880a4073b738b
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/test/Driver/darwin-target-variant-sdk-version.c

  Log Message:
  -----------
  [clang][driver] Add a -target-variant alias for -darwin-target-variant (#208388)

Swift Build uses the `-target-variant` argument which is an alias for
-darwin-target-variant that's only present in the Xcode version of
clang. Upstream it for general support and parity with swiftc.

Co-authored-by: Alex Lorenz <arphaman at gmail.com>


  Commit: 12c4c0bf0269218c6ffdddae1c895f892a3e4e75
      https://github.com/llvm/llvm-project/commit/12c4c0bf0269218c6ffdddae1c895f892a3e4e75
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.def
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir

  Log Message:
  -----------
  [AMDGPU] Handle expert scheduling VA_VDST WAR hazards (#201619)

Handle WAR hazards where a VALU reading a VGPR is followed by a VMEM
writing the same VGPR. It is possible, though not very common, that the
VMEM will complete first. To guard against this the compiler must insert
a wait on VA_VDST.


  Commit: 2580624091e36b85c162439513eef8e752217a1d
      https://github.com/llvm/llvm-project/commit/2580624091e36b85c162439513eef8e752217a1d
  Author: cqwrteur <oyzawqgcfc at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libcxx/src/support/runtime/exception_pointer_msvc.ipp

  Log Message:
  -----------
  [libcxx] avoid include Uppercase windows headers (#208903)

We should use unknwn.h and windows.h instead of Unknwn.h and Windows.h
because Linux and other non‑Windows systems treat filenames as
case‑sensitive. Windows does not, so mixed‑case includes work there but
break elsewhere. Both mingw‑w64‑crt and windows‑msvc‑sysroot provide all
Windows headers in fully lowercase, so using the lowercase forms ensures
consistent cross‑platform builds.

Fixes #208901


  Commit: a3bcc010c7b7d5fa43ab7928a88312841c4322dd
      https://github.com/llvm/llvm-project/commit/a3bcc010c7b7d5fa43ab7928a88312841c4322dd
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    A lld/test/COFF/link-dll-arm64x.s

  Log Message:
  -----------
  [LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210080)

In mingw mode, when linking against a DLL, the user can either provide a
regular import library, or provide the actual DLL. When importing ARM64X
image, add both native and EC views to the symbol table on EC targets.
Also getMachine() on such images returns ARM64X, treat it as ARM64
instead.


  Commit: f520e7083a12f0642eff8fc19fc4c90ccccc7da5
      https://github.com/llvm/llvm-project/commit/f520e7083a12f0642eff8fc19fc4c90ccccc7da5
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp

  Log Message:
  -----------
  [SPIR-V][NewPM] Fix SPIRVEmitIntrinsics registration with the new pass manager (#209966)


  Commit: 0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d
      https://github.com/llvm/llvm-project/commit/0e1b0935ff6f326ba1b9c2d23ba9fa7b41e6941d
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll

  Log Message:
  -----------
  [SPIR-V] Preserve signed i1 semantics in sitofp (#209232)

selectIToF hardcoded IsSigned=false when materializing the bool-to-int
conversion, so sitofp i1 true was miscompiled as 1.0 instead of -1.0


  Commit: 5fcab35be3b450256e3b02a735900071c0b74a54
      https://github.com/llvm/llvm-project/commit/5fcab35be3b450256e3b02a735900071c0b74a54
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    A llvm/test/MC/AMDGPU/amdhsa-kernel-prologue.s
    M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
    M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s

  Log Message:
  -----------
  [AMDGPU] Add assembler check for GFX1250 unclaused vmem workaround (#209517)

Warn if an entrypoint does not start with the standard workaround
sequence.


  Commit: 6cafa889cd398ca70992e0df518b2414a2607327
      https://github.com/llvm/llvm-project/commit/6cafa889cd398ca70992e0df518b2414a2607327
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/test/Shell/SymbolFile/NativePDB/Inputs/globals-fundamental.lldbinit
    M lldb/test/Shell/SymbolFile/NativePDB/globals-fundamental.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/static-class-constants.cpp

  Log Message:
  -----------
  [lldb][NativePDB] Use active bits for constant width (#196104)

Static constants with bit widths less than 16 (e.g. char/unsigned char)
in classes were not available. These constants are still encoded with 16
bits
([here](https://github.com/llvm/llvm-project/blob/dd145eb8997878143f648a7601741f6409330963/llvm/lib/DebugInfo/CodeView/CodeViewRecordIO.cpp#L341-L343))
even though they only need less bits. When we tried to create an
initializer for them, we'd check if the bit width (=16) was small enough
to fit into the target (<16). This would fail.

This was a problem in the following code:
```cpp
struct Foo {
  // width(unsigned char) = 8, but 255 was encoded and read as 16 bit
  static constexpr unsigned char u8_max = 255;
};
```

This PR fixes the issue by using `APSInt::getActiveBits` for unsigned
types and `APSInt::getSignificantBits` for signed types. They get the
number of bits required to encode the value. For example a constant 64
would need 7 bits in unsigned and 8 bits in signed types.


  Commit: e8f9589942ecd93d94de2af2e875964693e55129
      https://github.com/llvm/llvm-project/commit/e8f9589942ecd93d94de2af2e875964693e55129
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/dxc_debug.hlsl
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
    M llvm/test/CodeGen/DirectX/ContainerData/ContainerFlags.ll

  Log Message:
  -----------
  [Driver][DirectX] Add `/Qstrip_debug` flag (#204832)

Add the flag that removes ILDB part from the main DXContainer.


  Commit: d444e3ebb8ae69cdb628be3b3b0c632f13df9a08
      https://github.com/llvm/llvm-project/commit/d444e3ebb8ae69cdb628be3b3b0c632f13df9a08
  Author: Chibuoyim (Wilson) Ogbonna <ogbonnachibuoyim12 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/lib/AST/ExprCXX.cpp
    M clang/test/SemaCXX/using-decl-templates.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix crash in UnresolvedMemberExpr check (#209792)

This closes https://github.com/llvm/llvm-project/issues/209427

The test currently crashes because while iterating over the candidate
members of an unresolved member expression, `decl` is a `UsingShadowDecl`
with underlying decl as `UnresolvedUsingValueDecl`.

The current `isa<UnresolvedUsingValueDecl>(decl)` guard only checks the
outer `UsingShadowDecl` and misses the unresolved-using decl hidden
inside it, so `getAsFunction()` returns nullptr and
`cast<CXXMethodDecl>(nullptr)` asserts.
 
This patch checks the `UnresolvedUsingValueDecl` inside by calling
`getUnderlyingDecl()` before the guard.

This used to happen before a2794f9f363361f87a3538b90b78ff13381d5ce1.


  Commit: 06effa5b965f68a24dcea8550efc86225b186f54
      https://github.com/llvm/llvm-project/commit/06effa5b965f68a24dcea8550efc86225b186f54
  Author: mayanksolanki393 <mayanksolanki393 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/IR/Verifier.cpp
    M llvm/test/Verifier/matrix-intrinsics.ll

  Log Message:
  -----------
  [LLVM][Verifier] Remove constant-only matrix stride check (#207665)

Remove the verifier check requiring constant column-major matrix
load/store strides to be greater than or equal to the row count.

The stride operand is not an immarg, so the verifier must not enforce
constraints that only apply when the argument happens to be constant.


  Commit: afa73e4ff6db57b0416eb44127105b8092bd01f8
      https://github.com/llvm/llvm-project/commit/afa73e4ff6db57b0416eb44127105b8092bd01f8
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/test/Transforms/ConstraintElimination/eq.ll
    M llvm/test/Transforms/ConstraintElimination/ne.ll

  Log Message:
  -----------
  [ConstraintElimination] Handle equality predicates with signed system (#205331)

Equality predicate solving has been supported for quite a while, eq/ne
facts were extended to the signed constraint system more recently
(7fb97bee9269f0d4239908ac8def70be696991c6). When solving
eq/ne conditions, query the signed system as well on inconclusive
answers from the unsigned one.

Fixes: https://github.com/llvm/llvm-project/issues/205282.
Fixes: https://github.com/llvm/llvm-project/issues/63505.


  Commit: 2b2df2677619cb0377d27d8b766b8fc265749345
      https://github.com/llvm/llvm-project/commit/2b2df2677619cb0377d27d8b766b8fc265749345
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    R lld/test/COFF/link-dll-arm64x.s

  Log Message:
  -----------
  Revert "[LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210080)" (#210299)

This reverts commit a3bcc010c7b7d5fa43ab7928a88312841c4322dd, which
breaks in asan build.


  Commit: 2a006dff821342c1726fd3137f804186851a26bb
      https://github.com/llvm/llvm-project/commit/2a006dff821342c1726fd3137f804186851a26bb
  Author: Joel Walker <theagingboy05 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-vashr.mir

  Log Message:
  -----------
  [AArch64][GlobalISel] Add sign bits for G_VASHR (#210269)

Ports the `AArch64ISD::VASHR` case from
`ComputeNumSignBitsForTargetNode` to the GlobalISel hook: an arithmetic
right shift by K adds K copies of the sign bit, so the result has
`min(SignBits(Src) + K, ScalarSizeInBits)` sign bits. `G_VASHR`'s shift
amount is always an immediate in `[1, ElementBits]`.

Follow-up to #198314, which added the `G_FCM*` cases.

Assisted by Claude (Anthropic).


  Commit: a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d
      https://github.com/llvm/llvm-project/commit/a4cad33430cf5d2d03eb91ce5e41ed1b9ef7cc4d
  Author: Joel Walker <theagingboy05 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Support/KnownBits.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-urem.mir
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [KnownBits] Use X < Y identity and umin(MaxX, MaxY - 1) bound in urem (#210262)

Tightens `KnownBits::urem` with the two facts `ConstantRange::urem`
already uses:

- `L % R == L` when `MaxL < MinR`: return the LHS bits unchanged. This
can propagate known one bits, which the current leading-zeros-only
reasoning never produces.
- `L % R <= umin(MaxL, MaxR - 1)`, since a zero divisor is UB: keep that
bound's leading zeros. This is one bit stronger than the per-operand
leading-zero count when `MaxR` is a power of two, and together with
`remGetLowBits` it subsumes the power-of-two-constant special case,
which is removed.

Soundness is covered by the existing exhaustive unit test (widths 1 and
4; additionally brute-forced at width 5). Across all 6480 valid width-4
KnownBits pairs, non-optimal results drop from 3332 to 2090. The
residual is number-theoretic (e.g. the exact value of `10 % 3`), out of
reach of leading-bit/range reasoning, so `CheckOptimality` stays off for
urem, as for udiv (#209360).

Assisted by Claude (Anthropic).


  Commit: 671c0a275a1f304f22855fabb299090233fdbd54
      https://github.com/llvm/llvm-project/commit/671c0a275a1f304f22855fabb299090233fdbd54
  Author: tyan0 <takashi.yano at nifty.ne.jp>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    A clang/test/Driver/Inputs/resource_dir/lib/cygwin/libclang_rt.builtins-x86_64.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/x86_64-pc-windows-cygnus/libclang_rt.builtins.a
    A clang/test/Driver/cygwin-print-file-name.c

  Log Message:
  -----------
  [Clang][Driver] Fix compiler-rt library directory for cygwin (#208925)

If compiler-rt is built with `LLVM_ENABLE_PER_TARGET_RUNTIME_DIR=OFF`,
its search directory is incorrect.

Specifically, `ToolChain::getOSLibName()` returns `windows` instead of
`cygwin` in a Cygwin environment, due to falling back to getOS(). This
results in a link error against compiler-rt.

This patch makes `getOSLibName()` return `cygwin`, ensuring that
compiler-rt is linked correctly.

---------

Signed-off-by: Takashi Yano <takashi.yano at nifty.ne.jp>


  Commit: 8377d59dfade3f1a4bf5779ddd90359bd4ddc249
      https://github.com/llvm/llvm-project/commit/8377d59dfade3f1a4bf5779ddd90359bd4ddc249
  Author: Kseniya Tikhomirova <kseniya.tikhomirova at intel.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libsycl/src/event.cpp
    M libsycl/unittests/event/event.cpp

  Log Message:
  -----------
  [libsycl] add explicit instantiations for event::get_profiling_info (#210118)

Assisted by GH Copilot.

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


  Commit: 4d37b5bf3099d099302cce447168b3ece4efef5e
      https://github.com/llvm/llvm-project/commit/4d37b5bf3099d099302cce447168b3ece4efef5e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll

  Log Message:
  -----------
  [LV] Add additional SCEV expansion tests with AddRecs. (NFC) (#210159)

Add additional test coverage for SCEV expansion of AddRecs, including
cases where extends are needed, different start and steps, as well as
cases where the outer header is not the plan's entry block.


  Commit: a9e5bb572703780e3eea4a2759104a141ea73466
      https://github.com/llvm/llvm-project/commit/a9e5bb572703780e3eea4a2759104a141ea73466
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 398f2117379f (#210308)


  Commit: 9a2d9c7fef47c0af321150f75d8f21db06cccb43
      https://github.com/llvm/llvm-project/commit/9a2d9c7fef47c0af321150f75d8f21db06cccb43
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.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/memset-pattern.ll
    M llvm/test/CodeGen/ARM/select-imm.ll
    A llvm/test/Transforms/IndVarSimplify/iv-widen-addrec-flag-inferred-late.ll

  Log Message:
  -----------
  [SCEV] Try to fold ZExt/SExt of AddRec before existing lookup. (#208805)

Move AddRec fold for ZExt & SExt before existing SCEV lookup. This can
improve results, when we constructed SCEV for a ZExt/SExt during earlier
analysis and flags on the operand AddRec have not been
refined/strengthend yet.

This improves results in some cases and fixes a regression here:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/654#discussion_r3554885279.

On a large C/C++ corpus with 32k bitcode files, ~2% more IVs get
widened, removing a large number of ZExt instructions.

Compile-time impact in the noise

https://llvm-compile-time-tracker.com/compare.php?from=167d65906cc3c636221158abe8289ab4a03dfc7d&to=381abca0d5ead4443d86287d754f47c21396a9be&stat=instructions:u


  Commit: 62a932ac3e2702a5493934c6362f9e058a204557
      https://github.com/llvm/llvm-project/commit/62a932ac3e2702a5493934c6362f9e058a204557
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/CodeGen/SystemZ/systemz-module.flags.c
    M llvm/include/llvm/IR/Module.h
    M llvm/lib/IR/Module.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Fix zos_translation_time module flag (#210058)

The zos_translation_time flag needs to be 64-bit to handle the year 2038
problem.


  Commit: 23b0281d75a4320a4e6e3d837edf94911d98d252
      https://github.com/llvm/llvm-project/commit/23b0281d75a4320a4e6e3d837edf94911d98d252
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    A llvm/test/CodeGen/X86/tailcall-i686-pic.ll

  Log Message:
  -----------
  [X86] Fix assertion failure for tail call on i686+pic (#210302)

The pattern for TCRETURNmi has a IsNotPIC predicate, but the
checkTCRetEnoughRegs() predicate that's part of the X86tcret_enough_regs
PatFrag is evaluated first, so we can't assert that PIC is disabled
here. We should just return false in that case.

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


  Commit: 38104cf836c3903647c917a5b251e938f4eadbb9
      https://github.com/llvm/llvm-project/commit/38104cf836c3903647c917a5b251e938f4eadbb9
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64.h
    A llvm/lib/Target/AArch64/AArch64PTrueCoalescing.cpp
    M llvm/lib/Target/AArch64/AArch64PassRegistry.def
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    A llvm/test/CodeGen/AArch64/sve-ptrue-coalesce.mir

  Log Message:
  -----------
  [LLVM][SVE] Add MachineInst pass to coalesce PTRUE instructions. (#204820)

SVE predicate registers contain a bit for each byte of a data register.
When operating on bigger element types the overlaping predicate bits are
grouped together but typically only the least-significant-bit is read as
part of the operation. This means the value of the other bits does not
affect the operation, making it possible to use the result of PTRUE for
a larger element typed operation, assuming the predicate patterns are
equivalent. For example:

  ADD_S (PTRUE_H 31), Z0, Z1 == ADD_S (PTRUE_S 31), Z0, Z1

AArch64PTrueCoalescingPass uses this fact to reduce the number of PTRUE
instructions in a function, with the general trend towards needing a
single PTRUE based on the smallest element type in use.

NOTE: The pass will be enabled by default using a dedicated PR to make
it easier to revert if something goes wrong.


  Commit: de4f929700f8d87041e0b050ec6028f0ac5276ad
      https://github.com/llvm/llvm-project/commit/de4f929700f8d87041e0b050ec6028f0ac5276ad
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
    M lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h

  Log Message:
  -----------
  [lldb][x86] Remove GCC 6 workaround (#210317)

Added by 3bea7306e8669f94bacafae68748a9139cfc0b98.

We now require GCC >= 7.4 so it can be removed.

I tested a standalone reproducer with GCC 7.3 and
clang 5. Neither have the problem.

https://godbolt.org/z/3zKrT9c8s

Standalone reproducer:
```
 struct Base {
   Base(int) {}
 };

 struct Derived : virtual Base {
 #ifdef WORKAROUND
     Derived(int a): Base(a) {}
 #endif
   virtual void g() = 0;
 };

 struct Final : Derived {
   Final(int n) : Base(n)
 #ifdef WORKAROUND
   , Derived(n)
 #endif
   {}
   void g() override {}
 };
```


  Commit: b9f5bcbcfbe6aa4943c808afd3bb82243ecb3193
      https://github.com/llvm/llvm-project/commit/b9f5bcbcfbe6aa4943c808afd3bb82243ecb3193
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Basic/ABIVersions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/CodeGen/CGFunctionInfo.h
    M clang/include/clang/CodeGen/CodeGenABITypes.h
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/CGCUDARuntime.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CodeGenABITypes.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenTypes.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/sysv_abi.c
    R clang/test/CodeGen/target-avx-function-abi.c
    R clang/test/CodeGenCXX/target-avx-method-abi.cpp
    M clang/unittests/CodeGen/CodeGenExternalTest.cpp
    M clang/unittests/CodeGen/TestCompiler.h

  Log Message:
  -----------
  Revert "[clang][CodeGen][X86_64] Honor per-function AVX ABI in C/C++ call paths, maintain old psABI for PlayStation." (#210303)

Reverts llvm/llvm-project#193298

Causes a major compile-time regression.


  Commit: 75ec1a4e80a9377f8f1e2ff063b094e016787926
      https://github.com/llvm/llvm-project/commit/75ec1a4e80a9377f8f1e2ff063b094e016787926
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-default-address-space.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-init-expr.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-multi-gve.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-backing-var.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-type.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-path-null.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-static-member.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-type-not-in-regs.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-static-member.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable.ll

  Log Message:
  -----------
  [SPIRV] Emit NonSemantic DebugGlobalVariable (#207230)

Add emitDebugGlobalVariable to the NSDI handler, translating each
DIGlobalVariable to a
[DebugGlobalVariable](https://github.khronos.org/SPIRV-Registry/nonsemantic/NonSemantic.Shader.DebugInfo.html#DebugGlobalVariable)
ext inst.


  Commit: 4f76a4c5a3f8711fe13b05c0f93ac78349396292
      https://github.com/llvm/llvm-project/commit/4f76a4c5a3f8711fe13b05c0f93ac78349396292
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md

  Log Message:
  -----------
  [NFC] RelNotes Formatting fix I screwed up in 209893 (#210325)


  Commit: 40ae05d4773f5c1b2a84ea7dc908d92671b8daa9
      https://github.com/llvm/llvm-project/commit/40ae05d4773f5c1b2a84ea7dc908d92671b8daa9
  Author: adams381 <adams at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/unittests/CIR/CMakeLists.txt
    A clang/unittests/CIR/IntTypeABIAlignTest.cpp

  Log Message:
  -----------
  [CIR] Return power-of-two ABI alignment for non-fundamental int widths (#210187)

`cir::IntType::getABIAlignment` returns `width / 8` for non-`_BitInt`
integers. For a non-fundamental width such as `i24` it returns 3, which
is
not a power of two, so a consumer that builds an `llvm::Align` from it
would
hit the power-of-two assertion unless it rounds the value up itself.

This rounds the alignment up to a power of two inside `getABIAlignment`,
matching how LLVM's default DataLayout aligns these (an `i24` aligns
like
`i32`). The fundamental widths are unchanged (`i8` -> 1, `i16` -> 2,
`i32` -> 4, `i64` -> 8), `__int128` stays at 16, and a sub-byte width
like
`i1` now reports 1 instead of 0. A unit test pins these cases.


  Commit: 1f2772f8e26beb909c2a559f1fb08697e3e06909
      https://github.com/llvm/llvm-project/commit/1f2772f8e26beb909c2a559f1fb08697e3e06909
  Author: Iliyan Georgiev <Iliyan.Georgiev at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/availability.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-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 support for MXFP conv2d (#210054)

- Adds profile compliance support for MXFP conv2d
- Relax conv2d accumulator constraits. They are checked as part of
validation pass
and this would allow experimentation with different types.

Signed-off-by: Iliyan Georgiev <iliyan.georgiev at arm.com>


  Commit: 6f64e7cf0ad7699a5f1e6b2418d4c2cdcdb26470
      https://github.com/llvm/llvm-project/commit/6f64e7cf0ad7699a5f1e6b2418d4c2cdcdb26470
  Author: Shreyansh Lodha <lodhashreyansh1603 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/test/AST/ast-dump-decl.cpp
    A clang/test/AST/ast-dump-deleted-defaulted-range.cpp
    M clang/test/AST/ast-dump-funcs.cpp
    M clang/test/AST/ast-dump-record-definition-data-json.cpp
    M clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
    M clang/test/CoverageMapping/default-method.cpp
    M clang/unittests/AST/SourceLocationTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXMethodDecl.cpp

  Log Message:
  -----------
  [Clang][AST] Add source range for deleted and defaulted functions (#205408)

Earlier wrong ranges for default and deleted functions were reported.
Post this fix all ranges for functions are reported.

Fix: Extended the declarator's source range to include the delete /
default tokens by calling
D.SetRangeEnd(PP.getLocForEndOfToken(KilLoc).getLocWithOffset(-1)) after
consuming each keyword in ParseFunctionDefinition. Previously, the range
ended at the function name, onitting the delete/default specifier
entirely.

Regression tested and no regressions found.


Assisted-by: Claude Code (Anthropic) — used in developing this patch.

Closes #64805


  Commit: 7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad
      https://github.com/llvm/llvm-project/commit/7c1b00b38d7fb9eecfd345c51f9e9509e6b039ad
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td

  Log Message:
  -----------
  [AMDGPU] Fix type of SIlds / AMDGPUISD::LDS node (#210340)

iPTR means i64 here, but this node operates on 32-bit LDS addresses.


  Commit: 499b69cf07e03a23a420ee773261fcfcfc1c3df9
      https://github.com/llvm/llvm-project/commit/499b69cf07e03a23a420ee773261fcfcfc1c3df9
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerUnit.h

  Log Message:
  -----------
  [DWARFLinker] Fix data race on the per-unit file-name cache (#208967)

CompileUnit::getDirAndFilenameFromLineTable reads and mutates the unit's
FileNames DenseMap without synchronization. During the parallel
type-name assignment phase a unit's cache is touched both by its own
worker and, through cross-unit type-name references
(addReferencedODRDies calling addDieNameFromDeclFileAndDeclLine) by
other units' workers.

The concurrent find/insert/grow corrupts the map and trips the
assertion:

```
Assertion failed: (TheBucket), function findBucketForInsertion, DenseMap.h
```

Guard the cache with a mutex. Store each entry in a heap-allocated pair
so the StringRefs handed back to callers stay valid across a concurrent
rehash. Otherwise a short (small-string-optimized) file name would move
when another insertion grows the map, dangling a StringRef already
returned.


  Commit: 2a00d50e6012e1ee31904d394c088be907b6aa8b
      https://github.com/llvm/llvm-project/commit/2a00d50e6012e1ee31904d394c088be907b6aa8b
  Author: Delaram Talaashrafi <dtalaashrafi at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-acc-structure.h
    M flang/test/Semantics/OpenACC/acc-loop-routine-call.f90

  Log Message:
  -----------
  [Flang][OpenACC] Check routine level for function references in loops (#209529)

Extend the loop/routine-level compatibility check to `FunctionReference`
calls. Resolve `!$acc routine` information from procedure pointers and
interface symbols, not only `SubprogramDetails`.


  Commit: f1b5b061832610e78d5be7313f0ab3e5e55d790f
      https://github.com/llvm/llvm-project/commit/f1b5b061832610e78d5be7313f0ab3e5e55d790f
  Author: David Young <davidayoung at meta.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/docs/CommandGuide/lit.rst
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/main.py
    A llvm/utils/lit/tests/Inputs/pass-env/lit.cfg
    A llvm/utils/lit/tests/Inputs/pass-env/test.txt
    A llvm/utils/lit/tests/pass-env.py

  Log Message:
  -----------
  Modify lit config to allow specify extra env vars to pass through to lit invocation (#208239)

lit's pass-through environment allow-list is hard-coded in
TestingConfig.py. There are cases where a particular test environment
needs an extra variable passed through (e.g. credentials or tooling
paths required to fetch dependencies during a test), but today the only
way to add one is to fork this list downstream.

This adds a --pass-env NAME option (repeatable, and also honored via
LIT_OPTS) that copies the named variable from lit's environment into the
test environment, in addition to the built-in allow-list. Since the
caller chooses exactly which variables to forward, passing through a
wrong or sensitive variable is user error rather than a default. The
default is empty, so existing behavior — only the hard-coded list is
passed through — is unchanged.

test creation help via Claude


  Commit: d7aacfc940c3f1553973f1ebf7d11a6513fda1ed
      https://github.com/llvm/llvm-project/commit/d7aacfc940c3f1553973f1ebf7d11a6513fda1ed
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Host/common/DomainSocket.h
    M lldb/source/Host/common/DomainSocket.cpp
    M lldb/unittests/Host/SocketTest.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerLLGSTest.cpp
    M lldb/unittests/Utility/UriParserTest.cpp

  Log Message:
  -----------
  [lldb] Support Windows paths in AF_UNIX domain-socket URIs (#206985)

On Windows an `AF_UNIX` socket path is a native filesystem path. Placed
directly in a unix-connect:// URI it isn't a valid `host:port`
authority, so `URI::Parse` confuses the drive letter colon as a port
separator and connection setup fails.

This patch converts the path in the [RFC
8089](https://datatracker.ietf.org/doc/html/rfc8089) file-URI form
instead which parses as an ordinary URI with an empty host. DomainSocket
converts between the native path and this URI form at its boundaries.

Both are no-ops on POSIX: behavior is unchanged, and `URI::Parse` and
the GDB-remote consumers are left untouched.

rdar://180736036


  Commit: 0b1652db8a18b336f39855fcf9b5137fa0b4b3c9
      https://github.com/llvm/llvm-project/commit/0b1652db8a18b336f39855fcf9b5137fa0b4b3c9
  Author: Kane Wang <wangqiang1 at kylinos.cn>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    A llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-xchg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv64.mir

  Log Message:
  -----------
  [RISCV][GlobalISel] Legalize G_ATOMICRMW_XCHG (#209983)

This commit makes `xchg` consistent with `add/and/or/xor` across all
type/extension combinations. Updates `legalizer-info-validation.mir` for
the newly defined rules and adds `atomicrmw-xchg.ll` and
`legalize-atomicrmw-xchg-rv{32,64}.mir` tests.


  Commit: d05f7b28b6f7de6e9ca89e1b9e3aca8c8380e322
      https://github.com/llvm/llvm-project/commit/d05f7b28b6f7de6e9ca89e1b9e3aca8c8380e322
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 38104cf836c3 (#210356)


  Commit: 45f76eac198fdee52d61c57e667f48a7f5e9581f
      https://github.com/llvm/llvm-project/commit/45f76eac198fdee52d61c57e667f48a7f5e9581f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 40ae05d4773f (#210357)


  Commit: 30f270edb42c5d37e4c4a413ebfc7a6513565b30
      https://github.com/llvm/llvm-project/commit/30f270edb42c5d37e4c4a413ebfc7a6513565b30
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    A lld/test/COFF/link-dll-arm64x.s

  Log Message:
  -----------
  [LLD] [COFF] Fix linking directly against an ARM64X DLL without import library (#210311)

In mingw mode, when linking against a DLL, the user can either provide a
regular import library, or provide the actual DLL. When linking against
an ARM64X image, add both native and EC views to the symbol table on EC
targets. Also getMachine() on such images returns ARM64X, treat it as
ARM64 instead.


  Commit: 4671287932028a32caa4bce6aea35f9de3f1daa8
      https://github.com/llvm/llvm-project/commit/4671287932028a32caa4bce6aea35f9de3f1daa8
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [lldb][Windows] Reuse preloaded exe module on launch (#210010)

# Brief

Recreating the module everytime causes the path to be canonicalized.
This does not work well with subst drives, because the newly created
module will not have the correct drive path, causing breakpoints to be
unresolved.


# Description
`ProcessWindows::OnDebuggerConnected` derives the executable module from
`GetModuleFileNameExW` on every connect. This returns the process
image's *real* path, so when the target is created via a subst'd or
mapped drive (e.g. `S:\...\a.out`, where `S:` is subst for `C:\S`) it
comes back as `C:\S\...\a.out`. `GetOrCreateModule` then fails to match
the module LLDB had already preloaded and creates a duplicate instead.
The duplicate leaves the original module's breakpoint location orphaned
unresolved while the new module's location is resolved, so a source line
breakpoint reports two locations with only one resolved. Generic tests
that assert exactly one resolved location fail with `"2 != 1"` and
`"Expecting 1 locations, got 2"`.

# Fix
This patch fixes this by first attempting to reuse the existing module
if it exists. In practice, LLDB only looks for the executable during
attach.

This is a problem in Swiftlang where we run our tests with a subst
drive. The impacted tests are:
-
`lang/c/{array_types,function_types,set_values,enum_types,anonymous,forward,local_variables}`
- `lang/cpp/{class_types,inlines}`
- `commands/{apropos/with-process,command/nested_alias,memory/write}`
- `functionalities/{memory/find,dead-strip,memory/holes}`
- `commands/expression/entry-bp`


  Commit: e57b9c0761706905e42da3cfa485cebc3629d72a
      https://github.com/llvm/llvm-project/commit/e57b9c0761706905e42da3cfa485cebc3629d72a
  Author: Prajwal Nadig <pnadig at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    A clang/test/ExtractAPI/availability_typedef_anonymous_record.c

  Log Message:
  -----------
  [ExtractAPI] Include availability attributes for anonymous typedefs (#209187)

When an anonymous type is defined and has availability attributes, the
attributes are attached to the typedef rather than the type being
defined. This patch updates the anonymous type handling logic to merge
the availability from the typedef in order to correctly include it in
the symbol graph.

rdar://125497949


  Commit: 06340b81573a6824c0ddd54fcba5ae8ffacacd6f
      https://github.com/llvm/llvm-project/commit/06340b81573a6824c0ddd54fcba5ae8ffacacd6f
  Author: Prajwal Nadig <pnadig at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    A clang/test/ExtractAPI/objc_nullability.m

  Log Message:
  -----------
  [ExtractAPI] Include nullability attributes (#209221)

Nullability attributes (nullable, nonnull, null_unspecified,
null_resettable) add valuable context about the type, and would be
useful when viewing declarations. This patch updates ExtractAPI to
include these attributes in the symbol graph.

rdar://139097216


  Commit: 709b7d1bd4a71e484702d610f81b5cf84303386f
      https://github.com/llvm/llvm-project/commit/709b7d1bd4a71e484702d610f81b5cf84303386f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp

  Log Message:
  -----------
  [X86] Pull out isFoldableAsShuffle lamdba as helper function. NFC. (#210354)

For future reuse.


  Commit: de5cef3127047836fceb416f8083942783834489
      https://github.com/llvm/llvm-project/commit/de5cef3127047836fceb416f8083942783834489
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.h
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir

  Log Message:
  -----------
  [mlir][vector] Extend `combineContractAndBroadcast` to accept `vector.shape_cast` (#208752)

`combineContractAndBroadcast` is a pattern that matches
`vector.contract` operations whose inputs are defined by
`vector.broadcast`, e.g.:

```mlir
%0 = vector.broadcast %lhs : vector<8x4xi32> to vector<1x8x4xi32>
%1 = vector.broadcast %rhs : vector<8x4xi32> to vector<1x8x4xi32>
%result = vector.contract {
    indexing_maps = [#map0, #map1, #map2],
    iterator_types = ["reduction", "parallel", "parallel", "reduction"],
    kind = #vector.kind<add>
  } %0, %1, %acc : vector<1x8x4xi32>, vector<1x8x4xi32> into vector<8x8xi32>
```

The pattern folds away the reduction over a unit dimension introduced by
the defining operations, producing a simplified `vector.contract`:

```mlir
vector.contract {
  indexing_maps = [#[[$MAP0]], #[[$MAP1]], #[[$MAP2]]]
  iterator_types = ["parallel", "parallel", "reduction"]
} %0, %1, %acc : vector<8x4xi32>, vector<8x4xi32> into vector<8x8xi32>
```

This change extends the pattern to also accept broadcast-like
`vector.shape_cast` operations:

```mlir
%0 = vector.shape_cast %lhs : vector<8x4xi32> to vector<1x8x4xi32>
%1 = vector.shape_cast %rhs : vector<8x4xi32> to vector<1x8x4xi32>
%result = vector.contract {
    indexing_maps = [#map0, #map1, #map2],
    iterator_types = ["reduction", "parallel", "parallel", "reduction"],
    kind = #vector.kind<add>
  } %0, %1, %acc : vector<1x8x4xi32>, vector<1x8x4xi32> into vector<8x8xi32>
```

Note that `mlir::vector::isBroadcastableTo` was only moved to make it
available to the newly introduced `ShapeCastOp` helper,
`ShapeCastOp::isBroadcastLike()`.


  Commit: bcb459015e12fb03e4ae3d56393883b2974f96fb
      https://github.com/llvm/llvm-project/commit/bcb459015e12fb03e4ae3d56393883b2974f96fb
  Author: Zachary Henkel <zachary.henkel at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M compiler-rt/test/sanitizer_common/android_commands/android_common.py
    M lldb/examples/python/delta.py
    M lldb/examples/python/gdbremote.py

  Log Message:
  -----------
  Replace Python's deprecated tempfile.mktemp() with secure temp APIs (#210123)

Python's tempfile.mktemp() is deprecated and insecure: it returns a path
without creating the file, leaving a TOCTOU/symlink window before the
file is opened. Replace every use, choosing the temp API by lifetime:

- compiler-rt android_common.py adb(): tempfile.TemporaryFile
(anonymous, auto-deleted), read back via seek(0); drops manual
close()/unlink().
- compiler-rt android_common.py pull_from_device():
tempfile.TemporaryDirectory so "adb pull" writes into a private,
auto-cleaned directory.
- lldb examples delta.py / gdbremote.py start_gdb_log():
tempfile.NamedTemporaryFile(delete=False); the log must outlive the call
for a later stop_gdb_log, so it is intentionally not auto-deleted.

Reported by internal static analysis and contributed upstream for the
benefit of the wider community.

Assisted-by: GitHub Copilot CLI (Claude Opus 4.8)

I do not have commit access and will need someone to submit on my
behalf.


  Commit: 5f7060ce4559c1079e850c96b106f1a43955b828
      https://github.com/llvm/llvm-project/commit/5f7060ce4559c1079e850c96b106f1a43955b828
  Author: Matheus Izvekov <mizvekov at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.md
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/Sema/Sema.h
    R clang/include/clang/Sema/TemplateInstCallback.h
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Parse/ParseAST.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    R clang/test/Templight/templight-deduced-func.cpp
    R clang/test/Templight/templight-default-arg-inst.cpp
    R clang/test/Templight/templight-default-func-arg.cpp
    R clang/test/Templight/templight-default-template-arg.cpp
    R clang/test/Templight/templight-empty-entries-fix.cpp
    R clang/test/Templight/templight-exception-spec-func.cpp
    R clang/test/Templight/templight-explicit-template-arg.cpp
    R clang/test/Templight/templight-memoization.cpp
    R clang/test/Templight/templight-nested-memoization.cpp
    R clang/test/Templight/templight-nested-template-instantiation.cpp
    R clang/test/Templight/templight-one-instantiation.cpp
    R clang/test/Templight/templight-prior-template-arg.cpp

  Log Message:
  -----------
  [clang] remove templight support (#210166)

Removed as unmaintained, per discussion in
https://discourse.llvm.org/t/rfc-removing-templight-support/90777


  Commit: 60846c8b0c1c47c03c25fe28ecaea00e698a3450
      https://github.com/llvm/llvm-project/commit/60846c8b0c1c47c03c25fe28ecaea00e698a3450
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c

  Log Message:
  -----------
  [RISCV][P-ext][NFC] Add cross-project tests for packed zip/unzip intrinsics (#209575)


  Commit: a55b011dabf8e5761d9955f98aa1138a10bd1a8a
      https://github.com/llvm/llvm-project/commit/a55b011dabf8e5761d9955f98aa1138a10bd1a8a
  Author: Abhina Sree <Abhina.Sreeskantharajan at ibm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/test/CodeGen/SystemZ/systemz-module.flags.c

  Log Message:
  -----------
  [SystemZ/[z/OS] Guard source-epoch related testcase to 64-bit clang targets (#210341)

This patch guards the following testcase for 64-bit clang targets Clang :: CodeGen/SystemZ/systemz-module.flags.c


  Commit: d63bd842939f22fad4e29660d66b99a9bf94e4b4
      https://github.com/llvm/llvm-project/commit/d63bd842939f22fad4e29660d66b99a9bf94e4b4
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    A flang/test/Fir/create-box-codegen.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/invalid.fir

  Log Message:
  -----------
  [flang] Added fir.create_box operation. (#210220)

This patch adds `fir.create_box` operation that allows
creating `!fir.box<>` values with arbitrary byte strides.
It can be used to recreate boxes describing non-contiguous
arrays from descriptor components (base_addr/lbs/extents/strides)
across offload regions.

This is just initial definition and code generation code.
The folders and passes producing this operation will be added
later.


  Commit: fd55bbd6022ccb8d854f580b56c39177e80c256e
      https://github.com/llvm/llvm-project/commit/fd55bbd6022ccb8d854f580b56c39177e80c256e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M compiler-rt/test/profile/Linux/counter_promo_for.c
    M compiler-rt/test/profile/Linux/counter_promo_while.c

  Log Message:
  -----------
  [compiler-rt] Fix tests after #205331 (#210370)

New optimizations changed some compiler-rt tests. Update the test
expectations based on this.

Fixes #210355.


  Commit: 0b666f74f94fffc2bc3380365704bcb61f2767d2
      https://github.com/llvm/llvm-project/commit/0b666f74f94fffc2bc3380365704bcb61f2767d2
  Author: David Young <davidayoung at meta.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl

  Log Message:
  -----------
  Add missing BigArchive container plugin to lldb's bazel build (#210304)

Another missing plugin and its libraries in the LLDB bazel build. Based
this one on source/Plugins/ObjectContainer/Big-Archive/CMakeLists.txt
and its dependecies ( {}.cpp & {}.h)

waiting on CI to confirm bazel is correct as cannot build locally.

Can confirm this library will convert to BUCK internally at Meta and
build with buck2 where we do have in the default plugin list.

bazel rule assisted with: claude


  Commit: 53c048b3732610c8d2d65c1d41603de26eb6ac4e
      https://github.com/llvm/llvm-project/commit/53c048b3732610c8d2d65c1d41603de26eb6ac4e
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libcxx/utils/ci/images/libcxx_release_runners.txt

  Log Message:
  -----------
  [libc++] Update release runners to the image that was used on main at the branch point (#210378)

This will allow retaining a stable image for CI throughout the whole
LLVM 23 release.


  Commit: a67eac3e141e1044dd98524a010e719b42f51f5e
      https://github.com/llvm/llvm-project/commit/a67eac3e141e1044dd98524a010e719b42f51f5e
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [NFC][AMDGPU] Cleanup in SOPInstructions.td (#210367)

- Eliminate code which was accidentally merged during a merge-conflict
(https://github.com/llvm/llvm-project/pull/203155/changes#r3560059941)
- Remove comments as they are specific to usubsat.


  Commit: db1f902cd6a95c9b80136dfcbe8beb7a58290641
      https://github.com/llvm/llvm-project/commit/db1f902cd6a95c9b80136dfcbe8beb7a58290641
  Author: Mishal Shah <mishal_shah at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  Add macOS premerge check workflow (#207435)

Added a premerge check workflow for macOS self-hosted runners to build
and test projects.


  Commit: f04bf4791ae6d56b822f9bca6eb82ce4adccb989
      https://github.com/llvm/llvm-project/commit/f04bf4791ae6d56b822f9bca6eb82ce4adccb989
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/File/linux/file.cpp
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/sched/linux/CMakeLists.txt
    M libc/src/sched/linux/sched_getaffinity.cpp
    M libc/src/spawn/linux/CMakeLists.txt
    M libc/src/spawn/linux/posix_spawn.cpp
    M libc/src/stdio/linux/CMakeLists.txt
    M libc/src/stdio/linux/remove.cpp
    M libc/src/sys/ipc/linux/CMakeLists.txt
    M libc/src/sys/ipc/linux/ftok.cpp
    R libc/src/sys/ipc/linux/kernel_statx.h
    M libc/src/sys/mman/linux/CMakeLists.txt
    M libc/src/sys/mman/linux/shm_unlink.cpp
    M libc/src/sys/time/linux/CMakeLists.txt
    M libc/src/sys/time/linux/utimes.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    M libc/startup/linux/x86_64/tls.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][NFC] Port raw syscall users to existing syscall_wrappers (#208039)

Several call sites still invoked syscall_impl directly (or carried
their own SYS_* fallback ladders) for syscalls that already have a
wrapper in src/__support/OSUtil/linux/syscall_wrappers.

This PR removes these syscalls in favor of the syscall_wrappers.


  Commit: 246c752ef1b6098a7aa222f02ca09db76e17cabe
      https://github.com/llvm/llvm-project/commit/246c752ef1b6098a7aa222f02ca09db76e17cabe
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel

  Log Message:
  -----------
  [bazel][libc] Add layering deps (#210380)

Not sure why CI didn't catch it, but
c5837b469c6d6f35eb0822cd9ebd7c2aa7e2ab75 adds some targets that are
broken when layering checks are enabled.


  Commit: c42ce32264f94a8800f4250d7b716cca55f77df6
      https://github.com/llvm/llvm-project/commit/c42ce32264f94a8800f4250d7b716cca55f77df6
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A compiler-rt/docs/ASanABI.md
    R compiler-rt/docs/ASanABI.rst
    A compiler-rt/docs/BuildingCompilerRT.md
    R compiler-rt/docs/BuildingCompilerRT.rst
    A compiler-rt/docs/TestingGuide.md
    R compiler-rt/docs/TestingGuide.rst
    M flang/docs/CMakeLists.txt
    A flang/docs/CommandGuide/index.md
    R flang/docs/CommandGuide/index.rst
    A libsycl/docs/CodingGuidelines.md
    R libsycl/docs/CodingGuidelines.rst
    A libsycl/docs/index.md
    R libsycl/docs/index.rst
    M libsycl/test/README.md
    A libunwind/docs/BuildingLibunwind.md
    R libunwind/docs/BuildingLibunwind.rst
    M libunwind/docs/conf.py
    A libunwind/docs/index.md
    R libunwind/docs/index.rst
    M lldb/source/Plugins/TraceExporter/common/TraceHTR.h
    A lldb/source/Plugins/TraceExporter/docs/htr.md
    R lldb/source/Plugins/TraceExporter/docs/htr.rst
    A llvm-libgcc/docs/LLVMLibgcc.md
    R llvm-libgcc/docs/LLVMLibgcc.rst
    M llvm-libgcc/generate_version_script.py
    M offload/docs/conf.py
    A offload/docs/index.md
    R offload/docs/index.rst

  Log Message:
  -----------
  [docs] Rename misc rst docs to md (#210208)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit.

Many of these miscellaneous .rst files are not actually part of a real
docs build, since docs/conf.py does not exist for many of them.


  Commit: 9b096bb7abf7b57182ae8556451aa34dacd535ec
      https://github.com/llvm/llvm-project/commit/9b096bb7abf7b57182ae8556451aa34dacd535ec
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/bindings/interfaces.swig
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    A lldb/include/lldb/API/SBProtocolServer.h
    M lldb/source/API/CMakeLists.txt
    A lldb/source/API/SBProtocolServer.cpp
    M lldb/unittests/API/CMakeLists.txt
    A lldb/unittests/API/SBProtocolServerTest.cpp

  Log Message:
  -----------
  [lldb] Add SBProtocolServer to start protocol servers programmatically (#209923)

Starting a protocol server (such as MCP, and in the future potentially
DAP) is only possible from the command line today, via `protocol-server
start`. Add an SB API so an embedder can start one in its own process
and learn where to connect.

SBProtocolServer wraps ProtocolServer::GetOrCreate/Start/Stop and
exposes the listening connection URI. This lets a tool host the engine's
protocol server in-process and talk to it as a normal client, reusing
the server's tools rather than reimplementing them.

Assisted-by: Claude


  Commit: 2b6e9d261433f5ec8c49502f91d63dd7d07346c3
      https://github.com/llvm/llvm-project/commit/2b6e9d261433f5ec8c49502f91d63dd7d07346c3
  Author: Artem Belevich <tra at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/atomicrmw-allow-ftz-atomics.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw.py
    M llvm/test/CodeGen/NVPTX/atomics.ll

  Log Message:
  -----------
  [NVPTX] Set default value of nvptx-allow-ftz-atomics to true (#206154)

This is a follow-up to https://github.com/llvm/llvm-project/pull/200732.

Setting the default value of nvptx-allow-ftz-atomics to true preserves
the status quo. It allows the NVPTX backend to emit native
floating-point atomic add instructions by default, rather than falling
back to the CAS loop required for strict FTZ compliance.

Correct FTZ handling forces a lot of existing code to emit CAS loops.
This introduces thread divergence, breaking code that relies on atomic
operations being non-divergent (for example, warp-wide atomic additions
followed by a load of the reduced value without explicit
synchronization).

While FTZ-correct atomic behavior is desirable as a long-term default,
introducing thread divergence into a common operation that previously
"happened to work" without synchronization is highly disruptive.
Defaulting to true makes the FTZ-correct behavior opt-in for now,
allowing users time to audit and adapt their code.

Test cases are updated to verify both enabled and disabled states of the
option, alongside the new default behavior.


  Commit: 50c8f07e3eebf1ff5a1d9378d77aef5df9583293
      https://github.com/llvm/llvm-project/commit/50c8f07e3eebf1ff5a1d9378d77aef5df9583293
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    A clang/test/Analysis/std-c-library-functions-non-integral-ssize_t.cpp

  Log Message:
  -----------
  [clang][analyzer] Fix assertion failure in StdLibraryFunctionsChecker with non-integral ssize_t (#209655)

In StdLibraryFunctionsCheckers' `RangeConstraint::checkSpecificValidity`
asserted that the constrained argument type is integral. When user code
typedefs `ssize_t` to a non-integral type (e.g. `float`) even though
this violates POSIX.1-2017, which requires `ssize_t` to be a signed
integer type, the signature still matches (same canonical type) and the
assertion fires during constraint validation. Remove it and let
`validateByConstraints` gracefully reject the summary by returning
false.

Fixes #209436


  Commit: 40c4fea67f49b841bd064624219efceab91b65e0
      https://github.com/llvm/llvm-project/commit/40c4fea67f49b841bd064624219efceab91b65e0
  Author: Krisitan Erik Olsen <kristian.erik at outlook.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/SSAUpdater.cpp
    A llvm/test/Transforms/SROA/sroa-self-referential-load.ll

  Log Message:
  -----------
  [SROA] Fix assertion failure when promoting self-referential load/store (#208826)

When LoadAndStorePromoter::run processes a block where a store's value
operand is defined by the load being promoted (a self-referential cycle
in unreachable code), it sets StoredValue to the load instruction. When
it then calls replaceAllUsesWith, the doRAUW assertion fires because the
replacement value contains the value being replaced.

The single-block promotion paths in promoteSingleBlockAlloca already
guard against this with a check for ReplVal == LI, replacing with poison
instead. This patch adds the same guard to the in-block load path in
LoadAndStorePromoter::run, which was missing it. Substituting poison is
correct here since this situation only arises in unreachable code.

The regression was introduced in #135609, which added the
propagateStoredValuesToLoads path in SROA that routes through
LoadAndStorePromoter::run. LoadStoreRewriter handles aggregates and is
unrelated to this path.

Fixes #204799


  Commit: 714d124d0aaf3effa3e83d01783fe0ed2cd3eea9
      https://github.com/llvm/llvm-project/commit/714d124d0aaf3effa3e83d01783fe0ed2cd3eea9
  Author: Hongyu Chen <xxs_chy at outlook.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M cross-project-tests/intrinsic-header-tests/riscv_packed_simd.c

  Log Message:
  -----------
  Revert "[RISCV][P-ext][NFC] Add cross-project tests for packed zip/unzip intrinsics" (#210401)

Reverts llvm/llvm-project#209575


  Commit: 93b1240309309d5c2f8f94527ff7c7bd5df359af
      https://github.com/llvm/llvm-project/commit/93b1240309309d5c2f8f94527ff7c7bd5df359af
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M compiler-rt/docs/ASanABI.md
    M compiler-rt/docs/BuildingCompilerRT.md
    M compiler-rt/docs/TestingGuide.md
    M flang/docs/CommandGuide/index.md
    M libsycl/docs/CodingGuidelines.md
    M libsycl/docs/index.md
    M libunwind/docs/BuildingLibunwind.md
    M libunwind/docs/index.md
    M lldb/source/Plugins/TraceExporter/docs/htr.md
    M llvm-libgcc/docs/LLVMLibgcc.md
    M offload/docs/conf.py
    M offload/docs/index.md

  Log Message:
  -----------
  [docs] Finish misc MyST migration (#210209)

Tracking issue: #201242
See the [migration guide] for more information.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is a stacked PR based on #210208, which is the standalone rename
commit for this miscellaneous Markdown migration batch.

This was prepared with rst2myst plus LLM-assisted cleanup. LLDB man
pages are intentionally left as reStructuredText because LLDB man-page
building should not take on Markdown parser dependencies.

Unfortunately, many of these miscellaneous docs do not have working
standalone doc build targets, so I was not able to render HTML for all
of them. I think the scope is small enough that this is reviewable by
hand.


  Commit: 91bb8f4ee8452d3e2bda7544556fa66dba462414
      https://github.com/llvm/llvm-project/commit/91bb8f4ee8452d3e2bda7544556fa66dba462414
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll

  Log Message:
  -----------
  [VPlan] Introduce vputils::doesGeneratePerAllLanes (#199047)

Introduce a query for recipes that produce scalar values for all VF
lanes, returning true for non-single-scalar replicates, non-first-lane
SIVSteps, and a couple of VPInstructions.


  Commit: 93bce300db95e4fbb82b1a6ef69fe125c71b77f3
      https://github.com/llvm/llvm-project/commit/93bce300db95e4fbb82b1a6ef69fe125c71b77f3
  Author: Ayokunle Amodu <ayokunle321 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip

  Log Message:
  -----------
  [CIR][AMDGPU] Add support for AMDGCN log builtins (#198032)

Adds codegen support for the following AMDGCN log builtins:

- __builtin_amdgcn_logf (float)
- __builtin_amdgcn_log_bf16 (bfloat16)

These are lowered to the corresponding `llvm.amdgcn.log` intrinsic.


  Commit: 3e55f3c56e8706fa12792b5a4de05f636bf798d0
      https://github.com/llvm/llvm-project/commit/3e55f3c56e8706fa12792b5a4de05f636bf798d0
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/test/UnitTest/HermeticTestUtils.cpp
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/stdlib/realpath_test.cpp

  Log Message:
  -----------
  [libc][realpath][test] Create test files/directories (#209369)

Follow-up PRs will add path validation etc to `realpath`, which will
require paths to exist in the filesystem.

This PR bumps the memory limit in `HermeticTestUtils.cpp`. The realpath
unit tests allocate quite a few strings, and since memory in hermetic
tests is never freed, the unit test quickly reaches the limit.


  Commit: 4070621c866fb4156f7c7d15039d12a4295f46c2
      https://github.com/llvm/llvm-project/commit/4070621c866fb4156f7c7d15039d12a4295f46c2
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-create-box.fir

  Log Message:
  -----------
  [flang][OpenACC] Discover type descriptors referenced by fir.create_box (#210393)

Register the IndirectGlobalAccess interface for fir.create_box so
acc-implicit-declare finds the derived-type type-descriptor global a
create_box of a record array needs on the device, as it already does
for fir.embox and fir.rebox.

Assisted-by: Cursor


  Commit: 5c719eeb715632b1afef6508bd6c5ac09369fc91
      https://github.com/llvm/llvm-project/commit/5c719eeb715632b1afef6508bd6c5ac09369fc91
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGen/builtins-x86.c
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c

  Log Message:
  -----------
  [CIR] Implement support for builtin FMA (#210365)

Implement support for the _builtin_fma


  Commit: 95cc83d45b1b8e4a560efb729bd7e1e16f0b8703
      https://github.com/llvm/llvm-project/commit/95cc83d45b1b8e4a560efb729bd7e1e16f0b8703
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A llvm/docs/AdminTasks.md
    R llvm/docs/AdminTasks.rst

  Log Message:
  -----------
  [docs] Rename AdminTasks to markdown to preserve history (#210415)

Tracking issue: #201242

Migrating this before I make changes to it. A follow-up PR will do the
migration.


  Commit: fb0547315ecf3f09fb6fc9122e40ff096a643eaa
      https://github.com/llvm/llvm-project/commit/fb0547315ecf3f09fb6fc9122e40ff096a643eaa
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/docs/AdminTasks.md

  Log Message:
  -----------
  [docs] Rewrite AdminTasks.md as markdown (#210416)

Tracking issue: #201242
This is a stacked PR based on #210415 , which does a rename for history
preservation purposes. See the [migration guide] for more information.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This was prepared with rst2myst.


  Commit: d982e0499b7f780279c435403b8249d7c3812cae
      https://github.com/llvm/llvm-project/commit/d982e0499b7f780279c435403b8249d7c3812cae
  Author: Diego Novillo <dnovillo at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl

  Log Message:
  -----------
  [HLSL] Enable frontend IR generation for SPIR-V in TypedBuffers-constructor.hlsl (#207421)

I found a stale `FIXME` marker while poking at SPIR-V resource lowering.

The test stated that SPIR-V codegen of
`llvm.spv.resource.handlefrombinding` and resource types was not
implemented. That codegen now exists in
`CommonSPIRTargetCodeGenInfo::getHLSLType`.

This change enables the test on SPIR-V and splits the tests to
distinguish DXIL and SPIRV expected IR patterns.


  Commit: 9bae0aab8098f99dff47578546eb5bd382f919d0
      https://github.com/llvm/llvm-project/commit/9bae0aab8098f99dff47578546eb5bd382f919d0
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
    M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
    M llvm/test/CodeGen/AMDGPU/sdiv.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll

  Log Message:
  -----------
  [AMDGPU] Remove unnecessary and broken sign/zero extension in fastdiv (#210348)

Remove unnecessary and broken sign/zero-extension when using float-point
reciprocal to implement division/remainder. This change is analogous to
the change done in https://github.com/llvm/llvm-project/pull/203436 but
in AMDGPUISelLowering.cpp.

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: dc3b1ed3ccd10995b26fa5278cb80c45419f9457
      https://github.com/llvm/llvm-project/commit/dc3b1ed3ccd10995b26fa5278cb80c45419f9457
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A llvm/test/TableGen/RuntimeLibcallEmitter-predicate-cc-sort.td
    M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp

  Log Message:
  -----------
  TableGen: Deterministically order predicate groups by calling convention (#210409)


  Commit: 6ff0ebea015e3ed984dfff941e7d8a48e4810784
      https://github.com/llvm/llvm-project/commit/6ff0ebea015e3ed984dfff941e7d8a48e4810784
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Diagnostics.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Diagnostics.cpp
    A lldb/test/Shell/Diagnostics/TestDiagnosticsCollectBinaries.test

  Log Message:
  -----------
  [lldb] Collect the executable, symbol file, and core in diagnostics (#210391)

The diagnostics bundle already gathers logs, statistics, and a snapshot
of the first triage commands, but sometimes the binaries are required to
reproduce an issue. Collect the main executable, its symbol file, and
the core file into the bundle.

Gate this on a new global setting, diagnostics.collect-binaries, which
defaults to false: these files can be large and privacy sensitive, so
including them is opt-in.

Assisted-by: Claude


  Commit: 977eced054d9de031423dee9493addd4e1fd5eaf
      https://github.com/llvm/llvm-project/commit/977eced054d9de031423dee9493addd4e1fd5eaf
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/source/Expression/IRInterpreter.cpp

  Log Message:
  -----------
  [lldb] Truncate an over-wide symbol address in the IR interpreter (#210372)

IRInterpreter::ResolveConstantValue built a pointer-width APInt directly
from the address returned by FindSymbol. That address can be wider than
a target pointer, because lldb records extra information in the high
bits on some targets, such as the code/memory address-space tag on
WebAssembly.

A 32-bit pointer then cannot hold the tagged address and the APInt
constructor asserts, aborting the debugger when a function-valued
expression is evaluated (for example `expr main`).

Truncate to the pointer width instead of asserting, matching the idiom
already used in DWARFExpression. On targets whose addresses fit in a
pointer this is a no-op.


  Commit: 4e0dbfe489dcc0b057303047608cd2a909602a14
      https://github.com/llvm/llvm-project/commit/4e0dbfe489dcc0b057303047608cd2a909602a14
  Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll

  Log Message:
  -----------
  [SCEV][NFC] Precommit test for MatchRangeCheckIdiom tightening (#210386)


  Commit: 0e3852f73ab75639b76bad2c8a735d46241768f3
      https://github.com/llvm/llvm-project/commit/0e3852f73ab75639b76bad2c8a735d46241768f3
  Author: Patryk Stefanski <patryk.stefanski at protonmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Parser/cxx1z-decomposition.cpp

  Log Message:
  -----------
  [clang][sema] Fix crash on decomposition decl missing initializer (#210151)

ActOnUninitializedDecl dereferenced the std::optional<Token> from
Lexer::findNextToken() unconditionally when diagnosing a structured
binding with no initializer. Guard the optional and fall back to the
declaration's location.


  Commit: 82134c708f7ec224d86e2096d9b53c76640a490f
      https://github.com/llvm/llvm-project/commit/82134c708f7ec224d86e2096d9b53c76640a490f
  Author: Akshay K <iit.akshay at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/test/CIR/CodeGen/ternary-throw.cpp

  Log Message:
  -----------
  [CIR] Terminate conditional regions after creation; fix glvalue conditional with a throw arm (#210384)

Follow-up to #208850: @andykaylor's comments about
`CIRGenFunction::emitConditionalBlocks` also have a similar
insertion-point problem.

The PR addresses the two related problems found while looking into the
conditional branch emission path:

**1. Terminate conditional regions after creation instead of patching
yields**
`CIRGenFunction::emitConditionalBlocks` still had the save-and-patch
insertion-point machinery removed from the scalar path in #208850. The
path is unreachable, and its guard is saved only after
`cir.unreachable`, where a patched yield would generate the dead code.
The machinery is removed; regions are closed with
`terminateStructuredRegionBody` after creation.

The aggregate emitter had the reverse problem: an unconditional
cir.yield after each arm lands in the dead block a throw leaves behind
and keeps it in the final CIR:

```
struct test_s { int x; int y; };
void test_throw(bool flag) {
  test_s a = flag ? throw 0 : test_s{1, 2};
}
mlir
cir.if %2 {
  ...
  cir.throw %3 : !cir.ptr<!s32i>, @_ZTIi
  cir.unreachable
^bb1:  // no predecessors      <-- dead block kept alive by the yield
  cir.yield
} else {
  ...
}
```
The explicit yields are removed; `emitIfOnBoolExpr` already terminates
each region, adding a yield only where one is missing. Tests pin the
dead block's absence with CIR-NEXT after `cir.unreachable`.

**2. Fix glvalue conditionals with a throw arm using a region-local
pointer**

```
int &ref_cond(bool c, int &x) { return c ? x : throw 0; }
// error: operand #0 does not dominate this use
// fatal error: CIR module verification error
```
With one arm throwing, `emitConditionalOperatorLValue` returned the
surviving arm's LValue directly, valid in OG CodeGen's flat CFG, invalid
in CIR where the pointer is materialized inside the ternary's region:

```
%4 = cir.ternary(%3, true {
  %8 = cir.load %1 ...          // pointer loaded inside the region
  cir.yield %8 : !cir.ptr<!s32i>
}, false { ... cir.unreachable })
cir.store %8, %2 ...            // region-local %8 used outside the region
```

Existing tests missed it because a local's pointer is a function-entry
`alloca`, so dominance held by accident. The fix addresses the result
through the ternary's result value, which the yield carries out. New
tests cover a reference parameter, assignment via the conditional, and
member access, all of which previously failed verification.

Assisted-by: Cursor/Codex


  Commit: ea863cb2dec8e0f040dfe22a52d3b537e4a25c29
      https://github.com/llvm/llvm-project/commit/ea863cb2dec8e0f040dfe22a52d3b537e4a25c29
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/X86/dagcombine-sub-globaladdress.ll

  Log Message:
  -----------
  [DAGCombiner] Fix APInt truncation assertion (#209914)

getConstant() would create an APInt with ImplicitTrunc = false, but the
constant here can really be anything.

Fixes #209884.


  Commit: 1e37b629fbd06d922ac1216cf20114ea4ce1c88d
      https://github.com/llvm/llvm-project/commit/1e37b629fbd06d922ac1216cf20114ea4ce1c88d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libcxx/utils/libcxx/test/format.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/formats/shtest.py

  Log Message:
  -----------
  [lit] Delete the external shell (#209571)

This was deprecated in LLVM 23 and slated for removal in LLVM 24. Now
that we have branched and everything has been updated to not set
execute_external, we can remove it.


  Commit: 466503dcf2ae2e43126c1a6d8a5b204883d5b0c1
      https://github.com/llvm/llvm-project/commit/466503dcf2ae2e43126c1a6d8a5b204883d5b0c1
  Author: Logan <143111092+Logans-olo at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrTBM.td
    M llvm/test/CodeGen/X86/tbm_patterns.ll

  Log Message:
  -----------
  X86: Add pattern for optimized BLSIC IR form (#209814)

Add DAG pattern to recognize the optimized IR form of BLSIC: (xor (and
x, -x), -1)

Fixes #209718 - matches the IR form produced after InstCombine
optimizations

Added tests for both 32-bit and 64-bit BLSIC patterns

Assisted by: Claude Code, helped me understand
pattern-matching/intrinsics, and some file structure. As well as how
testing for LLVM works.


  Commit: f97dcd05eb4be690dcfd39de9f6de937d5acfa46
      https://github.com/llvm/llvm-project/commit/f97dcd05eb4be690dcfd39de9f6de937d5acfa46
  Author: stephenduong1004 <stephenduong at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp

  Log Message:
  -----------
  [llvm-libtool-darwin] Ensure filelist buffer is null-terminated (#205115)

[llvm-libtool-darwin] Ensure filelist buffer is null-terminated

In llvm-libtool-darwin.cpp, `MemoryBuffer::getFileOrSTDIN` was
previously called to load the filelist with `RequiresNullTerminator` set
to `false`. However, the retrieved buffer is subsequently passed to
`llvm::line_iterator`.

Since `llvm::line_iterator` explicitly requires its underlying buffer to
be null-terminated, omitting this requirement can result in an
out-of-bounds read/buffer overrun when parsing the file list.

This change fixes the issue by requesting a null-terminated buffer
(`RequiresNullTerminator=true`).

Co-authored-by: Alexander Shaposhnikov <ashaposhnikov at google.com>


  Commit: 986cdd8618e3e105bde1d52e7d8888325a7c87b1
      https://github.com/llvm/llvm-project/commit/986cdd8618e3e105bde1d52e7d8888325a7c87b1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    A llvm/lib/Transforms/Vectorize/VPlanEVLTailFolding.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h

  Log Message:
  -----------
  [VPlan] Move EVL-based transforms to VPlanEVLTransforms.cpp (NFC) (#209883)

VPlanTransforms.cpp has become quite big and is one of the top 20 most
expensive files in terms of compile-time.


https://llvm-compile-time-tracker.com/compare_clang.php?from=b8ba3c2b72cb53268129bbecfeb4ba7ec5b8d831&to=96a722a0ace661626d071166635728def97f6820&stat=instructions%3Au

Split off the mostly self-contained EVL related transforms and move them
to a new VPlanEVLTransforms.cpp.

This moves simplifyKnownEVL, optimizeEVLMasks, addExplicitVectorLength,
convertToVariableLengthStep and convertEVLExitCond together with their
EVL-specific static helpers.

Shared helpers used by the moved code (isDeadRecipe,
collectUsersRecursively, recursivelyDeleteDeadRecipes,
getOpcodeOrIntrinsicID and tryToFoldLiveIns, pullOutPermutations) are
promoted to vputils.

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


  Commit: a12cbbcc94a80f54714aaa253f8838fcc9ab4aae
      https://github.com/llvm/llvm-project/commit/a12cbbcc94a80f54714aaa253f8838fcc9ab4aae
  Author: Jan Korous <jkorous at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
    M clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractor.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractorTest.cpp
    M clang/unittests/ScalableStaticAnalysis/CMakeLists.txt

  Log Message:
  -----------
  [SSAF] Add EntitySourceLocationExtractor (#210201)

Walks every entity-producing decl in the TU and emits
SourceLocationRecord(s) per entity-kind anchor:

* Identifier-bearing decls (FunctionDecl/VarDecl/FieldDecl/ RecordDecl):
Decl::getLocation().
* Synthetic function return-slot entity:
FD->getReturnTypeSourceRange().getBegin().
* ParmVarDecl (named or unnamed): P->getTypeSpecStartLoc().

Skips compiler-synthesized implicits and builtins via the getEntityName
gate, system-header decls via SourceManager, and silently drops records
whose location is invalid or whose file path cannot be canonicalized via
real_path.

Assisted-By: Claude Opus 4.7


  Commit: 284c1a166af4c7deab55c7de2ee1bd480d44e9ff
      https://github.com/llvm/llvm-project/commit/284c1a166af4c7deab55c7de2ee1bd480d44e9ff
  Author: David Mentler <mentlerd at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/docs/use/variable.md
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/include/lldb/ValueObject/ValueObjectSynthetic.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/source/ValueObject/ValueObjectSynthetic.cpp
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/Makefile
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/TestSBValueSetTypeSynthetic.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/library_support.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/main.cpp
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/Makefile
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/foo_bar_synths.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/main.cpp

  Log Message:
  -----------
  [LLDB] Enable SBTypeSynthetic manipulation for SBValue instances (#209056)

Allow manipulating the scripted synthetic children frontend selection
process for individual `SBValue` instances.

The motivating use-case is supporting custom data structures, type
erasure systems, and facilitating debugging handle based C APIs. Below
is an example of such a use-case of an anonymized 3rd party C library:
```C
using ErrorCode = int;
using Handle = void*;

using FooHandle = Handle;
using BarHandle = Handle;

struct ArrayOfHandles {
  int size;
  Handle* data;
};

struct AllHandles {
  ArrayOfHandles foos; 
  ArrayOfHandles bars;
};

ErrorCode GetAllHandles(AllHandles* into);
```

The current LLDB feature-set allows attaching a synthetic children
provider to `AllHandles`, but the scripted frontend has no chance to
select an appropriate alternative frontend implementation class for
`foos` and `bars` based on type information it is aware of.


  Commit: 9eb2dc0930ac75494e71b16739c859fe338a3f0f
      https://github.com/llvm/llvm-project/commit/9eb2dc0930ac75494e71b16739c859fe338a3f0f
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libcxx/utils/libcxx/test/format.py
    M llvm/utils/lit/lit/TestRunner.py
    M llvm/utils/lit/lit/formats/shtest.py

  Log Message:
  -----------
  Revert "[lit] Delete the external shell" (#210433)

Reverts llvm/llvm-project#209571

Breaks some buildbots:
1.
https://lab.llvm.org/buildbot/#/builders/232/builds/3690/steps/11/logs/stdio
2. https://lab.llvm.org/buildbot/#/builders/222/builds/11180


  Commit: 965fa410dad7294cc1c1a9632ff94558de6dfa40
      https://github.com/llvm/llvm-project/commit/965fa410dad7294cc1c1a9632ff94558de6dfa40
  Author: Sharjeel Khan <sharjeelkhan at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
    A llvm/test/MC/AArch64/LFI/debug-info.s

  Log Message:
  -----------
  [LFI][AArch64] Fix Segfault due to infinite recursion in LFI rewriter (#210267)

When emitting a deferred LR guard, if debug info is enabled, the
emission of the guard instruction can trigger temporary labels (e.g. for
DWARF line entries), which recursively calls onLabel. Since
DeferredLRGuard was only set to false after emission, the nested call
would re-emit the guard, causing infinite recursion which leads to a
SegFault due to stack overflow. This was detected compiling
ubsan_minimal_handlers.cpp in compiler-rt. I fixed it by using the
existing recursion guard (Guard).


  Commit: 2120490a54645f9a4390605adec5509243641d29
      https://github.com/llvm/llvm-project/commit/2120490a54645f9a4390605adec5509243641d29
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/Diagnostics.h
    M lldb/source/Core/Diagnostics.cpp
    M lldb/unittests/Core/CMakeLists.txt
    A lldb/unittests/Core/DiagnosticsTest.cpp

  Log Message:
  -----------
  [lldb] Add an artifact provider mechanism to Diagnostics (#210417)

Add a hook that lets a subsystem contribute a file to the diagnostics
bundle, without breaking layering and making Core depend on it. A plugin
registers an ArtifactProvider callback and a file name via AddArtifactProvider.
Providers run when a bundle is collected, and each one that yields
content is written into the bundle and recorded in the report's
attachments.

This restores, in a simpler form, the collection point that the removed
Diagnostics callback mechanism offered. The motivating consumer is the
downstream Swift health check, which registers a provider to write its
"swift-healthcheck.log" into the bundle. Unlike the old callback, a
provider does not open or write its own file: it just returns the
contents as a string and Diagnostics handles the rest.


  Commit: d592aa5a10f44164cd403257270802eb2a4b123a
      https://github.com/llvm/llvm-project/commit/d592aa5a10f44164cd403257270802eb2a4b123a
  Author: Tony Guillot <tony.guillot at protonmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/Parse/ParseDecl.cpp
    A clang/test/CXX/dcl/dcl.spec/dcl.type/dcl.type.general/p2.cpp

  Log Message:
  -----------
  [Clang] Fixed auto parsing regression with brace initialization (#210347)

The PR #208552 has introduced a regression where brace initialization
was not taken into account `auto foo{12}`. It was also breaking
`dcl.type.general` p2 rules, which is also now tested.


  Commit: 32221d9ff8f4772972193ebf7b8ba4974cd8458f
      https://github.com/llvm/llvm-project/commit/32221d9ff8f4772972193ebf7b8ba4974cd8458f
  Author: David Green <david.green at arm.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll

  Log Message:
  -----------
  [AArch64] Add lowering for fixed-vector bf16 masked gather/scatter. (#210273)

Similar to #208744, this makes sure that bf16 masked gather and scatter
work with fixed-length sve enabled. Without +bf16 the operations are
currently expanded pre-isel, but that will not be fixed in this patch as
it is a larger change and this patch is intended to be ported to the
branch.


  Commit: b4a444ad635af70fe32f58d46fe0c08221fbcf5a
      https://github.com/llvm/llvm-project/commit/b4a444ad635af70fe32f58d46fe0c08221fbcf5a
  Author: Jackson Stogel <jtstogel at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/src/stdlib/linux/CMakeLists.txt
    M libc/src/stdlib/linux/realpath.cpp
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/stdlib/realpath_test.cpp

  Log Message:
  -----------
  [libc][realpath] Support relative paths (#209374)

Updates realpath to call the `getcwd` linux syscall wrapper to resolve
cwd-relative queries.


  Commit: 35bf12351740521f86fd406d01165e1c90b32ed8
      https://github.com/llvm/llvm-project/commit/35bf12351740521f86fd406d01165e1c90b32ed8
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
    M mlir/test/Dialect/OpenACC/ops-cg.mlir

  Log Message:
  -----------
  [mlir][acc] Preserve section bounds on acc.reduction_init (#210443)

When `acc.reduction_init` is created from `acc.reduction`, its bounds
are lost because they only live as values folded into the init region's
body. Those bounds describe the legal indexing of the section: the
produced view of a (possibly base-adjusted, compact) reduction temporary
must be indexed with the same bounds as the original array.

Carry the acc.bounds as optional operands on acc.reduction_init so this
indexing information is directly available. The operands are optional,
so scalar/whole-array reductions and existing IR are unaffected.


  Commit: 2b68eb4d70072d4e0084c0b4113bbd209c600088
      https://github.com/llvm/llvm-project/commit/2b68eb4d70072d4e0084c0b4113bbd209c600088
  Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [SCEV][NFCI] Refactor LoopGuards range check matching (#210362)

Parameterize MatchRangeCheckIdiom over (Predicate, LHS, RHS) so it can
be reused for other predicates discovered during guard collection.

Hoist AddRewrite / GetMaybeRewritten above it and use them in place of
the inline try_emplace, so range-check rewrites chain onto existing ones
the same way other rewrites do.


  Commit: 2dbcd7d10f9462bdc30a169730919fc7da321905
      https://github.com/llvm/llvm-project/commit/2dbcd7d10f9462bdc30a169730919fc7da321905
  Author: adams381 <adams at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
    M clang/lib/CIR/Dialect/Transforms/PassDetail.h
    A clang/test/CIR/Transforms/abi-lowering/x86_64-lang-addrspace-nyi.cir
    A clang/test/CIR/Transforms/abi-lowering/x86_64-scalars.cir
    M clang/unittests/CIR/CMakeLists.txt
    A clang/unittests/CIR/GetFloatingPointTypeTest.cpp

  Log Message:
  -----------
  [CIR] Add x86_64 scalar calling-convention lowering (#209636)

CallConvLowering can already classify a function through the MLIR test
target or through a classification injected as an attribute, but it has
no
path to a real target ABI. This adds a `target=x86_64` mode that runs
the
LLVM ABI Lowering Library's System V x86_64 classifier: it maps CIR
types to
`llvm::abi` types, calls the classifier, and converts the result back
into
the `mlir::abi::FunctionClassification` that `CIRABIRewriteContext`
already
consumes.

To keep the first step small this handles scalar signatures only --
integer
up to 64 bits, pointer, bool, `f32`, and `f64`.  Anything else (records,
arrays, vectors, `_Complex`, wide or uncommon floats, `_BitInt`,
`__int128`,
member pointers) is reported as not-yet-implemented through
`emitOpError`, so
an unsupported signature fails the pass instead of being silently
misclassified. Those types come in stacked follow-ups. The pass is still
only reachable from `cir-opt`; wiring it into the `-fclangir` pipeline
is a
later change.

Assisted-by: Cursor / claude-opus-4.8


  Commit: 12e3d9db0088d95675a0081495122483faa7b60d
      https://github.com/llvm/llvm-project/commit/12e3d9db0088d95675a0081495122483faa7b60d
  Author: Akshay K <iit.akshay at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/test/CIR/CodeGen/var_arg.c

  Log Message:
  -----------
  [CIR] Add support for lowering __builtin_c23_va_start in ClangIR (#208741)

C23 `va_start `expands to `__builtin_c23_va_start`, which was previously
routed to the unimplemented-builtin NYI path in ClangIR. As a result,
variadic code failed to compile with -fclangir in -std=c23 mode.

This change lowers `__builtin_c23_va_start` the same way as
`__builtin_va_start`. For both builtins, the va_list operand is always
argument 0, so the existing lowering logic can be reused directly.


  Commit: fefdf74c073b0361fb9a5100f6b1f38a13d72e55
      https://github.com/llvm/llvm-project/commit/fefdf74c073b0361fb9a5100f6b1f38a13d72e55
  Author: lianjinfeng2003 <101249452+mygitljf at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    A llvm/test/CodeGen/RISCV/rvv/vecreduce-minmax-constant-fold.ll

  Log Message:
  -----------
  [SelectionDAG] Fold constant min/max vector reductions (#209190)

I extended constant folding to handle signed and unsigned min/max vector
reductions. Constant vectors now become scalar constants before target
lowering, while non-constant, poison, and undef behavior stays
unchanged.
Fixes #209109


  Commit: 2926d18a0620a768857dce1c827d0a3da0d0b565
      https://github.com/llvm/llvm-project/commit/2926d18a0620a768857dce1c827d0a3da0d0b565
  Author: Pengxiang Huang <71998072+Pengxiang-Huang at users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M libc/src/semaphore/linux/CMakeLists.txt
    M libc/src/semaphore/linux/named_semaphore.cpp
    M libc/src/semaphore/linux/semaphore.h
    M libc/test/src/semaphore/linux/CMakeLists.txt
    M libc/test/src/semaphore/linux/semaphore_test.cpp

  Log Message:
  -----------
  [libc][semaphore] Add post and wait operations for internal semaphore (#198959)

This pr implements https://github.com/llvm/llvm-project/issues/190847,
adding the post and wait operations in posix semaphore for linux using
futex.

Particularly, 
`sem_post`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_post.html
`sem_trywait`, `sem_wait`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_wait.html
`sem_timedwait`, `sem_clockwait`:
https://pubs.opengroup.org/onlinepubs/9799919799/functions/sem_clockwait.html#

The implementation is assisted by Claude Code Opus 4.7, specifically for
the unit tests generations.


  Commit: c1c278e7484038f1d14314f38736532975fafd20
      https://github.com/llvm/llvm-project/commit/c1c278e7484038f1d14314f38736532975fafd20
  Author: Jan Korous <jkorous at apple.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.rst
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Frontend/SSAFOptions.h
    M clang/include/clang/Options/Options.td
    A clang/include/clang/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
    M clang/test/Analysis/Scalable/help.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/empty-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/two-function-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/TestTransformation.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/lit.local.cfg
    A clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/coexistence.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/happy-path.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/write-failure.cpp
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [clang][ssaf] Integrate source-edit-generation (#208590)

Adds the four `--ssaf-*` driver flags
(`--ssaf-source-transformation=`,
`--ssaf-global-scope-analysis-result=`, `--ssaf-src-edit-file=`,
`--ssaf-transformation-report-file=`) under `SSAF_Group`, marshalled
into `FrontendOptions`. The compilation-unit identifier flag introduced
earlier is reused. The driver forwards all four flags to `cc1`.

Adds twelve `warn_ssaf_*` diagnostics under
`-Wscalable-static-analysis-framework` (`DefaultError`) covering the
orphan-flag matrix, unknown transformation names, unknown output
formats, WPA-suite read failures, and edit/report write failures.

Adds `clang::ssaf::SourceTransformationFrontendAction` — a
`WrapperFrontendAction` that, when any source-edit flag is set,
validates the CLI as a group, loads the WPASuite from the configured
path, instantiates the named transformation, and serializes the
accumulated edits and findings through the configured formats. The
action is wrapped in `ExecuteCompilerInvocation` after the existing
TU-summary wrap so both pipelines stack as independent `ASTConsumer`s on
the same translation unit; they exchange no data.

Assisted-By: Claude Opus 4.7


  Commit: 372cd15f03e49bb826a63a6c59cc7f74962ab278
      https://github.com/llvm/llvm-project/commit/372cd15f03e49bb826a63a6c59cc7f74962ab278
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitDeclare.cpp
    M mlir/test/Dialect/OpenACC/acc-implicit-declare.mlir

  Log Message:
  -----------
  [openacc] Implicitly map external constant globals (#210408)

Hoist initializer-less constant globals out of OpenACC compute regions
so implicit data mapping handles them. This avoids unresolved device
symbols for PARAMETER arrays defined in separately compiled modules,
while retaining implicit declare for initialized constants. Add
regression coverage and a global initializer query to the OpenACC
interface.


  Commit: 3fbb037d03e7ff1ef1cd9156363e895af7caaf98
      https://github.com/llvm/llvm-project/commit/3fbb037d03e7ff1ef1cd9156363e895af7caaf98
  Author: Haowei <haowei at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/cmake/modules/ClangConfig.cmake.in
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M llvm/cmake/modules/LLVMConfig.cmake.in
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  Adding an option to Skip LLVM and Clang exports (#209922)

Under CMake 4+, calling add_library(... SHARED IMPORTED) on a
target platform that lacks dynamic linking support triggers a fatal
error. This becomes an issue when building LLVM and runtimes for
baremetal targets like armv6m-none-eabi. This patch
adds the option "LLVM_OMIT_EXPORTS_FROM_CONFIG" in LLVM.
When used in sub builds like LLVM runtimes, it makes CMake to skip
including the LLVM and Clang exports. This mitigates the CMake 4
errors on baremetal runtimes.


  Commit: dbab04510ee89e5e9ed03cb6aff63fd218fb3042
      https://github.com/llvm/llvm-project/commit/dbab04510ee89e5e9ed03cb6aff63fd218fb3042
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    A llvm/test/Transforms/TailCallElim/disable-tail-call-elim-for-cold-calls.ll

  Log Message:
  -----------
  [TailCallElim] Optionally suppress tail call elim for cold calls (#209642)

Since eliminated tail calls result in missing frames when collecting
various types of profiles, provide an option for disabling the
elimination for cold non-musttail calls. By default the new handling is
disabled.

Since the new checks require BFI to be built in more cases, I have moved
UpdateFunctionEntryCount and ForceDisableBFI (renamed to
DisableEntryCountRecompute to match the flag and description), to
actually guard the function entry count update.


  Commit: c4962f5721a36e198234019b846d3788738f766a
      https://github.com/llvm/llvm-project/commit/c4962f5721a36e198234019b846d3788738f766a
  Author: Med Ismail Bennani <ismail at bennani.ma>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Interpreter/embedded_interpreter.py
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    A lldb/test/API/functionalities/scripting_extension_generate/Makefile
    A lldb/test/API/functionalities/scripting_extension_generate/TestScriptingExtensionGenerate.py
    A lldb/test/API/functionalities/scripting_extension_generate/main.c

  Log Message:
  -----------
  [lldb/script] Add scripting extension template generator (#209647)

This patch adds a `scripting extension generate <ExtensionType>...`
command that introspects a Python extension base class and emits a
skeleton subclass with `# TODO: Implement` stubs for its abstract
methods (or, with `-a`, every method), then opens the result in an
editor.

Generated imports use `from <module> import <class>`, and the generated
`__init__` forwards its arguments to `super().__init__(...)` since every
base class relies on its constructor to set up attributes
(`self.target`, `self.process`, ...) that inherited, non-overridden
methods depend on. When the host can't open an external editor (e.g.
non-macOS), the command reports that as a message rather than an error,
since the file is already written.

To catch regressions in the generator itself instead of just checking
that a file was produced, this patch adds
`TestScriptingExtensionGenerate.py`, which generates a template for
every extension kind on the fly and drives it through a live lldb
session (`process launch -C`, `breakpoint set -P`, `target stop-hook add
-P`, etc.).

Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>


  Commit: ccd75bb4b9c6d9c2e149d355c35193ca554c99a0
      https://github.com/llvm/llvm-project/commit/ccd75bb4b9c6d9c2e149d355c35193ca554c99a0
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    A clang/test/CIR/IR/invalid-loop-cleanup.cir
    A clang/test/CIR/IR/loop-cleanup.cir
    M clang/unittests/CIR/ControlFlowTest.cpp

  Log Message:
  -----------
  [CIR] Introduce loop cleanup regions (#210212)

For loops and while loops can create variables in their condition
regions that require per-iteration cleanup. The CIR dialect previously
had no clean way to represent these cleanups while maintaining a
separate condition region for the loop operation.

This change introduces an optional cleanup region to these loop ops and
updates the relevant region successor handling to reflect the insertion
of the cleanup region in the control flow when a non-empty cleanup
region is present.

The CFG flattening pass will handle routing the control flow through the
cleanup region in both the normal and EH unwind cases, but this is not
yet implemented. That will be added in a follow-up change, as will
creation of the cleanup region when it is needed during IR generation.

Assisted-by: Cursor / various models


  Commit: ab6ef5680eb79e102414740198f5aa1015c5c254
      https://github.com/llvm/llvm-project/commit/ab6ef5680eb79e102414740198f5aa1015c5c254
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/unittests/Process/gdb-remote/CMakeLists.txt
    A lldb/unittests/Process/gdb-remote/ProcessGDBRemoteTest.cpp

  Log Message:
  -----------
  [lldb] Contribute the GDB-remote packet history to diagnostics bundles (#210418)

Register a Diagnostics artifact provider from ProcessGDBRemote so a
diagnostics bundle captures the GDB-remote packet history, the same data
"process plugin packet history" prints.


  Commit: 03b9039147cca65e2b4fa3adcbbbf40f73e3a3c9
      https://github.com/llvm/llvm-project/commit/03b9039147cca65e2b4fa3adcbbbf40f73e3a3c9
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/docs/AdminTasks.md

  Log Message:
  -----------
  [docs] Update the commit review admin task with process details (#210420)

As discussed in the infra area team meeting. Mostly this serves as a
place to stash helpful links.

I picked an arbitrary two week timeout for requests. We can re-evaluate at any time.
It seems less than ideal that one needs issue tracker labelling
privileges to reopen the issue, but I think that's accurate.


  Commit: 42eb7db188f23625872b6f1d722979a3100d170e
      https://github.com/llvm/llvm-project/commit/42eb7db188f23625872b6f1d722979a3100d170e
  Author: Haowei <haowei at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/cmake/modules/ClangConfig.cmake.in
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M llvm/cmake/modules/LLVMConfig.cmake.in
    M runtimes/CMakeLists.txt

  Log Message:
  -----------
  Revert "Skipping host target exports during cross-compilation" (#210468)

Reverts llvm/llvm-project#209922
It broke runtimes build on amdgpu-amd-amdhsa


  Commit: d00710093a3d2795200dbf065836220345aa9e9d
      https://github.com/llvm/llvm-project/commit/d00710093a3d2795200dbf065836220345aa9e9d
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py

  Log Message:
  -----------
  [lldb-dap][test] Avoid a hang on a test failure (#209988)

Tests in `TestDAP_server.py` create `DebugAdapterServer`, passing a
connection string. `DebugAdapterServer.__init__()` creates a socket and
passes the associated input and output streams to its parent class,
`DebugCommunication`. `DAPTestCaseBase.launch()`, which is called from
`TestDAP_server.run_debug_session()`, adds a teardown hook that
eventually calls `DebugCommunication.terminate()`. If the socket is not
closed when this hook executes, it waits indefinitely for the receiving
thread to join.

In the normal case, when a test passes, the connection is closed by
calling `self.dap_server.request_disconnect()` at the end of
`TestDAP_server.run_debug_session()`. If a test fails, the cleanup hook
is called while the connection is still active, which results in a hang.
This can be reproduced by removing the call to `request_disconnect()` or
by changing the condition in the `assertEqual()` on the previous line.

The fix passes the opened socket to 'DebugCommunication' and closes the
socket explicitly in 'DebugCommunication.terminate()'.


  Commit: fb2fa0b0f0a8b061401f6cfa3c2fadd3fbfb3b35
      https://github.com/llvm/llvm-project/commit/fb2fa0b0f0a8b061401f6cfa3c2fadd3fbfb3b35
  Author: Lucas Ribeiro Lima <lucasribeirolima974 at gmail.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse-builtins.c

  Log Message:
  -----------
  [clang][clangIR]: X86 upstream avx psrldqi/pslldqi (#208025)

This PR upstreams the implementation and corresponding test suites for
X86 byte-shift intrinsics (pslldqi / psrldqi) spanning 128, 256, and
512-bit vector variants from the incubator.

I consolidated both left and right shifts into a single code path since
the underlying lane topology is identical, extracting the
direction-specific index arithmetic into clean variables at the top. Let
me know if you prefer this unified data-driven approach or if explicit
split functions for left/right shifts would be preferred for local
readability.

All integrated tests from the incubator have been upstreamed and are
currently passing.

Minimal compile case
```cpp
#include <emmintrin.h>
#include <iostream>

struct DataLayout {
  alignas(16) int values[4];
};

#define INDEX 1

int main(int argc, char **argv) {
  DataLayout data{8, 4, 2, 1};

  std::cout << "Value before: " << data.values[INDEX] << '\n';

  __m128i reg128i =
      _mm_load_si128(reinterpret_cast<__m128i const *>(data.values));
  __m128i reg_right_shift = _mm_bsrli_si128(reg128i, 4);
  __m128i reg_left_shift = _mm_bslli_si128(reg128i, 4);

  DataLayout result_right;
  _mm_store_si128(reinterpret_cast<__m128i *>(result_right.values),
                  reg_right_shift);

  DataLayout result_left;
  _mm_store_si128(reinterpret_cast<__m128i *>(result_left.values),
                  reg_left_shift);

  std::cout << "Value after left: " << result_left.values[INDEX] << '\n';
  std::cout << "Value after right: " << result_right.values[INDEX] << '\n';

  return 0;
}
```
Addresses #167752.


  Commit: b0440cb55a22e979e81934e0c031c9d46e71f9da
      https://github.com/llvm/llvm-project/commit/b0440cb55a22e979e81934e0c031c9d46e71f9da
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h

  Log Message:
  -----------
  [CycleInfo] Reference cycles by preorder index, not pointer. NFC (#210271)

The block-to-innermost-cycle map (BlockMap) and each cycle's parent link
hold a GenericCycle pointer. Store the cycle's preorder index instead,
so no raw cycle pointer remains in the stored representation: BlockMap
becomes a SmallVector<unsigned>, four bytes per block rather than eight,
and the parent link becomes ParentIndex.

The flat Cycles array does not exist during construction, so both hold
creation-order indices into the temporary forest until flatten()
resolves them to preorder indices.

Aided by Claude Opus 4.8


  Commit: ee5d6f537da4bc81b956b4813afbc0877f82b59d
      https://github.com/llvm/llvm-project/commit/ee5d6f537da4bc81b956b4813afbc0877f82b59d
  Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

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

  Log Message:
  -----------
  [Bazel] Fixes c1c278e (#210451)

This fixes c1c278e7484038f1d14314f38736532975fafd20.

Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=c1c278e7484038f1d14314f38736532975fafd20

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>


  Commit: 1ef8ba9a00e16423d711ddbf16c7a45fb7fd570b
      https://github.com/llvm/llvm-project/commit/1ef8ba9a00e16423d711ddbf16c7a45fb7fd570b
  Author: Luc Forget <github at alias.lforget.fr>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M mlir/lib/Target/Wasm/TranslateFromWasm.cpp

  Log Message:
  -----------
  [MLIR][WasmSSA] Instruction parser refactoring of WasmSSA importer (#195500)

Refactored WasmSSA importer mechanism to dispatch control flow to
relevant parser based on op code.
This is to prepare for instructions with multi-bytes opcodes (e.g.
vector instruction and some scalar instructions extensions) which will
be able to reuse the same mechanism.

It also replaces the bit tree to find the address by a jump table.

---------

Co-authored-by: Luc Forget <lforg37 at users.noreply.github.com>
Co-authored-by: Ferdinand Lemaire <ferdinand.lemaire at woven-planet.global>
Co-authored-by: Ferdinand Lemaire <flscminecraft at gmail.com>


  Commit: cf11eef1c9476c8778055d7963fdac34b6628582
      https://github.com/llvm/llvm-project/commit/cf11eef1c9476c8778055d7963fdac34b6628582
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    A llvm/docs/AArch64SME.md
    R llvm/docs/AArch64SME.rst
    A llvm/docs/AMDGPUAsyncOperations.md
    R llvm/docs/AMDGPUAsyncOperations.rst
    A llvm/docs/AMDGPUExecutionSynchronization.md
    R llvm/docs/AMDGPUExecutionSynchronization.rst
    A llvm/docs/AMDGPUMemoryModel.md
    R llvm/docs/AMDGPUMemoryModel.rst
    A llvm/docs/AddingConstrainedIntrinsics.md
    R llvm/docs/AddingConstrainedIntrinsics.rst
    A llvm/docs/BigEndianNEON.md
    R llvm/docs/BigEndianNEON.rst
    A llvm/docs/CompileCudaWithLLVM.md
    R llvm/docs/CompileCudaWithLLVM.rst
    A llvm/docs/DebuggingJITedCode.md
    R llvm/docs/DebuggingJITedCode.rst
    A llvm/docs/ExtendingLLVM.md
    R llvm/docs/ExtendingLLVM.rst
    A llvm/docs/HowToBuildWindowsItaniumPrograms.md
    R llvm/docs/HowToBuildWindowsItaniumPrograms.rst
    A llvm/docs/HowToCrossCompileBuiltinsOnArm.md
    R llvm/docs/HowToCrossCompileBuiltinsOnArm.rst
    A llvm/docs/HowToUpdateDebugInfo.md
    R llvm/docs/HowToUpdateDebugInfo.rst
    A llvm/docs/Instrumentor.md
    R llvm/docs/Instrumentor.rst
    A llvm/docs/JITLink.md
    R llvm/docs/JITLink.rst
    A llvm/docs/MCJITDesignAndImplementation.md
    R llvm/docs/MCJITDesignAndImplementation.rst
    A llvm/docs/NVPTXUsage.md
    R llvm/docs/NVPTXUsage.rst
    A llvm/docs/ORCv2.md
    R llvm/docs/ORCv2.rst
    A llvm/docs/Remarks.md
    R llvm/docs/Remarks.rst
    A llvm/docs/SPIRVUsage.md
    R llvm/docs/SPIRVUsage.rst

  Log Message:
  -----------
  [docs] Rename selected LLVM docs to Markdown (#208800)

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 is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.


  Commit: cddf2069ded94cb47048ad2a5f340d12c35f1651
      https://github.com/llvm/llvm-project/commit/cddf2069ded94cb47048ad2a5f340d12c35f1651
  Author: Reid Kleckner <rkleckner at nvidia.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/docs/AArch64SME.md
    M llvm/docs/AMDGPUAsyncOperations.md
    M llvm/docs/AMDGPUExecutionSynchronization.md
    M llvm/docs/AMDGPUMemoryModel.md
    M llvm/docs/AddingConstrainedIntrinsics.md
    M llvm/docs/BigEndianNEON.md
    M llvm/docs/CompileCudaWithLLVM.md
    M llvm/docs/DebuggingJITedCode.md
    M llvm/docs/ExtendingLLVM.md
    M llvm/docs/HowToBuildWindowsItaniumPrograms.md
    M llvm/docs/HowToCrossCompileBuiltinsOnArm.md
    M llvm/docs/HowToUpdateDebugInfo.md
    M llvm/docs/Instrumentor.md
    M llvm/docs/JITLink.md
    M llvm/docs/MCJITDesignAndImplementation.md
    M llvm/docs/NVPTXUsage.md
    M llvm/docs/ORCv2.md
    M llvm/docs/Remarks.md
    M llvm/docs/SPIRVUsage.md

  Log Message:
  -----------
  [docs] Rewrite 19 LLVM docs from reST to markdown (#208798)

Tracking issue: #201242
[Migration
guide](https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines)

This is a stacked PR based on #208800, which does the file rename to
preserve history.

This was prepared with rst2myst plus LLM-assisted cleanup. I paged
through all the generated HTML looking for migration artifacts, and all
of the differences I could find appear to be formatting error
corrections.


  Commit: a623e8d4381e26eceff29209e6db411617d95f83
      https://github.com/llvm/llvm-project/commit/a623e8d4381e26eceff29209e6db411617d95f83
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 2dbcd7d10f94 (#210484)


  Commit: 605b6d73214cf253fc5fb9d5befe99857bd480cf
      https://github.com/llvm/llvm-project/commit/605b6d73214cf253fc5fb9d5befe99857bd480cf
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 986cdd8618e3 (#210485)


  Commit: 56fc7bf0c364ab210c49c3b95e7130d337490b78
      https://github.com/llvm/llvm-project/commit/56fc7bf0c364ab210c49c3b95e7130d337490b78
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Frontend/BUILD.gn

  Log Message:
  -----------
  [gn build] Port c1c278e74840 (#210488)


  Commit: 2e1c934fea272654ab2b00f60b6d3dba93123190
      https://github.com/llvm/llvm-project/commit/2e1c934fea272654ab2b00f60b6d3dba93123190
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn

  Log Message:
  -----------
  [gn build] Port a12cbbcc94a8 (#210487)


  Commit: 3be5663001465e74c7b879ad4d4cbfc3c94caeba
      https://github.com/llvm/llvm-project/commit/3be5663001465e74c7b879ad4d4cbfc3c94caeba
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 9b096bb7abf7 (#210486)


  Commit: 6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa
      https://github.com/llvm/llvm-project/commit/6a33b69d8bae737e5e1d60c7b7776a0b1f885bfa
  Author: Kazu Hirata <kazu at google.com>
  Date:   2026-07-17 (Fri, 17 Jul 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfReader.h
    M llvm/include/llvm/ProfileData/SampleProfWriter.h
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/ProfileData/SampleProfWriter.cpp
    M llvm/test/tools/llvm-profdata/profile-symbol-list.test
    M llvm/unittests/ProfileData/SampleProfTest.cpp

  Log Message:
  -----------
  [SampleProfile] Support MD5-based ProfileSymbolList (#210235)

This patch speeds up sample profile loading by introducing an
MD5-based ProfileSymbolList (cold symbol list) in extensible binary
profiles.

The sample profile loader spends about a third of its time on loading
and decoding the symbol names in the Profile Symbol List section, yet
we use them only for membership checking purposes via
ProfileSymbolList::contains.

This patch teaches the writer to emit the section as an array of
64-bit GUIDs in the Eytzinger layout.  The reader checks the
SecFlagMD5 section flag and sets up an EytzingerTableSpan
pointing into the mmap memory.  This achieves both space efficiency
and runtime efficiency.

The new flag, md5-prof-sym-list, is off by default for now.

Profile merging is supported only from strings to an MD5-based
Eytzinger array.

RFC:
https://discourse.llvm.org/t/rfc-faster-sample-profile-loading/90957/7

Assisted-by: Antitygravity


  Commit: ea50c8cc99778825fc647cf190d8f7a8f49cdcdd
      https://github.com/llvm/llvm-project/commit/ea50c8cc99778825fc647cf190d8f7a8f49cdcdd
  Author: Mishal Shah <mishal_shah at apple.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  Fix macOS casing in premerge workflow (#210477)


  Commit: 3fc4fcade6164fc6b9dcf0d6d0d6fa9cf6e47dfc
      https://github.com/llvm/llvm-project/commit/3fc4fcade6164fc6b9dcf0d6d0d6fa9cf6e47dfc
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Crash in printArgument (#210411)

The crash was caused by missing nullptr check for Decl used to get
printing policy. Fixed the bug by replacing the use of Decl with
BugManager to get the policy.


  Commit: 2730fc8a1a46ea92bbe91e3fc31897498617e076
      https://github.com/llvm/llvm-project/commit/2730fc8a1a46ea92bbe91e3fc31897498617e076
  Author: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bfloat16/bfloat16.ll

  Log Message:
  -----------
  [SPIR-V] Handle bfloat in getZeroFP/getOneFP (#202859)

Related spirv-val change:
https://github.com/KhronosGroup/SPIRV-Tools/pull/6734

---------

Co-authored-by: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>


  Commit: ccd0e982a02fa3be39a98dd98ea6cc1ccaf24d13
      https://github.com/llvm/llvm-project/commit/ccd0e982a02fa3be39a98dd98ea6cc1ccaf24d13
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    A lldb/test/API/lang/cpp/enum-limits/Makefile
    A lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
    A lldb/test/API/lang/cpp/enum-limits/main.cpp

  Log Message:
  -----------
  [lldb][NativePDB] Fix width and signedness of enum constants (#210338)

Enumerator values aren't always encoded in the correct bit width and
signedness. This happens with both MSVC and Clang.

On MSVC, unsigned 64bit enumerators can be encoded as signed. For
example `ULONGLONG_MAX` will be encoded as `-1`.
Clang/LLVM will always encode the values as unsigned.

Example: https://godbolt.org/z/96YjGW48W.

I fixed this by setting the expected width and signedness when creating
the enumerator constant. We can't use a shell test like for the other
PDB tests, because no output shows the enum values.


  Commit: 8c2d7cc3a9983459628c028d8537eaf79551f396
      https://github.com/llvm/llvm-project/commit/8c2d7cc3a9983459628c028d8537eaf79551f396
  Author: Jared Hoberock <jaredhoberock at gmail.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/SymbolInterfaces.td
    M mlir/include/mlir/IR/SymbolTable.h
    M mlir/lib/IR/SymbolTable.cpp
    A mlir/test/IR/test-verifiers-symbol-user-type.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][IR] Add SymbolUserTypeInterface (#198435)

This change adds SymbolUserTypeInterface, analogous to
SymbolUserAttrInterface, and extends SymbolTable verification to check
participating types.

Verification visits the types owned by an operation, (operand/result
types, block argument types, attribute-contained types, nested type
parameters) and checks each distinct type at most once, interrupting on
the first failure. Deduplication spans the whole symbol-table walk, so a
type used by multiple operations is checked only once.

Attribute (SymbolUserAttrInterface) verification also gets deduped the
same way.

Assisted-by: Codex (OpenAI)
Assisted-by: Claude (Anthropic)


  Commit: 4525be9eb6c0c9616ef6cd104b0e3fa6c5fe6435
      https://github.com/llvm/llvm-project/commit/4525be9eb6c0c9616ef6cd104b0e3fa6c5fe6435
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-07-18 (Sat, 18 Jul 2026)

  Changed paths:
    M .ci/compute_projects.py
    M .ci/compute_projects_test.py
    M .github/workflows/llvm-abi-tests.yml
    M .github/workflows/premerge.yaml
    M .github/workflows/release-binaries.yml
    M .github/workflows/validate-release-version/action.yml
    A bolt/docs/BOLTAArch64OptimizationStatus.md
    R bolt/docs/BOLTAArch64OptimizationStatus.rst
    A bolt/docs/GettingStarted.md
    R bolt/docs/GettingStarted.rst
    A bolt/docs/index.md
    R bolt/docs/index.rst
    M bolt/docs/profiles.md
    M bolt/include/bolt/Profile/DataReader.h
    M bolt/lib/Profile/DataReader.cpp
    A bolt/test/X86/profile-symbols-mode.s
    M clang-tools-extra/clangd/CMakeLists.txt
    A clang-tools-extra/clangd/LSPBinder.cpp
    M clang-tools-extra/clangd/LSPBinder.h
    M clang/docs/ReleaseNotes.md
    A clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.rst
    M clang/docs/UsersManual.md
    M clang/include/clang/AST/CommentLexer.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Basic/AtomicLineLogger.h
    M clang/include/clang/Basic/BuiltinsAMDGPU.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/DiagnosticSerializationKinds.td
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    A clang/include/clang/CIR/Dialect/IR/CIRStdOps.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/Interfaces/CIRLoopOpInterface.td
    M clang/include/clang/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/DependencyScanning/DependencyScanningWorker.h
    M clang/include/clang/DependencyScanning/InProcessModuleCache.h
    M clang/include/clang/ExtractAPI/DeclarationFragments.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Frontend/SSAFOptions.h
    M clang/include/clang/Options/Options.td
    M clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/StaticLibrary.h
    M clang/include/clang/ScalableStaticAnalysis/Core/EntityLinker/TUSummaryEncoding.h
    A clang/include/clang/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.h
    M clang/include/clang/Sema/Sema.h
    R clang/include/clang/Sema/TemplateInstCallback.h
    M clang/include/clang/Serialization/InMemoryModuleCache.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAMDGPU.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenClass.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CallConvLoweringPass.cpp
    M clang/lib/CIR/Dialect/Transforms/IdiomRecognizer.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    M clang/lib/CIR/Dialect/Transforms/PassDetail.h
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/DependencyScanning/InProcessModuleCache.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/riscv_packed_simd.h
    M clang/lib/Parse/ParseAST.cpp
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/ScalableStaticAnalysis/Analyses/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractor.cpp
    M clang/lib/ScalableStaticAnalysis/Frontend/CMakeLists.txt
    A clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaLifetimeSafety.h
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/InMemoryModuleCache.cpp
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/HLSL/Textures-AST.hlsl
    M clang/test/AST/ast-dump-decl.cpp
    A clang/test/AST/ast-dump-deleted-defaulted-range.cpp
    M clang/test/AST/ast-dump-funcs.cpp
    M clang/test/AST/ast-dump-record-definition-data-json.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args.cpp
    M clang/test/Analysis/Scalable/help.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/empty-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Inputs/two-function-suite.json
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/CMakeLists.txt
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/TestTransformationPlugin/TestTransformation.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/Plugins/lit.local.cfg
    A clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/coexistence.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/happy-path.cpp
    A clang/test/Analysis/Scalable/source-edit-generation/write-failure.cpp
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-explicit-triple.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/lib-namespace-override.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libempty.json
    A clang/test/Analysis/Scalable/ssaf-linker/Outputs/libtwo.json
    M clang/test/Analysis/Scalable/ssaf-linker/help.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-create.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-help.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-time.test
    A clang/test/Analysis/Scalable/ssaf-linker/static-library-verbose.test
    M clang/test/Analysis/bstring.c
    M clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
    M clang/test/Analysis/malloc.c
    M clang/test/Analysis/pr22954.c
    A clang/test/Analysis/std-c-library-functions-non-integral-ssize_t.cpp
    M clang/test/CIR/CodeGen/builtins-x86.c
    A clang/test/CIR/CodeGen/func-identity-attr.c
    A clang/test/CIR/CodeGen/func-identity-attr.cpp
    M clang/test/CIR/CodeGen/ternary-throw.cpp
    M clang/test/CIR/CodeGen/var_arg.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse-builtins.c
    M clang/test/CIR/CodeGenBuiltins/builtins-elementwise.c
    A clang/test/CIR/CodeGenHIP/amdgcn-buffer-rsrc-type.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-gfx1250.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn-vi-f16.hip
    M clang/test/CIR/CodeGenHIP/builtins-amdgcn.hip
    A clang/test/CIR/IR/func-identity-attr.cir
    A clang/test/CIR/IR/invalid-loop-cleanup.cir
    A clang/test/CIR/IR/loop-cleanup.cir
    A clang/test/CIR/Transforms/abi-lowering/x86_64-lang-addrspace-nyi.cir
    A clang/test/CIR/Transforms/abi-lowering/x86_64-scalars.cir
    A clang/test/CIR/Transforms/idiom-recognizer-guards-void-result.cpp
    A clang/test/CIR/Transforms/idiom-recognizer-guards.cpp
    A clang/test/CIR/Transforms/idiom-recognizer-inline-namespace.cpp
    A clang/test/CIR/Transforms/idiom-recognizer.cir
    M clang/test/CIR/Transforms/idiom-recognizer.cpp
    M clang/test/CMakeLists.txt
    A clang/test/CXX/dcl/dcl.spec/dcl.type/dcl.type.general/p2.cpp
    M clang/test/CXX/temp/temp.param/p10-2a.cpp
    A clang/test/ClangScanDeps/logging-drop-pcm.c
    A clang/test/ClangScanDeps/logging-simple-by-name.c
    A clang/test/ClangScanDeps/logging-simple.c
    A clang/test/ClangScanDeps/logging-two-threads.c
    M clang/test/CodeGen/AArch64/branch-protection-attr.c
    M clang/test/CodeGen/AArch64/sign-return-address.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-fma.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-fpconstrained.c
    M clang/test/CodeGen/RISCV/rvp-intrinsics.c
    A clang/test/CodeGen/SystemZ/systemz-module.flags.c
    M clang/test/CodeGen/amdgpu-builtin-is-invocable.c
    M clang/test/CodeGen/amdgpu-builtin-processor-is.c
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors.cpp
    M clang/test/CodeGenCXX/microsoft-vector-deleting-dtors2.cpp
    A clang/test/CodeGenCXX/msvc-global-delete-forwarding-at-delete-site.cpp
    M clang/test/CodeGenCXX/msvc-global-delete-scalar-array-split.cpp
    M clang/test/CodeGenCXX/msvc-global-delete-scope-no-dtor.cpp
    M clang/test/CodeGenCXX/msvc-no-global-delete-forwarding.cpp
    M clang/test/CodeGenHLSL/resources/RWBuffer-imageformat.hlsl
    M clang/test/CodeGenHLSL/resources/Textures-GetDimensions.hlsl
    M clang/test/CodeGenHLSL/resources/Textures-Load.hlsl
    M clang/test/CodeGenHLSL/resources/TypedBuffers-constructor.hlsl
    M clang/test/CoverageMapping/default-method.cpp
    A clang/test/Driver/Inputs/resource_dir/lib/cygwin/libclang_rt.builtins-x86_64.a
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/x86_64-pc-windows-cygnus/libclang_rt.builtins.a
    M clang/test/Driver/aarch64-features.c
    M clang/test/Driver/aarch64-fmv.c
    M clang/test/Driver/aarch64-security-options.c
    A clang/test/Driver/cygwin-print-file-name.c
    M clang/test/Driver/darwin-target-variant-sdk-version.c
    M clang/test/Driver/dxc_debug.hlsl
    M clang/test/Driver/linux-ld.c
    M clang/test/Driver/mingw-sysroot.cpp
    A clang/test/ExtractAPI/availability_typedef_anonymous_record.c
    A clang/test/ExtractAPI/objc_nullability.m
    M clang/test/Parser/cxx1z-decomposition.cpp
    M clang/test/Preprocessor/aarch64-target-features.c
    A clang/test/Sema/LifetimeSafety/annotation-suggestions-fixits.c
    M clang/test/Sema/LifetimeSafety/invalidations.cpp
    M clang/test/Sema/LifetimeSafety/safety.cpp
    M clang/test/Sema/builtin-memcpy.c
    M clang/test/Sema/builtin-object-size.c
    M clang/test/Sema/warn-fortify-source.c
    A clang/test/Sema/warn-stringop-overread-fortify.c
    A clang/test/Sema/warn-stringop-overread.c
    M clang/test/SemaCXX/using-decl-templates.cpp
    M clang/test/SemaCXX/warn-memset-bad-sizeof.cpp
    M clang/test/SemaHLSL/Resources/RWTexture2D-mips-errors.hlsl
    M clang/test/SemaHLSL/Resources/RWTexture2D-unsupported-methods-errors.hlsl
    M clang/test/SemaHLSL/Resources/Textures-GetDimensions.hlsl
    M clang/test/SemaHLSL/Resources/Textures-Load-errors.hlsl
    R clang/test/Templight/templight-deduced-func.cpp
    R clang/test/Templight/templight-default-arg-inst.cpp
    R clang/test/Templight/templight-default-func-arg.cpp
    R clang/test/Templight/templight-default-template-arg.cpp
    R clang/test/Templight/templight-empty-entries-fix.cpp
    R clang/test/Templight/templight-exception-spec-func.cpp
    R clang/test/Templight/templight-explicit-template-arg.cpp
    R clang/test/Templight/templight-memoization.cpp
    R clang/test/Templight/templight-nested-memoization.cpp
    R clang/test/Templight/templight-nested-template-instantiation.cpp
    R clang/test/Templight/templight-one-instantiation.cpp
    R clang/test/Templight/templight-prior-template-arg.cpp
    M clang/tools/cir-opt/cir-opt.cpp
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/clang-scan-deps/Opts.td
    M clang/tools/clang-ssaf-linker/CMakeLists.txt
    M clang/tools/clang-ssaf-linker/SSAFLinker.cpp
    A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.cpp
    A clang/tools/clang-ssaf-linker/StaticLibraryCreateCLI.h
    M clang/unittests/AST/SourceLocationTest.cpp
    M clang/unittests/Basic/AtomicLineLoggerTest.cpp
    M clang/unittests/CIR/CMakeLists.txt
    M clang/unittests/CIR/ControlFlowTest.cpp
    A clang/unittests/CIR/GetFloatingPointTypeTest.cpp
    A clang/unittests/CIR/IntTypeABIAlignTest.cpp
    M clang/unittests/DependencyScanning/InProcessModuleCacheTest.cpp
    A clang/unittests/ScalableStaticAnalysis/Analyses/SharedLexicalRepresentation/EntitySourceLocationExtractorTest.cpp
    M clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
    M clang/unittests/Serialization/InMemoryModuleCacheTest.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp
    M clang/unittests/Tooling/RecursiveASTVisitorTests/CXXMethodDecl.cpp
    A compiler-rt/docs/ASanABI.md
    R compiler-rt/docs/ASanABI.rst
    A compiler-rt/docs/BuildingCompilerRT.md
    R compiler-rt/docs/BuildingCompilerRT.rst
    A compiler-rt/docs/TestingGuide.md
    R compiler-rt/docs/TestingGuide.rst
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_internal.h
    M compiler-rt/lib/sanitizer_common/sanitizer_symbolizer_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cpp
    M compiler-rt/lib/tsan/rtl/tsan_interface.h
    M compiler-rt/lib/tsan/rtl/tsan_interface_atomic.cpp
    M compiler-rt/lib/ubsan/ubsan_diag.cpp
    A compiler-rt/test/asan/TestCases/Darwin/atos-canary-symbolize.cpp
    M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
    M compiler-rt/test/lit.common.cfg.py
    A compiler-rt/test/memprof/TestCases/memprof_histogram_tail_clear.cpp
    A compiler-rt/test/memprof/TestCases/memprof_nonhistogram_tail_clear.cpp
    M compiler-rt/test/profile/Linux/counter_promo_for.c
    M compiler-rt/test/profile/Linux/counter_promo_while.c
    M compiler-rt/test/sanitizer_common/android_commands/android_common.py
    M compiler-rt/test/ubsan/TestCases/Integer/suppressions-nested-calls.c
    M flang-rt/CMakeLists.txt
    M flang/docs/CMakeLists.txt
    A flang/docs/CommandGuide/index.md
    R flang/docs/CommandGuide/index.rst
    M flang/docs/FortranStandardsSupport.md
    M flang/include/flang/Lower/CUDA.h
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFAddConstructor.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFDeviceFuncTransform.cpp
    M flang/lib/Parser/openacc-parsers.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    M flang/lib/Semantics/check-acc-structure.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Driver/fakeflang.F
    M flang/test/Fir/CUDA/cuda-constructor-2.f90
    A flang/test/Fir/CUDA/cuda-device-func-transform-aio.mlir
    A flang/test/Fir/create-box-codegen.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/invalid.fir
    A flang/test/Lower/CUDA/cuda-gpu-unified.cuf
    R flang/test/Lower/CUDA/cuda-implicit-managed-alloc.cuf
    A flang/test/Lower/CUDA/cuda-managed-func-result.cuf
    A flang/test/Lower/global-initialization-parens.f90
    A flang/test/Lower/pre-fir-tree-assigned-goto.f90
    M flang/test/Parser/acc-unparse.f90
    M flang/test/Semantics/OpenACC/acc-loop-routine-call.f90
    A flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-create-box.fir
    M flang/tools/fakeflang/fakeflang.cpp
    M libc/CMakeLists.txt
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/headers.txt
    M libc/config/linux/i386/headers.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/riscv/headers.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/CMakeLists.txt
    R libc/docs/headers/time.rst
    M libc/include/CMakeLists.txt
    A libc/include/alloca.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/alloca-macros.h
    M libc/include/llvm-libc-types/struct_sockaddr_storage.h
    M libc/include/sys/time.yaml
    M libc/include/time.yaml
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/simd.h
    M libc/src/__support/FPUtil/Hypot.h
    M libc/src/__support/File/linux/CMakeLists.txt
    M libc/src/__support/File/linux/dir.cpp
    M libc/src/__support/File/linux/file.cpp
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/auxv.h
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/acos.h
    M libc/src/__support/math/acosbf16.h
    M libc/src/__support/math/acosf.h
    M libc/src/__support/math/acospif.h
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/asin_utils.h
    M libc/src/__support/math/asinbf16.h
    M libc/src/__support/math/asinf.h
    M libc/src/__support/math/asinpi.h
    M libc/src/__support/math/asinpif.h
    M libc/src/__support/math/atan2f.h
    M libc/src/__support/math/atan2f16.h
    M libc/src/__support/math/atan_utils.h
    M libc/src/__support/math/atanf.h
    M libc/src/__support/math/hypot.h
    R libc/src/__support/math/inv_trigf_utils.h
    M libc/src/__support/mathvec/CMakeLists.txt
    A libc/src/__support/mathvec/acosf.h
    A libc/src/__support/mathvec/acoshf.h
    A libc/src/__support/mathvec/acospif.h
    A libc/src/__support/mathvec/asinf.h
    A libc/src/__support/mathvec/asinhf.h
    A libc/src/__support/mathvec/asinpif.h
    A libc/src/__support/mathvec/atanf.h
    A libc/src/__support/mathvec/atanhf.h
    A libc/src/__support/mathvec/cbrtf.h
    M libc/src/__support/mathvec/common_constants.h
    A libc/src/__support/mathvec/cosf.h
    A libc/src/__support/mathvec/coshf.h
    A libc/src/__support/mathvec/cospif.h
    A libc/src/__support/mathvec/erff.h
    A libc/src/__support/mathvec/exp10f.h
    A libc/src/__support/mathvec/exp10m1f.h
    A libc/src/__support/mathvec/exp2f.h
    A libc/src/__support/mathvec/exp2m1f.h
    M libc/src/__support/mathvec/expf.h
    M libc/src/__support/mathvec/expf_utils.h
    A libc/src/__support/mathvec/expm1f.h
    A libc/src/__support/mathvec/log10f.h
    A libc/src/__support/mathvec/log1pf.h
    A libc/src/__support/mathvec/log2f.h
    A libc/src/__support/mathvec/logf.h
    A libc/src/__support/mathvec/rsqrtf.h
    A libc/src/__support/mathvec/sinf.h
    A libc/src/__support/mathvec/sinhf.h
    A libc/src/__support/mathvec/sinpif.h
    A libc/src/__support/mathvec/sqrtf.h
    A libc/src/__support/mathvec/tanf.h
    A libc/src/__support/mathvec/tanhf.h
    A libc/src/__support/mathvec/tanpif.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/linux/thread.cpp
    M libc/src/mathvec/CMakeLists.txt
    A libc/src/mathvec/abi_prefix.h
    A libc/src/mathvec/acosf.h
    A libc/src/mathvec/acoshf.h
    A libc/src/mathvec/acospif.h
    A libc/src/mathvec/asinf.h
    A libc/src/mathvec/asinhf.h
    A libc/src/mathvec/asinpif.h
    A libc/src/mathvec/atanf.h
    A libc/src/mathvec/atanhf.h
    A libc/src/mathvec/cbrtf.h
    A libc/src/mathvec/cosf.h
    A libc/src/mathvec/coshf.h
    A libc/src/mathvec/cospif.h
    A libc/src/mathvec/erff.h
    A libc/src/mathvec/exp10f.h
    A libc/src/mathvec/exp10m1f.h
    A libc/src/mathvec/exp2f.h
    A libc/src/mathvec/exp2m1f.h
    M libc/src/mathvec/expf.h
    A libc/src/mathvec/expm1f.h
    M libc/src/mathvec/generic/CMakeLists.txt
    A libc/src/mathvec/generic/acosf.cpp
    A libc/src/mathvec/generic/acoshf.cpp
    A libc/src/mathvec/generic/acospif.cpp
    A libc/src/mathvec/generic/asinf.cpp
    A libc/src/mathvec/generic/asinhf.cpp
    A libc/src/mathvec/generic/asinpif.cpp
    A libc/src/mathvec/generic/atanf.cpp
    A libc/src/mathvec/generic/atanhf.cpp
    A libc/src/mathvec/generic/cbrtf.cpp
    A libc/src/mathvec/generic/cosf.cpp
    A libc/src/mathvec/generic/coshf.cpp
    A libc/src/mathvec/generic/cospif.cpp
    A libc/src/mathvec/generic/erff.cpp
    A libc/src/mathvec/generic/exp10f.cpp
    A libc/src/mathvec/generic/exp10m1f.cpp
    A libc/src/mathvec/generic/exp2f.cpp
    A libc/src/mathvec/generic/exp2m1f.cpp
    M libc/src/mathvec/generic/expf.cpp
    A libc/src/mathvec/generic/expm1f.cpp
    A libc/src/mathvec/generic/log10f.cpp
    A libc/src/mathvec/generic/log1pf.cpp
    A libc/src/mathvec/generic/log2f.cpp
    A libc/src/mathvec/generic/logf.cpp
    A libc/src/mathvec/generic/rsqrtf.cpp
    A libc/src/mathvec/generic/sinf.cpp
    A libc/src/mathvec/generic/sinhf.cpp
    A libc/src/mathvec/generic/sinpif.cpp
    A libc/src/mathvec/generic/sqrtf.cpp
    A libc/src/mathvec/generic/tanf.cpp
    A libc/src/mathvec/generic/tanhf.cpp
    A libc/src/mathvec/generic/tanpif.cpp
    A libc/src/mathvec/log10f.h
    A libc/src/mathvec/log1pf.h
    A libc/src/mathvec/log2f.h
    A libc/src/mathvec/logf.h
    A libc/src/mathvec/rsqrtf.h
    A libc/src/mathvec/sinf.h
    A libc/src/mathvec/sinhf.h
    A libc/src/mathvec/sinpif.h
    A libc/src/mathvec/sqrtf.h
    A libc/src/mathvec/tanf.h
    A libc/src/mathvec/tanhf.h
    A libc/src/mathvec/tanpif.h
    M libc/src/sched/linux/CMakeLists.txt
    M libc/src/sched/linux/sched_getaffinity.cpp
    M libc/src/semaphore/linux/CMakeLists.txt
    M libc/src/semaphore/linux/named_semaphore.cpp
    M libc/src/semaphore/linux/semaphore.h
    M libc/src/spawn/linux/CMakeLists.txt
    M libc/src/spawn/linux/posix_spawn.cpp
    M libc/src/stdio/linux/CMakeLists.txt
    M libc/src/stdio/linux/remove.cpp
    M libc/src/stdlib/linux/CMakeLists.txt
    M libc/src/stdlib/linux/realpath.cpp
    M libc/src/sys/ipc/linux/CMakeLists.txt
    M libc/src/sys/ipc/linux/ftok.cpp
    R libc/src/sys/ipc/linux/kernel_statx.h
    M libc/src/sys/mman/linux/CMakeLists.txt
    M libc/src/sys/mman/linux/shm_unlink.cpp
    M libc/src/sys/time/CMakeLists.txt
    A libc/src/sys/time/gettimeofday.h
    M libc/src/sys/time/linux/CMakeLists.txt
    A libc/src/sys/time/linux/gettimeofday.cpp
    M libc/src/sys/time/linux/utimes.cpp
    M libc/src/time/CMakeLists.txt
    R libc/src/time/gettimeofday.h
    M libc/src/time/linux/CMakeLists.txt
    R libc/src/time/linux/gettimeofday.cpp
    M libc/startup/linux/x86_64/CMakeLists.txt
    M libc/startup/linux/x86_64/tls.cpp
    M libc/test/UnitTest/HermeticTestUtils.cpp
    M libc/test/include/CMakeLists.txt
    A libc/test/include/alloca_test.cpp
    M libc/test/src/math/smoke/hypot_test.cpp
    M libc/test/src/mathvec/CMakeLists.txt
    A libc/test/src/mathvec/UnitTestWrappers.h
    A libc/test/src/mathvec/acosf_test.cpp
    A libc/test/src/mathvec/acoshf_test.cpp
    A libc/test/src/mathvec/acospif_test.cpp
    A libc/test/src/mathvec/asinf_test.cpp
    A libc/test/src/mathvec/asinhf_test.cpp
    A libc/test/src/mathvec/asinpif_test.cpp
    A libc/test/src/mathvec/atanf_test.cpp
    A libc/test/src/mathvec/atanhf_test.cpp
    A libc/test/src/mathvec/cbrtf_test.cpp
    A libc/test/src/mathvec/cosf_test.cpp
    A libc/test/src/mathvec/coshf_test.cpp
    A libc/test/src/mathvec/cospif_test.cpp
    A libc/test/src/mathvec/erff_test.cpp
    M libc/test/src/mathvec/exhaustive/CMakeLists.txt
    A libc/test/src/mathvec/exhaustive/acosf_test.cpp
    A libc/test/src/mathvec/exhaustive/acoshf_test.cpp
    A libc/test/src/mathvec/exhaustive/acospif_test.cpp
    A libc/test/src/mathvec/exhaustive/asinf_test.cpp
    A libc/test/src/mathvec/exhaustive/asinhf_test.cpp
    A libc/test/src/mathvec/exhaustive/asinpif_test.cpp
    A libc/test/src/mathvec/exhaustive/atanf_test.cpp
    A libc/test/src/mathvec/exhaustive/atanhf_test.cpp
    A libc/test/src/mathvec/exhaustive/cbrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/cosf_test.cpp
    A libc/test/src/mathvec/exhaustive/coshf_test.cpp
    A libc/test/src/mathvec/exhaustive/cospif_test.cpp
    A libc/test/src/mathvec/exhaustive/erff_test.cpp
    M libc/test/src/mathvec/exhaustive/exhaustive_test.h
    A libc/test/src/mathvec/exhaustive/exp10f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp10m1f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp2f_test.cpp
    A libc/test/src/mathvec/exhaustive/exp2m1f_test.cpp
    M libc/test/src/mathvec/exhaustive/expf_test.cpp
    A libc/test/src/mathvec/exhaustive/expm1f_test.cpp
    A libc/test/src/mathvec/exhaustive/log10f_test.cpp
    A libc/test/src/mathvec/exhaustive/log1pf_test.cpp
    A libc/test/src/mathvec/exhaustive/log2f_test.cpp
    A libc/test/src/mathvec/exhaustive/logf_test.cpp
    A libc/test/src/mathvec/exhaustive/rsqrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinhf_test.cpp
    A libc/test/src/mathvec/exhaustive/sinpif_test.cpp
    A libc/test/src/mathvec/exhaustive/sqrtf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanhf_test.cpp
    A libc/test/src/mathvec/exhaustive/tanpif_test.cpp
    A libc/test/src/mathvec/exp10f_test.cpp
    A libc/test/src/mathvec/exp10m1f_test.cpp
    A libc/test/src/mathvec/exp2f_test.cpp
    A libc/test/src/mathvec/exp2m1f_test.cpp
    M libc/test/src/mathvec/expf_test.cpp
    A libc/test/src/mathvec/expm1f_test.cpp
    A libc/test/src/mathvec/log10f_test.cpp
    A libc/test/src/mathvec/log1pf_test.cpp
    A libc/test/src/mathvec/log2f_test.cpp
    A libc/test/src/mathvec/logf_test.cpp
    A libc/test/src/mathvec/rsqrtf_test.cpp
    A libc/test/src/mathvec/sinf_test.cpp
    A libc/test/src/mathvec/sinhf_test.cpp
    A libc/test/src/mathvec/sinpif_test.cpp
    A libc/test/src/mathvec/sqrtf_test.cpp
    A libc/test/src/mathvec/tanf_test.cpp
    A libc/test/src/mathvec/tanhf_test.cpp
    A libc/test/src/mathvec/tanpif_test.cpp
    M libc/test/src/semaphore/linux/CMakeLists.txt
    M libc/test/src/semaphore/linux/semaphore_test.cpp
    M libc/test/src/stdfix/DiviFxTest.h
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/stdlib/realpath_test.cpp
    M libc/test/src/sys/socket/linux/CMakeLists.txt
    M libc/test/src/sys/socket/linux/bind_test.cpp
    M libc/test/src/sys/socket/linux/connect_accept_test.cpp
    M libc/test/src/sys/socket/linux/listen_test.cpp
    M libc/test/src/sys/socket/linux/sockaddr_storage_test.cpp
    M libc/test/src/sys/socket/linux/socket_test_support.h
    M libc/test/src/sys/socket/linux/sockname_test.cpp
    M libc/test/src/sys/time/CMakeLists.txt
    A libc/test/src/sys/time/gettimeofday_test.cpp
    M libc/test/src/time/CMakeLists.txt
    R libc/test/src/time/gettimeofday_test.cpp
    A libc/utils/docgen/time.yaml
    M libcxx/include/__algorithm/is_heap_until.h
    M libcxx/src/support/runtime/exception_pointer_msvc.ipp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/is.heap/ranges_is_heap_until.pass.cpp
    M libcxx/utils/ci/images/libcxx_release_runners.txt
    A libsycl/docs/CodingGuidelines.md
    R libsycl/docs/CodingGuidelines.rst
    A libsycl/docs/index.md
    R libsycl/docs/index.rst
    M libsycl/include/sycl/__impl/detail/kernel_arg_helpers.hpp
    A libsycl/include/sycl/__impl/detail/linearization.hpp
    M libsycl/include/sycl/__impl/detail/unified_range_view.hpp
    A libsycl/include/sycl/__impl/group.hpp
    A libsycl/include/sycl/__impl/memory_enums.hpp
    A libsycl/include/sycl/__impl/nd_item.hpp
    A libsycl/include/sycl/__impl/nd_range.hpp
    M libsycl/include/sycl/__impl/queue.hpp
    A libsycl/include/sycl/__impl/sub_group.hpp
    M libsycl/include/sycl/__spirv/spirv_vars.hpp
    M libsycl/include/sycl/sycl.hpp
    M libsycl/src/detail/queue_impl.cpp
    M libsycl/src/event.cpp
    M libsycl/test/README.md
    A libsycl/test/basic/group.cpp
    A libsycl/test/basic/group_local_id.cpp
    A libsycl/test/basic/linear_sub_group.cpp
    A libsycl/test/basic/nd_range.cpp
    M libsycl/test/basic/queue_parallel_for_generic.cpp
    A libsycl/test/basic/sub_group_by_value_semantics.cpp
    A libsycl/test/basic/sub_group_common.cpp
    M libsycl/unittests/event/event.cpp
    M libsycl/unittests/queue/sycl_kernel_launch.cpp
    A libunwind/docs/BuildingLibunwind.md
    R libunwind/docs/BuildingLibunwind.rst
    M libunwind/docs/conf.py
    A libunwind/docs/index.md
    R libunwind/docs/index.rst
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/InputFiles.h
    A lld/docs/DTLTO.md
    R lld/docs/DTLTO.rst
    A lld/docs/ELF/large_sections.md
    R lld/docs/ELF/large_sections.rst
    A lld/docs/ELF/linker_script.md
    R lld/docs/ELF/linker_script.rst
    A lld/docs/ELF/start-stop-gc.md
    R lld/docs/ELF/start-stop-gc.rst
    A lld/docs/ELF/warn_backrefs.md
    R lld/docs/ELF/warn_backrefs.rst
    A lld/docs/MachO/index.md
    R lld/docs/MachO/index.rst
    A lld/docs/MachO/ld64-vs-lld.md
    R lld/docs/MachO/ld64-vs-lld.rst
    A lld/docs/NewLLD.md
    R lld/docs/NewLLD.rst
    A lld/docs/ReleaseNotes.md
    R lld/docs/ReleaseNotes.rst
    A lld/docs/WebAssembly.md
    R lld/docs/WebAssembly.rst
    M lld/docs/conf.py
    A lld/docs/error_handling_script.md
    R lld/docs/error_handling_script.rst
    A lld/docs/index.md
    R lld/docs/index.rst
    A lld/docs/missingkeyfunction.md
    R lld/docs/missingkeyfunction.rst
    A lld/docs/windows_support.md
    R lld/docs/windows_support.rst
    A lld/test/COFF/link-dll-arm64x.s
    M lldb/bindings/interfaces.swig
    M lldb/bindings/python/CMakeLists.txt
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/CMakeLists.txt
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/docs/resources/test.md
    M lldb/docs/use/variable.md
    M lldb/examples/python/delta.py
    M lldb/examples/python/gdbremote.py
    A lldb/examples/python/templates/scripted_stackframe_recognizer.py
    M lldb/include/lldb/API/LLDB.h
    M lldb/include/lldb/API/SBDefines.h
    A lldb/include/lldb/API/SBProtocolServer.h
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Core/Diagnostics.h
    M lldb/include/lldb/Core/PluginManager.h
    M lldb/include/lldb/Core/Section.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/Host/common/DomainSocket.h
    A lldb/include/lldb/Interpreter/Interfaces/ScriptedStackFrameRecognizerInterface.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Target/StackFrameRecognizer.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/include/lldb/ValueObject/ValueObjectSynthetic.h
    M lldb/include/lldb/lldb-enumerations.h
    M lldb/include/lldb/lldb-forward.h
    A lldb/packages/Python/lldbsuite/support/xcode.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/packages/Python/lldbsuite/test/dotest_args.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/source/API/CMakeLists.txt
    A lldb/source/API/SBProtocolServer.cpp
    M lldb/source/API/SBSection.cpp
    M lldb/source/API/SBValue.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Commands/CommandObjectScripting.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Diagnostics.cpp
    M lldb/source/Core/PluginManager.cpp
    M lldb/source/DataFormatters/TypeSynthetic.cpp
    M lldb/source/Expression/DWARFExpression.cpp
    M lldb/source/Expression/IRInterpreter.cpp
    M lldb/source/Host/common/DomainSocket.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Interpreter/embedded_interpreter.py
    M lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86.cpp
    M lldb/source/Plugins/Process/Utility/NativeRegisterContextDBReg_x86.h
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h
    M lldb/source/Plugins/ScriptInterpreter/Python/CMakeLists.txt
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.h
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.cpp
    A lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedStackFrameRecognizerPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.h
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPythonImpl.h
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp
    M lldb/source/Plugins/SymbolLocator/DebugSymbols/SymbolLocatorDebugSymbols.cpp
    M lldb/source/Plugins/TraceExporter/common/TraceHTR.h
    A lldb/source/Plugins/TraceExporter/docs/htr.md
    R lldb/source/Plugins/TraceExporter/docs/htr.rst
    M lldb/source/Target/SectionLoadList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/source/ValueObject/ValueObjectSynthetic.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/commands/frame/recognizer/recognizer.py
    M lldb/test/API/commands/frame/var-dil/expr/Literals/TestFrameVarDILLiterals.py
    M lldb/test/API/commands/frame/var-dil/expr/Literals/main.cpp
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/TestFrameVarDILNullptrVar.py
    A lldb/test/API/commands/frame/var-dil/expr/NullptrVar/main.c
    A lldb/test/API/functionalities/scripting_extension_generate/Makefile
    A lldb/test/API/functionalities/scripting_extension_generate/TestScriptingExtensionGenerate.py
    A lldb/test/API/functionalities/scripting_extension_generate/main.c
    M lldb/test/API/functionalities/thread/finish-from-empty-func/TestEmptyFuncThreadStepOut.py
    M lldb/test/API/functionalities/thread/finish-from-empty-func/main.c
    A lldb/test/API/lang/cpp/enum-limits/Makefile
    A lldb/test/API/lang/cpp/enum-limits/TestCPPEnumLimits.py
    A lldb/test/API/lang/cpp/enum-limits/main.cpp
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/Makefile
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/TestSBValueSetTypeSynthetic.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/library_support.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic/main.cpp
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/Makefile
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/TestSBValueSetTypeSyntheticOverride.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/foo_bar_synths.py
    A lldb/test/API/python_api/sbvalue_set_type_synthetic_override/main.cpp
    A lldb/test/Shell/Diagnostics/TestDiagnosticsCollectBinaries.test
    M lldb/test/Shell/SymbolFile/NativePDB/Inputs/globals-fundamental.lldbinit
    M lldb/test/Shell/SymbolFile/NativePDB/globals-fundamental.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/static-class-constants.cpp
    M lldb/tools/lldb-server/lldb-gdbserver.cpp
    M lldb/tools/lldb-test/lldb-test.cpp
    M lldb/unittests/API/CMakeLists.txt
    A lldb/unittests/API/SBProtocolServerTest.cpp
    M lldb/unittests/Core/CMakeLists.txt
    A lldb/unittests/Core/DiagnosticsTest.cpp
    M lldb/unittests/Expression/DWARFExpressionTest.cpp
    M lldb/unittests/Host/SocketTest.cpp
    M lldb/unittests/Process/gdb-remote/CMakeLists.txt
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationServerLLGSTest.cpp
    A lldb/unittests/Process/gdb-remote/ProcessGDBRemoteTest.cpp
    M lldb/unittests/ScriptInterpreter/Python/PythonTestSuite.cpp
    M lldb/unittests/Utility/UriParserTest.cpp
    A llvm-libgcc/docs/LLVMLibgcc.md
    R llvm-libgcc/docs/LLVMLibgcc.rst
    M llvm-libgcc/generate_version_script.py
    M llvm/CMakeLists.txt
    A llvm/docs/AArch64SME.md
    R llvm/docs/AArch64SME.rst
    A llvm/docs/AMDGPUAsyncOperations.md
    R llvm/docs/AMDGPUAsyncOperations.rst
    M llvm/docs/AMDGPUDMAOperations.md
    A llvm/docs/AMDGPUExecutionSynchronization.md
    R llvm/docs/AMDGPUExecutionSynchronization.rst
    A llvm/docs/AMDGPUMemoryModel.md
    R llvm/docs/AMDGPUMemoryModel.rst
    A llvm/docs/AddingConstrainedIntrinsics.md
    R llvm/docs/AddingConstrainedIntrinsics.rst
    A llvm/docs/AdminTasks.md
    R llvm/docs/AdminTasks.rst
    A llvm/docs/BigEndianNEON.md
    R llvm/docs/BigEndianNEON.rst
    M llvm/docs/CommandGuide/lit.rst
    A llvm/docs/CompileCudaWithLLVM.md
    R llvm/docs/CompileCudaWithLLVM.rst
    A llvm/docs/DebuggingJITedCode.md
    R llvm/docs/DebuggingJITedCode.rst
    A llvm/docs/ExtendingLLVM.md
    R llvm/docs/ExtendingLLVM.rst
    A llvm/docs/HowToBuildWindowsItaniumPrograms.md
    R llvm/docs/HowToBuildWindowsItaniumPrograms.rst
    A llvm/docs/HowToCrossCompileBuiltinsOnArm.md
    R llvm/docs/HowToCrossCompileBuiltinsOnArm.rst
    A llvm/docs/HowToUpdateDebugInfo.md
    R llvm/docs/HowToUpdateDebugInfo.rst
    A llvm/docs/Instrumentor.md
    R llvm/docs/Instrumentor.rst
    A llvm/docs/JITLink.md
    R llvm/docs/JITLink.rst
    A llvm/docs/MCJITDesignAndImplementation.md
    R llvm/docs/MCJITDesignAndImplementation.rst
    A llvm/docs/NVPTXUsage.md
    R llvm/docs/NVPTXUsage.rst
    A llvm/docs/ORCv2.md
    R llvm/docs/ORCv2.rst
    M llvm/docs/ReleaseNotes.md
    A llvm/docs/Remarks.md
    R llvm/docs/Remarks.rst
    A llvm/docs/SPIRVUsage.md
    R llvm/docs/SPIRVUsage.rst
    M llvm/docs/TableGen/ProgRef.rst
    M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
    M llvm/include/llvm/ADT/GenericCycleImpl.h
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    M llvm/include/llvm/ADT/GenericUniformityInfo.h
    M llvm/include/llvm/Analysis/HashRecognize.h
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/LibcallLoweringInfo.h
    M llvm/include/llvm/CodeGen/MachineCycleAnalysis.h
    M llvm/include/llvm/DWP/DWP.h
    M llvm/include/llvm/IR/CycleInfo.h
    M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/ObjectYAML/BBAddrMapYAML.h
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/include/llvm/ProfileData/SampleProfReader.h
    M llvm/include/llvm/ProfileData/SampleProfWriter.h
    M llvm/include/llvm/Support/LSP/Transport.h
    M llvm/include/llvm/TargetParser/ARMTargetParserCommon.h
    M llvm/lib/Analysis/CFG.cpp
    M llvm/lib/Analysis/HashRecognize.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/UniformityAnalysis.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfExpression.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerCompileUnit.cpp
    M llvm/lib/DWARFLinker/Parallel/DWARFLinkerUnit.h
    M llvm/lib/DWP/DWP.cpp
    M llvm/lib/IR/CycleInfo.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/IR/VerifierAMDGPU.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/MC/MCDXContainerWriter.cpp
    M llvm/lib/ObjectYAML/BBAddrMapYAML.cpp
    M llvm/lib/ObjectYAML/ELFEmitter.cpp
    M llvm/lib/ProfileData/SampleProfReader.cpp
    M llvm/lib/ProfileData/SampleProfWriter.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/LSP/Transport.cpp
    M llvm/lib/TableGen/Record.cpp
    M llvm/lib/Target/AArch64/AArch64.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
    A llvm/lib/Target/AArch64/AArch64PTrueCoalescing.cpp
    M llvm/lib/Target/AArch64/AArch64PassRegistry.def
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUGlobalISelDivergenceLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.def
    M llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSelectionDAGInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitSGPRHazards.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUWaitcntUtils.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MIMGInstructions.td
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/DirectX/DXILWriter/DXILWriterPass.cpp
    M llvm/lib/Target/Hexagon/HexagonRDFOpt.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCSchedule.td
    M llvm/lib/Target/PowerPC/PPCSchedule440.td
    M llvm/lib/Target/PowerPC/PPCScheduleA2.td
    M llvm/lib/Target/PowerPC/PPCScheduleE500.td
    M llvm/lib/Target/PowerPC/PPCScheduleE500mc.td
    M llvm/lib/Target/PowerPC/PPCScheduleE5500.td
    M llvm/lib/Target/PowerPC/PPCScheduleG3.td
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/lib/Target/SPIRV/SPIRV.h
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
    M llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.h
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    M llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp
    M llvm/lib/Target/WebAssembly/WebAssembly.h
    M llvm/lib/Target/WebAssembly/WebAssemblyCleanCodeAfterTrap.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyFixBrTableDefaults.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyPassRegistry.def
    M llvm/lib/Target/WebAssembly/WebAssemblySetP2AlignOperands.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrTBM.td
    M llvm/lib/TargetParser/AMDGPUTargetParser.cpp
    M llvm/lib/TargetParser/ARMTargetParserCommon.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/FixIrreducible.cpp
    M llvm/lib/Transforms/Utils/SSAUpdater.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
    M llvm/lib/Transforms/Vectorize/VPlan.h
    A llvm/lib/Transforms/Vectorize/VPlanEVLTailFolding.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/test/Analysis/AliasSet/memset.ll
    M llvm/test/Analysis/HashRecognize/cyclic-redundancy-check.ll
    M llvm/test/Analysis/ScalarEvolution/exit-count-non-strict.ll
    M llvm/test/Analysis/ScalarEvolution/incorrect-exit-count.ll
    M llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll
    M llvm/test/Assembler/callbr.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/knownbits-urem.mir
    A llvm/test/CodeGen/AArch64/GlobalISel/knownbits-vashr.mir
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/sign-return-address.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-64-128bit-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    A llvm/test/CodeGen/AArch64/sve-ptrue-coalesce.mir
    A llvm/test/CodeGen/AArch64/windows-pac-invalid-a-key.ll
    M llvm/test/CodeGen/AArch64/wineh-bti.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/inst-select-amdgcn.exp.compr.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/add-max.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_dpp_lds_expected_active_lanes.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/atomic_optimizations_pixelshader.ll
    M llvm/test/CodeGen/AMDGPU/bf16-math.ll
    M llvm/test/CodeGen/AMDGPU/div-rem-fast-path.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-flat-scratch-svs.mir
    M llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
    M llvm/test/CodeGen/AMDGPU/gfx11-sgpr-hazard-latency.mir
    M llvm/test/CodeGen/AMDGPU/global-saddr-atomics-min-max-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/llvm.amdgcn.dual_intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.exp.compr.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fma.legacy.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mov.dpp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.add.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.and.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fadd.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fmin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.fsub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.max.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.min.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.or.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.sub.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umax.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.umin.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.reduce.xor.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sudot8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.tanh.ll
    M llvm/test/CodeGen/AMDGPU/med3-knownbits.ll
    M llvm/test/CodeGen/AMDGPU/memset-pattern.ll
    M llvm/test/CodeGen/AMDGPU/reduction.ll
    M llvm/test/CodeGen/AMDGPU/s-wakeup-barrier.ll
    M llvm/test/CodeGen/AMDGPU/sdiv.ll
    M llvm/test/CodeGen/AMDGPU/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/udiv.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-av-load.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-av-store.ll
    M llvm/test/CodeGen/AMDGPU/valu-mask-write-hazard.mir
    M llvm/test/CodeGen/ARM/select-imm.ll
    M llvm/test/CodeGen/DirectX/ContainerData/ContainerFlags.ll
    A llvm/test/CodeGen/Hexagon/rdfopt-liveins-hang.mir
    A llvm/test/CodeGen/LoongArch/lasx/issue207316.ll
    M llvm/test/CodeGen/LoongArch/lasx/xvexth.ll
    M llvm/test/CodeGen/LoongArch/lsx/vexth.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-allow-ftz-atomics.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomicrmw.py
    M llvm/test/CodeGen/NVPTX/atomics.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/atomicrmw-xchg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/legalizer-info-validation.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv32.mir
    A llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-atomicrmw-xchg-rv64.mir
    M llvm/test/CodeGen/RISCV/rvp-simd-32.ll
    M llvm/test/CodeGen/RISCV/rvp-simd-64.ll
    A llvm/test/CodeGen/RISCV/rvp-widening-convert-isel.ll
    A llvm/test/CodeGen/RISCV/rvv/vecreduce-minmax-constant-fold.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-default-address-space.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-init-expr.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-multi-gve.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-backing-var.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-no-type.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-path-null.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-static-member.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-skip-type-not-in-regs.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable-static-member.ll
    A llvm/test/CodeGen/SPIRV/debug-info/debug-global-variable.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bfloat16/bfloat16.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/SignedBufferLoadStore.ll
    M llvm/test/CodeGen/SPIRV/hlsl-resources/UnsignedBufferLoadStore.ll
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll
    A llvm/test/CodeGen/X86/dagcombine-sub-globaladdress.ll
    A llvm/test/CodeGen/X86/tailcall-i686-pic.ll
    M llvm/test/CodeGen/X86/tbm_patterns.ll
    M llvm/test/CodeGen/X86/vpdpwssd.ll
    A llvm/test/Instrumentation/Instrumentor/load_store_gpu_ind.json
    A llvm/test/Instrumentation/Instrumentor/load_store_gpu_ind.ll
    A llvm/test/MC/AArch64/LFI/debug-info.s
    A llvm/test/MC/AMDGPU/amdhsa-kernel-prologue.s
    M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
    M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
    M llvm/test/MC/Disassembler/WebAssembly/wasm.txt
    A llvm/test/MC/Hexagon/relax-align.s
    A llvm/test/TableGen/RuntimeLibcallEmitter-predicate-cc-sort.td
    M llvm/test/TableGen/true-false.td
    A llvm/test/ThinLTO/X86/Inputs/cache-defined-globals-order.ll
    A llvm/test/ThinLTO/X86/cache-defined-globals-order.ll
    A llvm/test/Transforms/ConstraintElimination/and-negative.ll
    M llvm/test/Transforms/ConstraintElimination/eq.ll
    M llvm/test/Transforms/ConstraintElimination/ne.ll
    M llvm/test/Transforms/ConstraintElimination/or-non-negative.ll
    M llvm/test/Transforms/ConstraintElimination/reproducer-remarks.ll
    M llvm/test/Transforms/ConstraintElimination/trunc.ll
    A llvm/test/Transforms/IndVarSimplify/iv-widen-addrec-flag-inferred-late.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll
    M llvm/test/Transforms/InstCombine/sincos.ll
    A llvm/test/Transforms/LoopIdiom/AArch64/cyclic-redundancy-check.ll
    A llvm/test/Transforms/LoopIdiom/RISCV/cyclic-redundancy-check.ll
    A llvm/test/Transforms/LoopIdiom/X86/cyclic-redundancy-check.ll
    M llvm/test/Transforms/LoopIdiom/cyclic-redundancy-check.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/RISCV/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/dissolve-replicate-regions.ll
    M llvm/test/Transforms/LoopVectorize/VPlan/expand-scev.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
    M llvm/test/Transforms/PhaseOrdering/constraint-eliminiation-interactions.ll
    A llvm/test/Transforms/SLPVectorizer/X86/masked-blended-loads.ll
    M llvm/test/Transforms/SLPVectorizer/X86/mul-shl-nsw-intmin.ll
    A llvm/test/Transforms/SLPVectorizer/sub-nsw-icmp-eq-zero-reorder.ll
    A llvm/test/Transforms/SROA/sroa-self-referential-load.ll
    A llvm/test/Transforms/TailCallElim/disable-tail-call-elim-for-cold-calls.ll
    M llvm/test/Transforms/VectorCombine/X86/fold-signbit-reduction-cmp.ll
    M llvm/test/Verifier/matrix-intrinsics.ll
    A llvm/test/tools/llvm-dwp/SystemZ/big_endian_info_v5.s
    M llvm/test/tools/llvm-dwp/X86/compress.test
    M llvm/test/tools/llvm-profdata/profile-symbol-list.test
    A llvm/test/tools/llvm-reduce/remove-funcs-inline-history.ll
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceFunctions.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M llvm/unittests/FuzzMutate/StrategiesTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/ProfileData/SampleProfTest.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUMCExprTest.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.cpp
    M llvm/unittests/Target/AMDGPU/AMDGPUUnitTests.h
    M llvm/unittests/Target/AMDGPU/CSETest.cpp
    M llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
    M llvm/unittests/Target/AMDGPU/ExecMayBeModifiedBeforeAnyUse.cpp
    M llvm/unittests/Target/AMDGPU/PALMetadata.cpp
    M llvm/unittests/Target/AMDGPU/UniformityAnalysisTest.cpp
    M llvm/unittests/Transforms/Utils/CodeExtractorTest.cpp
    M llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
    M llvm/utils/gn/README.rst
    M llvm/utils/gn/build/BUILD.gn
    M llvm/utils/gn/build/BUILDCONFIG.gn
    M llvm/utils/gn/build/buildflags.gni
    M llvm/utils/gn/build/symlink_or_copy.gni
    M llvm/utils/gn/build/toolchain/BUILD.gn
    M llvm/utils/gn/secondary/BUILD.gn
    M llvm/utils/gn/secondary/bolt/tools/driver/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clang-doc/tool/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
    M llvm/utils/gn/secondary/clang-tools-extra/clangd/xpc/framework/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Analyses/BUILD.gn
    M llvm/utils/gn/secondary/clang/lib/ScalableStaticAnalysis/Frontend/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/clang-ssaf-linker/BUILD.gn
    M llvm/utils/gn/secondary/clang/tools/driver/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/CIR/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/ScalableStaticAnalysis/BUILD.gn
    M llvm/utils/gn/secondary/lld/tools/lld/BUILD.gn
    M llvm/utils/gn/secondary/lldb/source/API/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Target/AArch64/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ar/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-cxxfilt/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod-find/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-debuginfod/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-dwp/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-libtool-darwin/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-lipo/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-ml/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-nm/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objcopy/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-objdump/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-rc/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-readobj/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-readtapi/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-size/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-strings/BUILD.gn
    M llvm/utils/gn/secondary/llvm/tools/llvm-symbolizer/BUILD.gn
    M llvm/utils/lit/lit/LitConfig.py
    M llvm/utils/lit/lit/TestingConfig.py
    M llvm/utils/lit/lit/cl_arguments.py
    M llvm/utils/lit/lit/main.py
    A llvm/utils/lit/tests/Inputs/pass-env/lit.cfg
    A llvm/utils/lit/tests/Inputs/pass-env/test.txt
    A llvm/utils/lit/tests/pass-env.py
    M mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.h
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/SymbolInterfaces.td
    M mlir/include/mlir/IR/SymbolTable.h
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCCGToGPU.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitDeclare.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCRecipeMaterialization.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/IR/SymbolTable.cpp
    M mlir/lib/Target/Wasm/TranslateFromWasm.cpp
    M mlir/test/Dialect/OpenACC/acc-implicit-declare.mlir
    M mlir/test/Dialect/OpenACC/ops-cg.mlir
    M mlir/test/Dialect/Tosa/availability.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-validation-version-1p0-invalid.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir
    M mlir/test/Dialect/Vector/vector-reduce-to-contract.mlir
    A mlir/test/IR/test-verifiers-symbol-user-type.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/compress.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/expand.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/gather.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/maskedload.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/maskedstore.mlir
    M mlir/test/Integration/Dialect/Vector/CPU/scatter.mlir
    M mlir/test/lib/Dialect/Test/TestTypeDefs.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/lib/Dialect/Test/TestTypes.h
    M offload/docs/conf.py
    A offload/docs/index.md
    R offload/docs/index.rst
    M offload/plugins-nextgen/level_zero/include/L0Kernel.h
    M offload/plugins-nextgen/level_zero/include/L0Options.h
    M offload/plugins-nextgen/level_zero/src/L0Options.cpp
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp
    M offload/plugins-nextgen/level_zero/src/L0Queue.cpp
    M orc-rt/include/CMakeLists.txt
    A orc-rt/include/orc-rt/CCallback.h
    M orc-rt/include/orc-rt/Session.h
    M orc-rt/include/orc-rt/TaskGroup.h
    A orc-rt/test/unit/CCallbackTest.cpp
    M orc-rt/test/unit/CMakeLists.txt
    M orc-rt/test/unit/SessionTest.cpp
    M orc-rt/test/unit/TaskGroupTest.cpp
    M runtimes/cmake/config-Fortran.cmake
    M utils/bazel/.bazelrc
    M utils/bazel/llvm-project-overlay/clang-tools-extra/clangd/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang-tools-extra/include-cleaner/BUILD.bazel
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/sys/socket/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/plugin_config.bzl
    M utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/lit_test.bzl
    A utils/bazel/llvm-project-overlay/llvm/utils/lit/BUILD.bazel
    M utils/bazel/llvm-project-overlay/llvm/utils/lit/tests/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/tblgen.bzl
    M utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel

  Log Message:
  -----------
  Rebase, improvements

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/12cac22fdc9e...4525be9eb6c0

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